@wordpress/core-data 7.30.0 → 7.30.1-next.6f42e1382.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/README.md +22 -0
- package/build/hooks/index.js.map +1 -1
- package/build/hooks/use-entity-records.js.map +1 -1
- package/build/resolvers.js +35 -51
- package/build/resolvers.js.map +1 -1
- package/build/selectors.js +76 -27
- package/build/selectors.js.map +1 -1
- package/build-module/hooks/index.js +8 -0
- package/build-module/hooks/index.js.map +1 -1
- package/build-module/hooks/use-entity-records.js.map +1 -1
- package/build-module/resolvers.js +35 -51
- package/build-module/resolvers.js.map +1 -1
- package/build-module/selectors.js +75 -27
- package/build-module/selectors.js.map +1 -1
- package/build-types/hooks/index.d.ts +8 -0
- package/build-types/hooks/index.d.ts.map +1 -1
- package/build-types/hooks/use-entity-records.d.ts +12 -2
- package/build-types/hooks/use-entity-records.d.ts.map +1 -1
- package/build-types/index.d.ts +1 -0
- package/build-types/index.d.ts.map +1 -1
- package/build-types/resolvers.d.ts.map +1 -1
- package/build-types/selectors.d.ts +15 -0
- package/build-types/selectors.d.ts.map +1 -1
- package/package.json +18 -18
- package/src/hooks/index.ts +9 -0
- package/src/hooks/use-entity-records.ts +12 -2
- package/src/resolvers.js +59 -72
- package/src/selectors.ts +74 -19
- package/src/test/entities.js +32 -0
- package/src/test/resolvers.js +100 -5
- package/src/test/selectors.js +220 -13
- package/src/test/store.js +114 -0
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../src/resolvers.js"],"names":[],"mappings":"AAkCO,kCAHI,MAAO,SAAS;;oBAYzB;AAKK;;oBAKL;AAYK,sCAPI,MAAM,QACN,MAAM,OACN,MAAM,GAAC,MAAM,qBACb,MAAO,SAAS;;;;;
|
|
1
|
+
{"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../src/resolvers.js"],"names":[],"mappings":"AAkCO,kCAHI,MAAO,SAAS;;oBAYzB;AAKK;;oBAKL;AAYK,sCAPI,MAAM,QACN,MAAM,OACN,MAAM,GAAC,MAAM,qBACb,MAAO,SAAS;;;;;oBA6IzB;AAEF;;GAEG;AACH,0CAAuE;AAEvE;;GAEG;AACH,6CAA0E;AAUnE,uCALI,MAAM,QACN,MAAM,UACN,UAAO;;;;oBAwMhB;;IAEF,kEAOC;;AAED;;GAEG;AACH,kDAAgF;AAEhF;;GAEG;AACH,kDAAgF;AAKzE;;;oBAUL;AAEF;;GAEG;AACH,wCAAqE;AAO9D,qCAFI,MAAM;;oBAcf;AAYK,yCANI,MAAM,YAEN,MAAM,MAAO,MAEZ,MAAM,OAAA;;;;oBAqFhB;AAUK,8CAJI,MAAM,QACN,MAAM,YACN,MAAM,GAAC,MAAM;;oBAMtB;AAQK,uCAHI,MAAM,UACN,MAAM;;;oBAqBf;AAWK,sCAHI,MAAM,UACN,MAAM;;oBAMf;AAEK;;;oBAuBL;AAEK;;;oBAYL;AAEK;;;oBAYL;AAKK;;;oBA+BL;;IAEF,gDAOC;;AAEM;;oBAKL;AAEK;;oBAOL;AAEK;;;oBAwBL;AAEK;;;;oBA0CL;AAEK;;;;oBAwBL;AAYK,mCAPI,MAAM,QACN,MAAM,aACN,MAAM,GAAC,MAAM,UACb,MAAO,SAAS;;;;oBAwGzB;;IAGF,sFAK8B;;AAavB,kCARI,MAAM,QACN,MAAM,aACN,MAAM,GAAC,MAAM,eACb,MAAM,GAAC,MAAM,SACb,MAAO,SAAS;;;oBA+CzB;AAOK,gDAFI,MAAM;;;oBA0Bf;AAOK,wCAFI,MAAM;;oBAuBf"}
|
|
@@ -212,6 +212,21 @@ export interface GetEntityRecord {
|
|
|
212
212
|
* @return Record.
|
|
213
213
|
*/
|
|
214
214
|
export declare const getEntityRecord: GetEntityRecord;
|
|
215
|
+
/**
|
|
216
|
+
* Returns true if a record has been received for the given set of parameters, or false otherwise.
|
|
217
|
+
*
|
|
218
|
+
* Note: This action does not trigger a request for the entity record from the API
|
|
219
|
+
* if it's not available in the local state.
|
|
220
|
+
*
|
|
221
|
+
* @param state State tree
|
|
222
|
+
* @param kind Entity kind.
|
|
223
|
+
* @param name Entity name.
|
|
224
|
+
* @param key Record's key.
|
|
225
|
+
* @param query Optional query.
|
|
226
|
+
*
|
|
227
|
+
* @return Whether an entity record has been received.
|
|
228
|
+
*/
|
|
229
|
+
export declare function hasEntityRecord(state: State, kind: string, name: string, key?: EntityRecordKey, query?: GetRecordsHttpQuery): boolean;
|
|
215
230
|
/**
|
|
216
231
|
* Returns the Entity's record object by key. Doesn't trigger a resolver nor requests the entity records from the API if the entity record isn't available in the local state.
|
|
217
232
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../src/selectors.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../src/selectors.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/core-data",
|
|
3
|
-
"version": "7.30.0",
|
|
3
|
+
"version": "7.30.1-next.6f42e1382.0",
|
|
4
4
|
"description": "Access to and manipulation of core WordPress entities.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -33,22 +33,22 @@
|
|
|
33
33
|
],
|
|
34
34
|
"dependencies": {
|
|
35
35
|
"@babel/runtime": "7.25.7",
|
|
36
|
-
"@wordpress/api-fetch": "^7.30.0",
|
|
37
|
-
"@wordpress/block-editor": "^15.3.0",
|
|
38
|
-
"@wordpress/blocks": "^15.3.0",
|
|
39
|
-
"@wordpress/compose": "^7.30.0",
|
|
40
|
-
"@wordpress/data": "^10.30.0",
|
|
41
|
-
"@wordpress/deprecated": "^4.30.0",
|
|
42
|
-
"@wordpress/element": "^6.30.0",
|
|
43
|
-
"@wordpress/html-entities": "^4.30.0",
|
|
44
|
-
"@wordpress/i18n": "^6.3.0",
|
|
45
|
-
"@wordpress/is-shallow-equal": "^5.30.0",
|
|
46
|
-
"@wordpress/private-apis": "^1.30.0",
|
|
47
|
-
"@wordpress/rich-text": "^7.30.0",
|
|
48
|
-
"@wordpress/sync": "^1.30.0",
|
|
49
|
-
"@wordpress/undo-manager": "^1.30.0",
|
|
50
|
-
"@wordpress/url": "^4.30.0",
|
|
51
|
-
"@wordpress/warning": "^3.30.0",
|
|
36
|
+
"@wordpress/api-fetch": "^7.30.1-next.6f42e1382.0",
|
|
37
|
+
"@wordpress/block-editor": "^15.3.1-next.6f42e1382.0",
|
|
38
|
+
"@wordpress/blocks": "^15.3.1-next.6f42e1382.0",
|
|
39
|
+
"@wordpress/compose": "^7.30.1-next.6f42e1382.0",
|
|
40
|
+
"@wordpress/data": "^10.30.1-next.6f42e1382.0",
|
|
41
|
+
"@wordpress/deprecated": "^4.30.1-next.6f42e1382.0",
|
|
42
|
+
"@wordpress/element": "^6.30.1-next.6f42e1382.0",
|
|
43
|
+
"@wordpress/html-entities": "^4.30.1-next.6f42e1382.0",
|
|
44
|
+
"@wordpress/i18n": "^6.3.1-next.6f42e1382.0",
|
|
45
|
+
"@wordpress/is-shallow-equal": "^5.30.1-next.6f42e1382.0",
|
|
46
|
+
"@wordpress/private-apis": "^1.30.1-next.6f42e1382.0",
|
|
47
|
+
"@wordpress/rich-text": "^7.30.1-next.6f42e1382.0",
|
|
48
|
+
"@wordpress/sync": "^1.30.1-next.6f42e1382.0",
|
|
49
|
+
"@wordpress/undo-manager": "^1.30.1-next.6f42e1382.0",
|
|
50
|
+
"@wordpress/url": "^4.30.1-next.6f42e1382.0",
|
|
51
|
+
"@wordpress/warning": "^3.30.1-next.6f42e1382.0",
|
|
52
52
|
"change-case": "^4.1.2",
|
|
53
53
|
"equivalent-key-map": "^0.2.2",
|
|
54
54
|
"fast-deep-equal": "^3.1.3",
|
|
@@ -62,5 +62,5 @@
|
|
|
62
62
|
"publishConfig": {
|
|
63
63
|
"access": "public"
|
|
64
64
|
},
|
|
65
|
-
"gitHead": "
|
|
65
|
+
"gitHead": "8806899f598577a3c90a55d9aa79fbc372fe1e75"
|
|
66
66
|
}
|
package/src/hooks/index.ts
CHANGED
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Internal dependencies
|
|
3
|
+
*/
|
|
4
|
+
import type { WithPermissions } from './use-entity-records';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Utility type that adds permissions to any record type.
|
|
8
|
+
*/
|
|
9
|
+
export type { WithPermissions };
|
|
1
10
|
export {
|
|
2
11
|
default as useEntityRecord,
|
|
3
12
|
__experimentalUseEntityRecord,
|
|
@@ -17,7 +17,7 @@ import { unlock } from '../lock-unlock';
|
|
|
17
17
|
import { getNormalizedCommaSeparable } from '../utils';
|
|
18
18
|
|
|
19
19
|
interface EntityRecordsResolution< RecordType > {
|
|
20
|
-
/** The requested entity
|
|
20
|
+
/** The requested entity records */
|
|
21
21
|
records: RecordType[] | null;
|
|
22
22
|
|
|
23
23
|
/**
|
|
@@ -44,6 +44,16 @@ interface EntityRecordsResolution< RecordType > {
|
|
|
44
44
|
totalPages: number | null;
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
+
export type WithPermissions< RecordType > = RecordType & {
|
|
48
|
+
permissions: { delete: boolean; update: boolean };
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
interface EntityRecordsWithPermissionsResolution< RecordType >
|
|
52
|
+
extends Omit< EntityRecordsResolution< RecordType >, 'records' > {
|
|
53
|
+
/** The requested entity records with permissions */
|
|
54
|
+
records: WithPermissions< RecordType >[] | null;
|
|
55
|
+
}
|
|
56
|
+
|
|
47
57
|
const EMPTY_ARRAY = [];
|
|
48
58
|
|
|
49
59
|
/**
|
|
@@ -161,7 +171,7 @@ export function useEntityRecordsWithPermissions< RecordType >(
|
|
|
161
171
|
name: string,
|
|
162
172
|
queryArgs: Record< string, unknown > = {},
|
|
163
173
|
options: Options = { enabled: true }
|
|
164
|
-
):
|
|
174
|
+
): EntityRecordsWithPermissionsResolution< RecordType > {
|
|
165
175
|
const entityConfig = useSelect(
|
|
166
176
|
( select ) => select( coreStore ).getEntityConfig( kind, name ),
|
|
167
177
|
[ kind, name ]
|
package/src/resolvers.js
CHANGED
|
@@ -141,37 +141,28 @@ export const getEntityRecord =
|
|
|
141
141
|
};
|
|
142
142
|
}
|
|
143
143
|
|
|
144
|
-
// Disable reason: While true that an early return could leave `path`
|
|
145
|
-
// unused, it's important that path is derived using the query prior to
|
|
146
|
-
// additional query modifications in the condition below, since those
|
|
147
|
-
// modifications are relevant to how the data is tracked in state, and not
|
|
148
|
-
// for how the request is made to the REST API.
|
|
149
|
-
|
|
150
|
-
// eslint-disable-next-line @wordpress/no-unused-vars-before-return
|
|
151
|
-
const path = addQueryArgs(
|
|
152
|
-
entityConfig.baseURL + ( key ? '/' + key : '' ),
|
|
153
|
-
{
|
|
154
|
-
...entityConfig.baseURLParams,
|
|
155
|
-
...query,
|
|
156
|
-
}
|
|
157
|
-
);
|
|
158
|
-
|
|
159
144
|
if ( query !== undefined && query._fields ) {
|
|
160
|
-
query = { ...query, include: [ key ] };
|
|
161
|
-
|
|
162
145
|
// The resolution cache won't consider query as reusable based on the
|
|
163
146
|
// fields, so it's tested here, prior to initiating the REST request,
|
|
164
|
-
// and without causing `
|
|
165
|
-
const
|
|
147
|
+
// and without causing `getEntityRecord` resolution to occur.
|
|
148
|
+
const hasRecord = select.hasEntityRecord(
|
|
166
149
|
kind,
|
|
167
150
|
name,
|
|
151
|
+
key,
|
|
168
152
|
query
|
|
169
153
|
);
|
|
170
|
-
if (
|
|
154
|
+
if ( hasRecord ) {
|
|
171
155
|
return;
|
|
172
156
|
}
|
|
173
157
|
}
|
|
174
158
|
|
|
159
|
+
const path = addQueryArgs(
|
|
160
|
+
entityConfig.baseURL + ( key ? '/' + key : '' ),
|
|
161
|
+
{
|
|
162
|
+
...entityConfig.baseURLParams,
|
|
163
|
+
...query,
|
|
164
|
+
}
|
|
165
|
+
);
|
|
175
166
|
const response = await apiFetch( { path, parse: false } );
|
|
176
167
|
const record = await response.json();
|
|
177
168
|
const permissions = getUserPermissionsFromAllowHeader(
|
|
@@ -368,63 +359,59 @@ export const getEntityRecords =
|
|
|
368
359
|
meta
|
|
369
360
|
);
|
|
370
361
|
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
)
|
|
384
|
-
.map( ( record ) => ( {
|
|
385
|
-
id: record[ key ],
|
|
386
|
-
permissions: getUserPermissionsFromAllowHeader(
|
|
387
|
-
record._links.self[ 0 ].targetHints.allow
|
|
388
|
-
),
|
|
389
|
-
} ) );
|
|
390
|
-
|
|
391
|
-
const canUserResolutionsArgs = [];
|
|
392
|
-
const receiveUserPermissionArgs = {};
|
|
393
|
-
for ( const targetHint of targetHints ) {
|
|
394
|
-
for ( const action of ALLOWED_RESOURCE_ACTIONS ) {
|
|
395
|
-
canUserResolutionsArgs.push( [
|
|
396
|
-
action,
|
|
397
|
-
{ kind, name, id: targetHint.id },
|
|
398
|
-
] );
|
|
399
|
-
|
|
400
|
-
receiveUserPermissionArgs[
|
|
401
|
-
getUserPermissionCacheKey( action, {
|
|
402
|
-
kind,
|
|
403
|
-
name,
|
|
404
|
-
id: targetHint.id,
|
|
405
|
-
} )
|
|
406
|
-
] = targetHint.permissions[ action ];
|
|
407
|
-
}
|
|
408
|
-
}
|
|
362
|
+
const targetHints = records
|
|
363
|
+
.filter(
|
|
364
|
+
( record ) =>
|
|
365
|
+
!! record?.[ key ] &&
|
|
366
|
+
!! record?._links?.self?.[ 0 ]?.targetHints?.allow
|
|
367
|
+
)
|
|
368
|
+
.map( ( record ) => ( {
|
|
369
|
+
id: record[ key ],
|
|
370
|
+
permissions: getUserPermissionsFromAllowHeader(
|
|
371
|
+
record._links.self[ 0 ].targetHints.allow
|
|
372
|
+
),
|
|
373
|
+
} ) );
|
|
409
374
|
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
);
|
|
418
|
-
}
|
|
375
|
+
const canUserResolutionsArgs = [];
|
|
376
|
+
const receiveUserPermissionArgs = {};
|
|
377
|
+
for ( const targetHint of targetHints ) {
|
|
378
|
+
for ( const action of ALLOWED_RESOURCE_ACTIONS ) {
|
|
379
|
+
canUserResolutionsArgs.push( [
|
|
380
|
+
action,
|
|
381
|
+
{ kind, name, id: targetHint.id },
|
|
382
|
+
] );
|
|
419
383
|
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
384
|
+
receiveUserPermissionArgs[
|
|
385
|
+
getUserPermissionCacheKey( action, {
|
|
386
|
+
kind,
|
|
387
|
+
name,
|
|
388
|
+
id: targetHint.id,
|
|
389
|
+
} )
|
|
390
|
+
] = targetHint.permissions[ action ];
|
|
425
391
|
}
|
|
426
392
|
}
|
|
427
393
|
|
|
394
|
+
if ( targetHints.length > 0 ) {
|
|
395
|
+
dispatch.receiveUserPermissions(
|
|
396
|
+
receiveUserPermissionArgs
|
|
397
|
+
);
|
|
398
|
+
dispatch.finishResolutions(
|
|
399
|
+
'canUser',
|
|
400
|
+
canUserResolutionsArgs
|
|
401
|
+
);
|
|
402
|
+
}
|
|
403
|
+
|
|
404
|
+
// When requesting all fields, the list of results can be used to resolve
|
|
405
|
+
// the `getEntityRecord` selector in addition to `getEntityRecords`.
|
|
406
|
+
// See https://github.com/WordPress/gutenberg/pull/26575
|
|
407
|
+
// Todo https://github.com/WordPress/gutenberg/issues/26629
|
|
408
|
+
if ( ! query?._fields && ! query.context ) {
|
|
409
|
+
dispatch.finishResolutions(
|
|
410
|
+
'getEntityRecord',
|
|
411
|
+
getResolutionsArgs( records )
|
|
412
|
+
);
|
|
413
|
+
}
|
|
414
|
+
|
|
428
415
|
dispatch.__unstableReleaseStoreLock( lock );
|
|
429
416
|
} );
|
|
430
417
|
} catch ( e ) {
|
package/src/selectors.ts
CHANGED
|
@@ -365,7 +365,7 @@ export const getEntityRecord = createSelector(
|
|
|
365
365
|
}
|
|
366
366
|
const context = query?.context ?? 'default';
|
|
367
367
|
|
|
368
|
-
if ( query
|
|
368
|
+
if ( ! query || ! query._fields ) {
|
|
369
369
|
// If expecting a complete item, validate that completeness.
|
|
370
370
|
if ( ! queriedState.itemIsComplete[ context ]?.[ key ] ) {
|
|
371
371
|
return undefined;
|
|
@@ -375,30 +375,29 @@ export const getEntityRecord = createSelector(
|
|
|
375
375
|
}
|
|
376
376
|
|
|
377
377
|
const item = queriedState.items[ context ]?.[ key ];
|
|
378
|
-
if ( item
|
|
379
|
-
|
|
380
|
-
const fields = getNormalizedCommaSeparable( query._fields ) ?? [];
|
|
381
|
-
for ( let f = 0; f < fields.length; f++ ) {
|
|
382
|
-
const field = fields[ f ].split( '.' );
|
|
383
|
-
let value = item;
|
|
384
|
-
field.forEach( ( fieldName ) => {
|
|
385
|
-
value = value?.[ fieldName ];
|
|
386
|
-
} );
|
|
387
|
-
setNestedValue( filteredItem, field, value );
|
|
388
|
-
}
|
|
389
|
-
return filteredItem as EntityRecord;
|
|
378
|
+
if ( ! item ) {
|
|
379
|
+
return item;
|
|
390
380
|
}
|
|
391
381
|
|
|
392
|
-
|
|
382
|
+
const filteredItem = {};
|
|
383
|
+
const fields = getNormalizedCommaSeparable( query._fields ) ?? [];
|
|
384
|
+
for ( let f = 0; f < fields.length; f++ ) {
|
|
385
|
+
const field = fields[ f ].split( '.' );
|
|
386
|
+
let value = item;
|
|
387
|
+
field.forEach( ( fieldName ) => {
|
|
388
|
+
value = value?.[ fieldName ];
|
|
389
|
+
} );
|
|
390
|
+
setNestedValue( filteredItem, field, value );
|
|
391
|
+
}
|
|
392
|
+
return filteredItem as EntityRecord;
|
|
393
393
|
} ) as GetEntityRecord,
|
|
394
394
|
( state: State, kind, name, recordId, query ) => {
|
|
395
395
|
const context = query?.context ?? 'default';
|
|
396
|
+
const queriedState =
|
|
397
|
+
state.entities.records?.[ kind ]?.[ name ]?.queriedData;
|
|
396
398
|
return [
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
]?.[ recordId ],
|
|
400
|
-
state.entities.records?.[ kind ]?.[ name ]?.queriedData
|
|
401
|
-
?.itemIsComplete[ context ]?.[ recordId ],
|
|
399
|
+
queriedState?.items[ context ]?.[ recordId ],
|
|
400
|
+
queriedState?.itemIsComplete[ context ]?.[ recordId ],
|
|
402
401
|
];
|
|
403
402
|
}
|
|
404
403
|
) as GetEntityRecord;
|
|
@@ -421,6 +420,62 @@ getEntityRecord.__unstableNormalizeArgs = (
|
|
|
421
420
|
return newArgs;
|
|
422
421
|
};
|
|
423
422
|
|
|
423
|
+
/**
|
|
424
|
+
* Returns true if a record has been received for the given set of parameters, or false otherwise.
|
|
425
|
+
*
|
|
426
|
+
* Note: This action does not trigger a request for the entity record from the API
|
|
427
|
+
* if it's not available in the local state.
|
|
428
|
+
*
|
|
429
|
+
* @param state State tree
|
|
430
|
+
* @param kind Entity kind.
|
|
431
|
+
* @param name Entity name.
|
|
432
|
+
* @param key Record's key.
|
|
433
|
+
* @param query Optional query.
|
|
434
|
+
*
|
|
435
|
+
* @return Whether an entity record has been received.
|
|
436
|
+
*/
|
|
437
|
+
export function hasEntityRecord(
|
|
438
|
+
state: State,
|
|
439
|
+
kind: string,
|
|
440
|
+
name: string,
|
|
441
|
+
key?: EntityRecordKey,
|
|
442
|
+
query?: GetRecordsHttpQuery
|
|
443
|
+
): boolean {
|
|
444
|
+
const queriedState =
|
|
445
|
+
state.entities.records?.[ kind ]?.[ name ]?.queriedData;
|
|
446
|
+
if ( ! queriedState ) {
|
|
447
|
+
return false;
|
|
448
|
+
}
|
|
449
|
+
const context = query?.context ?? 'default';
|
|
450
|
+
|
|
451
|
+
// If expecting a complete item, validate that completeness.
|
|
452
|
+
if ( ! query || ! query._fields ) {
|
|
453
|
+
return !! queriedState.itemIsComplete[ context ]?.[ key ];
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
const item = queriedState.items[ context ]?.[ key ];
|
|
457
|
+
if ( ! item ) {
|
|
458
|
+
return false;
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
// When `query._fields` is provided, check that each requested field exists,
|
|
462
|
+
// including any nested paths, on the item; return false if any part is missing.
|
|
463
|
+
const fields = getNormalizedCommaSeparable( query._fields ) ?? [];
|
|
464
|
+
for ( let i = 0; i < fields.length; i++ ) {
|
|
465
|
+
const path = fields[ i ].split( '.' );
|
|
466
|
+
let value = item;
|
|
467
|
+
for ( let p = 0; p < path.length; p++ ) {
|
|
468
|
+
const part = path[ p ];
|
|
469
|
+
if ( ! value || ! Object.hasOwn( value, part ) ) {
|
|
470
|
+
return false;
|
|
471
|
+
}
|
|
472
|
+
value = value[ part ];
|
|
473
|
+
}
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
return true;
|
|
477
|
+
}
|
|
478
|
+
|
|
424
479
|
/**
|
|
425
480
|
* Returns the Entity's record object by key. Doesn't trigger a resolver nor requests the entity records from the API if the entity record isn't available in the local state.
|
|
426
481
|
*
|
package/src/test/entities.js
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import apiFetch from '@wordpress/api-fetch';
|
|
5
|
+
|
|
6
|
+
jest.mock( '@wordpress/api-fetch' );
|
|
7
|
+
|
|
1
8
|
/**
|
|
2
9
|
* Internal dependencies
|
|
3
10
|
*/
|
|
@@ -5,6 +12,7 @@ import {
|
|
|
5
12
|
getMethodName,
|
|
6
13
|
rootEntitiesConfig,
|
|
7
14
|
prePersistPostType,
|
|
15
|
+
additionalEntityConfigLoaders,
|
|
8
16
|
} from '../entities';
|
|
9
17
|
|
|
10
18
|
describe( 'getMethodName', () => {
|
|
@@ -68,3 +76,27 @@ describe( 'prePersistPostType', () => {
|
|
|
68
76
|
expect( prePersistPostType( record, edits ) ).toEqual( {} );
|
|
69
77
|
} );
|
|
70
78
|
} );
|
|
79
|
+
|
|
80
|
+
describe( 'loadTaxonomyEntities', () => {
|
|
81
|
+
beforeEach( () => {
|
|
82
|
+
apiFetch.mockReset();
|
|
83
|
+
} );
|
|
84
|
+
|
|
85
|
+
it( 'should add supportsPagination: true to taxonomy entities', async () => {
|
|
86
|
+
const mockTaxonomies = {
|
|
87
|
+
category: {
|
|
88
|
+
name: 'Categories',
|
|
89
|
+
rest_base: 'categories',
|
|
90
|
+
},
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
apiFetch.mockResolvedValueOnce( mockTaxonomies );
|
|
94
|
+
|
|
95
|
+
const taxonomyLoader = additionalEntityConfigLoaders.find(
|
|
96
|
+
( loader ) => loader.kind === 'taxonomy'
|
|
97
|
+
);
|
|
98
|
+
const entities = await taxonomyLoader.loadEntities();
|
|
99
|
+
|
|
100
|
+
expect( entities[ 0 ].supportsPagination ).toBe( true );
|
|
101
|
+
} );
|
|
102
|
+
} );
|
package/src/test/resolvers.js
CHANGED
|
@@ -79,10 +79,6 @@ describe( 'getEntityRecord', () => {
|
|
|
79
79
|
it( 'accepts a query that overrides default api path', async () => {
|
|
80
80
|
const query = { context: 'view', _envelope: '1' };
|
|
81
81
|
|
|
82
|
-
const select = {
|
|
83
|
-
hasEntityRecords: jest.fn( () => {} ),
|
|
84
|
-
};
|
|
85
|
-
|
|
86
82
|
// Provide response
|
|
87
83
|
triggerFetch.mockImplementation( () => POST_TYPE_RESPONSE );
|
|
88
84
|
|
|
@@ -91,7 +87,7 @@ describe( 'getEntityRecord', () => {
|
|
|
91
87
|
'postType',
|
|
92
88
|
'post',
|
|
93
89
|
query
|
|
94
|
-
)( { dispatch,
|
|
90
|
+
)( { dispatch, registry, resolveSelect } );
|
|
95
91
|
|
|
96
92
|
// Trigger apiFetch, test that the query is present in the url.
|
|
97
93
|
expect( triggerFetch ).toHaveBeenCalledWith( {
|
|
@@ -337,6 +333,105 @@ describe( 'getEntityRecords', () => {
|
|
|
337
333
|
} );
|
|
338
334
|
} );
|
|
339
335
|
|
|
336
|
+
describe( 'taxonomy pagination', () => {
|
|
337
|
+
const registry = { batch: ( callback ) => callback() };
|
|
338
|
+
let dispatch, loadedTaxonomyEntities;
|
|
339
|
+
|
|
340
|
+
beforeEach( async () => {
|
|
341
|
+
dispatch = Object.assign( jest.fn(), {
|
|
342
|
+
receiveEntityRecords: jest.fn(),
|
|
343
|
+
__unstableAcquireStoreLock: jest.fn().mockResolvedValue( 'lock' ),
|
|
344
|
+
__unstableReleaseStoreLock: jest.fn(),
|
|
345
|
+
} );
|
|
346
|
+
triggerFetch.mockReset();
|
|
347
|
+
|
|
348
|
+
const mockTaxonomyConfig = {
|
|
349
|
+
category: {
|
|
350
|
+
name: 'Categories',
|
|
351
|
+
rest_base: 'categories',
|
|
352
|
+
},
|
|
353
|
+
};
|
|
354
|
+
|
|
355
|
+
triggerFetch.mockResolvedValueOnce( mockTaxonomyConfig );
|
|
356
|
+
|
|
357
|
+
const { additionalEntityConfigLoaders } = await import( '../entities' );
|
|
358
|
+
const taxonomyLoader = additionalEntityConfigLoaders.find(
|
|
359
|
+
( loader ) => loader.kind === 'taxonomy'
|
|
360
|
+
);
|
|
361
|
+
loadedTaxonomyEntities = await taxonomyLoader.loadEntities();
|
|
362
|
+
} );
|
|
363
|
+
|
|
364
|
+
it( 'should make paginated API calls with parse: false', async () => {
|
|
365
|
+
const resolveSelect = {
|
|
366
|
+
getEntitiesConfig: jest
|
|
367
|
+
.fn()
|
|
368
|
+
.mockResolvedValue( loadedTaxonomyEntities ),
|
|
369
|
+
};
|
|
370
|
+
|
|
371
|
+
triggerFetch.mockResolvedValueOnce( [
|
|
372
|
+
{ id: 1, name: 'Category 1' },
|
|
373
|
+
{ id: 2, name: 'Category 2' },
|
|
374
|
+
] );
|
|
375
|
+
|
|
376
|
+
await getEntityRecords( 'taxonomy', 'category', {
|
|
377
|
+
per_page: 2,
|
|
378
|
+
page: 1,
|
|
379
|
+
} )( { dispatch, registry, resolveSelect } );
|
|
380
|
+
|
|
381
|
+
expect( triggerFetch ).toHaveBeenLastCalledWith( {
|
|
382
|
+
path: '/wp/v2/categories?context=edit&per_page=2&page=1',
|
|
383
|
+
parse: false,
|
|
384
|
+
} );
|
|
385
|
+
} );
|
|
386
|
+
|
|
387
|
+
it( 'should extract pagination metadata from headers', async () => {
|
|
388
|
+
const resolveSelect = {
|
|
389
|
+
getEntitiesConfig: jest
|
|
390
|
+
.fn()
|
|
391
|
+
.mockResolvedValue( loadedTaxonomyEntities ),
|
|
392
|
+
};
|
|
393
|
+
|
|
394
|
+
const mockResponse = {
|
|
395
|
+
json: () =>
|
|
396
|
+
Promise.resolve( [
|
|
397
|
+
{ id: 1, name: 'Category 1' },
|
|
398
|
+
{ id: 2, name: 'Category 2' },
|
|
399
|
+
] ),
|
|
400
|
+
headers: {
|
|
401
|
+
get: jest.fn( ( header ) => {
|
|
402
|
+
if ( header === 'X-WP-Total' ) {
|
|
403
|
+
return '10';
|
|
404
|
+
}
|
|
405
|
+
if ( header === 'X-WP-TotalPages' ) {
|
|
406
|
+
return '5';
|
|
407
|
+
}
|
|
408
|
+
return null;
|
|
409
|
+
} ),
|
|
410
|
+
},
|
|
411
|
+
};
|
|
412
|
+
|
|
413
|
+
triggerFetch.mockResolvedValueOnce( mockResponse );
|
|
414
|
+
|
|
415
|
+
await getEntityRecords( 'taxonomy', 'category', {
|
|
416
|
+
per_page: 2,
|
|
417
|
+
page: 1,
|
|
418
|
+
} )( { dispatch, registry, resolveSelect } );
|
|
419
|
+
|
|
420
|
+
expect( dispatch.receiveEntityRecords ).toHaveBeenCalledWith(
|
|
421
|
+
'taxonomy',
|
|
422
|
+
'category',
|
|
423
|
+
[
|
|
424
|
+
{ id: 1, name: 'Category 1' },
|
|
425
|
+
{ id: 2, name: 'Category 2' },
|
|
426
|
+
],
|
|
427
|
+
{ per_page: 2, page: 1 },
|
|
428
|
+
false,
|
|
429
|
+
undefined,
|
|
430
|
+
{ totalItems: 10, totalPages: 5 }
|
|
431
|
+
);
|
|
432
|
+
} );
|
|
433
|
+
} );
|
|
434
|
+
|
|
340
435
|
describe( 'getEmbedPreview', () => {
|
|
341
436
|
const SUCCESSFUL_EMBED_RESPONSE = { data: '<p>some html</p>' };
|
|
342
437
|
const UNEMBEDDABLE_RESPONSE = false;
|