@wordpress/core-data 7.27.0 → 7.28.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.
Files changed (69) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +2 -2
  3. package/build/actions.js +7 -0
  4. package/build/actions.js.map +1 -1
  5. package/build/entities.js +15 -2
  6. package/build/entities.js.map +1 -1
  7. package/build/hooks/use-resource-permissions.js +1 -1
  8. package/build/hooks/use-resource-permissions.js.map +1 -1
  9. package/build/index.js +50 -8
  10. package/build/index.js.map +1 -1
  11. package/build/private-actions.js +99 -0
  12. package/build/private-actions.js.map +1 -1
  13. package/build/private-selectors.js +3 -0
  14. package/build/private-selectors.js.map +1 -1
  15. package/build/resolvers.js +1 -1
  16. package/build/resolvers.js.map +1 -1
  17. package/build/selectors.js +26 -1
  18. package/build/selectors.js.map +1 -1
  19. package/build/utils/log-entity-deprecation.js +63 -0
  20. package/build/utils/log-entity-deprecation.js.map +1 -0
  21. package/build-module/actions.js +7 -0
  22. package/build-module/actions.js.map +1 -1
  23. package/build-module/entities.js +14 -1
  24. package/build-module/entities.js.map +1 -1
  25. package/build-module/hooks/use-resource-permissions.js +1 -1
  26. package/build-module/hooks/use-resource-permissions.js.map +1 -1
  27. package/build-module/index.js +50 -8
  28. package/build-module/index.js.map +1 -1
  29. package/build-module/private-actions.js +96 -0
  30. package/build-module/private-actions.js.map +1 -1
  31. package/build-module/private-selectors.js +2 -0
  32. package/build-module/private-selectors.js.map +1 -1
  33. package/build-module/resolvers.js +1 -1
  34. package/build-module/resolvers.js.map +1 -1
  35. package/build-module/selectors.js +26 -1
  36. package/build-module/selectors.js.map +1 -1
  37. package/build-module/utils/log-entity-deprecation.js +55 -0
  38. package/build-module/utils/log-entity-deprecation.js.map +1 -0
  39. package/build-types/actions.d.ts.map +1 -1
  40. package/build-types/entities.d.ts +29 -18
  41. package/build-types/entities.d.ts.map +1 -1
  42. package/build-types/index.d.ts.map +1 -1
  43. package/build-types/private-actions.d.ts +24 -0
  44. package/build-types/private-actions.d.ts.map +1 -1
  45. package/build-types/private-selectors.d.ts +1 -1
  46. package/build-types/private-selectors.d.ts.map +1 -1
  47. package/build-types/reducer.d.ts +3 -3
  48. package/build-types/reducer.d.ts.map +1 -1
  49. package/build-types/selectors.d.ts +1 -1
  50. package/build-types/selectors.d.ts.map +1 -1
  51. package/build-types/utils/log-entity-deprecation.d.ts +15 -0
  52. package/build-types/utils/log-entity-deprecation.d.ts.map +1 -0
  53. package/package.json +18 -18
  54. package/src/actions.js +11 -0
  55. package/src/entities.js +14 -0
  56. package/src/hooks/test/use-resource-permissions.js +3 -3
  57. package/src/hooks/use-resource-permissions.ts +1 -1
  58. package/src/index.js +54 -14
  59. package/src/private-actions.js +118 -0
  60. package/src/private-selectors.ts +2 -0
  61. package/src/resolvers.js +1 -1
  62. package/src/selectors.ts +29 -1
  63. package/src/test/deprecated-entity-logging.js +291 -0
  64. package/src/test/private-actions.js +213 -0
  65. package/src/test/resolvers.js +7 -7
  66. package/src/test/selectors.js +18 -7
  67. package/src/utils/log-entity-deprecation.ts +67 -0
  68. package/src/utils/test/log-entity-deprecation.js +130 -0
  69. package/tsconfig.tsbuildinfo +1 -1
package/build/index.js CHANGED
@@ -27,6 +27,7 @@ var _entities = require("./entities");
27
27
  var _name = require("./name");
28
28
  var _lockUnlock = require("./lock-unlock");
29
29
  var _dynamicEntities = require("./dynamic-entities");
30
+ var _logEntityDeprecation = _interopRequireDefault(require("./utils/log-entity-deprecation"));
30
31
  var _entityProvider = _interopRequireWildcard(require("./entity-provider"));
