zenstack 2.8.0 → 2.9.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 (63) hide show
  1. package/cli/cli-util.js +7 -5
  2. package/cli/cli-util.js.map +1 -1
  3. package/cli/plugin-runner.js +3 -1
  4. package/cli/plugin-runner.js.map +1 -1
  5. package/language-server/utils.d.ts +5 -1
  6. package/language-server/utils.js +7 -0
  7. package/language-server/utils.js.map +1 -1
  8. package/language-server/validator/attribute-application-validator.js +3 -0
  9. package/language-server/validator/attribute-application-validator.js.map +1 -1
  10. package/language-server/validator/datamodel-validator.js +0 -3
  11. package/language-server/validator/datamodel-validator.js.map +1 -1
  12. package/language-server/validator/function-invocation-validator.js +1 -1
  13. package/language-server/validator/function-invocation-validator.js.map +1 -1
  14. package/language-server/validator/schema-validator.js +2 -1
  15. package/language-server/validator/schema-validator.js.map +1 -1
  16. package/language-server/validator/typedef-validator.d.ts +1 -0
  17. package/language-server/validator/typedef-validator.js +4 -0
  18. package/language-server/validator/typedef-validator.js.map +1 -1
  19. package/language-server/validator/utils.d.ts +1 -5
  20. package/language-server/validator/utils.js +0 -65
  21. package/language-server/validator/utils.js.map +1 -1
  22. package/language-server/zmodel-linker.js +10 -9
  23. package/language-server/zmodel-linker.js.map +1 -1
  24. package/language-server/zmodel-scope.d.ts +2 -2
  25. package/language-server/zmodel-scope.js +35 -27
  26. package/language-server/zmodel-scope.js.map +1 -1
  27. package/package.json +4 -4
  28. package/plugins/enhancer/enhance/auth-type-generator.d.ts +2 -2
  29. package/plugins/enhancer/enhance/auth-type-generator.js +4 -4
  30. package/plugins/enhancer/enhance/auth-type-generator.js.map +1 -1
  31. package/plugins/enhancer/enhance/index.d.ts +7 -3
  32. package/plugins/enhancer/enhance/index.js +109 -77
  33. package/plugins/enhancer/enhance/index.js.map +1 -1
  34. package/plugins/enhancer/enhance/model-typedef-generator.js +22 -2
  35. package/plugins/enhancer/enhance/model-typedef-generator.js.map +1 -1
  36. package/plugins/enhancer/index.js +2 -2
  37. package/plugins/enhancer/index.js.map +1 -1
  38. package/plugins/enhancer/policy/policy-guard-generator.d.ts +1 -1
  39. package/plugins/enhancer/policy/policy-guard-generator.js +23 -35
  40. package/plugins/enhancer/policy/policy-guard-generator.js.map +1 -1
  41. package/plugins/enhancer/policy/utils.js +15 -12
  42. package/plugins/enhancer/policy/utils.js.map +1 -1
  43. package/plugins/plugin-utils.d.ts +1 -1
  44. package/plugins/plugin-utils.js +5 -3
  45. package/plugins/plugin-utils.js.map +1 -1
  46. package/plugins/prisma/index.js +18 -1
  47. package/plugins/prisma/index.js.map +1 -1
  48. package/plugins/prisma/schema-generator.d.ts +1 -1
  49. package/plugins/prisma/schema-generator.js +44 -56
  50. package/plugins/prisma/schema-generator.js.map +1 -1
  51. package/plugins/zod/generator.d.ts +2 -0
  52. package/plugins/zod/generator.js +77 -19
  53. package/plugins/zod/generator.js.map +1 -1
  54. package/plugins/zod/transformer.d.ts +3 -2
  55. package/plugins/zod/transformer.js +43 -12
  56. package/plugins/zod/transformer.js.map +1 -1
  57. package/plugins/zod/utils/schema-gen.d.ts +1 -2
  58. package/plugins/zod/utils/schema-gen.js +0 -40
  59. package/plugins/zod/utils/schema-gen.js.map +1 -1
  60. package/res/stdlib.zmodel +3 -3
  61. package/utils/ast-utils.d.ts +5 -7
  62. package/utils/ast-utils.js +8 -43
  63. package/utils/ast-utils.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../src/plugins/zod/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../src/plugins/zod/generator.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type PluginOptions } from '@zenstackhq/sdk';
