@wordpress/edit-site 5.20.1 → 5.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/components/actions/trash-post.js +48 -0
- package/build/components/actions/trash-post.js.map +1 -0
- package/build/components/add-new-template/add-custom-template-modal-content.js +17 -13
- package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
- package/build/components/block-editor/resize-handle.js +2 -1
- package/build/components/block-editor/resize-handle.js.map +1 -1
- package/build/components/create-template-part-modal/index.js +10 -6
- package/build/components/create-template-part-modal/index.js.map +1 -1
- package/build/components/dataviews/dataviews.js +41 -32
- package/build/components/dataviews/dataviews.js.map +1 -1
- package/build/components/dataviews/field-actions.js +30 -0
- package/build/components/dataviews/field-actions.js.map +1 -0
- package/build/components/dataviews/filters.js +61 -0
- package/build/components/dataviews/filters.js.map +1 -0
- package/build/components/dataviews/in-filter.js +51 -0
- package/build/components/dataviews/in-filter.js.map +1 -0
- package/build/components/dataviews/index.js +0 -7
- package/build/components/dataviews/index.js.map +1 -1
- package/build/components/dataviews/pagination.js +75 -27
- package/build/components/dataviews/pagination.js.map +1 -1
- package/build/components/dataviews/text-filter.js +18 -12
- package/build/components/dataviews/text-filter.js.map +1 -1
- package/build/components/dataviews/view-actions.js +94 -56
- package/build/components/dataviews/view-actions.js.map +1 -1
- package/build/components/dataviews/view-grid.js +59 -0
- package/build/components/dataviews/view-grid.js.map +1 -0
- package/build/components/dataviews/view-list.js +283 -0
- package/build/components/dataviews/view-list.js.map +1 -0
- package/build/components/editor/index.js +2 -1
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/font-library-modal/context.js +16 -10
- package/build/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-collection.js +20 -6
- package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build/components/global-styles/screen-block.js +1 -2
- package/build/components/global-styles/screen-block.js.map +1 -1
- package/build/components/global-styles/screen-root.js +1 -2
- package/build/components/global-styles/screen-root.js.map +1 -1
- package/build/components/global-styles/ui.js +3 -4
- package/build/components/global-styles/ui.js.map +1 -1
- package/build/components/layout/index.js +10 -2
- package/build/components/layout/index.js.map +1 -1
- package/build/components/media/index.js +34 -0
- package/build/components/media/index.js.map +1 -0
- package/build/components/page-actions/index.js +0 -2
- package/build/components/page-actions/index.js.map +1 -1
- package/build/components/page-pages/index.js +153 -107
- package/build/components/page-pages/index.js.map +1 -1
- package/build/components/page-patterns/delete-category-menu-item.js +89 -0
- package/build/components/page-patterns/delete-category-menu-item.js.map +1 -0
- package/build/components/page-patterns/duplicate-menu-item.js +52 -131
- package/build/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build/components/page-patterns/grid-item.js +1 -0
- package/build/components/page-patterns/grid-item.js.map +1 -1
- package/build/components/page-patterns/header.js +25 -3
- package/build/components/page-patterns/header.js.map +1 -1
- package/build/components/page-patterns/rename-category-menu-item.js +49 -0
- package/build/components/page-patterns/rename-category-menu-item.js.map +1 -0
- package/build/components/page-patterns/rename-menu-item.js +1 -1
- package/build/components/page-patterns/rename-menu-item.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +1 -0
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/pattern-modal/duplicate.js +65 -0
- package/build/components/pattern-modal/duplicate.js.map +1 -0
- package/build/components/pattern-modal/index.js +24 -0
- package/build/components/pattern-modal/index.js.map +1 -0
- package/build/components/pattern-modal/rename.js +42 -0
- package/build/components/pattern-modal/rename.js.map +1 -0
- package/build/components/sidebar-edit-mode/template-panel/last-revision.js +3 -0
- package/build/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +2 -2
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -3
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js +29 -0
- package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js.map +1 -0
- package/build/components/sidebar-navigation-screen-template/home-template-details.js +12 -1
- package/build/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
- package/build/hooks/commands/use-common-commands.js +1 -2
- package/build/hooks/commands/use-common-commands.js.map +1 -1
- package/build/hooks/commands/use-edit-mode-commands.js +49 -0
- package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build/lock-unlock.js +1 -1
- package/build/lock-unlock.js.map +1 -1
- package/build/store/selectors.js +4 -5
- package/build/store/selectors.js.map +1 -1
- package/build-module/components/actions/trash-post.js +41 -0
- package/build-module/components/actions/trash-post.js.map +1 -0
- package/build-module/components/add-new-template/add-custom-template-modal-content.js +16 -12
- package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
- package/build-module/components/block-editor/resize-handle.js +2 -1
- package/build-module/components/block-editor/resize-handle.js.map +1 -1
- package/build-module/components/create-template-part-modal/index.js +10 -6
- package/build-module/components/create-template-part-modal/index.js.map +1 -1
- package/build-module/components/dataviews/dataviews.js +40 -31
- package/build-module/components/dataviews/dataviews.js.map +1 -1
- package/build-module/components/dataviews/field-actions.js +22 -0
- package/build-module/components/dataviews/field-actions.js.map +1 -0
- package/build-module/components/dataviews/filters.js +53 -0
- package/build-module/components/dataviews/filters.js.map +1 -0
- package/build-module/components/dataviews/in-filter.js +43 -0
- package/build-module/components/dataviews/in-filter.js.map +1 -0
- package/build-module/components/dataviews/index.js +0 -1
- package/build-module/components/dataviews/index.js.map +1 -1
- package/build-module/components/dataviews/pagination.js +74 -28
- package/build-module/components/dataviews/pagination.js.map +1 -1
- package/build-module/components/dataviews/text-filter.js +19 -13
- package/build-module/components/dataviews/text-filter.js.map +1 -1
- package/build-module/components/dataviews/view-actions.js +95 -54
- package/build-module/components/dataviews/view-actions.js.map +1 -1
- package/build-module/components/dataviews/view-grid.js +51 -0
- package/build-module/components/dataviews/view-grid.js.map +1 -0
- package/build-module/components/dataviews/view-list.js +274 -0
- package/build-module/components/dataviews/view-list.js.map +1 -0
- package/build-module/components/editor/index.js +2 -1
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/context.js +16 -10
- package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-collection.js +20 -6
- package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build-module/components/global-styles/screen-block.js +1 -2
- package/build-module/components/global-styles/screen-block.js.map +1 -1
- package/build-module/components/global-styles/screen-root.js +1 -2
- package/build-module/components/global-styles/screen-root.js.map +1 -1
- package/build-module/components/global-styles/ui.js +3 -4
- package/build-module/components/global-styles/ui.js.map +1 -1
- package/build-module/components/layout/index.js +11 -3
- package/build-module/components/layout/index.js.map +1 -1
- package/build-module/components/media/index.js +26 -0
- package/build-module/components/media/index.js.map +1 -0
- package/build-module/components/page-actions/index.js +0 -2
- package/build-module/components/page-actions/index.js.map +1 -1
- package/build-module/components/page-pages/index.js +156 -110
- package/build-module/components/page-pages/index.js.map +1 -1
- package/build-module/components/page-patterns/delete-category-menu-item.js +82 -0
- package/build-module/components/page-patterns/delete-category-menu-item.js.map +1 -0
- package/build-module/components/page-patterns/duplicate-menu-item.js +54 -133
- package/build-module/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build-module/components/page-patterns/grid-item.js +1 -0
- package/build-module/components/page-patterns/grid-item.js.map +1 -1
- package/build-module/components/page-patterns/header.js +26 -4
- package/build-module/components/page-patterns/header.js.map +1 -1
- package/build-module/components/page-patterns/rename-category-menu-item.js +42 -0
- package/build-module/components/page-patterns/rename-category-menu-item.js.map +1 -0
- package/build-module/components/page-patterns/rename-menu-item.js +1 -1
- package/build-module/components/page-patterns/rename-menu-item.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +1 -0
- package/build-module/components/page-patterns/use-patterns.js.map +1 -1
- package/build-module/components/pattern-modal/duplicate.js +57 -0
- package/build-module/components/pattern-modal/duplicate.js.map +1 -0
- package/build-module/components/pattern-modal/index.js +14 -0
- package/build-module/components/pattern-modal/index.js.map +1 -0
- package/build-module/components/pattern-modal/rename.js +34 -0
- package/build-module/components/pattern-modal/rename.js.map +1 -0
- package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js +3 -0
- package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +2 -2
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -3
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js +22 -0
- package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen-template/home-template-details.js +12 -1
- package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
- package/build-module/hooks/commands/use-common-commands.js +1 -2
- package/build-module/hooks/commands/use-common-commands.js.map +1 -1
- package/build-module/hooks/commands/use-edit-mode-commands.js +50 -1
- package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build-module/lock-unlock.js +1 -1
- package/build-module/lock-unlock.js.map +1 -1
- package/build-module/store/selectors.js +4 -5
- package/build-module/store/selectors.js.map +1 -1
- package/build-style/style-rtl.css +42 -9
- package/build-style/style.css +42 -9
- package/package.json +40 -40
- package/src/components/actions/trash-post.js +55 -0
- package/src/components/add-new-template/add-custom-template-modal-content.js +22 -17
- package/src/components/block-editor/resize-handle.js +1 -0
- package/src/components/create-template-part-modal/index.js +9 -5
- package/src/components/dataviews/README.md +107 -0
- package/src/components/dataviews/dataviews.js +44 -33
- package/src/components/dataviews/field-actions.js +28 -0
- package/src/components/dataviews/filters.js +57 -0
- package/src/components/dataviews/in-filter.js +47 -0
- package/src/components/dataviews/index.js +0 -1
- package/src/components/dataviews/pagination.js +71 -29
- package/src/components/dataviews/style.scss +11 -1
- package/src/components/dataviews/text-filter.js +19 -15
- package/src/components/dataviews/view-actions.js +108 -63
- package/src/components/dataviews/view-grid.js +60 -0
- package/src/components/dataviews/view-list.js +348 -0
- package/src/components/editor/index.js +2 -0
- package/src/components/global-styles/font-library-modal/context.js +17 -11
- package/src/components/global-styles/font-library-modal/font-collection.js +18 -10
- package/src/components/global-styles/screen-block.js +1 -2
- package/src/components/global-styles/screen-root.js +1 -2
- package/src/components/global-styles/style.scss +16 -4
- package/src/components/global-styles/ui.js +1 -2
- package/src/components/layout/index.js +12 -4
- package/src/components/media/index.js +25 -0
- package/src/components/page-actions/index.js +1 -7
- package/src/components/page-pages/index.js +156 -108
- package/src/components/page-pages/style.scss +3 -0
- package/src/components/page-patterns/delete-category-menu-item.js +104 -0
- package/src/components/page-patterns/duplicate-menu-item.js +68 -181
- package/src/components/page-patterns/grid-item.js +1 -0
- package/src/components/page-patterns/header.js +42 -6
- package/src/components/page-patterns/rename-category-menu-item.js +45 -0
- package/src/components/page-patterns/rename-menu-item.js +2 -2
- package/src/components/page-patterns/style.scss +8 -0
- package/src/components/page-patterns/use-patterns.js +5 -0
- package/src/components/pattern-modal/duplicate.js +53 -0
- package/src/components/pattern-modal/index.js +19 -0
- package/src/components/pattern-modal/rename.js +29 -0
- package/src/components/sidebar-edit-mode/template-panel/last-revision.js +4 -0
- package/src/components/sidebar-navigation-screen/style.scss +17 -5
- package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +2 -7
- package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -8
- package/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js +32 -0
- package/src/components/sidebar-navigation-screen-template/home-template-details.js +21 -7
- package/src/hooks/commands/use-common-commands.js +1 -2
- package/src/hooks/commands/use-edit-mode-commands.js +41 -0
- package/src/lock-unlock.js +1 -1
- package/src/store/selectors.js +9 -10
- package/src/style.scss +1 -0
- package/build/components/dataviews/list-view.js +0 -89
- package/build/components/dataviews/list-view.js.map +0 -1
- package/build-module/components/dataviews/list-view.js +0 -80
- package/build-module/components/dataviews/list-view.js.map +0 -1
- package/src/components/dataviews/list-view.js +0 -106
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createSelector","parse","useSelect","store","coreStore","editorStore","decodeEntities","filterOutDuplicatesByName","PATTERN_CORE_SOURCES","PATTERN_TYPES","PATTERN_SYNC_TYPES","TEMPLATE_PART_POST_TYPE","TEMPLATE_ORIGINS","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","unlock","searchItems","editSiteStore","EMPTY_PATTERN_LIST","createTemplatePartId","theme","slug","templatePartToPattern","templatePart","blocks","content","raw","__unstableSkipMigrationLogs","categories","area","description","isCustom","source","custom","keywords","id","name","title","rendered","type","selectTemplatePartsAsPatterns","select","categoryId","search","_getEntityRecords","getEntityRecords","getIsResolving","__experimentalGetDefaultTemplatePartAreas","query","per_page","rawTemplateParts","templateParts","map","knownAreas","templatePartAreas","templatePartHasCategory","item","category","includes","isResolving","patterns","hasCategory","selectThemePatterns","_settings$__experimen","getSettings","settings","blockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","filter","pattern","inserter","selectPatterns","syncStatus","themePatterns","userPatterns","selectUserPatterns","unsynced","currentCategory","hasOwnProperty","patternBlockToPattern","patternBlock","wp_pattern_category","length","patternCategoryId","get","wp_pattern_sync_status","full","user","getUserPatternCategories","records","userPatternCategories","Map","forEach","userCategory","set","record","usePatterns","categoryType"],"sources":["@wordpress/edit-site/src/components/page-patterns/use-patterns.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport createSelector from 'rememo';\n\n/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { filterOutDuplicatesByName } from './utils';\nimport {\n\tPATTERN_CORE_SOURCES,\n\tPATTERN_TYPES,\n\tPATTERN_SYNC_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_ORIGINS,\n\tTEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n} from '../../utils/constants';\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\t\t__unstableSkipMigrationLogs: true,\n\t} ),\n\tcategories: [ templatePart.area ],\n\tdescription: templatePart.description || '',\n\tisCustom: templatePart.source === TEMPLATE_ORIGINS.custom,\n\tkeywords: templatePart.keywords || [],\n\tid: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\tname: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\ttitle: decodeEntities( templatePart.title.rendered ),\n\ttype: templatePart.type,\n\ttemplatePart,\n} );\n\nconst selectTemplatePartsAsPatterns = createSelector(\n\t( select, categoryId, search = '' ) => {\n\t\tconst { getEntityRecords, getIsResolving } = select( coreStore );\n\t\tconst { __experimentalGetDefaultTemplatePartAreas } =\n\t\t\tselect( editorStore );\n\t\tconst query = { per_page: -1 };\n\t\tconst rawTemplateParts =\n\t\t\tgetEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, query ) ??\n\t\t\tEMPTY_PATTERN_LIST;\n\t\tconst templateParts = rawTemplateParts.map( ( templatePart ) =>\n\t\t\ttemplatePartToPattern( templatePart )\n\t\t);\n\n\t\t// In the case where a custom template part area has been removed we need\n\t\t// the current list of areas to cross check against so orphaned template\n\t\t// parts can be treated as uncategorized.\n\t\tconst knownAreas = __experimentalGetDefaultTemplatePartAreas() || [];\n\t\tconst templatePartAreas = knownAreas.map( ( area ) => area.area );\n\n\t\tconst templatePartHasCategory = ( item, category ) => {\n\t\t\tif ( category !== TEMPLATE_PART_AREA_DEFAULT_CATEGORY ) {\n\t\t\t\treturn item.templatePart.area === category;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\titem.templatePart.area === category ||\n\t\t\t\t! templatePartAreas.includes( item.templatePart.area )\n\t\t\t);\n\t\t};\n\n\t\tconst isResolving = getIsResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\tquery,\n\t\t] );\n\n\t\tconst patterns = searchItems( templateParts, search, {\n\t\t\tcategoryId,\n\t\t\thasCategory: templatePartHasCategory,\n\t\t} );\n\n\t\treturn { patterns, isResolving };\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords(\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{\n\t\t\t\tper_page: -1,\n\t\t\t}\n\t\t),\n\t\tselect( coreStore ).getIsResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t]\n);\n\nconst selectThemePatterns = createSelector(\n\t( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\tconst settings = getSettings();\n\t\tconst blockPatterns =\n\t\t\tsettings.__experimentalAdditionalBlockPatterns ??\n\t\t\tsettings.__experimentalBlockPatterns;\n\n\t\tconst restBlockPatterns = select( coreStore ).getBlockPatterns();\n\n\t\tconst patterns = [\n\t\t\t...( blockPatterns || [] ),\n\t\t\t...( restBlockPatterns || [] ),\n\t\t]\n\t\t\t.filter(\n\t\t\t\t( pattern ) => ! PATTERN_CORE_SOURCES.includes( pattern.source )\n\t\t\t)\n\t\t\t.filter( filterOutDuplicatesByName )\n\t\t\t.filter( ( pattern ) => pattern.inserter !== false )\n\t\t\t.map( ( pattern ) => ( {\n\t\t\t\t...pattern,\n\t\t\t\tkeywords: pattern.keywords || [],\n\t\t\t\ttype: PATTERN_TYPES.theme,\n\t\t\t\tblocks: parse( pattern.content, {\n\t\t\t\t\t__unstableSkipMigrationLogs: true,\n\t\t\t\t} ),\n\t\t\t} ) );\n\n\t\treturn { patterns, isResolving: false };\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getBlockPatterns(),\n\t\tunlock( select( editSiteStore ) ).getSettings(),\n\t]\n);\n\nconst selectPatterns = createSelector(\n\t( select, categoryId, syncStatus, search = '' ) => {\n\t\tconst { patterns: themePatterns } = selectThemePatterns( select );\n\t\tconst { patterns: userPatterns } = selectUserPatterns( select );\n\n\t\tlet patterns = [\n\t\t\t...( themePatterns || [] ),\n\t\t\t...( userPatterns || [] ),\n\t\t];\n\n\t\tif ( syncStatus ) {\n\t\t\t// User patterns can have their sync statuses checked directly\n\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\tpatterns = patterns.filter( ( pattern ) => {\n\t\t\t\treturn pattern.id\n\t\t\t\t\t? pattern.syncStatus === syncStatus\n\t\t\t\t\t: syncStatus === PATTERN_SYNC_TYPES.unsynced;\n\t\t\t} );\n\t\t}\n\n\t\tif ( categoryId ) {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\tcategoryId,\n\t\t\t\thasCategory: ( item, currentCategory ) =>\n\t\t\t\t\titem.categories?.includes( currentCategory ),\n\t\t\t} );\n\t\t} else {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\thasCategory: ( item ) => ! item.hasOwnProperty( 'categories' ),\n\t\t\t} );\n\t\t}\n\t\treturn { patterns, isResolving: false };\n\t},\n\t( select ) => [\n\t\tselectThemePatterns( select ),\n\t\tselectUserPatterns( select ),\n\t]\n);\n\nconst patternBlockToPattern = ( patternBlock, categories ) => ( {\n\tblocks: parse( patternBlock.content.raw, {\n\t\t__unstableSkipMigrationLogs: true,\n\t} ),\n\t...( patternBlock.wp_pattern_category.length > 0 && {\n\t\tcategories: patternBlock.wp_pattern_category.map(\n\t\t\t( patternCategoryId ) =>\n\t\t\t\tcategories && categories.get( patternCategoryId )\n\t\t\t\t\t? categories.get( patternCategoryId ).slug\n\t\t\t\t\t: patternCategoryId\n\t\t),\n\t} ),\n\tid: patternBlock.id,\n\tname: patternBlock.slug,\n\tsyncStatus: patternBlock.wp_pattern_sync_status || PATTERN_SYNC_TYPES.full,\n\ttitle: patternBlock.title.raw,\n\ttype: PATTERN_TYPES.user,\n\tpatternBlock,\n} );\n\nconst selectUserPatterns = createSelector(\n\t( select, syncStatus, search = '' ) => {\n\t\tconst { getEntityRecords, getIsResolving, getUserPatternCategories } =\n\t\t\tselect( coreStore );\n\n\t\tconst query = { per_page: -1 };\n\t\tconst records = getEntityRecords(\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery\n\t\t);\n\t\tconst userPatternCategories = getUserPatternCategories();\n\t\tconst categories = new Map();\n\t\tuserPatternCategories.forEach( ( userCategory ) =>\n\t\t\tcategories.set( userCategory.id, userCategory )\n\t\t);\n\t\tlet patterns = records\n\t\t\t? records.map( ( record ) =>\n\t\t\t\t\tpatternBlockToPattern( record, categories )\n\t\t\t )\n\t\t\t: EMPTY_PATTERN_LIST;\n\n\t\tconst isResolving = getIsResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery,\n\t\t] );\n\n\t\tif ( syncStatus ) {\n\t\t\tpatterns = patterns.filter(\n\t\t\t\t( pattern ) => pattern.syncStatus === syncStatus\n\t\t\t);\n\t\t}\n\n\t\tpatterns = searchItems( patterns, search, {\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\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving,\n\t\t\tcategories: userPatternCategories,\n\t\t};\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords( 'postType', PATTERN_TYPES.user, {\n\t\t\tper_page: -1,\n\t\t} ),\n\t\tselect( coreStore ).getIsResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( coreStore ).getUserPatternCategories(),\n\t]\n);\n\nexport const usePatterns = (\n\tcategoryType,\n\tcategoryId,\n\t{ search = '', syncStatus } = {}\n) => {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tif ( categoryType === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\treturn selectTemplatePartsAsPatterns(\n\t\t\t\t\tselect,\n\t\t\t\t\tcategoryId,\n\t\t\t\t\tsearch\n\t\t\t\t);\n\t\t\t} else if ( categoryType === PATTERN_TYPES.theme ) {\n\t\t\t\treturn selectPatterns( select, categoryId, syncStatus, search );\n\t\t\t} else if ( categoryType === PATTERN_TYPES.user ) {\n\t\t\t\treturn selectUserPatterns( select, syncStatus, search );\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tpatterns: EMPTY_PATTERN_LIST,\n\t\t\t\tisResolving: false,\n\t\t\t};\n\t\t},\n\t\t[ categoryId, categoryType, search, syncStatus ]\n\t);\n};\n\nexport default usePatterns;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,cAAc,MAAM,QAAQ;;AAEnC;AACA;AACA;AACA,SAASC,KAAK,QAAQ,mBAAmB;AACzC,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASD,KAAK,IAAIE,WAAW,QAAQ,mBAAmB;AACxD,SAASC,cAAc,QAAQ,0BAA0B;;AAEzD;AACA;AACA;AACA,SAASC,yBAAyB,QAAQ,SAAS;AACnD,SACCC,oBAAoB,EACpBC,aAAa,EACbC,kBAAkB,EAClBC,uBAAuB,EACvBC,gBAAgB,EAChBC,mCAAmC,QAC7B,uBAAuB;AAC9B,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASC,WAAW,QAAQ,gBAAgB;AAC5C,SAASZ,KAAK,IAAIa,aAAa,QAAQ,aAAa;AAEpD,MAAMC,kBAAkB,GAAG,EAAE;AAE7B,MAAMC,oBAAoB,GAAGA,CAAEC,KAAK,EAAEC,IAAI,KACzCD,KAAK,IAAIC,IAAI,GAAGD,KAAK,GAAG,IAAI,GAAGC,IAAI,GAAG,IAAI;AAE3C,MAAMC,qBAAqB,GAAKC,YAAY,KAAQ;EACnDC,MAAM,EAAEtB,KAAK,CAAEqB,YAAY,CAACE,OAAO,CAACC,GAAG,EAAE;IACxCC,2BAA2B,EAAE;EAC9B,CAAE,CAAC;EACHC,UAAU,EAAE,CAAEL,YAAY,CAACM,IAAI,CAAE;EACjCC,WAAW,EAAEP,YAAY,CAACO,WAAW,IAAI,EAAE;EAC3CC,QAAQ,EAAER,YAAY,CAACS,MAAM,KAAKnB,gBAAgB,CAACoB,MAAM;EACzDC,QAAQ,EAAEX,YAAY,CAACW,QAAQ,IAAI,EAAE;EACrCC,EAAE,EAAEhB,oBAAoB,CAAEI,YAAY,CAACH,KAAK,EAAEG,YAAY,CAACF,IAAK,CAAC;EACjEe,IAAI,EAAEjB,oBAAoB,CAAEI,YAAY,CAACH,KAAK,EAAEG,YAAY,CAACF,IAAK,CAAC;EACnEgB,KAAK,EAAE9B,cAAc,CAAEgB,YAAY,CAACc,KAAK,CAACC,QAAS,CAAC;EACpDC,IAAI,EAAEhB,YAAY,CAACgB,IAAI;EACvBhB;AACD,CAAC,CAAE;AAEH,MAAMiB,6BAA6B,GAAGvC,cAAc,CACnD,CAAEwC,MAAM,EAAEC,UAAU,EAAEC,MAAM,GAAG,EAAE,KAAM;EAAA,IAAAC,iBAAA;EACtC,MAAM;IAAEC,gBAAgB;IAAEC;EAAe,CAAC,GAAGL,MAAM,CAAEpC,SAAU,CAAC;EAChE,MAAM;IAAE0C;EAA0C,CAAC,GAClDN,MAAM,CAAEnC,WAAY,CAAC;EACtB,MAAM0C,KAAK,GAAG;IAAEC,QAAQ,EAAE,CAAC;EAAE,CAAC;EAC9B,MAAMC,gBAAgB,IAAAN,iBAAA,GACrBC,gBAAgB,CAAE,UAAU,EAAEjC,uBAAuB,EAAEoC,KAAM,CAAC,cAAAJ,iBAAA,cAAAA,iBAAA,GAC9D1B,kBAAkB;EACnB,MAAMiC,aAAa,GAAGD,gBAAgB,CAACE,GAAG,CAAI7B,YAAY,IACzDD,qBAAqB,CAAEC,YAAa,CACrC,CAAC;;EAED;EACA;EACA;EACA,MAAM8B,UAAU,GAAGN,yCAAyC,CAAC,CAAC,IAAI,EAAE;EACpE,MAAMO,iBAAiB,GAAGD,UAAU,CAACD,GAAG,CAAIvB,IAAI,IAAMA,IAAI,CAACA,IAAK,CAAC;EAEjE,MAAM0B,uBAAuB,GAAGA,CAAEC,IAAI,EAAEC,QAAQ,KAAM;IACrD,IAAKA,QAAQ,KAAK3C,mCAAmC,EAAG;MACvD,OAAO0C,IAAI,CAACjC,YAAY,CAACM,IAAI,KAAK4B,QAAQ;IAC3C;IAEA,OACCD,IAAI,CAACjC,YAAY,CAACM,IAAI,KAAK4B,QAAQ,IACnC,CAAEH,iBAAiB,CAACI,QAAQ,CAAEF,IAAI,CAACjC,YAAY,CAACM,IAAK,CAAC;EAExD,CAAC;EAED,MAAM8B,WAAW,GAAGb,cAAc,CAAE,kBAAkB,EAAE,CACvD,UAAU,EACVlC,uBAAuB,EACvBoC,KAAK,CACJ,CAAC;EAEH,MAAMY,QAAQ,GAAG5C,WAAW,CAAEmC,aAAa,EAAER,MAAM,EAAE;IACpDD,UAAU;IACVmB,WAAW,EAAEN;EACd,CAAE,CAAC;EAEH,OAAO;IAAEK,QAAQ;IAAED;EAAY,CAAC;AACjC,CAAC,EACClB,MAAM,IAAM,CACbA,MAAM,CAAEpC,SAAU,CAAC,CAACwC,gBAAgB,CACnC,UAAU,EACVjC,uBAAuB,EACvB;EACCqC,QAAQ,EAAE,CAAC;AACZ,CACD,CAAC,EACDR,MAAM,CAAEpC,SAAU,CAAC,CAACyC,cAAc,CAAE,kBAAkB,EAAE,CACvD,UAAU,EACVlC,uBAAuB,EACvB;EAAEqC,QAAQ,EAAE,CAAC;AAAE,CAAC,CACf,CAAC,EACHR,MAAM,CAAEnC,WAAY,CAAC,CAACyC,yCAAyC,CAAC,CAAC,CAEnE,CAAC;AAED,MAAMe,mBAAmB,GAAG7D,cAAc,CACvCwC,MAAM,IAAM;EAAA,IAAAsB,qBAAA;EACb,MAAM;IAAEC;EAAY,CAAC,GAAGjD,MAAM,CAAE0B,MAAM,CAAExB,aAAc,CAAE,CAAC;EACzD,MAAMgD,QAAQ,GAAGD,WAAW,CAAC,CAAC;EAC9B,MAAME,aAAa,IAAAH,qBAAA,GAClBE,QAAQ,CAACE,qCAAqC,cAAAJ,qBAAA,cAAAA,qBAAA,GAC9CE,QAAQ,CAACG,2BAA2B;EAErC,MAAMC,iBAAiB,GAAG5B,MAAM,CAAEpC,SAAU,CAAC,CAACiE,gBAAgB,CAAC,CAAC;EAEhE,MAAMV,QAAQ,GAAG,CAChB,IAAKM,aAAa,IAAI,EAAE,CAAE,EAC1B,IAAKG,iBAAiB,IAAI,EAAE,CAAE,CAC9B,CACCE,MAAM,CACJC,OAAO,IAAM,CAAE/D,oBAAoB,CAACiD,QAAQ,CAAEc,OAAO,CAACxC,MAAO,CAChE,CAAC,CACAuC,MAAM,CAAE/D,yBAA0B,CAAC,CACnC+D,MAAM,CAAIC,OAAO,IAAMA,OAAO,CAACC,QAAQ,KAAK,KAAM,CAAC,CACnDrB,GAAG,CAAIoB,OAAO,KAAQ;IACtB,GAAGA,OAAO;IACVtC,QAAQ,EAAEsC,OAAO,CAACtC,QAAQ,IAAI,EAAE;IAChCK,IAAI,EAAE7B,aAAa,CAACU,KAAK;IACzBI,MAAM,EAAEtB,KAAK,CAAEsE,OAAO,CAAC/C,OAAO,EAAE;MAC/BE,2BAA2B,EAAE;IAC9B,CAAE;EACH,CAAC,CAAG,CAAC;EAEN,OAAO;IAAEiC,QAAQ;IAAED,WAAW,EAAE;EAAM,CAAC;AACxC,CAAC,EACClB,MAAM,IAAM,CACbA,MAAM,CAAEpC,SAAU,CAAC,CAACiE,gBAAgB,CAAC,CAAC,EACtCvD,MAAM,CAAE0B,MAAM,CAAExB,aAAc,CAAE,CAAC,CAAC+C,WAAW,CAAC,CAAC,CAEjD,CAAC;AAED,MAAMU,cAAc,GAAGzE,cAAc,CACpC,CAAEwC,MAAM,EAAEC,UAAU,EAAEiC,UAAU,EAAEhC,MAAM,GAAG,EAAE,KAAM;EAClD,MAAM;IAAEiB,QAAQ,EAAEgB;EAAc,CAAC,GAAGd,mBAAmB,CAAErB,MAAO,CAAC;EACjE,MAAM;IAAEmB,QAAQ,EAAEiB;EAAa,CAAC,GAAGC,kBAAkB,CAAErC,MAAO,CAAC;EAE/D,IAAImB,QAAQ,GAAG,CACd,IAAKgB,aAAa,IAAI,EAAE,CAAE,EAC1B,IAAKC,YAAY,IAAI,EAAE,CAAE,CACzB;EAED,IAAKF,UAAU,EAAG;IACjB;IACA;IACAf,QAAQ,GAAGA,QAAQ,CAACW,MAAM,CAAIC,OAAO,IAAM;MAC1C,OAAOA,OAAO,CAACrC,EAAE,GACdqC,OAAO,CAACG,UAAU,KAAKA,UAAU,GACjCA,UAAU,KAAKhE,kBAAkB,CAACoE,QAAQ;IAC9C,CAAE,CAAC;EACJ;EAEA,IAAKrC,UAAU,EAAG;IACjBkB,QAAQ,GAAG5C,WAAW,CAAE4C,QAAQ,EAAEjB,MAAM,EAAE;MACzCD,UAAU;MACVmB,WAAW,EAAEA,CAAEL,IAAI,EAAEwB,eAAe,KACnCxB,IAAI,CAAC5B,UAAU,EAAE8B,QAAQ,CAAEsB,eAAgB;IAC7C,CAAE,CAAC;EACJ,CAAC,MAAM;IACNpB,QAAQ,GAAG5C,WAAW,CAAE4C,QAAQ,EAAEjB,MAAM,EAAE;MACzCkB,WAAW,EAAIL,IAAI,IAAM,CAAEA,IAAI,CAACyB,cAAc,CAAE,YAAa;IAC9D,CAAE,CAAC;EACJ;EACA,OAAO;IAAErB,QAAQ;IAAED,WAAW,EAAE;EAAM,CAAC;AACxC,CAAC,EACClB,MAAM,IAAM,CACbqB,mBAAmB,CAAErB,MAAO,CAAC,EAC7BqC,kBAAkB,CAAErC,MAAO,CAAC,CAE9B,CAAC;AAED,MAAMyC,qBAAqB,GAAGA,CAAEC,YAAY,EAAEvD,UAAU,MAAQ;EAC/DJ,MAAM,EAAEtB,KAAK,CAAEiF,YAAY,CAAC1D,OAAO,CAACC,GAAG,EAAE;IACxCC,2BAA2B,EAAE;EAC9B,CAAE,CAAC;EACH,IAAKwD,YAAY,CAACC,mBAAmB,CAACC,MAAM,GAAG,CAAC,IAAI;IACnDzD,UAAU,EAAEuD,YAAY,CAACC,mBAAmB,CAAChC,GAAG,CAC7CkC,iBAAiB,IAClB1D,UAAU,IAAIA,UAAU,CAAC2D,GAAG,CAAED,iBAAkB,CAAC,GAC9C1D,UAAU,CAAC2D,GAAG,CAAED,iBAAkB,CAAC,CAACjE,IAAI,GACxCiE,iBACL;EACD,CAAC,CAAE;EACHnD,EAAE,EAAEgD,YAAY,CAAChD,EAAE;EACnBC,IAAI,EAAE+C,YAAY,CAAC9D,IAAI;EACvBsD,UAAU,EAAEQ,YAAY,CAACK,sBAAsB,IAAI7E,kBAAkB,CAAC8E,IAAI;EAC1EpD,KAAK,EAAE8C,YAAY,CAAC9C,KAAK,CAACX,GAAG;EAC7Ba,IAAI,EAAE7B,aAAa,CAACgF,IAAI;EACxBP;AACD,CAAC,CAAE;AAEH,MAAML,kBAAkB,GAAG7E,cAAc,CACxC,CAAEwC,MAAM,EAAEkC,UAAU,EAAEhC,MAAM,GAAG,EAAE,KAAM;EACtC,MAAM;IAAEE,gBAAgB;IAAEC,cAAc;IAAE6C;EAAyB,CAAC,GACnElD,MAAM,CAAEpC,SAAU,CAAC;EAEpB,MAAM2C,KAAK,GAAG;IAAEC,QAAQ,EAAE,CAAC;EAAE,CAAC;EAC9B,MAAM2C,OAAO,GAAG/C,gBAAgB,CAC/B,UAAU,EACVnC,aAAa,CAACgF,IAAI,EAClB1C,KACD,CAAC;EACD,MAAM6C,qBAAqB,GAAGF,wBAAwB,CAAC,CAAC;EACxD,MAAM/D,UAAU,GAAG,IAAIkE,GAAG,CAAC,CAAC;EAC5BD,qBAAqB,CAACE,OAAO,CAAIC,YAAY,IAC5CpE,UAAU,CAACqE,GAAG,CAAED,YAAY,CAAC7D,EAAE,EAAE6D,YAAa,CAC/C,CAAC;EACD,IAAIpC,QAAQ,GAAGgC,OAAO,GACnBA,OAAO,CAACxC,GAAG,CAAI8C,MAAM,IACrBhB,qBAAqB,CAAEgB,MAAM,EAAEtE,UAAW,CAC1C,CAAC,GACDV,kBAAkB;EAErB,MAAMyC,WAAW,GAAGb,cAAc,CAAE,kBAAkB,EAAE,CACvD,UAAU,EACVpC,aAAa,CAACgF,IAAI,EAClB1C,KAAK,CACJ,CAAC;EAEH,IAAK2B,UAAU,EAAG;IACjBf,QAAQ,GAAGA,QAAQ,CAACW,MAAM,CACvBC,OAAO,IAAMA,OAAO,CAACG,UAAU,KAAKA,UACvC,CAAC;EACF;EAEAf,QAAQ,GAAG5C,WAAW,CAAE4C,QAAQ,EAAEjB,MAAM,EAAE;IACzC;IACA;IACA;IACAkB,WAAW,EAAEA,CAAA,KAAM;EACpB,CAAE,CAAC;EAEH,OAAO;IACND,QAAQ;IACRD,WAAW;IACX/B,UAAU,EAAEiE;EACb,CAAC;AACF,CAAC,EACCpD,MAAM,IAAM,CACbA,MAAM,CAAEpC,SAAU,CAAC,CAACwC,gBAAgB,CAAE,UAAU,EAAEnC,aAAa,CAACgF,IAAI,EAAE;EACrEzC,QAAQ,EAAE,CAAC;AACZ,CAAE,CAAC,EACHR,MAAM,CAAEpC,SAAU,CAAC,CAACyC,cAAc,CAAE,kBAAkB,EAAE,CACvD,UAAU,EACVpC,aAAa,CAACgF,IAAI,EAClB;EAAEzC,QAAQ,EAAE,CAAC;AAAE,CAAC,CACf,CAAC,EACHR,MAAM,CAAEpC,SAAU,CAAC,CAACsF,wBAAwB,CAAC,CAAC,CAEhD,CAAC;AAED,OAAO,MAAMQ,WAAW,GAAGA,CAC1BC,YAAY,EACZ1D,UAAU,EACV;EAAEC,MAAM,GAAG,EAAE;EAAEgC;AAAW,CAAC,GAAG,CAAC,CAAC,KAC5B;EACJ,OAAOxE,SAAS,CACbsC,MAAM,IAAM;IACb,IAAK2D,YAAY,KAAKxF,uBAAuB,EAAG;MAC/C,OAAO4B,6BAA6B,CACnCC,MAAM,EACNC,UAAU,EACVC,MACD,CAAC;IACF,CAAC,MAAM,IAAKyD,YAAY,KAAK1F,aAAa,CAACU,KAAK,EAAG;MAClD,OAAOsD,cAAc,CAAEjC,MAAM,EAAEC,UAAU,EAAEiC,UAAU,EAAEhC,MAAO,CAAC;IAChE,CAAC,MAAM,IAAKyD,YAAY,KAAK1F,aAAa,CAACgF,IAAI,EAAG;MACjD,OAAOZ,kBAAkB,CAAErC,MAAM,EAAEkC,UAAU,EAAEhC,MAAO,CAAC;IACxD;IACA,OAAO;MACNiB,QAAQ,EAAE1C,kBAAkB;MAC5ByC,WAAW,EAAE;IACd,CAAC;EACF,CAAC,EACD,CAAEjB,UAAU,EAAE0D,YAAY,EAAEzD,MAAM,EAAEgC,UAAU,CAC/C,CAAC;AACF,CAAC;AAED,eAAewB,WAAW"}
|
|
1
|
+
{"version":3,"names":["createSelector","parse","useSelect","store","coreStore","editorStore","decodeEntities","filterOutDuplicatesByName","PATTERN_CORE_SOURCES","PATTERN_TYPES","PATTERN_SYNC_TYPES","TEMPLATE_PART_POST_TYPE","TEMPLATE_ORIGINS","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","unlock","searchItems","editSiteStore","EMPTY_PATTERN_LIST","createTemplatePartId","theme","slug","templatePartToPattern","templatePart","blocks","content","raw","__unstableSkipMigrationLogs","categories","area","description","isCustom","source","custom","keywords","id","name","title","rendered","type","selectTemplatePartsAsPatterns","select","categoryId","search","_getEntityRecords","getEntityRecords","getIsResolving","__experimentalGetDefaultTemplatePartAreas","query","per_page","rawTemplateParts","templateParts","map","knownAreas","templatePartAreas","templatePartHasCategory","item","category","includes","isResolving","patterns","hasCategory","selectThemePatterns","_settings$__experimen","getSettings","settings","blockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","filter","pattern","inserter","selectPatterns","syncStatus","themePatterns","userPatterns","selectUserPatterns","unsynced","currentCategory","hasOwnProperty","patternBlockToPattern","patternBlock","wp_pattern_category","length","patternCategoryId","get","termLabels","label","wp_pattern_sync_status","full","user","getUserPatternCategories","records","userPatternCategories","Map","forEach","userCategory","set","record","usePatterns","categoryType"],"sources":["@wordpress/edit-site/src/components/page-patterns/use-patterns.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport createSelector from 'rememo';\n\n/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { filterOutDuplicatesByName } from './utils';\nimport {\n\tPATTERN_CORE_SOURCES,\n\tPATTERN_TYPES,\n\tPATTERN_SYNC_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_ORIGINS,\n\tTEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n} from '../../utils/constants';\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\t\t__unstableSkipMigrationLogs: true,\n\t} ),\n\tcategories: [ templatePart.area ],\n\tdescription: templatePart.description || '',\n\tisCustom: templatePart.source === TEMPLATE_ORIGINS.custom,\n\tkeywords: templatePart.keywords || [],\n\tid: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\tname: createTemplatePartId( templatePart.theme, templatePart.slug ),\n\ttitle: decodeEntities( templatePart.title.rendered ),\n\ttype: templatePart.type,\n\ttemplatePart,\n} );\n\nconst selectTemplatePartsAsPatterns = createSelector(\n\t( select, categoryId, search = '' ) => {\n\t\tconst { getEntityRecords, getIsResolving } = select( coreStore );\n\t\tconst { __experimentalGetDefaultTemplatePartAreas } =\n\t\t\tselect( editorStore );\n\t\tconst query = { per_page: -1 };\n\t\tconst rawTemplateParts =\n\t\t\tgetEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, query ) ??\n\t\t\tEMPTY_PATTERN_LIST;\n\t\tconst templateParts = rawTemplateParts.map( ( templatePart ) =>\n\t\t\ttemplatePartToPattern( templatePart )\n\t\t);\n\n\t\t// In the case where a custom template part area has been removed we need\n\t\t// the current list of areas to cross check against so orphaned template\n\t\t// parts can be treated as uncategorized.\n\t\tconst knownAreas = __experimentalGetDefaultTemplatePartAreas() || [];\n\t\tconst templatePartAreas = knownAreas.map( ( area ) => area.area );\n\n\t\tconst templatePartHasCategory = ( item, category ) => {\n\t\t\tif ( category !== TEMPLATE_PART_AREA_DEFAULT_CATEGORY ) {\n\t\t\t\treturn item.templatePart.area === category;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\titem.templatePart.area === category ||\n\t\t\t\t! templatePartAreas.includes( item.templatePart.area )\n\t\t\t);\n\t\t};\n\n\t\tconst isResolving = getIsResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\tquery,\n\t\t] );\n\n\t\tconst patterns = searchItems( templateParts, search, {\n\t\t\tcategoryId,\n\t\t\thasCategory: templatePartHasCategory,\n\t\t} );\n\n\t\treturn { patterns, isResolving };\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords(\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{\n\t\t\t\tper_page: -1,\n\t\t\t}\n\t\t),\n\t\tselect( coreStore ).getIsResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t]\n);\n\nconst selectThemePatterns = createSelector(\n\t( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\tconst settings = getSettings();\n\t\tconst blockPatterns =\n\t\t\tsettings.__experimentalAdditionalBlockPatterns ??\n\t\t\tsettings.__experimentalBlockPatterns;\n\n\t\tconst restBlockPatterns = select( coreStore ).getBlockPatterns();\n\n\t\tconst patterns = [\n\t\t\t...( blockPatterns || [] ),\n\t\t\t...( restBlockPatterns || [] ),\n\t\t]\n\t\t\t.filter(\n\t\t\t\t( pattern ) => ! PATTERN_CORE_SOURCES.includes( pattern.source )\n\t\t\t)\n\t\t\t.filter( filterOutDuplicatesByName )\n\t\t\t.filter( ( pattern ) => pattern.inserter !== false )\n\t\t\t.map( ( pattern ) => ( {\n\t\t\t\t...pattern,\n\t\t\t\tkeywords: pattern.keywords || [],\n\t\t\t\ttype: PATTERN_TYPES.theme,\n\t\t\t\tblocks: parse( pattern.content, {\n\t\t\t\t\t__unstableSkipMigrationLogs: true,\n\t\t\t\t} ),\n\t\t\t} ) );\n\n\t\treturn { patterns, isResolving: false };\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getBlockPatterns(),\n\t\tunlock( select( editSiteStore ) ).getSettings(),\n\t]\n);\n\nconst selectPatterns = createSelector(\n\t( select, categoryId, syncStatus, search = '' ) => {\n\t\tconst { patterns: themePatterns } = selectThemePatterns( select );\n\t\tconst { patterns: userPatterns } = selectUserPatterns( select );\n\n\t\tlet patterns = [\n\t\t\t...( themePatterns || [] ),\n\t\t\t...( userPatterns || [] ),\n\t\t];\n\n\t\tif ( syncStatus ) {\n\t\t\t// User patterns can have their sync statuses checked directly\n\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\tpatterns = patterns.filter( ( pattern ) => {\n\t\t\t\treturn pattern.id\n\t\t\t\t\t? pattern.syncStatus === syncStatus\n\t\t\t\t\t: syncStatus === PATTERN_SYNC_TYPES.unsynced;\n\t\t\t} );\n\t\t}\n\n\t\tif ( categoryId ) {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\tcategoryId,\n\t\t\t\thasCategory: ( item, currentCategory ) =>\n\t\t\t\t\titem.categories?.includes( currentCategory ),\n\t\t\t} );\n\t\t} else {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\thasCategory: ( item ) => ! item.hasOwnProperty( 'categories' ),\n\t\t\t} );\n\t\t}\n\t\treturn { patterns, isResolving: false };\n\t},\n\t( select ) => [\n\t\tselectThemePatterns( select ),\n\t\tselectUserPatterns( select ),\n\t]\n);\n\nconst patternBlockToPattern = ( patternBlock, categories ) => ( {\n\tblocks: parse( patternBlock.content.raw, {\n\t\t__unstableSkipMigrationLogs: true,\n\t} ),\n\t...( patternBlock.wp_pattern_category.length > 0 && {\n\t\tcategories: patternBlock.wp_pattern_category.map(\n\t\t\t( patternCategoryId ) =>\n\t\t\t\tcategories && categories.get( patternCategoryId )\n\t\t\t\t\t? categories.get( patternCategoryId ).slug\n\t\t\t\t\t: patternCategoryId\n\t\t),\n\t} ),\n\ttermLabels: patternBlock.wp_pattern_category.map( ( patternCategoryId ) =>\n\t\tcategories?.get( patternCategoryId )\n\t\t\t? categories.get( patternCategoryId ).label\n\t\t\t: patternCategoryId\n\t),\n\tid: patternBlock.id,\n\tname: patternBlock.slug,\n\tsyncStatus: patternBlock.wp_pattern_sync_status || PATTERN_SYNC_TYPES.full,\n\ttitle: patternBlock.title.raw,\n\ttype: PATTERN_TYPES.user,\n\tpatternBlock,\n} );\n\nconst selectUserPatterns = createSelector(\n\t( select, syncStatus, search = '' ) => {\n\t\tconst { getEntityRecords, getIsResolving, getUserPatternCategories } =\n\t\t\tselect( coreStore );\n\n\t\tconst query = { per_page: -1 };\n\t\tconst records = getEntityRecords(\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery\n\t\t);\n\t\tconst userPatternCategories = getUserPatternCategories();\n\t\tconst categories = new Map();\n\t\tuserPatternCategories.forEach( ( userCategory ) =>\n\t\t\tcategories.set( userCategory.id, userCategory )\n\t\t);\n\t\tlet patterns = records\n\t\t\t? records.map( ( record ) =>\n\t\t\t\t\tpatternBlockToPattern( record, categories )\n\t\t\t )\n\t\t\t: EMPTY_PATTERN_LIST;\n\n\t\tconst isResolving = getIsResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery,\n\t\t] );\n\n\t\tif ( syncStatus ) {\n\t\t\tpatterns = patterns.filter(\n\t\t\t\t( pattern ) => pattern.syncStatus === syncStatus\n\t\t\t);\n\t\t}\n\n\t\tpatterns = searchItems( patterns, search, {\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\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving,\n\t\t\tcategories: userPatternCategories,\n\t\t};\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords( 'postType', PATTERN_TYPES.user, {\n\t\t\tper_page: -1,\n\t\t} ),\n\t\tselect( coreStore ).getIsResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( coreStore ).getUserPatternCategories(),\n\t]\n);\n\nexport const usePatterns = (\n\tcategoryType,\n\tcategoryId,\n\t{ search = '', syncStatus } = {}\n) => {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tif ( categoryType === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\treturn selectTemplatePartsAsPatterns(\n\t\t\t\t\tselect,\n\t\t\t\t\tcategoryId,\n\t\t\t\t\tsearch\n\t\t\t\t);\n\t\t\t} else if ( categoryType === PATTERN_TYPES.theme ) {\n\t\t\t\treturn selectPatterns( select, categoryId, syncStatus, search );\n\t\t\t} else if ( categoryType === PATTERN_TYPES.user ) {\n\t\t\t\treturn selectUserPatterns( select, syncStatus, search );\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tpatterns: EMPTY_PATTERN_LIST,\n\t\t\t\tisResolving: false,\n\t\t\t};\n\t\t},\n\t\t[ categoryId, categoryType, search, syncStatus ]\n\t);\n};\n\nexport default usePatterns;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { createElement } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* WordPress dependencies
|
|
4
|
+
*/
|
|
5
|
+
import { useDispatch, useSelect } from '@wordpress/data';
|
|
6
|
+
import { store as interfaceStore } from '@wordpress/interface';
|
|
7
|
+
import { privateApis as patternsPrivateApis } from '@wordpress/patterns';
|
|
8
|
+
import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
9
|
+
import { getQueryArgs } from '@wordpress/url';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Internal dependencies
|
|
13
|
+
*/
|
|
14
|
+
import { PATTERN_MODALS } from './';
|
|
15
|
+
import { PATTERN_TYPES } from '../../utils/constants';
|
|
16
|
+
import { unlock } from '../../lock-unlock';
|
|
17
|
+
import useEditedEntityRecord from '../use-edited-entity-record';
|
|
18
|
+
const {
|
|
19
|
+
DuplicatePatternModal
|
|
20
|
+
} = unlock(patternsPrivateApis);
|
|
21
|
+
const {
|
|
22
|
+
useHistory
|
|
23
|
+
} = unlock(routerPrivateApis);
|
|
24
|
+
export default function PatternDuplicateModal() {
|
|
25
|
+
const {
|
|
26
|
+
record
|
|
27
|
+
} = useEditedEntityRecord();
|
|
28
|
+
const {
|
|
29
|
+
categoryType,
|
|
30
|
+
categoryId
|
|
31
|
+
} = getQueryArgs(window.location.href);
|
|
32
|
+
const {
|
|
33
|
+
closeModal
|
|
34
|
+
} = useDispatch(interfaceStore);
|
|
35
|
+
const history = useHistory();
|
|
36
|
+
const isActive = useSelect(select => select(interfaceStore).isModalActive(PATTERN_MODALS.duplicate));
|
|
37
|
+
if (!isActive) {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
function onSuccess({
|
|
41
|
+
pattern: newPattern
|
|
42
|
+
}) {
|
|
43
|
+
history.push({
|
|
44
|
+
categoryType,
|
|
45
|
+
categoryId,
|
|
46
|
+
postType: PATTERN_TYPES.user,
|
|
47
|
+
postId: newPattern.id
|
|
48
|
+
});
|
|
49
|
+
closeModal();
|
|
50
|
+
}
|
|
51
|
+
return createElement(DuplicatePatternModal, {
|
|
52
|
+
onClose: closeModal,
|
|
53
|
+
onSuccess: onSuccess,
|
|
54
|
+
pattern: record
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=duplicate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useDispatch","useSelect","store","interfaceStore","privateApis","patternsPrivateApis","routerPrivateApis","getQueryArgs","PATTERN_MODALS","PATTERN_TYPES","unlock","useEditedEntityRecord","DuplicatePatternModal","useHistory","PatternDuplicateModal","record","categoryType","categoryId","window","location","href","closeModal","history","isActive","select","isModalActive","duplicate","onSuccess","pattern","newPattern","push","postType","user","postId","id","createElement","onClose"],"sources":["@wordpress/edit-site/src/components/pattern-modal/duplicate.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { privateApis as patternsPrivateApis } from '@wordpress/patterns';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { getQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { PATTERN_MODALS } from './';\nimport { PATTERN_TYPES } from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport useEditedEntityRecord from '../use-edited-entity-record';\n\nconst { DuplicatePatternModal } = unlock( patternsPrivateApis );\nconst { useHistory } = unlock( routerPrivateApis );\n\nexport default function PatternDuplicateModal() {\n\tconst { record } = useEditedEntityRecord();\n\tconst { categoryType, categoryId } = getQueryArgs( window.location.href );\n\tconst { closeModal } = useDispatch( interfaceStore );\n\tconst history = useHistory();\n\n\tconst isActive = useSelect( ( select ) =>\n\t\tselect( interfaceStore ).isModalActive( PATTERN_MODALS.duplicate )\n\t);\n\n\tif ( ! isActive ) {\n\t\treturn null;\n\t}\n\n\tfunction onSuccess( { pattern: newPattern } ) {\n\t\thistory.push( {\n\t\t\tcategoryType,\n\t\t\tcategoryId,\n\t\t\tpostType: PATTERN_TYPES.user,\n\t\t\tpostId: newPattern.id,\n\t\t} );\n\n\t\tcloseModal();\n\t}\n\n\treturn (\n\t\t<DuplicatePatternModal\n\t\t\tonClose={ closeModal }\n\t\t\tonSuccess={ onSuccess }\n\t\t\tpattern={ record }\n\t\t/>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,KAAK,IAAIC,cAAc,QAAQ,sBAAsB;AAC9D,SAASC,WAAW,IAAIC,mBAAmB,QAAQ,qBAAqB;AACxE,SAASD,WAAW,IAAIE,iBAAiB,QAAQ,mBAAmB;AACpE,SAASC,YAAY,QAAQ,gBAAgB;;AAE7C;AACA;AACA;AACA,SAASC,cAAc,QAAQ,IAAI;AACnC,SAASC,aAAa,QAAQ,uBAAuB;AACrD,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,OAAOC,qBAAqB,MAAM,6BAA6B;AAE/D,MAAM;EAAEC;AAAsB,CAAC,GAAGF,MAAM,CAAEL,mBAAoB,CAAC;AAC/D,MAAM;EAAEQ;AAAW,CAAC,GAAGH,MAAM,CAAEJ,iBAAkB,CAAC;AAElD,eAAe,SAASQ,qBAAqBA,CAAA,EAAG;EAC/C,MAAM;IAAEC;EAAO,CAAC,GAAGJ,qBAAqB,CAAC,CAAC;EAC1C,MAAM;IAAEK,YAAY;IAAEC;EAAW,CAAC,GAAGV,YAAY,CAAEW,MAAM,CAACC,QAAQ,CAACC,IAAK,CAAC;EACzE,MAAM;IAAEC;EAAW,CAAC,GAAGrB,WAAW,CAAEG,cAAe,CAAC;EACpD,MAAMmB,OAAO,GAAGT,UAAU,CAAC,CAAC;EAE5B,MAAMU,QAAQ,GAAGtB,SAAS,CAAIuB,MAAM,IACnCA,MAAM,CAAErB,cAAe,CAAC,CAACsB,aAAa,CAAEjB,cAAc,CAACkB,SAAU,CAClE,CAAC;EAED,IAAK,CAAEH,QAAQ,EAAG;IACjB,OAAO,IAAI;EACZ;EAEA,SAASI,SAASA,CAAE;IAAEC,OAAO,EAAEC;EAAW,CAAC,EAAG;IAC7CP,OAAO,CAACQ,IAAI,CAAE;MACbd,YAAY;MACZC,UAAU;MACVc,QAAQ,EAAEtB,aAAa,CAACuB,IAAI;MAC5BC,MAAM,EAAEJ,UAAU,CAACK;IACpB,CAAE,CAAC;IAEHb,UAAU,CAAC,CAAC;EACb;EAEA,OACCc,aAAA,CAACvB,qBAAqB;IACrBwB,OAAO,EAAGf,UAAY;IACtBM,SAAS,EAAGA,SAAW;IACvBC,OAAO,EAAGb;EAAQ,CAClB,CAAC;AAEJ"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { createElement, Fragment } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Internal dependencies
|
|
4
|
+
*/
|
|
5
|
+
import PatternRenameModal from './rename';
|
|
6
|
+
import PatternDuplicateModal from './duplicate';
|
|
7
|
+
export const PATTERN_MODALS = {
|
|
8
|
+
rename: 'edit-site/pattern-rename',
|
|
9
|
+
duplicate: 'edit-site/pattern-duplicate'
|
|
10
|
+
};
|
|
11
|
+
export default function PatternModal() {
|
|
12
|
+
return createElement(Fragment, null, createElement(PatternDuplicateModal, null), createElement(PatternRenameModal, null));
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["PatternRenameModal","PatternDuplicateModal","PATTERN_MODALS","rename","duplicate","PatternModal","createElement","Fragment"],"sources":["@wordpress/edit-site/src/components/pattern-modal/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport PatternRenameModal from './rename';\nimport PatternDuplicateModal from './duplicate';\n\nexport const PATTERN_MODALS = {\n\trename: 'edit-site/pattern-rename',\n\tduplicate: 'edit-site/pattern-duplicate',\n};\n\nexport default function PatternModal() {\n\treturn (\n\t\t<>\n\t\t\t<PatternDuplicateModal />\n\t\t\t<PatternRenameModal />\n\t\t</>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,OAAOA,kBAAkB,MAAM,UAAU;AACzC,OAAOC,qBAAqB,MAAM,aAAa;AAE/C,OAAO,MAAMC,cAAc,GAAG;EAC7BC,MAAM,EAAE,0BAA0B;EAClCC,SAAS,EAAE;AACZ,CAAC;AAED,eAAe,SAASC,YAAYA,CAAA,EAAG;EACtC,OACCC,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACL,qBAAqB,MAAE,CAAC,EACzBK,aAAA,CAACN,kBAAkB,MAAE,CACpB,CAAC;AAEL"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { createElement } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* WordPress dependencies
|
|
4
|
+
*/
|
|
5
|
+
import { useDispatch, useSelect } from '@wordpress/data';
|
|
6
|
+
import { store as interfaceStore } from '@wordpress/interface';
|
|
7
|
+
import { privateApis as patternsPrivateApis } from '@wordpress/patterns';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Internal dependencies
|
|
11
|
+
*/
|
|
12
|
+
import { PATTERN_MODALS } from './';
|
|
13
|
+
import { unlock } from '../../lock-unlock';
|
|
14
|
+
import useEditedEntityRecord from '../use-edited-entity-record';
|
|
15
|
+
const {
|
|
16
|
+
RenamePatternModal
|
|
17
|
+
} = unlock(patternsPrivateApis);
|
|
18
|
+
export default function PatternRenameModal() {
|
|
19
|
+
const {
|
|
20
|
+
record: pattern
|
|
21
|
+
} = useEditedEntityRecord();
|
|
22
|
+
const {
|
|
23
|
+
closeModal
|
|
24
|
+
} = useDispatch(interfaceStore);
|
|
25
|
+
const isActive = useSelect(select => select(interfaceStore).isModalActive(PATTERN_MODALS.rename));
|
|
26
|
+
if (!isActive) {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
return createElement(RenamePatternModal, {
|
|
30
|
+
onClose: closeModal,
|
|
31
|
+
pattern: pattern
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=rename.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useDispatch","useSelect","store","interfaceStore","privateApis","patternsPrivateApis","PATTERN_MODALS","unlock","useEditedEntityRecord","RenamePatternModal","PatternRenameModal","record","pattern","closeModal","isActive","select","isModalActive","rename","createElement","onClose"],"sources":["@wordpress/edit-site/src/components/pattern-modal/rename.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { privateApis as patternsPrivateApis } from '@wordpress/patterns';\n\n/**\n * Internal dependencies\n */\nimport { PATTERN_MODALS } from './';\nimport { unlock } from '../../lock-unlock';\nimport useEditedEntityRecord from '../use-edited-entity-record';\n\nconst { RenamePatternModal } = unlock( patternsPrivateApis );\n\nexport default function PatternRenameModal() {\n\tconst { record: pattern } = useEditedEntityRecord();\n\tconst { closeModal } = useDispatch( interfaceStore );\n\tconst isActive = useSelect( ( select ) =>\n\t\tselect( interfaceStore ).isModalActive( PATTERN_MODALS.rename )\n\t);\n\n\tif ( ! isActive ) {\n\t\treturn null;\n\t}\n\n\treturn <RenamePatternModal onClose={ closeModal } pattern={ pattern } />;\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,KAAK,IAAIC,cAAc,QAAQ,sBAAsB;AAC9D,SAASC,WAAW,IAAIC,mBAAmB,QAAQ,qBAAqB;;AAExE;AACA;AACA;AACA,SAASC,cAAc,QAAQ,IAAI;AACnC,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,OAAOC,qBAAqB,MAAM,6BAA6B;AAE/D,MAAM;EAAEC;AAAmB,CAAC,GAAGF,MAAM,CAAEF,mBAAoB,CAAC;AAE5D,eAAe,SAASK,kBAAkBA,CAAA,EAAG;EAC5C,MAAM;IAAEC,MAAM,EAAEC;EAAQ,CAAC,GAAGJ,qBAAqB,CAAC,CAAC;EACnD,MAAM;IAAEK;EAAW,CAAC,GAAGb,WAAW,CAAEG,cAAe,CAAC;EACpD,MAAMW,QAAQ,GAAGb,SAAS,CAAIc,MAAM,IACnCA,MAAM,CAAEZ,cAAe,CAAC,CAACa,aAAa,CAAEV,cAAc,CAACW,MAAO,CAC/D,CAAC;EAED,IAAK,CAAEH,QAAQ,EAAG;IACjB,OAAO,IAAI;EACZ;EAEA,OAAOI,aAAA,CAACT,kBAAkB;IAACU,OAAO,EAAGN,UAAY;IAACD,OAAO,EAAGA;EAAS,CAAE,CAAC;AACzE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Button","PanelRow","sprintf","_n","__","backup","addQueryArgs","PostTypeSupportCheck","useEditedEntityRecord","useRevisionData","_currentTemplate$_lin","_currentTemplate$_lin2","record","currentTemplate","lastRevisionId","_links","id","revisionsCount","count","PostLastRevisionCheck","children","createElement","supportKeys","PostLastRevision","header","className","href","revision","icon","LastRevision"],"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/template-panel/last-revision.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, PanelRow } from '@wordpress/components';\nimport { sprintf, _n, __ } from '@wordpress/i18n';\nimport { backup } from '@wordpress/icons';\nimport { addQueryArgs } from '@wordpress/url';\nimport { PostTypeSupportCheck } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport useEditedEntityRecord from '../../use-edited-entity-record';\n\nconst useRevisionData = () => {\n\tconst { record: currentTemplate } = useEditedEntityRecord();\n\n\tconst lastRevisionId =\n\t\tcurrentTemplate?._links?.[ 'predecessor-version' ]?.[ 0 ]?.id ?? null;\n\n\tconst revisionsCount =\n\t\tcurrentTemplate?._links?.[ 'version-history' ]?.[ 0 ]?.count ?? 0;\n\n\treturn {\n\t\tcurrentTemplate,\n\t\tlastRevisionId,\n\t\trevisionsCount,\n\t};\n};\n\nfunction PostLastRevisionCheck( { children } ) {\n\tconst { lastRevisionId, revisionsCount } = useRevisionData();\n\n\tif ( ! lastRevisionId || revisionsCount < 2 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PostTypeSupportCheck supportKeys=\"revisions\">\n\t\t\t{ children }\n\t\t</PostTypeSupportCheck>\n\t);\n}\n\nconst PostLastRevision = () => {\n\tconst { lastRevisionId, revisionsCount } = useRevisionData();\n\n\treturn (\n\t\t<PostLastRevisionCheck>\n\t\t\t<PanelRow\n\t\t\t\theader={ __( 'Editing history' ) }\n\t\t\t\tclassName=\"edit-site-template-revisions\"\n\t\t\t>\n\t\t\t\t<Button\n\t\t\t\t\thref={ addQueryArgs( 'revision.php', {\n\t\t\t\t\t\trevision: lastRevisionId,\n\t\t\t\t\t} ) }\n\t\t\t\t\tclassName=\"edit-site-template-last-revision__title\"\n\t\t\t\t\ticon={ backup }\n\t\t\t\t>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %d: number of revisions */\n\t\t\t\t\t\t_n( '%d Revision', '%d Revisions', revisionsCount ),\n\t\t\t\t\t\trevisionsCount\n\t\t\t\t\t) }\n\t\t\t\t</Button>\n\t\t\t</PanelRow>\n\t\t</PostLastRevisionCheck>\n\t);\n};\n\nexport default function LastRevision() {\n\treturn (\n\t\t<PostLastRevisionCheck>\n\t\t\t<PostLastRevision />\n\t\t</PostLastRevisionCheck>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,MAAM,EAAEC,QAAQ,QAAQ,uBAAuB;AACxD,SAASC,OAAO,EAAEC,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACjD,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,oBAAoB,QAAQ,mBAAmB;;AAExD;AACA;AACA;AACA,OAAOC,qBAAqB,MAAM,gCAAgC;AAElE,MAAMC,eAAe,GAAGA,CAAA,KAAM;EAAA,IAAAC,qBAAA,EAAAC,sBAAA;EAC7B,MAAM;IAAEC,MAAM,EAAEC;EAAgB,CAAC,GAAGL,qBAAqB,CAAC,CAAC;EAE3D,MAAMM,cAAc,IAAAJ,qBAAA,GACnBG,eAAe,EAAEE,MAAM,GAAI,qBAAqB,CAAE,GAAI,CAAC,CAAE,EAAEC,EAAE,cAAAN,qBAAA,cAAAA,qBAAA,GAAI,IAAI;EAEtE,MAAMO,cAAc,IAAAN,sBAAA,GACnBE,eAAe,EAAEE,MAAM,GAAI,iBAAiB,CAAE,GAAI,CAAC,CAAE,EAAEG,KAAK,cAAAP,sBAAA,cAAAA,sBAAA,GAAI,CAAC;EAElE,OAAO;IACNE,eAAe;IACfC,cAAc;IACdG;EACD,CAAC;AACF,CAAC;AAED,SAASE,qBAAqBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EAC9C,MAAM;IAAEN,cAAc;IAAEG;EAAe,CAAC,GAAGR,eAAe,CAAC,CAAC;EAE5D,IAAK,
|
|
1
|
+
{"version":3,"names":["Button","PanelRow","sprintf","_n","__","backup","addQueryArgs","PostTypeSupportCheck","useEditedEntityRecord","useRevisionData","_currentTemplate$_lin","_currentTemplate$_lin2","record","currentTemplate","lastRevisionId","_links","id","revisionsCount","count","PostLastRevisionCheck","children","process","env","IS_GUTENBERG_PLUGIN","createElement","supportKeys","PostLastRevision","header","className","href","revision","icon","LastRevision"],"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/template-panel/last-revision.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, PanelRow } from '@wordpress/components';\nimport { sprintf, _n, __ } from '@wordpress/i18n';\nimport { backup } from '@wordpress/icons';\nimport { addQueryArgs } from '@wordpress/url';\nimport { PostTypeSupportCheck } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport useEditedEntityRecord from '../../use-edited-entity-record';\n\nconst useRevisionData = () => {\n\tconst { record: currentTemplate } = useEditedEntityRecord();\n\n\tconst lastRevisionId =\n\t\tcurrentTemplate?._links?.[ 'predecessor-version' ]?.[ 0 ]?.id ?? null;\n\n\tconst revisionsCount =\n\t\tcurrentTemplate?._links?.[ 'version-history' ]?.[ 0 ]?.count ?? 0;\n\n\treturn {\n\t\tcurrentTemplate,\n\t\tlastRevisionId,\n\t\trevisionsCount,\n\t};\n};\n\nfunction PostLastRevisionCheck( { children } ) {\n\tconst { lastRevisionId, revisionsCount } = useRevisionData();\n\n\tif ( ! process.env.IS_GUTENBERG_PLUGIN ) {\n\t\treturn null;\n\t}\n\n\tif ( ! lastRevisionId || revisionsCount < 2 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<PostTypeSupportCheck supportKeys=\"revisions\">\n\t\t\t{ children }\n\t\t</PostTypeSupportCheck>\n\t);\n}\n\nconst PostLastRevision = () => {\n\tconst { lastRevisionId, revisionsCount } = useRevisionData();\n\n\treturn (\n\t\t<PostLastRevisionCheck>\n\t\t\t<PanelRow\n\t\t\t\theader={ __( 'Editing history' ) }\n\t\t\t\tclassName=\"edit-site-template-revisions\"\n\t\t\t>\n\t\t\t\t<Button\n\t\t\t\t\thref={ addQueryArgs( 'revision.php', {\n\t\t\t\t\t\trevision: lastRevisionId,\n\t\t\t\t\t} ) }\n\t\t\t\t\tclassName=\"edit-site-template-last-revision__title\"\n\t\t\t\t\ticon={ backup }\n\t\t\t\t>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %d: number of revisions */\n\t\t\t\t\t\t_n( '%d Revision', '%d Revisions', revisionsCount ),\n\t\t\t\t\t\trevisionsCount\n\t\t\t\t\t) }\n\t\t\t\t</Button>\n\t\t\t</PanelRow>\n\t\t</PostLastRevisionCheck>\n\t);\n};\n\nexport default function LastRevision() {\n\treturn (\n\t\t<PostLastRevisionCheck>\n\t\t\t<PostLastRevision />\n\t\t</PostLastRevisionCheck>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,MAAM,EAAEC,QAAQ,QAAQ,uBAAuB;AACxD,SAASC,OAAO,EAAEC,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACjD,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,oBAAoB,QAAQ,mBAAmB;;AAExD;AACA;AACA;AACA,OAAOC,qBAAqB,MAAM,gCAAgC;AAElE,MAAMC,eAAe,GAAGA,CAAA,KAAM;EAAA,IAAAC,qBAAA,EAAAC,sBAAA;EAC7B,MAAM;IAAEC,MAAM,EAAEC;EAAgB,CAAC,GAAGL,qBAAqB,CAAC,CAAC;EAE3D,MAAMM,cAAc,IAAAJ,qBAAA,GACnBG,eAAe,EAAEE,MAAM,GAAI,qBAAqB,CAAE,GAAI,CAAC,CAAE,EAAEC,EAAE,cAAAN,qBAAA,cAAAA,qBAAA,GAAI,IAAI;EAEtE,MAAMO,cAAc,IAAAN,sBAAA,GACnBE,eAAe,EAAEE,MAAM,GAAI,iBAAiB,CAAE,GAAI,CAAC,CAAE,EAAEG,KAAK,cAAAP,sBAAA,cAAAA,sBAAA,GAAI,CAAC;EAElE,OAAO;IACNE,eAAe;IACfC,cAAc;IACdG;EACD,CAAC;AACF,CAAC;AAED,SAASE,qBAAqBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EAC9C,MAAM;IAAEN,cAAc;IAAEG;EAAe,CAAC,GAAGR,eAAe,CAAC,CAAC;EAE5D,IAAK,CAAEY,OAAO,CAACC,GAAG,CAACC,mBAAmB,EAAG;IACxC,OAAO,IAAI;EACZ;EAEA,IAAK,CAAET,cAAc,IAAIG,cAAc,GAAG,CAAC,EAAG;IAC7C,OAAO,IAAI;EACZ;EAEA,OACCO,aAAA,CAACjB,oBAAoB;IAACkB,WAAW,EAAC;EAAW,GAC1CL,QACmB,CAAC;AAEzB;AAEA,MAAMM,gBAAgB,GAAGA,CAAA,KAAM;EAC9B,MAAM;IAAEZ,cAAc;IAAEG;EAAe,CAAC,GAAGR,eAAe,CAAC,CAAC;EAE5D,OACCe,aAAA,CAACL,qBAAqB,QACrBK,aAAA,CAACvB,QAAQ;IACR0B,MAAM,EAAGvB,EAAE,CAAE,iBAAkB,CAAG;IAClCwB,SAAS,EAAC;EAA8B,GAExCJ,aAAA,CAACxB,MAAM;IACN6B,IAAI,EAAGvB,YAAY,CAAE,cAAc,EAAE;MACpCwB,QAAQ,EAAEhB;IACX,CAAE,CAAG;IACLc,SAAS,EAAC,yCAAyC;IACnDG,IAAI,EAAG1B;EAAQ,GAEbH,OAAO,EACR;EACAC,EAAE,CAAE,aAAa,EAAE,cAAc,EAAEc,cAAe,CAAC,EACnDA,cACD,CACO,CACC,CACY,CAAC;AAE1B,CAAC;AAED,eAAe,SAASe,YAAYA,CAAA,EAAG;EACtC,OACCR,aAAA,CAACL,qBAAqB,QACrBK,aAAA,CAACE,gBAAgB,MAAE,CACG,CAAC;AAE1B"}
|
|
@@ -2,19 +2,19 @@ import { createElement } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* WordPress dependencies
|
|
4
4
|
*/
|
|
5
|
-
import { useEntityProp } from '@wordpress/core-data';
|
|
6
5
|
import { __ } from '@wordpress/i18n';
|
|
7
6
|
|
|
8
7
|
/**
|
|
9
8
|
* Internal dependencies
|
|
10
9
|
*/
|
|
11
10
|
import SidebarNavigationItem from '../sidebar-navigation-item';
|
|
11
|
+
import useNavigationMenuTitle from './use-navigation-menu-title';
|
|
12
12
|
import { useLink } from '../routes/link';
|
|
13
13
|
import { NAVIGATION_POST_TYPE } from '../../utils/constants';
|
|
14
14
|
export default function TemplatePartNavigationMenuListItem({
|
|
15
15
|
id
|
|
16
16
|
}) {
|
|
17
|
-
const
|
|
17
|
+
const title = useNavigationMenuTitle(id);
|
|
18
18
|
const linkInfo = useLink({
|
|
19
19
|
postId: id,
|
|
20
20
|
postType: NAVIGATION_POST_TYPE
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["__","SidebarNavigationItem","useNavigationMenuTitle","useLink","NAVIGATION_POST_TYPE","TemplatePartNavigationMenuListItem","id","title","linkInfo","postId","postType","undefined","createElement","withChevron"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport useNavigationMenuTitle from './use-navigation-menu-title';\nimport { useLink } from '../routes/link';\nimport { NAVIGATION_POST_TYPE } from '../../utils/constants';\n\nexport default function TemplatePartNavigationMenuListItem( { id } ) {\n\tconst title = useNavigationMenuTitle( id );\n\n\tconst linkInfo = useLink( {\n\t\tpostId: id,\n\t\tpostType: NAVIGATION_POST_TYPE,\n\t} );\n\n\tif ( ! id || title === undefined ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<SidebarNavigationItem withChevron { ...linkInfo }>\n\t\t\t{ title || __( '(no title)' ) }\n\t\t</SidebarNavigationItem>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,qBAAqB,MAAM,4BAA4B;AAC9D,OAAOC,sBAAsB,MAAM,6BAA6B;AAChE,SAASC,OAAO,QAAQ,gBAAgB;AACxC,SAASC,oBAAoB,QAAQ,uBAAuB;AAE5D,eAAe,SAASC,kCAAkCA,CAAE;EAAEC;AAAG,CAAC,EAAG;EACpE,MAAMC,KAAK,GAAGL,sBAAsB,CAAEI,EAAG,CAAC;EAE1C,MAAME,QAAQ,GAAGL,OAAO,CAAE;IACzBM,MAAM,EAAEH,EAAE;IACVI,QAAQ,EAAEN;EACX,CAAE,CAAC;EAEH,IAAK,CAAEE,EAAE,IAAIC,KAAK,KAAKI,SAAS,EAAG;IAClC,OAAO,IAAI;EACZ;EAEA,OACCC,aAAA,CAACX,qBAAqB;IAACY,WAAW;IAAA,GAAML;EAAQ,GAC7CD,KAAK,IAAIP,EAAE,CAAE,YAAa,CACN,CAAC;AAE1B"}
|
package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js
CHANGED
|
@@ -4,17 +4,16 @@ import { createElement, Fragment } from "react";
|
|
|
4
4
|
*/
|
|
5
5
|
import { __ } from '@wordpress/i18n';
|
|
6
6
|
import { __experimentalHeading as Heading } from '@wordpress/components';
|
|
7
|
-
import { useEntityProp } from '@wordpress/core-data';
|
|
8
7
|
|
|
9
8
|
/**
|
|
10
9
|
* Internal dependencies
|
|
11
10
|
*/
|
|
12
11
|
import NavigationMenuEditor from '../sidebar-navigation-screen-navigation-menu/navigation-menu-editor';
|
|
13
|
-
import
|
|
12
|
+
import useNavigationMenuTitle from './use-navigation-menu-title';
|
|
14
13
|
export default function TemplatePartNavigationMenu({
|
|
15
14
|
id
|
|
16
15
|
}) {
|
|
17
|
-
const
|
|
16
|
+
const title = useNavigationMenuTitle(id);
|
|
18
17
|
if (!id || title === undefined) {
|
|
19
18
|
return null;
|
|
20
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","__experimentalHeading","Heading","
|
|
1
|
+
{"version":3,"names":["__","__experimentalHeading","Heading","NavigationMenuEditor","useNavigationMenuTitle","TemplatePartNavigationMenu","id","title","undefined","createElement","Fragment","className","size","upperCase","weight","navigationMenuId"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalHeading as Heading } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport NavigationMenuEditor from '../sidebar-navigation-screen-navigation-menu/navigation-menu-editor';\nimport useNavigationMenuTitle from './use-navigation-menu-title';\n\nexport default function TemplatePartNavigationMenu( { id } ) {\n\tconst title = useNavigationMenuTitle( id );\n\n\tif ( ! id || title === undefined ) {\n\t\treturn null;\n\t}\n\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{ title || __( 'Navigation' ) }\n\t\t\t</Heading>\n\t\t\t<NavigationMenuEditor navigationMenuId={ id } />\n\t\t</>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,qBAAqB,IAAIC,OAAO,QAAQ,uBAAuB;;AAExE;AACA;AACA;AACA,OAAOC,oBAAoB,MAAM,qEAAqE;AACtG,OAAOC,sBAAsB,MAAM,6BAA6B;AAEhE,eAAe,SAASC,0BAA0BA,CAAE;EAAEC;AAAG,CAAC,EAAG;EAC5D,MAAMC,KAAK,GAAGH,sBAAsB,CAAEE,EAAG,CAAC;EAE1C,IAAK,CAAEA,EAAE,IAAIC,KAAK,KAAKC,SAAS,EAAG;IAClC,OAAO,IAAI;EACZ;EAEA,OACCC,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACP,OAAO;IACPS,SAAS,EAAC,0EAA0E;IACpFC,IAAI,EAAC,IAAI;IACTC,SAAS,EAAG,IAAM;IAClBC,MAAM,EAAG;EAAK,GAEZP,KAAK,IAAIP,EAAE,CAAE,YAAa,CACpB,CAAC,EACVS,aAAA,CAACN,oBAAoB;IAACY,gBAAgB,EAAGT;EAAI,CAAE,CAC9C,CAAC;AAEL"}
|
package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { useSelect } from '@wordpress/data';
|
|
5
|
+
import { store as coreStore } from '@wordpress/core-data';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Internal dependencies
|
|
9
|
+
*/
|
|
10
|
+
import { NAVIGATION_POST_TYPE } from '../../utils/constants';
|
|
11
|
+
export default function useNavigationMenuTitle(id) {
|
|
12
|
+
return useSelect(select => {
|
|
13
|
+
if (!id) {
|
|
14
|
+
return undefined;
|
|
15
|
+
}
|
|
16
|
+
const editedRecord = select(coreStore).getEditedEntityRecord('postType', NAVIGATION_POST_TYPE, id);
|
|
17
|
+
|
|
18
|
+
// Do not display a 'trashed' navigation menu.
|
|
19
|
+
return editedRecord.status === 'trash' ? undefined : editedRecord.title;
|
|
20
|
+
}, [id]);
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=use-navigation-menu-title.js.map
|
package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useSelect","store","coreStore","NAVIGATION_POST_TYPE","useNavigationMenuTitle","id","select","undefined","editedRecord","getEditedEntityRecord","status","title"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { NAVIGATION_POST_TYPE } from '../../utils/constants';\n\nexport default function useNavigationMenuTitle( id ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! id ) {\n\t\t\t\treturn undefined;\n\t\t\t}\n\n\t\t\tconst editedRecord = select( coreStore ).getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tNAVIGATION_POST_TYPE,\n\t\t\t\tid\n\t\t\t);\n\n\t\t\t// Do not display a 'trashed' navigation menu.\n\t\t\treturn editedRecord.status === 'trash'\n\t\t\t\t? undefined\n\t\t\t\t: editedRecord.title;\n\t\t},\n\t\t[ id ]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;;AAEzD;AACA;AACA;AACA,SAASC,oBAAoB,QAAQ,uBAAuB;AAE5D,eAAe,SAASC,sBAAsBA,CAAEC,EAAE,EAAG;EACpD,OAAOL,SAAS,CACbM,MAAM,IAAM;IACb,IAAK,CAAED,EAAE,EAAG;MACX,OAAOE,SAAS;IACjB;IAEA,MAAMC,YAAY,GAAGF,MAAM,CAAEJ,SAAU,CAAC,CAACO,qBAAqB,CAC7D,UAAU,EACVN,oBAAoB,EACpBE,EACD,CAAC;;IAED;IACA,OAAOG,YAAY,CAACE,MAAM,KAAK,OAAO,GACnCH,SAAS,GACTC,YAAY,CAACG,KAAK;EACtB,CAAC,EACD,CAAEN,EAAE,CACL,CAAC;AACF"}
|
|
@@ -97,7 +97,18 @@ export default function HomeTemplateDetails() {
|
|
|
97
97
|
* which contains the template icon and fallback labels
|
|
98
98
|
*/
|
|
99
99
|
const templateAreas = useMemo(() => {
|
|
100
|
-
|
|
100
|
+
// Keep track of template part IDs that have already been added to the array.
|
|
101
|
+
const templatePartIds = new Set();
|
|
102
|
+
const filterOutDuplicateTemplateParts = currentTemplatePart => {
|
|
103
|
+
// If the template part has already been added to the array, skip it.
|
|
104
|
+
if (templatePartIds.has(currentTemplatePart.templatePart.id)) {
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
// Add to the array of template part IDs.
|
|
108
|
+
templatePartIds.add(currentTemplatePart.templatePart.id);
|
|
109
|
+
return currentTemplatePart;
|
|
110
|
+
};
|
|
111
|
+
return currentTemplateParts.length && templatePartAreas ? currentTemplateParts.filter(filterOutDuplicateTemplateParts).map(({
|
|
101
112
|
templatePart,
|
|
102
113
|
block
|
|
103
114
|
}) => ({
|
package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","debounce","useSelect","useDispatch","store","coreStore","CheckboxControl","__experimentalInputControl","InputControl","__experimentalNumberControl","NumberControl","__experimentalTruncate","Truncate","__experimentalItemGroup","ItemGroup","header","footer","layout","useMemo","useState","useEffect","decodeEntities","SidebarNavigationScreenDetailsPanel","SidebarNavigationScreenDetailsPanelRow","unlock","editSiteStore","useLink","SidebarNavigationItem","TEMPLATE_PART_POST_TYPE","EMPTY_OBJECT","TemplateAreaButton","postId","icon","title","_icons$icon","icons","linkInfo","postType","createElement","className","withChevron","limit","ellipsizeMode","numberOfLines","HomeTemplateDetails","editEntityRecord","allowCommentsOnNewPosts","templatePartAreas","postsPerPage","postsPageTitle","postsPageId","currentTemplateParts","select","getEntityRecord","getSettings","getCurrentTemplateTemplateParts","siteSettings","_postsPageRecord","page_for_posts","default_comment_status","rendered","id","posts_per_page","defaultTemplatePartAreas","commentsOnNewPostsValue","setCommentsOnNewPostsValue","postsCountValue","setPostsCountValue","postsPageTitleValue","setPostsPageTitleValue","templateAreas","length","map","templatePart","block","find","area","clientId","setAllowCommentsOnNewPosts","newValue","undefined","setPostsPageTitle","setPostsPerPage","Fragment","spacing","placeholder","size","value","onChange","label","help","spinControls","step","min","checked","theme","slug","key"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-template/home-template-details.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { debounce } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tCheckboxControl,\n\t__experimentalInputControl as InputControl,\n\t__experimentalNumberControl as NumberControl,\n\t__experimentalTruncate as Truncate,\n\t__experimentalItemGroup as ItemGroup,\n} from '@wordpress/components';\nimport { header, footer, layout } from '@wordpress/icons';\nimport { useMemo, useState, useEffect } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport {\n\tSidebarNavigationScreenDetailsPanel,\n\tSidebarNavigationScreenDetailsPanelRow,\n} from '../sidebar-navigation-screen-details-panel';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport { TEMPLATE_PART_POST_TYPE } from '../../utils/constants';\n\nconst EMPTY_OBJECT = {};\n\nfunction TemplateAreaButton( { postId, icon, title } ) {\n\tconst icons = {\n\t\theader,\n\t\tfooter,\n\t};\n\tconst linkInfo = useLink( {\n\t\tpostType: TEMPLATE_PART_POST_TYPE,\n\t\tpostId,\n\t} );\n\n\treturn (\n\t\t<SidebarNavigationItem\n\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template__template-area-button\"\n\t\t\t{ ...linkInfo }\n\t\t\ticon={ icons[ icon ] ?? layout }\n\t\t\twithChevron\n\t\t>\n\t\t\t<Truncate\n\t\t\t\tlimit={ 20 }\n\t\t\t\tellipsizeMode=\"tail\"\n\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template__template-area-label-text\"\n\t\t\t>\n\t\t\t\t{ decodeEntities( title ) }\n\t\t\t</Truncate>\n\t\t</SidebarNavigationItem>\n\t);\n}\n\nexport default function HomeTemplateDetails() {\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst {\n\t\tallowCommentsOnNewPosts,\n\t\ttemplatePartAreas,\n\t\tpostsPerPage,\n\t\tpostsPageTitle,\n\t\tpostsPageId,\n\t\tcurrentTemplateParts,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst { getSettings, getCurrentTemplateTemplateParts } = unlock(\n\t\t\tselect( editSiteStore )\n\t\t);\n\t\tconst siteSettings = getEntityRecord( 'root', 'site' );\n\t\tconst _postsPageRecord = siteSettings?.page_for_posts\n\t\t\t? getEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'page',\n\t\t\t\t\tsiteSettings?.page_for_posts\n\t\t\t )\n\t\t\t: EMPTY_OBJECT;\n\n\t\treturn {\n\t\t\tallowCommentsOnNewPosts:\n\t\t\t\tsiteSettings?.default_comment_status === 'open',\n\t\t\tpostsPageTitle: _postsPageRecord?.title?.rendered,\n\t\t\tpostsPageId: _postsPageRecord?.id,\n\t\t\tpostsPerPage: siteSettings?.posts_per_page,\n\t\t\ttemplatePartAreas: getSettings()?.defaultTemplatePartAreas,\n\t\t\tcurrentTemplateParts: getCurrentTemplateTemplateParts(),\n\t\t};\n\t}, [] );\n\n\tconst [ commentsOnNewPostsValue, setCommentsOnNewPostsValue ] =\n\t\tuseState( '' );\n\tconst [ postsCountValue, setPostsCountValue ] = useState( 1 );\n\tconst [ postsPageTitleValue, setPostsPageTitleValue ] = useState( '' );\n\n\t/*\n\t * This hook serves to set the server-retrieved values,\n\t * postsPageTitle, allowCommentsOnNewPosts, postsPerPage,\n\t * to local state.\n\t */\n\tuseEffect( () => {\n\t\tsetCommentsOnNewPostsValue( allowCommentsOnNewPosts );\n\t\tsetPostsPageTitleValue( postsPageTitle );\n\t\tsetPostsCountValue( postsPerPage );\n\t}, [ postsPageTitle, allowCommentsOnNewPosts, postsPerPage ] );\n\n\t/*\n\t * Merge data in currentTemplateParts with templatePartAreas,\n\t * which contains the template icon and fallback labels\n\t */\n\tconst templateAreas = useMemo( () => {\n\t\treturn currentTemplateParts.length && templatePartAreas\n\t\t\t? currentTemplateParts.map( ( { templatePart, block } ) => ( {\n\t\t\t\t\t...templatePartAreas?.find(\n\t\t\t\t\t\t( { area } ) => area === templatePart?.area\n\t\t\t\t\t),\n\t\t\t\t\t...templatePart,\n\t\t\t\t\tclientId: block.clientId,\n\t\t\t } ) )\n\t\t\t: [];\n\t}, [ currentTemplateParts, templatePartAreas ] );\n\n\tconst setAllowCommentsOnNewPosts = ( newValue ) => {\n\t\tsetCommentsOnNewPostsValue( newValue );\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tdefault_comment_status: newValue ? 'open' : null,\n\t\t} );\n\t};\n\n\tconst setPostsPageTitle = ( newValue ) => {\n\t\tsetPostsPageTitleValue( newValue );\n\t\teditEntityRecord( 'postType', 'page', postsPageId, {\n\t\t\ttitle: newValue,\n\t\t} );\n\t};\n\n\tconst setPostsPerPage = ( newValue ) => {\n\t\tsetPostsCountValue( newValue );\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tposts_per_page: newValue,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<SidebarNavigationScreenDetailsPanel spacing={ 6 }>\n\t\t\t\t{ postsPageId && (\n\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\t\tplaceholder={ __( 'No Title' ) }\n\t\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\t\tvalue={ postsPageTitleValue }\n\t\t\t\t\t\t\tonChange={ debounce( setPostsPageTitle, 300 ) }\n\t\t\t\t\t\t\tlabel={ __( 'Blog title' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Set the Posts Page title. Appears in search results, and when the page is shared on social media.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t) }\n\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t<NumberControl\n\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\tplaceholder={ 0 }\n\t\t\t\t\t\tvalue={ postsCountValue }\n\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\tspinControls=\"custom\"\n\t\t\t\t\t\tstep=\"1\"\n\t\t\t\t\t\tmin=\"1\"\n\t\t\t\t\t\tonChange={ setPostsPerPage }\n\t\t\t\t\t\tlabel={ __( 'Posts per page' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Set the default number of posts to display on blog pages, including categories and tags. Some templates may override this setting.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\n\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\ttitle={ __( 'Discussion' ) }\n\t\t\t\tspacing={ 3 }\n\t\t\t>\n\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\tlabel={ __( 'Allow comments on new posts' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Changes will apply to new posts only. Individual posts may override these settings.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tchecked={ commentsOnNewPostsValue }\n\t\t\t\t\t\tonChange={ setAllowCommentsOnNewPosts }\n\t\t\t\t\t/>\n\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\ttitle={ __( 'Areas' ) }\n\t\t\t\tspacing={ 3 }\n\t\t\t>\n\t\t\t\t<ItemGroup>\n\t\t\t\t\t{ templateAreas.map(\n\t\t\t\t\t\t( { clientId, label, icon, theme, slug, title } ) => (\n\t\t\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow\n\t\t\t\t\t\t\t\tkey={ clientId }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TemplateAreaButton\n\t\t\t\t\t\t\t\t\tpostId={ `${ theme }//${ slug }` }\n\t\t\t\t\t\t\t\t\ttitle={ title?.rendered || label }\n\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t\t)\n\t\t\t\t\t) }\n\t\t\t\t</ItemGroup>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["__","debounce","useSelect","useDispatch","store","coreStore","CheckboxControl","__experimentalInputControl","InputControl","__experimentalNumberControl","NumberControl","__experimentalTruncate","Truncate","__experimentalItemGroup","ItemGroup","header","footer","layout","useMemo","useState","useEffect","decodeEntities","SidebarNavigationScreenDetailsPanel","SidebarNavigationScreenDetailsPanelRow","unlock","editSiteStore","useLink","SidebarNavigationItem","TEMPLATE_PART_POST_TYPE","EMPTY_OBJECT","TemplateAreaButton","postId","icon","title","_icons$icon","icons","linkInfo","postType","createElement","className","withChevron","limit","ellipsizeMode","numberOfLines","HomeTemplateDetails","editEntityRecord","allowCommentsOnNewPosts","templatePartAreas","postsPerPage","postsPageTitle","postsPageId","currentTemplateParts","select","getEntityRecord","getSettings","getCurrentTemplateTemplateParts","siteSettings","_postsPageRecord","page_for_posts","default_comment_status","rendered","id","posts_per_page","defaultTemplatePartAreas","commentsOnNewPostsValue","setCommentsOnNewPostsValue","postsCountValue","setPostsCountValue","postsPageTitleValue","setPostsPageTitleValue","templateAreas","templatePartIds","Set","filterOutDuplicateTemplateParts","currentTemplatePart","has","templatePart","add","length","filter","map","block","find","area","clientId","setAllowCommentsOnNewPosts","newValue","undefined","setPostsPageTitle","setPostsPerPage","Fragment","spacing","placeholder","size","value","onChange","label","help","spinControls","step","min","checked","theme","slug","key"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-template/home-template-details.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { debounce } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tCheckboxControl,\n\t__experimentalInputControl as InputControl,\n\t__experimentalNumberControl as NumberControl,\n\t__experimentalTruncate as Truncate,\n\t__experimentalItemGroup as ItemGroup,\n} from '@wordpress/components';\nimport { header, footer, layout } from '@wordpress/icons';\nimport { useMemo, useState, useEffect } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport {\n\tSidebarNavigationScreenDetailsPanel,\n\tSidebarNavigationScreenDetailsPanelRow,\n} from '../sidebar-navigation-screen-details-panel';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport { TEMPLATE_PART_POST_TYPE } from '../../utils/constants';\n\nconst EMPTY_OBJECT = {};\n\nfunction TemplateAreaButton( { postId, icon, title } ) {\n\tconst icons = {\n\t\theader,\n\t\tfooter,\n\t};\n\tconst linkInfo = useLink( {\n\t\tpostType: TEMPLATE_PART_POST_TYPE,\n\t\tpostId,\n\t} );\n\n\treturn (\n\t\t<SidebarNavigationItem\n\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template__template-area-button\"\n\t\t\t{ ...linkInfo }\n\t\t\ticon={ icons[ icon ] ?? layout }\n\t\t\twithChevron\n\t\t>\n\t\t\t<Truncate\n\t\t\t\tlimit={ 20 }\n\t\t\t\tellipsizeMode=\"tail\"\n\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-template__template-area-label-text\"\n\t\t\t>\n\t\t\t\t{ decodeEntities( title ) }\n\t\t\t</Truncate>\n\t\t</SidebarNavigationItem>\n\t);\n}\n\nexport default function HomeTemplateDetails() {\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst {\n\t\tallowCommentsOnNewPosts,\n\t\ttemplatePartAreas,\n\t\tpostsPerPage,\n\t\tpostsPageTitle,\n\t\tpostsPageId,\n\t\tcurrentTemplateParts,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst { getSettings, getCurrentTemplateTemplateParts } = unlock(\n\t\t\tselect( editSiteStore )\n\t\t);\n\t\tconst siteSettings = getEntityRecord( 'root', 'site' );\n\t\tconst _postsPageRecord = siteSettings?.page_for_posts\n\t\t\t? getEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'page',\n\t\t\t\t\tsiteSettings?.page_for_posts\n\t\t\t )\n\t\t\t: EMPTY_OBJECT;\n\n\t\treturn {\n\t\t\tallowCommentsOnNewPosts:\n\t\t\t\tsiteSettings?.default_comment_status === 'open',\n\t\t\tpostsPageTitle: _postsPageRecord?.title?.rendered,\n\t\t\tpostsPageId: _postsPageRecord?.id,\n\t\t\tpostsPerPage: siteSettings?.posts_per_page,\n\t\t\ttemplatePartAreas: getSettings()?.defaultTemplatePartAreas,\n\t\t\tcurrentTemplateParts: getCurrentTemplateTemplateParts(),\n\t\t};\n\t}, [] );\n\n\tconst [ commentsOnNewPostsValue, setCommentsOnNewPostsValue ] =\n\t\tuseState( '' );\n\tconst [ postsCountValue, setPostsCountValue ] = useState( 1 );\n\tconst [ postsPageTitleValue, setPostsPageTitleValue ] = useState( '' );\n\n\t/*\n\t * This hook serves to set the server-retrieved values,\n\t * postsPageTitle, allowCommentsOnNewPosts, postsPerPage,\n\t * to local state.\n\t */\n\tuseEffect( () => {\n\t\tsetCommentsOnNewPostsValue( allowCommentsOnNewPosts );\n\t\tsetPostsPageTitleValue( postsPageTitle );\n\t\tsetPostsCountValue( postsPerPage );\n\t}, [ postsPageTitle, allowCommentsOnNewPosts, postsPerPage ] );\n\n\t/*\n\t * Merge data in currentTemplateParts with templatePartAreas,\n\t * which contains the template icon and fallback labels\n\t */\n\tconst templateAreas = useMemo( () => {\n\t\t// Keep track of template part IDs that have already been added to the array.\n\t\tconst templatePartIds = new Set();\n\t\tconst filterOutDuplicateTemplateParts = ( currentTemplatePart ) => {\n\t\t\t// If the template part has already been added to the array, skip it.\n\t\t\tif ( templatePartIds.has( currentTemplatePart.templatePart.id ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Add to the array of template part IDs.\n\t\t\ttemplatePartIds.add( currentTemplatePart.templatePart.id );\n\t\t\treturn currentTemplatePart;\n\t\t};\n\n\t\treturn currentTemplateParts.length && templatePartAreas\n\t\t\t? currentTemplateParts\n\t\t\t\t\t.filter( filterOutDuplicateTemplateParts )\n\t\t\t\t\t.map( ( { templatePart, block } ) => ( {\n\t\t\t\t\t\t...templatePartAreas?.find(\n\t\t\t\t\t\t\t( { area } ) => area === templatePart?.area\n\t\t\t\t\t\t),\n\t\t\t\t\t\t...templatePart,\n\t\t\t\t\t\tclientId: block.clientId,\n\t\t\t\t\t} ) )\n\t\t\t: [];\n\t}, [ currentTemplateParts, templatePartAreas ] );\n\n\tconst setAllowCommentsOnNewPosts = ( newValue ) => {\n\t\tsetCommentsOnNewPostsValue( newValue );\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tdefault_comment_status: newValue ? 'open' : null,\n\t\t} );\n\t};\n\n\tconst setPostsPageTitle = ( newValue ) => {\n\t\tsetPostsPageTitleValue( newValue );\n\t\teditEntityRecord( 'postType', 'page', postsPageId, {\n\t\t\ttitle: newValue,\n\t\t} );\n\t};\n\n\tconst setPostsPerPage = ( newValue ) => {\n\t\tsetPostsCountValue( newValue );\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tposts_per_page: newValue,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<SidebarNavigationScreenDetailsPanel spacing={ 6 }>\n\t\t\t\t{ postsPageId && (\n\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\t\tplaceholder={ __( 'No Title' ) }\n\t\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\t\tvalue={ postsPageTitleValue }\n\t\t\t\t\t\t\tonChange={ debounce( setPostsPageTitle, 300 ) }\n\t\t\t\t\t\t\tlabel={ __( 'Blog title' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Set the Posts Page title. Appears in search results, and when the page is shared on social media.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t) }\n\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t<NumberControl\n\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\tplaceholder={ 0 }\n\t\t\t\t\t\tvalue={ postsCountValue }\n\t\t\t\t\t\tsize={ '__unstable-large' }\n\t\t\t\t\t\tspinControls=\"custom\"\n\t\t\t\t\t\tstep=\"1\"\n\t\t\t\t\t\tmin=\"1\"\n\t\t\t\t\t\tonChange={ setPostsPerPage }\n\t\t\t\t\t\tlabel={ __( 'Posts per page' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Set the default number of posts to display on blog pages, including categories and tags. Some templates may override this setting.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\n\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\ttitle={ __( 'Discussion' ) }\n\t\t\t\tspacing={ 3 }\n\t\t\t>\n\t\t\t\t<SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__input-control\"\n\t\t\t\t\t\tlabel={ __( 'Allow comments on new posts' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Changes will apply to new posts only. Individual posts may override these settings.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tchecked={ commentsOnNewPostsValue }\n\t\t\t\t\t\tonChange={ setAllowCommentsOnNewPosts }\n\t\t\t\t\t/>\n\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\ttitle={ __( 'Areas' ) }\n\t\t\t\tspacing={ 3 }\n\t\t\t>\n\t\t\t\t<ItemGroup>\n\t\t\t\t\t{ templateAreas.map(\n\t\t\t\t\t\t( { clientId, label, icon, theme, slug, title } ) => (\n\t\t\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow\n\t\t\t\t\t\t\t\tkey={ clientId }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TemplateAreaButton\n\t\t\t\t\t\t\t\t\tpostId={ `${ theme }//${ slug }` }\n\t\t\t\t\t\t\t\t\ttitle={ title?.rendered || label }\n\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t\t)\n\t\t\t\t\t) }\n\t\t\t\t</ItemGroup>\n\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -167,7 +167,6 @@ function useGlobalStylesOpenCssCommands() {
|
|
|
167
167
|
const {
|
|
168
168
|
canEditCSS
|
|
169
169
|
} = useSelect(select => {
|
|
170
|
-
var _globalStyles$_links$;
|
|
171
170
|
const {
|
|
172
171
|
getEntityRecord,
|
|
173
172
|
__experimentalGetCurrentGlobalStylesId
|
|
@@ -175,7 +174,7 @@ function useGlobalStylesOpenCssCommands() {
|
|
|
175
174
|
const globalStylesId = __experimentalGetCurrentGlobalStylesId();
|
|
176
175
|
const globalStyles = globalStylesId ? getEntityRecord('root', 'globalStyles', globalStylesId) : undefined;
|
|
177
176
|
return {
|
|
178
|
-
canEditCSS:
|
|
177
|
+
canEditCSS: !!globalStyles?._links?.['wp:action-edit-css']
|
|
179
178
|
};
|
|
180
179
|
}, []);
|
|
181
180
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMemo","useDispatch","useSelect","__","isRTL","rotateLeft","rotateRight","backup","help","styles","external","brush","useCommandLoader","useCommand","privateApis","blockEditorPrivateApis","routerPrivateApis","store","preferencesStore","coreStore","useViewportMatch","unlock","editSiteStore","getIsListPage","useGlobalStylesReset","useHistory","useLocation","useGlobalStylesOpenStylesCommands","openGeneralSidebar","setCanvasMode","params","isMobileViewport","isEditorPage","getCanvasMode","history","isBlockBasedTheme","select","getCurrentTheme","is_block_theme","commands","name","label","callback","close","push","path","canvas","icon","isLoading","useGlobalStylesToggleWelcomeGuideCommands","set","setTimeout","useGlobalStylesResetCommands","canReset","onReset","useGlobalStylesOpenCssCommands","setEditorCanvasContainerView","isListPage","canEditCSS","_globalStyles$_links$","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","undefined","_links","useGlobalStylesOpenRevisionsCommands","hasRevisions","getCurrentThemeGlobalStylesRevisions","length","useCommonCommands","homeUrl","getUnstableBase","home","window","open","hook"],"sources":["@wordpress/edit-site/src/hooks/commands/use-common-commands.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\trotateLeft,\n\trotateRight,\n\tbackup,\n\thelp,\n\tstyles,\n\texternal,\n\tbrush,\n} from '@wordpress/icons';\nimport { useCommandLoader, useCommand } from '@wordpress/commands';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport getIsListPage from '../../utils/get-is-list-page';\n\nconst { useGlobalStylesReset } = unlock( blockEditorPrivateApis );\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\n\nfunction useGlobalStylesOpenStylesCommands() {\n\tconst { openGeneralSidebar, setCanvasMode } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst { params } = useLocation();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isEditorPage = ! getIsListPage( params, isMobileViewport );\n\tconst { getCanvasMode } = unlock( useSelect( editSiteStore ) );\n\tconst history = useHistory();\n\n\tconst isBlockBasedTheme = useSelect( ( select ) => {\n\t\treturn select( coreStore ).getCurrentTheme().is_block_theme;\n\t}, [] );\n\n\tconst commands = useMemo( () => {\n\t\tif ( ! isBlockBasedTheme ) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'core/edit-site/open-styles',\n\t\t\t\tlabel: __( 'Open styles' ),\n\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\tclose();\n\t\t\t\t\tif ( ! isEditorPage ) {\n\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\tpath: '/wp_global_styles',\n\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\tif ( isEditorPage && getCanvasMode() !== 'edit' ) {\n\t\t\t\t\t\tsetCanvasMode( 'edit' );\n\t\t\t\t\t}\n\t\t\t\t\topenGeneralSidebar( 'edit-site/global-styles' );\n\t\t\t\t},\n\t\t\t\ticon: styles,\n\t\t\t},\n\t\t];\n\t}, [\n\t\thistory,\n\t\topenGeneralSidebar,\n\t\tsetCanvasMode,\n\t\tisEditorPage,\n\t\tgetCanvasMode,\n\t\tisBlockBasedTheme,\n\t] );\n\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nfunction useGlobalStylesToggleWelcomeGuideCommands() {\n\tconst { openGeneralSidebar, setCanvasMode } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst { params } = useLocation();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isEditorPage = ! getIsListPage( params, isMobileViewport );\n\tconst { getCanvasMode } = unlock( useSelect( editSiteStore ) );\n\tconst { set } = useDispatch( preferencesStore );\n\n\tconst history = useHistory();\n\tconst isBlockBasedTheme = useSelect( ( select ) => {\n\t\treturn select( coreStore ).getCurrentTheme().is_block_theme;\n\t}, [] );\n\n\tconst commands = useMemo( () => {\n\t\tif ( ! isBlockBasedTheme ) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'core/edit-site/toggle-styles-welcome-guide',\n\t\t\t\tlabel: __( 'Learn about styles' ),\n\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\tclose();\n\t\t\t\t\tif ( ! isEditorPage ) {\n\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\tpath: '/wp_global_styles',\n\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\tif ( isEditorPage && getCanvasMode() !== 'edit' ) {\n\t\t\t\t\t\tsetCanvasMode( 'edit' );\n\t\t\t\t\t}\n\t\t\t\t\topenGeneralSidebar( 'edit-site/global-styles' );\n\t\t\t\t\tset( 'core/edit-site', 'welcomeGuideStyles', true );\n\t\t\t\t\t// sometimes there's a focus loss that happens after some time\n\t\t\t\t\t// that closes the modal, we need to force reopening it.\n\t\t\t\t\tsetTimeout( () => {\n\t\t\t\t\t\tset( 'core/edit-site', 'welcomeGuideStyles', true );\n\t\t\t\t\t}, 500 );\n\t\t\t\t},\n\t\t\t\ticon: help,\n\t\t\t},\n\t\t];\n\t}, [\n\t\thistory,\n\t\topenGeneralSidebar,\n\t\tsetCanvasMode,\n\t\tisEditorPage,\n\t\tgetCanvasMode,\n\t\tisBlockBasedTheme,\n\t\tset,\n\t] );\n\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nfunction useGlobalStylesResetCommands() {\n\tconst [ canReset, onReset ] = useGlobalStylesReset();\n\tconst commands = useMemo( () => {\n\t\tif ( ! canReset ) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'core/edit-site/reset-global-styles',\n\t\t\t\tlabel: __( 'Reset styles' ),\n\t\t\t\ticon: isRTL() ? rotateRight : rotateLeft,\n\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\tclose();\n\t\t\t\t\tonReset();\n\t\t\t\t},\n\t\t\t},\n\t\t];\n\t}, [ canReset, onReset ] );\n\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nfunction useGlobalStylesOpenCssCommands() {\n\tconst { openGeneralSidebar, setEditorCanvasContainerView, setCanvasMode } =\n\t\tunlock( useDispatch( editSiteStore ) );\n\tconst { params } = useLocation();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isListPage = getIsListPage( params, isMobileViewport );\n\tconst isEditorPage = ! isListPage;\n\tconst history = useHistory();\n\tconst { canEditCSS } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\tselect( coreStore );\n\n\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\tconst globalStyles = globalStylesId\n\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\tcanEditCSS:\n\t\t\t\t!! globalStyles?._links?.[ 'wp:action-edit-css' ] ?? false,\n\t\t};\n\t}, [] );\n\tconst { getCanvasMode } = unlock( useSelect( editSiteStore ) );\n\n\tconst commands = useMemo( () => {\n\t\tif ( ! canEditCSS ) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'core/edit-site/open-styles-css',\n\t\t\t\tlabel: __( 'Customize CSS' ),\n\t\t\t\ticon: brush,\n\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\tclose();\n\t\t\t\t\tif ( ! isEditorPage ) {\n\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\tpath: '/wp_global_styles',\n\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\tif ( isEditorPage && getCanvasMode() !== 'edit' ) {\n\t\t\t\t\t\tsetCanvasMode( 'edit' );\n\t\t\t\t\t}\n\t\t\t\t\topenGeneralSidebar( 'edit-site/global-styles' );\n\t\t\t\t\tsetEditorCanvasContainerView( 'global-styles-css' );\n\t\t\t\t},\n\t\t\t},\n\t\t];\n\t}, [\n\t\thistory,\n\t\topenGeneralSidebar,\n\t\tsetEditorCanvasContainerView,\n\t\tcanEditCSS,\n\t\tisEditorPage,\n\t\tgetCanvasMode,\n\t\tsetCanvasMode,\n\t] );\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nfunction useGlobalStylesOpenRevisionsCommands() {\n\tconst { openGeneralSidebar, setEditorCanvasContainerView, setCanvasMode } =\n\t\tunlock( useDispatch( editSiteStore ) );\n\tconst { getCanvasMode } = unlock( useSelect( editSiteStore ) );\n\tconst { params } = useLocation();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isEditorPage = ! getIsListPage( params, isMobileViewport );\n\tconst history = useHistory();\n\tconst hasRevisions = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getCurrentThemeGlobalStylesRevisions()?.length,\n\t\t[]\n\t);\n\tconst commands = useMemo( () => {\n\t\tif ( ! hasRevisions ) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'core/edit-site/open-global-styles-revisions',\n\t\t\t\tlabel: __( 'Style revisions' ),\n\t\t\t\ticon: backup,\n\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\tclose();\n\t\t\t\t\tif ( ! isEditorPage ) {\n\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\tpath: '/wp_global_styles',\n\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\tif ( isEditorPage && getCanvasMode() !== 'edit' ) {\n\t\t\t\t\t\tsetCanvasMode( 'edit' );\n\t\t\t\t\t}\n\t\t\t\t\topenGeneralSidebar( 'edit-site/global-styles' );\n\t\t\t\t\tsetEditorCanvasContainerView( 'global-styles-revisions' );\n\t\t\t\t},\n\t\t\t},\n\t\t];\n\t}, [\n\t\thasRevisions,\n\t\thistory,\n\t\topenGeneralSidebar,\n\t\tsetEditorCanvasContainerView,\n\t\tisEditorPage,\n\t\tgetCanvasMode,\n\t\tsetCanvasMode,\n\t] );\n\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nexport function useCommonCommands() {\n\tconst homeUrl = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetUnstableBase, // Site index.\n\t\t} = select( coreStore );\n\n\t\treturn getUnstableBase()?.home;\n\t}, [] );\n\n\tuseCommand( {\n\t\tname: 'core/edit-site/view-site',\n\t\tlabel: __( 'View site' ),\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\twindow.open( homeUrl, '_blank' );\n\t\t},\n\t\ticon: external,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/open-styles',\n\t\thook: useGlobalStylesOpenStylesCommands,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/toggle-styles-welcome-guide',\n\t\thook: useGlobalStylesToggleWelcomeGuideCommands,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/reset-global-styles',\n\t\thook: useGlobalStylesResetCommands,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/open-styles-css',\n\t\thook: useGlobalStylesOpenCssCommands,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/open-styles-revisions',\n\t\thook: useGlobalStylesOpenRevisionsCommands,\n\t} );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["useMemo","useDispatch","useSelect","__","isRTL","rotateLeft","rotateRight","backup","help","styles","external","brush","useCommandLoader","useCommand","privateApis","blockEditorPrivateApis","routerPrivateApis","store","preferencesStore","coreStore","useViewportMatch","unlock","editSiteStore","getIsListPage","useGlobalStylesReset","useHistory","useLocation","useGlobalStylesOpenStylesCommands","openGeneralSidebar","setCanvasMode","params","isMobileViewport","isEditorPage","getCanvasMode","history","isBlockBasedTheme","select","getCurrentTheme","is_block_theme","commands","name","label","callback","close","push","path","canvas","icon","isLoading","useGlobalStylesToggleWelcomeGuideCommands","set","setTimeout","useGlobalStylesResetCommands","canReset","onReset","useGlobalStylesOpenCssCommands","setEditorCanvasContainerView","isListPage","canEditCSS","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","undefined","_links","useGlobalStylesOpenRevisionsCommands","hasRevisions","getCurrentThemeGlobalStylesRevisions","length","useCommonCommands","homeUrl","getUnstableBase","home","window","open","hook"],"sources":["@wordpress/edit-site/src/hooks/commands/use-common-commands.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\trotateLeft,\n\trotateRight,\n\tbackup,\n\thelp,\n\tstyles,\n\texternal,\n\tbrush,\n} from '@wordpress/icons';\nimport { useCommandLoader, useCommand } from '@wordpress/commands';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport getIsListPage from '../../utils/get-is-list-page';\n\nconst { useGlobalStylesReset } = unlock( blockEditorPrivateApis );\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\n\nfunction useGlobalStylesOpenStylesCommands() {\n\tconst { openGeneralSidebar, setCanvasMode } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst { params } = useLocation();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isEditorPage = ! getIsListPage( params, isMobileViewport );\n\tconst { getCanvasMode } = unlock( useSelect( editSiteStore ) );\n\tconst history = useHistory();\n\n\tconst isBlockBasedTheme = useSelect( ( select ) => {\n\t\treturn select( coreStore ).getCurrentTheme().is_block_theme;\n\t}, [] );\n\n\tconst commands = useMemo( () => {\n\t\tif ( ! isBlockBasedTheme ) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'core/edit-site/open-styles',\n\t\t\t\tlabel: __( 'Open styles' ),\n\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\tclose();\n\t\t\t\t\tif ( ! isEditorPage ) {\n\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\tpath: '/wp_global_styles',\n\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\tif ( isEditorPage && getCanvasMode() !== 'edit' ) {\n\t\t\t\t\t\tsetCanvasMode( 'edit' );\n\t\t\t\t\t}\n\t\t\t\t\topenGeneralSidebar( 'edit-site/global-styles' );\n\t\t\t\t},\n\t\t\t\ticon: styles,\n\t\t\t},\n\t\t];\n\t}, [\n\t\thistory,\n\t\topenGeneralSidebar,\n\t\tsetCanvasMode,\n\t\tisEditorPage,\n\t\tgetCanvasMode,\n\t\tisBlockBasedTheme,\n\t] );\n\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nfunction useGlobalStylesToggleWelcomeGuideCommands() {\n\tconst { openGeneralSidebar, setCanvasMode } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst { params } = useLocation();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isEditorPage = ! getIsListPage( params, isMobileViewport );\n\tconst { getCanvasMode } = unlock( useSelect( editSiteStore ) );\n\tconst { set } = useDispatch( preferencesStore );\n\n\tconst history = useHistory();\n\tconst isBlockBasedTheme = useSelect( ( select ) => {\n\t\treturn select( coreStore ).getCurrentTheme().is_block_theme;\n\t}, [] );\n\n\tconst commands = useMemo( () => {\n\t\tif ( ! isBlockBasedTheme ) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'core/edit-site/toggle-styles-welcome-guide',\n\t\t\t\tlabel: __( 'Learn about styles' ),\n\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\tclose();\n\t\t\t\t\tif ( ! isEditorPage ) {\n\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\tpath: '/wp_global_styles',\n\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\tif ( isEditorPage && getCanvasMode() !== 'edit' ) {\n\t\t\t\t\t\tsetCanvasMode( 'edit' );\n\t\t\t\t\t}\n\t\t\t\t\topenGeneralSidebar( 'edit-site/global-styles' );\n\t\t\t\t\tset( 'core/edit-site', 'welcomeGuideStyles', true );\n\t\t\t\t\t// sometimes there's a focus loss that happens after some time\n\t\t\t\t\t// that closes the modal, we need to force reopening it.\n\t\t\t\t\tsetTimeout( () => {\n\t\t\t\t\t\tset( 'core/edit-site', 'welcomeGuideStyles', true );\n\t\t\t\t\t}, 500 );\n\t\t\t\t},\n\t\t\t\ticon: help,\n\t\t\t},\n\t\t];\n\t}, [\n\t\thistory,\n\t\topenGeneralSidebar,\n\t\tsetCanvasMode,\n\t\tisEditorPage,\n\t\tgetCanvasMode,\n\t\tisBlockBasedTheme,\n\t\tset,\n\t] );\n\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nfunction useGlobalStylesResetCommands() {\n\tconst [ canReset, onReset ] = useGlobalStylesReset();\n\tconst commands = useMemo( () => {\n\t\tif ( ! canReset ) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'core/edit-site/reset-global-styles',\n\t\t\t\tlabel: __( 'Reset styles' ),\n\t\t\t\ticon: isRTL() ? rotateRight : rotateLeft,\n\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\tclose();\n\t\t\t\t\tonReset();\n\t\t\t\t},\n\t\t\t},\n\t\t];\n\t}, [ canReset, onReset ] );\n\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nfunction useGlobalStylesOpenCssCommands() {\n\tconst { openGeneralSidebar, setEditorCanvasContainerView, setCanvasMode } =\n\t\tunlock( useDispatch( editSiteStore ) );\n\tconst { params } = useLocation();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isListPage = getIsListPage( params, isMobileViewport );\n\tconst isEditorPage = ! isListPage;\n\tconst history = useHistory();\n\tconst { canEditCSS } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\tselect( coreStore );\n\n\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\tconst globalStyles = globalStylesId\n\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\tcanEditCSS: !! globalStyles?._links?.[ 'wp:action-edit-css' ],\n\t\t};\n\t}, [] );\n\tconst { getCanvasMode } = unlock( useSelect( editSiteStore ) );\n\n\tconst commands = useMemo( () => {\n\t\tif ( ! canEditCSS ) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'core/edit-site/open-styles-css',\n\t\t\t\tlabel: __( 'Customize CSS' ),\n\t\t\t\ticon: brush,\n\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\tclose();\n\t\t\t\t\tif ( ! isEditorPage ) {\n\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\tpath: '/wp_global_styles',\n\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\tif ( isEditorPage && getCanvasMode() !== 'edit' ) {\n\t\t\t\t\t\tsetCanvasMode( 'edit' );\n\t\t\t\t\t}\n\t\t\t\t\topenGeneralSidebar( 'edit-site/global-styles' );\n\t\t\t\t\tsetEditorCanvasContainerView( 'global-styles-css' );\n\t\t\t\t},\n\t\t\t},\n\t\t];\n\t}, [\n\t\thistory,\n\t\topenGeneralSidebar,\n\t\tsetEditorCanvasContainerView,\n\t\tcanEditCSS,\n\t\tisEditorPage,\n\t\tgetCanvasMode,\n\t\tsetCanvasMode,\n\t] );\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nfunction useGlobalStylesOpenRevisionsCommands() {\n\tconst { openGeneralSidebar, setEditorCanvasContainerView, setCanvasMode } =\n\t\tunlock( useDispatch( editSiteStore ) );\n\tconst { getCanvasMode } = unlock( useSelect( editSiteStore ) );\n\tconst { params } = useLocation();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isEditorPage = ! getIsListPage( params, isMobileViewport );\n\tconst history = useHistory();\n\tconst hasRevisions = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getCurrentThemeGlobalStylesRevisions()?.length,\n\t\t[]\n\t);\n\tconst commands = useMemo( () => {\n\t\tif ( ! hasRevisions ) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'core/edit-site/open-global-styles-revisions',\n\t\t\t\tlabel: __( 'Style revisions' ),\n\t\t\t\ticon: backup,\n\t\t\t\tcallback: ( { close } ) => {\n\t\t\t\t\tclose();\n\t\t\t\t\tif ( ! isEditorPage ) {\n\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\tpath: '/wp_global_styles',\n\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\tif ( isEditorPage && getCanvasMode() !== 'edit' ) {\n\t\t\t\t\t\tsetCanvasMode( 'edit' );\n\t\t\t\t\t}\n\t\t\t\t\topenGeneralSidebar( 'edit-site/global-styles' );\n\t\t\t\t\tsetEditorCanvasContainerView( 'global-styles-revisions' );\n\t\t\t\t},\n\t\t\t},\n\t\t];\n\t}, [\n\t\thasRevisions,\n\t\thistory,\n\t\topenGeneralSidebar,\n\t\tsetEditorCanvasContainerView,\n\t\tisEditorPage,\n\t\tgetCanvasMode,\n\t\tsetCanvasMode,\n\t] );\n\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nexport function useCommonCommands() {\n\tconst homeUrl = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetUnstableBase, // Site index.\n\t\t} = select( coreStore );\n\n\t\treturn getUnstableBase()?.home;\n\t}, [] );\n\n\tuseCommand( {\n\t\tname: 'core/edit-site/view-site',\n\t\tlabel: __( 'View site' ),\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\twindow.open( homeUrl, '_blank' );\n\t\t},\n\t\ticon: external,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/open-styles',\n\t\thook: useGlobalStylesOpenStylesCommands,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/toggle-styles-welcome-guide',\n\t\thook: useGlobalStylesToggleWelcomeGuideCommands,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/reset-global-styles',\n\t\thook: useGlobalStylesResetCommands,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/open-styles-css',\n\t\thook: useGlobalStylesOpenCssCommands,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/open-styles-revisions',\n\t\thook: useGlobalStylesOpenRevisionsCommands,\n\t} );\n}\n"],"mappings":"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"}
|