@zenstackhq/runtime
Advanced tools
Comparing version 2.1.0 to 2.1.1
@@ -1,1 +0,1 @@ | ||
export { enhance } from '.zenstack/enhance'; | ||
export { auth, enhance } from '.zenstack/enhance'; |
@@ -795,3 +795,13 @@ "use strict"; | ||
injectReadCheckSelect(model, args) { | ||
// we need to recurse into relation fields before injecting the current level, because | ||
// injection into current level can result in relation being selected/included, which | ||
// can then cause infinite recursion when we visit relation later | ||
var _a, _b; | ||
// recurse into relation fields | ||
for (const [k, v] of Object.entries((_b = (_a = args.select) !== null && _a !== void 0 ? _a : args.include) !== null && _b !== void 0 ? _b : {})) { | ||
const field = (0, cross_1.resolveField)(this.modelMeta, model, k); | ||
if ((field === null || field === void 0 ? void 0 : field.isDataModel) && v && typeof v === 'object') { | ||
this.injectReadCheckSelect(field.type, v); | ||
} | ||
} | ||
if (this.hasFieldLevelPolicy(model)) { | ||
@@ -804,9 +814,2 @@ // recursively inject selection for fields needed for field-level read checks | ||
} | ||
// recurse into relation fields | ||
for (const [k, v] of Object.entries((_b = (_a = args.select) !== null && _a !== void 0 ? _a : args.include) !== null && _b !== void 0 ? _b : {})) { | ||
const field = (0, cross_1.resolveField)(this.modelMeta, model, k); | ||
if ((field === null || field === void 0 ? void 0 : field.isDataModel) && v && typeof v === 'object') { | ||
this.injectReadCheckSelect(field.type, v); | ||
} | ||
} | ||
} | ||
@@ -813,0 +816,0 @@ doInjectReadCheckSelect(model, args, input) { |
{ | ||
"name": "@zenstackhq/runtime", | ||
"displayName": "ZenStack Runtime Library", | ||
"version": "2.1.0", | ||
"version": "2.1.1", | ||
"description": "Runtime of ZenStack for both client-side and server-side environments.", | ||
@@ -6,0 +6,0 @@ "repository": { |
Sorry, the diff of this file is not supported yet
618243
7744