2
- import { DataModel, type Model } from '@zenstackhq/sdk/ast';
2
+ import { DataModel, DataModelField, type Model } from '@zenstackhq/sdk/ast';
3
3
  import { type DMMF as PrismaDMMF } from '@zenstackhq/sdk/prisma';
4
4
  import type { SourceFile } from 'ts-morph';
5
5
  import { AggregateOperationSupport, TransformerParams } from './types';
@@ -39,7 +39,8 @@ export default class Transformer {
39
39
  generateObjectSchemaField(field: PrismaDMMF.SchemaArg, contextDataModel: DataModel | undefined, generateUnchecked: boolean, replaceJsonWithTypeDef?: boolean): [string, PrismaDMMF.SchemaArg, boolean][];
40
40
  wrapWithZodValidators(mainValidators: string | string[], field: PrismaDMMF.SchemaArg, inputType: PrismaDMMF.InputTypeRef): string;
41
41
  addSchemaImport(name: string): void;
42
- generatePrismaStringLine(field: PrismaDMMF.SchemaArg, inputType: PrismaDMMF.InputTypeRef, inputsLength: number): string;
42
+ generatePrismaStringLine(field: PrismaDMMF.SchemaArg, inputType: PrismaDMMF.InputTypeRef, inputsLength: number, contextField: DataModelField | undefined): string;
43
+ private isFieldOptional;
43
44
  generateFieldValidators(zodStringWithMainType: string, field: PrismaDMMF.SchemaArg): string;
44
45
  prepareObjectSchema(zodObjectSchemaFields: string[], options: PluginOptions): string;
45
46
  generateExportObjectSchemaStatement(schema: string): string;
@@ -48,15 +48,25 @@ class Transformer {
48
48
  }
49
49
  generateEnumSchemas() {
50
50
  return __awaiter(this, void 0, void 0, function* () {
51
+ const generated = [];
52
+ // generate for enums in DMMF
51
53
  for (const enumType of this.enumTypes) {
52
54
  const name = (0, upper_case_first_1.upperCaseFirst)(enumType.name);
53
55
  const filePath = path_1.default.join(Transformer.outputPath, `enums/${name}.schema.ts`);
54
- const content = `/* eslint-disable */\n${this.generateImportZodStatement()}\n${this.generateExportSchemaStatement(`${name}`, `z.enum(${JSON.stringify(enumType.values)})`)}`;
56
+ const content = `${this.generateImportZodStatement()}\n${this.generateExportSchemaStatement(`${name}`, `z.enum(${JSON.stringify(enumType.values)})`)}`;
55
57
  this.sourceFiles.push(this.project.createSourceFile(filePath, content, { overwrite: true }));
58
+ generated.push(enumType.name);
56
59
  }
57
- this.sourceFiles.push(this.project.createSourceFile(path_1.default.join(Transformer.outputPath, `enums/index.ts`), this.enumTypes
58
- .map((enumType) => `export * from './${(0, upper_case_first_1.upperCaseFirst)(enumType.name)}.schema';`)
59
- .join('\n'), { overwrite: true }));
60
+ // enums not referenced by data models are not in DMMF, deal with them separately
61
+ const extraEnums = this.zmodel.declarations.filter((d) => (0, ast_1.isEnum)(d) && !generated.includes(d.name));
62
+ for (const enumDecl of extraEnums) {
63
+ const name = (0, upper_case_first_1.upperCaseFirst)(enumDecl.name);
64
+ const filePath = path_1.default.join(Transformer.outputPath, `enums/${name}.schema.ts`);
65
+ const content = `${this.generateImportZodStatement()}\n${this.generateExportSchemaStatement(`${name}`, `z.enum(${JSON.stringify(enumDecl.fields.map((f) => f.name))})`)}`;
66
+ this.sourceFiles.push(this.project.createSourceFile(filePath, content, { overwrite: true }));
67
+ generated.push(enumDecl.name);
68
+ }
69
+ this.sourceFiles.push(this.project.createSourceFile(path_1.default.join(Transformer.outputPath, `enums/index.ts`), generated.map((name) => `export * from './${(0, upper_case_first_1.upperCaseFirst)(name)}.schema';`).join('\n'), { overwrite: true }));
60
70
  });
61
71
  }
62
72
  generateImportZodStatement() {
@@ -74,7 +84,7 @@ class Transformer {
74
84
  const { schemaFields, extraImports } = this.generateObjectSchemaFields(generateUnchecked);
75
85
  const objectSchema = this.prepareObjectSchema(schemaFields, options);
76
86
  const filePath = path_1.default.join(Transformer.outputPath, `objects/${this.name}.schema.ts`);
77
- const content = '/* eslint-disable */\n' + extraImports.join('\n\n') + objectSchema;
87
+ const content = extraImports.join('\n\n') + objectSchema;
78
88
  this.sourceFiles.push(this.project.createSourceFile(filePath, content, { overwrite: true }));
79
89
  return `${this.name}.schema`;
80
90
  }
@@ -182,7 +192,8 @@ class Transformer {
182
192
  if (inputType.type !== this.originalName && typeof inputType.type === 'string') {
183
193
  this.addSchemaImport(inputType.type);
184
194
  }
185
- result.push(this.generatePrismaStringLine(field, inputType, lines.length));
195
+ const contextField = contextDataModel === null || contextDataModel === void 0 ? void 0 : contextDataModel.fields.find((f) => f.name === field.name);
196
+ result.push(this.generatePrismaStringLine(field, inputType, lines.length, contextField));
186
197
  }
187
198
  }
188
199
  return result;
@@ -238,7 +249,7 @@ class Transformer {
238
249
  addSchemaImport(name) {
239
250
  this.schemaImports.add((0, upper_case_first_1.upperCaseFirst)(name));
240
251
  }
241
- generatePrismaStringLine(field, inputType, inputsLength) {
252
+ generatePrismaStringLine(field, inputType, inputsLength, contextField) {
242
253
  const isEnum = inputType.location === 'enumTypes';
243
254
  const { isModelQueryType, modelName, queryName } = this.checkIsModelQueryType(inputType.type);
244
255
  const objectSchemaLine = isModelQueryType
@@ -248,10 +259,32 @@ class Transformer {
248
259
  const enumSchemaLine = `${(0, upper_case_first_1.upperCaseFirst)(inputType.type.toString())}Schema`;
249
260
  const schema = inputType.type === this.name ? objectSchemaLine : isEnum ? enumSchemaLine : objectSchemaLine;
250
261
  const arr = inputType.isList ? '.array()' : '';
251
- const opt = !field.isRequired ? '.optional()' : '';
262
+ const optional = !field.isRequired ||
263
+ // also check if the zmodel field infers the field as optional
264
+ (contextField && this.isFieldOptional(contextField));
252
265
  return inputsLength === 1
253
- ? ` ${field.name}: z.lazy(() => ${schema})${arr}${opt}`
254
- : `z.lazy(() => ${schema})${arr}${opt}`;
266
+ ? ` ${field.name}: z.lazy(() => ${schema})${arr}${optional ? '.optional()' : ''}`
267
+ : `z.lazy(() => ${schema})${arr}${optional ? '.optional()' : ''}`;
268
+ }
269
+ isFieldOptional(dmField) {
270
+ var _a;
271
+ if ((0, sdk_1.hasAttribute)(dmField, '@default')) {
272
+ // it's possible that ZModel field has a default but it's transformed away
273
+ // when generating Prisma schema, e.g.: `@default(auth().id)`
274
+ return true;
275
+ }
276
+ if ((0, ast_1.isDataModel)((_a = dmField.type.reference) === null || _a === void 0 ? void 0 : _a.ref)) {
277
+ // if field is a relation, we need to check if the corresponding fk field has a default
278
+ // {
279
+ // authorId Int @default(auth().id)
280
+ // author User @relation(...) // <- author should be optional
281
+ // }
282
+ const fkFields = (0, sdk_1.getForeignKeyFields)(dmField);
283
+ if (fkFields.every((fkField) => (0, sdk_1.hasAttribute)(fkField, '@default'))) {
284
+ return true;
285
+ }
286
+ }
287
+ return false;
255
288
  }
256
289
  generateFieldValidators(zodStringWithMainType, field) {
257
290
  const { isRequired, isNullable } = field;
@@ -543,7 +576,6 @@ export const ${this.name}ObjectSchema: SchemaType = ${schema} as SchemaType;`;
543
576
  imports = [...new Set(imports)];
544
577
  const filePath = path_1.default.join(Transformer.outputPath, `input/${modelName}Input.schema.ts`);
545
578
  const content = `
546
- /* eslint-disable */
547
579
  ${imports.join(';\n')}
548
580
 
549
581
  type ${modelName}InputSchemaType = {
@@ -560,7 +592,6 @@ ${operations
560
592
  }
561
593
  const indexFilePath = path_1.default.join(Transformer.outputPath, 'input/index.ts');
562
594
  const indexContent = `
563
- /* eslint-disable */
564
595
  ${globalExports.join(';\n')}
565
596
  `;
566
597
  this.sourceFiles.push(this.project.createSourceFile(indexFilePath, indexContent, { overwrite: true }));
@@ -1 +1 @@
1
- {"version":3,"file":"transformer.js","sourceRoot":"","sources":["../../../src/plugins/zod/transformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transformer.js","sourceRoot":"","sources":["../../../src/plugins/zod/transformer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import { DataModel, DataModelField, TypeDefField } from '@zenstackhq/sdk/ast';
1
+ import { DataModelField, TypeDefField } from '@zenstackhq/sdk/ast';
2
2
  export declare function makeFieldSchema(field: DataModelField | TypeDefField): string;
3
- export declare function makeValidationRefinements(model: DataModel): (string | undefined)[];
4
3
  export declare function getFieldSchemaDefault(field: DataModelField | TypeDefField): string | boolean | undefined;
@@ -1,12 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.makeFieldSchema = makeFieldSchema;
4
- exports.makeValidationRefinements = makeValidationRefinements;
5
4
  exports.getFieldSchemaDefault = getFieldSchemaDefault;
6
5
  const sdk_1 = require("@zenstackhq/sdk");
7
6
  const ast_1 = require("@zenstackhq/sdk/ast");
8
7
  const upper_case_first_1 = require("upper-case-first");
9
- const __1 = require("..");
10
8
  const enhancer_utils_1 = require("../../enhancer/enhancer-utils");
11
9
  function makeFieldSchema(field) {
12
10
  var _a, _b;
@@ -200,44 +198,6 @@ function makeZodSchema(field) {
200
198
  }
201
199
  return schema;
202
200
  }
203
- function makeValidationRefinements(model) {
204
- const attrs = model.attributes.filter((attr) => { var _a; return ((_a = attr.decl.ref) === null || _a === void 0 ? void 0 : _a.name) === '@@validate'; });
205
- const refinements = attrs
206
- .map((attr) => {
207
- var _a;
208
- const valueArg = (0, sdk_1.getAttributeArg)(attr, 'value');
209
- if (!valueArg) {
210
- return undefined;
211
- }
212
- const messageArg = (0, sdk_1.getAttributeArgLiteral)(attr, 'message');
213
- const message = messageArg ? `message: ${JSON.stringify(messageArg)},` : '';
214
- const pathArg = (0, sdk_1.getAttributeArg)(attr, 'path');
215
- const path = pathArg && (0, ast_1.isArrayExpr)(pathArg) ? `path: ['${(_a = (0, sdk_1.getLiteralArray)(pathArg)) === null || _a === void 0 ? void 0 : _a.join(`', '`)}'],` : '';
216
- const options = `, { ${message} ${path} }`;
217
- try {
218
- let expr = new sdk_1.TypeScriptExpressionTransformer({
219
- context: sdk_1.ExpressionContext.ValidationRule,
220
- fieldReferenceContext: 'value',
221
- }).transform(valueArg);
222
- if ((0, sdk_1.isDataModelFieldReference)(valueArg)) {
223
- // if the expression is a simple field reference, treat undefined
224
- // as true since the all fields are optional in validation context
225
- expr = `${expr} ?? true`;
226
- }
227
- return `.refine((value: any) => ${expr}${options})`;
228
- }
229
- catch (err) {
230
- if (err instanceof sdk_1.TypeScriptExpressionTransformerError) {
231
- throw new sdk_1.PluginError(__1.name, err.message);
232
- }
233
- else {
234
- throw err;
235
- }
236
- }
237
- })
238
- .filter((r) => !!r);
239
- return refinements;
240
- }
241
201
  function getAttrLiteralArg(attr, paramName) {
242
202
  const arg = attr.args.find((arg) => { var _a; return ((_a = arg.$resolvedParam) === null || _a === void 0 ? void 0 : _a.name) === paramName; });
243
203
  return arg && (0, sdk_1.getLiteral)(arg.value);
@@ -1 +1 @@
1
- {"version":3,"file":"schema-gen.js","sourceRoot":"","sources":["../../../../src/plugins/zod/utils/schema-gen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema-gen.js","sourceRoot":"","sources":["../../../../src/plugins/zod/utils/schema-gen.ts"],"names":[],"mappings":"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"}
package/res/stdlib.zmodel CHANGED
@@ -209,7 +209,7 @@ attribute @@@completionHint(_ values: String[])
209
209
  * @param sort: Allows you to specify in what order the entries of the ID are stored in the database. The available options are Asc and Desc.
210
210
  * @param clustered: Defines whether the ID is clustered or non-clustered. Defaults to true.
211
211
  */
212
- attribute @id(map: String?, length: Int?, sort: SortOrder?, clustered: Boolean?) @@@prisma
212
+ attribute @id(map: String?, length: Int?, sort: SortOrder?, clustered: Boolean?) @@@prisma @@@supportTypeDef
213
213
 
214
214
  /**
215
215
  * Defines a default value for a field.
@@ -536,7 +536,7 @@ attribute @deny(_ operation: String @@@completionHint(["'create'", "'read'", "'u
536
536
  * Used to specify the model for resolving `auth()` function call in access policies. A Zmodel
537
537
  * can have at most one model with this attribute. By default, the model named "User" is used.
538
538
  */
539
- attribute @@auth()
539
+ attribute @@auth() @@@supportTypeDef
540
540
 
541
541
  /**
542
542
  * Indicates that the field is a password field and needs to be hashed before persistence.
@@ -639,7 +639,7 @@ attribute @lte(_ value: Int, _ message: String?) @@@targetField([IntField, Float
639
639
  /**
640
640
  * Validates the entity with a complex condition.
641
641
  */
642
- attribute @@validate(_ value: Boolean, _ message: String?, _ path: String[]?) @@@validation
642
+ attribute @@validate(_ value: Boolean, _ message: String?, _ path: String[]?) @@@validation @@@supportTypeDef
643
643
 
644
644
  /**
645
645
  * Validates length of a string field.
@@ -1,13 +1,11 @@
1
- import { BinaryExpr, DataModel, DataModelField, Expression, Model, ModelImport } from '@zenstackhq/language/ast';
1
+ import { BinaryExpr, DataModel, Expression, Model, ModelImport, TypeDef } from '@zenstackhq/language/ast';
2
2
  import { AstNode, LangiumDocuments, Linker } from 'langium';
3
3
  import { URI } from 'vscode-uri';
4
4
  export declare function extractDataModelsWithAllowRules(model: Model): DataModel[];
5
5
  export declare function mergeBaseModels(model: Model, linker: Linker): void;
6
- export declare function getIdFields(dataModel: DataModel): DataModelField[];
7
6
  export declare function isAuthInvocation(node: AstNode): boolean;
8
7
  export declare function isFutureInvocation(node: AstNode): boolean;
9
8
  export declare function isCheckInvocation(node: AstNode): boolean;
10
- export declare function getDataModelFieldReference(expr: Expression): DataModelField | undefined;
11
9
  export declare function resolveImportUri(imp: ModelImport): URI | undefined;
12
10
  export declare function resolveTransitiveImports(documents: LangiumDocuments, model: Model): Model[];
13
11
  export declare function resolveImport(documents: LangiumDocuments, imp: ModelImport): Model | undefined;
@@ -20,13 +18,13 @@ export declare function getContainingDataModel(node: Expression): DataModel | un
20
18
  */
21
19
  export declare function findUpAst(node: AstNode, predicate: (node: AstNode) => boolean): AstNode | undefined;
22
20
  /**
23
- * Gets all data models from all loaded documents
21
+ * Gets all data models and type defs from all loaded documents
24
22
  */
25
- export declare function getAllLoadedDataModels(langiumDocuments: LangiumDocuments): DataModel[];
23
+ export declare function getAllLoadedDataModelsAndTypeDefs(langiumDocuments: LangiumDocuments): (DataModel | TypeDef)[];
26
24
  /**
27
- * Gets all data models from loaded and reachable documents
25
+ * Gets all data models and type defs from loaded and reachable documents
28
26
  */
29
- export declare function getAllLoadedAndReachableDataModels(langiumDocuments: LangiumDocuments, fromModel?: DataModel): DataModel[];
27
+ export declare function getAllLoadedAndReachableDataModelsAndTypeDefs(langiumDocuments: LangiumDocuments, fromModel?: DataModel): (DataModel | TypeDef)[];
30
28
  /**
31
29
  * Walk up the inheritance chain to find the path from the start model to the target model
32
30
  */
@@ -5,11 +5,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.extractDataModelsWithAllowRules = extractDataModelsWithAllowRules;
7
7
  exports.mergeBaseModels = mergeBaseModels;
8
- exports.getIdFields = getIdFields;
9
8
  exports.isAuthInvocation = isAuthInvocation;
10
9
  exports.isFutureInvocation = isFutureInvocation;
11
10
  exports.isCheckInvocation = isCheckInvocation;
12
- exports.getDataModelFieldReference = getDataModelFieldReference;
13
11
  exports.resolveImportUri = resolveImportUri;
14
12
  exports.resolveTransitiveImports = resolveTransitiveImports;
15
13
  exports.resolveImport = resolveImport;
@@ -18,8 +16,8 @@ exports.getAllDataModelsIncludingImports = getAllDataModelsIncludingImports;
18
16
  exports.isCollectionPredicate = isCollectionPredicate;
19
17
  exports.getContainingDataModel = getContainingDataModel;
20
18
  exports.findUpAst = findUpAst;
21
- exports.getAllLoadedDataModels = getAllLoadedDataModels;
22
- exports.getAllLoadedAndReachableDataModels = getAllLoadedAndReachableDataModels;
19
+ exports.getAllLoadedDataModelsAndTypeDefs = getAllLoadedDataModelsAndTypeDefs;
20
+ exports.getAllLoadedAndReachableDataModelsAndTypeDefs = getAllLoadedAndReachableDataModelsAndTypeDefs;
23
21
  exports.findUpInheritance = findUpInheritance;
24
22
  const ast_1 = require("@zenstackhq/language/ast");
25
23
  const sdk_1 = require("@zenstackhq/sdk");
@@ -103,28 +101,6 @@ function cloneAst(node, newContainer, buildReference) {
103
101
  }
104
102
  return clone;
105
103
  }
106
- function getIdFields(dataModel) {
107
- var _a;
108
- const fieldLevelId = (0, sdk_1.getModelFieldsWithBases)(dataModel).find((f) => f.attributes.some((attr) => attr.decl.$refText === '@id'));
109
- if (fieldLevelId) {
110
- return [fieldLevelId];
111
- }
112
- else {
113
- // get model level @@id attribute
114
- const modelIdAttr = dataModel.attributes.find((attr) => { var _a, _b; return ((_b = (_a = attr.decl) === null || _a === void 0 ? void 0 : _a.ref) === null || _b === void 0 ? void 0 : _b.name) === '@@id'; });
115
- if (modelIdAttr) {
116
- // get fields referenced in the attribute: @@id([field1, field2]])
117
- if (!(0, ast_1.isArrayExpr)((_a = modelIdAttr.args[0]) === null || _a === void 0 ? void 0 : _a.value)) {
118
- return [];
119
- }
120
- const argValue = modelIdAttr.args[0].value;
121
- return argValue.items
122
- .filter((expr) => (0, ast_1.isReferenceExpr)(expr) && !!getDataModelFieldReference(expr))
123
- .map((expr) => expr.target.ref);
124
- }
125
- }
126
- return [];
127
- }
128
104
  function isAuthInvocation(node) {
129
105
  var _a;
130
106
  return (0, ast_1.isInvocationExpr)(node) && ((_a = node.function.ref) === null || _a === void 0 ? void 0 : _a.name) === 'auth' && (0, sdk_1.isFromStdlib)(node.function.ref);
@@ -137,17 +113,6 @@ function isCheckInvocation(node) {
137
113
  var _a;
138
114
  return (0, ast_1.isInvocationExpr)(node) && ((_a = node.function.ref) === null || _a === void 0 ? void 0 : _a.name) === 'check' && (0, sdk_1.isFromStdlib)(node.function.ref);
139
115
  }
140
- function getDataModelFieldReference(expr) {
141
- if ((0, ast_1.isReferenceExpr)(expr) && (0, ast_1.isDataModelField)(expr.target.ref)) {
142
- return expr.target.ref;
143
- }
144
- else if ((0, ast_1.isMemberAccessExpr)(expr) && (0, ast_1.isDataModelField)(expr.member.ref)) {
145
- return expr.member.ref;
146
- }
147
- else {
148
- return undefined;
149
- }
150
- }
151
116
  function resolveImportUri(imp) {
152
117
  var _a;
153
118
  if (!imp.path)
@@ -238,20 +203,20 @@ function findUpAst(node, predicate) {
238
203
  return undefined;
239
204
  }
240
205
  /**
241
- * Gets all data models from all loaded documents
206
+ * Gets all data models and type defs from all loaded documents
242
207
  */
243
- function getAllLoadedDataModels(langiumDocuments) {
208
+ function getAllLoadedDataModelsAndTypeDefs(langiumDocuments) {
244
209
  return langiumDocuments.all
245
210
  .map((doc) => doc.parseResult.value)
246
- .flatMap((model) => model.declarations.filter(ast_1.isDataModel))
211
+ .flatMap((model) => model.declarations.filter((d) => (0, ast_1.isDataModel)(d) || (0, ast_1.isTypeDef)(d)))
247
212
  .toArray();
248
213
  }
249
214
  /**
250
- * Gets all data models from loaded and reachable documents
215
+ * Gets all data models and type defs from loaded and reachable documents
251
216
  */
252
- function getAllLoadedAndReachableDataModels(langiumDocuments, fromModel) {
217
+ function getAllLoadedAndReachableDataModelsAndTypeDefs(langiumDocuments, fromModel) {
253
218
  // get all data models from loaded documents
254
- const allDataModels = getAllLoadedDataModels(langiumDocuments);
219
+ const allDataModels = getAllLoadedDataModelsAndTypeDefs(langiumDocuments);
255
220
  if (fromModel) {
256
221
  // merge data models transitively reached from the current model
257
222
  const model = (0, langium_1.getContainerOfType)(fromModel, ast_1.isModel);