31
32
  Object.keys(_entityProvider).forEach(function (key) {
32
33
  if (key === "default" || key === "__esModule") return;
@@ -108,9 +109,23 @@ const entitySelectors = entitiesConfig.reduce((result, entity) => {
108
109
  name,
109
110
  plural
110
111
  } = entity;
111
- result[(0, _entities.getMethodName)(kind, name)] = (state, key, query) => selectors.getEntityRecord(state, kind, name, key, query);
112
+ const getEntityRecordMethodName = (0, _entities.getMethodName)(kind, name);
113
+ result[getEntityRecordMethodName] = (state, key, query) => {
114
+ (0, _logEntityDeprecation.default)(kind, name, getEntityRecordMethodName, {
115
+ isShorthandSelector: true,
116
+ alternativeFunctionName: 'getEntityRecord'
117
+ });
118
+ return selectors.getEntityRecord(state, kind, name, key, query);
119
+ };
112
120
  if (plural) {
113
- result[(0, _entities.getMethodName)(kind, plural, 'get')] = (state, query) => selectors.getEntityRecords(state, kind, name, query);
121
+ const getEntityRecordsMethodName = (0, _entities.getMethodName)(kind, plural, 'get');
122
+ result[getEntityRecordsMethodName] = (state, query) => {
123
+ (0, _logEntityDeprecation.default)(kind, name, getEntityRecordsMethodName, {
124
+ isShorthandSelector: true,
125
+ alternativeFunctionName: 'getEntityRecords'
126
+ });
127
+ return selectors.getEntityRecords(state, kind, name, query);
128
+ };
114
129
  }
115
130
  return result;
116
131
  }, {});
@@ -120,11 +135,24 @@ const entityResolvers = entitiesConfig.reduce((result, entity) => {
120
135
  name,
121
136
  plural
122
137
  } = entity;
123
- result[(0, _entities.getMethodName)(kind, name)] = (key, query) => resolvers.getEntityRecord(kind, name, key, query);
138
+ const getEntityRecordMethodName = (0, _entities.getMethodName)(kind, name);
139
+ result[getEntityRecordMethodName] = (key, query) => {
140
+ (0, _logEntityDeprecation.default)(kind, name, getEntityRecordMethodName, {
141
+ isShorthandSelector: true,
142
+ alternativeFunctionName: 'getEntityRecord'
143
+ });
144
+ return resolvers.getEntityRecord(kind, name, key, query);
145
+ };
124
146
  if (plural) {
125
- const pluralMethodName = (0, _entities.getMethodName)(kind, plural, 'get');
126
- result[pluralMethodName] = (...args) => resolvers.getEntityRecords(kind, name, ...args);
127
- result[pluralMethodName].shouldInvalidate = action => resolvers.getEntityRecords.shouldInvalidate(action, kind, name);
147
+ const getEntityRecordsMethodName = (0, _entities.getMethodName)(kind, plural, 'get');
148
+ result[getEntityRecordsMethodName] = (...args) => {
149
+ (0, _logEntityDeprecation.default)(kind, plural, getEntityRecordsMethodName, {
150
+ isShorthandSelector: true,
151
+ alternativeFunctionName: 'getEntityRecords'
152
+ });
153
+ return resolvers.getEntityRecords(kind, name, ...args);
154
+ };
155
+ result[getEntityRecordsMethodName].shouldInvalidate = action => resolvers.getEntityRecords.shouldInvalidate(action, kind, name);
128
156
  }
129
157
  return result;
130
158
  }, {});
@@ -133,8 +161,22 @@ const entityActions = entitiesConfig.reduce((result, entity) => {
133
161
  kind,
134
162
  name
135
163
  } = entity;
136
- result[(0, _entities.getMethodName)(kind, name, 'save')] = (record, options) => actions.saveEntityRecord(kind, name, record, options);
137
- result[(0, _entities.getMethodName)(kind, name, 'delete')] = (key, query, options) => actions.deleteEntityRecord(kind, name, key, query, options);
164
+ const saveEntityRecordMethodName = (0, _entities.getMethodName)(kind, name, 'save');
165
+ result[saveEntityRecordMethodName] = (record, options) => {
166
+ (0, _logEntityDeprecation.default)(kind, name, saveEntityRecordMethodName, {
167
+ isShorthandSelector: true,
168
+ alternativeFunctionName: 'saveEntityRecord'
169
+ });
170
+ return actions.saveEntityRecord(kind, name, record, options);
171
+ };
172
+ const deleteEntityRecordMethodName = (0, _entities.getMethodName)(kind, name, 'delete');
173
+ result[deleteEntityRecordMethodName] = (key, query, options) => {
174
+ (0, _logEntityDeprecation.default)(kind, name, deleteEntityRecordMethodName, {
175
+ isShorthandSelector: true,
176
+ alternativeFunctionName: 'deleteEntityRecord'
177
+ });
178
+ return actions.deleteEntityRecord(kind, name, key, query, options);
179
+ };
138
180
  return result;
139
181
  }, {});
