zenstack 1.0.0-beta.12 → 1.0.0-beta.13
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/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"publisher": "zenstack",
|
|
4
4
|
"displayName": "ZenStack Language Tools",
|
|
5
5
|
"description": "A toolkit for building secure CRUD apps with Next.js + Typescript",
|
|
6
|
-
"version": "1.0.0-beta.
|
|
6
|
+
"version": "1.0.0-beta.13",
|
|
7
7
|
"author": {
|
|
8
8
|
"name": "ZenStack Team"
|
|
9
9
|
},
|
|
@@ -93,8 +93,8 @@
|
|
|
93
93
|
"vscode-uri": "^3.0.6",
|
|
94
94
|
"zod": "3.21.1",
|
|
95
95
|
"zod-validation-error": "^0.2.1",
|
|
96
|
-
"@zenstackhq/
|
|
97
|
-
"@zenstackhq/
|
|
96
|
+
"@zenstackhq/sdk": "1.0.0-beta.13",
|
|
97
|
+
"@zenstackhq/language": "1.0.0-beta.13"
|
|
98
98
|
},
|
|
99
99
|
"devDependencies": {
|
|
100
100
|
"@types/async-exit-hook": "^2.0.0",
|
|
@@ -124,7 +124,7 @@
|
|
|
124
124
|
"tsc-alias": "^1.7.0",
|
|
125
125
|
"typescript": "^4.8.4",
|
|
126
126
|
"vitest": "^0.29.7",
|
|
127
|
-
"@zenstackhq/runtime": "1.0.0-beta.
|
|
127
|
+
"@zenstackhq/runtime": "1.0.0-beta.13"
|
|
128
128
|
},
|
|
129
129
|
"scripts": {
|
|
130
130
|
"vscode:publish": "vsce publish --no-dependencies",
|
|
@@ -160,17 +160,23 @@ function isRelationOwner(field, backLink) {
|
|
|
160
160
|
if (!(0, ast_1.isDataModel)((_a = field.type.reference) === null || _a === void 0 ? void 0 : _a.ref)) {
|
|
161
161
|
return false;
|
|
162
162
|
}
|
|
163
|
-
if (
|
|
164
|
-
//
|
|
163
|
+
if (!backLink) {
|
|
164
|
+
// CHECKME: can this really happen?
|
|
165
165
|
return true;
|
|
166
166
|
}
|
|
167
|
-
|
|
168
|
-
// if
|
|
169
|
-
//
|
|
167
|
+
if (!(0, sdk_1.hasAttribute)(field, '@relation') && !(0, sdk_1.hasAttribute)(backLink, '@relation')) {
|
|
168
|
+
// if neither side has `@relation` attribute, it's an implicit many-to-many relation,
|
|
169
|
+
// both sides are owners
|
|
170
170
|
return true;
|
|
171
171
|
}
|
|
172
|
-
|
|
172
|
+
return holdsForeignKey(field);
|
|
173
|
+
}
|
|
174
|
+
function holdsForeignKey(field) {
|
|
175
|
+
const relation = field.attributes.find((attr) => { var _a; return ((_a = attr.decl.ref) === null || _a === void 0 ? void 0 : _a.name) === '@relation'; });
|
|
176
|
+
if (!relation) {
|
|
173
177
|
return false;
|
|
174
178
|
}
|
|
179
|
+
const fields = (0, sdk_1.getAttributeArg)(relation, 'fields');
|
|
180
|
+
return !!fields;
|
|
175
181
|
}
|
|
176
182
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/model-meta/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAQkC;AAElC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/model-meta/index.ts"],"names":[],"mappings":"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"}
|