@wordpress/edit-site 6.5.0 → 6.6.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/global-styles/background-panel.js +1 -4
- package/build/components/global-styles/background-panel.js.map +1 -1
- package/build/components/global-styles/font-library-modal/installed-fonts.js +3 -2
- package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build/components/global-styles/screen-block.js +5 -7
- package/build/components/global-styles/screen-block.js.map +1 -1
- package/build/components/global-styles/screen-css.js +1 -1
- package/build/components/global-styles/screen-css.js.map +1 -1
- package/build/components/global-styles/shadows-edit-panel.js +1 -0
- package/build/components/global-styles/shadows-edit-panel.js.map +1 -1
- package/build/components/global-styles/size-control/index.js +10 -5
- package/build/components/global-styles/size-control/index.js.map +1 -1
- package/build/components/page-patterns/index.js +5 -2
- package/build/components/page-patterns/index.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +29 -26
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/post-edit/index.js +43 -43
- package/build/components/post-edit/index.js.map +1 -1
- package/build/components/post-fields/index.js +31 -13
- package/build/components/post-fields/index.js.map +1 -1
- package/build/components/post-list/index.js +1 -1
- package/build/components/post-list/index.js.map +1 -1
- package/build/components/sidebar-dataviews/add-new-view.js +1 -0
- package/build/components/sidebar-dataviews/add-new-view.js.map +1 -1
- package/build/components/sidebar-dataviews/custom-dataviews-list.js +1 -0
- package/build/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
- package/build/hooks/push-changes-to-global-styles/index.js +1 -0
- package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build/utils/is-template-removable.js +2 -2
- package/build/utils/is-template-removable.js.map +1 -1
- package/build/utils/is-template-revertable.js +1 -1
- package/build/utils/is-template-revertable.js.map +1 -1
- package/build-module/components/global-styles/background-panel.js +1 -4
- package/build-module/components/global-styles/background-panel.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js +3 -2
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build-module/components/global-styles/screen-block.js +5 -7
- package/build-module/components/global-styles/screen-block.js.map +1 -1
- package/build-module/components/global-styles/screen-css.js +1 -1
- package/build-module/components/global-styles/screen-css.js.map +1 -1
- package/build-module/components/global-styles/shadows-edit-panel.js +1 -0
- package/build-module/components/global-styles/shadows-edit-panel.js.map +1 -1
- package/build-module/components/global-styles/size-control/index.js +10 -5
- package/build-module/components/global-styles/size-control/index.js.map +1 -1
- package/build-module/components/page-patterns/index.js +3 -2
- package/build-module/components/page-patterns/index.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +26 -25
- package/build-module/components/page-patterns/use-patterns.js.map +1 -1
- package/build-module/components/post-edit/index.js +47 -47
- package/build-module/components/post-edit/index.js.map +1 -1
- package/build-module/components/post-fields/index.js +31 -13
- package/build-module/components/post-fields/index.js.map +1 -1
- package/build-module/components/post-list/index.js +1 -1
- package/build-module/components/post-list/index.js.map +1 -1
- package/build-module/components/sidebar-dataviews/add-new-view.js +1 -0
- package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -1
- package/build-module/components/sidebar-dataviews/custom-dataviews-list.js +1 -0
- package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
- package/build-module/hooks/push-changes-to-global-styles/index.js +1 -0
- package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build-module/utils/is-template-removable.js +2 -2
- package/build-module/utils/is-template-removable.js.map +1 -1
- package/build-module/utils/is-template-revertable.js +1 -1
- package/build-module/utils/is-template-revertable.js.map +1 -1
- package/build-style/posts-rtl.css +19 -22
- package/build-style/posts.css +19 -22
- package/build-style/style-rtl.css +19 -22
- package/build-style/style.css +19 -22
- package/package.json +41 -41
- package/src/components/add-new-template/style.scss +1 -1
- package/src/components/editor/style.scss +1 -1
- package/src/components/global-styles/background-panel.js +0 -3
- package/src/components/global-styles/font-library-modal/installed-fonts.js +6 -4
- package/src/components/global-styles/font-library-modal/style.scss +1 -1
- package/src/components/global-styles/screen-block.js +2 -4
- package/src/components/global-styles/screen-css.js +3 -1
- package/src/components/global-styles/shadows-edit-panel.js +1 -0
- package/src/components/global-styles/size-control/index.js +9 -6
- package/src/components/page-patterns/index.js +4 -2
- package/src/components/page-patterns/use-patterns.js +33 -30
- package/src/components/post-edit/index.js +57 -53
- package/src/components/post-fields/index.js +59 -8
- package/src/components/post-list/index.js +1 -5
- package/src/components/sidebar-dataviews/add-new-view.js +1 -0
- package/src/components/sidebar-dataviews/custom-dataviews-list.js +1 -0
- package/src/hooks/push-changes-to-global-styles/index.js +1 -0
- package/src/utils/is-template-removable.js +4 -2
- package/src/utils/is-template-revertable.js +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["parse","useSelect","createSelector","store","coreStore","editorStore","useMemo","filterOutDuplicatesByName","EXCLUDED_PATTERN_SOURCES","PATTERN_TYPES","PATTERN_SYNC_TYPES","TEMPLATE_PART_POST_TYPE","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","unlock","searchItems","editSiteStore","EMPTY_PATTERN_LIST","selectTemplateParts","select","categoryId","search","_getEntityRecords","getEntityRecords","isResolving","isResolvingSelector","__experimentalGetDefaultTemplatePartAreas","query","per_page","templateParts","knownAreas","templatePartAreas","map","area","templatePartHasCategory","item","category","includes","patterns","hasCategory","selectThemePatterns","_settings$__experimen","getSettings","settings","blockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","filter","pattern","source","inserter","keywords","type","theme","blocks","content","__unstableSkipMigrationLogs","selectPatterns","syncStatus","themePatterns","isResolvingThemePatterns","userPatterns","isResolvingUserPatterns","categories","userPatternCategories","selectUserPatterns","user","wp_pattern_sync_status","full","unsynced","currentCategory","wp_pattern_category","some","catId","find","cat","id","slug","length","hasOwnProperty","getUserPatternCategories","patternPosts","Map","forEach","userCategory","set","usePatterns","postType","rest","appliedCategory","ids","_patterns$map","record","permissions","getEntityRecordsPermissions","patternsWithPermissions","_patterns$map2","index"],"sources":["@wordpress/edit-site/src/components/page-patterns/use-patterns.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect, createSelector } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { filterOutDuplicatesByName } from './utils';\nimport {\n\tEXCLUDED_PATTERN_SOURCES,\n\tPATTERN_TYPES,\n\tPATTERN_SYNC_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\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 selectTemplateParts = createSelector(\n\t( select, categoryId, search = '' ) => {\n\t\tconst { getEntityRecords, isResolving: isResolvingSelector } =\n\t\t\tselect( coreStore );\n\t\tconst { __experimentalGetDefaultTemplatePartAreas } =\n\t\t\tselect( editorStore );\n\t\tconst query = { per_page: -1 };\n\t\tconst templateParts =\n\t\t\tgetEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, query ) ??\n\t\t\tEMPTY_PATTERN_LIST;\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.area === category;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\titem.area === category ||\n\t\t\t\t! templatePartAreas.includes( item.area )\n\t\t\t);\n\t\t};\n\n\t\tconst isResolving = isResolvingSelector( '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 ).isResolving( '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 { isResolving: isResolvingSelector } = select( coreStore );\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 ) =>\n\t\t\t\t\t! EXCLUDED_PATTERN_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\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving: isResolvingSelector( 'getBlockPatterns' ),\n\t\t};\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getBlockPatterns(),\n\t\tselect( coreStore ).isResolving( 'getBlockPatterns' ),\n\t\tunlock( select( editSiteStore ) ).getSettings(),\n\t]\n);\n\nconst selectPatterns = createSelector(\n\t( select, categoryId, syncStatus, search = '' ) => {\n\t\tconst {\n\t\t\tpatterns: themePatterns,\n\t\t\tisResolving: isResolvingThemePatterns,\n\t\t} = selectThemePatterns( select );\n\t\tconst {\n\t\t\tpatterns: userPatterns,\n\t\t\tisResolving: isResolvingUserPatterns,\n\t\t\tcategories: userPatternCategories,\n\t\t} = 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.type === PATTERN_TYPES.user\n\t\t\t\t\t? ( pattern.wp_pattern_sync_status ||\n\t\t\t\t\t\t\tPATTERN_SYNC_TYPES.full ) === 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\tif ( item.type === PATTERN_TYPES.user ) {\n\t\t\t\t\t\treturn item.wp_pattern_category.some(\n\t\t\t\t\t\t\t( catId ) =>\n\t\t\t\t\t\t\t\tuserPatternCategories.find(\n\t\t\t\t\t\t\t\t\t( cat ) => cat.id === catId\n\t\t\t\t\t\t\t\t)?.slug === currentCategory\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn item.categories?.includes( currentCategory );\n\t\t\t\t},\n\t\t\t} );\n\t\t} else {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\thasCategory: ( item ) => {\n\t\t\t\t\tif ( item.type === PATTERN_TYPES.user ) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\tuserPatternCategories?.length &&\n\t\t\t\t\t\t\t( ! item.wp_pattern_category?.length ||\n\t\t\t\t\t\t\t\t! item.wp_pattern_category.some( ( catId ) =>\n\t\t\t\t\t\t\t\t\tuserPatternCategories.find(\n\t\t\t\t\t\t\t\t\t\t( cat ) => cat.id === catId\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t) )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn ! item.hasOwnProperty( 'categories' );\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving: isResolvingThemePatterns || isResolvingUserPatterns,\n\t\t};\n\t},\n\t( select ) => [\n\t\tselectThemePatterns( select ),\n\t\tselectUserPatterns( select ),\n\t]\n);\n\nconst selectUserPatterns = createSelector(\n\t( select, syncStatus, search = '' ) => {\n\t\tconst {\n\t\t\tgetEntityRecords,\n\t\t\tisResolving: isResolvingSelector,\n\t\t\tgetUserPatternCategories,\n\t\t} = select( coreStore );\n\n\t\tconst query = { per_page: -1 };\n\t\tconst patternPosts = 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 = patternPosts ?? EMPTY_PATTERN_LIST;\n\t\tconst isResolving = isResolvingSelector( '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 ) =>\n\t\t\t\t\tpattern.wp_pattern_sync_status ||\n\t\t\t\t\tPATTERN_SYNC_TYPES.full === 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 ).isResolving( '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\tpostType,\n\tcategoryId,\n\t{ search = '', syncStatus } = {}\n) => {\n\tconst { patterns, ...rest } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( postType === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\treturn selectTemplateParts( select, categoryId, search );\n\t\t\t} else if ( postType === PATTERN_TYPES.user && !! categoryId ) {\n\t\t\t\tconst appliedCategory =\n\t\t\t\t\tcategoryId === 'uncategorized' ? '' : categoryId;\n\t\t\t\treturn selectPatterns(\n\t\t\t\t\tselect,\n\t\t\t\t\tappliedCategory,\n\t\t\t\t\tsyncStatus,\n\t\t\t\t\tsearch\n\t\t\t\t);\n\t\t\t} else if ( postType === 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, postType, search, syncStatus ]\n\t);\n\n\tconst ids = useMemo(\n\t\t() => patterns?.map( ( record ) => record.id ) ?? [],\n\t\t[ patterns ]\n\t);\n\n\tconst permissions = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecordsPermissions } = unlock(\n\t\t\t\tselect( coreStore )\n\t\t\t);\n\t\t\treturn getEntityRecordsPermissions( 'postType', postType, ids );\n\t\t},\n\t\t[ ids, postType ]\n\t);\n\n\tconst patternsWithPermissions = useMemo(\n\t\t() =>\n\t\t\tpatterns?.map( ( record, index ) => ( {\n\t\t\t\t...record,\n\t\t\t\tpermissions: permissions[ index ],\n\t\t\t} ) ) ?? [],\n\t\t[ patterns, permissions ]\n\t);\n\n\treturn {\n\t\t...rest,\n\t\tpatterns: patternsWithPermissions,\n\t};\n};\n\nexport default usePatterns;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["parse","useSelect","createSelector","store","coreStore","editorStore","useMemo","filterOutDuplicatesByName","EXCLUDED_PATTERN_SOURCES","PATTERN_TYPES","PATTERN_SYNC_TYPES","TEMPLATE_PART_POST_TYPE","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","unlock","searchItems","editSiteStore","EMPTY_PATTERN_LIST","selectTemplateParts","select","categoryId","search","_getEntityRecords","getEntityRecords","isResolving","isResolvingSelector","__experimentalGetDefaultTemplatePartAreas","query","per_page","templateParts","knownAreas","templatePartAreas","map","area","templatePartHasCategory","item","category","includes","patterns","hasCategory","selectThemePatterns","_settings$__experimen","getSettings","settings","blockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","filter","pattern","source","inserter","keywords","type","theme","blocks","content","__unstableSkipMigrationLogs","selectPatterns","syncStatus","themePatterns","isResolvingThemePatterns","userPatterns","isResolvingUserPatterns","categories","userPatternCategories","selectUserPatterns","user","wp_pattern_sync_status","full","unsynced","currentCategory","wp_pattern_category","some","catId","find","cat","id","slug","length","hasOwnProperty","getUserPatternCategories","patternPosts","Map","forEach","userCategory","set","useAugmentPatternsWithPermissions","idsAndTypes","_patterns$filter$map","record","permissions","getEntityRecordPermissions","reduce","acc","_patterns$map","_permissions$record$i","usePatterns","postType","appliedCategory"],"sources":["@wordpress/edit-site/src/components/page-patterns/use-patterns.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect, createSelector } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { filterOutDuplicatesByName } from './utils';\nimport {\n\tEXCLUDED_PATTERN_SOURCES,\n\tPATTERN_TYPES,\n\tPATTERN_SYNC_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\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 selectTemplateParts = createSelector(\n\t( select, categoryId, search = '' ) => {\n\t\tconst { getEntityRecords, isResolving: isResolvingSelector } =\n\t\t\tselect( coreStore );\n\t\tconst { __experimentalGetDefaultTemplatePartAreas } =\n\t\t\tselect( editorStore );\n\t\tconst query = { per_page: -1 };\n\t\tconst templateParts =\n\t\t\tgetEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, query ) ??\n\t\t\tEMPTY_PATTERN_LIST;\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.area === category;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\titem.area === category ||\n\t\t\t\t! templatePartAreas.includes( item.area )\n\t\t\t);\n\t\t};\n\n\t\tconst isResolving = isResolvingSelector( '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 ).isResolving( '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 { isResolving: isResolvingSelector } = select( coreStore );\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 ) =>\n\t\t\t\t\t! EXCLUDED_PATTERN_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\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving: isResolvingSelector( 'getBlockPatterns' ),\n\t\t};\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getBlockPatterns(),\n\t\tselect( coreStore ).isResolving( 'getBlockPatterns' ),\n\t\tunlock( select( editSiteStore ) ).getSettings(),\n\t]\n);\n\nconst selectPatterns = createSelector(\n\t( select, categoryId, syncStatus, search = '' ) => {\n\t\tconst {\n\t\t\tpatterns: themePatterns,\n\t\t\tisResolving: isResolvingThemePatterns,\n\t\t} = selectThemePatterns( select );\n\t\tconst {\n\t\t\tpatterns: userPatterns,\n\t\t\tisResolving: isResolvingUserPatterns,\n\t\t\tcategories: userPatternCategories,\n\t\t} = 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.type === PATTERN_TYPES.user\n\t\t\t\t\t? ( pattern.wp_pattern_sync_status ||\n\t\t\t\t\t\t\tPATTERN_SYNC_TYPES.full ) === 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\tif ( item.type === PATTERN_TYPES.user ) {\n\t\t\t\t\t\treturn item.wp_pattern_category.some(\n\t\t\t\t\t\t\t( catId ) =>\n\t\t\t\t\t\t\t\tuserPatternCategories.find(\n\t\t\t\t\t\t\t\t\t( cat ) => cat.id === catId\n\t\t\t\t\t\t\t\t)?.slug === currentCategory\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn item.categories?.includes( currentCategory );\n\t\t\t\t},\n\t\t\t} );\n\t\t} else {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\thasCategory: ( item ) => {\n\t\t\t\t\tif ( item.type === PATTERN_TYPES.user ) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\tuserPatternCategories?.length &&\n\t\t\t\t\t\t\t( ! item.wp_pattern_category?.length ||\n\t\t\t\t\t\t\t\t! item.wp_pattern_category.some( ( catId ) =>\n\t\t\t\t\t\t\t\t\tuserPatternCategories.find(\n\t\t\t\t\t\t\t\t\t\t( cat ) => cat.id === catId\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t) )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn ! item.hasOwnProperty( 'categories' );\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving: isResolvingThemePatterns || isResolvingUserPatterns,\n\t\t};\n\t},\n\t( select ) => [\n\t\tselectThemePatterns( select ),\n\t\tselectUserPatterns( select ),\n\t]\n);\n\nconst selectUserPatterns = createSelector(\n\t( select, syncStatus, search = '' ) => {\n\t\tconst {\n\t\t\tgetEntityRecords,\n\t\t\tisResolving: isResolvingSelector,\n\t\t\tgetUserPatternCategories,\n\t\t} = select( coreStore );\n\n\t\tconst query = { per_page: -1 };\n\t\tconst patternPosts = 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 = patternPosts ?? EMPTY_PATTERN_LIST;\n\t\tconst isResolving = isResolvingSelector( '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 ) =>\n\t\t\t\t\tpattern.wp_pattern_sync_status ||\n\t\t\t\t\tPATTERN_SYNC_TYPES.full === 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 ).isResolving( '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 function useAugmentPatternsWithPermissions( patterns ) {\n\tconst idsAndTypes = useMemo(\n\t\t() =>\n\t\t\tpatterns\n\t\t\t\t?.filter( ( record ) => record.type !== PATTERN_TYPES.theme )\n\t\t\t\t.map( ( record ) => [ record.type, record.id ] ) ?? [],\n\t\t[ patterns ]\n\t);\n\n\tconst permissions = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecordPermissions } = unlock(\n\t\t\t\tselect( coreStore )\n\t\t\t);\n\t\t\treturn idsAndTypes.reduce( ( acc, [ type, id ] ) => {\n\t\t\t\tacc[ id ] = getEntityRecordPermissions( 'postType', type, id );\n\t\t\t\treturn acc;\n\t\t\t}, {} );\n\t\t},\n\t\t[ idsAndTypes ]\n\t);\n\n\treturn useMemo(\n\t\t() =>\n\t\t\tpatterns?.map( ( record ) => ( {\n\t\t\t\t...record,\n\t\t\t\tpermissions: permissions?.[ record.id ] ?? {},\n\t\t\t} ) ) ?? [],\n\t\t[ patterns, permissions ]\n\t);\n}\n\nexport const usePatterns = (\n\tpostType,\n\tcategoryId,\n\t{ search = '', syncStatus } = {}\n) => {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tif ( postType === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\treturn selectTemplateParts( select, categoryId, search );\n\t\t\t} else if ( postType === PATTERN_TYPES.user && !! categoryId ) {\n\t\t\t\tconst appliedCategory =\n\t\t\t\t\tcategoryId === 'uncategorized' ? '' : categoryId;\n\t\t\t\treturn selectPatterns(\n\t\t\t\t\tselect,\n\t\t\t\t\tappliedCategory,\n\t\t\t\t\tsyncStatus,\n\t\t\t\t\tsearch\n\t\t\t\t);\n\t\t\t} else if ( postType === 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, postType, search, syncStatus ]\n\t);\n};\n\nexport default usePatterns;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,86 +7,86 @@ import clsx from 'clsx';
|
|
|
7
7
|
* WordPress dependencies
|
|
8
8
|
*/
|
|
9
9
|
import { __ } from '@wordpress/i18n';
|
|
10
|
-
import { DataForm
|
|
11
|
-
import { useDispatch, useSelect
|
|
10
|
+
import { DataForm } from '@wordpress/dataviews';
|
|
11
|
+
import { useDispatch, useSelect } from '@wordpress/data';
|
|
12
12
|
import { store as coreDataStore } from '@wordpress/core-data';
|
|
13
|
-
import {
|
|
14
|
-
import { useState, useMemo } from '@wordpress/element';
|
|
13
|
+
import { __experimentalVStack as VStack } from '@wordpress/components';
|
|
14
|
+
import { useState, useMemo, useEffect } from '@wordpress/element';
|
|
15
|
+
import { privateApis as editorPrivateApis } from '@wordpress/editor';
|
|
15
16
|
|
|
16
17
|
/**
|
|
17
18
|
* Internal dependencies
|
|
18
19
|
*/
|
|
19
20
|
import Page from '../page';
|
|
20
21
|
import usePostFields from '../post-fields';
|
|
22
|
+
import { unlock } from '../../lock-unlock';
|
|
21
23
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
22
24
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
25
|
+
const {
|
|
26
|
+
PostCardPanel
|
|
27
|
+
} = unlock(editorPrivateApis);
|
|
23
28
|
function PostEditForm({
|
|
24
29
|
postType,
|
|
25
30
|
postId
|
|
26
31
|
}) {
|
|
27
32
|
const ids = useMemo(() => postId.split(','), [postId]);
|
|
28
33
|
const {
|
|
29
|
-
|
|
34
|
+
record
|
|
30
35
|
} = useSelect(select => {
|
|
31
|
-
if (ids.length !== 1) {}
|
|
32
36
|
return {
|
|
33
|
-
|
|
37
|
+
record: ids.length === 1 ? select(coreDataStore).getEditedEntityRecord('postType', postType, ids[0]) : null
|
|
34
38
|
};
|
|
35
39
|
}, [postType, ids]);
|
|
36
|
-
const
|
|
40
|
+
const [multiEdits, setMultiEdits] = useState({});
|
|
37
41
|
const {
|
|
38
|
-
|
|
42
|
+
editEntityRecord
|
|
39
43
|
} = useDispatch(coreDataStore);
|
|
40
44
|
const {
|
|
41
|
-
fields
|
|
45
|
+
fields: _fields
|
|
42
46
|
} = usePostFields();
|
|
47
|
+
const fields = useMemo(() => _fields?.map(field => {
|
|
48
|
+
if (field.id === 'status') {
|
|
49
|
+
return {
|
|
50
|
+
...field,
|
|
51
|
+
elements: field.elements.filter(element => element.value !== 'trash')
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
return field;
|
|
55
|
+
}), [_fields]);
|
|
43
56
|
const form = {
|
|
44
57
|
type: 'panel',
|
|
45
|
-
fields: ['title', 'author']
|
|
58
|
+
fields: ['title', 'status', 'date', 'author', 'comment_status']
|
|
46
59
|
};
|
|
47
|
-
const
|
|
48
|
-
const itemWithEdits = useMemo(() => {
|
|
49
|
-
return {
|
|
50
|
-
...initialEdits,
|
|
51
|
-
...edits
|
|
52
|
-
};
|
|
53
|
-
}, [initialEdits, edits]);
|
|
54
|
-
const onSubmit = async event => {
|
|
55
|
-
event.preventDefault();
|
|
56
|
-
if (!isItemValid(itemWithEdits, fields, form)) {
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
const {
|
|
60
|
-
getEntityRecord
|
|
61
|
-
} = registry.resolveSelect(coreDataStore);
|
|
60
|
+
const onChange = edits => {
|
|
62
61
|
for (const id of ids) {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
62
|
+
if (edits.status !== 'future' && record.status === 'future' && new Date(record.date) > new Date()) {
|
|
63
|
+
edits.date = null;
|
|
64
|
+
}
|
|
65
|
+
if (edits.status === 'private' && record.password) {
|
|
66
|
+
edits.password = '';
|
|
67
|
+
}
|
|
68
|
+
editEntityRecord('postType', postType, id, edits);
|
|
69
|
+
if (ids.length > 1) {
|
|
70
|
+
setMultiEdits(prev => ({
|
|
71
|
+
...prev,
|
|
72
|
+
...edits
|
|
73
|
+
}));
|
|
74
|
+
}
|
|
68
75
|
}
|
|
69
|
-
setEdits({});
|
|
70
76
|
};
|
|
71
|
-
|
|
77
|
+
useEffect(() => {
|
|
78
|
+
setMultiEdits({});
|
|
79
|
+
}, [ids]);
|
|
72
80
|
return /*#__PURE__*/_jsxs(VStack, {
|
|
73
|
-
as: "form",
|
|
74
|
-
onSubmit: onSubmit,
|
|
75
81
|
spacing: 4,
|
|
76
|
-
children: [/*#__PURE__*/_jsx(
|
|
77
|
-
|
|
82
|
+
children: [ids.length === 1 && /*#__PURE__*/_jsx(PostCardPanel, {
|
|
83
|
+
postType: postType,
|
|
84
|
+
postId: ids[0]
|
|
85
|
+
}), /*#__PURE__*/_jsx(DataForm, {
|
|
86
|
+
data: ids.length === 1 ? record : multiEdits,
|
|
78
87
|
fields: fields,
|
|
79
88
|
form: form,
|
|
80
|
-
onChange:
|
|
81
|
-
}), /*#__PURE__*/_jsx(FlexItem, {
|
|
82
|
-
children: /*#__PURE__*/_jsx(Button, {
|
|
83
|
-
variant: "primary",
|
|
84
|
-
type: "submit",
|
|
85
|
-
accessibleWhenDisabled: true,
|
|
86
|
-
disabled: isUpdateDisabled,
|
|
87
|
-
__next40pxDefaultSize: true,
|
|
88
|
-
children: __('Update')
|
|
89
|
-
})
|
|
89
|
+
onChange: onChange
|
|
90
90
|
})]
|
|
91
91
|
});
|
|
92
92
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","__","DataForm","
|
|
1
|
+
{"version":3,"names":["clsx","__","DataForm","useDispatch","useSelect","store","coreDataStore","__experimentalVStack","VStack","useState","useMemo","useEffect","privateApis","editorPrivateApis","Page","usePostFields","unlock","jsx","_jsx","jsxs","_jsxs","PostCardPanel","PostEditForm","postType","postId","ids","split","record","select","length","getEditedEntityRecord","multiEdits","setMultiEdits","editEntityRecord","fields","_fields","map","field","id","elements","filter","element","value","form","type","onChange","edits","status","Date","date","password","prev","spacing","children","data","PostEdit","className","label"],"sources":["@wordpress/edit-site/src/components/post-edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { DataForm } from '@wordpress/dataviews';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as coreDataStore } from '@wordpress/core-data';\nimport { __experimentalVStack as VStack } from '@wordpress/components';\nimport { useState, useMemo, useEffect } from '@wordpress/element';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport usePostFields from '../post-fields';\nimport { unlock } from '../../lock-unlock';\n\nconst { PostCardPanel } = unlock( editorPrivateApis );\n\nfunction PostEditForm( { postType, postId } ) {\n\tconst ids = useMemo( () => postId.split( ',' ), [ postId ] );\n\tconst { record } = useSelect(\n\t\t( select ) => {\n\t\t\treturn {\n\t\t\t\trecord:\n\t\t\t\t\tids.length === 1\n\t\t\t\t\t\t? select( coreDataStore ).getEditedEntityRecord(\n\t\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\t\tpostType,\n\t\t\t\t\t\t\t\tids[ 0 ]\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: null,\n\t\t\t};\n\t\t},\n\t\t[ postType, ids ]\n\t);\n\tconst [ multiEdits, setMultiEdits ] = useState( {} );\n\tconst { editEntityRecord } = useDispatch( coreDataStore );\n\tconst { fields: _fields } = usePostFields();\n\tconst fields = useMemo(\n\t\t() =>\n\t\t\t_fields?.map( ( field ) => {\n\t\t\t\tif ( field.id === 'status' ) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...field,\n\t\t\t\t\t\telements: field.elements.filter(\n\t\t\t\t\t\t\t( element ) => element.value !== 'trash'\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\treturn field;\n\t\t\t} ),\n\t\t[ _fields ]\n\t);\n\tconst form = {\n\t\ttype: 'panel',\n\t\tfields: [ 'title', 'status', 'date', 'author', 'comment_status' ],\n\t};\n\tconst onChange = ( edits ) => {\n\t\tfor ( const id of ids ) {\n\t\t\tif (\n\t\t\t\tedits.status !== 'future' &&\n\t\t\t\trecord.status === 'future' &&\n\t\t\t\tnew Date( record.date ) > new Date()\n\t\t\t) {\n\t\t\t\tedits.date = null;\n\t\t\t}\n\t\t\tif ( edits.status === 'private' && record.password ) {\n\t\t\t\tedits.password = '';\n\t\t\t}\n\t\t\teditEntityRecord( 'postType', postType, id, edits );\n\t\t\tif ( ids.length > 1 ) {\n\t\t\t\tsetMultiEdits( ( prev ) => ( {\n\t\t\t\t\t...prev,\n\t\t\t\t\t...edits,\n\t\t\t\t} ) );\n\t\t\t}\n\t\t}\n\t};\n\tuseEffect( () => {\n\t\tsetMultiEdits( {} );\n\t}, [ ids ] );\n\n\treturn (\n\t\t<VStack spacing={ 4 }>\n\t\t\t{ ids.length === 1 && (\n\t\t\t\t<PostCardPanel postType={ postType } postId={ ids[ 0 ] } />\n\t\t\t) }\n\t\t\t<DataForm\n\t\t\t\tdata={ ids.length === 1 ? record : multiEdits }\n\t\t\t\tfields={ fields }\n\t\t\t\tform={ form }\n\t\t\t\tonChange={ onChange }\n\t\t\t/>\n\t\t</VStack>\n\t);\n}\n\nexport function PostEdit( { postType, postId } ) {\n\treturn (\n\t\t<Page\n\t\t\tclassName={ clsx( 'edit-site-post-edit', {\n\t\t\t\t'is-empty': ! postId,\n\t\t\t} ) }\n\t\t\tlabel={ __( 'Post Edit' ) }\n\t\t>\n\t\t\t{ postId && (\n\t\t\t\t<PostEditForm postType={ postType } postId={ postId } />\n\t\t\t) }\n\t\t\t{ ! postId && <p>{ __( 'Select a page to edit' ) }</p> }\n\t\t</Page>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,QAAQ,QAAQ,sBAAsB;AAC/C,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,KAAK,IAAIC,aAAa,QAAQ,sBAAsB;AAC7D,SAASC,oBAAoB,IAAIC,MAAM,QAAQ,uBAAuB;AACtE,SAASC,QAAQ,EAAEC,OAAO,EAAEC,SAAS,QAAQ,oBAAoB;AACjE,SAASC,WAAW,IAAIC,iBAAiB,QAAQ,mBAAmB;;AAEpE;AACA;AACA;AACA,OAAOC,IAAI,MAAM,SAAS;AAC1B,OAAOC,aAAa,MAAM,gBAAgB;AAC1C,SAASC,MAAM,QAAQ,mBAAmB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAE3C,MAAM;EAAEC;AAAc,CAAC,GAAGL,MAAM,CAAEH,iBAAkB,CAAC;AAErD,SAASS,YAAYA,CAAE;EAAEC,QAAQ;EAAEC;AAAO,CAAC,EAAG;EAC7C,MAAMC,GAAG,GAAGf,OAAO,CAAE,MAAMc,MAAM,CAACE,KAAK,CAAE,GAAI,CAAC,EAAE,CAAEF,MAAM,CAAG,CAAC;EAC5D,MAAM;IAAEG;EAAO,CAAC,GAAGvB,SAAS,CACzBwB,MAAM,IAAM;IACb,OAAO;MACND,MAAM,EACLF,GAAG,CAACI,MAAM,KAAK,CAAC,GACbD,MAAM,CAAEtB,aAAc,CAAC,CAACwB,qBAAqB,CAC7C,UAAU,EACVP,QAAQ,EACRE,GAAG,CAAE,CAAC,CACN,CAAC,GACD;IACL,CAAC;EACF,CAAC,EACD,CAAEF,QAAQ,EAAEE,GAAG,CAChB,CAAC;EACD,MAAM,CAAEM,UAAU,EAAEC,aAAa,CAAE,GAAGvB,QAAQ,CAAE,CAAC,CAAE,CAAC;EACpD,MAAM;IAAEwB;EAAiB,CAAC,GAAG9B,WAAW,CAAEG,aAAc,CAAC;EACzD,MAAM;IAAE4B,MAAM,EAAEC;EAAQ,CAAC,GAAGpB,aAAa,CAAC,CAAC;EAC3C,MAAMmB,MAAM,GAAGxB,OAAO,CACrB,MACCyB,OAAO,EAAEC,GAAG,CAAIC,KAAK,IAAM;IAC1B,IAAKA,KAAK,CAACC,EAAE,KAAK,QAAQ,EAAG;MAC5B,OAAO;QACN,GAAGD,KAAK;QACRE,QAAQ,EAAEF,KAAK,CAACE,QAAQ,CAACC,MAAM,CAC5BC,OAAO,IAAMA,OAAO,CAACC,KAAK,KAAK,OAClC;MACD,CAAC;IACF;IACA,OAAOL,KAAK;EACb,CAAE,CAAC,EACJ,CAAEF,OAAO,CACV,CAAC;EACD,MAAMQ,IAAI,GAAG;IACZC,IAAI,EAAE,OAAO;IACbV,MAAM,EAAE,CAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB;EAChE,CAAC;EACD,MAAMW,QAAQ,GAAKC,KAAK,IAAM;IAC7B,KAAM,MAAMR,EAAE,IAAIb,GAAG,EAAG;MACvB,IACCqB,KAAK,CAACC,MAAM,KAAK,QAAQ,IACzBpB,MAAM,CAACoB,MAAM,KAAK,QAAQ,IAC1B,IAAIC,IAAI,CAAErB,MAAM,CAACsB,IAAK,CAAC,GAAG,IAAID,IAAI,CAAC,CAAC,EACnC;QACDF,KAAK,CAACG,IAAI,GAAG,IAAI;MAClB;MACA,IAAKH,KAAK,CAACC,MAAM,KAAK,SAAS,IAAIpB,MAAM,CAACuB,QAAQ,EAAG;QACpDJ,KAAK,CAACI,QAAQ,GAAG,EAAE;MACpB;MACAjB,gBAAgB,CAAE,UAAU,EAAEV,QAAQ,EAAEe,EAAE,EAAEQ,KAAM,CAAC;MACnD,IAAKrB,GAAG,CAACI,MAAM,GAAG,CAAC,EAAG;QACrBG,aAAa,CAAImB,IAAI,KAAQ;UAC5B,GAAGA,IAAI;UACP,GAAGL;QACJ,CAAC,CAAG,CAAC;MACN;IACD;EACD,CAAC;EACDnC,SAAS,CAAE,MAAM;IAChBqB,aAAa,CAAE,CAAC,CAAE,CAAC;EACpB,CAAC,EAAE,CAAEP,GAAG,CAAG,CAAC;EAEZ,oBACCL,KAAA,CAACZ,MAAM;IAAC4C,OAAO,EAAG,CAAG;IAAAC,QAAA,GAClB5B,GAAG,CAACI,MAAM,KAAK,CAAC,iBACjBX,IAAA,CAACG,aAAa;MAACE,QAAQ,EAAGA,QAAU;MAACC,MAAM,EAAGC,GAAG,CAAE,CAAC;IAAI,CAAE,CAC1D,eACDP,IAAA,CAAChB,QAAQ;MACRoD,IAAI,EAAG7B,GAAG,CAACI,MAAM,KAAK,CAAC,GAAGF,MAAM,GAAGI,UAAY;MAC/CG,MAAM,EAAGA,MAAQ;MACjBS,IAAI,EAAGA,IAAM;MACbE,QAAQ,EAAGA;IAAU,CACrB,CAAC;EAAA,CACK,CAAC;AAEX;AAEA,OAAO,SAASU,QAAQA,CAAE;EAAEhC,QAAQ;EAAEC;AAAO,CAAC,EAAG;EAChD,oBACCJ,KAAA,CAACN,IAAI;IACJ0C,SAAS,EAAGxD,IAAI,CAAE,qBAAqB,EAAE;MACxC,UAAU,EAAE,CAAEwB;IACf,CAAE,CAAG;IACLiC,KAAK,EAAGxD,EAAE,CAAE,WAAY,CAAG;IAAAoD,QAAA,GAEzB7B,MAAM,iBACPN,IAAA,CAACI,YAAY;MAACC,QAAQ,EAAGA,QAAU;MAACC,MAAM,EAAGA;IAAQ,CAAE,CACvD,EACC,CAAEA,MAAM,iBAAIN,IAAA;MAAAmC,QAAA,EAAKpD,EAAE,CAAE,uBAAwB;IAAC,CAAK,CAAC;EAAA,CACjD,CAAC;AAET","ignoreList":[]}
|
|
@@ -29,23 +29,28 @@ import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
29
29
|
const STATUSES = [{
|
|
30
30
|
value: 'draft',
|
|
31
31
|
label: __('Draft'),
|
|
32
|
-
icon: drafts
|
|
32
|
+
icon: drafts,
|
|
33
|
+
description: __('Not ready to publish.')
|
|
33
34
|
}, {
|
|
34
35
|
value: 'future',
|
|
35
36
|
label: __('Scheduled'),
|
|
36
|
-
icon: scheduled
|
|
37
|
+
icon: scheduled,
|
|
38
|
+
description: __('Publish automatically on a chosen date.')
|
|
37
39
|
}, {
|
|
38
40
|
value: 'pending',
|
|
39
41
|
label: __('Pending Review'),
|
|
40
|
-
icon: pending
|
|
42
|
+
icon: pending,
|
|
43
|
+
description: __('Waiting for review before publishing.')
|
|
41
44
|
}, {
|
|
42
45
|
value: 'private',
|
|
43
46
|
label: __('Private'),
|
|
44
|
-
icon: notAllowed
|
|
47
|
+
icon: notAllowed,
|
|
48
|
+
description: __('Only visible to site admins and editors.')
|
|
45
49
|
}, {
|
|
46
50
|
value: 'publish',
|
|
47
51
|
label: __('Published'),
|
|
48
|
-
icon: published
|
|
52
|
+
icon: published,
|
|
53
|
+
description: __('Visible to everyone.')
|
|
49
54
|
}, {
|
|
50
55
|
value: 'trash',
|
|
51
56
|
label: __('Trash'),
|
|
@@ -239,16 +244,10 @@ function usePostFields(viewType) {
|
|
|
239
244
|
}, {
|
|
240
245
|
label: __('Status'),
|
|
241
246
|
id: 'status',
|
|
242
|
-
|
|
243
|
-
item
|
|
244
|
-
}) => {
|
|
245
|
-
var _STATUSES$find$label;
|
|
246
|
-
return (_STATUSES$find$label = STATUSES.find(({
|
|
247
|
-
value
|
|
248
|
-
}) => value === item.status)?.label) !== null && _STATUSES$find$label !== void 0 ? _STATUSES$find$label : item.status;
|
|
249
|
-
},
|
|
247
|
+
type: 'text',
|
|
250
248
|
elements: STATUSES,
|
|
251
249
|
render: PostStatusField,
|
|
250
|
+
Edit: 'radio',
|
|
252
251
|
enableSorting: false,
|
|
253
252
|
filterBy: {
|
|
254
253
|
operators: [OPERATOR_IS_ANY]
|
|
@@ -256,6 +255,7 @@ function usePostFields(viewType) {
|
|
|
256
255
|
}, {
|
|
257
256
|
label: __('Date'),
|
|
258
257
|
id: 'date',
|
|
258
|
+
type: 'datetime',
|
|
259
259
|
render: ({
|
|
260
260
|
item
|
|
261
261
|
}) => {
|
|
@@ -300,6 +300,24 @@ function usePostFields(viewType) {
|
|
|
300
300
|
children: getFormattedDate(item.date)
|
|
301
301
|
});
|
|
302
302
|
}
|
|
303
|
+
}, {
|
|
304
|
+
id: 'comment_status',
|
|
305
|
+
label: __('Discussion'),
|
|
306
|
+
type: 'text',
|
|
307
|
+
Edit: 'radio',
|
|
308
|
+
enableSorting: false,
|
|
309
|
+
filterBy: {
|
|
310
|
+
operators: []
|
|
311
|
+
},
|
|
312
|
+
elements: [{
|
|
313
|
+
value: 'open',
|
|
314
|
+
label: __('Open'),
|
|
315
|
+
description: __('Visitors can add new comments and replies.')
|
|
316
|
+
}, {
|
|
317
|
+
value: 'closed',
|
|
318
|
+
label: __('Closed'),
|
|
319
|
+
description: __('Visitors cannot add new comments or replies. Existing comments remain visible.')
|
|
320
|
+
}]
|
|
303
321
|
}], [authors, viewType, frontPageId, postsPageId]);
|
|
304
322
|
return {
|
|
305
323
|
isLoading: isLoadingAuthors,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","__","sprintf","decodeEntities","createInterpolateElement","useMemo","useState","dateI18n","getDate","getSettings","trash","drafts","published","scheduled","pending","notAllowed","commentAuthorAvatar","authorIcon","__experimentalHStack","HStack","Icon","useSelect","useEntityRecords","store","coreStore","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","OPERATOR_IS_ANY","default","Link","useLink","Media","jsx","_jsx","jsxs","_jsxs","STATUSES","value","label","icon","getFormattedDate","dateToDisplay","formats","datetimeAbbreviated","FeaturedImage","item","viewType","isDisabled","status","onClick","postId","id","postType","type","canvas","hasMedia","featured_media","size","media","className","renderButton","children","title","rendered","PostStatusField","find","alignment","spacing","PostAuthorField","text","imageUrl","select","getUser","user","author","avatar_urls","name","isImageLoaded","setIsImageLoaded","onLoad","alt","src","usePostFields","records","authors","isResolving","isLoadingAuthors","per_page","frontPageId","postsPageId","getEntityRecord","siteSettings","page_on_front","page_for_posts","fields","getValue","render","enableSorting","raw","addLink","includes","renderedTitle","params","suffix","justify","enableHiding","elements","map","sort","a","b","direction","nameA","_embedded","nameB","localeCompare","_STATUSES$find$label","filterBy","operators","isDraftOrPrivate","date","span","time","isScheduled","isPublished","modified","isPending","isLoading"],"sources":["@wordpress/edit-site/src/components/post-fields/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport {\n\tcreateInterpolateElement,\n\tuseMemo,\n\tuseState,\n} from '@wordpress/element';\nimport { dateI18n, getDate, getSettings } from '@wordpress/date';\nimport {\n\ttrash,\n\tdrafts,\n\tpublished,\n\tscheduled,\n\tpending,\n\tnotAllowed,\n\tcommentAuthorAvatar as authorIcon,\n} from '@wordpress/icons';\nimport { __experimentalHStack as HStack, Icon } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { useEntityRecords, store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n\tOPERATOR_IS_ANY,\n} from '../../utils/constants';\nimport { default as Link, useLink } from '../routes/link';\nimport Media from '../media';\n\n// See https://github.com/WordPress/gutenberg/issues/55886\n// We do not support custom statutes at the moment.\nconst STATUSES = [\n\t{ value: 'draft', label: __( 'Draft' ), icon: drafts },\n\t{ value: 'future', label: __( 'Scheduled' ), icon: scheduled },\n\t{ value: 'pending', label: __( 'Pending Review' ), icon: pending },\n\t{ value: 'private', label: __( 'Private' ), icon: notAllowed },\n\t{ value: 'publish', label: __( 'Published' ), icon: published },\n\t{ value: 'trash', label: __( 'Trash' ), icon: trash },\n];\n\nconst getFormattedDate = ( dateToDisplay ) =>\n\tdateI18n(\n\t\tgetSettings().formats.datetimeAbbreviated,\n\t\tgetDate( dateToDisplay )\n\t);\n\nfunction FeaturedImage( { item, viewType } ) {\n\tconst isDisabled = item.status === 'trash';\n\tconst { onClick } = useLink( {\n\t\tpostId: item.id,\n\t\tpostType: item.type,\n\t\tcanvas: 'edit',\n\t} );\n\tconst hasMedia = !! item.featured_media;\n\tconst size =\n\t\tviewType === LAYOUT_GRID\n\t\t\t? [ 'large', 'full', 'medium', 'thumbnail' ]\n\t\t\t: [ 'thumbnail', 'medium', 'large', 'full' ];\n\tconst media = hasMedia ? (\n\t\t<Media\n\t\t\tclassName=\"edit-site-post-list__featured-image\"\n\t\t\tid={ item.featured_media }\n\t\t\tsize={ size }\n\t\t/>\n\t) : null;\n\tconst renderButton = viewType !== LAYOUT_LIST && ! isDisabled;\n\treturn (\n\t\t<div\n\t\t\tclassName={ `edit-site-post-list__featured-image-wrapper is-layout-${ viewType }` }\n\t\t>\n\t\t\t{ renderButton ? (\n\t\t\t\t<button\n\t\t\t\t\tclassName=\"edit-site-post-list__featured-image-button\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\taria-label={ item.title?.rendered || __( '(no title)' ) }\n\t\t\t\t>\n\t\t\t\t\t{ media }\n\t\t\t\t</button>\n\t\t\t) : (\n\t\t\t\tmedia\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction PostStatusField( { item } ) {\n\tconst status = STATUSES.find( ( { value } ) => value === item.status );\n\tconst label = status?.label || item.status;\n\tconst icon = status?.icon;\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 0 }>\n\t\t\t{ icon && (\n\t\t\t\t<div className=\"edit-site-post-list__status-icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span>{ label }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction PostAuthorField( { item } ) {\n\tconst { text, imageUrl } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getUser } = select( coreStore );\n\t\t\tconst user = getUser( item.author );\n\t\t\treturn {\n\t\t\t\timageUrl: user?.avatar_urls?.[ 48 ],\n\t\t\t\ttext: user?.name,\n\t\t\t};\n\t\t},\n\t\t[ item ]\n\t);\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 0 }>\n\t\t\t{ !! imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx( 'page-templates-author-field__avatar', {\n\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt={ __( 'Author avatar' ) }\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ authorIcon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction usePostFields( viewType ) {\n\tconst { records: authors, isResolving: isLoadingAuthors } =\n\t\tuseEntityRecords( 'root', 'user', { per_page: -1 } );\n\n\tconst { frontPageId, postsPageId } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst siteSettings = getEntityRecord( 'root', 'site' );\n\t\treturn {\n\t\t\tfrontPageId: siteSettings?.page_on_front,\n\t\t\tpostsPageId: siteSettings?.page_for_posts,\n\t\t};\n\t}, [] );\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tid: 'featured-image',\n\t\t\t\tlabel: __( 'Featured Image' ),\n\t\t\t\tgetValue: ( { item } ) => item.featured_media,\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<FeaturedImage item={ item } viewType={ viewType } />\n\t\t\t\t),\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\ttype: 'text',\n\t\t\t\tgetValue: ( { item } ) =>\n\t\t\t\t\ttypeof item.title === 'string'\n\t\t\t\t\t\t? item.title\n\t\t\t\t\t\t: item.title?.raw,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst addLink =\n\t\t\t\t\t\t[ LAYOUT_TABLE, LAYOUT_GRID ].includes( viewType ) &&\n\t\t\t\t\t\titem.status !== 'trash';\n\t\t\t\t\tconst renderedTitle =\n\t\t\t\t\t\ttypeof item.title === 'string'\n\t\t\t\t\t\t\t? item.title\n\t\t\t\t\t\t\t: item.title?.rendered;\n\t\t\t\t\tconst title = addLink ? (\n\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\tpostId: item.id,\n\t\t\t\t\t\t\t\tpostType: item.type,\n\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities( renderedTitle ) ||\n\t\t\t\t\t\t\t\t__( '(no title)' ) }\n\t\t\t\t\t\t</Link>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t{ decodeEntities( renderedTitle ) ||\n\t\t\t\t\t\t\t\t__( '(no title)' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t);\n\n\t\t\t\t\tlet suffix = '';\n\t\t\t\t\tif ( item.id === frontPageId ) {\n\t\t\t\t\t\tsuffix = (\n\t\t\t\t\t\t\t<span className=\"edit-site-post-list__title-badge\">\n\t\t\t\t\t\t\t\t{ __( 'Homepage' ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( item.id === postsPageId ) {\n\t\t\t\t\t\tsuffix = (\n\t\t\t\t\t\t\t<span className=\"edit-site-post-list__title-badge\">\n\t\t\t\t\t\t\t\t{ __( 'Posts Page' ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<HStack\n\t\t\t\t\t\t\tclassName=\"edit-site-post-list__title\"\n\t\t\t\t\t\t\talignment=\"center\"\n\t\t\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t\t{ suffix }\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\ttype: 'integer',\n\t\t\t\telements:\n\t\t\t\t\tauthors?.map( ( { id, name } ) => ( {\n\t\t\t\t\t\tvalue: id,\n\t\t\t\t\t\tlabel: name,\n\t\t\t\t\t} ) ) || [],\n\t\t\t\trender: PostAuthorField,\n\t\t\t\tsort: ( a, b, direction ) => {\n\t\t\t\t\tconst nameA = a._embedded?.author?.[ 0 ]?.name || '';\n\t\t\t\t\tconst nameB = b._embedded?.author?.[ 0 ]?.name || '';\n\n\t\t\t\t\treturn direction === 'asc'\n\t\t\t\t\t\t? nameA.localeCompare( nameB )\n\t\t\t\t\t\t: nameB.localeCompare( nameA );\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: __( 'Status' ),\n\t\t\t\tid: 'status',\n\t\t\t\tgetValue: ( { item } ) =>\n\t\t\t\t\tSTATUSES.find( ( { value } ) => value === item.status )\n\t\t\t\t\t\t?.label ?? item.status,\n\t\t\t\telements: STATUSES,\n\t\t\t\trender: PostStatusField,\n\t\t\t\tenableSorting: false,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [ OPERATOR_IS_ANY ],\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: __( 'Date' ),\n\t\t\t\tid: 'date',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst isDraftOrPrivate = [ 'draft', 'private' ].includes(\n\t\t\t\t\t\titem.status\n\t\t\t\t\t);\n\t\t\t\t\tif ( isDraftOrPrivate ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: page creation date */\n\t\t\t\t\t\t\t\t__( '<span>Modified: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( item.date )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst isScheduled = item.status === 'future';\n\t\t\t\t\tif ( isScheduled ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: page creation date */\n\t\t\t\t\t\t\t\t__( '<span>Scheduled: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( item.date )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst isPublished = item.status === 'publish';\n\t\t\t\t\tif ( isPublished ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: page creation time */\n\t\t\t\t\t\t\t\t__( '<span>Published: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( item.date )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Pending posts show the modified date if it's newer.\n\t\t\t\t\tconst dateToDisplay =\n\t\t\t\t\t\tgetDate( item.modified ) > getDate( item.date )\n\t\t\t\t\t\t\t? item.modified\n\t\t\t\t\t\t\t: item.date;\n\n\t\t\t\t\tconst isPending = item.status === 'pending';\n\t\t\t\t\tif ( isPending ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: the newest of created or modified date for the page */\n\t\t\t\t\t\t\t\t__( '<span>Modified: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( dateToDisplay )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Unknow status.\n\t\t\t\t\treturn <time>{ getFormattedDate( item.date ) }</time>;\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t\t[ authors, viewType, frontPageId, postsPageId ]\n\t);\n\n\treturn {\n\t\tisLoading: isLoadingAuthors,\n\t\tfields,\n\t};\n}\n\nexport default usePostFields;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","__","sprintf","decodeEntities","createInterpolateElement","useMemo","useState","dateI18n","getDate","getSettings","trash","drafts","published","scheduled","pending","notAllowed","commentAuthorAvatar","authorIcon","__experimentalHStack","HStack","Icon","useSelect","useEntityRecords","store","coreStore","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","OPERATOR_IS_ANY","default","Link","useLink","Media","jsx","_jsx","jsxs","_jsxs","STATUSES","value","label","icon","description","getFormattedDate","dateToDisplay","formats","datetimeAbbreviated","FeaturedImage","item","viewType","isDisabled","status","onClick","postId","id","postType","type","canvas","hasMedia","featured_media","size","media","className","renderButton","children","title","rendered","PostStatusField","find","alignment","spacing","PostAuthorField","text","imageUrl","select","getUser","user","author","avatar_urls","name","isImageLoaded","setIsImageLoaded","onLoad","alt","src","usePostFields","records","authors","isResolving","isLoadingAuthors","per_page","frontPageId","postsPageId","getEntityRecord","siteSettings","page_on_front","page_for_posts","fields","getValue","render","enableSorting","raw","addLink","includes","renderedTitle","params","suffix","justify","enableHiding","elements","map","sort","a","b","direction","nameA","_embedded","nameB","localeCompare","Edit","filterBy","operators","isDraftOrPrivate","date","span","time","isScheduled","isPublished","modified","isPending","isLoading"],"sources":["@wordpress/edit-site/src/components/post-fields/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport {\n\tcreateInterpolateElement,\n\tuseMemo,\n\tuseState,\n} from '@wordpress/element';\nimport { dateI18n, getDate, getSettings } from '@wordpress/date';\nimport {\n\ttrash,\n\tdrafts,\n\tpublished,\n\tscheduled,\n\tpending,\n\tnotAllowed,\n\tcommentAuthorAvatar as authorIcon,\n} from '@wordpress/icons';\nimport { __experimentalHStack as HStack, Icon } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { useEntityRecords, store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n\tOPERATOR_IS_ANY,\n} from '../../utils/constants';\nimport { default as Link, useLink } from '../routes/link';\nimport Media from '../media';\n\n// See https://github.com/WordPress/gutenberg/issues/55886\n// We do not support custom statutes at the moment.\nconst STATUSES = [\n\t{\n\t\tvalue: 'draft',\n\t\tlabel: __( 'Draft' ),\n\t\ticon: drafts,\n\t\tdescription: __( 'Not ready to publish.' ),\n\t},\n\t{\n\t\tvalue: 'future',\n\t\tlabel: __( 'Scheduled' ),\n\t\ticon: scheduled,\n\t\tdescription: __( 'Publish automatically on a chosen date.' ),\n\t},\n\t{\n\t\tvalue: 'pending',\n\t\tlabel: __( 'Pending Review' ),\n\t\ticon: pending,\n\t\tdescription: __( 'Waiting for review before publishing.' ),\n\t},\n\t{\n\t\tvalue: 'private',\n\t\tlabel: __( 'Private' ),\n\t\ticon: notAllowed,\n\t\tdescription: __( 'Only visible to site admins and editors.' ),\n\t},\n\t{\n\t\tvalue: 'publish',\n\t\tlabel: __( 'Published' ),\n\t\ticon: published,\n\t\tdescription: __( 'Visible to everyone.' ),\n\t},\n\t{ value: 'trash', label: __( 'Trash' ), icon: trash },\n];\n\nconst getFormattedDate = ( dateToDisplay ) =>\n\tdateI18n(\n\t\tgetSettings().formats.datetimeAbbreviated,\n\t\tgetDate( dateToDisplay )\n\t);\n\nfunction FeaturedImage( { item, viewType } ) {\n\tconst isDisabled = item.status === 'trash';\n\tconst { onClick } = useLink( {\n\t\tpostId: item.id,\n\t\tpostType: item.type,\n\t\tcanvas: 'edit',\n\t} );\n\tconst hasMedia = !! item.featured_media;\n\tconst size =\n\t\tviewType === LAYOUT_GRID\n\t\t\t? [ 'large', 'full', 'medium', 'thumbnail' ]\n\t\t\t: [ 'thumbnail', 'medium', 'large', 'full' ];\n\tconst media = hasMedia ? (\n\t\t<Media\n\t\t\tclassName=\"edit-site-post-list__featured-image\"\n\t\t\tid={ item.featured_media }\n\t\t\tsize={ size }\n\t\t/>\n\t) : null;\n\tconst renderButton = viewType !== LAYOUT_LIST && ! isDisabled;\n\treturn (\n\t\t<div\n\t\t\tclassName={ `edit-site-post-list__featured-image-wrapper is-layout-${ viewType }` }\n\t\t>\n\t\t\t{ renderButton ? (\n\t\t\t\t<button\n\t\t\t\t\tclassName=\"edit-site-post-list__featured-image-button\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\taria-label={ item.title?.rendered || __( '(no title)' ) }\n\t\t\t\t>\n\t\t\t\t\t{ media }\n\t\t\t\t</button>\n\t\t\t) : (\n\t\t\t\tmedia\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction PostStatusField( { item } ) {\n\tconst status = STATUSES.find( ( { value } ) => value === item.status );\n\tconst label = status?.label || item.status;\n\tconst icon = status?.icon;\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 0 }>\n\t\t\t{ icon && (\n\t\t\t\t<div className=\"edit-site-post-list__status-icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span>{ label }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction PostAuthorField( { item } ) {\n\tconst { text, imageUrl } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getUser } = select( coreStore );\n\t\t\tconst user = getUser( item.author );\n\t\t\treturn {\n\t\t\t\timageUrl: user?.avatar_urls?.[ 48 ],\n\t\t\t\ttext: user?.name,\n\t\t\t};\n\t\t},\n\t\t[ item ]\n\t);\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 0 }>\n\t\t\t{ !! imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx( 'page-templates-author-field__avatar', {\n\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt={ __( 'Author avatar' ) }\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ authorIcon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction usePostFields( viewType ) {\n\tconst { records: authors, isResolving: isLoadingAuthors } =\n\t\tuseEntityRecords( 'root', 'user', { per_page: -1 } );\n\n\tconst { frontPageId, postsPageId } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst siteSettings = getEntityRecord( 'root', 'site' );\n\t\treturn {\n\t\t\tfrontPageId: siteSettings?.page_on_front,\n\t\t\tpostsPageId: siteSettings?.page_for_posts,\n\t\t};\n\t}, [] );\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tid: 'featured-image',\n\t\t\t\tlabel: __( 'Featured Image' ),\n\t\t\t\tgetValue: ( { item } ) => item.featured_media,\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<FeaturedImage item={ item } viewType={ viewType } />\n\t\t\t\t),\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\ttype: 'text',\n\t\t\t\tgetValue: ( { item } ) =>\n\t\t\t\t\ttypeof item.title === 'string'\n\t\t\t\t\t\t? item.title\n\t\t\t\t\t\t: item.title?.raw,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst addLink =\n\t\t\t\t\t\t[ LAYOUT_TABLE, LAYOUT_GRID ].includes( viewType ) &&\n\t\t\t\t\t\titem.status !== 'trash';\n\t\t\t\t\tconst renderedTitle =\n\t\t\t\t\t\ttypeof item.title === 'string'\n\t\t\t\t\t\t\t? item.title\n\t\t\t\t\t\t\t: item.title?.rendered;\n\t\t\t\t\tconst title = addLink ? (\n\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\tpostId: item.id,\n\t\t\t\t\t\t\t\tpostType: item.type,\n\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities( renderedTitle ) ||\n\t\t\t\t\t\t\t\t__( '(no title)' ) }\n\t\t\t\t\t\t</Link>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t{ decodeEntities( renderedTitle ) ||\n\t\t\t\t\t\t\t\t__( '(no title)' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t);\n\n\t\t\t\t\tlet suffix = '';\n\t\t\t\t\tif ( item.id === frontPageId ) {\n\t\t\t\t\t\tsuffix = (\n\t\t\t\t\t\t\t<span className=\"edit-site-post-list__title-badge\">\n\t\t\t\t\t\t\t\t{ __( 'Homepage' ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( item.id === postsPageId ) {\n\t\t\t\t\t\tsuffix = (\n\t\t\t\t\t\t\t<span className=\"edit-site-post-list__title-badge\">\n\t\t\t\t\t\t\t\t{ __( 'Posts Page' ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<HStack\n\t\t\t\t\t\t\tclassName=\"edit-site-post-list__title\"\n\t\t\t\t\t\t\talignment=\"center\"\n\t\t\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t\t{ suffix }\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\ttype: 'integer',\n\t\t\t\telements:\n\t\t\t\t\tauthors?.map( ( { id, name } ) => ( {\n\t\t\t\t\t\tvalue: id,\n\t\t\t\t\t\tlabel: name,\n\t\t\t\t\t} ) ) || [],\n\t\t\t\trender: PostAuthorField,\n\t\t\t\tsort: ( a, b, direction ) => {\n\t\t\t\t\tconst nameA = a._embedded?.author?.[ 0 ]?.name || '';\n\t\t\t\t\tconst nameB = b._embedded?.author?.[ 0 ]?.name || '';\n\n\t\t\t\t\treturn direction === 'asc'\n\t\t\t\t\t\t? nameA.localeCompare( nameB )\n\t\t\t\t\t\t: nameB.localeCompare( nameA );\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: __( 'Status' ),\n\t\t\t\tid: 'status',\n\t\t\t\ttype: 'text',\n\t\t\t\telements: STATUSES,\n\t\t\t\trender: PostStatusField,\n\t\t\t\tEdit: 'radio',\n\t\t\t\tenableSorting: false,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [ OPERATOR_IS_ANY ],\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: __( 'Date' ),\n\t\t\t\tid: 'date',\n\t\t\t\ttype: 'datetime',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst isDraftOrPrivate = [ 'draft', 'private' ].includes(\n\t\t\t\t\t\titem.status\n\t\t\t\t\t);\n\t\t\t\t\tif ( isDraftOrPrivate ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: page creation date */\n\t\t\t\t\t\t\t\t__( '<span>Modified: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( item.date )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst isScheduled = item.status === 'future';\n\t\t\t\t\tif ( isScheduled ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: page creation date */\n\t\t\t\t\t\t\t\t__( '<span>Scheduled: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( item.date )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst isPublished = item.status === 'publish';\n\t\t\t\t\tif ( isPublished ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: page creation time */\n\t\t\t\t\t\t\t\t__( '<span>Published: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( item.date )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Pending posts show the modified date if it's newer.\n\t\t\t\t\tconst dateToDisplay =\n\t\t\t\t\t\tgetDate( item.modified ) > getDate( item.date )\n\t\t\t\t\t\t\t? item.modified\n\t\t\t\t\t\t\t: item.date;\n\n\t\t\t\t\tconst isPending = item.status === 'pending';\n\t\t\t\t\tif ( isPending ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: the newest of created or modified date for the page */\n\t\t\t\t\t\t\t\t__( '<span>Modified: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( dateToDisplay )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Unknow status.\n\t\t\t\t\treturn <time>{ getFormattedDate( item.date ) }</time>;\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'comment_status',\n\t\t\t\tlabel: __( 'Discussion' ),\n\t\t\t\ttype: 'text',\n\t\t\t\tEdit: 'radio',\n\t\t\t\tenableSorting: false,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [],\n\t\t\t\t},\n\t\t\t\telements: [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'open',\n\t\t\t\t\t\tlabel: __( 'Open' ),\n\t\t\t\t\t\tdescription: __(\n\t\t\t\t\t\t\t'Visitors can add new comments and replies.'\n\t\t\t\t\t\t),\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: 'closed',\n\t\t\t\t\t\tlabel: __( 'Closed' ),\n\t\t\t\t\t\tdescription: __(\n\t\t\t\t\t\t\t'Visitors cannot add new comments or replies. Existing comments remain visible.'\n\t\t\t\t\t\t),\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t\t[ authors, viewType, frontPageId, postsPageId ]\n\t);\n\n\treturn {\n\t\tisLoading: isLoadingAuthors,\n\t\tfields,\n\t};\n}\n\nexport default usePostFields;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -319,7 +319,7 @@ export default function PostList({
|
|
|
319
319
|
size: "compact",
|
|
320
320
|
isPressed: quickEdit,
|
|
321
321
|
icon: drawerRight,
|
|
322
|
-
label:
|
|
322
|
+
label: __('Toggle details panel'),
|
|
323
323
|
onClick: () => {
|
|
324
324
|
history.push({
|
|
325
325
|
...location.params,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Button","store","coreStore","privateApis","coreDataPrivateApis","useState","useMemo","useCallback","useEffect","routerPrivateApis","useSelect","useDispatch","DataViews","filterSortAndPaginate","editorPrivateApis","__","drawerRight","Page","useDefaultViews","defaultLayouts","OPERATOR_IS_ANY","OPERATOR_IS_NONE","LAYOUT_LIST","AddNewPostModal","unlock","useEditPostAction","usePrevious","usePostFields","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","usePostActions","useLocation","useHistory","useEntityRecordsWithPermissions","EMPTY_ARRAY","getDefaultView","defaultViews","activeView","find","slug","view","getCustomView","editedEntityRecord","content","undefined","JSON","parse","layout","type","useView","postType","params","isCustom","history","editEntityRecord","select","getEditedEntityRecord","Number","setView","initialView","_getCustomView","_getDefaultView","setViewWithUrlUpdate","newView","getLocationWithParams","push","id","stringify","prevView","DEFAULT_STATUSES","getItemId","item","toString","PostList","_postId$split","_data$map","_usePrevious","location","postId","quickEdit","selection","setSelection","split","onChangeSelection","items","_params$isCustom","join","isLoading","isLoadingFields","fields","queryArgs","filters","forEach","filter","field","operator","status","value","author","author_exclude","per_page","perPage","page","_embed","order","sort","direction","orderby","search","records","isResolving","isLoadingData","totalItems","totalPages","data","ids","map","record","prevIds","deletedIds","includes","postIdWasDeleted","paginationInfo","labels","canCreateRecord","getPostType","canUser","kind","name","postTypeActions","context","editAction","actions","showAddPostModal","setShowAddPostModal","openModal","closeModal","handleNewPage","canvas","title","add_new_item","children","variant","onClick","__next40pxDefaultSize","onSave","onClose","onChangeView","header","window","__experimentalQuickEditDataViews","size","isPressed","icon","label"],"sources":["@wordpress/edit-site/src/components/post-list/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button } from '@wordpress/components';\nimport {\n\tstore as coreStore,\n\tprivateApis as coreDataPrivateApis,\n} from '@wordpress/core-data';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { __ } from '@wordpress/i18n';\nimport { drawerRight } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport {\n\tuseDefaultViews,\n\tdefaultLayouts,\n} from '../sidebar-dataviews/default-views';\nimport {\n\tOPERATOR_IS_ANY,\n\tOPERATOR_IS_NONE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\n\nimport AddNewPostModal from '../add-new-post';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\nimport { usePrevious } from '@wordpress/compose';\nimport usePostFields from '../post-fields';\n\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\nconst { useEntityRecordsWithPermissions } = unlock( coreDataPrivateApis );\nconst EMPTY_ARRAY = [];\n\nconst getDefaultView = ( defaultViews, activeView ) => {\n\treturn defaultViews.find( ( { slug } ) => slug === activeView )?.view;\n};\n\nconst getCustomView = ( editedEntityRecord ) => {\n\tif ( ! editedEntityRecord?.content ) {\n\t\treturn undefined;\n\t}\n\n\tconst content = JSON.parse( editedEntityRecord.content );\n\tif ( ! content ) {\n\t\treturn undefined;\n\t}\n\n\treturn {\n\t\t...content,\n\t\tlayout: defaultLayouts[ content.type ]?.layout,\n\t};\n};\n\n/**\n * This function abstracts working with default & custom views by\n * providing a [ state, setState ] tuple based on the URL parameters.\n *\n * Consumers use the provided tuple to work with state\n * and don't have to deal with the specifics of default & custom views.\n *\n * @param {string} postType Post type to retrieve default views for.\n * @return {Array} The [ state, setState ] tuple.\n */\nfunction useView( postType ) {\n\tconst {\n\t\tparams: { activeView = 'all', isCustom = 'false', layout },\n\t} = useLocation();\n\tconst history = useHistory();\n\n\tconst defaultViews = useDefaultViews( { postType } );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\tconst editedEntityRecord = useSelect(\n\t\t( select ) => {\n\t\t\tif ( isCustom !== 'true' ) {\n\t\t\t\treturn undefined;\n\t\t\t}\n\n\t\t\tconst { getEditedEntityRecord } = select( coreStore );\n\t\t\treturn getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_dataviews',\n\t\t\t\tNumber( activeView )\n\t\t\t);\n\t\t},\n\t\t[ activeView, isCustom ]\n\t);\n\tconst [ view, setView ] = useState( () => {\n\t\tlet initialView;\n\t\tif ( isCustom === 'true' ) {\n\t\t\tinitialView = getCustomView( editedEntityRecord ) ?? {\n\t\t\t\ttype: layout ?? LAYOUT_LIST,\n\t\t\t};\n\t\t} else {\n\t\t\tinitialView = getDefaultView( defaultViews, activeView ) ?? {\n\t\t\t\ttype: layout ?? LAYOUT_LIST,\n\t\t\t};\n\t\t}\n\n\t\tconst type = layout ?? initialView.type;\n\t\treturn {\n\t\t\t...initialView,\n\t\t\ttype,\n\t\t};\n\t} );\n\n\tconst setViewWithUrlUpdate = useCallback(\n\t\t( newView ) => {\n\t\t\tconst { params } = history.getLocationWithParams();\n\n\t\t\tif ( newView.type === LAYOUT_LIST && ! params?.layout ) {\n\t\t\t\t// Skip updating the layout URL param if\n\t\t\t\t// it is not present and the newView.type is LAYOUT_LIST.\n\t\t\t} else if ( newView.type !== params?.layout ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tsetView( newView );\n\n\t\t\tif ( isCustom === 'true' && editedEntityRecord?.id ) {\n\t\t\t\teditEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_dataviews',\n\t\t\t\t\teditedEntityRecord?.id,\n\t\t\t\t\t{\n\t\t\t\t\t\tcontent: JSON.stringify( newView ),\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ history, isCustom, editEntityRecord, editedEntityRecord?.id ]\n\t);\n\n\t// When layout URL param changes, update the view type\n\t// without affecting any other config.\n\tuseEffect( () => {\n\t\tsetView( ( prevView ) => ( {\n\t\t\t...prevView,\n\t\t\ttype: layout ?? LAYOUT_LIST,\n\t\t} ) );\n\t}, [ layout ] );\n\n\t// When activeView or isCustom URL parameters change, reset the view.\n\tuseEffect( () => {\n\t\tlet newView;\n\t\tif ( isCustom === 'true' ) {\n\t\t\tnewView = getCustomView( editedEntityRecord );\n\t\t} else {\n\t\t\tnewView = getDefaultView( defaultViews, activeView );\n\t\t}\n\n\t\tif ( newView ) {\n\t\t\tconst type = layout ?? newView.type;\n\t\t\tsetView( {\n\t\t\t\t...newView,\n\t\t\t\ttype,\n\t\t\t} );\n\t\t}\n\t}, [ activeView, isCustom, layout, defaultViews, editedEntityRecord ] );\n\n\treturn [ view, setViewWithUrlUpdate, setViewWithUrlUpdate ];\n}\n\nconst DEFAULT_STATUSES = 'draft,future,pending,private,publish'; // All but 'trash'.\n\nfunction getItemId( item ) {\n\treturn item.id.toString();\n}\n\nexport default function PostList( { postType } ) {\n\tconst [ view, setView ] = useView( postType );\n\tconst history = useHistory();\n\tconst location = useLocation();\n\tconst {\n\t\tpostId,\n\t\tquickEdit = false,\n\t\tisCustom,\n\t\tactiveView = 'all',\n\t} = location.params;\n\tconst [ selection, setSelection ] = useState( postId?.split( ',' ) ?? [] );\n\tconst onChangeSelection = useCallback(\n\t\t( items ) => {\n\t\t\tsetSelection( items );\n\t\t\tconst { params } = history.getLocationWithParams();\n\t\t\tif ( ( params.isCustom ?? 'false' ) === 'false' ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tpostId: items.join( ',' ),\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history ]\n\t);\n\n\tconst { isLoading: isLoadingFields, fields } = usePostFields( view.type );\n\n\tconst queryArgs = useMemo( () => {\n\t\tconst filters = {};\n\t\tview.filters?.forEach( ( filter ) => {\n\t\t\tif (\n\t\t\t\tfilter.field === 'status' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_ANY\n\t\t\t) {\n\t\t\t\tfilters.status = filter.value;\n\t\t\t}\n\t\t\tif (\n\t\t\t\tfilter.field === 'author' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_ANY\n\t\t\t) {\n\t\t\t\tfilters.author = filter.value;\n\t\t\t} else if (\n\t\t\t\tfilter.field === 'author' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_NONE\n\t\t\t) {\n\t\t\t\tfilters.author_exclude = filter.value;\n\t\t\t}\n\t\t} );\n\t\t// We want to provide a different default item for the status filter\n\t\t// than the REST API provides.\n\t\tif ( ! filters.status || filters.status === '' ) {\n\t\t\tfilters.status = DEFAULT_STATUSES;\n\t\t}\n\n\t\treturn {\n\t\t\tper_page: view.perPage,\n\t\t\tpage: view.page,\n\t\t\t_embed: 'author',\n\t\t\torder: view.sort?.direction,\n\t\t\torderby: view.sort?.field,\n\t\t\tsearch: view.search,\n\t\t\t...filters,\n\t\t};\n\t}, [ view ] );\n\tconst {\n\t\trecords,\n\t\tisResolving: isLoadingData,\n\t\ttotalItems,\n\t\ttotalPages,\n\t} = useEntityRecordsWithPermissions( 'postType', postType, queryArgs );\n\n\t// The REST API sort the authors by ID, but we want to sort them by name.\n\tconst data = useMemo( () => {\n\t\tif ( ! isLoadingFields && view?.sort?.field === 'author' ) {\n\t\t\treturn filterSortAndPaginate(\n\t\t\t\trecords,\n\t\t\t\t{ sort: { ...view.sort } },\n\t\t\t\tfields\n\t\t\t).data;\n\t\t}\n\n\t\treturn records;\n\t}, [ records, fields, isLoadingFields, view?.sort ] );\n\n\tconst ids = data?.map( ( record ) => getItemId( record ) ) ?? [];\n\tconst prevIds = usePrevious( ids ) ?? [];\n\tconst deletedIds = prevIds.filter( ( id ) => ! ids.includes( id ) );\n\tconst postIdWasDeleted = deletedIds.includes( postId );\n\n\tuseEffect( () => {\n\t\tif ( postIdWasDeleted ) {\n\t\t\thistory.push( {\n\t\t\t\t...history.getLocationWithParams().params,\n\t\t\t\tpostId: undefined,\n\t\t\t} );\n\t\t}\n\t}, [ postIdWasDeleted, history ] );\n\n\tconst paginationInfo = useMemo(\n\t\t() => ( {\n\t\t\ttotalItems,\n\t\t\ttotalPages,\n\t\t} ),\n\t\t[ totalItems, totalPages ]\n\t);\n\n\tconst { labels, canCreateRecord } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getPostType, canUser } = select( coreStore );\n\t\t\treturn {\n\t\t\t\tlabels: getPostType( postType )?.labels,\n\t\t\t\tcanCreateRecord: canUser( 'create', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: postType,\n\t\t\t\t} ),\n\t\t\t};\n\t\t},\n\t\t[ postType ]\n\t);\n\n\tconst postTypeActions = usePostActions( {\n\t\tpostType,\n\t\tcontext: 'list',\n\t} );\n\tconst editAction = useEditPostAction();\n\tconst actions = useMemo(\n\t\t() => [ editAction, ...postTypeActions ],\n\t\t[ postTypeActions, editAction ]\n\t);\n\n\tconst [ showAddPostModal, setShowAddPostModal ] = useState( false );\n\n\tconst openModal = () => setShowAddPostModal( true );\n\tconst closeModal = () => setShowAddPostModal( false );\n\tconst handleNewPage = ( { type, id } ) => {\n\t\thistory.push( {\n\t\t\tpostId: id,\n\t\t\tpostType: type,\n\t\t\tcanvas: 'edit',\n\t\t} );\n\t\tcloseModal();\n\t};\n\n\treturn (\n\t\t<Page\n\t\t\ttitle={ labels?.name }\n\t\t\tactions={\n\t\t\t\tlabels?.add_new_item &&\n\t\t\t\tcanCreateRecord && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tonClick={ openModal }\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ labels.add_new_item }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t{ showAddPostModal && (\n\t\t\t\t\t\t\t<AddNewPostModal\n\t\t\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\t\t\tonSave={ handleNewPage }\n\t\t\t\t\t\t\t\tonClose={ closeModal }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t)\n\t\t\t}\n\t\t>\n\t\t\t<DataViews\n\t\t\t\tkey={ activeView + isCustom }\n\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\tfields={ fields }\n\t\t\t\tactions={ actions }\n\t\t\t\tdata={ data || EMPTY_ARRAY }\n\t\t\t\tisLoading={ isLoadingData || isLoadingFields }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ setView }\n\t\t\t\tselection={ selection }\n\t\t\t\tonChangeSelection={ onChangeSelection }\n\t\t\t\tgetItemId={ getItemId }\n\t\t\t\tdefaultLayouts={ defaultLayouts }\n\t\t\t\theader={\n\t\t\t\t\twindow.__experimentalQuickEditDataViews &&\n\t\t\t\t\tview.type !== LAYOUT_LIST &&\n\t\t\t\t\tpostType === 'page' && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\tisPressed={ quickEdit }\n\t\t\t\t\t\t\ticon={ drawerRight }\n\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t! quickEdit\n\t\t\t\t\t\t\t\t\t? __( 'Show quick edit sidebar' )\n\t\t\t\t\t\t\t\t\t: __( 'Close quick edit sidebar' )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\t\t\t...location.params,\n\t\t\t\t\t\t\t\t\tquickEdit: quickEdit ? undefined : true,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["Button","store","coreStore","privateApis","coreDataPrivateApis","useState","useMemo","useCallback","useEffect","routerPrivateApis","useSelect","useDispatch","DataViews","filterSortAndPaginate","editorPrivateApis","__","drawerRight","Page","useDefaultViews","defaultLayouts","OPERATOR_IS_ANY","OPERATOR_IS_NONE","LAYOUT_LIST","AddNewPostModal","unlock","useEditPostAction","usePrevious","usePostFields","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","usePostActions","useLocation","useHistory","useEntityRecordsWithPermissions","EMPTY_ARRAY","getDefaultView","defaultViews","activeView","find","slug","view","getCustomView","editedEntityRecord","content","undefined","JSON","parse","layout","type","useView","postType","params","isCustom","history","editEntityRecord","select","getEditedEntityRecord","Number","setView","initialView","_getCustomView","_getDefaultView","setViewWithUrlUpdate","newView","getLocationWithParams","push","id","stringify","prevView","DEFAULT_STATUSES","getItemId","item","toString","PostList","_postId$split","_data$map","_usePrevious","location","postId","quickEdit","selection","setSelection","split","onChangeSelection","items","_params$isCustom","join","isLoading","isLoadingFields","fields","queryArgs","filters","forEach","filter","field","operator","status","value","author","author_exclude","per_page","perPage","page","_embed","order","sort","direction","orderby","search","records","isResolving","isLoadingData","totalItems","totalPages","data","ids","map","record","prevIds","deletedIds","includes","postIdWasDeleted","paginationInfo","labels","canCreateRecord","getPostType","canUser","kind","name","postTypeActions","context","editAction","actions","showAddPostModal","setShowAddPostModal","openModal","closeModal","handleNewPage","canvas","title","add_new_item","children","variant","onClick","__next40pxDefaultSize","onSave","onClose","onChangeView","header","window","__experimentalQuickEditDataViews","size","isPressed","icon","label"],"sources":["@wordpress/edit-site/src/components/post-list/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button } from '@wordpress/components';\nimport {\n\tstore as coreStore,\n\tprivateApis as coreDataPrivateApis,\n} from '@wordpress/core-data';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { __ } from '@wordpress/i18n';\nimport { drawerRight } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport {\n\tuseDefaultViews,\n\tdefaultLayouts,\n} from '../sidebar-dataviews/default-views';\nimport {\n\tOPERATOR_IS_ANY,\n\tOPERATOR_IS_NONE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\n\nimport AddNewPostModal from '../add-new-post';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\nimport { usePrevious } from '@wordpress/compose';\nimport usePostFields from '../post-fields';\n\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\nconst { useEntityRecordsWithPermissions } = unlock( coreDataPrivateApis );\nconst EMPTY_ARRAY = [];\n\nconst getDefaultView = ( defaultViews, activeView ) => {\n\treturn defaultViews.find( ( { slug } ) => slug === activeView )?.view;\n};\n\nconst getCustomView = ( editedEntityRecord ) => {\n\tif ( ! editedEntityRecord?.content ) {\n\t\treturn undefined;\n\t}\n\n\tconst content = JSON.parse( editedEntityRecord.content );\n\tif ( ! content ) {\n\t\treturn undefined;\n\t}\n\n\treturn {\n\t\t...content,\n\t\tlayout: defaultLayouts[ content.type ]?.layout,\n\t};\n};\n\n/**\n * This function abstracts working with default & custom views by\n * providing a [ state, setState ] tuple based on the URL parameters.\n *\n * Consumers use the provided tuple to work with state\n * and don't have to deal with the specifics of default & custom views.\n *\n * @param {string} postType Post type to retrieve default views for.\n * @return {Array} The [ state, setState ] tuple.\n */\nfunction useView( postType ) {\n\tconst {\n\t\tparams: { activeView = 'all', isCustom = 'false', layout },\n\t} = useLocation();\n\tconst history = useHistory();\n\n\tconst defaultViews = useDefaultViews( { postType } );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\tconst editedEntityRecord = useSelect(\n\t\t( select ) => {\n\t\t\tif ( isCustom !== 'true' ) {\n\t\t\t\treturn undefined;\n\t\t\t}\n\n\t\t\tconst { getEditedEntityRecord } = select( coreStore );\n\t\t\treturn getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_dataviews',\n\t\t\t\tNumber( activeView )\n\t\t\t);\n\t\t},\n\t\t[ activeView, isCustom ]\n\t);\n\tconst [ view, setView ] = useState( () => {\n\t\tlet initialView;\n\t\tif ( isCustom === 'true' ) {\n\t\t\tinitialView = getCustomView( editedEntityRecord ) ?? {\n\t\t\t\ttype: layout ?? LAYOUT_LIST,\n\t\t\t};\n\t\t} else {\n\t\t\tinitialView = getDefaultView( defaultViews, activeView ) ?? {\n\t\t\t\ttype: layout ?? LAYOUT_LIST,\n\t\t\t};\n\t\t}\n\n\t\tconst type = layout ?? initialView.type;\n\t\treturn {\n\t\t\t...initialView,\n\t\t\ttype,\n\t\t};\n\t} );\n\n\tconst setViewWithUrlUpdate = useCallback(\n\t\t( newView ) => {\n\t\t\tconst { params } = history.getLocationWithParams();\n\n\t\t\tif ( newView.type === LAYOUT_LIST && ! params?.layout ) {\n\t\t\t\t// Skip updating the layout URL param if\n\t\t\t\t// it is not present and the newView.type is LAYOUT_LIST.\n\t\t\t} else if ( newView.type !== params?.layout ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tsetView( newView );\n\n\t\t\tif ( isCustom === 'true' && editedEntityRecord?.id ) {\n\t\t\t\teditEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'wp_dataviews',\n\t\t\t\t\teditedEntityRecord?.id,\n\t\t\t\t\t{\n\t\t\t\t\t\tcontent: JSON.stringify( newView ),\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ history, isCustom, editEntityRecord, editedEntityRecord?.id ]\n\t);\n\n\t// When layout URL param changes, update the view type\n\t// without affecting any other config.\n\tuseEffect( () => {\n\t\tsetView( ( prevView ) => ( {\n\t\t\t...prevView,\n\t\t\ttype: layout ?? LAYOUT_LIST,\n\t\t} ) );\n\t}, [ layout ] );\n\n\t// When activeView or isCustom URL parameters change, reset the view.\n\tuseEffect( () => {\n\t\tlet newView;\n\t\tif ( isCustom === 'true' ) {\n\t\t\tnewView = getCustomView( editedEntityRecord );\n\t\t} else {\n\t\t\tnewView = getDefaultView( defaultViews, activeView );\n\t\t}\n\n\t\tif ( newView ) {\n\t\t\tconst type = layout ?? newView.type;\n\t\t\tsetView( {\n\t\t\t\t...newView,\n\t\t\t\ttype,\n\t\t\t} );\n\t\t}\n\t}, [ activeView, isCustom, layout, defaultViews, editedEntityRecord ] );\n\n\treturn [ view, setViewWithUrlUpdate, setViewWithUrlUpdate ];\n}\n\nconst DEFAULT_STATUSES = 'draft,future,pending,private,publish'; // All but 'trash'.\n\nfunction getItemId( item ) {\n\treturn item.id.toString();\n}\n\nexport default function PostList( { postType } ) {\n\tconst [ view, setView ] = useView( postType );\n\tconst history = useHistory();\n\tconst location = useLocation();\n\tconst {\n\t\tpostId,\n\t\tquickEdit = false,\n\t\tisCustom,\n\t\tactiveView = 'all',\n\t} = location.params;\n\tconst [ selection, setSelection ] = useState( postId?.split( ',' ) ?? [] );\n\tconst onChangeSelection = useCallback(\n\t\t( items ) => {\n\t\t\tsetSelection( items );\n\t\t\tconst { params } = history.getLocationWithParams();\n\t\t\tif ( ( params.isCustom ?? 'false' ) === 'false' ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tpostId: items.join( ',' ),\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history ]\n\t);\n\n\tconst { isLoading: isLoadingFields, fields } = usePostFields( view.type );\n\n\tconst queryArgs = useMemo( () => {\n\t\tconst filters = {};\n\t\tview.filters?.forEach( ( filter ) => {\n\t\t\tif (\n\t\t\t\tfilter.field === 'status' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_ANY\n\t\t\t) {\n\t\t\t\tfilters.status = filter.value;\n\t\t\t}\n\t\t\tif (\n\t\t\t\tfilter.field === 'author' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_ANY\n\t\t\t) {\n\t\t\t\tfilters.author = filter.value;\n\t\t\t} else if (\n\t\t\t\tfilter.field === 'author' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_NONE\n\t\t\t) {\n\t\t\t\tfilters.author_exclude = filter.value;\n\t\t\t}\n\t\t} );\n\t\t// We want to provide a different default item for the status filter\n\t\t// than the REST API provides.\n\t\tif ( ! filters.status || filters.status === '' ) {\n\t\t\tfilters.status = DEFAULT_STATUSES;\n\t\t}\n\n\t\treturn {\n\t\t\tper_page: view.perPage,\n\t\t\tpage: view.page,\n\t\t\t_embed: 'author',\n\t\t\torder: view.sort?.direction,\n\t\t\torderby: view.sort?.field,\n\t\t\tsearch: view.search,\n\t\t\t...filters,\n\t\t};\n\t}, [ view ] );\n\tconst {\n\t\trecords,\n\t\tisResolving: isLoadingData,\n\t\ttotalItems,\n\t\ttotalPages,\n\t} = useEntityRecordsWithPermissions( 'postType', postType, queryArgs );\n\n\t// The REST API sort the authors by ID, but we want to sort them by name.\n\tconst data = useMemo( () => {\n\t\tif ( ! isLoadingFields && view?.sort?.field === 'author' ) {\n\t\t\treturn filterSortAndPaginate(\n\t\t\t\trecords,\n\t\t\t\t{ sort: { ...view.sort } },\n\t\t\t\tfields\n\t\t\t).data;\n\t\t}\n\n\t\treturn records;\n\t}, [ records, fields, isLoadingFields, view?.sort ] );\n\n\tconst ids = data?.map( ( record ) => getItemId( record ) ) ?? [];\n\tconst prevIds = usePrevious( ids ) ?? [];\n\tconst deletedIds = prevIds.filter( ( id ) => ! ids.includes( id ) );\n\tconst postIdWasDeleted = deletedIds.includes( postId );\n\n\tuseEffect( () => {\n\t\tif ( postIdWasDeleted ) {\n\t\t\thistory.push( {\n\t\t\t\t...history.getLocationWithParams().params,\n\t\t\t\tpostId: undefined,\n\t\t\t} );\n\t\t}\n\t}, [ postIdWasDeleted, history ] );\n\n\tconst paginationInfo = useMemo(\n\t\t() => ( {\n\t\t\ttotalItems,\n\t\t\ttotalPages,\n\t\t} ),\n\t\t[ totalItems, totalPages ]\n\t);\n\n\tconst { labels, canCreateRecord } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getPostType, canUser } = select( coreStore );\n\t\t\treturn {\n\t\t\t\tlabels: getPostType( postType )?.labels,\n\t\t\t\tcanCreateRecord: canUser( 'create', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: postType,\n\t\t\t\t} ),\n\t\t\t};\n\t\t},\n\t\t[ postType ]\n\t);\n\n\tconst postTypeActions = usePostActions( {\n\t\tpostType,\n\t\tcontext: 'list',\n\t} );\n\tconst editAction = useEditPostAction();\n\tconst actions = useMemo(\n\t\t() => [ editAction, ...postTypeActions ],\n\t\t[ postTypeActions, editAction ]\n\t);\n\n\tconst [ showAddPostModal, setShowAddPostModal ] = useState( false );\n\n\tconst openModal = () => setShowAddPostModal( true );\n\tconst closeModal = () => setShowAddPostModal( false );\n\tconst handleNewPage = ( { type, id } ) => {\n\t\thistory.push( {\n\t\t\tpostId: id,\n\t\t\tpostType: type,\n\t\t\tcanvas: 'edit',\n\t\t} );\n\t\tcloseModal();\n\t};\n\n\treturn (\n\t\t<Page\n\t\t\ttitle={ labels?.name }\n\t\t\tactions={\n\t\t\t\tlabels?.add_new_item &&\n\t\t\t\tcanCreateRecord && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tonClick={ openModal }\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ labels.add_new_item }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t{ showAddPostModal && (\n\t\t\t\t\t\t\t<AddNewPostModal\n\t\t\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\t\t\tonSave={ handleNewPage }\n\t\t\t\t\t\t\t\tonClose={ closeModal }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t)\n\t\t\t}\n\t\t>\n\t\t\t<DataViews\n\t\t\t\tkey={ activeView + isCustom }\n\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\tfields={ fields }\n\t\t\t\tactions={ actions }\n\t\t\t\tdata={ data || EMPTY_ARRAY }\n\t\t\t\tisLoading={ isLoadingData || isLoadingFields }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ setView }\n\t\t\t\tselection={ selection }\n\t\t\t\tonChangeSelection={ onChangeSelection }\n\t\t\t\tgetItemId={ getItemId }\n\t\t\t\tdefaultLayouts={ defaultLayouts }\n\t\t\t\theader={\n\t\t\t\t\twindow.__experimentalQuickEditDataViews &&\n\t\t\t\t\tview.type !== LAYOUT_LIST &&\n\t\t\t\t\tpostType === 'page' && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\tisPressed={ quickEdit }\n\t\t\t\t\t\t\ticon={ drawerRight }\n\t\t\t\t\t\t\tlabel={ __( 'Toggle details panel' ) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\t\t\t...location.params,\n\t\t\t\t\t\t\t\t\tquickEdit: quickEdit ? undefined : true,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|