@wordpress/edit-site 5.12.8 → 5.12.9
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.
- package/build/components/block-editor/index.js +0 -4
- package/build/components/block-editor/index.js.map +1 -1
- package/build/components/block-editor/use-site-editor-settings.js +12 -6
- package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build/components/page-patterns/grid.js +72 -12
- package/build/components/page-patterns/grid.js.map +1 -1
- package/build/components/page-patterns/patterns-list.js +2 -3
- package/build/components/page-patterns/patterns-list.js.map +1 -1
- package/build/components/page-template-parts/add-new-template-part.js +74 -0
- package/build/components/page-template-parts/add-new-template-part.js.map +1 -0
- package/build/components/page-template-parts/index.js +2 -23
- package/build/components/page-template-parts/index.js.map +1 -1
- package/build/components/resizable-frame/index.js +75 -32
- package/build/components/resizable-frame/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen/index.js +13 -7
- package/build/components/sidebar-navigation-screen/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-main/template-part-hint.js +1 -1
- package/build/components/sidebar-navigation-screen-main/template-part-hint.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +1 -0
- package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -3
- package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pages/index.js +33 -25
- package/build/components/sidebar-navigation-screen-pages/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +3 -2
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +3 -2
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/index.js +3 -4
- package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build/components/site-hub/index.js +3 -1
- package/build/components/site-hub/index.js.map +1 -1
- package/build/components/sync-state-with-url/use-sync-path-with-url.js +15 -12
- package/build/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
- package/build-module/components/block-editor/index.js +0 -4
- package/build-module/components/block-editor/index.js.map +1 -1
- package/build-module/components/block-editor/use-site-editor-settings.js +13 -7
- package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build-module/components/page-patterns/grid.js +75 -15
- package/build-module/components/page-patterns/grid.js.map +1 -1
- package/build-module/components/page-patterns/patterns-list.js +3 -4
- package/build-module/components/page-patterns/patterns-list.js.map +1 -1
- package/build-module/components/page-template-parts/add-new-template-part.js +58 -0
- package/build-module/components/page-template-parts/add-new-template-part.js.map +1 -0
- package/build-module/components/page-template-parts/index.js +3 -22
- package/build-module/components/page-template-parts/index.js.map +1 -1
- package/build-module/components/resizable-frame/index.js +76 -35
- package/build-module/components/resizable-frame/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen/index.js +14 -8
- package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-main/template-part-hint.js +1 -1
- package/build-module/components/sidebar-navigation-screen-main/template-part-hint.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +1 -0
- package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -3
- package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pages/index.js +33 -25
- package/build-module/components/sidebar-navigation-screen-pages/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +3 -2
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +3 -2
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/index.js +3 -4
- package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build-module/components/site-hub/index.js +3 -1
- package/build-module/components/site-hub/index.js.map +1 -1
- package/build-module/components/sync-state-with-url/use-sync-path-with-url.js +16 -12
- package/build-module/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
- package/build-style/style-rtl.css +48 -10
- package/build-style/style.css +48 -10
- package/package.json +14 -14
- package/src/components/block-editor/index.js +0 -4
- package/src/components/block-editor/use-site-editor-settings.js +16 -11
- package/src/components/layout/style.scss +1 -0
- package/src/components/page-patterns/grid.js +101 -16
- package/src/components/page-patterns/patterns-list.js +3 -4
- package/src/components/page-patterns/style.scss +21 -1
- package/src/components/page-template-parts/add-new-template-part.js +57 -0
- package/src/components/page-template-parts/index.js +3 -22
- package/src/components/resizable-frame/index.js +100 -31
- package/src/components/resizable-frame/style.scss +26 -9
- package/src/components/sidebar-navigation-item/style.scss +10 -1
- package/src/components/sidebar-navigation-screen/index.js +13 -6
- package/src/components/sidebar-navigation-screen-main/template-part-hint.js +1 -3
- package/src/components/sidebar-navigation-screen-navigation-menu/more-menu.js +1 -0
- package/src/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +1 -1
- package/src/components/sidebar-navigation-screen-pages/index.js +39 -29
- package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -1
- package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +2 -1
- package/src/components/sidebar-navigation-screen-patterns/index.js +20 -18
- package/src/components/site-hub/index.js +5 -1
- package/src/components/site-hub/style.scss +5 -0
- package/src/components/sync-state-with-url/use-sync-path-with-url.js +73 -66
package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js
CHANGED
|
@@ -38,8 +38,9 @@ function TemplatePartNavigationMenus({
|
|
|
38
38
|
|
|
39
39
|
return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_components.__experimentalHeading, {
|
|
40
40
|
className: "edit-site-sidebar-navigation-screen-template-part-navigation-menu__title",
|
|
41
|
-
size: "
|
|
42
|
-
upperCase: true
|
|
41
|
+
size: "11",
|
|
42
|
+
upperCase: true,
|
|
43
|
+
weight: 500
|
|
43
44
|
}, (0, _i18n.__)('Navigation')), (0, _element.createElement)(_templatePartNavigationMenuList.default, {
|
|
44
45
|
menus: menus
|
|
45
46
|
}));
|
package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js"],"names":["TemplatePartNavigationMenus","menus","length"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AAIA;;AACA;;AATA;AACA;AACA;;AAGA;AACA;AACA;AAIe,SAASA,2BAAT,CAAsC;AAAEC,EAAAA;AAAF,CAAtC,EAAkD;AAChE,MAAK,CAAEA,KAAK,CAACC,MAAb,EAAsB,OAAO,IAAP,CAD0C,CAGhE;;AACA,MAAKD,KAAK,CAACC,MAAN,KAAiB,CAAtB,EAA0B;AACzB,WAAO,4BAAC,mCAAD;AAA4B,MAAA,EAAE,EAAGD,KAAK,CAAE,CAAF;AAAtC,MAAP;AACA,GAN+D,CAQhE;;;AACA,SACC,qDACC,4BAAC,iCAAD;AACC,IAAA,SAAS,EAAC,0EADX;AAEC,IAAA,IAAI,EAAC,IAFN;AAGC,IAAA,SAAS,EAAG;
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js"],"names":["TemplatePartNavigationMenus","menus","length"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AAIA;;AACA;;AATA;AACA;AACA;;AAGA;AACA;AACA;AAIe,SAASA,2BAAT,CAAsC;AAAEC,EAAAA;AAAF,CAAtC,EAAkD;AAChE,MAAK,CAAEA,KAAK,CAACC,MAAb,EAAsB,OAAO,IAAP,CAD0C,CAGhE;;AACA,MAAKD,KAAK,CAACC,MAAN,KAAiB,CAAtB,EAA0B;AACzB,WAAO,4BAAC,mCAAD;AAA4B,MAAA,EAAE,EAAGD,KAAK,CAAE,CAAF;AAAtC,MAAP;AACA,GAN+D,CAQhE;;;AACA,SACC,qDACC,4BAAC,iCAAD;AACC,IAAA,SAAS,EAAC,0EADX;AAEC,IAAA,IAAI,EAAC,IAFN;AAGC,IAAA,SAAS,EAAG,IAHb;AAIC,IAAA,MAAM,EAAG;AAJV,KAMG,cAAI,YAAJ,CANH,CADD,EASC,4BAAC,uCAAD;AAAgC,IAAA,KAAK,EAAGA;AAAxC,IATD,CADD;AAaA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalHeading as Heading } from '@wordpress/components';\n/**\n * Internal dependencies\n */\nimport TemplatePartNavigationMenu from './template-part-navigation-menu';\nimport TemplatePartNavigationMenuList from './template-part-navigation-menu-list';\n\nexport default function TemplatePartNavigationMenus( { menus } ) {\n\tif ( ! menus.length ) return null;\n\n\t// if there is a single menu then render TemplatePartNavigationMenu\n\tif ( menus.length === 1 ) {\n\t\treturn <TemplatePartNavigationMenu id={ menus[ 0 ] } />;\n\t}\n\n\t// if there are multiple menus then render TemplatePartNavigationMenuList\n\treturn (\n\t\t<>\n\t\t\t<Heading\n\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template-part-navigation-menu__title\"\n\t\t\t\tsize=\"11\"\n\t\t\t\tupperCase={ true }\n\t\t\t\tweight={ 500 }\n\t\t\t>\n\t\t\t\t{ __( 'Navigation' ) }\n\t\t\t</Heading>\n\t\t\t<TemplatePartNavigationMenuList menus={ menus } />\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -127,8 +127,7 @@ function SidebarNavigationScreenPatterns() {
|
|
|
127
127
|
hasPatterns
|
|
128
128
|
} = (0, _usePatternCategories.default)();
|
|
129
129
|
const {
|
|
130
|
-
myPatterns
|
|
131
|
-
hasPatterns: hasMyPatterns
|
|
130
|
+
myPatterns
|
|
132
131
|
} = (0, _useMyPatterns.default)();
|
|
133
132
|
const isTemplatePartsMode = (0, _data.useSelect)(select => {
|
|
134
133
|
const settings = select(_store.store).getSettings();
|
|
@@ -153,11 +152,11 @@ function SidebarNavigationScreenPatterns() {
|
|
|
153
152
|
footer: footer,
|
|
154
153
|
content: (0, _element.createElement)(_element.Fragment, null, isLoading && (0, _i18n.__)('Loading patterns'), !isLoading && (0, _element.createElement)(_element.Fragment, null, !hasTemplateParts && !hasPatterns && (0, _element.createElement)(_components.__experimentalItemGroup, {
|
|
155
154
|
className: "edit-site-sidebar-navigation-screen-patterns__group"
|
|
156
|
-
}, (0, _element.createElement)(_components.__experimentalItem, null, (0, _i18n.__)('No template parts or patterns found'))),
|
|
155
|
+
}, (0, _element.createElement)(_components.__experimentalItem, null, (0, _i18n.__)('No template parts or patterns found'))), (0, _element.createElement)(_components.__experimentalItemGroup, {
|
|
157
156
|
className: "edit-site-sidebar-navigation-screen-patterns__group"
|
|
158
157
|
}, (0, _element.createElement)(_categoryItem.default, {
|
|
159
158
|
key: myPatterns.name,
|
|
160
|
-
count: myPatterns.count,
|
|
159
|
+
count: !myPatterns.count ? '0' : myPatterns.count,
|
|
161
160
|
label: myPatterns.label,
|
|
162
161
|
icon: _icons.starFilled,
|
|
163
162
|
id: myPatterns.name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/index.js"],"names":["TemplatePartGroup","areas","currentArea","currentType","Object","entries","map","area","label","templateParts","length","ThemePatternsGroup","categories","currentCategory","category","name","count","lockSmall","file","SidebarNavigationScreenPatterns","isMobileViewport","categoryType","categoryId","window","location","href","DEFAULT_CATEGORY","DEFAULT_TYPE","templatePartAreas","hasTemplateParts","isLoading","patternCategories","hasPatterns","myPatterns","hasMyPatterns","isTemplatePartsMode","select","settings","editSiteStore","getSettings","supportsTemplatePartsMode","templatePartsLink","path","footer","undefined","starFilled"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\tFlex,\n\tIcon,\n\tTooltip,\n\t__experimentalHeading as Heading,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { getTemplatePartIcon } from '@wordpress/editor';\nimport { __ } from '@wordpress/i18n';\nimport { getQueryArgs } from '@wordpress/url';\nimport { file, starFilled, lockSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport AddNewPattern from '../add-new-pattern';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport CategoryItem from './category-item';\nimport { DEFAULT_CATEGORY, DEFAULT_TYPE } from '../page-patterns/utils';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport usePatternCategories from './use-pattern-categories';\nimport useMyPatterns from './use-my-patterns';\nimport useTemplatePartAreas from './use-template-part-areas';\n\nfunction TemplatePartGroup( { areas, currentArea, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-patterns__group-header\">\n\t\t\t\t<Heading level={ 2 }>{ __( 'Template parts' ) }</Heading>\n\t\t\t</div>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ Object.entries( areas ).map(\n\t\t\t\t\t( [ area, { label, templateParts } ] ) => (\n\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\tkey={ area }\n\t\t\t\t\t\t\tcount={ templateParts?.length }\n\t\t\t\t\t\t\ticon={ getTemplatePartIcon( area ) }\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tid={ area }\n\t\t\t\t\t\t\ttype=\"wp_template_part\"\n\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\tcurrentArea === area &&\n\t\t\t\t\t\t\t\tcurrentType === 'wp_template_part'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)\n\t\t\t\t) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ThemePatternsGroup( { categories, currentCategory, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-patterns__group-header\">\n\t\t\t\t<Heading level={ 2 }>{ __( 'Theme patterns' ) }</Heading>\n\t\t\t</div>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\tcount={ category.count }\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t<Flex justify=\"left\" align=\"center\" gap={ 0 }>\n\t\t\t\t\t\t\t\t{ category.label }\n\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\ttext={ __(\n\t\t\t\t\t\t\t\t\t\t'Theme patterns cannot be edited.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-pattern__lock-icon\">\n\t\t\t\t\t\t\t\t\t\t<Icon icon={ lockSmall } size={ 24 } />\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ticon={ file }\n\t\t\t\t\t\tid={ category.name }\n\t\t\t\t\t\ttype=\"pattern\"\n\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\tcurrentCategory === `${ category.name }` &&\n\t\t\t\t\t\t\tcurrentType === 'pattern'\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nexport default function SidebarNavigationScreenPatterns() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst { categoryType, categoryId } = getQueryArgs( window.location.href );\n\tconst currentCategory = categoryId || DEFAULT_CATEGORY;\n\tconst currentType = categoryType || DEFAULT_TYPE;\n\n\tconst { templatePartAreas, hasTemplateParts, isLoading } =\n\t\tuseTemplatePartAreas();\n\tconst { patternCategories, hasPatterns } = usePatternCategories();\n\tconst { myPatterns, hasPatterns: hasMyPatterns } = useMyPatterns();\n\n\tconst isTemplatePartsMode = useSelect( ( select ) => {\n\t\tconst settings = select( editSiteStore ).getSettings();\n\t\treturn !! settings.supportsTemplatePartsMode;\n\t}, [] );\n\n\tconst templatePartsLink = useLink( { path: '/wp_template_part/all' } );\n\tconst footer = ! isMobileViewport ? (\n\t\t<ItemGroup>\n\t\t\t<SidebarNavigationItem withChevron { ...templatePartsLink }>\n\t\t\t\t{ __( 'Manage all template parts' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t\t<SidebarNavigationItem\n\t\t\t\tas=\"a\"\n\t\t\t\thref=\"edit.php?post_type=wp_block\"\n\t\t\t\twithChevron\n\t\t\t>\n\t\t\t\t{ __( 'Manage all of my patterns' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t</ItemGroup>\n\t) : undefined;\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\tisRoot={ isTemplatePartsMode }\n\t\t\ttitle={ __( 'Patterns' ) }\n\t\t\tdescription={ __(\n\t\t\t\t'Manage what patterns are available when editing the site.'\n\t\t\t) }\n\t\t\tactions={ <AddNewPattern /> }\n\t\t\tfooter={ footer }\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ isLoading && __( 'Loading patterns' ) }\n\t\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! hasTemplateParts && ! hasPatterns && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t<Item>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'No template parts or patterns found'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Item>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasMyPatterns && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\t\t\t\tkey={ myPatterns.name }\n\t\t\t\t\t\t\t\t\t\tcount={ myPatterns.count }\n\t\t\t\t\t\t\t\t\t\tlabel={ myPatterns.label }\n\t\t\t\t\t\t\t\t\t\ticon={ starFilled }\n\t\t\t\t\t\t\t\t\t\tid={ myPatterns.name }\n\t\t\t\t\t\t\t\t\t\ttype=\"wp_block\"\n\t\t\t\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\t\t\t\tcurrentCategory ===\n\t\t\t\t\t\t\t\t\t\t\t\t`${ myPatterns.name }` &&\n\t\t\t\t\t\t\t\t\t\t\tcurrentType === 'wp_block'\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</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasTemplateParts && (\n\t\t\t\t\t\t\t\t<TemplatePartGroup\n\t\t\t\t\t\t\t\t\tareas={ templatePartAreas }\n\t\t\t\t\t\t\t\t\tcurrentArea={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\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{ hasPatterns && (\n\t\t\t\t\t\t\t\t<ThemePatternsGroup\n\t\t\t\t\t\t\t\t\tcategories={ patternCategories }\n\t\t\t\t\t\t\t\t\tcurrentCategory={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t}\n\t\t/>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/index.js"],"names":["TemplatePartGroup","areas","currentArea","currentType","Object","entries","map","area","label","templateParts","length","ThemePatternsGroup","categories","currentCategory","category","name","count","lockSmall","file","SidebarNavigationScreenPatterns","isMobileViewport","categoryType","categoryId","window","location","href","DEFAULT_CATEGORY","DEFAULT_TYPE","templatePartAreas","hasTemplateParts","isLoading","patternCategories","hasPatterns","myPatterns","isTemplatePartsMode","select","settings","editSiteStore","getSettings","supportsTemplatePartsMode","templatePartsLink","path","footer","undefined","starFilled"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\tFlex,\n\tIcon,\n\tTooltip,\n\t__experimentalHeading as Heading,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { getTemplatePartIcon } from '@wordpress/editor';\nimport { __ } from '@wordpress/i18n';\nimport { getQueryArgs } from '@wordpress/url';\nimport { file, starFilled, lockSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport AddNewPattern from '../add-new-pattern';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport CategoryItem from './category-item';\nimport { DEFAULT_CATEGORY, DEFAULT_TYPE } from '../page-patterns/utils';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport usePatternCategories from './use-pattern-categories';\nimport useMyPatterns from './use-my-patterns';\nimport useTemplatePartAreas from './use-template-part-areas';\n\nfunction TemplatePartGroup( { areas, currentArea, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-patterns__group-header\">\n\t\t\t\t<Heading level={ 2 }>{ __( 'Template parts' ) }</Heading>\n\t\t\t</div>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ Object.entries( areas ).map(\n\t\t\t\t\t( [ area, { label, templateParts } ] ) => (\n\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\tkey={ area }\n\t\t\t\t\t\t\tcount={ templateParts?.length }\n\t\t\t\t\t\t\ticon={ getTemplatePartIcon( area ) }\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tid={ area }\n\t\t\t\t\t\t\ttype=\"wp_template_part\"\n\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\tcurrentArea === area &&\n\t\t\t\t\t\t\t\tcurrentType === 'wp_template_part'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)\n\t\t\t\t) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ThemePatternsGroup( { categories, currentCategory, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-patterns__group-header\">\n\t\t\t\t<Heading level={ 2 }>{ __( 'Theme patterns' ) }</Heading>\n\t\t\t</div>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\tcount={ category.count }\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t<Flex justify=\"left\" align=\"center\" gap={ 0 }>\n\t\t\t\t\t\t\t\t{ category.label }\n\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\ttext={ __(\n\t\t\t\t\t\t\t\t\t\t'Theme patterns cannot be edited.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-pattern__lock-icon\">\n\t\t\t\t\t\t\t\t\t\t<Icon icon={ lockSmall } size={ 24 } />\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ticon={ file }\n\t\t\t\t\t\tid={ category.name }\n\t\t\t\t\t\ttype=\"pattern\"\n\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\tcurrentCategory === `${ category.name }` &&\n\t\t\t\t\t\t\tcurrentType === 'pattern'\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nexport default function SidebarNavigationScreenPatterns() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst { categoryType, categoryId } = getQueryArgs( window.location.href );\n\tconst currentCategory = categoryId || DEFAULT_CATEGORY;\n\tconst currentType = categoryType || DEFAULT_TYPE;\n\n\tconst { templatePartAreas, hasTemplateParts, isLoading } =\n\t\tuseTemplatePartAreas();\n\tconst { patternCategories, hasPatterns } = usePatternCategories();\n\tconst { myPatterns } = useMyPatterns();\n\n\tconst isTemplatePartsMode = useSelect( ( select ) => {\n\t\tconst settings = select( editSiteStore ).getSettings();\n\t\treturn !! settings.supportsTemplatePartsMode;\n\t}, [] );\n\n\tconst templatePartsLink = useLink( { path: '/wp_template_part/all' } );\n\tconst footer = ! isMobileViewport ? (\n\t\t<ItemGroup>\n\t\t\t<SidebarNavigationItem withChevron { ...templatePartsLink }>\n\t\t\t\t{ __( 'Manage all template parts' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t\t<SidebarNavigationItem\n\t\t\t\tas=\"a\"\n\t\t\t\thref=\"edit.php?post_type=wp_block\"\n\t\t\t\twithChevron\n\t\t\t>\n\t\t\t\t{ __( 'Manage all of my patterns' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t</ItemGroup>\n\t) : undefined;\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\tisRoot={ isTemplatePartsMode }\n\t\t\ttitle={ __( 'Patterns' ) }\n\t\t\tdescription={ __(\n\t\t\t\t'Manage what patterns are available when editing the site.'\n\t\t\t) }\n\t\t\tactions={ <AddNewPattern /> }\n\t\t\tfooter={ footer }\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ isLoading && __( 'Loading patterns' ) }\n\t\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! hasTemplateParts && ! hasPatterns && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t<Item>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'No template parts or patterns found'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Item>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\t\t\tkey={ myPatterns.name }\n\t\t\t\t\t\t\t\t\tcount={\n\t\t\t\t\t\t\t\t\t\t! myPatterns.count\n\t\t\t\t\t\t\t\t\t\t\t? '0'\n\t\t\t\t\t\t\t\t\t\t\t: myPatterns.count\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabel={ myPatterns.label }\n\t\t\t\t\t\t\t\t\ticon={ starFilled }\n\t\t\t\t\t\t\t\t\tid={ myPatterns.name }\n\t\t\t\t\t\t\t\t\ttype=\"wp_block\"\n\t\t\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\t\t\tcurrentCategory ===\n\t\t\t\t\t\t\t\t\t\t\t`${ myPatterns.name }` &&\n\t\t\t\t\t\t\t\t\t\tcurrentType === 'wp_block'\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t{ hasTemplateParts && (\n\t\t\t\t\t\t\t\t<TemplatePartGroup\n\t\t\t\t\t\t\t\t\tareas={ templatePartAreas }\n\t\t\t\t\t\t\t\t\tcurrentArea={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\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{ hasPatterns && (\n\t\t\t\t\t\t\t\t<ThemePatternsGroup\n\t\t\t\t\t\t\t\t\tcategories={ patternCategories }\n\t\t\t\t\t\t\t\t\tcurrentCategory={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t}\n\t\t/>\n\t);\n}\n"]}
|
|
@@ -72,7 +72,8 @@ const SiteHub = (0, _element.forwardRef)((props, ref) => {
|
|
|
72
72
|
} = (0, _data.useDispatch)(_commands.store);
|
|
73
73
|
const disableMotion = (0, _compose.useReducedMotion)();
|
|
74
74
|
const {
|
|
75
|
-
setCanvasMode
|
|
75
|
+
setCanvasMode,
|
|
76
|
+
__experimentalSetPreviewDeviceType: setPreviewDeviceType
|
|
76
77
|
} = (0, _lockUnlock.unlock)((0, _data.useDispatch)(_store.store));
|
|
77
78
|
const {
|
|
78
79
|
clearSelectedBlock
|
|
@@ -91,6 +92,7 @@ const SiteHub = (0, _element.forwardRef)((props, ref) => {
|
|
|
91
92
|
|
|
92
93
|
if (canvasMode === 'edit') {
|
|
93
94
|
clearSelectedBlock();
|
|
95
|
+
setPreviewDeviceType('desktop');
|
|
94
96
|
setCanvasMode('view');
|
|
95
97
|
}
|
|
96
98
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/site-hub/index.js"],"names":["HUB_ANIMATION_DURATION","SiteHub","props","ref","canvasMode","dashboardLink","homeUrl","select","getCanvasMode","getSettings","editSiteStore","getUnstableBase","coreStore","__experimentalDashboardLink","home","open","openCommandCenter","commandsStore","disableMotion","setCanvasMode","clearSelectedBlock","blockEditorStore","isBackToDashboardButton","siteIconButtonProps","href","label","role","onClick","event","preventDefault","siteTitle","getEntityRecord","title","className","type","duration","ease","scale","opacity","delay","external","search"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useReducedMotion } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { forwardRef } from '@wordpress/element';\nimport { search, external } from '@wordpress/icons';\nimport { store as commandsStore } from '@wordpress/commands';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport SiteIcon from '../site-icon';\nimport { unlock } from '../../lock-unlock';\n\nconst HUB_ANIMATION_DURATION = 0.3;\n\nconst SiteHub = forwardRef( ( props, ref ) => {\n\tconst { canvasMode, dashboardLink, homeUrl } = useSelect( ( select ) => {\n\t\tconst { getCanvasMode, getSettings } = unlock(\n\t\t\tselect( editSiteStore )\n\t\t);\n\n\t\tconst {\n\t\t\tgetUnstableBase, // Site index.\n\t\t} = select( coreStore );\n\n\t\treturn {\n\t\t\tcanvasMode: getCanvasMode(),\n\t\t\tdashboardLink:\n\t\t\t\tgetSettings().__experimentalDashboardLink || 'index.php',\n\t\t\thomeUrl: getUnstableBase()?.home,\n\t\t};\n\t}, [] );\n\tconst { open: openCommandCenter } = useDispatch( commandsStore );\n\n\tconst disableMotion = useReducedMotion();\n\tconst { setCanvasMode } = unlock( useDispatch( editSiteStore ) );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst isBackToDashboardButton = canvasMode === 'view';\n\tconst siteIconButtonProps = isBackToDashboardButton\n\t\t? {\n\t\t\t\thref: dashboardLink,\n\t\t\t\tlabel: __( 'Go to the Dashboard' ),\n\t\t }\n\t\t: {\n\t\t\t\thref: dashboardLink, // We need to keep the `href` here so the component doesn't remount as a `<button>` and break the animation.\n\t\t\t\trole: 'button',\n\t\t\t\tlabel: __( 'Open Navigation' ),\n\t\t\t\tonClick: ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tif ( canvasMode === 'edit' ) {\n\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\tsetCanvasMode( 'view' );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t };\n\n\tconst siteTitle = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getEntityRecord( 'root', 'site' )?.title,\n\t\t[]\n\t);\n\n\treturn (\n\t\t<motion.div\n\t\t\tref={ ref }\n\t\t\t{ ...props }\n\t\t\tclassName={ classnames( 'edit-site-site-hub', props.className ) }\n\t\t\tinitial={ false }\n\t\t\ttransition={ {\n\t\t\t\ttype: 'tween',\n\t\t\t\tduration: disableMotion ? 0 : HUB_ANIMATION_DURATION,\n\t\t\t\tease: 'easeOut',\n\t\t\t} }\n\t\t>\n\t\t\t<HStack\n\t\t\t\tjustify=\"space-between\"\n\t\t\t\talignment=\"center\"\n\t\t\t\tclassName=\"edit-site-site-hub__container\"\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\tclassName=\"edit-site-site-hub__text-content\"\n\t\t\t\t\tspacing=\"0\"\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName=\"edit-site-site-hub__view-mode-toggle-container\"\n\t\t\t\t\t\tlayout\n\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\tduration: disableMotion\n\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t: HUB_ANIMATION_DURATION,\n\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t{ ...siteIconButtonProps }\n\t\t\t\t\t\t\tclassName=\"edit-site-layout__view-mode-toggle\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\tinitial={ false }\n\t\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\t\tscale: canvasMode === 'view' ? 0.5 : 1,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\twhileHover={ {\n\t\t\t\t\t\t\t\t\tscale: canvasMode === 'view' ? 0.5 : 0.96,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\t\tduration: disableMotion\n\t\t\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t\t\t: HUB_ANIMATION_DURATION,\n\t\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<SiteIcon className=\"edit-site-layout__view-mode-toggle-icon\" />\n\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</motion.div>\n\n\t\t\t\t\t<AnimatePresence>\n\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\tlayout={ canvasMode === 'edit' }\n\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\topacity: canvasMode === 'view' ? 1 : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\texit={ {\n\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tclassName=\"edit-site-site-hub__site-title\"\n\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\tduration: disableMotion ? 0 : 0.2,\n\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\tdelay: canvasMode === 'view' ? 0.1 : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities( siteTitle ) }\n\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t</AnimatePresence>\n\t\t\t\t\t{ canvasMode === 'view' && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\thref={ homeUrl }\n\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\tlabel={ __( 'View site' ) }\n\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t'View site (opens in a new tab)'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\ticon={ external }\n\t\t\t\t\t\t\tclassName=\"edit-site-site-hub__site-view-link\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</HStack>\n\t\t\t\t{ canvasMode === 'view' && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-site-site-hub_toggle-command-center\"\n\t\t\t\t\t\ticon={ search }\n\t\t\t\t\t\tonClick={ () => openCommandCenter() }\n\t\t\t\t\t\tlabel={ __( 'Open command palette' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t</motion.div>\n\t);\n} );\n\nexport default SiteHub;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/site-hub/index.js"],"names":["HUB_ANIMATION_DURATION","SiteHub","props","ref","canvasMode","dashboardLink","homeUrl","select","getCanvasMode","getSettings","editSiteStore","getUnstableBase","coreStore","__experimentalDashboardLink","home","open","openCommandCenter","commandsStore","disableMotion","setCanvasMode","__experimentalSetPreviewDeviceType","setPreviewDeviceType","clearSelectedBlock","blockEditorStore","isBackToDashboardButton","siteIconButtonProps","href","label","role","onClick","event","preventDefault","siteTitle","getEntityRecord","title","className","type","duration","ease","scale","opacity","delay","external","search"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useReducedMotion } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { forwardRef } from '@wordpress/element';\nimport { search, external } from '@wordpress/icons';\nimport { store as commandsStore } from '@wordpress/commands';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport SiteIcon from '../site-icon';\nimport { unlock } from '../../lock-unlock';\n\nconst HUB_ANIMATION_DURATION = 0.3;\n\nconst SiteHub = forwardRef( ( props, ref ) => {\n\tconst { canvasMode, dashboardLink, homeUrl } = useSelect( ( select ) => {\n\t\tconst { getCanvasMode, getSettings } = unlock(\n\t\t\tselect( editSiteStore )\n\t\t);\n\n\t\tconst {\n\t\t\tgetUnstableBase, // Site index.\n\t\t} = select( coreStore );\n\n\t\treturn {\n\t\t\tcanvasMode: getCanvasMode(),\n\t\t\tdashboardLink:\n\t\t\t\tgetSettings().__experimentalDashboardLink || 'index.php',\n\t\t\thomeUrl: getUnstableBase()?.home,\n\t\t};\n\t}, [] );\n\tconst { open: openCommandCenter } = useDispatch( commandsStore );\n\n\tconst disableMotion = useReducedMotion();\n\tconst {\n\t\tsetCanvasMode,\n\t\t__experimentalSetPreviewDeviceType: setPreviewDeviceType,\n\t} = unlock( useDispatch( editSiteStore ) );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst isBackToDashboardButton = canvasMode === 'view';\n\tconst siteIconButtonProps = isBackToDashboardButton\n\t\t? {\n\t\t\t\thref: dashboardLink,\n\t\t\t\tlabel: __( 'Go to the Dashboard' ),\n\t\t }\n\t\t: {\n\t\t\t\thref: dashboardLink, // We need to keep the `href` here so the component doesn't remount as a `<button>` and break the animation.\n\t\t\t\trole: 'button',\n\t\t\t\tlabel: __( 'Open Navigation' ),\n\t\t\t\tonClick: ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tif ( canvasMode === 'edit' ) {\n\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\tsetPreviewDeviceType( 'desktop' );\n\t\t\t\t\t\tsetCanvasMode( 'view' );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t };\n\n\tconst siteTitle = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getEntityRecord( 'root', 'site' )?.title,\n\t\t[]\n\t);\n\n\treturn (\n\t\t<motion.div\n\t\t\tref={ ref }\n\t\t\t{ ...props }\n\t\t\tclassName={ classnames( 'edit-site-site-hub', props.className ) }\n\t\t\tinitial={ false }\n\t\t\ttransition={ {\n\t\t\t\ttype: 'tween',\n\t\t\t\tduration: disableMotion ? 0 : HUB_ANIMATION_DURATION,\n\t\t\t\tease: 'easeOut',\n\t\t\t} }\n\t\t>\n\t\t\t<HStack\n\t\t\t\tjustify=\"space-between\"\n\t\t\t\talignment=\"center\"\n\t\t\t\tclassName=\"edit-site-site-hub__container\"\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\tclassName=\"edit-site-site-hub__text-content\"\n\t\t\t\t\tspacing=\"0\"\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName=\"edit-site-site-hub__view-mode-toggle-container\"\n\t\t\t\t\t\tlayout\n\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\tduration: disableMotion\n\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t: HUB_ANIMATION_DURATION,\n\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t{ ...siteIconButtonProps }\n\t\t\t\t\t\t\tclassName=\"edit-site-layout__view-mode-toggle\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\tinitial={ false }\n\t\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\t\tscale: canvasMode === 'view' ? 0.5 : 1,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\twhileHover={ {\n\t\t\t\t\t\t\t\t\tscale: canvasMode === 'view' ? 0.5 : 0.96,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\t\tduration: disableMotion\n\t\t\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t\t\t: HUB_ANIMATION_DURATION,\n\t\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<SiteIcon className=\"edit-site-layout__view-mode-toggle-icon\" />\n\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</motion.div>\n\n\t\t\t\t\t<AnimatePresence>\n\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\tlayout={ canvasMode === 'edit' }\n\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\topacity: canvasMode === 'view' ? 1 : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\texit={ {\n\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tclassName=\"edit-site-site-hub__site-title\"\n\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\tduration: disableMotion ? 0 : 0.2,\n\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\tdelay: canvasMode === 'view' ? 0.1 : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities( siteTitle ) }\n\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t</AnimatePresence>\n\t\t\t\t\t{ canvasMode === 'view' && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\thref={ homeUrl }\n\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\tlabel={ __( 'View site' ) }\n\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t'View site (opens in a new tab)'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\ticon={ external }\n\t\t\t\t\t\t\tclassName=\"edit-site-site-hub__site-view-link\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</HStack>\n\t\t\t\t{ canvasMode === 'view' && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-site-site-hub_toggle-command-center\"\n\t\t\t\t\t\ticon={ search }\n\t\t\t\t\t\tonClick={ () => openCommandCenter() }\n\t\t\t\t\t\tlabel={ __( 'Open command palette' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t</motion.div>\n\t);\n} );\n\nexport default SiteHub;\n"]}
|
|
@@ -48,6 +48,12 @@ function getPathFromURL(urlParams) {
|
|
|
48
48
|
return path;
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
+
function isSubset(subset, superset) {
|
|
52
|
+
return Object.entries(subset).every(([key, value]) => {
|
|
53
|
+
return superset[key] === value;
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
|
|
51
57
|
function useSyncPathWithURL() {
|
|
52
58
|
const history = useHistory();
|
|
53
59
|
const {
|
|
@@ -58,8 +64,6 @@ function useSyncPathWithURL() {
|
|
|
58
64
|
params: navigatorParams,
|
|
59
65
|
goTo
|
|
60
66
|
} = (0, _components.__experimentalUseNavigator)();
|
|
61
|
-
const currentUrlParams = (0, _element.useRef)(urlParams);
|
|
62
|
-
const currentPath = (0, _element.useRef)(navigatorLocation.path);
|
|
63
67
|
const isMounting = (0, _element.useRef)(true);
|
|
64
68
|
(0, _element.useEffect)(() => {
|
|
65
69
|
// The navigatorParams are only initially filled properly when the
|
|
@@ -70,16 +74,13 @@ function useSyncPathWithURL() {
|
|
|
70
74
|
}
|
|
71
75
|
|
|
72
76
|
function updateUrlParams(newUrlParams) {
|
|
73
|
-
if (
|
|
74
|
-
return currentUrlParams.current[key] === value;
|
|
75
|
-
})) {
|
|
77
|
+
if (isSubset(newUrlParams, urlParams)) {
|
|
76
78
|
return;
|
|
77
79
|
}
|
|
78
80
|
|
|
79
|
-
const updatedParams = { ...
|
|
81
|
+
const updatedParams = { ...urlParams,
|
|
80
82
|
...newUrlParams
|
|
81
83
|
};
|
|
82
|
-
currentUrlParams.current = updatedParams;
|
|
83
84
|
history.push(updatedParams);
|
|
84
85
|
}
|
|
85
86
|
|
|
@@ -111,15 +112,17 @@ function useSyncPathWithURL() {
|
|
|
111
112
|
path: navigatorLocation.path === '/' ? undefined : navigatorLocation.path
|
|
112
113
|
});
|
|
113
114
|
}
|
|
114
|
-
},
|
|
115
|
+
}, // Trigger only when navigator changes to prevent infinite loops.
|
|
116
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
117
|
+
[navigatorLocation?.path, navigatorParams]);
|
|
115
118
|
(0, _element.useEffect)(() => {
|
|
116
|
-
currentUrlParams.current = urlParams;
|
|
117
119
|
const path = getPathFromURL(urlParams);
|
|
118
120
|
|
|
119
|
-
if (
|
|
120
|
-
currentPath.current = path;
|
|
121
|
+
if (navigatorLocation.path !== path) {
|
|
121
122
|
goTo(path);
|
|
122
123
|
}
|
|
123
|
-
},
|
|
124
|
+
}, // Trigger only when URL changes to prevent infinite loops.
|
|
125
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
126
|
+
[urlParams]);
|
|
124
127
|
}
|
|
125
128
|
//# sourceMappingURL=use-sync-path-with-url.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/sync-state-with-url/use-sync-path-with-url.js"],"names":["useLocation","useHistory","routerPrivateApis","getPathFromURL","urlParams","path","postType","postId","encodeURIComponent","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/sync-state-with-url/use-sync-path-with-url.js"],"names":["useLocation","useHistory","routerPrivateApis","getPathFromURL","urlParams","path","postType","postId","encodeURIComponent","isSubset","subset","superset","Object","entries","every","key","value","useSyncPathWithURL","history","params","location","navigatorLocation","navigatorParams","goTo","isMounting","current","updateUrlParams","newUrlParams","updatedParams","push","undefined","startsWith","canvas","categoryType","categoryId"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalUseNavigator as useNavigator } from '@wordpress/components';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\n\nexport function getPathFromURL( urlParams ) {\n\tlet path = urlParams?.path ?? '/';\n\n\t// Compute the navigator path based on the URL params.\n\tif ( urlParams?.postType && urlParams?.postId ) {\n\t\tswitch ( urlParams.postType ) {\n\t\t\tcase 'wp_block':\n\t\t\tcase 'wp_template':\n\t\t\tcase 'wp_template_part':\n\t\t\tcase 'page':\n\t\t\t\tpath = `/${ encodeURIComponent(\n\t\t\t\t\turlParams.postType\n\t\t\t\t) }/${ encodeURIComponent( urlParams.postId ) }`;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tpath = `/navigation/${ encodeURIComponent(\n\t\t\t\t\turlParams.postType\n\t\t\t\t) }/${ encodeURIComponent( urlParams.postId ) }`;\n\t\t}\n\t}\n\n\treturn path;\n}\n\nfunction isSubset( subset, superset ) {\n\treturn Object.entries( subset ).every( ( [ key, value ] ) => {\n\t\treturn superset[ key ] === value;\n\t} );\n}\n\nexport default function useSyncPathWithURL() {\n\tconst history = useHistory();\n\tconst { params: urlParams } = useLocation();\n\tconst {\n\t\tlocation: navigatorLocation,\n\t\tparams: navigatorParams,\n\t\tgoTo,\n\t} = useNavigator();\n\tconst isMounting = useRef( true );\n\n\tuseEffect(\n\t\t() => {\n\t\t\t// The navigatorParams are only initially filled properly when the\n\t\t\t// navigator screens mount. so we ignore the first synchronisation.\n\t\t\tif ( isMounting.current ) {\n\t\t\t\tisMounting.current = false;\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tfunction updateUrlParams( newUrlParams ) {\n\t\t\t\tif ( isSubset( newUrlParams, urlParams ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst updatedParams = {\n\t\t\t\t\t...urlParams,\n\t\t\t\t\t...newUrlParams,\n\t\t\t\t};\n\t\t\t\thistory.push( updatedParams );\n\t\t\t}\n\n\t\t\tif ( navigatorParams?.postType && navigatorParams?.postId ) {\n\t\t\t\tupdateUrlParams( {\n\t\t\t\t\tpostType: navigatorParams?.postType,\n\t\t\t\t\tpostId: navigatorParams?.postId,\n\t\t\t\t\tpath: undefined,\n\t\t\t\t} );\n\t\t\t} else if (\n\t\t\t\tnavigatorLocation.path.startsWith( '/page/' ) &&\n\t\t\t\tnavigatorParams?.postId\n\t\t\t) {\n\t\t\t\tupdateUrlParams( {\n\t\t\t\t\tpostType: 'page',\n\t\t\t\t\tpostId: navigatorParams?.postId,\n\t\t\t\t\tpath: undefined,\n\t\t\t\t} );\n\t\t\t} else if ( navigatorLocation.path === '/patterns' ) {\n\t\t\t\tupdateUrlParams( {\n\t\t\t\t\tpostType: undefined,\n\t\t\t\t\tpostId: undefined,\n\t\t\t\t\tcanvas: undefined,\n\t\t\t\t\tpath: navigatorLocation.path,\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tupdateUrlParams( {\n\t\t\t\t\tpostType: undefined,\n\t\t\t\t\tpostId: undefined,\n\t\t\t\t\tcategoryType: undefined,\n\t\t\t\t\tcategoryId: undefined,\n\t\t\t\t\tpath:\n\t\t\t\t\t\tnavigatorLocation.path === '/'\n\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t: navigatorLocation.path,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t// Trigger only when navigator changes to prevent infinite loops.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[ navigatorLocation?.path, navigatorParams ]\n\t);\n\n\tuseEffect(\n\t\t() => {\n\t\t\tconst path = getPathFromURL( urlParams );\n\t\t\tif ( navigatorLocation.path !== path ) {\n\t\t\t\tgoTo( path );\n\t\t\t}\n\t\t},\n\t\t// Trigger only when URL changes to prevent infinite loops.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[ urlParams ]\n\t);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/block-editor/index.js"],"names":["useSelect","BlockInspector","ReusableBlocksMenuItems","TemplatePartConverter","SidebarInspectorFill","store","editSiteStore","SiteEditorCanvas","getBlockEditorProvider","BlockEditor","entityType","select","getEditedPostType","BlockEditorProvider"],"mappings":";;AAAA;AACA;AACA
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/block-editor/index.js"],"names":["useSelect","BlockInspector","ReusableBlocksMenuItems","TemplatePartConverter","SidebarInspectorFill","store","editSiteStore","SiteEditorCanvas","getBlockEditorProvider","BlockEditor","entityType","select","getEditedPostType","BlockEditorProvider"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,QAA0B,iBAA1B;AACA,SAASC,cAAT,QAA+B,yBAA/B;AAEA,SAASC,uBAAT,QAAwC,4BAAxC;AAEA;AACA;AACA;;AACA,OAAOC,qBAAP,MAAkC,4BAAlC;AACA,SAASC,oBAAT,QAAqC,sBAArC;AACA,SAASC,KAAK,IAAIC,aAAlB,QAAuC,aAAvC;AACA,OAAOC,gBAAP,MAA6B,sBAA7B;AACA,OAAOC,sBAAP,MAAmC,6BAAnC;AAEA,eAAe,SAASC,WAAT,GAAuB;AACrC,QAAMC,UAAU,GAAGV,SAAS,CACzBW,MAAF,IAAcA,MAAM,CAAEL,aAAF,CAAN,CAAwBM,iBAAxB,EADa,EAE3B,EAF2B,CAA5B,CADqC,CAMrC;AACA;;AACA,QAAMC,mBAAmB,GAAGL,sBAAsB,CAAEE,UAAF,CAAlD;AAEA,SACC,cAAC,mBAAD,QACC,cAAC,qBAAD,OADD,EAEC,cAAC,oBAAD,QACC,cAAC,cAAD,OADD,CAFD,EAMC,cAAC,gBAAD,OAND,EAQC,cAAC,uBAAD,OARD,CADD;AAYA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { BlockInspector } from '@wordpress/block-editor';\n\nimport { ReusableBlocksMenuItems } from '@wordpress/reusable-blocks';\n\n/**\n * Internal dependencies\n */\nimport TemplatePartConverter from '../template-part-converter';\nimport { SidebarInspectorFill } from '../sidebar-edit-mode';\nimport { store as editSiteStore } from '../../store';\nimport SiteEditorCanvas from './site-editor-canvas';\nimport getBlockEditorProvider from './get-block-editor-provider';\n\nexport default function BlockEditor() {\n\tconst entityType = useSelect(\n\t\t( select ) => select( editSiteStore ).getEditedPostType(),\n\t\t[]\n\t);\n\n\t// Choose the provider based on the entity type currently\n\t// being edited.\n\tconst BlockEditorProvider = getBlockEditorProvider( entityType );\n\n\treturn (\n\t\t<BlockEditorProvider>\n\t\t\t<TemplatePartConverter />\n\t\t\t<SidebarInspectorFill>\n\t\t\t\t<BlockInspector />\n\t\t\t</SidebarInspectorFill>\n\n\t\t\t<SiteEditorCanvas />\n\n\t\t\t<ReusableBlocksMenuItems />\n\t\t</BlockEditorProvider>\n\t);\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { useSelect } from '@wordpress/data';
|
|
4
|
+
import { useDispatch, useSelect } from '@wordpress/data';
|
|
5
5
|
import { useMemo } from '@wordpress/element';
|
|
6
6
|
import { store as coreStore } from '@wordpress/core-data';
|
|
7
7
|
/**
|
|
@@ -11,22 +11,28 @@ import { store as coreStore } from '@wordpress/core-data';
|
|
|
11
11
|
import { store as editSiteStore } from '../../store';
|
|
12
12
|
import { unlock } from '../../lock-unlock';
|
|
13
13
|
import inserterMediaCategories from './inserter-media-categories';
|
|
14
|
-
export default function useSiteEditorSettings(
|
|
14
|
+
export default function useSiteEditorSettings() {
|
|
15
15
|
var _storedSettings$__exp, _storedSettings$__exp2;
|
|
16
16
|
|
|
17
|
+
const {
|
|
18
|
+
setIsInserterOpened
|
|
19
|
+
} = useDispatch(editSiteStore);
|
|
17
20
|
const {
|
|
18
21
|
storedSettings,
|
|
19
|
-
canvasMode
|
|
22
|
+
canvasMode,
|
|
23
|
+
templateType
|
|
20
24
|
} = useSelect(select => {
|
|
21
25
|
const {
|
|
22
26
|
getSettings,
|
|
23
|
-
getCanvasMode
|
|
27
|
+
getCanvasMode,
|
|
28
|
+
getEditedPostType
|
|
24
29
|
} = unlock(select(editSiteStore));
|
|
25
30
|
return {
|
|
26
|
-
storedSettings: getSettings(),
|
|
27
|
-
canvasMode: getCanvasMode()
|
|
31
|
+
storedSettings: getSettings(setIsInserterOpened),
|
|
32
|
+
canvasMode: getCanvasMode(),
|
|
33
|
+
templateType: getEditedPostType()
|
|
28
34
|
};
|
|
29
|
-
}, []);
|
|
35
|
+
}, [setIsInserterOpened]);
|
|
30
36
|
const settingsBlockPatterns = (_storedSettings$__exp = storedSettings.__experimentalAdditionalBlockPatterns) !== null && _storedSettings$__exp !== void 0 ? _storedSettings$__exp : // WP 6.0
|
|
31
37
|
storedSettings.__experimentalBlockPatterns; // WP 5.9
|
|
32
38
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/block-editor/use-site-editor-settings.js"],"names":["useSelect","useMemo","store","coreStore","editSiteStore","unlock","inserterMediaCategories","useSiteEditorSettings","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/block-editor/use-site-editor-settings.js"],"names":["useDispatch","useSelect","useMemo","store","coreStore","editSiteStore","unlock","inserterMediaCategories","useSiteEditorSettings","setIsInserterOpened","storedSettings","canvasMode","templateType","select","getSettings","getCanvasMode","getEditedPostType","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","restBlockPatterns","restBlockPatternCategories","getBlockPatterns","getBlockPatternCategories","blockPatterns","filter","x","index","arr","findIndex","y","name","postTypes","Array","isArray","includes","blockPatternCategories","focusMode","restStoredSettings","templateLock","template"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport inserterMediaCategories from './inserter-media-categories';\n\nexport default function useSiteEditorSettings() {\n\tconst { setIsInserterOpened } = useDispatch( editSiteStore );\n\tconst { storedSettings, canvasMode, templateType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSettings, getCanvasMode, getEditedPostType } = unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tstoredSettings: getSettings( setIsInserterOpened ),\n\t\t\t\tcanvasMode: getCanvasMode(),\n\t\t\t\ttemplateType: getEditedPostType(),\n\t\t\t};\n\t\t},\n\t\t[ setIsInserterOpened ]\n\t);\n\n\tconst settingsBlockPatterns =\n\t\tstoredSettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tstoredSettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst { restBlockPatterns, restBlockPatternCategories } = useSelect(\n\t\t( select ) => ( {\n\t\t\trestBlockPatterns: select( coreStore ).getBlockPatterns(),\n\t\t\trestBlockPatternCategories:\n\t\t\t\tselect( coreStore ).getBlockPatternCategories(),\n\t\t} ),\n\t\t[]\n\t);\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatterns || [] ),\n\t\t\t\t...( restBlockPatterns || [] ),\n\t\t\t]\n\t\t\t\t.filter(\n\t\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t\t)\n\t\t\t\t.filter( ( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( templateType ) )\n\t\t\t\t\t);\n\t\t\t\t} ),\n\t\t[ settingsBlockPatterns, restBlockPatterns, templateType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\treturn useMemo( () => {\n\t\tconst {\n\t\t\t__experimentalAdditionalBlockPatterns,\n\t\t\t__experimentalAdditionalBlockPatternCategories,\n\t\t\tfocusMode,\n\t\t\t...restStoredSettings\n\t\t} = storedSettings;\n\n\t\treturn {\n\t\t\t...restStoredSettings,\n\t\t\tinserterMediaCategories,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t\t// Temporary fix for bug in Block Editor Provider:\n\t\t\t// see: https://github.com/WordPress/gutenberg/issues/51489.\n\t\t\t// Some Site Editor entities (e.g. `wp_navigation`) may utilise\n\t\t\t// template locking in their settings. Therefore this must be\n\t\t\t// explicitly \"unset\" to avoid the template locking UI remaining\n\t\t\t// active for all entities.\n\t\t\ttemplateLock: false,\n\t\t\ttemplate: false,\n\t\t\tfocusMode: canvasMode === 'view' && focusMode ? false : focusMode,\n\t\t};\n\t}, [ storedSettings, blockPatterns, blockPatternCategories, canvasMode ] );\n}\n"]}
|
|
@@ -3,43 +3,103 @@ import { createElement, Fragment } from "@wordpress/element";
|
|
|
3
3
|
/**
|
|
4
4
|
* WordPress dependencies
|
|
5
5
|
*/
|
|
6
|
-
import { __experimentalText as Text } from '@wordpress/components';
|
|
7
|
-
import { useRef } from '@wordpress/element';
|
|
8
|
-
import { __, sprintf } from '@wordpress/i18n';
|
|
6
|
+
import { __experimentalHStack as HStack, __experimentalText as Text, Button } from '@wordpress/components';
|
|
7
|
+
import { useRef, useState, useMemo } from '@wordpress/element';
|
|
8
|
+
import { __, _x, _n, sprintf } from '@wordpress/i18n';
|
|
9
|
+
import { useAsyncList } from '@wordpress/compose';
|
|
9
10
|
/**
|
|
10
11
|
* Internal dependencies
|
|
11
12
|
*/
|
|
12
13
|
|
|
13
14
|
import GridItem from './grid-item';
|
|
14
|
-
const PAGE_SIZE =
|
|
15
|
+
const PAGE_SIZE = 20;
|
|
16
|
+
|
|
17
|
+
function Pagination({
|
|
18
|
+
currentPage,
|
|
19
|
+
numPages,
|
|
20
|
+
changePage,
|
|
21
|
+
totalItems
|
|
22
|
+
}) {
|
|
23
|
+
return createElement(HStack, {
|
|
24
|
+
expanded: false,
|
|
25
|
+
spacing: 3,
|
|
26
|
+
className: "edit-site-patterns__grid-pagination"
|
|
27
|
+
}, createElement(Text, {
|
|
28
|
+
variant: "muted"
|
|
29
|
+
}, // translators: %s: Total number of patterns.
|
|
30
|
+
sprintf( // translators: %s: Total number of patterns.
|
|
31
|
+
_n('%s item', '%s items', totalItems), totalItems)), createElement(HStack, {
|
|
32
|
+
expanded: false,
|
|
33
|
+
spacing: 1
|
|
34
|
+
}, createElement(Button, {
|
|
35
|
+
variant: "tertiary",
|
|
36
|
+
onClick: () => changePage(1),
|
|
37
|
+
disabled: currentPage === 1,
|
|
38
|
+
"aria-label": __('First page')
|
|
39
|
+
}, "\xAB"), createElement(Button, {
|
|
40
|
+
variant: "tertiary",
|
|
41
|
+
onClick: () => changePage(currentPage - 1),
|
|
42
|
+
disabled: currentPage === 1,
|
|
43
|
+
"aria-label": __('Previous page')
|
|
44
|
+
}, "\u2039")), createElement(Text, {
|
|
45
|
+
variant: "muted"
|
|
46
|
+
}, sprintf( // translators: %1$s: Current page number, %2$s: Total number of pages.
|
|
47
|
+
_x('%1$s of %2$s', 'paging'), currentPage, numPages)), createElement(HStack, {
|
|
48
|
+
expanded: false,
|
|
49
|
+
spacing: 1
|
|
50
|
+
}, createElement(Button, {
|
|
51
|
+
variant: "tertiary",
|
|
52
|
+
onClick: () => changePage(currentPage + 1),
|
|
53
|
+
disabled: currentPage === numPages,
|
|
54
|
+
"aria-label": __('Next page')
|
|
55
|
+
}, "\u203A"), createElement(Button, {
|
|
56
|
+
variant: "tertiary",
|
|
57
|
+
onClick: () => changePage(numPages),
|
|
58
|
+
disabled: currentPage === numPages,
|
|
59
|
+
"aria-label": __('Last page')
|
|
60
|
+
}, "\xBB")));
|
|
61
|
+
}
|
|
62
|
+
|
|
15
63
|
export default function Grid({
|
|
16
64
|
categoryId,
|
|
17
65
|
items,
|
|
18
66
|
...props
|
|
19
67
|
}) {
|
|
68
|
+
const [currentPage, setCurrentPage] = useState(1);
|
|
20
69
|
const gridRef = useRef();
|
|
70
|
+
const totalItems = items.length;
|
|
71
|
+
const pageIndex = currentPage - 1;
|
|
72
|
+
const list = useMemo(() => items.slice(pageIndex * PAGE_SIZE, pageIndex * PAGE_SIZE + PAGE_SIZE), [pageIndex, items]);
|
|
73
|
+
const asyncList = useAsyncList(list, {
|
|
74
|
+
step: 10
|
|
75
|
+
});
|
|
21
76
|
|
|
22
|
-
if (!
|
|
77
|
+
if (!list?.length) {
|
|
23
78
|
return null;
|
|
24
79
|
}
|
|
25
80
|
|
|
26
|
-
const
|
|
27
|
-
|
|
81
|
+
const numPages = Math.ceil(items.length / PAGE_SIZE);
|
|
82
|
+
|
|
83
|
+
const changePage = page => {
|
|
84
|
+
const scrollContainer = document.querySelector('.edit-site-patterns');
|
|
85
|
+
scrollContainer?.scrollTo(0, 0);
|
|
86
|
+
setCurrentPage(page);
|
|
87
|
+
};
|
|
88
|
+
|
|
28
89
|
return createElement(Fragment, null, createElement("ul", {
|
|
29
90
|
role: "listbox",
|
|
30
91
|
className: "edit-site-patterns__grid",
|
|
31
92
|
...props,
|
|
32
93
|
ref: gridRef
|
|
33
|
-
},
|
|
94
|
+
}, asyncList.map(item => createElement(GridItem, {
|
|
34
95
|
key: item.name,
|
|
35
96
|
item: item,
|
|
36
97
|
categoryId: categoryId
|
|
37
|
-
}))),
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
__('+ %d more patterns discoverable by searching'), restLength)));
|
|
98
|
+
}))), numPages > 1 && createElement(Pagination, {
|
|
99
|
+
currentPage,
|
|
100
|
+
numPages,
|
|
101
|
+
changePage,
|
|
102
|
+
totalItems
|
|
103
|
+
}));
|
|
44
104
|
}
|
|
45
105
|
//# sourceMappingURL=grid.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/page-patterns/grid.js"],"names":["__experimentalText","Text","useRef","__","sprintf","GridItem","PAGE_SIZE","Grid","categoryId","items","props","gridRef","length","list","slice","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/page-patterns/grid.js"],"names":["__experimentalHStack","HStack","__experimentalText","Text","Button","useRef","useState","useMemo","__","_x","_n","sprintf","useAsyncList","GridItem","PAGE_SIZE","Pagination","currentPage","numPages","changePage","totalItems","Grid","categoryId","items","props","setCurrentPage","gridRef","length","pageIndex","list","slice","asyncList","step","Math","ceil","page","scrollContainer","document","querySelector","scrollTo","map","item","name"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalText as Text,\n\tButton,\n} from '@wordpress/components';\nimport { useRef, useState, useMemo } from '@wordpress/element';\nimport { __, _x, _n, sprintf } from '@wordpress/i18n';\nimport { useAsyncList } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport GridItem from './grid-item';\n\nconst PAGE_SIZE = 20;\n\nfunction Pagination( { currentPage, numPages, changePage, totalItems } ) {\n\treturn (\n\t\t<HStack\n\t\t\texpanded={ false }\n\t\t\tspacing={ 3 }\n\t\t\tclassName=\"edit-site-patterns__grid-pagination\"\n\t\t>\n\t\t\t<Text variant=\"muted\">\n\t\t\t\t{\n\t\t\t\t\t// translators: %s: Total number of patterns.\n\t\t\t\t\tsprintf(\n\t\t\t\t\t\t// translators: %s: Total number of patterns.\n\t\t\t\t\t\t_n( '%s item', '%s items', totalItems ),\n\t\t\t\t\t\ttotalItems\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t</Text>\n\t\t\t<HStack expanded={ false } spacing={ 1 }>\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\tonClick={ () => changePage( 1 ) }\n\t\t\t\t\tdisabled={ currentPage === 1 }\n\t\t\t\t\taria-label={ __( 'First page' ) }\n\t\t\t\t>\n\t\t\t\t\t«\n\t\t\t\t</Button>\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\tonClick={ () => changePage( currentPage - 1 ) }\n\t\t\t\t\tdisabled={ currentPage === 1 }\n\t\t\t\t\taria-label={ __( 'Previous page' ) }\n\t\t\t\t>\n\t\t\t\t\t‹\n\t\t\t\t</Button>\n\t\t\t</HStack>\n\t\t\t<Text variant=\"muted\">\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: %1$s: Current page number, %2$s: Total number of pages.\n\t\t\t\t\t_x( '%1$s of %2$s', 'paging' ),\n\t\t\t\t\tcurrentPage,\n\t\t\t\t\tnumPages\n\t\t\t\t) }\n\t\t\t</Text>\n\t\t\t<HStack expanded={ false } spacing={ 1 }>\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\tonClick={ () => changePage( currentPage + 1 ) }\n\t\t\t\t\tdisabled={ currentPage === numPages }\n\t\t\t\t\taria-label={ __( 'Next page' ) }\n\t\t\t\t>\n\t\t\t\t\t›\n\t\t\t\t</Button>\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\tonClick={ () => changePage( numPages ) }\n\t\t\t\t\tdisabled={ currentPage === numPages }\n\t\t\t\t\taria-label={ __( 'Last page' ) }\n\t\t\t\t>\n\t\t\t\t\t»\n\t\t\t\t</Button>\n\t\t\t</HStack>\n\t\t</HStack>\n\t);\n}\n\nexport default function Grid( { categoryId, items, ...props } ) {\n\tconst [ currentPage, setCurrentPage ] = useState( 1 );\n\tconst gridRef = useRef();\n\tconst totalItems = items.length;\n\tconst pageIndex = currentPage - 1;\n\n\tconst list = useMemo(\n\t\t() =>\n\t\t\titems.slice(\n\t\t\t\tpageIndex * PAGE_SIZE,\n\t\t\t\tpageIndex * PAGE_SIZE + PAGE_SIZE\n\t\t\t),\n\t\t[ pageIndex, items ]\n\t);\n\n\tconst asyncList = useAsyncList( list, { step: 10 } );\n\n\tif ( ! list?.length ) {\n\t\treturn null;\n\t}\n\n\tconst numPages = Math.ceil( items.length / PAGE_SIZE );\n\tconst changePage = ( page ) => {\n\t\tconst scrollContainer = document.querySelector( '.edit-site-patterns' );\n\t\tscrollContainer?.scrollTo( 0, 0 );\n\n\t\tsetCurrentPage( page );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<ul\n\t\t\t\trole=\"listbox\"\n\t\t\t\tclassName=\"edit-site-patterns__grid\"\n\t\t\t\t{ ...props }\n\t\t\t\tref={ gridRef }\n\t\t\t>\n\t\t\t\t{ asyncList.map( ( item ) => (\n\t\t\t\t\t<GridItem\n\t\t\t\t\t\tkey={ item.name }\n\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ul>\n\t\t\t{ numPages > 1 && (\n\t\t\t\t<Pagination\n\t\t\t\t\t{ ...{ currentPage, numPages, changePage, totalItems } }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -8,7 +8,7 @@ import { SearchControl, __experimentalVStack as VStack, Flex, FlexBlock, __exper
|
|
|
8
8
|
import { __, isRTL } from '@wordpress/i18n';
|
|
9
9
|
import { chevronLeft, chevronRight } from '@wordpress/icons';
|
|
10
10
|
import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
11
|
-
import { useViewportMatch
|
|
11
|
+
import { useViewportMatch } from '@wordpress/compose';
|
|
12
12
|
/**
|
|
13
13
|
* Internal dependencies
|
|
14
14
|
*/
|
|
@@ -59,7 +59,6 @@ export default function PatternsList({
|
|
|
59
59
|
const hasPatterns = patterns.length;
|
|
60
60
|
const title = SYNC_FILTERS[syncFilter];
|
|
61
61
|
const description = SYNC_DESCRIPTIONS[syncFilter];
|
|
62
|
-
const shownPatterns = useAsyncList(patterns);
|
|
63
62
|
return createElement(VStack, {
|
|
64
63
|
spacing: 6
|
|
65
64
|
}, createElement(PatternsHeader, {
|
|
@@ -110,7 +109,7 @@ export default function PatternsList({
|
|
|
110
109
|
className: "edit-site-patterns__section-header"
|
|
111
110
|
}, createElement(Heading, {
|
|
112
111
|
as: "h3",
|
|
113
|
-
level:
|
|
112
|
+
level: 5,
|
|
114
113
|
id: titleId
|
|
115
114
|
}, title), description ? createElement(Text, {
|
|
116
115
|
variant: "muted",
|
|
@@ -118,7 +117,7 @@ export default function PatternsList({
|
|
|
118
117
|
id: descriptionId
|
|
119
118
|
}, description) : null), hasPatterns && createElement(Grid, {
|
|
120
119
|
categoryId: categoryId,
|
|
121
|
-
items:
|
|
120
|
+
items: patterns,
|
|
122
121
|
"aria-labelledby": titleId,
|
|
123
122
|
"aria-describedby": descriptionId
|
|
124
123
|
}), !isResolving && !hasPatterns && createElement(NoPatterns, null));
|