@warp-drive-mirror/json-api 5.8.0-alpha.40 → 5.8.0-alpha.41

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.
@@ -124,6 +124,15 @@ export declare class JSONAPICache implements Cache {
124
124
  * of the Graph handling necessary entanglements and
125
125
  * notifications for relational data.
126
126
  *
127
+ * :::warning
128
+ * It is not recommended to use the return value as
129
+ * a serialized representation of the resource both
130
+ * due to it containing local mutations and because
131
+ * it may contain additional fields not recognized
132
+ * by the {json:api} API implementation such as `lid` and
133
+ * the various internal WarpDrive bookkeeping fields.
134
+ * :::
135
+ *
127
136
  * @category Cache Management
128
137
  * @public
129
138
  */
package/dist/index.js CHANGED
@@ -1285,6 +1285,15 @@ class JSONAPICache {
1285
1285
  * of the Graph handling necessary entanglements and
1286
1286
  * notifications for relational data.
1287
1287
  *
1288
+ * :::warning
1289
+ * It is not recommended to use the return value as
1290
+ * a serialized representation of the resource both
1291
+ * due to it containing local mutations and because
1292
+ * it may contain additional fields not recognized
1293
+ * by the {json:api} API implementation such as `lid` and
1294
+ * the various internal WarpDrive bookkeeping fields.
1295
+ * :::
1296
+ *
1288
1297
  * @category Cache Management
1289
1298
  * @public
1290
1299
  */
@@ -1309,7 +1318,7 @@ class JSONAPICache {
1309
1318
  if (rel.definition.isImplicit) {
1310
1319
  return;
1311
1320
  } else {
1312
- relationships[key] = structuredClone(this.__graph.getData(identifier, key));
1321
+ relationships[key] = this.__graph.getData(identifier, key);
1313
1322
  }
1314
1323
  });
1315
1324
  }
@@ -3059,7 +3068,10 @@ function patchCache(Cache, op) {
3059
3068
  }
3060
3069
  function getCacheFields(cache, identifier) {
3061
3070
  if (cache._capabilities.schema.cacheFields) {
3062
- return cache._capabilities.schema.cacheFields(identifier);
3071
+ const result = cache._capabilities.schema.cacheFields(identifier);
3072
+ if (result) {
3073
+ return result;
3074
+ }
3063
3075
  }
3064
3076
 
3065
3077
  // the model schema service cannot process fields that are not cache fields
@@ -1398,6 +1398,15 @@ class JSONAPICache {
1398
1398
  * of the Graph handling necessary entanglements and
1399
1399
  * notifications for relational data.
1400
1400
  *
1401
+ * :::warning
1402
+ * It is not recommended to use the return value as
1403
+ * a serialized representation of the resource both
1404
+ * due to it containing local mutations and because
1405
+ * it may contain additional fields not recognized
1406
+ * by the {json:api} API implementation such as `lid` and
1407
+ * the various internal WarpDrive bookkeeping fields.
1408
+ * :::
1409
+ *
1401
1410
  * @category Cache Management
1402
1411
  * @public
1403
1412
  */
@@ -1422,7 +1431,7 @@ class JSONAPICache {
1422
1431
  if (rel.definition.isImplicit) {
1423
1432
  return;
1424
1433
  } else {
1425
- relationships[key] = structuredClone(this.__graph.getData(identifier, key));
1434
+ relationships[key] = this.__graph.getData(identifier, key);
1426
1435
  }
1427
1436
  });
1428
1437
  }
@@ -3172,7 +3181,10 @@ function patchCache(Cache, op) {
3172
3181
  }
3173
3182
  function getCacheFields(cache, identifier) {
3174
3183
  if (cache._capabilities.schema.cacheFields) {
3175
- return cache._capabilities.schema.cacheFields(identifier);
3184
+ const result = cache._capabilities.schema.cacheFields(identifier);
3185
+ if (result) {
3186
+ return result;
3187
+ }
3176
3188
  }
3177
3189
 
3178
3190
  // the model schema service cannot process fields that are not cache fields
@@ -1398,6 +1398,15 @@ class JSONAPICache {
1398
1398
  * of the Graph handling necessary entanglements and
1399
1399
  * notifications for relational data.
1400
1400
  *
1401
+ * :::warning
1402
+ * It is not recommended to use the return value as
1403
+ * a serialized representation of the resource both
1404
+ * due to it containing local mutations and because
1405
+ * it may contain additional fields not recognized
1406
+ * by the {json:api} API implementation such as `lid` and
1407
+ * the various internal WarpDrive bookkeeping fields.
1408
+ * :::
1409
+ *
1401
1410
  * @category Cache Management
1402
1411
  * @public
1403
1412
  */
@@ -1422,7 +1431,7 @@ class JSONAPICache {
1422
1431
  if (rel.definition.isImplicit) {
1423
1432
  return;
1424
1433
  } else {
1425
- relationships[key] = structuredClone(this.__graph.getData(identifier, key));
1434
+ relationships[key] = this.__graph.getData(identifier, key);
1426
1435
  }
1427
1436
  });
1428
1437
  }
