@bairock/lenz 0.0.15 → 0.0.16
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 +88 -4
- package/dist/cli/commands/generate.d.ts.map +1 -1
- package/dist/cli/commands/generate.js +34 -8
- package/dist/cli/commands/generate.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +0 -2
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/index.js +0 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/config/index.d.ts +4 -6
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +24 -3
- package/dist/config/index.js.map +1 -1
- package/dist/engine/CodeGenerator.d.ts +7 -28
- package/dist/engine/CodeGenerator.d.ts.map +1 -1
- package/dist/engine/CodeGenerator.js +25 -1969
- package/dist/engine/CodeGenerator.js.map +1 -1
- package/dist/engine/GraphQLParseHelpers.d.ts +25 -0
- package/dist/engine/GraphQLParseHelpers.d.ts.map +1 -0
- package/dist/engine/GraphQLParseHelpers.js +128 -0
- package/dist/engine/GraphQLParseHelpers.js.map +1 -0
- package/dist/engine/GraphQLParser.d.ts +23 -10
- package/dist/engine/GraphQLParser.d.ts.map +1 -1
- package/dist/engine/GraphQLParser.js +154 -240
- package/dist/engine/GraphQLParser.js.map +1 -1
- package/dist/engine/GraphQLRelationAnalyzer.d.ts +10 -0
- package/dist/engine/GraphQLRelationAnalyzer.d.ts.map +1 -0
- package/dist/engine/GraphQLRelationAnalyzer.js +117 -0
- package/dist/engine/GraphQLRelationAnalyzer.js.map +1 -0
- package/dist/engine/LenzEngine.d.ts +1 -1
- package/dist/engine/LenzEngine.d.ts.map +1 -1
- package/dist/engine/LenzEngine.js +33 -13
- package/dist/engine/LenzEngine.js.map +1 -1
- package/dist/engine/SchemaRelationValidator.d.ts +15 -0
- package/dist/engine/SchemaRelationValidator.d.ts.map +1 -0
- package/dist/engine/SchemaRelationValidator.js +133 -0
- package/dist/engine/SchemaRelationValidator.js.map +1 -0
- package/dist/engine/SchemaValidator.d.ts +11 -10
- package/dist/engine/SchemaValidator.d.ts.map +1 -1
- package/dist/engine/SchemaValidator.js +151 -169
- package/dist/engine/SchemaValidator.js.map +1 -1
- package/dist/engine/directives.d.ts +10 -0
- package/dist/engine/directives.d.ts.map +1 -1
- package/dist/engine/directives.js +152 -6
- package/dist/engine/directives.js.map +1 -1
- package/dist/engine/generators/ClientGenerator.d.ts +7 -0
- package/dist/engine/generators/ClientGenerator.d.ts.map +1 -0
- package/dist/engine/generators/ClientGenerator.js +386 -0
- package/dist/engine/generators/ClientGenerator.js.map +1 -0
- package/dist/engine/generators/DelegateGenerator.d.ts +9 -0
- package/dist/engine/generators/DelegateGenerator.d.ts.map +1 -0
- package/dist/engine/generators/DelegateGenerator.js +453 -0
- package/dist/engine/generators/DelegateGenerator.js.map +1 -0
- package/dist/engine/generators/DelegateHelpers.d.ts +7 -0
- package/dist/engine/generators/DelegateHelpers.d.ts.map +1 -0
- package/dist/engine/generators/DelegateHelpers.js +144 -0
- package/dist/engine/generators/DelegateHelpers.js.map +1 -0
- package/dist/engine/generators/DelegateRelations.d.ts +11 -0
- package/dist/engine/generators/DelegateRelations.d.ts.map +1 -0
- package/dist/engine/generators/DelegateRelations.js +794 -0
- package/dist/engine/generators/DelegateRelations.js.map +1 -0
- package/dist/engine/generators/DelegateTemplateBody.d.ts +8 -0
- package/dist/engine/generators/DelegateTemplateBody.d.ts.map +1 -0
- package/dist/engine/generators/DelegateTemplateBody.js +776 -0
- package/dist/engine/generators/DelegateTemplateBody.js.map +1 -0
- package/dist/engine/generators/GenerateRuntimeErrors.d.ts +2 -0
- package/dist/engine/generators/GenerateRuntimeErrors.d.ts.map +1 -0
- package/dist/engine/generators/GenerateRuntimeErrors.js +140 -0
- package/dist/engine/generators/GenerateRuntimeErrors.js.map +1 -0
- package/dist/engine/generators/GenerateRuntimeIndex.d.ts +2 -0
- package/dist/engine/generators/GenerateRuntimeIndex.d.ts.map +1 -0
- package/dist/engine/generators/GenerateRuntimeIndex.js +21 -0
- package/dist/engine/generators/GenerateRuntimeIndex.js.map +1 -0
- package/dist/engine/generators/GenerateRuntimeLogger.d.ts +2 -0
- package/dist/engine/generators/GenerateRuntimeLogger.d.ts.map +1 -0
- package/dist/engine/generators/GenerateRuntimeLogger.js +125 -0
- package/dist/engine/generators/GenerateRuntimeLogger.js.map +1 -0
- package/dist/engine/generators/GenerateRuntimePagination.d.ts +2 -0
- package/dist/engine/generators/GenerateRuntimePagination.d.ts.map +1 -0
- package/dist/engine/generators/GenerateRuntimePagination.js +159 -0
- package/dist/engine/generators/GenerateRuntimePagination.js.map +1 -0
- package/dist/engine/generators/GenerateRuntimeQuery.d.ts +2 -0
- package/dist/engine/generators/GenerateRuntimeQuery.d.ts.map +1 -0
- package/dist/engine/generators/GenerateRuntimeQuery.js +427 -0
- package/dist/engine/generators/GenerateRuntimeQuery.js.map +1 -0
- package/dist/engine/generators/GenerateRuntimeRelations.d.ts +2 -0
- package/dist/engine/generators/GenerateRuntimeRelations.d.ts.map +1 -0
- package/dist/engine/generators/GenerateRuntimeRelations.js +130 -0
- package/dist/engine/generators/GenerateRuntimeRelations.js.map +1 -0
- package/dist/engine/generators/RuntimeGenerator.d.ts +16 -0
- package/dist/engine/generators/RuntimeGenerator.d.ts.map +1 -0
- package/dist/engine/generators/RuntimeGenerator.js +16 -0
- package/dist/engine/generators/RuntimeGenerator.js.map +1 -0
- package/dist/engine/generators/TypeFilterTypes.d.ts +2 -0
- package/dist/engine/generators/TypeFilterTypes.d.ts.map +1 -0
- package/dist/engine/generators/TypeFilterTypes.js +220 -0
- package/dist/engine/generators/TypeFilterTypes.js.map +1 -0
- package/dist/engine/generators/TypeGenerator.d.ts +16 -0
- package/dist/engine/generators/TypeGenerator.d.ts.map +1 -0
- package/dist/engine/generators/TypeGenerator.js +493 -0
- package/dist/engine/generators/TypeGenerator.js.map +1 -0
- package/dist/engine/generators/helpers.d.ts +13 -0
- package/dist/engine/generators/helpers.d.ts.map +1 -0
- package/dist/engine/generators/helpers.js +316 -0
- package/dist/engine/generators/helpers.js.map +1 -0
- package/dist/errors/index.d.ts +3 -0
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +11 -1
- package/dist/errors/index.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -3
- package/dist/index.js.map +1 -1
- package/package.json +5 -5
|
@@ -1,14 +1,17 @@
|
|
|
1
|
-
import { SchemaValidationError, CircularDependencyError, DuplicateModelError, DuplicateFieldError, InvalidFieldTypeError, InvalidDirectiveError
|
|
2
|
-
import { isLenzDirective
|
|
1
|
+
import { SchemaValidationError, CircularDependencyError, DuplicateModelError, DuplicateFieldError, InvalidFieldTypeError, InvalidDirectiveError } from '../errors/index.js';
|
|
2
|
+
import { isLenzDirective } from './directives.js';
|
|
3
|
+
import { SchemaRelationValidator } from './SchemaRelationValidator.js';
|
|
3
4
|
export class SchemaValidator {
|
|
4
5
|
constructor(models, enums, relations) {
|
|
5
6
|
this.supportedScalarTypes = new Set([
|
|
6
7
|
'String', 'Int', 'Float', 'Boolean', 'ID',
|
|
7
|
-
'DateTime', 'Date', 'Json', 'ObjectId'
|
|
8
|
+
'DateTime', 'Date', 'Json', 'ObjectId',
|
|
9
|
+
'Bytes', 'BigInt'
|
|
8
10
|
]);
|
|
9
11
|
this.models = models;
|
|
10
12
|
this.enums = enums;
|
|
11
13
|
this.relations = relations;
|
|
14
|
+
this.relationValidator = new SchemaRelationValidator(this.models, this.relations);
|
|
12
15
|
}
|
|
13
16
|
/**
|
|
14
17
|
* Check if a field is a foreign key field (referenced by a relation)
|
|
@@ -17,10 +20,15 @@ export class SchemaValidator {
|
|
|
17
20
|
for (const model of this.models) {
|
|
18
21
|
for (const relation of model.relations) {
|
|
19
22
|
if (relation.foreignKey === fieldName) {
|
|
20
|
-
//
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
23
|
+
// oneToMany stores FK in the TARGET model (e.g., Post.userId)
|
|
24
|
+
if (relation.type === 'oneToMany') {
|
|
25
|
+
if (relation.target === modelName)
|
|
26
|
+
return true;
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
// manyToOne, oneToOne, manyToMany store FK in the SOURCE model
|
|
30
|
+
if (model.name === modelName)
|
|
31
|
+
return true;
|
|
24
32
|
}
|
|
25
33
|
}
|
|
26
34
|
}
|
|
@@ -42,15 +50,17 @@ export class SchemaValidator {
|
|
|
42
50
|
this.validateFieldTypes();
|
|
43
51
|
}
|
|
44
52
|
if (validateRelations) {
|
|
45
|
-
this.validateRelations();
|
|
46
|
-
this.validateRelationStrategies();
|
|
53
|
+
this.relationValidator.validateRelations();
|
|
54
|
+
this.relationValidator.validateRelationStrategies();
|
|
47
55
|
}
|
|
48
56
|
if (checkCircularDependencies) {
|
|
49
57
|
this.checkCircularDependencies();
|
|
50
58
|
}
|
|
51
59
|
// Additional validations
|
|
52
|
-
this.validateRequiredFields();
|
|
53
60
|
this.validateEnumValues();
|
|
61
|
+
this.validateEmbeddedModels();
|
|
62
|
+
this.validateIndexes();
|
|
63
|
+
this.validateDefaultValues();
|
|
54
64
|
}
|
|
55
65
|
/**
|
|
56
66
|
* Check for duplicate model names
|
|
@@ -89,6 +99,9 @@ export class SchemaValidator {
|
|
|
89
99
|
]);
|
|
90
100
|
for (const model of this.models) {
|
|
91
101
|
for (const field of model.fields) {
|
|
102
|
+
// Skip @ignore fields — they are excluded from generated code
|
|
103
|
+
if (field.directives.includes('ignore'))
|
|
104
|
+
continue;
|
|
92
105
|
// Check if type exists (scalar, model, or enum)
|
|
93
106
|
if (!validTypes.has(field.type)) {
|
|
94
107
|
throw new InvalidFieldTypeError(model.name, field.name, field.type, { validTypes: Array.from(validTypes) });
|
|
@@ -108,19 +121,29 @@ export class SchemaValidator {
|
|
|
108
121
|
validateDirectives() {
|
|
109
122
|
for (const model of this.models) {
|
|
110
123
|
// Check model-level directives
|
|
124
|
+
for (const directiveName of model.directives) {
|
|
125
|
+
if (isLenzDirective(directiveName)) {
|
|
126
|
+
if (directiveName !== 'model' && directiveName !== 'embedded' && directiveName !== 'modelMap' && directiveName !== 'fulltext') {
|
|
127
|
+
console.warn(`⚠️ Lenz directive '@${directiveName}' is not a model-level directive but used on model '${model.name}'.`);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
console.warn(`⚠️ Custom directive '@${directiveName}' detected on model '${model.name}'. ` +
|
|
132
|
+
'Lenz does not validate custom directives.');
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
// Check field-level directives (excluding model-level)
|
|
111
136
|
for (const directive of model.fields.flatMap(f => f.directives)) {
|
|
112
137
|
const directiveName = directive.replace(/^@/, '');
|
|
113
138
|
if (isLenzDirective(directiveName)) {
|
|
114
|
-
//
|
|
115
|
-
const
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
//
|
|
119
|
-
// а @id только на FIELD_DEFINITION
|
|
139
|
+
// Validate field-level directive location restrictions
|
|
140
|
+
const fieldLevelOnly = ['id', 'unique', 'index', 'default', 'hide', 'email', 'url', 'regex',
|
|
141
|
+
'map', 'createdAt', 'updatedAt', 'ignore', 'fulltext'];
|
|
142
|
+
if (fieldLevelOnly.includes(directiveName)) {
|
|
143
|
+
continue; // These are field-level only, already validated per-field
|
|
120
144
|
}
|
|
121
145
|
}
|
|
122
146
|
else {
|
|
123
|
-
// Пользовательская директива - выводим предупреждение
|
|
124
147
|
console.warn(`⚠️ Custom directive '@${directiveName}' detected in model '${model.name}'. ` +
|
|
125
148
|
'Lenz does not validate custom directives.');
|
|
126
149
|
}
|
|
@@ -136,10 +159,6 @@ export class SchemaValidator {
|
|
|
136
159
|
*/
|
|
137
160
|
validateFieldDirectives(modelName, field) {
|
|
138
161
|
const directives = field.directives;
|
|
139
|
-
// Check for conflicting directives
|
|
140
|
-
if (directives.includes('id') && directives.includes('unique')) {
|
|
141
|
-
throw new InvalidDirectiveError('unique', `field '${field.name}' in model '${modelName}'`, { reason: 'Cannot have both @id and @unique directives on the same field' });
|
|
142
|
-
}
|
|
143
162
|
// Validate @hide directive
|
|
144
163
|
if (directives.includes('hide')) {
|
|
145
164
|
if (directives.includes('id')) {
|
|
@@ -154,91 +173,6 @@ export class SchemaValidator {
|
|
|
154
173
|
// Note: @default directive arguments are now preserved and parsed via AST
|
|
155
174
|
// in GraphQLParser.getDefaultValue() method.
|
|
156
175
|
}
|
|
157
|
-
/**
|
|
158
|
-
* Validate relations between models
|
|
159
|
-
*/
|
|
160
|
-
validateRelations() {
|
|
161
|
-
for (const relation of this.relations) {
|
|
162
|
-
// Find source model that contains this relation
|
|
163
|
-
const sourceModel = this.models.find(m => m.relations.some(r => r.field === relation.field && r.target === relation.target));
|
|
164
|
-
const targetModel = this.models.find(m => m.name === relation.target);
|
|
165
|
-
if (!sourceModel) {
|
|
166
|
-
throw new RelationValidationError(`Source model for relation '${relation.field}' -> '${relation.target}' not found`, { relation });
|
|
167
|
-
}
|
|
168
|
-
if (!targetModel) {
|
|
169
|
-
throw new RelationValidationError(`Target model '${relation.target}' not found for relation`, { relation });
|
|
170
|
-
}
|
|
171
|
-
// Check if foreign key field exists for certain relation types
|
|
172
|
-
if (relation.foreignKey) {
|
|
173
|
-
// For oneToMany, foreign key must be in source (array of IDs)
|
|
174
|
-
// For manyToOne and oneToOne, foreign key must be in source (single ID)
|
|
175
|
-
let modelWithForeignKey;
|
|
176
|
-
let fieldInSource = sourceModel.fields.find(f => f.name === relation.foreignKey || f.name === `${relation.foreignKey}Id`);
|
|
177
|
-
// Always check source model for all relation types
|
|
178
|
-
if (fieldInSource) {
|
|
179
|
-
modelWithForeignKey = sourceModel;
|
|
180
|
-
}
|
|
181
|
-
if (!modelWithForeignKey) {
|
|
182
|
-
throw new RelationValidationError(`Foreign key field '${relation.foreignKey}' not found in source model '${sourceModel.name}'`, { relation });
|
|
183
|
-
}
|
|
184
|
-
// Validate field type
|
|
185
|
-
if (fieldInSource) {
|
|
186
|
-
if (relation.type === 'oneToMany') {
|
|
187
|
-
// For oneToMany: foreign key must be array of IDs in source
|
|
188
|
-
if (!fieldInSource.isArray || fieldInSource.type !== 'ID') {
|
|
189
|
-
throw new RelationValidationError(`Foreign key field '${relation.foreignKey}' in source model '${sourceModel.name}' must be an array of IDs (type: [ID!]!) for one-to-many relation`, { relation });
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
else if (relation.type === 'manyToOne' || relation.type === 'oneToOne') {
|
|
193
|
-
// For manyToOne and oneToOne: foreign key must be single ID in source
|
|
194
|
-
if (fieldInSource.isArray || fieldInSource.type !== 'ID') {
|
|
195
|
-
throw new RelationValidationError(`Foreign key field '${relation.foreignKey}' in source model '${sourceModel.name}' must be a single ID (type: ID!) for ${relation.type} relation`, { relation });
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
// manyToMany doesn't use foreign key field
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
// Check that relation field references correct ID field
|
|
202
|
-
const relationField = sourceModel.fields.find(f => f.name === relation.field);
|
|
203
|
-
if (!relationField) {
|
|
204
|
-
throw new RelationValidationError(`Relation field '${relation.field}' not found in source model '${sourceModel.name}'`, { relation });
|
|
205
|
-
}
|
|
206
|
-
// Get the referenced field name from the relation field's foreignKey property
|
|
207
|
-
const referencedFieldName = relationField.foreignKey;
|
|
208
|
-
if (referencedFieldName) {
|
|
209
|
-
// Find referenced field in source or target model
|
|
210
|
-
let modelWithRefField;
|
|
211
|
-
let referencedField;
|
|
212
|
-
// For all relation types, check source model only
|
|
213
|
-
referencedField = sourceModel.fields.find(f => f.name === referencedFieldName);
|
|
214
|
-
if (referencedField) {
|
|
215
|
-
modelWithRefField = sourceModel;
|
|
216
|
-
}
|
|
217
|
-
if (!referencedField || !modelWithRefField) {
|
|
218
|
-
throw new RelationValidationError(`Field '${referencedFieldName}' referenced by @relation(field: "...") not found in source model '${sourceModel.name}'`, { relation, referencedFieldName });
|
|
219
|
-
}
|
|
220
|
-
// Validate field type based on relation type
|
|
221
|
-
if (relation.type === 'manyToMany') {
|
|
222
|
-
// For many-to-many, referenced field should be an array of IDs
|
|
223
|
-
if (!referencedField.isArray || referencedField.type !== 'ID') {
|
|
224
|
-
throw new RelationValidationError(`Field '${referencedFieldName}' in model '${modelWithRefField.name}' must be an array of IDs (type: [ID!]!) for many-to-many relation`, { relation, referencedFieldName });
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
else if (relation.type === 'oneToMany') {
|
|
228
|
-
// For oneToMany: referenced field must be array of IDs in source model
|
|
229
|
-
if (!referencedField.isArray || referencedField.type !== 'ID') {
|
|
230
|
-
throw new RelationValidationError(`Field '${referencedFieldName}' in source model '${sourceModel.name}' must be an array of IDs (type: [ID!]!) for one-to-many relation`, { relation, referencedFieldName });
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
else {
|
|
234
|
-
// For manyToOne and oneToOne: referenced field must be single ID
|
|
235
|
-
if (referencedField.isArray || referencedField.type !== 'ID') {
|
|
236
|
-
throw new RelationValidationError(`Field '${referencedFieldName}' in model '${modelWithRefField.name}' must be a single ID (type: ID!) for ${relation.type} relation`, { relation, referencedFieldName });
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
176
|
/**
|
|
243
177
|
* Check for circular dependencies between models
|
|
244
178
|
*/
|
|
@@ -261,12 +195,16 @@ export class SchemaValidator {
|
|
|
261
195
|
path.push(node);
|
|
262
196
|
const neighbors = graph.get(node) || [];
|
|
263
197
|
for (const neighbor of neighbors) {
|
|
198
|
+
if (neighbor === node) {
|
|
199
|
+
cycles.push([node]); // self-reference cycle
|
|
200
|
+
continue;
|
|
201
|
+
}
|
|
264
202
|
if (!visited.has(neighbor)) {
|
|
265
203
|
dfs(neighbor, [...path]);
|
|
266
204
|
}
|
|
267
205
|
else if (recursionStack.has(neighbor)) {
|
|
268
206
|
// Found a cycle
|
|
269
|
-
const cycleStart = path.
|
|
207
|
+
const cycleStart = path.lastIndexOf(neighbor);
|
|
270
208
|
const cycle = path.slice(cycleStart);
|
|
271
209
|
cycles.push(cycle);
|
|
272
210
|
}
|
|
@@ -278,29 +216,15 @@ export class SchemaValidator {
|
|
|
278
216
|
dfs(node, []);
|
|
279
217
|
}
|
|
280
218
|
}
|
|
281
|
-
// Report cycles
|
|
219
|
+
// Report cycles — collect all unique cycles before throwing
|
|
282
220
|
if (cycles.length > 0) {
|
|
283
|
-
// Deduplicate cycles (same cycle may be found multiple times)
|
|
284
221
|
const uniqueCycles = cycles.map(cycle => cycle.join(' -> '))
|
|
285
222
|
.filter((value, index, self) => self.indexOf(value) === index);
|
|
286
|
-
|
|
287
|
-
throw new CircularDependencyError(
|
|
223
|
+
if (uniqueCycles.length === 1) {
|
|
224
|
+
throw new CircularDependencyError(uniqueCycles[0].split(' -> '), { cycle: uniqueCycles[0] });
|
|
288
225
|
}
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
/**
|
|
292
|
-
* Validate that required fields have values
|
|
293
|
-
*/
|
|
294
|
-
validateRequiredFields() {
|
|
295
|
-
for (const model of this.models) {
|
|
296
|
-
for (const field of model.fields) {
|
|
297
|
-
if (field.isRequired && !field.isId && !field.defaultValue) {
|
|
298
|
-
// Check if it's a relation field (relations can be required but handled differently)
|
|
299
|
-
if (!field.isRelation && !this.isForeignKeyField(model.name, field.name) &&
|
|
300
|
-
!field.directives.includes('createdAt') && !field.directives.includes('updatedAt')) {
|
|
301
|
-
console.warn(`⚠️ Required field '${field.name}' in model '${model.name}' has no default value`);
|
|
302
|
-
}
|
|
303
|
-
}
|
|
226
|
+
else {
|
|
227
|
+
throw new CircularDependencyError(uniqueCycles[0].split(' -> '), { cycle: uniqueCycles.join('; '), cycles: uniqueCycles });
|
|
304
228
|
}
|
|
305
229
|
}
|
|
306
230
|
}
|
|
@@ -323,55 +247,110 @@ export class SchemaValidator {
|
|
|
323
247
|
}
|
|
324
248
|
}
|
|
325
249
|
/**
|
|
326
|
-
* Validate
|
|
250
|
+
* Validate embedded model usage
|
|
327
251
|
*/
|
|
328
|
-
|
|
329
|
-
for (const
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
// Validate index boolean
|
|
336
|
-
if (typeof relation.index !== 'boolean') {
|
|
337
|
-
throw new SchemaValidationError(`Invalid index value '${relation.index}' for relation '${relation.field}' -> '${relation.target}'. ` +
|
|
338
|
-
`Must be a boolean.`);
|
|
252
|
+
validateEmbeddedModels() {
|
|
253
|
+
for (const model of this.models) {
|
|
254
|
+
if (!model.isEmbedded)
|
|
255
|
+
continue;
|
|
256
|
+
// Check embedded model has at least one field
|
|
257
|
+
if (model.fields.length === 0) {
|
|
258
|
+
console.warn(`⚠️ Embedded model '${model.name}' has no fields`);
|
|
339
259
|
}
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
260
|
+
}
|
|
261
|
+
// Verify embedded model references don't have @relation directive
|
|
262
|
+
for (const model of this.models) {
|
|
263
|
+
if (model.isEmbedded)
|
|
264
|
+
continue;
|
|
265
|
+
for (const field of model.fields) {
|
|
266
|
+
if (field.isRelation) {
|
|
267
|
+
const targetModel = this.models.find(m => m.name === field.type);
|
|
268
|
+
if (targetModel?.isEmbedded && field.directives.includes('relation')) {
|
|
269
|
+
console.warn(`⚠️ Field '${field.name}' in model '${model.name}' references embedded model ` +
|
|
270
|
+
`'${field.type}' with @relation directive. Embedded models are nested documents, not separate collections.`);
|
|
271
|
+
}
|
|
272
|
+
}
|
|
344
273
|
}
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Validate model indexes (compound directive fields must exist)
|
|
278
|
+
*/
|
|
279
|
+
validateIndexes() {
|
|
280
|
+
for (const model of this.models) {
|
|
281
|
+
if (model.isEmbedded)
|
|
282
|
+
continue;
|
|
283
|
+
for (const index of model.indexes) {
|
|
284
|
+
// Check for duplicate field names in compound index
|
|
285
|
+
if (index.fields.length !== new Set(index.fields).size) {
|
|
286
|
+
const dupes = index.fields.filter((f, i) => index.fields.indexOf(f) !== i);
|
|
287
|
+
throw new SchemaValidationError(`Compound index on model '${model.name}' contains duplicate fields: ${[...new Set(dupes)].join(', ')}`);
|
|
288
|
+
}
|
|
289
|
+
if (index.fields.length > 1) {
|
|
290
|
+
// Compound index — verify all referenced fields exist
|
|
291
|
+
for (const fieldName of index.fields) {
|
|
292
|
+
const fieldExists = model.fields.some(f => f.name === fieldName);
|
|
293
|
+
if (!fieldExists) {
|
|
294
|
+
throw new SchemaValidationError(`Compound index on model '${model.name}' references field '${fieldName}' which does not exist. ` +
|
|
295
|
+
`Available fields: ${model.fields.map(f => f.name).join(', ')}`);
|
|
296
|
+
}
|
|
353
297
|
}
|
|
354
298
|
}
|
|
355
299
|
}
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
/**
|
|
303
|
+
* Validate @default value types match the field type
|
|
304
|
+
*/
|
|
305
|
+
validateDefaultValues() {
|
|
306
|
+
const typeMap = {
|
|
307
|
+
String: 'string',
|
|
308
|
+
ID: 'string',
|
|
309
|
+
Int: 'number',
|
|
310
|
+
Float: 'number',
|
|
311
|
+
Boolean: 'boolean',
|
|
312
|
+
DateTime: 'string',
|
|
313
|
+
Date: 'string',
|
|
314
|
+
Json: 'any',
|
|
315
|
+
Bytes: 'object',
|
|
316
|
+
ObjectId: 'string',
|
|
317
|
+
BigInt: 'bigint'
|
|
318
|
+
};
|
|
319
|
+
const stringGenerators = new Set(['uuid', 'cuid', 'cuid2', 'ulid']);
|
|
320
|
+
const allGenerators = new Set(['uuid', 'now', 'cuid', 'cuid2', 'ulid']);
|
|
321
|
+
for (const model of this.models) {
|
|
322
|
+
for (const field of model.fields) {
|
|
323
|
+
if (field.defaultGenerator) {
|
|
324
|
+
// Validate generator is known
|
|
325
|
+
if (!allGenerators.has(field.defaultGenerator)) {
|
|
326
|
+
console.warn(`⚠️ Unknown default generator '@default(${field.defaultGenerator}())' on field '${field.name}' in model '${model.name}'. ` +
|
|
327
|
+
`Supported generators: ${[...allGenerators].join(', ')}`);
|
|
328
|
+
}
|
|
329
|
+
// Validate generator compatibility
|
|
330
|
+
if (stringGenerators.has(field.defaultGenerator) && field.type !== 'String' && field.type !== 'ID') {
|
|
331
|
+
console.warn(`⚠️ @default(${field.defaultGenerator}()) on field '${field.name}' in model '${model.name}' ` +
|
|
332
|
+
`produces a string, but the field type is '${field.type}'.`);
|
|
333
|
+
}
|
|
334
|
+
if (field.defaultGenerator === 'now' && field.type !== 'DateTime' && field.type !== 'Date') {
|
|
335
|
+
console.warn(`⚠️ @default(now()) on field '${field.name}' in model '${model.name}' ` +
|
|
336
|
+
`produces a Date, but the field type is '${field.type}'.`);
|
|
363
337
|
}
|
|
364
|
-
// lookup is now implemented for manyToMany with foreign key (array of IDs)
|
|
365
|
-
// and for join collection via RelationResolver
|
|
366
338
|
}
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
339
|
+
if (field.defaultValue !== undefined && field.defaultValue !== null && !field.defaultGenerator) {
|
|
340
|
+
const expectedType = typeMap[field.type];
|
|
341
|
+
if (expectedType && expectedType !== 'any') {
|
|
342
|
+
const valueType = typeof field.defaultValue;
|
|
343
|
+
if (valueType !== expectedType) {
|
|
344
|
+
const strictTypes = ['string', 'number', 'boolean'];
|
|
345
|
+
const msg = `@default(value: ${JSON.stringify(field.defaultValue)}) on field '${field.name}' ` +
|
|
346
|
+
`in model '${model.name}' has type '${valueType}', but field type '${field.type}' expects '${expectedType}'.`;
|
|
347
|
+
if (strictTypes.includes(expectedType)) {
|
|
348
|
+
throw new SchemaValidationError(msg);
|
|
349
|
+
}
|
|
350
|
+
console.warn(`⚠️ ${msg}`);
|
|
351
|
+
}
|
|
352
|
+
}
|
|
371
353
|
}
|
|
372
|
-
// Warn about manual array synchronization requirement
|
|
373
|
-
console.warn(`⚠️ Lookup strategy selected for relation '${relation.field}' -> '${relation.target}'. ` +
|
|
374
|
-
`Note: You must manually synchronize ID arrays (e.g., ${relation.foreignKey}) when creating/updating/deleting related documents.`);
|
|
375
354
|
}
|
|
376
355
|
}
|
|
377
356
|
}
|
|
@@ -381,16 +360,19 @@ export class SchemaValidator {
|
|
|
381
360
|
getWarnings() {
|
|
382
361
|
const warnings = [];
|
|
383
362
|
for (const model of this.models) {
|
|
363
|
+
if (model.isEmbedded)
|
|
364
|
+
continue;
|
|
384
365
|
// Warn about models without @id field
|
|
385
366
|
const hasIdField = model.fields.some(f => f.isId);
|
|
386
367
|
if (!hasIdField) {
|
|
387
368
|
warnings.push(`Model '${model.name}' has no @id field`);
|
|
388
369
|
}
|
|
389
|
-
// Warn about required fields without defaults
|
|
370
|
+
// Warn about required fields without defaults (skip @ignore, relation, FK, and timestamp fields)
|
|
390
371
|
for (const field of model.fields) {
|
|
391
|
-
if (field.isRequired && !field.isId &&
|
|
372
|
+
if (field.isRequired && !field.isId && field.defaultValue === undefined && !field.isRelation &&
|
|
392
373
|
!this.isForeignKeyField(model.name, field.name) &&
|
|
393
|
-
!field.directives.includes('createdAt') && !field.directives.includes('updatedAt')
|
|
374
|
+
!field.directives.includes('createdAt') && !field.directives.includes('updatedAt') &&
|
|
375
|
+
!field.directives.includes('ignore')) {
|
|
394
376
|
warnings.push(`Required field '${field.name}' in model '${model.name}' has no default value`);
|
|
395
377
|
}
|
|
396
378
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaValidator.js","sourceRoot":"","sources":["../../src/engine/SchemaValidator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SchemaValidator.js","sourceRoot":"","sources":["../../src/engine/SchemaValidator.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,16 @@ export declare const createdAtDirective: GraphQLDirective;
|
|
|
9
9
|
export declare const updatedAtDirective: GraphQLDirective;
|
|
10
10
|
export declare const embeddedDirective: GraphQLDirective;
|
|
11
11
|
export declare const hideDirective: GraphQLDirective;
|
|
12
|
+
export declare const mapDirective: GraphQLDirective;
|
|
13
|
+
export declare const modelMapDirective: GraphQLDirective;
|
|
14
|
+
export declare const ignoreDirective: GraphQLDirective;
|
|
15
|
+
export declare const compoundUniqueDirective: GraphQLDirective;
|
|
16
|
+
export declare const compoundIndexDirective: GraphQLDirective;
|
|
17
|
+
export declare const compoundIdDirective: GraphQLDirective;
|
|
18
|
+
export declare const fulltextDirective: GraphQLDirective;
|
|
19
|
+
export declare const emailDirective: GraphQLDirective;
|
|
20
|
+
export declare const urlDirective: GraphQLDirective;
|
|
21
|
+
export declare const regexDirective: GraphQLDirective;
|
|
12
22
|
export declare const lenzDirectives: GraphQLDirective[];
|
|
13
23
|
export declare function isLenzDirective(directiveName: string): boolean;
|
|
14
24
|
export declare function getDirectiveDefinition(directiveName: string): GraphQLDirective | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directives.d.ts","sourceRoot":"","sources":["../../src/engine/directives.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"directives.d.ts","sourceRoot":"","sources":["../../src/engine/directives.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAiF,MAAM,SAAS,CAAC;AAG1H,eAAO,MAAM,cAAc,kBAIzB,CAAC;AAEH,eAAO,MAAM,WAAW,kBActB,CAAC;AAEH,eAAO,MAAM,eAAe,kBAc1B,CAAC;AAEH,eAAO,MAAM,cAAc,kBAIzB,CAAC;AAEH,eAAO,MAAM,gBAAgB,kBAc3B,CAAC;AAEH,eAAO,MAAM,iBAAiB,kBA8B5B,CAAC;AAEH,eAAO,MAAM,kBAAkB,kBAI7B,CAAC;AAEH,eAAO,MAAM,kBAAkB,kBAI7B,CAAC;AAEH,eAAO,MAAM,iBAAiB,kBAI5B,CAAC;AAEH,eAAO,MAAM,aAAa,kBAIxB,CAAC;AAEH,eAAO,MAAM,YAAY,kBAUvB,CAAC;AAEH,eAAO,MAAM,iBAAiB,kBAU5B,CAAC;AAEH,eAAO,MAAM,eAAe,kBAI1B,CAAC;AAEH,eAAO,MAAM,uBAAuB,kBAclC,CAAC;AAEH,eAAO,MAAM,sBAAsB,kBAcjC,CAAC;AAEH,eAAO,MAAM,mBAAmB,kBAc9B,CAAC;AAEH,eAAO,MAAM,iBAAiB,kBAU5B,CAAC;AAEH,eAAO,MAAM,cAAc,kBAIzB,CAAC;AAEH,eAAO,MAAM,YAAY,kBAIvB,CAAC;AAEH,eAAO,MAAM,cAAc,kBAUzB,CAAC;AAGH,eAAO,MAAM,cAAc,oBAqB1B,CAAC;AAGF,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAE9D;AAGD,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAE1F"}
|