140
182
  const storeConfig = () => ({
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_reducer","_interopRequireDefault","selectors","_interopRequireWildcard","privateSelectors","actions","privateActions","resolvers","_actions2","_entities","_name","_lockUnlock","_dynamicEntities","_entityProvider","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_entityTypes","_fetch","_hooks","_privateApis","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","n","__proto__","a","getOwnPropertyDescriptor","u","i","set","entitiesConfig","rootEntitiesConfig","additionalEntityConfigLoaders","filter","config","name","entitySelectors","reduce","result","entity","kind","plural","getMethodName","state","query","getEntityRecord","getEntityRecords","entityResolvers","pluralMethodName","args","shouldInvalidate","action","entityActions","record","options","saveEntityRecord","deleteEntityRecord","storeConfig","reducer","dynamicActions","createLocksActions","dynamicSelectors","store","createReduxStore","STORE_NAME","unlock","registerPrivateSelectors","registerPrivateActions","register"],"sources":["@wordpress/core-data/src/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createReduxStore, register } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport reducer from './reducer';\nimport * as selectors from './selectors';\nimport * as privateSelectors from './private-selectors';\nimport * as actions from './actions';\nimport * as privateActions from './private-actions';\nimport * as resolvers from './resolvers';\nimport createLocksActions from './locks/actions';\nimport {\n\trootEntitiesConfig,\n\tadditionalEntityConfigLoaders,\n\tgetMethodName,\n} from './entities';\nimport { STORE_NAME } from './name';\nimport { unlock } from './lock-unlock';\nimport { dynamicActions, dynamicSelectors } from './dynamic-entities';\n\n// The entity selectors/resolvers and actions are shortcuts to their generic equivalents\n// (getEntityRecord, getEntityRecords, updateEntityRecord, updateEntityRecords)\n// Instead of getEntityRecord, the consumer could use more user-friendly named selector: getPostType, getTaxonomy...\n// The \"kind\" and the \"name\" of the entity are combined to generate these shortcuts.\nconst entitiesConfig = [\n\t...rootEntitiesConfig,\n\t...additionalEntityConfigLoaders.filter( ( config ) => !! config.name ),\n];\n\nconst entitySelectors = entitiesConfig.reduce( ( result, entity ) => {\n\tconst { kind, name, plural } = entity;\n\tresult[ getMethodName( kind, name ) ] = ( state, key, query ) =>\n\t\tselectors.getEntityRecord( state, kind, name, key, query );\n\n\tif ( plural ) {\n\t\tresult[ getMethodName( kind, plural, 'get' ) ] = ( state, query ) =>\n\t\t\tselectors.getEntityRecords( state, kind, name, query );\n\t}\n\treturn result;\n}, {} );\n\nconst entityResolvers = entitiesConfig.reduce( ( result, entity ) => {\n\tconst { kind, name, plural } = entity;\n\tresult[ getMethodName( kind, name ) ] = ( key, query ) =>\n\t\tresolvers.getEntityRecord( kind, name, key, query );\n\n\tif ( plural ) {\n\t\tconst pluralMethodName = getMethodName( kind, plural, 'get' );\n\t\tresult[ pluralMethodName ] = ( ...args ) =>\n\t\t\tresolvers.getEntityRecords( kind, name, ...args );\n\t\tresult[ pluralMethodName ].shouldInvalidate = ( action ) =>\n\t\t\tresolvers.getEntityRecords.shouldInvalidate( action, kind, name );\n\t}\n\treturn result;\n}, {} );\n\nconst entityActions = entitiesConfig.reduce( ( result, entity ) => {\n\tconst { kind, name } = entity;\n\tresult[ getMethodName( kind, name, 'save' ) ] = ( record, options ) =>\n\t\tactions.saveEntityRecord( kind, name, record, options );\n\tresult[ getMethodName( kind, name, 'delete' ) ] = ( key, query, options ) =>\n\t\tactions.deleteEntityRecord( kind, name, key, query, options );\n\treturn result;\n}, {} );\n\nconst storeConfig = () => ( {\n\treducer,\n\tactions: {\n\t\t...dynamicActions,\n\t\t...actions,\n\t\t...entityActions,\n\t\t...createLocksActions(),\n\t},\n\tselectors: {\n\t\t...dynamicSelectors,\n\t\t...selectors,\n\t\t...entitySelectors,\n\t},\n\tresolvers: { ...resolvers, ...entityResolvers },\n} );\n\n/**\n * Store definition for the code data namespace.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/data/README.md#createReduxStore\n */\nexport const store = createReduxStore( STORE_NAME, storeConfig() );\nunlock( store ).registerPrivateSelectors( privateSelectors );\nunlock( store ).registerPrivateActions( privateActions );\nregister( store ); // Register store after unlocking private selectors to allow resolvers to use them.\n\nexport { default as EntityProvider } from './entity-provider';\nexport * from './entity-provider';\nexport * from './entity-types';\nexport * from './fetch';\nexport * from './hooks';\nexport * from './private-apis';\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_data","require","_reducer","_interopRequireDefault","selectors","_interopRequireWildcard","privateSelectors","actions","privateActions","resolvers","_actions2","_entities","_name","_lockUnlock","_dynamicEntities","_logEntityDeprecation","_entityProvider","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_entityTypes","_fetch","_hooks","_privateApis","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","n","__proto__","a","getOwnPropertyDescriptor","u","i","set","entitiesConfig","rootEntitiesConfig","additionalEntityConfigLoaders","filter","config","name","entitySelectors","reduce","result","entity","kind","plural","getEntityRecordMethodName","getMethodName","state","query","logEntityDeprecation","isShorthandSelector","alternativeFunctionName","getEntityRecord","getEntityRecordsMethodName","getEntityRecords","entityResolvers","args","shouldInvalidate","action","entityActions","saveEntityRecordMethodName","record","options","saveEntityRecord","deleteEntityRecordMethodName","deleteEntityRecord","storeConfig","reducer","dynamicActions","createLocksActions","dynamicSelectors","store","createReduxStore","STORE_NAME","unlock","registerPrivateSelectors","registerPrivateActions","register"],"sources":["@wordpress/core-data/src/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createReduxStore, register } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport reducer from './reducer';\nimport * as selectors from './selectors';\nimport * as privateSelectors from './private-selectors';\nimport * as actions from './actions';\nimport * as privateActions from './private-actions';\nimport * as resolvers from './resolvers';\nimport createLocksActions from './locks/actions';\nimport {\n\trootEntitiesConfig,\n\tadditionalEntityConfigLoaders,\n\tgetMethodName,\n} from './entities';\nimport { STORE_NAME } from './name';\nimport { unlock } from './lock-unlock';\nimport { dynamicActions, dynamicSelectors } from './dynamic-entities';\nimport logEntityDeprecation from './utils/log-entity-deprecation';\n\n// The entity selectors/resolvers and actions are shortcuts to their generic equivalents\n// (getEntityRecord, getEntityRecords, updateEntityRecord, updateEntityRecords)\n// Instead of getEntityRecord, the consumer could use more user-friendly named selector: getPostType, getTaxonomy...\n// The \"kind\" and the \"name\" of the entity are combined to generate these shortcuts.\nconst entitiesConfig = [\n\t...rootEntitiesConfig,\n\t...additionalEntityConfigLoaders.filter( ( config ) => !! config.name ),\n];\n\nconst entitySelectors = entitiesConfig.reduce( ( result, entity ) => {\n\tconst { kind, name, plural } = entity;\n\n\tconst getEntityRecordMethodName = getMethodName( kind, name );\n\tresult[ getEntityRecordMethodName ] = ( state, key, query ) => {\n\t\tlogEntityDeprecation( kind, name, getEntityRecordMethodName, {\n\t\t\tisShorthandSelector: true,\n\t\t\talternativeFunctionName: 'getEntityRecord',\n\t\t} );\n\t\treturn selectors.getEntityRecord( state, kind, name, key, query );\n\t};\n\n\tif ( plural ) {\n\t\tconst getEntityRecordsMethodName = getMethodName( kind, plural, 'get' );\n\t\tresult[ getEntityRecordsMethodName ] = ( state, query ) => {\n\t\t\tlogEntityDeprecation( kind, name, getEntityRecordsMethodName, {\n\t\t\t\tisShorthandSelector: true,\n\t\t\t\talternativeFunctionName: 'getEntityRecords',\n\t\t\t} );\n\t\t\treturn selectors.getEntityRecords( state, kind, name, query );\n\t\t};\n\t}\n\treturn result;\n}, {} );\n\nconst entityResolvers = entitiesConfig.reduce( ( result, entity ) => {\n\tconst { kind, name, plural } = entity;\n\tconst getEntityRecordMethodName = getMethodName( kind, name );\n\tresult[ getEntityRecordMethodName ] = ( key, query ) => {\n\t\tlogEntityDeprecation( kind, name, getEntityRecordMethodName, {\n\t\t\tisShorthandSelector: true,\n\t\t\talternativeFunctionName: 'getEntityRecord',\n\t\t} );\n\t\treturn resolvers.getEntityRecord( kind, name, key, query );\n\t};\n\n\tif ( plural ) {\n\t\tconst getEntityRecordsMethodName = getMethodName( kind, plural, 'get' );\n\t\tresult[ getEntityRecordsMethodName ] = ( ...args ) => {\n\t\t\tlogEntityDeprecation( kind, plural, getEntityRecordsMethodName, {\n\t\t\t\tisShorthandSelector: true,\n\t\t\t\talternativeFunctionName: 'getEntityRecords',\n\t\t\t} );\n\t\t\treturn resolvers.getEntityRecords( kind, name, ...args );\n\t\t};\n\t\tresult[ getEntityRecordsMethodName ].shouldInvalidate = ( action ) =>\n\t\t\tresolvers.getEntityRecords.shouldInvalidate( action, kind, name );\n\t}\n\treturn result;\n}, {} );\n\nconst entityActions = entitiesConfig.reduce( ( result, entity ) => {\n\tconst { kind, name } = entity;\n\n\tconst saveEntityRecordMethodName = getMethodName( kind, name, 'save' );\n\tresult[ saveEntityRecordMethodName ] = ( record, options ) => {\n\t\tlogEntityDeprecation( kind, name, saveEntityRecordMethodName, {\n\t\t\tisShorthandSelector: true,\n\t\t\talternativeFunctionName: 'saveEntityRecord',\n\t\t} );\n\t\treturn actions.saveEntityRecord( kind, name, record, options );\n\t};\n\n\tconst deleteEntityRecordMethodName = getMethodName( kind, name, 'delete' );\n\tresult[ deleteEntityRecordMethodName ] = ( key, query, options ) => {\n\t\tlogEntityDeprecation( kind, name, deleteEntityRecordMethodName, {\n\t\t\tisShorthandSelector: true,\n\t\t\talternativeFunctionName: 'deleteEntityRecord',\n\t\t} );\n\t\treturn actions.deleteEntityRecord( kind, name, key, query, options );\n\t};\n\n\treturn result;\n}, {} );\n\nconst storeConfig = () => ( {\n\treducer,\n\tactions: {\n\t\t...dynamicActions,\n\t\t...actions,\n\t\t...entityActions,\n\t\t...createLocksActions(),\n\t},\n\tselectors: {\n\t\t...dynamicSelectors,\n\t\t...selectors,\n\t\t...entitySelectors,\n\t},\n\tresolvers: { ...resolvers, ...entityResolvers },\n} );\n\n/**\n * Store definition for the code data namespace.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/data/README.md#createReduxStore\n */\nexport const store = createReduxStore( STORE_NAME, storeConfig() );\nunlock( store ).registerPrivateSelectors( privateSelectors );\nunlock( store ).registerPrivateActions( privateActions );\nregister( store ); // Register store after unlocking private selectors to allow resolvers to use them.\n\nexport { default as EntityProvider } from './entity-provider';\nexport * from './entity-provider';\nexport * from './entity-types';\nexport * from './fetch';\nexport * from './hooks';\nexport * from './private-apis';\n"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,21 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
7
+ exports.editMediaEntity = void 0;
6
8
  exports.receiveRegisteredPostMeta = receiveRegisteredPostMeta;
9
+ var _apiFetch = _interopRequireDefault(require("@wordpress/api-fetch"));
10
+ var _name = require("./name");
11
+ /**
12
+ * WordPress dependencies
13
+ */
14
+
15
+ /**
16
+ * Internal dependencies
17
+ */
18
+
7
19
  /**
8
20
  * Returns an action object used in signalling that the registered post meta
9
21
  * fields for a post type have been received.
@@ -20,4 +32,91 @@ function receiveRegisteredPostMeta(postType, registeredPostMeta) {
20
32
  registeredPostMeta
21
33
  };
22
34
  }
35
+
36
+ /**
37
+ * @typedef {Object} Modifier
38
+ * @property {string} [type] - The type of modifier.
39
+ * @property {Object} [args] - The arguments of the modifier.
40
+ */
41
+
42
+ /**
43
+ * @typedef {Object} Edits
44
+ * @property {string} [src] - The URL of the media item.
45
+ * @property {Modifier[]} [modifiers] - The modifiers to apply to the media item.
46
+ */
47
+
48
+ /**
49
+ * Duplicates a media (attachment) entity record and, optionally, modifies it.
50
+ *
51
+ * @param {string} recordId Entity record ID.
52
+ * @param {Edits} edits Edits to apply to the record.
53
+ * @param {Object} options Options object.
54
+ * @param {Function} options.__unstableFetch Custom fetch function.
55
+ * @param {boolean} options.throwOnError Whether to throw an error if the request fails.
56
+ *
57
+ * @return {Promise} Promise resolving to the updated record.
58
+ */
59
+ const editMediaEntity = (recordId, edits = {}, {
60
+ __unstableFetch = _apiFetch.default,
61
+ throwOnError = false
62
+ } = {}) => async ({
63
+ dispatch,
64
+ resolveSelect
65
+ }) => {
66
+ if (!recordId) {
67
+ return;
68
+ }
69
+ const kind = 'postType';
70
+ const name = 'attachment';
71
+ const configs = await resolveSelect.getEntitiesConfig(kind);
72
+ const entityConfig = configs.find(config => config.kind === kind && config.name === name);
73
+ if (!entityConfig) {
74
+ return;
75
+ }
76
+ const lock = await dispatch.__unstableAcquireStoreLock(_name.STORE_NAME, ['entities', 'records', kind, name, recordId], {
77
+ exclusive: true
78
+ });
79
+ let updatedRecord;
80
+ let error;
81
+ let hasError = false;
82
+ try {
83
+ dispatch({
84
+ type: 'SAVE_ENTITY_RECORD_START',
85
+ kind,
86
+ name,
87
+ recordId
88
+ });
89
+ try {
90
+ const path = `${entityConfig.baseURL}/${recordId}/edit`;
91
+ const newRecord = await __unstableFetch({
92
+ path,
93
+ method: 'POST',
94
+ data: {
95
+ ...edits
96
+ }
97
+ });
98
+ if (newRecord) {
99
+ dispatch.receiveEntityRecords(kind, name, [newRecord], undefined, true, undefined, undefined);
100
+ updatedRecord = newRecord;
101
+ }
102
+ } catch (e) {
103
+ error = e;
104
+ hasError = true;
105
+ }
106
+ dispatch({
107
+ type: 'SAVE_ENTITY_RECORD_FINISH',
108
+ kind,
109
+ name,
110
+ recordId,
111
+ error
112
+ });
113
+ if (hasError && throwOnError) {
114
+ throw error;
115
+ }
116
+ return updatedRecord;
117
+ } finally {
118
+ dispatch.__unstableReleaseStoreLock(lock);
119
+ }
120
+ };
121
+ exports.editMediaEntity = editMediaEntity;
23
122
  //# sourceMappingURL=private-actions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["receiveRegisteredPostMeta","postType","registeredPostMeta","type"],"sources":["@wordpress/core-data/src/private-actions.js"],"sourcesContent":["/**\n * Returns an action object used in signalling that the registered post meta\n * fields for a post type have been received.\n *\n * @param {string} postType Post type slug.\n * @param {Object} registeredPostMeta Registered post meta.\n *\n * @return {Object} Action object.\n */\nexport function receiveRegisteredPostMeta( postType, registeredPostMeta ) {\n\treturn {\n\t\ttype: 'RECEIVE_REGISTERED_POST_META',\n\t\tpostType,\n\t\tregisteredPostMeta,\n\t};\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,yBAAyBA,CAAEC,QAAQ,EAAEC,kBAAkB,EAAG;EACzE,OAAO;IACNC,IAAI,EAAE,8BAA8B;IACpCF,QAAQ;IACRC;EACD,CAAC;AACF","ignoreList":[]}
1
+ {"version":3,"names":["_apiFetch","_interopRequireDefault","require","_name","receiveRegisteredPostMeta","postType","registeredPostMeta","type","editMediaEntity","recordId","edits","__unstableFetch","apiFetch","throwOnError","dispatch","resolveSelect","kind","name","configs","getEntitiesConfig","entityConfig","find","config","lock","__unstableAcquireStoreLock","STORE_NAME","exclusive","updatedRecord","error","hasError","path","baseURL","newRecord","method","data","receiveEntityRecords","undefined","e","__unstableReleaseStoreLock","exports"],"sources":["@wordpress/core-data/src/private-actions.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport apiFetch from '@wordpress/api-fetch';\n\n/**\n * Internal dependencies\n */\nimport { STORE_NAME } from './name';\n\n/**\n * Returns an action object used in signalling that the registered post meta\n * fields for a post type have been received.\n *\n * @param {string} postType Post type slug.\n * @param {Object} registeredPostMeta Registered post meta.\n *\n * @return {Object} Action object.\n */\nexport function receiveRegisteredPostMeta( postType, registeredPostMeta ) {\n\treturn {\n\t\ttype: 'RECEIVE_REGISTERED_POST_META',\n\t\tpostType,\n\t\tregisteredPostMeta,\n\t};\n}\n\n/**\n * @typedef {Object} Modifier\n * @property {string} [type] - The type of modifier.\n * @property {Object} [args] - The arguments of the modifier.\n */\n\n/**\n * @typedef {Object} Edits\n * @property {string} [src] - The URL of the media item.\n * @property {Modifier[]} [modifiers] - The modifiers to apply to the media item.\n */\n\n/**\n * Duplicates a media (attachment) entity record and, optionally, modifies it.\n *\n * @param {string} recordId Entity record ID.\n * @param {Edits} edits Edits to apply to the record.\n * @param {Object} options Options object.\n * @param {Function} options.__unstableFetch Custom fetch function.\n * @param {boolean} options.throwOnError Whether to throw an error if the request fails.\n *\n * @return {Promise} Promise resolving to the updated record.\n */\nexport const editMediaEntity =\n\t(\n\t\trecordId,\n\t\tedits = {},\n\t\t{ __unstableFetch = apiFetch, throwOnError = false } = {}\n\t) =>\n\tasync ( { dispatch, resolveSelect } ) => {\n\t\tif ( ! recordId ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst kind = 'postType';\n\t\tconst name = 'attachment';\n\n\t\tconst configs = await resolveSelect.getEntitiesConfig( kind );\n\t\tconst entityConfig = configs.find(\n\t\t\t( config ) => config.kind === kind && config.name === name\n\t\t);\n\n\t\tif ( ! entityConfig ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst lock = await dispatch.__unstableAcquireStoreLock(\n\t\t\tSTORE_NAME,\n\t\t\t[ 'entities', 'records', kind, name, recordId ],\n\t\t\t{ exclusive: true }\n\t\t);\n\n\t\tlet updatedRecord;\n\t\tlet error;\n\t\tlet hasError = false;\n\n\t\ttry {\n\t\t\tdispatch( {\n\t\t\t\ttype: 'SAVE_ENTITY_RECORD_START',\n\t\t\t\tkind,\n\t\t\t\tname,\n\t\t\t\trecordId,\n\t\t\t} );\n\n\t\t\ttry {\n\t\t\t\tconst path = `${ entityConfig.baseURL }/${ recordId }/edit`;\n\t\t\t\tconst newRecord = await __unstableFetch( {\n\t\t\t\t\tpath,\n\t\t\t\t\tmethod: 'POST',\n\t\t\t\t\tdata: {\n\t\t\t\t\t\t...edits,\n\t\t\t\t\t},\n\t\t\t\t} );\n\n\t\t\t\tif ( newRecord ) {\n\t\t\t\t\tdispatch.receiveEntityRecords(\n\t\t\t\t\t\tkind,\n\t\t\t\t\t\tname,\n\t\t\t\t\t\t[ newRecord ],\n\t\t\t\t\t\tundefined,\n\t\t\t\t\t\ttrue,\n\t\t\t\t\t\tundefined,\n\t\t\t\t\t\tundefined\n\t\t\t\t\t);\n\t\t\t\t\tupdatedRecord = newRecord;\n\t\t\t\t}\n\t\t\t} catch ( e ) {\n\t\t\t\terror = e;\n\t\t\t\thasError = true;\n\t\t\t}\n\n\t\t\tdispatch( {\n\t\t\t\ttype: 'SAVE_ENTITY_RECORD_FINISH',\n\t\t\t\tkind,\n\t\t\t\tname,\n\t\t\t\trecordId,\n\t\t\t\terror,\n\t\t\t} );\n\n\t\t\tif ( hasError && throwOnError ) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t\treturn updatedRecord;\n\t\t} finally {\n\t\t\tdispatch.__unstableReleaseStoreLock( lock );\n\t\t}\n\t};\n"],"mappings":";;;;;;;;AAGA,IAAAA,SAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,KAAA,GAAAD,OAAA;AARA;AACA;AACA;;AAGA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,yBAAyBA,CAAEC,QAAQ,EAAEC,kBAAkB,EAAG;EACzE,OAAO;IACNC,IAAI,EAAE,8BAA8B;IACpCF,QAAQ;IACRC;EACD,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAME,eAAe,GAC3BA,CACCC,QAAQ,EACRC,KAAK,GAAG,CAAC,CAAC,EACV;EAAEC,eAAe,GAAGC,iBAAQ;EAAEC,YAAY,GAAG;AAAM,CAAC,GAAG,CAAC,CAAC,KAE1D,OAAQ;EAAEC,QAAQ;EAAEC;AAAc,CAAC,KAAM;EACxC,IAAK,CAAEN,QAAQ,EAAG;IACjB;EACD;EAEA,MAAMO,IAAI,GAAG,UAAU;EACvB,MAAMC,IAAI,GAAG,YAAY;EAEzB,MAAMC,OAAO,GAAG,MAAMH,aAAa,CAACI,iBAAiB,CAAEH,IAAK,CAAC;EAC7D,MAAMI,YAAY,GAAGF,OAAO,CAACG,IAAI,CAC9BC,MAAM,IAAMA,MAAM,CAACN,IAAI,KAAKA,IAAI,IAAIM,MAAM,CAACL,IAAI,KAAKA,IACvD,CAAC;EAED,IAAK,CAAEG,YAAY,EAAG;IACrB;EACD;EAEA,MAAMG,IAAI,GAAG,MAAMT,QAAQ,CAACU,0BAA0B,CACrDC,gBAAU,EACV,CAAE,UAAU,EAAE,SAAS,EAAET,IAAI,EAAEC,IAAI,EAAER,QAAQ,CAAE,EAC/C;IAAEiB,SAAS,EAAE;EAAK,CACnB,CAAC;EAED,IAAIC,aAAa;EACjB,IAAIC,KAAK;EACT,IAAIC,QAAQ,GAAG,KAAK;EAEpB,IAAI;IACHf,QAAQ,CAAE;MACTP,IAAI,EAAE,0BAA0B;MAChCS,IAAI;MACJC,IAAI;MACJR;IACD,CAAE,CAAC;IAEH,IAAI;MACH,MAAMqB,IAAI,GAAG,GAAIV,YAAY,CAACW,OAAO,IAAMtB,QAAQ,OAAQ;MAC3D,MAAMuB,SAAS,GAAG,MAAMrB,eAAe,CAAE;QACxCmB,IAAI;QACJG,MAAM,EAAE,MAAM;QACdC,IAAI,EAAE;UACL,GAAGxB;QACJ;MACD,CAAE,CAAC;MAEH,IAAKsB,SAAS,EAAG;QAChBlB,QAAQ,CAACqB,oBAAoB,CAC5BnB,IAAI,EACJC,IAAI,EACJ,CAAEe,SAAS,CAAE,EACbI,SAAS,EACT,IAAI,EACJA,SAAS,EACTA,SACD,CAAC;QACDT,aAAa,GAAGK,SAAS;MAC1B;IACD,CAAC,CAAC,OAAQK,CAAC,EAAG;MACbT,KAAK,GAAGS,CAAC;MACTR,QAAQ,GAAG,IAAI;IAChB;IAEAf,QAAQ,CAAE;MACTP,IAAI,EAAE,2BAA2B;MACjCS,IAAI;MACJC,IAAI;MACJR,QAAQ;MACRmB;IACD,CAAE,CAAC;IAEH,IAAKC,QAAQ,IAAIhB,YAAY,EAAG;MAC/B,MAAMe,KAAK;IACZ;IACA,OAAOD,aAAa;EACrB,CAAC,SAAS;IACTb,QAAQ,CAACwB,0BAA0B,CAAEf,IAAK,CAAC;EAC5C;AACD,CAAC;AAACgB,OAAA,CAAA/B,eAAA,GAAAA,eAAA","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
@@ -15,6 +16,7 @@ var _data = require("@wordpress/data");
15
16
  var _selectors = require("./selectors");
16
17
  var _name = require("./name");
17
18
  var _lockUnlock = require("./lock-unlock");
19
+ var _logEntityDeprecation = _interopRequireDefault(require("./utils/log-entity-deprecation"));
18
20
  /**
19
21
  * WordPress dependencies
20
22
  */
@@ -78,6 +80,7 @@ const getEntityRecordsPermissions = exports.getEntityRecordsPermissions = (0, _d
78
80
  * @return The entity record permissions.
79
81
  */
80
82
  function getEntityRecordPermissions(state, kind, name, id) {
83
+ (0, _logEntityDeprecation.default)(kind, name, 'getEntityRecordPermissions');
81
84
  return getEntityRecordsPermissions(state, kind, name, id)[0];
82
85
  }
83
86
 
@@ -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","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\t// Still resolving getEntityRecord.\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\t// Still resolving getDefaultTemplateId.\n\t\t\tif ( ! frontPageTemplateId ) {\n\t\t\t\treturn null;\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":[]}
1
+ {"version":3,"names":["_data","require","_selectors","_name","_lockUnlock","_logEntityDeprecation","_interopRequireDefault","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","logEntityDeprecation","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';\nimport logEntityDeprecation from './utils/log-entity-deprecation';\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\tlogEntityDeprecation( kind, name, 'getEntityRecordPermissions' );\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\t// Still resolving getEntityRecord.\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\t// Still resolving getDefaultTemplateId.\n\t\t\tif ( ! frontPageTemplateId ) {\n\t\t\t\treturn null;\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":[]}
@@ -376,7 +376,7 @@ const getEmbedPreview = url => async ({
376
376
  *
377
377
  * @param {string} requestedAction Action to check. One of: 'create', 'read', 'update',
378
378
  * 'delete'.
379
- * @param {string|Object} resource Entity resource to check. Accepts entity object `{ kind: 'root', name: 'media', id: 1 }`
379
+ * @param {string|Object} resource Entity resource to check. Accepts entity object `{ kind: 'postType', name: 'attachment', id: 1 }`
380
380
  * or REST base as a string - `media`.
381
381
  * @param {?string} id ID of the rest resource to check.
382
382
  */