@wordpress/core-data 7.18.0 → 7.19.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/entities.js +1 -1
- package/build/entities.js.map +1 -1
- package/build/private-selectors.js +3 -20
- package/build/private-selectors.js.map +1 -1
- package/build/selectors.js +1 -2
- package/build/selectors.js.map +1 -1
- package/build-module/entities.js +1 -1
- package/build-module/entities.js.map +1 -1
- package/build-module/private-selectors.js +4 -21
- package/build-module/private-selectors.js.map +1 -1
- package/build-module/selectors.js +1 -2
- package/build-module/selectors.js.map +1 -1
- package/build-types/entities.d.ts.map +1 -1
- package/build-types/private-selectors.d.ts.map +1 -1
- package/build-types/selectors.d.ts.map +1 -1
- package/package.json +18 -18
- package/src/entities.js +3 -0
- package/src/private-selectors.ts +7 -28
- package/src/selectors.ts +4 -1
- package/src/test/selectors.js +42 -0
- package/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md
CHANGED
package/build/entities.js
CHANGED
|
@@ -27,7 +27,7 @@ const rootEntitiesConfig = exports.rootEntitiesConfig = [{
|
|
|
27
27
|
baseURLParams: {
|
|
28
28
|
// Please also change the preload path when changing this.
|
|
29
29
|
// @see lib/compat/wordpress-6.8/preload.php
|
|
30
|
-
_fields: ['description', 'gmt_offset', 'home', 'name', 'site_icon', 'site_icon_url', 'site_logo', 'timezone_string', 'default_template_part_areas', 'default_template_types', 'url'].join(',')
|
|
30
|
+
_fields: ['description', 'gmt_offset', 'home', 'name', 'site_icon', 'site_icon_url', 'site_logo', 'timezone_string', 'default_template_part_areas', 'default_template_types', 'url', 'page_for_posts', 'page_on_front', 'show_on_front'].join(',')
|
|
31
31
|
},
|
|
32
32
|
// The entity doesn't support selecting multiple records.
|
|
33
33
|
// The property is maintained for backward compatibility.
|
package/build/entities.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_changeCase","require","_apiFetch","_interopRequireDefault","_i18n","_richText","DEFAULT_ENTITY_KEY","exports","POST_RAW_ATTRIBUTES","rootEntitiesConfig","label","__","kind","name","baseURL","baseURLParams","_fields","join","plural","syncConfig","fetch","apiFetch","path","applyChangesToDoc","doc","changes","document","getMap","Object","entries","forEach","key","value","get","set","fromCRDTDoc","toJSON","syncObjectType","getSyncObjectId","context","id","rawAttributes","supportsPagination","transientEdits","blocks","getTitle","record","title","rendered","getRevisionsUrl","parentId","revisionId","additionalEntityConfigLoaders","loadEntities","loadPostTypeEntities","loadTaxonomyEntities","loadSiteEntity","prePersistPostType","persistedRecord","edits","newEdits","status","serialisableBlocksCache","WeakMap","makeBlockAttributesSerializable","attributes","newAttributes","RichTextData","valueOf","makeBlocksSerializable","map","block","innerBlocks","rest","postTypes","postType","_postType$rest_namesp","isTemplate","includes","namespace","rest_namespace","rest_base","selection","mergedEdits","meta","_record$slug","capitalCase","slug","String","__unstablePrePersist","undefined","__unstable_rest_base","has","revisionKey","taxonomies","taxonomy","_taxonomy$rest_namesp","_site$schema$properti","entity","site","method","labels","schema","properties","getMethodName","prefix","kindPrefix","pascalCase","suffix"],"sources":["@wordpress/core-data/src/entities.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { capitalCase, pascalCase } from 'change-case';\n\n/**\n * WordPress dependencies\n */\nimport apiFetch from '@wordpress/api-fetch';\nimport { __ } from '@wordpress/i18n';\nimport { RichTextData } from '@wordpress/rich-text';\n\nexport const DEFAULT_ENTITY_KEY = 'id';\nconst POST_RAW_ATTRIBUTES = [ 'title', 'excerpt', 'content' ];\n\nexport const rootEntitiesConfig = [\n\t{\n\t\tlabel: __( 'Base' ),\n\t\tkind: 'root',\n\t\tname: '__unstableBase',\n\t\tbaseURL: '/',\n\t\tbaseURLParams: {\n\t\t\t// Please also change the preload path when changing this.\n\t\t\t// @see lib/compat/wordpress-6.8/preload.php\n\t\t\t_fields: [\n\t\t\t\t'description',\n\t\t\t\t'gmt_offset',\n\t\t\t\t'home',\n\t\t\t\t'name',\n\t\t\t\t'site_icon',\n\t\t\t\t'site_icon_url',\n\t\t\t\t'site_logo',\n\t\t\t\t'timezone_string',\n\t\t\t\t'default_template_part_areas',\n\t\t\t\t'default_template_types',\n\t\t\t\t'url',\n\t\t\t].join( ',' ),\n\t\t},\n\t\t// The entity doesn't support selecting multiple records.\n\t\t// The property is maintained for backward compatibility.\n\t\tplural: '__unstableBases',\n\t\tsyncConfig: {\n\t\t\tfetch: async () => {\n\t\t\t\treturn apiFetch( { path: '/' } );\n\t\t\t},\n\t\t\tapplyChangesToDoc: ( doc, changes ) => {\n\t\t\t\tconst document = doc.getMap( 'document' );\n\t\t\t\tObject.entries( changes ).forEach( ( [ key, value ] ) => {\n\t\t\t\t\tif ( document.get( key ) !== value ) {\n\t\t\t\t\t\tdocument.set( key, value );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t},\n\t\t\tfromCRDTDoc: ( doc ) => {\n\t\t\t\treturn doc.getMap( 'document' ).toJSON();\n\t\t\t},\n\t\t},\n\t\tsyncObjectType: 'root/base',\n\t\tgetSyncObjectId: () => 'index',\n\t},\n\t{\n\t\tlabel: __( 'Post Type' ),\n\t\tname: 'postType',\n\t\tkind: 'root',\n\t\tkey: 'slug',\n\t\tbaseURL: '/wp/v2/types',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'postTypes',\n\t\tsyncConfig: {\n\t\t\tfetch: async ( id ) => {\n\t\t\t\treturn apiFetch( {\n\t\t\t\t\tpath: `/wp/v2/types/${ id }?context=edit`,\n\t\t\t\t} );\n\t\t\t},\n\t\t\tapplyChangesToDoc: ( doc, changes ) => {\n\t\t\t\tconst document = doc.getMap( 'document' );\n\t\t\t\tObject.entries( changes ).forEach( ( [ key, value ] ) => {\n\t\t\t\t\tif ( document.get( key ) !== value ) {\n\t\t\t\t\t\tdocument.set( key, value );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t},\n\t\t\tfromCRDTDoc: ( doc ) => {\n\t\t\t\treturn doc.getMap( 'document' ).toJSON();\n\t\t\t},\n\t\t},\n\t\tsyncObjectType: 'root/postType',\n\t\tgetSyncObjectId: ( id ) => id,\n\t},\n\t{\n\t\tname: 'media',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/media',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'mediaItems',\n\t\tlabel: __( 'Media' ),\n\t\trawAttributes: [ 'caption', 'title', 'description' ],\n\t\tsupportsPagination: true,\n\t},\n\t{\n\t\tname: 'taxonomy',\n\t\tkind: 'root',\n\t\tkey: 'slug',\n\t\tbaseURL: '/wp/v2/taxonomies',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'taxonomies',\n\t\tlabel: __( 'Taxonomy' ),\n\t},\n\t{\n\t\tname: 'sidebar',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/sidebars',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'sidebars',\n\t\ttransientEdits: { blocks: true },\n\t\tlabel: __( 'Widget areas' ),\n\t},\n\t{\n\t\tname: 'widget',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/widgets',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'widgets',\n\t\ttransientEdits: { blocks: true },\n\t\tlabel: __( 'Widgets' ),\n\t},\n\t{\n\t\tname: 'widgetType',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/widget-types',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'widgetTypes',\n\t\tlabel: __( 'Widget types' ),\n\t},\n\t{\n\t\tlabel: __( 'User' ),\n\t\tname: 'user',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/users',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'users',\n\t},\n\t{\n\t\tname: 'comment',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/comments',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'comments',\n\t\tlabel: __( 'Comment' ),\n\t},\n\t{\n\t\tname: 'menu',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/menus',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'menus',\n\t\tlabel: __( 'Menu' ),\n\t},\n\t{\n\t\tname: 'menuItem',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/menu-items',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'menuItems',\n\t\tlabel: __( 'Menu Item' ),\n\t\trawAttributes: [ 'title' ],\n\t},\n\t{\n\t\tname: 'menuLocation',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/menu-locations',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'menuLocations',\n\t\tlabel: __( 'Menu Location' ),\n\t\tkey: 'name',\n\t},\n\t{\n\t\tlabel: __( 'Global Styles' ),\n\t\tname: 'globalStyles',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/global-styles',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'globalStylesVariations', // Should be different from name.\n\t\tgetTitle: ( record ) => record?.title?.rendered || record?.title,\n\t\tgetRevisionsUrl: ( parentId, revisionId ) =>\n\t\t\t`/wp/v2/global-styles/${ parentId }/revisions${\n\t\t\t\trevisionId ? '/' + revisionId : ''\n\t\t\t}`,\n\t\tsupportsPagination: true,\n\t},\n\t{\n\t\tlabel: __( 'Themes' ),\n\t\tname: 'theme',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/themes',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'themes',\n\t\tkey: 'stylesheet',\n\t},\n\t{\n\t\tlabel: __( 'Plugins' ),\n\t\tname: 'plugin',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/plugins',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'plugins',\n\t\tkey: 'plugin',\n\t},\n\t{\n\t\tlabel: __( 'Status' ),\n\t\tname: 'status',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/statuses',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'statuses',\n\t\tkey: 'slug',\n\t},\n];\n\nexport const additionalEntityConfigLoaders = [\n\t{ kind: 'postType', loadEntities: loadPostTypeEntities },\n\t{ kind: 'taxonomy', loadEntities: loadTaxonomyEntities },\n\t{\n\t\tkind: 'root',\n\t\tname: 'site',\n\t\tplural: 'sites',\n\t\tloadEntities: loadSiteEntity,\n\t},\n];\n\n/**\n * Returns a function to be used to retrieve extra edits to apply before persisting a post type.\n *\n * @param {Object} persistedRecord Already persisted Post\n * @param {Object} edits Edits.\n * @return {Object} Updated edits.\n */\nexport const prePersistPostType = ( persistedRecord, edits ) => {\n\tconst newEdits = {};\n\n\tif ( persistedRecord?.status === 'auto-draft' ) {\n\t\t// Saving an auto-draft should create a draft by default.\n\t\tif ( ! edits.status && ! newEdits.status ) {\n\t\t\tnewEdits.status = 'draft';\n\t\t}\n\n\t\t// Fix the auto-draft default title.\n\t\tif (\n\t\t\t( ! edits.title || edits.title === 'Auto Draft' ) &&\n\t\t\t! newEdits.title &&\n\t\t\t( ! persistedRecord?.title ||\n\t\t\t\tpersistedRecord?.title === 'Auto Draft' )\n\t\t) {\n\t\t\tnewEdits.title = '';\n\t\t}\n\t}\n\n\treturn newEdits;\n};\n\nconst serialisableBlocksCache = new WeakMap();\n\nfunction makeBlockAttributesSerializable( attributes ) {\n\tconst newAttributes = { ...attributes };\n\tfor ( const [ key, value ] of Object.entries( attributes ) ) {\n\t\tif ( value instanceof RichTextData ) {\n\t\t\tnewAttributes[ key ] = value.valueOf();\n\t\t}\n\t}\n\treturn newAttributes;\n}\n\nfunction makeBlocksSerializable( blocks ) {\n\treturn blocks.map( ( block ) => {\n\t\tconst { innerBlocks, attributes, ...rest } = block;\n\t\treturn {\n\t\t\t...rest,\n\t\t\tattributes: makeBlockAttributesSerializable( attributes ),\n\t\t\tinnerBlocks: makeBlocksSerializable( innerBlocks ),\n\t\t};\n\t} );\n}\n\n/**\n * Returns the list of post type entities.\n *\n * @return {Promise} Entities promise\n */\nasync function loadPostTypeEntities() {\n\tconst postTypes = await apiFetch( {\n\t\tpath: '/wp/v2/types?context=view',\n\t} );\n\treturn Object.entries( postTypes ?? {} ).map( ( [ name, postType ] ) => {\n\t\tconst isTemplate = [ 'wp_template', 'wp_template_part' ].includes(\n\t\t\tname\n\t\t);\n\t\tconst namespace = postType?.rest_namespace ?? 'wp/v2';\n\t\treturn {\n\t\t\tkind: 'postType',\n\t\t\tbaseURL: `/${ namespace }/${ postType.rest_base }`,\n\t\t\tbaseURLParams: { context: 'edit' },\n\t\t\tname,\n\t\t\tlabel: postType.name,\n\t\t\ttransientEdits: {\n\t\t\t\tblocks: true,\n\t\t\t\tselection: true,\n\t\t\t},\n\t\t\tmergedEdits: { meta: true },\n\t\t\trawAttributes: POST_RAW_ATTRIBUTES,\n\t\t\tgetTitle: ( record ) =>\n\t\t\t\trecord?.title?.rendered ||\n\t\t\t\trecord?.title ||\n\t\t\t\t( isTemplate\n\t\t\t\t\t? capitalCase( record.slug ?? '' )\n\t\t\t\t\t: String( record.id ) ),\n\t\t\t__unstablePrePersist: isTemplate ? undefined : prePersistPostType,\n\t\t\t__unstable_rest_base: postType.rest_base,\n\t\t\tsyncConfig: {\n\t\t\t\tfetch: async ( id ) => {\n\t\t\t\t\treturn apiFetch( {\n\t\t\t\t\t\tpath: `/${ namespace }/${ postType.rest_base }/${ id }?context=edit`,\n\t\t\t\t\t} );\n\t\t\t\t},\n\t\t\t\tapplyChangesToDoc: ( doc, changes ) => {\n\t\t\t\t\tconst document = doc.getMap( 'document' );\n\n\t\t\t\t\tObject.entries( changes ).forEach( ( [ key, value ] ) => {\n\t\t\t\t\t\tif ( typeof value !== 'function' ) {\n\t\t\t\t\t\t\tif ( key === 'blocks' ) {\n\t\t\t\t\t\t\t\tif ( ! serialisableBlocksCache.has( value ) ) {\n\t\t\t\t\t\t\t\t\tserialisableBlocksCache.set(\n\t\t\t\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\t\t\t\tmakeBlocksSerializable( value )\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tvalue = serialisableBlocksCache.get( value );\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif ( document.get( key ) !== value ) {\n\t\t\t\t\t\t\t\tdocument.set( key, value );\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\tfromCRDTDoc: ( doc ) => {\n\t\t\t\t\treturn doc.getMap( 'document' ).toJSON();\n\t\t\t\t},\n\t\t\t},\n\t\t\tsyncObjectType: 'postType/' + postType.name,\n\t\t\tgetSyncObjectId: ( id ) => id,\n\t\t\tsupportsPagination: true,\n\t\t\tgetRevisionsUrl: ( parentId, revisionId ) =>\n\t\t\t\t`/${ namespace }/${\n\t\t\t\t\tpostType.rest_base\n\t\t\t\t}/${ parentId }/revisions${\n\t\t\t\t\trevisionId ? '/' + revisionId : ''\n\t\t\t\t}`,\n\t\t\trevisionKey: isTemplate ? 'wp_id' : DEFAULT_ENTITY_KEY,\n\t\t};\n\t} );\n}\n\n/**\n * Returns the list of the taxonomies entities.\n *\n * @return {Promise} Entities promise\n */\nasync function loadTaxonomyEntities() {\n\tconst taxonomies = await apiFetch( {\n\t\tpath: '/wp/v2/taxonomies?context=view',\n\t} );\n\treturn Object.entries( taxonomies ?? {} ).map( ( [ name, taxonomy ] ) => {\n\t\tconst namespace = taxonomy?.rest_namespace ?? 'wp/v2';\n\t\treturn {\n\t\t\tkind: 'taxonomy',\n\t\t\tbaseURL: `/${ namespace }/${ taxonomy.rest_base }`,\n\t\t\tbaseURLParams: { context: 'edit' },\n\t\t\tname,\n\t\t\tlabel: taxonomy.name,\n\t\t};\n\t} );\n}\n\n/**\n * Returns the Site entity.\n *\n * @return {Promise} Entity promise\n */\nasync function loadSiteEntity() {\n\tconst entity = {\n\t\tlabel: __( 'Site' ),\n\t\tname: 'site',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/settings',\n\t\tsyncConfig: {\n\t\t\tfetch: async () => {\n\t\t\t\treturn apiFetch( { path: '/wp/v2/settings' } );\n\t\t\t},\n\t\t\tapplyChangesToDoc: ( doc, changes ) => {\n\t\t\t\tconst document = doc.getMap( 'document' );\n\t\t\t\tObject.entries( changes ).forEach( ( [ key, value ] ) => {\n\t\t\t\t\tif ( document.get( key ) !== value ) {\n\t\t\t\t\t\tdocument.set( key, value );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t},\n\t\t\tfromCRDTDoc: ( doc ) => {\n\t\t\t\treturn doc.getMap( 'document' ).toJSON();\n\t\t\t},\n\t\t},\n\t\tsyncObjectType: 'root/site',\n\t\tgetSyncObjectId: () => 'index',\n\t\tmeta: {},\n\t};\n\n\tconst site = await apiFetch( {\n\t\tpath: entity.baseURL,\n\t\tmethod: 'OPTIONS',\n\t} );\n\n\tconst labels = {};\n\tObject.entries( site?.schema?.properties ?? {} ).forEach(\n\t\t( [ key, value ] ) => {\n\t\t\t// Ignore properties `title` and `type` keys.\n\t\t\tif ( typeof value === 'object' && value.title ) {\n\t\t\t\tlabels[ key ] = value.title;\n\t\t\t}\n\t\t}\n\t);\n\n\treturn [ { ...entity, meta: { labels } } ];\n}\n\n/**\n * Returns the entity's getter method name given its kind and name or plural name.\n *\n * @example\n * ```js\n * const nameSingular = getMethodName( 'root', 'theme', 'get' );\n * // nameSingular is getRootTheme\n *\n * const namePlural = getMethodName( 'root', 'themes', 'set' );\n * // namePlural is setRootThemes\n * ```\n *\n * @param {string} kind Entity kind.\n * @param {string} name Entity name or plural name.\n * @param {string} prefix Function prefix.\n *\n * @return {string} Method name\n */\nexport const getMethodName = ( kind, name, prefix = 'get' ) => {\n\tconst kindPrefix = kind === 'root' ? '' : pascalCase( kind );\n\tconst suffix = pascalCase( name );\n\treturn `${ prefix }${ kindPrefix }${ suffix }`;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_changeCase","require","_apiFetch","_interopRequireDefault","_i18n","_richText","DEFAULT_ENTITY_KEY","exports","POST_RAW_ATTRIBUTES","rootEntitiesConfig","label","__","kind","name","baseURL","baseURLParams","_fields","join","plural","syncConfig","fetch","apiFetch","path","applyChangesToDoc","doc","changes","document","getMap","Object","entries","forEach","key","value","get","set","fromCRDTDoc","toJSON","syncObjectType","getSyncObjectId","context","id","rawAttributes","supportsPagination","transientEdits","blocks","getTitle","record","title","rendered","getRevisionsUrl","parentId","revisionId","additionalEntityConfigLoaders","loadEntities","loadPostTypeEntities","loadTaxonomyEntities","loadSiteEntity","prePersistPostType","persistedRecord","edits","newEdits","status","serialisableBlocksCache","WeakMap","makeBlockAttributesSerializable","attributes","newAttributes","RichTextData","valueOf","makeBlocksSerializable","map","block","innerBlocks","rest","postTypes","postType","_postType$rest_namesp","isTemplate","includes","namespace","rest_namespace","rest_base","selection","mergedEdits","meta","_record$slug","capitalCase","slug","String","__unstablePrePersist","undefined","__unstable_rest_base","has","revisionKey","taxonomies","taxonomy","_taxonomy$rest_namesp","_site$schema$properti","entity","site","method","labels","schema","properties","getMethodName","prefix","kindPrefix","pascalCase","suffix"],"sources":["@wordpress/core-data/src/entities.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { capitalCase, pascalCase } from 'change-case';\n\n/**\n * WordPress dependencies\n */\nimport apiFetch from '@wordpress/api-fetch';\nimport { __ } from '@wordpress/i18n';\nimport { RichTextData } from '@wordpress/rich-text';\n\nexport const DEFAULT_ENTITY_KEY = 'id';\nconst POST_RAW_ATTRIBUTES = [ 'title', 'excerpt', 'content' ];\n\nexport const rootEntitiesConfig = [\n\t{\n\t\tlabel: __( 'Base' ),\n\t\tkind: 'root',\n\t\tname: '__unstableBase',\n\t\tbaseURL: '/',\n\t\tbaseURLParams: {\n\t\t\t// Please also change the preload path when changing this.\n\t\t\t// @see lib/compat/wordpress-6.8/preload.php\n\t\t\t_fields: [\n\t\t\t\t'description',\n\t\t\t\t'gmt_offset',\n\t\t\t\t'home',\n\t\t\t\t'name',\n\t\t\t\t'site_icon',\n\t\t\t\t'site_icon_url',\n\t\t\t\t'site_logo',\n\t\t\t\t'timezone_string',\n\t\t\t\t'default_template_part_areas',\n\t\t\t\t'default_template_types',\n\t\t\t\t'url',\n\t\t\t\t'page_for_posts',\n\t\t\t\t'page_on_front',\n\t\t\t\t'show_on_front',\n\t\t\t].join( ',' ),\n\t\t},\n\t\t// The entity doesn't support selecting multiple records.\n\t\t// The property is maintained for backward compatibility.\n\t\tplural: '__unstableBases',\n\t\tsyncConfig: {\n\t\t\tfetch: async () => {\n\t\t\t\treturn apiFetch( { path: '/' } );\n\t\t\t},\n\t\t\tapplyChangesToDoc: ( doc, changes ) => {\n\t\t\t\tconst document = doc.getMap( 'document' );\n\t\t\t\tObject.entries( changes ).forEach( ( [ key, value ] ) => {\n\t\t\t\t\tif ( document.get( key ) !== value ) {\n\t\t\t\t\t\tdocument.set( key, value );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t},\n\t\t\tfromCRDTDoc: ( doc ) => {\n\t\t\t\treturn doc.getMap( 'document' ).toJSON();\n\t\t\t},\n\t\t},\n\t\tsyncObjectType: 'root/base',\n\t\tgetSyncObjectId: () => 'index',\n\t},\n\t{\n\t\tlabel: __( 'Post Type' ),\n\t\tname: 'postType',\n\t\tkind: 'root',\n\t\tkey: 'slug',\n\t\tbaseURL: '/wp/v2/types',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'postTypes',\n\t\tsyncConfig: {\n\t\t\tfetch: async ( id ) => {\n\t\t\t\treturn apiFetch( {\n\t\t\t\t\tpath: `/wp/v2/types/${ id }?context=edit`,\n\t\t\t\t} );\n\t\t\t},\n\t\t\tapplyChangesToDoc: ( doc, changes ) => {\n\t\t\t\tconst document = doc.getMap( 'document' );\n\t\t\t\tObject.entries( changes ).forEach( ( [ key, value ] ) => {\n\t\t\t\t\tif ( document.get( key ) !== value ) {\n\t\t\t\t\t\tdocument.set( key, value );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t},\n\t\t\tfromCRDTDoc: ( doc ) => {\n\t\t\t\treturn doc.getMap( 'document' ).toJSON();\n\t\t\t},\n\t\t},\n\t\tsyncObjectType: 'root/postType',\n\t\tgetSyncObjectId: ( id ) => id,\n\t},\n\t{\n\t\tname: 'media',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/media',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'mediaItems',\n\t\tlabel: __( 'Media' ),\n\t\trawAttributes: [ 'caption', 'title', 'description' ],\n\t\tsupportsPagination: true,\n\t},\n\t{\n\t\tname: 'taxonomy',\n\t\tkind: 'root',\n\t\tkey: 'slug',\n\t\tbaseURL: '/wp/v2/taxonomies',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'taxonomies',\n\t\tlabel: __( 'Taxonomy' ),\n\t},\n\t{\n\t\tname: 'sidebar',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/sidebars',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'sidebars',\n\t\ttransientEdits: { blocks: true },\n\t\tlabel: __( 'Widget areas' ),\n\t},\n\t{\n\t\tname: 'widget',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/widgets',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'widgets',\n\t\ttransientEdits: { blocks: true },\n\t\tlabel: __( 'Widgets' ),\n\t},\n\t{\n\t\tname: 'widgetType',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/widget-types',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'widgetTypes',\n\t\tlabel: __( 'Widget types' ),\n\t},\n\t{\n\t\tlabel: __( 'User' ),\n\t\tname: 'user',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/users',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'users',\n\t},\n\t{\n\t\tname: 'comment',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/comments',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'comments',\n\t\tlabel: __( 'Comment' ),\n\t},\n\t{\n\t\tname: 'menu',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/menus',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'menus',\n\t\tlabel: __( 'Menu' ),\n\t},\n\t{\n\t\tname: 'menuItem',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/menu-items',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'menuItems',\n\t\tlabel: __( 'Menu Item' ),\n\t\trawAttributes: [ 'title' ],\n\t},\n\t{\n\t\tname: 'menuLocation',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/menu-locations',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'menuLocations',\n\t\tlabel: __( 'Menu Location' ),\n\t\tkey: 'name',\n\t},\n\t{\n\t\tlabel: __( 'Global Styles' ),\n\t\tname: 'globalStyles',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/global-styles',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'globalStylesVariations', // Should be different from name.\n\t\tgetTitle: ( record ) => record?.title?.rendered || record?.title,\n\t\tgetRevisionsUrl: ( parentId, revisionId ) =>\n\t\t\t`/wp/v2/global-styles/${ parentId }/revisions${\n\t\t\t\trevisionId ? '/' + revisionId : ''\n\t\t\t}`,\n\t\tsupportsPagination: true,\n\t},\n\t{\n\t\tlabel: __( 'Themes' ),\n\t\tname: 'theme',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/themes',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'themes',\n\t\tkey: 'stylesheet',\n\t},\n\t{\n\t\tlabel: __( 'Plugins' ),\n\t\tname: 'plugin',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/plugins',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'plugins',\n\t\tkey: 'plugin',\n\t},\n\t{\n\t\tlabel: __( 'Status' ),\n\t\tname: 'status',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/statuses',\n\t\tbaseURLParams: { context: 'edit' },\n\t\tplural: 'statuses',\n\t\tkey: 'slug',\n\t},\n];\n\nexport const additionalEntityConfigLoaders = [\n\t{ kind: 'postType', loadEntities: loadPostTypeEntities },\n\t{ kind: 'taxonomy', loadEntities: loadTaxonomyEntities },\n\t{\n\t\tkind: 'root',\n\t\tname: 'site',\n\t\tplural: 'sites',\n\t\tloadEntities: loadSiteEntity,\n\t},\n];\n\n/**\n * Returns a function to be used to retrieve extra edits to apply before persisting a post type.\n *\n * @param {Object} persistedRecord Already persisted Post\n * @param {Object} edits Edits.\n * @return {Object} Updated edits.\n */\nexport const prePersistPostType = ( persistedRecord, edits ) => {\n\tconst newEdits = {};\n\n\tif ( persistedRecord?.status === 'auto-draft' ) {\n\t\t// Saving an auto-draft should create a draft by default.\n\t\tif ( ! edits.status && ! newEdits.status ) {\n\t\t\tnewEdits.status = 'draft';\n\t\t}\n\n\t\t// Fix the auto-draft default title.\n\t\tif (\n\t\t\t( ! edits.title || edits.title === 'Auto Draft' ) &&\n\t\t\t! newEdits.title &&\n\t\t\t( ! persistedRecord?.title ||\n\t\t\t\tpersistedRecord?.title === 'Auto Draft' )\n\t\t) {\n\t\t\tnewEdits.title = '';\n\t\t}\n\t}\n\n\treturn newEdits;\n};\n\nconst serialisableBlocksCache = new WeakMap();\n\nfunction makeBlockAttributesSerializable( attributes ) {\n\tconst newAttributes = { ...attributes };\n\tfor ( const [ key, value ] of Object.entries( attributes ) ) {\n\t\tif ( value instanceof RichTextData ) {\n\t\t\tnewAttributes[ key ] = value.valueOf();\n\t\t}\n\t}\n\treturn newAttributes;\n}\n\nfunction makeBlocksSerializable( blocks ) {\n\treturn blocks.map( ( block ) => {\n\t\tconst { innerBlocks, attributes, ...rest } = block;\n\t\treturn {\n\t\t\t...rest,\n\t\t\tattributes: makeBlockAttributesSerializable( attributes ),\n\t\t\tinnerBlocks: makeBlocksSerializable( innerBlocks ),\n\t\t};\n\t} );\n}\n\n/**\n * Returns the list of post type entities.\n *\n * @return {Promise} Entities promise\n */\nasync function loadPostTypeEntities() {\n\tconst postTypes = await apiFetch( {\n\t\tpath: '/wp/v2/types?context=view',\n\t} );\n\treturn Object.entries( postTypes ?? {} ).map( ( [ name, postType ] ) => {\n\t\tconst isTemplate = [ 'wp_template', 'wp_template_part' ].includes(\n\t\t\tname\n\t\t);\n\t\tconst namespace = postType?.rest_namespace ?? 'wp/v2';\n\t\treturn {\n\t\t\tkind: 'postType',\n\t\t\tbaseURL: `/${ namespace }/${ postType.rest_base }`,\n\t\t\tbaseURLParams: { context: 'edit' },\n\t\t\tname,\n\t\t\tlabel: postType.name,\n\t\t\ttransientEdits: {\n\t\t\t\tblocks: true,\n\t\t\t\tselection: true,\n\t\t\t},\n\t\t\tmergedEdits: { meta: true },\n\t\t\trawAttributes: POST_RAW_ATTRIBUTES,\n\t\t\tgetTitle: ( record ) =>\n\t\t\t\trecord?.title?.rendered ||\n\t\t\t\trecord?.title ||\n\t\t\t\t( isTemplate\n\t\t\t\t\t? capitalCase( record.slug ?? '' )\n\t\t\t\t\t: String( record.id ) ),\n\t\t\t__unstablePrePersist: isTemplate ? undefined : prePersistPostType,\n\t\t\t__unstable_rest_base: postType.rest_base,\n\t\t\tsyncConfig: {\n\t\t\t\tfetch: async ( id ) => {\n\t\t\t\t\treturn apiFetch( {\n\t\t\t\t\t\tpath: `/${ namespace }/${ postType.rest_base }/${ id }?context=edit`,\n\t\t\t\t\t} );\n\t\t\t\t},\n\t\t\t\tapplyChangesToDoc: ( doc, changes ) => {\n\t\t\t\t\tconst document = doc.getMap( 'document' );\n\n\t\t\t\t\tObject.entries( changes ).forEach( ( [ key, value ] ) => {\n\t\t\t\t\t\tif ( typeof value !== 'function' ) {\n\t\t\t\t\t\t\tif ( key === 'blocks' ) {\n\t\t\t\t\t\t\t\tif ( ! serialisableBlocksCache.has( value ) ) {\n\t\t\t\t\t\t\t\t\tserialisableBlocksCache.set(\n\t\t\t\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\t\t\t\tmakeBlocksSerializable( value )\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tvalue = serialisableBlocksCache.get( value );\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif ( document.get( key ) !== value ) {\n\t\t\t\t\t\t\t\tdocument.set( key, value );\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\tfromCRDTDoc: ( doc ) => {\n\t\t\t\t\treturn doc.getMap( 'document' ).toJSON();\n\t\t\t\t},\n\t\t\t},\n\t\t\tsyncObjectType: 'postType/' + postType.name,\n\t\t\tgetSyncObjectId: ( id ) => id,\n\t\t\tsupportsPagination: true,\n\t\t\tgetRevisionsUrl: ( parentId, revisionId ) =>\n\t\t\t\t`/${ namespace }/${\n\t\t\t\t\tpostType.rest_base\n\t\t\t\t}/${ parentId }/revisions${\n\t\t\t\t\trevisionId ? '/' + revisionId : ''\n\t\t\t\t}`,\n\t\t\trevisionKey: isTemplate ? 'wp_id' : DEFAULT_ENTITY_KEY,\n\t\t};\n\t} );\n}\n\n/**\n * Returns the list of the taxonomies entities.\n *\n * @return {Promise} Entities promise\n */\nasync function loadTaxonomyEntities() {\n\tconst taxonomies = await apiFetch( {\n\t\tpath: '/wp/v2/taxonomies?context=view',\n\t} );\n\treturn Object.entries( taxonomies ?? {} ).map( ( [ name, taxonomy ] ) => {\n\t\tconst namespace = taxonomy?.rest_namespace ?? 'wp/v2';\n\t\treturn {\n\t\t\tkind: 'taxonomy',\n\t\t\tbaseURL: `/${ namespace }/${ taxonomy.rest_base }`,\n\t\t\tbaseURLParams: { context: 'edit' },\n\t\t\tname,\n\t\t\tlabel: taxonomy.name,\n\t\t};\n\t} );\n}\n\n/**\n * Returns the Site entity.\n *\n * @return {Promise} Entity promise\n */\nasync function loadSiteEntity() {\n\tconst entity = {\n\t\tlabel: __( 'Site' ),\n\t\tname: 'site',\n\t\tkind: 'root',\n\t\tbaseURL: '/wp/v2/settings',\n\t\tsyncConfig: {\n\t\t\tfetch: async () => {\n\t\t\t\treturn apiFetch( { path: '/wp/v2/settings' } );\n\t\t\t},\n\t\t\tapplyChangesToDoc: ( doc, changes ) => {\n\t\t\t\tconst document = doc.getMap( 'document' );\n\t\t\t\tObject.entries( changes ).forEach( ( [ key, value ] ) => {\n\t\t\t\t\tif ( document.get( key ) !== value ) {\n\t\t\t\t\t\tdocument.set( key, value );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t},\n\t\t\tfromCRDTDoc: ( doc ) => {\n\t\t\t\treturn doc.getMap( 'document' ).toJSON();\n\t\t\t},\n\t\t},\n\t\tsyncObjectType: 'root/site',\n\t\tgetSyncObjectId: () => 'index',\n\t\tmeta: {},\n\t};\n\n\tconst site = await apiFetch( {\n\t\tpath: entity.baseURL,\n\t\tmethod: 'OPTIONS',\n\t} );\n\n\tconst labels = {};\n\tObject.entries( site?.schema?.properties ?? {} ).forEach(\n\t\t( [ key, value ] ) => {\n\t\t\t// Ignore properties `title` and `type` keys.\n\t\t\tif ( typeof value === 'object' && value.title ) {\n\t\t\t\tlabels[ key ] = value.title;\n\t\t\t}\n\t\t}\n\t);\n\n\treturn [ { ...entity, meta: { labels } } ];\n}\n\n/**\n * Returns the entity's getter method name given its kind and name or plural name.\n *\n * @example\n * ```js\n * const nameSingular = getMethodName( 'root', 'theme', 'get' );\n * // nameSingular is getRootTheme\n *\n * const namePlural = getMethodName( 'root', 'themes', 'set' );\n * // namePlural is setRootThemes\n * ```\n *\n * @param {string} kind Entity kind.\n * @param {string} name Entity name or plural name.\n * @param {string} prefix Function prefix.\n *\n * @return {string} Method name\n */\nexport const getMethodName = ( kind, name, prefix = 'get' ) => {\n\tconst kindPrefix = kind === 'root' ? '' : pascalCase( kind );\n\tconst suffix = pascalCase( name );\n\treturn `${ prefix }${ kindPrefix }${ suffix }`;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -105,14 +105,7 @@ function normalizePageId(value) {
|
|
|
105
105
|
return value.toString();
|
|
106
106
|
}
|
|
107
107
|
const getHomePage = exports.getHomePage = (0, _data.createRegistrySelector)(select => (0, _data.createSelector)(() => {
|
|
108
|
-
const
|
|
109
|
-
kind: 'root',
|
|
110
|
-
name: 'site'
|
|
111
|
-
});
|
|
112
|
-
if (!canReadSiteData) {
|
|
113
|
-
return null;
|
|
114
|
-
}
|
|
115
|
-
const siteData = select(_name.STORE_NAME).getEntityRecord('root', 'site');
|
|
108
|
+
const siteData = select(_name.STORE_NAME).getEntityRecord('root', '__unstableBase');
|
|
116
109
|
if (!siteData) {
|
|
117
110
|
return null;
|
|
118
111
|
}
|
|
@@ -130,21 +123,11 @@ const getHomePage = exports.getHomePage = (0, _data.createRegistrySelector)(sele
|
|
|
130
123
|
postType: 'wp_template',
|
|
131
124
|
postId: frontPageTemplateId
|
|
132
125
|
};
|
|
133
|
-
}, state => [(0, _selectors.
|
|
134
|
-
kind: 'root',
|
|
135
|
-
name: 'site'
|
|
136
|
-
}) && (0, _selectors.getEntityRecord)(state, 'root', 'site'), (0, _selectors.getDefaultTemplateId)(state, {
|
|
126
|
+
}, state => [(0, _selectors.getEntityRecord)(state, 'root', '__unstableBase'), (0, _selectors.getDefaultTemplateId)(state, {
|
|
137
127
|
slug: 'front-page'
|
|
138
128
|
})]));
|
|
139
129
|
const getPostsPageId = exports.getPostsPageId = (0, _data.createRegistrySelector)(select => () => {
|
|
140
|
-
const
|
|
141
|
-
kind: 'root',
|
|
142
|
-
name: 'site'
|
|
143
|
-
});
|
|
144
|
-
if (!canReadSiteData) {
|
|
145
|
-
return null;
|
|
146
|
-
}
|
|
147
|
-
const siteData = select(_name.STORE_NAME).getEntityRecord('root', 'site');
|
|
130
|
+
const siteData = select(_name.STORE_NAME).getEntityRecord('root', '__unstableBase');
|
|
148
131
|
return siteData?.show_on_front === 'page' ? normalizePageId(siteData.page_for_posts) : null;
|
|
149
132
|
});
|
|
150
133
|
const getTemplateId = exports.getTemplateId = (0, _data.createRegistrySelector)(select => (state, postType, postId) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_data","require","_selectors","_name","_lockUnlock","getUndoManager","state","undoManager","getNavigationFallbackId","navigationFallbackId","getBlockPatternsForPostType","exports","createRegistrySelector","select","createSelector","postType","STORE_NAME","getBlockPatterns","filter","postTypes","Array","isArray","includes","getEntityRecordsPermissions","kind","name","ids","normalizedIds","map","id","delete","canUser","update","userPermissions","getEntityRecordPermissions","getRegisteredPostMeta","_state$registeredPost","registeredPostMeta","normalizePageId","value","Number","toString","getHomePage","canReadSiteData","siteData","getEntityRecord","homepageId","show_on_front","page_on_front","postId","frontPageTemplateId","getDefaultTemplateId","slug","getPostsPageId","page_for_posts","getTemplateId","homepage","unlock","templates","getEntityRecords","per_page","find","editedEntity","getEditedEntityRecord","postsPageId","currentTemplateSlug","template","currentTemplate","slugToCheck"],"sources":["@wordpress/core-data/src/private-selectors.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSelector, createRegistrySelector } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tcanUser,\n\tgetDefaultTemplateId,\n\tgetEntityRecord,\n\ttype State,\n} from './selectors';\nimport { STORE_NAME } from './name';\nimport { unlock } from './lock-unlock';\n\ntype EntityRecordKey = string | number;\n\n/**\n * Returns the previous edit from the current undo offset\n * for the entity records edits history, if any.\n *\n * @param state State tree.\n *\n * @return The undo manager.\n */\nexport function getUndoManager( state: State ) {\n\treturn state.undoManager;\n}\n\n/**\n * Retrieve the fallback Navigation.\n *\n * @param state Data state.\n * @return The ID for the fallback Navigation post.\n */\nexport function getNavigationFallbackId(\n\tstate: State\n): EntityRecordKey | undefined {\n\treturn state.navigationFallbackId;\n}\n\nexport const getBlockPatternsForPostType = createRegistrySelector(\n\t( select: any ) =>\n\t\tcreateSelector(\n\t\t\t( state, postType ) =>\n\t\t\t\tselect( STORE_NAME )\n\t\t\t\t\t.getBlockPatterns()\n\t\t\t\t\t.filter(\n\t\t\t\t\t\t( { postTypes } ) =>\n\t\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\t\tpostTypes.includes( postType ) )\n\t\t\t\t\t),\n\t\t\t() => [ select( STORE_NAME ).getBlockPatterns() ]\n\t\t)\n);\n\n/**\n * Returns the entity records permissions for the given entity record ids.\n */\nexport const getEntityRecordsPermissions = createRegistrySelector( ( select ) =>\n\tcreateSelector(\n\t\t(\n\t\t\tstate: State,\n\t\t\tkind: string,\n\t\t\tname: string,\n\t\t\tids: string | string[]\n\t\t) => {\n\t\t\tconst normalizedIds = Array.isArray( ids ) ? ids : [ ids ];\n\t\t\treturn normalizedIds.map( ( id ) => ( {\n\t\t\t\tdelete: select( STORE_NAME ).canUser( 'delete', {\n\t\t\t\t\tkind,\n\t\t\t\t\tname,\n\t\t\t\t\tid,\n\t\t\t\t} ),\n\t\t\t\tupdate: select( STORE_NAME ).canUser( 'update', {\n\t\t\t\t\tkind,\n\t\t\t\t\tname,\n\t\t\t\t\tid,\n\t\t\t\t} ),\n\t\t\t} ) );\n\t\t},\n\t\t( state ) => [ state.userPermissions ]\n\t)\n);\n\n/**\n * Returns the entity record permissions for the given entity record id.\n *\n * @param state Data state.\n * @param kind Entity kind.\n * @param name Entity name.\n * @param id Entity record id.\n *\n * @return The entity record permissions.\n */\nexport function getEntityRecordPermissions(\n\tstate: State,\n\tkind: string,\n\tname: string,\n\tid: string\n) {\n\treturn getEntityRecordsPermissions( state, kind, name, id )[ 0 ];\n}\n\n/**\n * Returns the registered post meta fields for a given post type.\n *\n * @param state Data state.\n * @param postType Post type.\n *\n * @return Registered post meta fields.\n */\nexport function getRegisteredPostMeta( state: State, postType: string ) {\n\treturn state.registeredPostMeta?.[ postType ] ?? {};\n}\n\nfunction normalizePageId( value: number | string | undefined ): string | null {\n\tif ( ! value || ! [ 'number', 'string' ].includes( typeof value ) ) {\n\t\treturn null;\n\t}\n\n\t// We also need to check if it's not zero (`'0'`).\n\tif ( Number( value ) === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn value.toString();\n}\n\ninterface SiteData {\n\tshow_on_front?: string;\n\tpage_on_front?: string | number;\n\tpage_for_posts?: string | number;\n}\n\nexport const getHomePage = createRegistrySelector( ( select ) =>\n\tcreateSelector(\n\t\t() => {\n\t\t\tconst canReadSiteData = select( STORE_NAME ).canUser( 'read', {\n\t\t\t\tkind: 'root',\n\t\t\t\tname: 'site',\n\t\t\t} );\n\t\t\tif ( ! canReadSiteData ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tconst siteData = select( STORE_NAME ).getEntityRecord(\n\t\t\t\t'root',\n\t\t\t\t'site'\n\t\t\t) as SiteData | undefined;\n\t\t\tif ( ! siteData ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tconst homepageId =\n\t\t\t\tsiteData?.show_on_front === 'page'\n\t\t\t\t\t? normalizePageId( siteData.page_on_front )\n\t\t\t\t\t: null;\n\t\t\tif ( homepageId ) {\n\t\t\t\treturn { postType: 'page', postId: homepageId };\n\t\t\t}\n\t\t\tconst frontPageTemplateId = select(\n\t\t\t\tSTORE_NAME\n\t\t\t).getDefaultTemplateId( {\n\t\t\t\tslug: 'front-page',\n\t\t\t} );\n\t\t\treturn { postType: 'wp_template', postId: frontPageTemplateId };\n\t\t},\n\t\t( state ) => [\n\t\t\tcanUser( state, 'read', {\n\t\t\t\tkind: 'root',\n\t\t\t\tname: 'site',\n\t\t\t} ) && getEntityRecord( state, 'root', 'site' ),\n\t\t\tgetDefaultTemplateId( state, {\n\t\t\t\tslug: 'front-page',\n\t\t\t} ),\n\t\t]\n\t)\n);\n\nexport const getPostsPageId = createRegistrySelector( ( select ) => () => {\n\tconst canReadSiteData = select( STORE_NAME ).canUser( 'read', {\n\t\tkind: 'root',\n\t\tname: 'site',\n\t} );\n\tif ( ! canReadSiteData ) {\n\t\treturn null;\n\t}\n\tconst siteData = select( STORE_NAME ).getEntityRecord( 'root', 'site' ) as\n\t\t| SiteData\n\t\t| undefined;\n\treturn siteData?.show_on_front === 'page'\n\t\t? normalizePageId( siteData.page_for_posts )\n\t\t: null;\n} );\n\nexport const getTemplateId = createRegistrySelector(\n\t( select ) => ( state, postType, postId ) => {\n\t\tconst homepage = unlock( select( STORE_NAME ) ).getHomePage();\n\n\t\tif ( ! homepage ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// For the front page, we always use the front page template if existing.\n\t\tif (\n\t\t\tpostType === 'page' &&\n\t\t\tpostType === homepage?.postType &&\n\t\t\tpostId.toString() === homepage?.postId\n\t\t) {\n\t\t\t// The /lookup endpoint cannot currently handle a lookup\n\t\t\t// when a page is set as the front page, so specifically in\n\t\t\t// that case, we want to check if there is a front page\n\t\t\t// template, and instead of falling back to the home\n\t\t\t// template, we want to fall back to the page template.\n\t\t\tconst templates = select( STORE_NAME ).getEntityRecords(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template',\n\t\t\t\t{\n\t\t\t\t\tper_page: -1,\n\t\t\t\t}\n\t\t\t);\n\t\t\tif ( ! templates ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst id = templates.find( ( { slug } ) => slug === 'front-page' )\n\t\t\t\t?.id;\n\t\t\tif ( id ) {\n\t\t\t\treturn id;\n\t\t\t}\n\t\t\t// If no front page template is found, continue with the\n\t\t\t// logic below (fetching the page template).\n\t\t}\n\n\t\tconst editedEntity = select( STORE_NAME ).getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\tpostType,\n\t\t\tpostId\n\t\t);\n\t\tif ( ! editedEntity ) {\n\t\t\treturn;\n\t\t}\n\t\tconst postsPageId = unlock( select( STORE_NAME ) ).getPostsPageId();\n\t\t// Check if the current page is the posts page.\n\t\tif ( postType === 'page' && postsPageId === postId.toString() ) {\n\t\t\treturn select( STORE_NAME ).getDefaultTemplateId( {\n\t\t\t\tslug: 'home',\n\t\t\t} );\n\t\t}\n\t\t// First see if the post/page has an assigned template and fetch it.\n\t\tconst currentTemplateSlug = editedEntity.template;\n\t\tif ( currentTemplateSlug ) {\n\t\t\tconst currentTemplate = select( STORE_NAME )\n\t\t\t\t.getEntityRecords( 'postType', 'wp_template', {\n\t\t\t\t\tper_page: -1,\n\t\t\t\t} )\n\t\t\t\t?.find( ( { slug } ) => slug === currentTemplateSlug );\n\t\t\tif ( currentTemplate ) {\n\t\t\t\treturn currentTemplate.id;\n\t\t\t}\n\t\t}\n\t\t// If no template is assigned, use the default template.\n\t\tlet slugToCheck;\n\t\t// In `draft` status we might not have a slug available, so we use the `single`\n\t\t// post type templates slug(ex page, single-post, single-product etc..).\n\t\t// Pages do not need the `single` prefix in the slug to be prioritized\n\t\t// through template hierarchy.\n\t\tif ( editedEntity.slug ) {\n\t\t\tslugToCheck =\n\t\t\t\tpostType === 'page'\n\t\t\t\t\t? `${ postType }-${ editedEntity.slug }`\n\t\t\t\t\t: `single-${ postType }-${ editedEntity.slug }`;\n\t\t} else {\n\t\t\tslugToCheck = postType === 'page' ? 'page' : `single-${ postType }`;\n\t\t}\n\t\treturn select( STORE_NAME ).getDefaultTemplateId( {\n\t\t\tslug: slugToCheck,\n\t\t} );\n\t}\n);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_data","require","_selectors","_name","_lockUnlock","getUndoManager","state","undoManager","getNavigationFallbackId","navigationFallbackId","getBlockPatternsForPostType","exports","createRegistrySelector","select","createSelector","postType","STORE_NAME","getBlockPatterns","filter","postTypes","Array","isArray","includes","getEntityRecordsPermissions","kind","name","ids","normalizedIds","map","id","delete","canUser","update","userPermissions","getEntityRecordPermissions","getRegisteredPostMeta","_state$registeredPost","registeredPostMeta","normalizePageId","value","Number","toString","getHomePage","siteData","getEntityRecord","homepageId","show_on_front","page_on_front","postId","frontPageTemplateId","getDefaultTemplateId","slug","getPostsPageId","page_for_posts","getTemplateId","homepage","unlock","templates","getEntityRecords","per_page","find","editedEntity","getEditedEntityRecord","postsPageId","currentTemplateSlug","template","currentTemplate","slugToCheck"],"sources":["@wordpress/core-data/src/private-selectors.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSelector, createRegistrySelector } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { getDefaultTemplateId, getEntityRecord, type State } from './selectors';\nimport { STORE_NAME } from './name';\nimport { unlock } from './lock-unlock';\n\ntype EntityRecordKey = string | number;\n\n/**\n * Returns the previous edit from the current undo offset\n * for the entity records edits history, if any.\n *\n * @param state State tree.\n *\n * @return The undo manager.\n */\nexport function getUndoManager( state: State ) {\n\treturn state.undoManager;\n}\n\n/**\n * Retrieve the fallback Navigation.\n *\n * @param state Data state.\n * @return The ID for the fallback Navigation post.\n */\nexport function getNavigationFallbackId(\n\tstate: State\n): EntityRecordKey | undefined {\n\treturn state.navigationFallbackId;\n}\n\nexport const getBlockPatternsForPostType = createRegistrySelector(\n\t( select: any ) =>\n\t\tcreateSelector(\n\t\t\t( state, postType ) =>\n\t\t\t\tselect( STORE_NAME )\n\t\t\t\t\t.getBlockPatterns()\n\t\t\t\t\t.filter(\n\t\t\t\t\t\t( { postTypes } ) =>\n\t\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\t\tpostTypes.includes( postType ) )\n\t\t\t\t\t),\n\t\t\t() => [ select( STORE_NAME ).getBlockPatterns() ]\n\t\t)\n);\n\n/**\n * Returns the entity records permissions for the given entity record ids.\n */\nexport const getEntityRecordsPermissions = createRegistrySelector( ( select ) =>\n\tcreateSelector(\n\t\t(\n\t\t\tstate: State,\n\t\t\tkind: string,\n\t\t\tname: string,\n\t\t\tids: string | string[]\n\t\t) => {\n\t\t\tconst normalizedIds = Array.isArray( ids ) ? ids : [ ids ];\n\t\t\treturn normalizedIds.map( ( id ) => ( {\n\t\t\t\tdelete: select( STORE_NAME ).canUser( 'delete', {\n\t\t\t\t\tkind,\n\t\t\t\t\tname,\n\t\t\t\t\tid,\n\t\t\t\t} ),\n\t\t\t\tupdate: select( STORE_NAME ).canUser( 'update', {\n\t\t\t\t\tkind,\n\t\t\t\t\tname,\n\t\t\t\t\tid,\n\t\t\t\t} ),\n\t\t\t} ) );\n\t\t},\n\t\t( state ) => [ state.userPermissions ]\n\t)\n);\n\n/**\n * Returns the entity record permissions for the given entity record id.\n *\n * @param state Data state.\n * @param kind Entity kind.\n * @param name Entity name.\n * @param id Entity record id.\n *\n * @return The entity record permissions.\n */\nexport function getEntityRecordPermissions(\n\tstate: State,\n\tkind: string,\n\tname: string,\n\tid: string\n) {\n\treturn getEntityRecordsPermissions( state, kind, name, id )[ 0 ];\n}\n\n/**\n * Returns the registered post meta fields for a given post type.\n *\n * @param state Data state.\n * @param postType Post type.\n *\n * @return Registered post meta fields.\n */\nexport function getRegisteredPostMeta( state: State, postType: string ) {\n\treturn state.registeredPostMeta?.[ postType ] ?? {};\n}\n\nfunction normalizePageId( value: number | string | undefined ): string | null {\n\tif ( ! value || ! [ 'number', 'string' ].includes( typeof value ) ) {\n\t\treturn null;\n\t}\n\n\t// We also need to check if it's not zero (`'0'`).\n\tif ( Number( value ) === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn value.toString();\n}\n\ninterface SiteData {\n\tshow_on_front?: string;\n\tpage_on_front?: string | number;\n\tpage_for_posts?: string | number;\n}\n\nexport const getHomePage = createRegistrySelector( ( select ) =>\n\tcreateSelector(\n\t\t() => {\n\t\t\tconst siteData = select( STORE_NAME ).getEntityRecord(\n\t\t\t\t'root',\n\t\t\t\t'__unstableBase'\n\t\t\t) as SiteData | undefined;\n\t\t\tif ( ! siteData ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tconst homepageId =\n\t\t\t\tsiteData?.show_on_front === 'page'\n\t\t\t\t\t? normalizePageId( siteData.page_on_front )\n\t\t\t\t\t: null;\n\t\t\tif ( homepageId ) {\n\t\t\t\treturn { postType: 'page', postId: homepageId };\n\t\t\t}\n\t\t\tconst frontPageTemplateId = select(\n\t\t\t\tSTORE_NAME\n\t\t\t).getDefaultTemplateId( {\n\t\t\t\tslug: 'front-page',\n\t\t\t} );\n\t\t\treturn { postType: 'wp_template', postId: frontPageTemplateId };\n\t\t},\n\t\t( state ) => [\n\t\t\tgetEntityRecord( state, 'root', '__unstableBase' ),\n\t\t\tgetDefaultTemplateId( state, {\n\t\t\t\tslug: 'front-page',\n\t\t\t} ),\n\t\t]\n\t)\n);\n\nexport const getPostsPageId = createRegistrySelector( ( select ) => () => {\n\tconst siteData = select( STORE_NAME ).getEntityRecord(\n\t\t'root',\n\t\t'__unstableBase'\n\t) as SiteData | undefined;\n\treturn siteData?.show_on_front === 'page'\n\t\t? normalizePageId( siteData.page_for_posts )\n\t\t: null;\n} );\n\nexport const getTemplateId = createRegistrySelector(\n\t( select ) => ( state, postType, postId ) => {\n\t\tconst homepage = unlock( select( STORE_NAME ) ).getHomePage();\n\n\t\tif ( ! homepage ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// For the front page, we always use the front page template if existing.\n\t\tif (\n\t\t\tpostType === 'page' &&\n\t\t\tpostType === homepage?.postType &&\n\t\t\tpostId.toString() === homepage?.postId\n\t\t) {\n\t\t\t// The /lookup endpoint cannot currently handle a lookup\n\t\t\t// when a page is set as the front page, so specifically in\n\t\t\t// that case, we want to check if there is a front page\n\t\t\t// template, and instead of falling back to the home\n\t\t\t// template, we want to fall back to the page template.\n\t\t\tconst templates = select( STORE_NAME ).getEntityRecords(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template',\n\t\t\t\t{\n\t\t\t\t\tper_page: -1,\n\t\t\t\t}\n\t\t\t);\n\t\t\tif ( ! templates ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst id = templates.find( ( { slug } ) => slug === 'front-page' )\n\t\t\t\t?.id;\n\t\t\tif ( id ) {\n\t\t\t\treturn id;\n\t\t\t}\n\t\t\t// If no front page template is found, continue with the\n\t\t\t// logic below (fetching the page template).\n\t\t}\n\n\t\tconst editedEntity = select( STORE_NAME ).getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\tpostType,\n\t\t\tpostId\n\t\t);\n\t\tif ( ! editedEntity ) {\n\t\t\treturn;\n\t\t}\n\t\tconst postsPageId = unlock( select( STORE_NAME ) ).getPostsPageId();\n\t\t// Check if the current page is the posts page.\n\t\tif ( postType === 'page' && postsPageId === postId.toString() ) {\n\t\t\treturn select( STORE_NAME ).getDefaultTemplateId( {\n\t\t\t\tslug: 'home',\n\t\t\t} );\n\t\t}\n\t\t// First see if the post/page has an assigned template and fetch it.\n\t\tconst currentTemplateSlug = editedEntity.template;\n\t\tif ( currentTemplateSlug ) {\n\t\t\tconst currentTemplate = select( STORE_NAME )\n\t\t\t\t.getEntityRecords( 'postType', 'wp_template', {\n\t\t\t\t\tper_page: -1,\n\t\t\t\t} )\n\t\t\t\t?.find( ( { slug } ) => slug === currentTemplateSlug );\n\t\t\tif ( currentTemplate ) {\n\t\t\t\treturn currentTemplate.id;\n\t\t\t}\n\t\t}\n\t\t// If no template is assigned, use the default template.\n\t\tlet slugToCheck;\n\t\t// In `draft` status we might not have a slug available, so we use the `single`\n\t\t// post type templates slug(ex page, single-post, single-product etc..).\n\t\t// Pages do not need the `single` prefix in the slug to be prioritized\n\t\t// through template hierarchy.\n\t\tif ( editedEntity.slug ) {\n\t\t\tslugToCheck =\n\t\t\t\tpostType === 'page'\n\t\t\t\t\t? `${ postType }-${ editedEntity.slug }`\n\t\t\t\t\t: `single-${ postType }-${ editedEntity.slug }`;\n\t\t} else {\n\t\t\tslugToCheck = postType === 'page' ? 'page' : `single-${ postType }`;\n\t\t}\n\t\treturn select( STORE_NAME ).getDefaultTemplateId( {\n\t\t\tslug: slugToCheck,\n\t\t} );\n\t}\n);\n"],"mappings":"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","ignoreList":[]}
|
package/build/selectors.js
CHANGED
|
@@ -321,11 +321,10 @@ const getRawEntityRecord = exports.getRawEntityRecord = (0, _data.createSelector
|
|
|
321
321
|
const record = getEntityRecord(state, kind, name, key);
|
|
322
322
|
return record && Object.keys(record).reduce((accumulator, _key) => {
|
|
323
323
|
if ((0, _utils.isRawAttribute)(getEntityConfig(state, kind, name), _key)) {
|
|
324
|
-
var _record$_key$raw;
|
|
325
324
|
// Because edits are the "raw" attribute values,
|
|
326
325
|
// we return those from record selectors to make rendering,
|
|
327
326
|
// comparisons, and joins with edits easier.
|
|
328
|
-
accumulator[_key] =
|
|
327
|
+
accumulator[_key] = record[_key]?.raw !== undefined ? record[_key]?.raw : record[_key];
|
|
329
328
|
} else {
|
|
330
329
|
accumulator[_key] = record[_key];
|
|
331
330
|
}
|