@wordpress/edit-site 5.12.4 → 5.12.6
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/add-new-template/new-template.js +1 -1
- package/build/components/add-new-template/new-template.js.map +1 -1
- package/build/components/block-editor/editor-canvas.js +1 -1
- package/build/components/block-editor/editor-canvas.js.map +1 -1
- package/build/components/create-pattern-modal/index.js +7 -7
- package/build/components/create-pattern-modal/index.js.map +1 -1
- package/build/components/header-edit-mode/document-actions/index.js +9 -1
- package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build/components/page/index.js +3 -1
- package/build/components/page/index.js.map +1 -1
- package/build/components/page-main/index.js +8 -4
- package/build/components/page-main/index.js.map +1 -1
- package/build/components/{page-library → page-patterns}/grid-item.js +52 -27
- package/build/components/page-patterns/grid-item.js.map +1 -0
- package/build/components/{page-library → page-patterns}/grid.js +1 -1
- package/build/components/page-patterns/grid.js.map +1 -0
- package/build/components/{page-library → page-patterns}/index.js +6 -6
- package/build/components/page-patterns/index.js.map +1 -0
- package/build/components/{page-library → page-patterns}/no-patterns.js +1 -1
- package/build/components/page-patterns/no-patterns.js.map +1 -0
- package/build/components/{page-library → page-patterns}/patterns-list.js +6 -6
- package/build/components/page-patterns/patterns-list.js.map +1 -0
- package/build/components/page-patterns/search-items.js.map +1 -0
- package/build/components/{page-library/use-library-settings.js → page-patterns/use-pattern-settings.js} +3 -3
- package/build/components/page-patterns/use-pattern-settings.js.map +1 -0
- package/build/components/{page-library → page-patterns}/use-patterns.js +12 -2
- package/build/components/page-patterns/use-patterns.js.map +1 -0
- package/build/components/{page-library → page-patterns}/utils.js +3 -3
- package/build/components/page-patterns/utils.js.map +1 -0
- package/build/components/page-template-parts/index.js +102 -0
- package/build/components/page-template-parts/index.js.map +1 -0
- package/build/components/sidebar/index.js +6 -6
- package/build/components/sidebar/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/settings-header/index.js +7 -1
- package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-global-styles/index.js +20 -8
- package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-main/index.js +2 -2
- package/build/components/sidebar-navigation-screen-main/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/index.js +2 -4
- package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menus/index.js +16 -4
- package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pages/index.js +1 -1
- package/build/components/sidebar-navigation-screen-pages/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/index.js +13 -8
- package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +23 -0
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/category-item.js +3 -3
- package/build/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -0
- package/build/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/index.js +55 -15
- package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -0
- package/build/components/sidebar-navigation-screen-patterns/use-default-pattern-categories.js.map +1 -0
- package/build/components/sidebar-navigation-screen-patterns/use-my-patterns.js +30 -0
- package/build/components/sidebar-navigation-screen-patterns/use-my-patterns.js.map +1 -0
- package/build/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/use-pattern-categories.js +2 -20
- package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -0
- package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -0
- package/build/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/use-theme-patterns.js +1 -1
- package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -0
- package/build/components/sidebar-navigation-screen-templates/index.js +11 -63
- package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-templates-browse/index.js +4 -2
- package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
- package/build/components/sync-state-with-url/use-sync-path-with-url.js +1 -1
- package/build/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
- package/build/components/welcome-guide/editor.js +1 -1
- package/build/components/welcome-guide/editor.js.map +1 -1
- package/build/components/welcome-guide/index.js +5 -1
- package/build/components/welcome-guide/index.js.map +1 -1
- package/build/components/welcome-guide/page.js +70 -0
- package/build/components/welcome-guide/page.js.map +1 -0
- package/build/components/welcome-guide/styles.js +1 -1
- package/build/components/welcome-guide/styles.js.map +1 -1
- package/build/components/welcome-guide/template.js +71 -0
- package/build/components/welcome-guide/template.js.map +1 -0
- package/build/hooks/commands/use-common-commands.js +17 -2
- package/build/hooks/commands/use-common-commands.js.map +1 -1
- package/build/hooks/commands/use-edit-mode-commands.js +2 -1
- package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build/index.js +2 -0
- package/build/index.js.map +1 -1
- package/build/store/actions.js +5 -2
- package/build/store/actions.js.map +1 -1
- package/build/utils/get-is-list-page.js +2 -2
- package/build/utils/get-is-list-page.js.map +1 -1
- package/build-module/components/add-new-template/new-template.js +2 -2
- package/build-module/components/add-new-template/new-template.js.map +1 -1
- package/build-module/components/block-editor/editor-canvas.js +1 -1
- package/build-module/components/block-editor/editor-canvas.js.map +1 -1
- package/build-module/components/create-pattern-modal/index.js +7 -7
- package/build-module/components/create-pattern-modal/index.js.map +1 -1
- package/build-module/components/header-edit-mode/document-actions/index.js +10 -2
- package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build-module/components/page/index.js +2 -1
- package/build-module/components/page/index.js.map +1 -1
- package/build-module/components/page-main/index.js +6 -3
- package/build-module/components/page-main/index.js.map +1 -1
- package/build-module/components/{page-library → page-patterns}/grid-item.js +56 -29
- package/build-module/components/page-patterns/grid-item.js.map +1 -0
- package/build-module/components/{page-library → page-patterns}/grid.js +1 -1
- package/build-module/components/page-patterns/grid.js.map +1 -0
- package/build-module/components/{page-library → page-patterns}/index.js +5 -5
- package/build-module/components/page-patterns/index.js.map +1 -0
- package/build-module/components/{page-library → page-patterns}/no-patterns.js +1 -1
- package/build-module/components/page-patterns/no-patterns.js.map +1 -0
- package/build-module/components/{page-library → page-patterns}/patterns-list.js +6 -6
- package/build-module/components/page-patterns/patterns-list.js.map +1 -0
- package/build-module/components/page-patterns/search-items.js.map +1 -0
- package/build-module/components/{page-library/use-library-settings.js → page-patterns/use-pattern-settings.js} +2 -2
- package/build-module/components/page-patterns/use-pattern-settings.js.map +1 -0
- package/build-module/components/{page-library → page-patterns}/use-patterns.js +12 -2
- package/build-module/components/page-patterns/use-patterns.js.map +1 -0
- package/build-module/components/{page-library → page-patterns}/utils.js +3 -3
- package/build-module/components/page-patterns/utils.js.map +1 -0
- package/build-module/components/page-template-parts/index.js +81 -0
- package/build-module/components/page-template-parts/index.js.map +1 -0
- package/build-module/components/sidebar/index.js +5 -5
- package/build-module/components/sidebar/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/settings-header/index.js +6 -1
- package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js +19 -8
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-main/index.js +2 -2
- package/build-module/components/sidebar-navigation-screen-main/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js +2 -4
- package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +15 -5
- package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pages/index.js +2 -2
- package/build-module/components/sidebar-navigation-screen-pages/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/index.js +12 -7
- package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +21 -0
- package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build-module/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/category-item.js +3 -3
- package/build-module/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -0
- package/build-module/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/index.js +54 -16
- package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen-patterns/use-default-pattern-categories.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.js +20 -0
- package/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.js.map +1 -0
- package/build-module/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/use-pattern-categories.js +2 -17
- package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -0
- package/build-module/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/use-theme-patterns.js +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen-templates/index.js +12 -62
- package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +4 -2
- package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
- package/build-module/components/sync-state-with-url/use-sync-path-with-url.js +1 -1
- package/build-module/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
- package/build-module/components/welcome-guide/editor.js +1 -1
- package/build-module/components/welcome-guide/editor.js.map +1 -1
- package/build-module/components/welcome-guide/index.js +3 -1
- package/build-module/components/welcome-guide/index.js.map +1 -1
- package/build-module/components/welcome-guide/page.js +59 -0
- package/build-module/components/welcome-guide/page.js.map +1 -0
- package/build-module/components/welcome-guide/styles.js +1 -1
- package/build-module/components/welcome-guide/styles.js.map +1 -1
- package/build-module/components/welcome-guide/template.js +60 -0
- package/build-module/components/welcome-guide/template.js.map +1 -0
- package/build-module/hooks/commands/use-common-commands.js +16 -2
- package/build-module/hooks/commands/use-common-commands.js.map +1 -1
- package/build-module/hooks/commands/use-edit-mode-commands.js +2 -1
- package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build-module/index.js +2 -0
- package/build-module/index.js.map +1 -1
- package/build-module/store/actions.js +5 -2
- package/build-module/store/actions.js.map +1 -1
- package/build-module/utils/get-is-list-page.js +2 -2
- package/build-module/utils/get-is-list-page.js.map +1 -1
- package/build-style/style-rtl.css +43 -26
- package/build-style/style.css +43 -26
- package/package.json +19 -19
- package/src/components/add-new-template/new-template.js +2 -2
- package/src/components/block-editor/editor-canvas.js +3 -1
- package/src/components/create-pattern-modal/index.js +10 -11
- package/src/components/header-edit-mode/document-actions/index.js +9 -1
- package/src/components/page/index.js +5 -1
- package/src/components/page-main/index.js +6 -3
- package/src/components/{page-library → page-patterns}/grid-item.js +74 -24
- package/src/components/{page-library → page-patterns}/grid.js +1 -1
- package/src/components/{page-library → page-patterns}/index.js +5 -5
- package/src/components/{page-library → page-patterns}/no-patterns.js +1 -1
- package/src/components/{page-library → page-patterns}/patterns-list.js +6 -6
- package/src/components/{page-library → page-patterns}/style.scss +16 -12
- package/src/components/{page-library/use-library-settings.js → page-patterns/use-pattern-settings.js} +1 -1
- package/src/components/{page-library → page-patterns}/use-patterns.js +11 -2
- package/src/components/{page-library → page-patterns}/utils.js +3 -3
- package/src/components/page-template-parts/index.js +105 -0
- package/src/components/sidebar/index.js +6 -6
- package/src/components/sidebar-edit-mode/settings-header/index.js +7 -2
- package/src/components/sidebar-navigation-screen-global-styles/index.js +26 -15
- package/src/components/sidebar-navigation-screen-main/index.js +2 -2
- package/src/components/sidebar-navigation-screen-navigation-menu/index.js +2 -6
- package/src/components/sidebar-navigation-screen-navigation-menus/index.js +12 -4
- package/src/components/sidebar-navigation-screen-pages/index.js +2 -2
- package/src/components/sidebar-navigation-screen-pattern/index.js +13 -6
- package/src/components/sidebar-navigation-screen-pattern/style.scss +4 -0
- package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +43 -1
- package/src/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/category-item.js +3 -3
- package/src/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/index.js +75 -22
- package/src/components/sidebar-navigation-screen-patterns/style.scss +3 -0
- package/src/components/sidebar-navigation-screen-patterns/use-my-patterns.js +23 -0
- package/src/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/use-pattern-categories.js +1 -18
- package/src/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/use-theme-patterns.js +1 -1
- package/src/components/sidebar-navigation-screen-templates/index.js +15 -82
- package/src/components/sidebar-navigation-screen-templates-browse/index.js +2 -0
- package/src/components/sync-state-with-url/use-sync-path-with-url.js +1 -1
- package/src/components/welcome-guide/editor.js +1 -1
- package/src/components/welcome-guide/index.js +4 -0
- package/src/components/welcome-guide/page.js +75 -0
- package/src/components/welcome-guide/style.scss +15 -1
- package/src/components/welcome-guide/styles.js +1 -1
- package/src/components/welcome-guide/template.js +82 -0
- package/src/hooks/commands/use-common-commands.js +13 -1
- package/src/hooks/commands/use-edit-mode-commands.js +5 -1
- package/src/index.js +2 -0
- package/src/store/actions.js +8 -1
- package/src/style.scss +2 -2
- package/src/utils/get-is-list-page.js +4 -3
- package/build/components/page-library/grid-item.js.map +0 -1
- package/build/components/page-library/grid.js.map +0 -1
- package/build/components/page-library/index.js.map +0 -1
- package/build/components/page-library/no-patterns.js.map +0 -1
- package/build/components/page-library/patterns-list.js.map +0 -1
- package/build/components/page-library/search-items.js.map +0 -1
- package/build/components/page-library/use-library-settings.js.map +0 -1
- package/build/components/page-library/use-patterns.js.map +0 -1
- package/build/components/page-library/utils.js.map +0 -1
- package/build/components/sidebar-navigation-screen-library/category-item.js.map +0 -1
- package/build/components/sidebar-navigation-screen-library/index.js.map +0 -1
- package/build/components/sidebar-navigation-screen-library/use-default-pattern-categories.js.map +0 -1
- package/build/components/sidebar-navigation-screen-library/use-pattern-categories.js.map +0 -1
- package/build/components/sidebar-navigation-screen-library/use-template-part-areas.js.map +0 -1
- package/build/components/sidebar-navigation-screen-library/use-theme-patterns.js.map +0 -1
- package/build-module/components/page-library/grid-item.js.map +0 -1
- package/build-module/components/page-library/grid.js.map +0 -1
- package/build-module/components/page-library/index.js.map +0 -1
- package/build-module/components/page-library/no-patterns.js.map +0 -1
- package/build-module/components/page-library/patterns-list.js.map +0 -1
- package/build-module/components/page-library/search-items.js.map +0 -1
- package/build-module/components/page-library/use-library-settings.js.map +0 -1
- package/build-module/components/page-library/use-patterns.js.map +0 -1
- package/build-module/components/page-library/utils.js.map +0 -1
- package/build-module/components/sidebar-navigation-screen-library/category-item.js.map +0 -1
- package/build-module/components/sidebar-navigation-screen-library/index.js.map +0 -1
- package/build-module/components/sidebar-navigation-screen-library/use-default-pattern-categories.js.map +0 -1
- package/build-module/components/sidebar-navigation-screen-library/use-pattern-categories.js.map +0 -1
- package/build-module/components/sidebar-navigation-screen-library/use-template-part-areas.js.map +0 -1
- package/build-module/components/sidebar-navigation-screen-library/use-theme-patterns.js.map +0 -1
- package/src/components/sidebar-navigation-screen-library/style.scss +0 -3
- /package/build/components/{page-library → page-patterns}/search-items.js +0 -0
- /package/build/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/use-default-pattern-categories.js +0 -0
- /package/build/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/use-template-part-areas.js +0 -0
- /package/build-module/components/{page-library → page-patterns}/search-items.js +0 -0
- /package/build-module/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/use-default-pattern-categories.js +0 -0
- /package/build-module/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/use-template-part-areas.js +0 -0
- /package/src/components/{page-library → page-patterns}/search-items.js +0 -0
- /package/src/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/use-default-pattern-categories.js +0 -0
- /package/src/components/{sidebar-navigation-screen-library → sidebar-navigation-screen-patterns}/use-template-part-areas.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-site/src/components/page-main/index.js"],"names":["privateApis","routerPrivateApis","
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/page-main/index.js"],"names":["privateApis","routerPrivateApis","PagePatterns","PageTemplateParts","PageTemplates","unlock","useLocation","PageMain","params","path"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,WAAW,IAAIC,iBAAxB,QAAiD,mBAAjD;AAEA;AACA;AACA;;AACA,OAAOC,YAAP,MAAyB,kBAAzB;AACA,OAAOC,iBAAP,MAA8B,wBAA9B;AACA,OAAOC,aAAP,MAA0B,mBAA1B;AACA,SAASC,MAAT,QAAuB,mBAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAkBD,MAAM,CAAEJ,iBAAF,CAA9B;AAEA,eAAe,SAASM,QAAT,GAAoB;AAClC,QAAM;AACLC,IAAAA,MAAM,EAAE;AAAEC,MAAAA;AAAF;AADH,MAEFH,WAAW,EAFf;;AAIA,MAAKG,IAAI,KAAK,kBAAd,EAAmC;AAClC,WAAO,cAAC,aAAD,OAAP;AACA,GAFD,MAEO,IAAKA,IAAI,KAAK,uBAAd,EAAwC;AAC9C,WAAO,cAAC,iBAAD,OAAP;AACA,GAFM,MAEA,IAAKA,IAAI,KAAK,WAAd,EAA4B;AAClC,WAAO,cAAC,YAAD,OAAP;AACA;;AAED,SAAO,IAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport PagePatterns from '../page-patterns';\nimport PageTemplateParts from '../page-template-parts';\nimport PageTemplates from '../page-templates';\nimport { unlock } from '../../lock-unlock';\n\nconst { useLocation } = unlock( routerPrivateApis );\n\nexport default function PageMain() {\n\tconst {\n\t\tparams: { path },\n\t} = useLocation();\n\n\tif ( path === '/wp_template/all' ) {\n\t\treturn <PageTemplates />;\n\t} else if ( path === '/wp_template_part/all' ) {\n\t\treturn <PageTemplateParts />;\n\t} else if ( path === '/patterns' ) {\n\t\treturn <PagePatterns />;\n\t}\n\n\treturn null;\n}\n"]}
|
|
@@ -9,12 +9,11 @@ import classnames from 'classnames';
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import { BlockPreview } from '@wordpress/block-editor';
|
|
12
|
-
import { __experimentalConfirmDialog as ConfirmDialog, DropdownMenu, MenuGroup, MenuItem, __experimentalHeading as Heading, __experimentalHStack as HStack, __unstableCompositeItem as CompositeItem } from '@wordpress/components';
|
|
13
|
-
import { useInstanceId } from '@wordpress/compose';
|
|
12
|
+
import { __experimentalConfirmDialog as ConfirmDialog, DropdownMenu, MenuGroup, MenuItem, __experimentalHeading as Heading, __experimentalHStack as HStack, __unstableCompositeItem as CompositeItem, Tooltip, Flex } from '@wordpress/components';
|
|
14
13
|
import { useDispatch } from '@wordpress/data';
|
|
15
|
-
import { useState } from '@wordpress/element';
|
|
14
|
+
import { useState, useId } from '@wordpress/element';
|
|
16
15
|
import { __, sprintf } from '@wordpress/i18n';
|
|
17
|
-
import { Icon, moreHorizontal } from '@wordpress/icons';
|
|
16
|
+
import { Icon, header, footer, symbolFilled, moreHorizontal, lockSmall } from '@wordpress/icons';
|
|
18
17
|
import { store as noticesStore } from '@wordpress/notices';
|
|
19
18
|
import { store as reusableBlocksStore } from '@wordpress/reusable-blocks';
|
|
20
19
|
import { DELETE, BACKSPACE } from '@wordpress/keycodes';
|
|
@@ -24,14 +23,16 @@ import { DELETE, BACKSPACE } from '@wordpress/keycodes';
|
|
|
24
23
|
|
|
25
24
|
import { PATTERNS, USER_PATTERNS } from './utils';
|
|
26
25
|
import { useLink } from '../routes/link';
|
|
26
|
+
|
|
27
|
+
const THEME_PATTERN_TOOLTIP = __('Theme patterns cannot be edited.');
|
|
28
|
+
|
|
27
29
|
export default function GridItem({
|
|
28
30
|
categoryId,
|
|
29
31
|
composite,
|
|
30
32
|
icon,
|
|
31
33
|
item
|
|
32
34
|
}) {
|
|
33
|
-
const
|
|
34
|
-
const descriptionId = `edit-site-library__pattern-description-${instanceId}`;
|
|
35
|
+
const descriptionId = useId();
|
|
35
36
|
const [isDeleteDialogOpen, setIsDeleteDialogOpen] = useState(false);
|
|
36
37
|
const {
|
|
37
38
|
__experimentalDeleteReusableBlock
|
|
@@ -46,8 +47,7 @@ export default function GridItem({
|
|
|
46
47
|
postType: item.type,
|
|
47
48
|
postId: item.type === USER_PATTERNS ? item.id : item.name,
|
|
48
49
|
categoryId,
|
|
49
|
-
categoryType: item.type
|
|
50
|
-
canvas: 'view'
|
|
50
|
+
categoryType: item.type
|
|
51
51
|
});
|
|
52
52
|
|
|
53
53
|
const onKeyDown = event => {
|
|
@@ -57,10 +57,10 @@ export default function GridItem({
|
|
|
57
57
|
};
|
|
58
58
|
|
|
59
59
|
const isEmpty = !item.blocks?.length;
|
|
60
|
-
const patternClassNames = classnames('edit-site-
|
|
60
|
+
const patternClassNames = classnames('edit-site-patterns__pattern', {
|
|
61
61
|
'is-placeholder': isEmpty
|
|
62
62
|
});
|
|
63
|
-
const previewClassNames = classnames('edit-site-
|
|
63
|
+
const previewClassNames = classnames('edit-site-patterns__preview', {
|
|
64
64
|
'is-inactive': item.type === PATTERNS
|
|
65
65
|
});
|
|
66
66
|
|
|
@@ -79,13 +79,27 @@ export default function GridItem({
|
|
|
79
79
|
};
|
|
80
80
|
|
|
81
81
|
const isUserPattern = item.type === USER_PATTERNS;
|
|
82
|
-
|
|
82
|
+
const ariaDescriptions = [];
|
|
83
83
|
|
|
84
84
|
if (isUserPattern) {
|
|
85
85
|
// User patterns don't have descriptions, but can be edited and deleted, so include some help text.
|
|
86
|
-
|
|
86
|
+
ariaDescriptions.push(__('Press Enter to edit, or Delete to delete the pattern.'));
|
|
87
87
|
} else if (item.description) {
|
|
88
|
-
|
|
88
|
+
ariaDescriptions.push(item.description);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
if (item.type === PATTERNS) {
|
|
92
|
+
ariaDescriptions.push(THEME_PATTERN_TOOLTIP);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
let itemIcon = icon;
|
|
96
|
+
|
|
97
|
+
if (categoryId === 'header') {
|
|
98
|
+
itemIcon = header;
|
|
99
|
+
} else if (categoryId === 'footer') {
|
|
100
|
+
itemIcon = footer;
|
|
101
|
+
} else if (categoryId === 'uncategorized') {
|
|
102
|
+
itemIcon = symbolFilled;
|
|
89
103
|
}
|
|
90
104
|
|
|
91
105
|
return createElement(Fragment, null, createElement("div", {
|
|
@@ -98,37 +112,50 @@ export default function GridItem({
|
|
|
98
112
|
onClick: item.type !== PATTERNS ? onClick : undefined,
|
|
99
113
|
onKeyDown: isUserPattern ? onKeyDown : undefined,
|
|
100
114
|
"aria-label": item.title,
|
|
101
|
-
"aria-describedby":
|
|
115
|
+
"aria-describedby": ariaDescriptions.length ? ariaDescriptions.join(' ') : undefined
|
|
102
116
|
}, isEmpty && __('Empty pattern'), !isEmpty && createElement(BlockPreview, {
|
|
103
117
|
blocks: item.blocks
|
|
104
|
-
})), ariaDescription
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
id: descriptionId
|
|
110
|
-
}, ariaDescription), createElement(HStack, {
|
|
118
|
+
})), ariaDescriptions.map((ariaDescription, index) => createElement("div", {
|
|
119
|
+
key: index,
|
|
120
|
+
hidden: true,
|
|
121
|
+
id: `${descriptionId}-${index}`
|
|
122
|
+
}, ariaDescription)), createElement(HStack, {
|
|
111
123
|
"aria-hidden": "true",
|
|
112
|
-
className: "edit-site-
|
|
124
|
+
className: "edit-site-patterns__footer",
|
|
113
125
|
justify: "space-between"
|
|
114
126
|
}, createElement(HStack, {
|
|
115
127
|
alignment: "center",
|
|
116
128
|
justify: "left",
|
|
117
129
|
spacing: 3,
|
|
118
|
-
className: "edit-site-
|
|
130
|
+
className: "edit-site-patterns__pattern-title"
|
|
119
131
|
}, icon && createElement(Icon, {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
132
|
+
className: "edit-site-patterns__pattern-icon",
|
|
133
|
+
icon: itemIcon
|
|
134
|
+
}), createElement(Flex, {
|
|
135
|
+
as: Heading,
|
|
136
|
+
level: 5,
|
|
137
|
+
gap: 0,
|
|
138
|
+
justify: "left"
|
|
139
|
+
}, item.title, item.type === PATTERNS && createElement(Tooltip, {
|
|
140
|
+
position: "top center",
|
|
141
|
+
text: __('Theme patterns cannot be edited.')
|
|
142
|
+
}, createElement("span", {
|
|
143
|
+
className: "edit-site-patterns__pattern-lock-icon"
|
|
144
|
+
}, createElement(Icon, {
|
|
145
|
+
style: {
|
|
146
|
+
fill: 'currentcolor'
|
|
147
|
+
},
|
|
148
|
+
icon: lockSmall,
|
|
149
|
+
size: 24
|
|
150
|
+
}))))), item.type === USER_PATTERNS && createElement(DropdownMenu, {
|
|
124
151
|
icon: moreHorizontal,
|
|
125
152
|
label: __('Actions'),
|
|
126
|
-
className: "edit-site-
|
|
153
|
+
className: "edit-site-patterns__dropdown",
|
|
127
154
|
popoverProps: {
|
|
128
155
|
placement: 'bottom-end'
|
|
129
156
|
},
|
|
130
157
|
toggleProps: {
|
|
131
|
-
className: 'edit-site-
|
|
158
|
+
className: 'edit-site-patterns__button',
|
|
132
159
|
isSmall: true,
|
|
133
160
|
describedBy: sprintf(
|
|
134
161
|
/* translators: %s: pattern name */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/page-patterns/grid-item.js"],"names":["classnames","BlockPreview","__experimentalConfirmDialog","ConfirmDialog","DropdownMenu","MenuGroup","MenuItem","__experimentalHeading","Heading","__experimentalHStack","HStack","__unstableCompositeItem","CompositeItem","Tooltip","Flex","useDispatch","useState","useId","__","sprintf","Icon","header","footer","symbolFilled","moreHorizontal","lockSmall","store","noticesStore","reusableBlocksStore","DELETE","BACKSPACE","PATTERNS","USER_PATTERNS","useLink","THEME_PATTERN_TOOLTIP","GridItem","categoryId","composite","icon","item","descriptionId","isDeleteDialogOpen","setIsDeleteDialogOpen","__experimentalDeleteReusableBlock","createErrorNotice","createSuccessNotice","onClick","postType","type","postId","id","name","categoryType","onKeyDown","event","keyCode","isEmpty","blocks","length","patternClassNames","previewClassNames","deletePattern","error","errorMessage","message","code","isUserPattern","ariaDescriptions","push","description","itemIcon","undefined","title","join","map","ariaDescription","index","fill","placement","className","isSmall","describedBy","tabIndex"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { BlockPreview } from '@wordpress/block-editor';\nimport {\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n\t__experimentalHeading as Heading,\n\t__experimentalHStack as HStack,\n\t__unstableCompositeItem as CompositeItem,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\nimport { useDispatch } from '@wordpress/data';\nimport { useState, useId } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tIcon,\n\theader,\n\tfooter,\n\tsymbolFilled,\n\tmoreHorizontal,\n\tlockSmall,\n} from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\nimport { DELETE, BACKSPACE } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { PATTERNS, USER_PATTERNS } from './utils';\nimport { useLink } from '../routes/link';\n\nconst THEME_PATTERN_TOOLTIP = __( 'Theme patterns cannot be edited.' );\n\nexport default function GridItem( { categoryId, composite, icon, item } ) {\n\tconst descriptionId = useId();\n\tconst [ isDeleteDialogOpen, setIsDeleteDialogOpen ] = useState( false );\n\n\tconst { __experimentalDeleteReusableBlock } =\n\t\tuseDispatch( reusableBlocksStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: item.type === USER_PATTERNS ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: item.type,\n\t} );\n\n\tconst onKeyDown = ( event ) => {\n\t\tif ( DELETE === event.keyCode || BACKSPACE === event.keyCode ) {\n\t\t\tsetIsDeleteDialogOpen( true );\n\t\t}\n\t};\n\n\tconst isEmpty = ! item.blocks?.length;\n\tconst patternClassNames = classnames( 'edit-site-patterns__pattern', {\n\t\t'is-placeholder': isEmpty,\n\t} );\n\tconst previewClassNames = classnames( 'edit-site-patterns__preview', {\n\t\t'is-inactive': item.type === PATTERNS,\n\t} );\n\n\tconst deletePattern = async () => {\n\t\ttry {\n\t\t\tawait __experimentalDeleteReusableBlock( item.id );\n\t\t\tcreateSuccessNotice( __( 'Pattern successfully deleted.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while deleting the pattern.' );\n\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t}\n\t};\n\n\tconst isUserPattern = item.type === USER_PATTERNS;\n\tconst ariaDescriptions = [];\n\tif ( isUserPattern ) {\n\t\t// User patterns don't have descriptions, but can be edited and deleted, so include some help text.\n\t\tariaDescriptions.push(\n\t\t\t__( 'Press Enter to edit, or Delete to delete the pattern.' )\n\t\t);\n\t} else if ( item.description ) {\n\t\tariaDescriptions.push( item.description );\n\t}\n\tif ( item.type === PATTERNS ) {\n\t\tariaDescriptions.push( THEME_PATTERN_TOOLTIP );\n\t}\n\n\tlet itemIcon = icon;\n\tif ( categoryId === 'header' ) {\n\t\titemIcon = header;\n\t} else if ( categoryId === 'footer' ) {\n\t\titemIcon = footer;\n\t} else if ( categoryId === 'uncategorized' ) {\n\t\titemIcon = symbolFilled;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<div className={ patternClassNames }>\n\t\t\t\t<CompositeItem\n\t\t\t\t\tclassName={ previewClassNames }\n\t\t\t\t\trole=\"option\"\n\t\t\t\t\tas=\"div\"\n\t\t\t\t\t{ ...composite }\n\t\t\t\t\tonClick={ item.type !== PATTERNS ? onClick : undefined }\n\t\t\t\t\tonKeyDown={ isUserPattern ? onKeyDown : undefined }\n\t\t\t\t\taria-label={ item.title }\n\t\t\t\t\taria-describedby={\n\t\t\t\t\t\tariaDescriptions.length\n\t\t\t\t\t\t\t? ariaDescriptions.join( ' ' )\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t{ isEmpty && __( 'Empty pattern' ) }\n\t\t\t\t\t{ ! isEmpty && <BlockPreview blocks={ item.blocks } /> }\n\t\t\t\t</CompositeItem>\n\t\t\t\t{ ariaDescriptions.map( ( ariaDescription, index ) => (\n\t\t\t\t\t<div\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\thidden\n\t\t\t\t\t\tid={ `${ descriptionId }-${ index }` }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ariaDescription }\n\t\t\t\t\t</div>\n\t\t\t\t) ) }\n\t\t\t\t<HStack\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tclassName=\"edit-site-patterns__footer\"\n\t\t\t\t\tjustify=\"space-between\"\n\t\t\t\t>\n\t\t\t\t\t<HStack\n\t\t\t\t\t\talignment=\"center\"\n\t\t\t\t\t\tjustify=\"left\"\n\t\t\t\t\t\tspacing={ 3 }\n\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ icon && (\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-icon\"\n\t\t\t\t\t\t\t\ticon={ itemIcon }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tas={ Heading }\n\t\t\t\t\t\t\tlevel={ 5 }\n\t\t\t\t\t\t\tgap={ 0 }\n\t\t\t\t\t\t\tjustify=\"left\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ item.title }\n\t\t\t\t\t\t\t{ item.type === PATTERNS && (\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-patterns__pattern-lock-icon\">\n\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\tstyle={ { fill: 'currentcolor' } }\n\t\t\t\t\t\t\t\t\t\t\ticon={ lockSmall }\n\t\t\t\t\t\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\t\t\t\t\t/>\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) }\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</HStack>\n\t\t\t\t\t{ item.type === USER_PATTERNS && (\n\t\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\t\ticon={ moreHorizontal }\n\t\t\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\t\t\tclassName=\"edit-site-patterns__dropdown\"\n\t\t\t\t\t\t\tpopoverProps={ { placement: 'bottom-end' } }\n\t\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\t\tclassName: 'edit-site-patterns__button',\n\t\t\t\t\t\t\t\tisSmall: true,\n\t\t\t\t\t\t\t\tdescribedBy: sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %s: pattern name */\n\t\t\t\t\t\t\t\t\t__( 'Action menu for %s pattern' ),\n\t\t\t\t\t\t\t\t\titem.title\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t// The dropdown menu is not focusable using the\n\t\t\t\t\t\t\t\t// keyboard as this would interfere with the grid's\n\t\t\t\t\t\t\t\t// roving tab index system. Instead, keyboard users\n\t\t\t\t\t\t\t\t// use keyboard shortcuts to trigger actions.\n\t\t\t\t\t\t\t\ttabIndex: -1,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ () => (\n\t\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\t\tsetIsDeleteDialogOpen( true )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</DropdownMenu>\n\t\t\t\t\t) }\n\t\t\t\t</HStack>\n\t\t\t</div>\n\t\t\t{ isDeleteDialogOpen && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tonConfirm={ deletePattern }\n\t\t\t\t\tonCancel={ () => setIsDeleteDialogOpen( false ) }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Are you sure you want to delete this pattern?' ) }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -25,7 +25,7 @@ export default function Grid({
|
|
|
25
25
|
|
|
26
26
|
return createElement(Composite, { ...composite,
|
|
27
27
|
role: "listbox",
|
|
28
|
-
className: "edit-site-
|
|
28
|
+
className: "edit-site-patterns__grid",
|
|
29
29
|
"aria-label": label
|
|
30
30
|
}, items.map(item => createElement(GridItem, {
|
|
31
31
|
key: item.name,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/page-patterns/grid.js"],"names":["__unstableComposite","Composite","__unstableUseCompositeState","useCompositeState","GridItem","Grid","categoryId","label","icon","items","composite","orientation","length","map","item","name"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,mBAAmB,IAAIC,SADxB,EAECC,2BAA2B,IAAIC,iBAFhC,QAGO,uBAHP;AAKA;AACA;AACA;;AACA,OAAOC,QAAP,MAAqB,aAArB;AAEA,eAAe,SAASC,IAAT,CAAe;AAAEC,EAAAA,UAAF;AAAcC,EAAAA,KAAd;AAAqBC,EAAAA,IAArB;AAA2BC,EAAAA;AAA3B,CAAf,EAAoD;AAClE,QAAMC,SAAS,GAAGP,iBAAiB,CAAE;AAAEQ,IAAAA,WAAW,EAAE;AAAf,GAAF,CAAnC;;AAEA,MAAK,CAAEF,KAAK,EAAEG,MAAd,EAAuB;AACtB,WAAO,IAAP;AACA;;AAED,SACC,cAAC,SAAD,OACMF,SADN;AAEC,IAAA,IAAI,EAAC,SAFN;AAGC,IAAA,SAAS,EAAC,0BAHX;AAIC,kBAAaH;AAJd,KAMGE,KAAK,CAACI,GAAN,CAAaC,IAAF,IACZ,cAAC,QAAD;AACC,IAAA,GAAG,EAAGA,IAAI,CAACC,IADZ;AAEC,IAAA,IAAI,EAAGP,IAFR;AAGC,IAAA,IAAI,EAAGM,IAHR;AAIC,IAAA,UAAU,EAAGR,UAJd;AAKC,IAAA,SAAS,EAAGI;AALb,IADC,CANH,CADD;AAkBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__unstableComposite as Composite,\n\t__unstableUseCompositeState as useCompositeState,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport GridItem from './grid-item';\n\nexport default function Grid( { categoryId, label, icon, items } ) {\n\tconst composite = useCompositeState( { orientation: 'vertical' } );\n\n\tif ( ! items?.length ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Composite\n\t\t\t{ ...composite }\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"edit-site-patterns__grid\"\n\t\t\taria-label={ label }\n\t\t>\n\t\t\t{ items.map( ( item ) => (\n\t\t\t\t<GridItem\n\t\t\t\t\tkey={ item.name }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\titem={ item }\n\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\tcomposite={ composite }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</Composite>\n\t);\n}\n"]}
|
|
@@ -13,27 +13,27 @@ import { getQueryArgs } from '@wordpress/url';
|
|
|
13
13
|
import { DEFAULT_CATEGORY, DEFAULT_TYPE } from './utils';
|
|
14
14
|
import Page from '../page';
|
|
15
15
|
import PatternsList from './patterns-list';
|
|
16
|
-
import
|
|
16
|
+
import usePatternSettings from './use-pattern-settings';
|
|
17
17
|
import { unlock } from '../../lock-unlock';
|
|
18
18
|
const {
|
|
19
19
|
ExperimentalBlockEditorProvider
|
|
20
20
|
} = unlock(blockEditorPrivateApis);
|
|
21
|
-
export default function
|
|
21
|
+
export default function PagePatterns() {
|
|
22
22
|
const {
|
|
23
23
|
categoryType,
|
|
24
24
|
categoryId
|
|
25
25
|
} = getQueryArgs(window.location.href);
|
|
26
26
|
const type = categoryType || DEFAULT_TYPE;
|
|
27
27
|
const category = categoryId || DEFAULT_CATEGORY;
|
|
28
|
-
const settings =
|
|
28
|
+
const settings = usePatternSettings(); // Wrap everything in a block editor provider.
|
|
29
29
|
// This ensures 'styles' that are needed for the previews are synced
|
|
30
30
|
// from the site editor store to the block editor store.
|
|
31
31
|
|
|
32
32
|
return createElement(ExperimentalBlockEditorProvider, {
|
|
33
33
|
settings: settings
|
|
34
34
|
}, createElement(Page, {
|
|
35
|
-
className: "edit-site-
|
|
36
|
-
title: __('
|
|
35
|
+
className: "edit-site-patterns",
|
|
36
|
+
title: __('Patterns content'),
|
|
37
37
|
hideTitleFromUI: true
|
|
38
38
|
}, createElement(PatternsList, {
|
|
39
39
|
type: type,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"names":["__","privateApis","blockEditorPrivateApis","getQueryArgs","DEFAULT_CATEGORY","DEFAULT_TYPE","Page","PatternsList","usePatternSettings","unlock","ExperimentalBlockEditorProvider","PagePatterns","categoryType","categoryId","window","location","href","type","category","settings"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,WAAW,IAAIC,sBAAxB,QAAsD,yBAAtD;AACA,SAASC,YAAT,QAA6B,gBAA7B;AAEA;AACA;AACA;;AACA,SAASC,gBAAT,EAA2BC,YAA3B,QAA+C,SAA/C;AACA,OAAOC,IAAP,MAAiB,SAAjB;AACA,OAAOC,YAAP,MAAyB,iBAAzB;AACA,OAAOC,kBAAP,MAA+B,wBAA/B;AACA,SAASC,MAAT,QAAuB,mBAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAsCD,MAAM,CAAEP,sBAAF,CAAlD;AAEA,eAAe,SAASS,YAAT,GAAwB;AACtC,QAAM;AAAEC,IAAAA,YAAF;AAAgBC,IAAAA;AAAhB,MAA+BV,YAAY,CAAEW,MAAM,CAACC,QAAP,CAAgBC,IAAlB,CAAjD;AACA,QAAMC,IAAI,GAAGL,YAAY,IAAIP,YAA7B;AACA,QAAMa,QAAQ,GAAGL,UAAU,IAAIT,gBAA/B;AACA,QAAMe,QAAQ,GAAGX,kBAAkB,EAAnC,CAJsC,CAMtC;AACA;AACA;;AACA,SACC,cAAC,+BAAD;AAAiC,IAAA,QAAQ,EAAGW;AAA5C,KACC,cAAC,IAAD;AACC,IAAA,SAAS,EAAC,oBADX;AAEC,IAAA,KAAK,EAAGnB,EAAE,CAAE,kBAAF,CAFX;AAGC,IAAA,eAAe;AAHhB,KAKC,cAAC,YAAD;AAAc,IAAA,IAAI,EAAGiB,IAArB;AAA4B,IAAA,UAAU,EAAGC;AAAzC,IALD,CADD,CADD;AAWA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { getQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { DEFAULT_CATEGORY, DEFAULT_TYPE } from './utils';\nimport Page from '../page';\nimport PatternsList from './patterns-list';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\n\nconst { ExperimentalBlockEditorProvider } = unlock( blockEditorPrivateApis );\n\nexport default function PagePatterns() {\n\tconst { categoryType, categoryId } = getQueryArgs( window.location.href );\n\tconst type = categoryType || DEFAULT_TYPE;\n\tconst category = categoryId || DEFAULT_CATEGORY;\n\tconst settings = usePatternSettings();\n\n\t// Wrap everything in a block editor provider.\n\t// This ensures 'styles' that are needed for the previews are synced\n\t// from the site editor store to the block editor store.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<Page\n\t\t\t\tclassName=\"edit-site-patterns\"\n\t\t\t\ttitle={ __( 'Patterns content' ) }\n\t\t\t\thideTitleFromUI\n\t\t\t>\n\t\t\t\t<PatternsList type={ type } categoryId={ category } />\n\t\t\t</Page>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"]}
|
|
@@ -6,7 +6,7 @@ import { createElement } from "@wordpress/element";
|
|
|
6
6
|
import { __ } from '@wordpress/i18n';
|
|
7
7
|
export default function NoPatterns() {
|
|
8
8
|
return createElement("div", {
|
|
9
|
-
className: "edit-site-
|
|
9
|
+
className: "edit-site-patterns__no-results"
|
|
10
10
|
}, __('No patterns found.'));
|
|
11
11
|
}
|
|
12
12
|
//# sourceMappingURL=no-patterns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/page-patterns/no-patterns.js"],"names":["__","NoPatterns"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AAEA,eAAe,SAASC,UAAT,GAAsB;AACpC,SACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACGD,EAAE,CAAE,oBAAF,CADL,CADD;AAKA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nexport default function NoPatterns() {\n\treturn (\n\t\t<div className=\"edit-site-patterns__no-results\">\n\t\t\t{ __( 'No patterns found.' ) }\n\t\t</div>\n\t);\n}\n"]}
|
|
@@ -42,25 +42,25 @@ export default function PatternsList({
|
|
|
42
42
|
icon: isRTL() ? chevronRight : chevronLeft,
|
|
43
43
|
label: __('Back'),
|
|
44
44
|
onClick: () => {
|
|
45
|
-
// Go back in history if we came from the
|
|
45
|
+
// Go back in history if we came from the Patterns page.
|
|
46
46
|
// Otherwise push a stack onto the history.
|
|
47
|
-
if (location.state?.backPath === '/
|
|
47
|
+
if (location.state?.backPath === '/patterns') {
|
|
48
48
|
history.back();
|
|
49
49
|
} else {
|
|
50
50
|
history.push({
|
|
51
|
-
path: '/
|
|
51
|
+
path: '/patterns'
|
|
52
52
|
});
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
}), createElement(FlexBlock, null, createElement(SearchControl, {
|
|
56
|
-
className: "edit-site-
|
|
56
|
+
className: "edit-site-patterns__search",
|
|
57
57
|
onChange: value => setFilterValue(value),
|
|
58
58
|
placeholder: __('Search patterns'),
|
|
59
59
|
label: __('Search patterns'),
|
|
60
60
|
value: filterValue,
|
|
61
61
|
__nextHasNoMarginBottom: true
|
|
62
62
|
}))), isResolving && __('Loading'), !isResolving && !!syncedPatterns.length && createElement(Fragment, null, createElement(VStack, {
|
|
63
|
-
className: "edit-site-
|
|
63
|
+
className: "edit-site-patterns__section-header"
|
|
64
64
|
}, createElement(Heading, {
|
|
65
65
|
level: 4
|
|
66
66
|
}, __('Synced')), createElement(Text, {
|
|
@@ -72,7 +72,7 @@ export default function PatternsList({
|
|
|
72
72
|
label: __('Synced patterns'),
|
|
73
73
|
items: syncedPatterns
|
|
74
74
|
})), !isResolving && !!unsyncedPatterns.length && createElement(Fragment, null, createElement(VStack, {
|
|
75
|
-
className: "edit-site-
|
|
75
|
+
className: "edit-site-patterns__section-header"
|
|
76
76
|
}, createElement(Heading, {
|
|
77
77
|
level: 4
|
|
78
78
|
}, __('Standard')), createElement(Text, {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/page-patterns/patterns-list.js"],"names":["SearchControl","__experimentalHeading","Heading","__experimentalText","Text","__experimentalVStack","VStack","Flex","FlexBlock","__","isRTL","symbol","chevronLeft","chevronRight","privateApis","routerPrivateApis","useViewportMatch","Grid","NoPatterns","usePatterns","SidebarButton","useDebouncedInput","unlock","useLocation","useHistory","PatternsList","categoryId","type","location","history","isMobileViewport","filterValue","setFilterValue","delayedFilterValue","patterns","isResolving","syncedPatterns","unsyncedPatterns","hasPatterns","length","state","backPath","back","push","path","value"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\n\nimport {\n\tSearchControl,\n\t__experimentalHeading as Heading,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tFlex,\n\tFlexBlock,\n} from '@wordpress/components';\nimport { __, isRTL } from '@wordpress/i18n';\nimport { symbol, chevronLeft, chevronRight } from '@wordpress/icons';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Grid from './grid';\nimport NoPatterns from './no-patterns';\nimport usePatterns from './use-patterns';\nimport SidebarButton from '../sidebar-button';\nimport useDebouncedInput from '../../utils/use-debounced-input';\nimport { unlock } from '../../lock-unlock';\n\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\n\nexport default function PatternsList( { categoryId, type } ) {\n\tconst location = useLocation();\n\tconst history = useHistory();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst [ filterValue, setFilterValue, delayedFilterValue ] =\n\t\tuseDebouncedInput( '' );\n\n\tconst [ patterns, isResolving ] = usePatterns(\n\t\ttype,\n\t\tcategoryId,\n\t\tdelayedFilterValue\n\t);\n\n\tconst { syncedPatterns, unsyncedPatterns } = patterns;\n\tconst hasPatterns = !! syncedPatterns.length || !! unsyncedPatterns.length;\n\n\treturn (\n\t\t<VStack spacing={ 6 }>\n\t\t\t<Flex>\n\t\t\t\t{ isMobileViewport && (\n\t\t\t\t\t<SidebarButton\n\t\t\t\t\t\ticon={ isRTL() ? chevronRight : chevronLeft }\n\t\t\t\t\t\tlabel={ __( 'Back' ) }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t// Go back in history if we came from the Patterns page.\n\t\t\t\t\t\t\t// Otherwise push a stack onto the history.\n\t\t\t\t\t\t\tif ( location.state?.backPath === '/patterns' ) {\n\t\t\t\t\t\t\t\thistory.back();\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\thistory.push( { path: '/patterns' } );\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\t<FlexBlock>\n\t\t\t\t\t<SearchControl\n\t\t\t\t\t\tclassName=\"edit-site-patterns__search\"\n\t\t\t\t\t\tonChange={ ( value ) => setFilterValue( value ) }\n\t\t\t\t\t\tplaceholder={ __( 'Search patterns' ) }\n\t\t\t\t\t\tlabel={ __( 'Search patterns' ) }\n\t\t\t\t\t\tvalue={ filterValue }\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</FlexBlock>\n\t\t\t</Flex>\n\t\t\t{ isResolving && __( 'Loading' ) }\n\t\t\t{ ! isResolving && !! syncedPatterns.length && (\n\t\t\t\t<>\n\t\t\t\t\t<VStack className=\"edit-site-patterns__section-header\">\n\t\t\t\t\t\t<Heading level={ 4 }>{ __( 'Synced' ) }</Heading>\n\t\t\t\t\t\t<Text variant=\"muted\" as=\"p\">\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Patterns that are kept in sync across your site'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</VStack>\n\t\t\t\t\t<Grid\n\t\t\t\t\t\ticon={ symbol }\n\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\tlabel={ __( 'Synced patterns' ) }\n\t\t\t\t\t\titems={ syncedPatterns }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t{ ! isResolving && !! unsyncedPatterns.length && (\n\t\t\t\t<>\n\t\t\t\t\t<VStack className=\"edit-site-patterns__section-header\">\n\t\t\t\t\t\t<Heading level={ 4 }>{ __( 'Standard' ) }</Heading>\n\t\t\t\t\t\t<Text variant=\"muted\" as=\"p\">\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Patterns that can be changed freely without affecting your site'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</VStack>\n\t\t\t\t\t<Grid\n\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\tlabel={ __( 'Standard patterns' ) }\n\t\t\t\t\t\titems={ unsyncedPatterns }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t{ ! isResolving && ! hasPatterns && <NoPatterns /> }\n\t\t</VStack>\n\t);\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/page-patterns/search-items.js"],"names":["removeAccents","noCase","defaultGetName","item","name","defaultGetTitle","title","defaultGetDescription","description","defaultGetKeywords","keywords","defaultHasCategory","extractWords","input","splitRegexp","stripRegexp","split","filter","Boolean","normalizeSearchInput","replace","toLowerCase","getNormalizedSearchTerms","removeMatchingTerms","unmatchedTerms","unprocessedTerms","term","some","unprocessedTerm","includes","searchItems","items","searchInput","config","normalizedSearchTerms","onlyFilterByCategory","length","searchRankConfig","threshold","rankedItems","map","getItemSearchRank","rank","sort","rank1","rank2","searchTerm","categoryId","getName","getTitle","getDescription","getKeywords","hasCategory","normalizedSearchInput","normalizedTitle","startsWith","terms","join"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport removeAccents from 'remove-accents';\nimport { noCase } from 'change-case';\n\n// Default search helpers.\nconst defaultGetName = ( item ) => item.name || '';\nconst defaultGetTitle = ( item ) => item.title;\nconst defaultGetDescription = ( item ) => item.description || '';\nconst defaultGetKeywords = ( item ) => item.keywords || [];\nconst defaultHasCategory = () => false;\n\n/**\n * Extracts words from an input string.\n *\n * @param {string} input The input string.\n *\n * @return {Array} Words, extracted from the input string.\n */\nfunction extractWords( input = '' ) {\n\treturn noCase( input, {\n\t\tsplitRegexp: [\n\t\t\t/([\\p{Ll}\\p{Lo}\\p{N}])([\\p{Lu}\\p{Lt}])/gu, // One lowercase or digit, followed by one uppercase.\n\t\t\t/([\\p{Lu}\\p{Lt}])([\\p{Lu}\\p{Lt}][\\p{Ll}\\p{Lo}])/gu, // One uppercase followed by one uppercase and one lowercase.\n\t\t],\n\t\tstripRegexp: /(\\p{C}|\\p{P}|\\p{S})+/giu, // Anything that's not a punctuation, symbol or control/format character.\n\t} )\n\t\t.split( ' ' )\n\t\t.filter( Boolean );\n}\n\n/**\n * Sanitizes the search input string.\n *\n * @param {string} input The search input to normalize.\n *\n * @return {string} The normalized search input.\n */\nfunction normalizeSearchInput( input = '' ) {\n\t// Disregard diacritics.\n\t// Input: \"média\"\n\tinput = removeAccents( input );\n\n\t// Accommodate leading slash, matching autocomplete expectations.\n\t// Input: \"/media\"\n\tinput = input.replace( /^\\//, '' );\n\n\t// Lowercase.\n\t// Input: \"MEDIA\"\n\tinput = input.toLowerCase();\n\n\treturn input;\n}\n\n/**\n * Converts the search term into a list of normalized terms.\n *\n * @param {string} input The search term to normalize.\n *\n * @return {string[]} The normalized list of search terms.\n */\nexport const getNormalizedSearchTerms = ( input = '' ) => {\n\treturn extractWords( normalizeSearchInput( input ) );\n};\n\nconst removeMatchingTerms = ( unmatchedTerms, unprocessedTerms ) => {\n\treturn unmatchedTerms.filter(\n\t\t( term ) =>\n\t\t\t! getNormalizedSearchTerms( unprocessedTerms ).some(\n\t\t\t\t( unprocessedTerm ) => unprocessedTerm.includes( term )\n\t\t\t)\n\t);\n};\n\n/**\n * Filters an item list given a search term.\n *\n * @param {Array} items Item list\n * @param {string} searchInput Search input.\n * @param {Object} config Search Config.\n *\n * @return {Array} Filtered item list.\n */\nexport const searchItems = ( items = [], searchInput = '', config = {} ) => {\n\tconst normalizedSearchTerms = getNormalizedSearchTerms( searchInput );\n\tconst onlyFilterByCategory = ! normalizedSearchTerms.length;\n\tconst searchRankConfig = { ...config, onlyFilterByCategory };\n\n\t// If we aren't filtering on search terms, matching on category is satisfactory.\n\t// If we are, then we need more than a category match.\n\tconst threshold = onlyFilterByCategory ? 0 : 1;\n\n\tconst rankedItems = items\n\t\t.map( ( item ) => {\n\t\t\treturn [\n\t\t\t\titem,\n\t\t\t\tgetItemSearchRank( item, searchInput, searchRankConfig ),\n\t\t\t];\n\t\t} )\n\t\t.filter( ( [ , rank ] ) => rank > threshold );\n\n\t// If we didn't have terms to search on, there's no point sorting.\n\tif ( normalizedSearchTerms.length === 0 ) {\n\t\treturn rankedItems.map( ( [ item ] ) => item );\n\t}\n\n\trankedItems.sort( ( [ , rank1 ], [ , rank2 ] ) => rank2 - rank1 );\n\treturn rankedItems.map( ( [ item ] ) => item );\n};\n\n/**\n * Get the search rank for a given item and a specific search term.\n * The better the match, the higher the rank.\n * If the rank equals 0, it should be excluded from the results.\n *\n * @param {Object} item Item to filter.\n * @param {string} searchTerm Search term.\n * @param {Object} config Search Config.\n *\n * @return {number} Search Rank.\n */\nfunction getItemSearchRank( item, searchTerm, config ) {\n\tconst {\n\t\tcategoryId,\n\t\tgetName = defaultGetName,\n\t\tgetTitle = defaultGetTitle,\n\t\tgetDescription = defaultGetDescription,\n\t\tgetKeywords = defaultGetKeywords,\n\t\thasCategory = defaultHasCategory,\n\t\tonlyFilterByCategory,\n\t} = config;\n\n\tlet rank = hasCategory( item, categoryId ) ? 1 : 0;\n\n\t// If an item doesn't belong to the current category or we don't have\n\t// search terms to filter by, return the initial rank value.\n\tif ( ! rank || onlyFilterByCategory ) {\n\t\treturn rank;\n\t}\n\n\tconst name = getName( item );\n\tconst title = getTitle( item );\n\tconst description = getDescription( item );\n\tconst keywords = getKeywords( item );\n\n\tconst normalizedSearchInput = normalizeSearchInput( searchTerm );\n\tconst normalizedTitle = normalizeSearchInput( title );\n\n\t// Prefers exact matches\n\t// Then prefers if the beginning of the title matches the search term\n\t// name, keywords, description matches come later.\n\tif ( normalizedSearchInput === normalizedTitle ) {\n\t\trank += 30;\n\t} else if ( normalizedTitle.startsWith( normalizedSearchInput ) ) {\n\t\trank += 20;\n\t} else {\n\t\tconst terms = [ name, title, description, ...keywords ].join( ' ' );\n\t\tconst normalizedSearchTerms = extractWords( normalizedSearchInput );\n\t\tconst unmatchedTerms = removeMatchingTerms(\n\t\t\tnormalizedSearchTerms,\n\t\t\tterms\n\t\t);\n\n\t\tif ( unmatchedTerms.length === 0 ) {\n\t\t\trank += 10;\n\t\t}\n\t}\n\n\treturn rank;\n}\n"]}
|
|
@@ -11,7 +11,7 @@ import { useMemo } from '@wordpress/element';
|
|
|
11
11
|
import { unlock } from '../../lock-unlock';
|
|
12
12
|
import { store as editSiteStore } from '../../store';
|
|
13
13
|
import { filterOutDuplicatesByName } from './utils';
|
|
14
|
-
export default function
|
|
14
|
+
export default function usePatternSettings() {
|
|
15
15
|
var _storedSettings$__exp;
|
|
16
16
|
|
|
17
17
|
const storedSettings = useSelect(select => {
|
|
@@ -37,4 +37,4 @@ export default function useLibrarySettings() {
|
|
|
37
37
|
}, [storedSettings, blockPatterns]);
|
|
38
38
|
return settings;
|
|
39
39
|
}
|
|
40
|
-
//# sourceMappingURL=use-
|
|
40
|
+
//# sourceMappingURL=use-pattern-settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/page-patterns/use-pattern-settings.js"],"names":["store","coreStore","useSelect","useMemo","unlock","editSiteStore","filterOutDuplicatesByName","usePatternSettings","storedSettings","select","getSettings","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","blockPatterns","filter","settings","restStoredSettings","__unstableIsPreviewMode"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,OAAT,QAAwB,oBAAxB;AAEA;AACA;AACA;;AACA,SAASC,MAAT,QAAuB,mBAAvB;AACA,SAASJ,KAAK,IAAIK,aAAlB,QAAuC,aAAvC;AACA,SAASC,yBAAT,QAA0C,SAA1C;AAEA,eAAe,SAASC,kBAAT,GAA8B;AAAA;;AAC5C,QAAMC,cAAc,GAAGN,SAAS,CAAIO,MAAF,IAAc;AAC/C,UAAM;AAAEC,MAAAA;AAAF,QAAkBN,MAAM,CAAEK,MAAM,CAAEJ,aAAF,CAAR,CAA9B;AACA,WAAOK,WAAW,EAAlB;AACA,GAH+B,EAG7B,EAH6B,CAAhC;AAKA,QAAMC,qBAAqB,4BAC1BH,cAAc,CAACI,qCADW,yEAC8B;AACxDJ,EAAAA,cAAc,CAACK,2BAFhB,CAN4C,CAQC;;AAE7C,QAAMC,iBAAiB,GAAGZ,SAAS,CAChCO,MAAF,IAAcA,MAAM,CAAER,SAAF,CAAN,CAAoBc,gBAApB,EADoB,EAElC,EAFkC,CAAnC;AAKA,QAAMC,aAAa,GAAGb,OAAO,CAC5B,MACC,CACC,IAAKQ,qBAAqB,IAAI,EAA9B,CADD,EAEC,IAAKG,iBAAiB,IAAI,EAA1B,CAFD,EAGEG,MAHF,CAGUX,yBAHV,CAF2B,EAM5B,CAAEK,qBAAF,EAAyBG,iBAAzB,CAN4B,CAA7B;AASA,QAAMI,QAAQ,GAAGf,OAAO,CAAE,MAAM;AAC/B,UAAM;AAAES,MAAAA,qCAAF;AAAyC,SAAGO;AAA5C,QACLX,cADD;AAGA,WAAO,EACN,GAAGW,kBADG;AAENN,MAAAA,2BAA2B,EAAEG,aAFvB;AAGNI,MAAAA,uBAAuB,EAAE;AAHnB,KAAP;AAKA,GATuB,EASrB,CAAEZ,cAAF,EAAkBQ,aAAlB,CATqB,CAAxB;AAWA,SAAOE,QAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport { filterOutDuplicatesByName } from './utils';\n\nexport default function usePatternSettings() {\n\tconst storedSettings = useSelect( ( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\treturn getSettings();\n\t}, [] );\n\n\tconst settingsBlockPatterns =\n\t\tstoredSettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatterns; // WP 5.9\n\n\tconst restBlockPatterns = useSelect(\n\t\t( select ) => select( coreStore ).getBlockPatterns(),\n\t\t[]\n\t);\n\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].filter( filterOutDuplicatesByName ),\n\t\t[ settingsBlockPatterns, restBlockPatterns ]\n\t);\n\n\tconst settings = useMemo( () => {\n\t\tconst { __experimentalAdditionalBlockPatterns, ...restStoredSettings } =\n\t\t\tstoredSettings;\n\n\t\treturn {\n\t\t\t...restStoredSettings,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t__unstableIsPreviewMode: true,\n\t\t};\n\t}, [ storedSettings, blockPatterns ] );\n\n\treturn settings;\n}\n"]}
|
|
@@ -28,6 +28,16 @@ const templatePartToPattern = templatePart => ({
|
|
|
28
28
|
templatePart
|
|
29
29
|
});
|
|
30
30
|
|
|
31
|
+
const templatePartCategories = ['header', 'footer', 'sidebar'];
|
|
32
|
+
|
|
33
|
+
const templatePartHasCategory = (item, category) => {
|
|
34
|
+
if (category === 'uncategorized') {
|
|
35
|
+
return !templatePartCategories.includes(item.templatePart.area);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
return item.templatePart.area === category;
|
|
39
|
+
};
|
|
40
|
+
|
|
31
41
|
const useTemplatePartsAsPatterns = (categoryId, postType = TEMPLATE_PARTS, filterValue = '') => {
|
|
32
42
|
const {
|
|
33
43
|
templateParts,
|
|
@@ -61,7 +71,7 @@ const useTemplatePartsAsPatterns = (categoryId, postType = TEMPLATE_PARTS, filte
|
|
|
61
71
|
|
|
62
72
|
return searchItems(templateParts, filterValue, {
|
|
63
73
|
categoryId,
|
|
64
|
-
hasCategory:
|
|
74
|
+
hasCategory: templatePartHasCategory
|
|
65
75
|
});
|
|
66
76
|
}, [templateParts, filterValue, categoryId]);
|
|
67
77
|
return {
|
|
@@ -104,7 +114,7 @@ const reusableBlockToPattern = reusableBlock => ({
|
|
|
104
114
|
categories: reusableBlock.wp_pattern,
|
|
105
115
|
id: reusableBlock.id,
|
|
106
116
|
name: reusableBlock.slug,
|
|
107
|
-
syncStatus: reusableBlock.meta?.sync_status,
|
|
117
|
+
syncStatus: reusableBlock.meta?.sync_status || SYNC_TYPES.full,
|
|
108
118
|
title: reusableBlock.title.raw,
|
|
109
119
|
type: reusableBlock.type,
|
|
110
120
|
reusableBlock
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/page-patterns/use-patterns.js"],"names":["parse","useSelect","store","coreStore","useMemo","CORE_PATTERN_SOURCES","PATTERNS","SYNC_TYPES","TEMPLATE_PARTS","USER_PATTERNS","USER_PATTERN_CATEGORY","filterOutDuplicatesByName","unlock","searchItems","editSiteStore","EMPTY_PATTERN_LIST","createTemplatePartId","theme","slug","templatePartToPattern","templatePart","blocks","content","raw","categories","area","description","keywords","name","title","rendered","type","templatePartCategories","templatePartHasCategory","item","category","includes","useTemplatePartsAsPatterns","categoryId","postType","filterValue","templateParts","isResolving","select","getEntityRecords","_isResolving","query","per_page","rawTemplateParts","partsAsPatterns","map","filteredTemplateParts","hasCategory","useThemePatterns","blockPatterns","getSettings","settings","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","patterns","filter","pattern","source","filteredPatterns","currentCategory","reusableBlockToPattern","reusableBlock","wp_pattern","id","syncStatus","meta","sync_status","full","useUserPatterns","categoryType","unfilteredPatterns","records","record","length","syncedPatterns","unsyncedPatterns","forEach","push","usePatterns"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tCORE_PATTERN_SOURCES,\n\tPATTERNS,\n\tSYNC_TYPES,\n\tTEMPLATE_PARTS,\n\tUSER_PATTERNS,\n\tUSER_PATTERN_CATEGORY,\n\tfilterOutDuplicatesByName,\n} from './utils';\nimport { unlock } from '../../lock-unlock';\nimport { searchItems } from './search-items';\nimport { store as editSiteStore } from '../../store';\n\nconst EMPTY_PATTERN_LIST = [];\n\nconst createTemplatePartId = ( theme, slug ) =>\n\ttheme && slug ? theme + '//' + slug : null;\n\nconst templatePartToPattern = ( templatePart ) => ( {\n\tblocks: parse( templatePart.content.raw ),\n\tcategories: [ templatePart.area ],\n\tdescription: templatePart.description || '',\n\tkeywords: templatePart.keywords || [],\n\tname: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\ttitle: templatePart.title.rendered,\n\ttype: templatePart.type,\n\ttemplatePart,\n} );\n\nconst templatePartCategories = [ 'header', 'footer', 'sidebar' ];\nconst templatePartHasCategory = ( item, category ) => {\n\tif ( category === 'uncategorized' ) {\n\t\treturn ! templatePartCategories.includes( item.templatePart.area );\n\t}\n\n\treturn item.templatePart.area === category;\n};\n\nconst useTemplatePartsAsPatterns = (\n\tcategoryId,\n\tpostType = TEMPLATE_PARTS,\n\tfilterValue = ''\n) => {\n\tconst { templateParts, isResolving } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( postType !== TEMPLATE_PARTS ) {\n\t\t\t\treturn {\n\t\t\t\t\ttemplateParts: EMPTY_PATTERN_LIST,\n\t\t\t\t\tisResolving: false,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst { getEntityRecords, isResolving: _isResolving } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst query = { per_page: -1 };\n\t\t\tconst rawTemplateParts = getEntityRecords(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tquery\n\t\t\t);\n\t\t\tconst partsAsPatterns = rawTemplateParts?.map( ( templatePart ) =>\n\t\t\t\ttemplatePartToPattern( templatePart )\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\ttemplateParts: partsAsPatterns,\n\t\t\t\tisResolving: _isResolving( 'getEntityRecords', [\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_template_part',\n\t\t\t\t\tquery,\n\t\t\t\t] ),\n\t\t\t};\n\t\t},\n\t\t[ postType ]\n\t);\n\n\tconst filteredTemplateParts = useMemo( () => {\n\t\tif ( ! templateParts ) {\n\t\t\treturn EMPTY_PATTERN_LIST;\n\t\t}\n\n\t\treturn searchItems( templateParts, filterValue, {\n\t\t\tcategoryId,\n\t\t\thasCategory: templatePartHasCategory,\n\t\t} );\n\t}, [ templateParts, filterValue, categoryId ] );\n\n\treturn { templateParts: filteredTemplateParts, isResolving };\n};\n\nconst useThemePatterns = (\n\tcategoryId,\n\tpostType = PATTERNS,\n\tfilterValue = ''\n) => {\n\tconst blockPatterns = useSelect( ( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\tconst settings = getSettings();\n\t\treturn (\n\t\t\tsettings.__experimentalAdditionalBlockPatterns ??\n\t\t\tsettings.__experimentalBlockPatterns\n\t\t);\n\t} );\n\n\tconst restBlockPatterns = useSelect( ( select ) =>\n\t\tselect( coreStore ).getBlockPatterns()\n\t);\n\n\tconst patterns = useMemo(\n\t\t() =>\n\t\t\t[ ...( blockPatterns || [] ), ...( restBlockPatterns || [] ) ]\n\t\t\t\t.filter(\n\t\t\t\t\t( pattern ) =>\n\t\t\t\t\t\t! CORE_PATTERN_SOURCES.includes( pattern.source )\n\t\t\t\t)\n\t\t\t\t.filter( filterOutDuplicatesByName )\n\t\t\t\t.map( ( pattern ) => ( {\n\t\t\t\t\t...pattern,\n\t\t\t\t\tkeywords: pattern.keywords || [],\n\t\t\t\t\ttype: 'pattern',\n\t\t\t\t\tblocks: parse( pattern.content ),\n\t\t\t\t} ) ),\n\t\t[ blockPatterns, restBlockPatterns ]\n\t);\n\n\tconst filteredPatterns = useMemo( () => {\n\t\tif ( postType !== PATTERNS ) {\n\t\t\treturn EMPTY_PATTERN_LIST;\n\t\t}\n\n\t\treturn searchItems( patterns, filterValue, {\n\t\t\tcategoryId,\n\t\t\thasCategory: ( item, currentCategory ) =>\n\t\t\t\titem.categories?.includes( currentCategory ),\n\t\t} );\n\t}, [ patterns, filterValue, categoryId, postType ] );\n\n\treturn filteredPatterns;\n};\n\nconst reusableBlockToPattern = ( reusableBlock ) => ( {\n\tblocks: parse( reusableBlock.content.raw ),\n\tcategories: reusableBlock.wp_pattern,\n\tid: reusableBlock.id,\n\tname: reusableBlock.slug,\n\tsyncStatus: reusableBlock.meta?.sync_status || SYNC_TYPES.full,\n\ttitle: reusableBlock.title.raw,\n\ttype: reusableBlock.type,\n\treusableBlock,\n} );\n\nconst useUserPatterns = (\n\tcategoryId,\n\tcategoryType = PATTERNS,\n\tfilterValue = ''\n) => {\n\tconst postType = categoryType === PATTERNS ? USER_PATTERNS : categoryType;\n\tconst unfilteredPatterns = useSelect(\n\t\t( select ) => {\n\t\t\tif (\n\t\t\t\tpostType !== USER_PATTERNS ||\n\t\t\t\tcategoryId !== USER_PATTERN_CATEGORY\n\t\t\t) {\n\t\t\t\treturn EMPTY_PATTERN_LIST;\n\t\t\t}\n\n\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\tconst records = getEntityRecords( 'postType', postType, {\n\t\t\t\tper_page: -1,\n\t\t\t} );\n\n\t\t\tif ( ! records ) {\n\t\t\t\treturn EMPTY_PATTERN_LIST;\n\t\t\t}\n\n\t\t\treturn records.map( ( record ) =>\n\t\t\t\treusableBlockToPattern( record )\n\t\t\t);\n\t\t},\n\t\t[ postType, categoryId ]\n\t);\n\n\tconst filteredPatterns = useMemo( () => {\n\t\tif ( ! unfilteredPatterns.length ) {\n\t\t\treturn EMPTY_PATTERN_LIST;\n\t\t}\n\n\t\treturn searchItems( unfilteredPatterns, filterValue, {\n\t\t\t// We exit user pattern retrieval early if we aren't in the\n\t\t\t// catch-all category for user created patterns, so it has\n\t\t\t// to be in the category.\n\t\t\thasCategory: () => true,\n\t\t} );\n\t}, [ unfilteredPatterns, filterValue ] );\n\n\tconst patterns = { syncedPatterns: [], unsyncedPatterns: [] };\n\n\tfilteredPatterns.forEach( ( pattern ) => {\n\t\tif ( pattern.syncStatus === SYNC_TYPES.full ) {\n\t\t\tpatterns.syncedPatterns.push( pattern );\n\t\t} else {\n\t\t\tpatterns.unsyncedPatterns.push( pattern );\n\t\t}\n\t} );\n\n\treturn patterns;\n};\n\nexport const usePatterns = ( categoryType, categoryId, filterValue ) => {\n\tconst blockPatterns = useThemePatterns(\n\t\tcategoryId,\n\t\tcategoryType,\n\t\tfilterValue\n\t);\n\n\tconst { syncedPatterns = [], unsyncedPatterns = [] } = useUserPatterns(\n\t\tcategoryId,\n\t\tcategoryType,\n\t\tfilterValue\n\t);\n\n\tconst { templateParts, isResolving } = useTemplatePartsAsPatterns(\n\t\tcategoryId,\n\t\tcategoryType,\n\t\tfilterValue\n\t);\n\n\tconst patterns = {\n\t\tsyncedPatterns: [ ...templateParts, ...syncedPatterns ],\n\t\tunsyncedPatterns: [ ...blockPatterns, ...unsyncedPatterns ],\n\t};\n\n\treturn [ patterns, isResolving ];\n};\n\nexport default usePatterns;\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export const DEFAULT_CATEGORY = '
|
|
2
|
-
export const DEFAULT_TYPE = '
|
|
1
|
+
export const DEFAULT_CATEGORY = 'my-patterns';
|
|
2
|
+
export const DEFAULT_TYPE = 'wp_block';
|
|
3
3
|
export const PATTERNS = 'pattern';
|
|
4
4
|
export const TEMPLATE_PARTS = 'wp_template_part';
|
|
5
5
|
export const USER_PATTERNS = 'wp_block';
|
|
6
|
-
export const USER_PATTERN_CATEGORY = '
|
|
6
|
+
export const USER_PATTERN_CATEGORY = 'my-patterns';
|
|
7
7
|
export const CORE_PATTERN_SOURCES = ['core', 'pattern-directory/core', 'pattern-directory/featured', 'pattern-directory/theme'];
|
|
8
8
|
export const SYNC_TYPES = {
|
|
9
9
|
full: 'fully',
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/page-patterns/utils.js"],"names":["DEFAULT_CATEGORY","DEFAULT_TYPE","PATTERNS","TEMPLATE_PARTS","USER_PATTERNS","USER_PATTERN_CATEGORY","CORE_PATTERN_SOURCES","SYNC_TYPES","full","unsynced","filterOutDuplicatesByName","currentItem","index","items","findIndex","item","name"],"mappings":"AAAA,OAAO,MAAMA,gBAAgB,GAAG,aAAzB;AACP,OAAO,MAAMC,YAAY,GAAG,UAArB;AACP,OAAO,MAAMC,QAAQ,GAAG,SAAjB;AACP,OAAO,MAAMC,cAAc,GAAG,kBAAvB;AACP,OAAO,MAAMC,aAAa,GAAG,UAAtB;AACP,OAAO,MAAMC,qBAAqB,GAAG,aAA9B;AAEP,OAAO,MAAMC,oBAAoB,GAAG,CACnC,MADmC,EAEnC,wBAFmC,EAGnC,4BAHmC,EAInC,yBAJmC,CAA7B;AAOP,OAAO,MAAMC,UAAU,GAAG;AACzBC,EAAAA,IAAI,EAAE,OADmB;AAEzBC,EAAAA,QAAQ,EAAE;AAFe,CAAnB;AAKP,OAAO,MAAMC,yBAAyB,GAAG,CAAEC,WAAF,EAAeC,KAAf,EAAsBC,KAAtB,KACxCD,KAAK,KAAKC,KAAK,CAACC,SAAN,CAAmBC,IAAF,IAAYJ,WAAW,CAACK,IAAZ,KAAqBD,IAAI,CAACC,IAAvD,CADJ","sourcesContent":["export const DEFAULT_CATEGORY = 'my-patterns';\nexport const DEFAULT_TYPE = 'wp_block';\nexport const PATTERNS = 'pattern';\nexport const TEMPLATE_PARTS = 'wp_template_part';\nexport const USER_PATTERNS = 'wp_block';\nexport const USER_PATTERN_CATEGORY = 'my-patterns';\n\nexport const CORE_PATTERN_SOURCES = [\n\t'core',\n\t'pattern-directory/core',\n\t'pattern-directory/featured',\n\t'pattern-directory/theme',\n];\n\nexport const SYNC_TYPES = {\n\tfull: 'fully',\n\tunsynced: 'unsynced',\n};\n\nexport const filterOutDuplicatesByName = ( currentItem, index, items ) =>\n\tindex === items.findIndex( ( item ) => currentItem.name === item.name );\n"]}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { createElement } from "@wordpress/element";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* WordPress dependencies
|
|
5
|
+
*/
|
|
6
|
+
import { VisuallyHidden, __experimentalHeading as Heading, __experimentalVStack as VStack } from '@wordpress/components';
|
|
7
|
+
import { __ } from '@wordpress/i18n';
|
|
8
|
+
import { useSelect } from '@wordpress/data';
|
|
9
|
+
import { store as coreStore, useEntityRecords } from '@wordpress/core-data';
|
|
10
|
+
import { decodeEntities } from '@wordpress/html-entities';
|
|
11
|
+
/**
|
|
12
|
+
* Internal dependencies
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import Page from '../page';
|
|
16
|
+
import Table from '../table';
|
|
17
|
+
import Link from '../routes/link';
|
|
18
|
+
import AddedBy from '../list/added-by';
|
|
19
|
+
import TemplateActions from '../template-actions';
|
|
20
|
+
import AddNewTemplate from '../add-new-template';
|
|
21
|
+
import { store as editSiteStore } from '../../store';
|
|
22
|
+
export default function PageTemplateParts() {
|
|
23
|
+
const {
|
|
24
|
+
records: templateParts
|
|
25
|
+
} = useEntityRecords('postType', 'wp_template_part', {
|
|
26
|
+
per_page: -1
|
|
27
|
+
});
|
|
28
|
+
const {
|
|
29
|
+
canCreate
|
|
30
|
+
} = useSelect(select => {
|
|
31
|
+
const {
|
|
32
|
+
supportsTemplatePartsMode
|
|
33
|
+
} = select(editSiteStore).getSettings();
|
|
34
|
+
return {
|
|
35
|
+
postType: select(coreStore).getPostType('wp_template_part'),
|
|
36
|
+
canCreate: !supportsTemplatePartsMode
|
|
37
|
+
};
|
|
38
|
+
});
|
|
39
|
+
const columns = [{
|
|
40
|
+
header: __('Template Part'),
|
|
41
|
+
cell: templatePart => createElement(VStack, null, createElement(Heading, {
|
|
42
|
+
level: 5
|
|
43
|
+
}, createElement(Link, {
|
|
44
|
+
params: {
|
|
45
|
+
postId: templatePart.id,
|
|
46
|
+
postType: templatePart.type,
|
|
47
|
+
canvas: 'view'
|
|
48
|
+
},
|
|
49
|
+
state: {
|
|
50
|
+
backPath: '/wp_template_part/all'
|
|
51
|
+
}
|
|
52
|
+
}, decodeEntities(templatePart.title?.rendered || templatePart.slug)))),
|
|
53
|
+
maxWidth: 400
|
|
54
|
+
}, {
|
|
55
|
+
header: __('Added by'),
|
|
56
|
+
cell: templatePart => createElement(AddedBy, {
|
|
57
|
+
postType: templatePart.type,
|
|
58
|
+
postId: templatePart.id
|
|
59
|
+
})
|
|
60
|
+
}, {
|
|
61
|
+
header: createElement(VisuallyHidden, null, __('Actions')),
|
|
62
|
+
cell: templatePart => createElement(TemplateActions, {
|
|
63
|
+
postType: templatePart.type,
|
|
64
|
+
postId: templatePart.id
|
|
65
|
+
})
|
|
66
|
+
}];
|
|
67
|
+
return createElement(Page, {
|
|
68
|
+
title: __('Template Parts'),
|
|
69
|
+
actions: canCreate && createElement(AddNewTemplate, {
|
|
70
|
+
templateType: 'wp_template_part',
|
|
71
|
+
showIcon: false,
|
|
72
|
+
toggleProps: {
|
|
73
|
+
variant: 'primary'
|
|
74
|
+
}
|
|
75
|
+
})
|
|
76
|
+
}, templateParts && createElement(Table, {
|
|
77
|
+
data: templateParts,
|
|
78
|
+
columns: columns
|
|
79
|
+
}));
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-site/src/components/page-template-parts/index.js"],"names":["VisuallyHidden","__experimentalHeading","Heading","__experimentalVStack","VStack","__","useSelect","store","coreStore","useEntityRecords","decodeEntities","Page","Table","Link","AddedBy","TemplateActions","AddNewTemplate","editSiteStore","PageTemplateParts","records","templateParts","per_page","canCreate","select","supportsTemplatePartsMode","getSettings","postType","getPostType","columns","header","cell","templatePart","postId","id","type","canvas","backPath","title","rendered","slug","maxWidth","variant"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tVisuallyHidden,\n\t__experimentalHeading as Heading,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore, useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport Table from '../table';\nimport Link from '../routes/link';\nimport AddedBy from '../list/added-by';\nimport TemplateActions from '../template-actions';\nimport AddNewTemplate from '../add-new-template';\nimport { store as editSiteStore } from '../../store';\n\nexport default function PageTemplateParts() {\n\tconst { records: templateParts } = useEntityRecords(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\n\tconst { canCreate } = useSelect( ( select ) => {\n\t\tconst { supportsTemplatePartsMode } =\n\t\t\tselect( editSiteStore ).getSettings();\n\t\treturn {\n\t\t\tpostType: select( coreStore ).getPostType( 'wp_template_part' ),\n\t\t\tcanCreate: ! supportsTemplatePartsMode,\n\t\t};\n\t} );\n\n\tconst columns = [\n\t\t{\n\t\t\theader: __( 'Template Part' ),\n\t\t\tcell: ( templatePart ) => (\n\t\t\t\t<VStack>\n\t\t\t\t\t<Heading level={ 5 }>\n\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\tpostId: templatePart.id,\n\t\t\t\t\t\t\t\tpostType: templatePart.type,\n\t\t\t\t\t\t\t\tcanvas: 'view',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tstate={ { backPath: '/wp_template_part/all' } }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities(\n\t\t\t\t\t\t\t\ttemplatePart.title?.rendered ||\n\t\t\t\t\t\t\t\t\ttemplatePart.slug\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Link>\n\t\t\t\t\t</Heading>\n\t\t\t\t</VStack>\n\t\t\t),\n\t\t\tmaxWidth: 400,\n\t\t},\n\t\t{\n\t\t\theader: __( 'Added by' ),\n\t\t\tcell: ( templatePart ) => (\n\t\t\t\t<AddedBy\n\t\t\t\t\tpostType={ templatePart.type }\n\t\t\t\t\tpostId={ templatePart.id }\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t\t{\n\t\t\theader: <VisuallyHidden>{ __( 'Actions' ) }</VisuallyHidden>,\n\t\t\tcell: ( templatePart ) => (\n\t\t\t\t<TemplateActions\n\t\t\t\t\tpostType={ templatePart.type }\n\t\t\t\t\tpostId={ templatePart.id }\n\t\t\t\t/>\n\t\t\t),\n\t\t},\n\t];\n\n\treturn (\n\t\t<Page\n\t\t\ttitle={ __( 'Template Parts' ) }\n\t\t\tactions={\n\t\t\t\tcanCreate && (\n\t\t\t\t\t<AddNewTemplate\n\t\t\t\t\t\ttemplateType={ 'wp_template_part' }\n\t\t\t\t\t\tshowIcon={ false }\n\t\t\t\t\t\ttoggleProps={ { variant: 'primary' } }\n\t\t\t\t\t/>\n\t\t\t\t)\n\t\t\t}\n\t\t>\n\t\t\t{ templateParts && (\n\t\t\t\t<Table data={ templateParts } columns={ columns } />\n\t\t\t) }\n\t\t</Page>\n\t);\n}\n"]}
|
|
@@ -11,9 +11,9 @@ import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
13
|
import SidebarNavigationScreenMain from '../sidebar-navigation-screen-main';
|
|
14
|
-
import SidebarNavigationScreenLibrary from '../sidebar-navigation-screen-library';
|
|
15
14
|
import SidebarNavigationScreenTemplates from '../sidebar-navigation-screen-templates';
|
|
16
15
|
import SidebarNavigationScreenTemplate from '../sidebar-navigation-screen-template';
|
|
16
|
+
import SidebarNavigationScreenPatterns from '../sidebar-navigation-screen-patterns';
|
|
17
17
|
import SidebarNavigationScreenPattern from '../sidebar-navigation-screen-pattern';
|
|
18
18
|
import useSyncPathWithURL, { getPathFromURL } from '../sync-state-with-url/use-sync-path-with-url';
|
|
19
19
|
import SidebarNavigationScreenNavigationMenus from '../sidebar-navigation-screen-navigation-menus';
|
|
@@ -45,12 +45,12 @@ function SidebarScreens() {
|
|
|
45
45
|
}, createElement(SidebarNavigationScreenPage, null)), createElement(NavigatorScreen, {
|
|
46
46
|
path: "/:postType(wp_template)"
|
|
47
47
|
}, createElement(SidebarNavigationScreenTemplates, null)), createElement(NavigatorScreen, {
|
|
48
|
-
path: "/
|
|
49
|
-
}, createElement(
|
|
48
|
+
path: "/patterns"
|
|
49
|
+
}, createElement(SidebarNavigationScreenPatterns, null)), createElement(NavigatorScreen, {
|
|
50
|
+
path: "/:postType(wp_template|wp_template_part)/all"
|
|
51
|
+
}, createElement(SidebarNavigationScreenTemplatesBrowse, null)), createElement(NavigatorScreen, {
|
|
50
52
|
path: "/:postType(wp_template_part|wp_block)/:postId"
|
|
51
53
|
}, createElement(SidebarNavigationScreenPattern, null)), createElement(NavigatorScreen, {
|
|
52
|
-
path: "/:postType(wp_template)/all"
|
|
53
|
-
}, createElement(SidebarNavigationScreenTemplatesBrowse, null)), createElement(NavigatorScreen, {
|
|
54
54
|
path: "/:postType(wp_template)/:postId"
|
|
55
55
|
}, createElement(SidebarNavigationScreenTemplate, null)));
|
|
56
56
|
}
|