@@ -3172,7 +3181,10 @@ function patchCache(Cache, op) {
3172
3181
  }
3173
3182
  function getCacheFields(cache, identifier) {
3174
3183
  if (cache._capabilities.schema.cacheFields) {
3175
- return cache._capabilities.schema.cacheFields(identifier);
3184
+ const result = cache._capabilities.schema.cacheFields(identifier);
3185
+ if (result) {
3186
+ return result;
3187
+ }
3176
3188
  }
3177
3189
 
3178
3190
  // the model schema service cannot process fields that are not cache fields
@@ -264,6 +264,15 @@ class JSONAPICache {
264
264
  * of the Graph handling necessary entanglements and
265
265
  * notifications for relational data.
266
266
  *
267
+ * :::warning
268
+ * It is not recommended to use the return value as
269
+ * a serialized representation of the resource both
270
+ * due to it containing local mutations and because
271
+ * it may contain additional fields not recognized
272
+ * by the {json:api} API implementation such as `lid` and
273
+ * the various internal WarpDrive bookkeeping fields.
274
+ * :::
275
+ *
267
276
  * @category Cache Management
268
277
  * @public
269
278
  */
@@ -288,7 +297,7 @@ class JSONAPICache {
288
297
  if (rel.definition.isImplicit) {
289
298
  return;
290
299
  } else {
291
- relationships[key] = structuredClone(this.__graph.getData(identifier, key));
300
+ relationships[key] = this.__graph.getData(identifier, key);
292
301
  }
293
302
  });
294
303
  }
@@ -1767,7 +1776,10 @@ function patchCache(Cache, op) {
1767
1776
  }
1768
1777
  function getCacheFields(cache, identifier) {
1769
1778
  if (cache._capabilities.schema.cacheFields) {
1770
- return cache._capabilities.schema.cacheFields(identifier);
1779
+ const result = cache._capabilities.schema.cacheFields(identifier);
1780
+ if (result) {
1781
+ return result;
1782
+ }
1771
1783
  }
1772
1784
 
1773
1785
  // the model schema service cannot process fields that are not cache fields
@@ -264,6 +264,15 @@ class JSONAPICache {
264
264
  * of the Graph handling necessary entanglements and
265
265
  * notifications for relational data.
266
266
  *
267
+ * :::warning
268
+ * It is not recommended to use the return value as
269
+ * a serialized representation of the resource both
270
+ * due to it containing local mutations and because
271
+ * it may contain additional fields not recognized
272
+ * by the {json:api} API implementation such as `lid` and
273
+ * the various internal WarpDrive bookkeeping fields.
274
+ * :::
275
+ *
267
276
  * @category Cache Management
268
277
  * @public
269
278
  */
@@ -288,7 +297,7 @@ class JSONAPICache {
288
297
  if (rel.definition.isImplicit) {
289
298
  return;
290
299
  } else {
291
- relationships[key] = structuredClone(this.__graph.getData(identifier, key));
300
+ relationships[key] = this.__graph.getData(identifier, key);
292
301
  }
293
302
  });
294
303
  }
@@ -1767,7 +1776,10 @@ function patchCache(Cache, op) {
1767
1776
  }
1768
1777
  function getCacheFields(cache, identifier) {
1769
1778
  if (cache._capabilities.schema.cacheFields) {
1770
- return cache._capabilities.schema.cacheFields(identifier);
1779
+ const result = cache._capabilities.schema.cacheFields(identifier);
1780
+ if (result) {
1781
+ return result;
1782
+ }
1771
1783
  }
1772
1784
 
1773
1785
  // the model schema service cannot process fields that are not cache fields
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@warp-drive-mirror/json-api",
3
- "version": "5.8.0-alpha.40",
3
+ "version": "5.8.0-alpha.41",
4
4
  "description": "A {json:api} Cache Implementation for WarpDrive",
5
5
  "keywords": [
6
6
  "ember-addon"
@@ -40,7 +40,7 @@
40
40
  }
41
41
  },
42
42
  "peerDependencies": {
43
- "@warp-drive-mirror/core": "5.8.0-alpha.40"
43
+ "@warp-drive-mirror/core": "5.8.0-alpha.41"
44
44
  },
45
45
  "dependencies": {
46
46
  "@embroider/macros": "^1.18.1",
@@ -52,8 +52,8 @@
52
52
  "@babel/plugin-transform-typescript": "^7.28.0",
53
53
  "@babel/preset-typescript": "^7.27.1",
54
54
  "@types/json-to-ast": "^2.1.4",
55
- "@warp-drive/internal-config": "5.8.0-alpha.40",
56
- "@warp-drive-mirror/core": "5.8.0-alpha.40",
55
+ "@warp-drive/internal-config": "5.8.0-alpha.41",
56
+ "@warp-drive-mirror/core": "5.8.0-alpha.41",
57
57
  "decorator-transforms": "^2.3.0",
58
58
  "expect-type": "^1.2.2",
59
59
  "typescript": "^5.9.2",