@bairock/lenz 0.0.1
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/LICENSE +21 -0
- package/README.md +224 -0
- package/dist/cli/commands/generate.d.ts +3 -0
- package/dist/cli/commands/generate.d.ts.map +1 -0
- package/dist/cli/commands/generate.js +110 -0
- package/dist/cli/commands/generate.js.map +1 -0
- package/dist/cli/commands/init.d.ts +3 -0
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/init.js +145 -0
- package/dist/cli/commands/init.js.map +1 -0
- package/dist/cli/commands/studio.d.ts +3 -0
- package/dist/cli/commands/studio.d.ts.map +1 -0
- package/dist/cli/commands/studio.js +32 -0
- package/dist/cli/commands/studio.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +32 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/config/index.d.ts +47 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +42 -0
- package/dist/config/index.js.map +1 -0
- package/dist/engine/CodeGenerator.d.ts +37 -0
- package/dist/engine/CodeGenerator.d.ts.map +1 -0
- package/dist/engine/CodeGenerator.js +1604 -0
- package/dist/engine/CodeGenerator.js.map +1 -0
- package/dist/engine/GraphQLParser.d.ts +74 -0
- package/dist/engine/GraphQLParser.d.ts.map +1 -0
- package/dist/engine/GraphQLParser.js +269 -0
- package/dist/engine/GraphQLParser.js.map +1 -0
- package/dist/engine/LenzEngine.d.ts +23 -0
- package/dist/engine/LenzEngine.d.ts.map +1 -0
- package/dist/engine/LenzEngine.js +112 -0
- package/dist/engine/LenzEngine.js.map +1 -0
- package/dist/engine/SchemaValidator.d.ts +63 -0
- package/dist/engine/SchemaValidator.d.ts.map +1 -0
- package/dist/engine/SchemaValidator.js +268 -0
- package/dist/engine/SchemaValidator.js.map +1 -0
- package/dist/engine/directives.d.ts +15 -0
- package/dist/engine/directives.d.ts.map +1 -0
- package/dist/engine/directives.js +91 -0
- package/dist/engine/directives.js.map +1 -0
- package/dist/engine/index.d.ts +4 -0
- package/dist/engine/index.d.ts.map +1 -0
- package/dist/engine/index.js +10 -0
- package/dist/engine/index.js.map +1 -0
- package/dist/errors/index.d.ts +46 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +133 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +36 -0
- package/dist/index.js.map +1 -0
- package/package.json +70 -0
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SchemaValidator = void 0;
|
|
4
|
+
const errors_1 = require("../errors");
|
|
5
|
+
const directives_1 = require("./directives");
|
|
6
|
+
class SchemaValidator {
|
|
7
|
+
constructor(models, enums, relations) {
|
|
8
|
+
this.supportedScalarTypes = new Set([
|
|
9
|
+
'String', 'Int', 'Float', 'Boolean', 'ID',
|
|
10
|
+
'DateTime', 'Date', 'Json', 'ObjectId'
|
|
11
|
+
]);
|
|
12
|
+
this.models = models;
|
|
13
|
+
this.enums = enums;
|
|
14
|
+
this.relations = relations;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Validate the entire schema
|
|
18
|
+
*/
|
|
19
|
+
validate(options = {}) {
|
|
20
|
+
const { checkCircularDependencies = true, validateFieldTypes = true, validateRelations = true, validateDirectives = true } = options;
|
|
21
|
+
// Basic validation
|
|
22
|
+
this.validateModelNames();
|
|
23
|
+
this.validateFieldNames();
|
|
24
|
+
if (validateDirectives) {
|
|
25
|
+
this.validateDirectives();
|
|
26
|
+
}
|
|
27
|
+
if (validateFieldTypes) {
|
|
28
|
+
this.validateFieldTypes();
|
|
29
|
+
}
|
|
30
|
+
if (validateRelations) {
|
|
31
|
+
this.validateRelations();
|
|
32
|
+
}
|
|
33
|
+
if (checkCircularDependencies) {
|
|
34
|
+
this.checkCircularDependencies();
|
|
35
|
+
}
|
|
36
|
+
// Additional validations
|
|
37
|
+
this.validateRequiredFields();
|
|
38
|
+
this.validateEnumValues();
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Check for duplicate model names
|
|
42
|
+
*/
|
|
43
|
+
validateModelNames() {
|
|
44
|
+
const seen = new Set();
|
|
45
|
+
for (const model of this.models) {
|
|
46
|
+
if (seen.has(model.name)) {
|
|
47
|
+
throw new errors_1.DuplicateModelError(model.name);
|
|
48
|
+
}
|
|
49
|
+
seen.add(model.name);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Check for duplicate field names within each model
|
|
54
|
+
*/
|
|
55
|
+
validateFieldNames() {
|
|
56
|
+
for (const model of this.models) {
|
|
57
|
+
const seen = new Set();
|
|
58
|
+
for (const field of model.fields) {
|
|
59
|
+
if (seen.has(field.name)) {
|
|
60
|
+
throw new errors_1.DuplicateFieldError(model.name, field.name);
|
|
61
|
+
}
|
|
62
|
+
seen.add(field.name);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Validate field types
|
|
68
|
+
*/
|
|
69
|
+
validateFieldTypes() {
|
|
70
|
+
const validTypes = new Set([
|
|
71
|
+
...this.supportedScalarTypes,
|
|
72
|
+
...this.models.map(m => m.name),
|
|
73
|
+
...this.enums.map(e => e.name)
|
|
74
|
+
]);
|
|
75
|
+
for (const model of this.models) {
|
|
76
|
+
for (const field of model.fields) {
|
|
77
|
+
// Check if type exists (scalar, model, or enum)
|
|
78
|
+
if (!validTypes.has(field.type)) {
|
|
79
|
+
throw new errors_1.InvalidFieldTypeError(model.name, field.name, field.type, { validTypes: Array.from(validTypes) });
|
|
80
|
+
}
|
|
81
|
+
// Additional type-specific validations
|
|
82
|
+
if (field.type === 'ID' && !field.isId) {
|
|
83
|
+
// ID fields should typically have @id directive
|
|
84
|
+
// This is a warning, not an error
|
|
85
|
+
console.warn(`⚠️ Field '${field.name}' in model '${model.name}' has type ID but no @id directive`);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Validate directives
|
|
92
|
+
*/
|
|
93
|
+
validateDirectives() {
|
|
94
|
+
for (const model of this.models) {
|
|
95
|
+
// Check model-level directives
|
|
96
|
+
for (const directive of model.fields.flatMap(f => f.directives)) {
|
|
97
|
+
const directiveName = directive.replace(/^@/, '');
|
|
98
|
+
if ((0, directives_1.isLenzDirective)(directiveName)) {
|
|
99
|
+
// Директива Lenz - проверяем соответствие ожидаемым местам применения
|
|
100
|
+
const directiveDef = (0, directives_1.getDirectiveDefinition)(directiveName);
|
|
101
|
+
if (directiveDef) {
|
|
102
|
+
// TODO: В будущем можно добавить проверку мест применения (DirectiveLocation)
|
|
103
|
+
// Например, проверить что @model применяется только на уровне OBJECT
|
|
104
|
+
// а @id только на FIELD_DEFINITION
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
// Пользовательская директива - выводим предупреждение
|
|
109
|
+
console.warn(`⚠️ Custom directive '@${directiveName}' detected in model '${model.name}'. ` +
|
|
110
|
+
'Lenz does not validate custom directives.');
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
// Field-level directive validation
|
|
114
|
+
for (const field of model.fields) {
|
|
115
|
+
this.validateFieldDirectives(model.name, field);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Validate directives on a specific field
|
|
121
|
+
*/
|
|
122
|
+
validateFieldDirectives(modelName, field) {
|
|
123
|
+
const directives = field.directives;
|
|
124
|
+
// Check for conflicting directives
|
|
125
|
+
if (directives.includes('id') && directives.includes('unique')) {
|
|
126
|
+
throw new errors_1.InvalidDirectiveError('unique', `field '${field.name}' in model '${modelName}'`, { reason: 'Cannot have both @id and @unique directives on the same field' });
|
|
127
|
+
}
|
|
128
|
+
// Validate @hide directive
|
|
129
|
+
if (directives.includes('hide')) {
|
|
130
|
+
if (directives.includes('id')) {
|
|
131
|
+
throw new errors_1.InvalidDirectiveError('hide', `field '${field.name}' in model '${modelName}'`, { reason: 'Cannot use @hide directive on @id field' });
|
|
132
|
+
}
|
|
133
|
+
if (field.isRelation) {
|
|
134
|
+
throw new errors_1.InvalidDirectiveError('hide', `field '${field.name}' in model '${modelName}'`, { reason: 'Cannot use @hide directive on relation fields' });
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
// Note: @relation directive validation is skipped because relation detection
|
|
138
|
+
// depends on model parsing order. Relations are validated separately.
|
|
139
|
+
// Note: @default directive arguments are now preserved and parsed via AST
|
|
140
|
+
// in GraphQLParser.getDefaultValue() method.
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Validate relations between models
|
|
144
|
+
*/
|
|
145
|
+
validateRelations() {
|
|
146
|
+
for (const relation of this.relations) {
|
|
147
|
+
const sourceModel = this.models.find(m => m.name === relation.field);
|
|
148
|
+
const targetModel = this.models.find(m => m.name === relation.target);
|
|
149
|
+
if (!sourceModel) {
|
|
150
|
+
throw new errors_1.RelationValidationError(`Source model '${relation.field}' not found for relation`, { relation });
|
|
151
|
+
}
|
|
152
|
+
if (!targetModel) {
|
|
153
|
+
throw new errors_1.RelationValidationError(`Target model '${relation.target}' not found for relation`, { relation });
|
|
154
|
+
}
|
|
155
|
+
// Check if foreign key field exists for certain relation types
|
|
156
|
+
if (relation.foreignKey) {
|
|
157
|
+
const hasForeignKey = targetModel.fields.some(f => f.name === relation.foreignKey || f.name === `${relation.foreignKey}Id`);
|
|
158
|
+
if (!hasForeignKey) {
|
|
159
|
+
throw new errors_1.RelationValidationError(`Foreign key field '${relation.foreignKey}' not found in target model '${relation.target}'`, { relation });
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Check for circular dependencies between models
|
|
166
|
+
*/
|
|
167
|
+
checkCircularDependencies() {
|
|
168
|
+
const graph = new Map();
|
|
169
|
+
// Build dependency graph
|
|
170
|
+
for (const model of this.models) {
|
|
171
|
+
const dependencies = model.fields
|
|
172
|
+
.filter(field => field.isRelation)
|
|
173
|
+
.map(field => field.type);
|
|
174
|
+
graph.set(model.name, dependencies);
|
|
175
|
+
}
|
|
176
|
+
// Detect cycles using DFS
|
|
177
|
+
const visited = new Set();
|
|
178
|
+
const recursionStack = new Set();
|
|
179
|
+
const cycles = [];
|
|
180
|
+
const dfs = (node, path) => {
|
|
181
|
+
visited.add(node);
|
|
182
|
+
recursionStack.add(node);
|
|
183
|
+
path.push(node);
|
|
184
|
+
const neighbors = graph.get(node) || [];
|
|
185
|
+
for (const neighbor of neighbors) {
|
|
186
|
+
if (!visited.has(neighbor)) {
|
|
187
|
+
dfs(neighbor, [...path]);
|
|
188
|
+
}
|
|
189
|
+
else if (recursionStack.has(neighbor)) {
|
|
190
|
+
// Found a cycle
|
|
191
|
+
const cycleStart = path.indexOf(neighbor);
|
|
192
|
+
const cycle = path.slice(cycleStart);
|
|
193
|
+
cycles.push(cycle);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
recursionStack.delete(node);
|
|
197
|
+
};
|
|
198
|
+
for (const node of graph.keys()) {
|
|
199
|
+
if (!visited.has(node)) {
|
|
200
|
+
dfs(node, []);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
// Report cycles
|
|
204
|
+
if (cycles.length > 0) {
|
|
205
|
+
// Deduplicate cycles (same cycle may be found multiple times)
|
|
206
|
+
const uniqueCycles = cycles.map(cycle => cycle.join(' -> '))
|
|
207
|
+
.filter((value, index, self) => self.indexOf(value) === index);
|
|
208
|
+
for (const cycle of uniqueCycles) {
|
|
209
|
+
throw new errors_1.CircularDependencyError(cycle.split(' -> '), { cycle });
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Validate that required fields have values
|
|
215
|
+
*/
|
|
216
|
+
validateRequiredFields() {
|
|
217
|
+
for (const model of this.models) {
|
|
218
|
+
for (const field of model.fields) {
|
|
219
|
+
if (field.isRequired && !field.isId && !field.defaultValue) {
|
|
220
|
+
// Check if it's a relation field (relations can be required but handled differently)
|
|
221
|
+
if (!field.isRelation) {
|
|
222
|
+
console.warn(`⚠️ Required field '${field.name}' in model '${model.name}' has no default value`);
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Validate enum values
|
|
230
|
+
*/
|
|
231
|
+
validateEnumValues() {
|
|
232
|
+
for (const enumDef of this.enums) {
|
|
233
|
+
if (enumDef.values.length === 0) {
|
|
234
|
+
throw new errors_1.SchemaValidationError(`Enum '${enumDef.name}' must have at least one value`);
|
|
235
|
+
}
|
|
236
|
+
// Check for duplicate enum values
|
|
237
|
+
const seen = new Set();
|
|
238
|
+
for (const value of enumDef.values) {
|
|
239
|
+
if (seen.has(value)) {
|
|
240
|
+
throw new errors_1.SchemaValidationError(`Duplicate value '${value}' in enum '${enumDef.name}'`);
|
|
241
|
+
}
|
|
242
|
+
seen.add(value);
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* Get validation warnings (non-critical issues)
|
|
248
|
+
*/
|
|
249
|
+
getWarnings() {
|
|
250
|
+
const warnings = [];
|
|
251
|
+
for (const model of this.models) {
|
|
252
|
+
// Warn about models without @id field
|
|
253
|
+
const hasIdField = model.fields.some(f => f.isId);
|
|
254
|
+
if (!hasIdField) {
|
|
255
|
+
warnings.push(`Model '${model.name}' has no @id field`);
|
|
256
|
+
}
|
|
257
|
+
// Warn about required fields without defaults
|
|
258
|
+
for (const field of model.fields) {
|
|
259
|
+
if (field.isRequired && !field.isId && !field.defaultValue && !field.isRelation) {
|
|
260
|
+
warnings.push(`Required field '${field.name}' in model '${model.name}' has no default value`);
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
return warnings;
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
exports.SchemaValidator = SchemaValidator;
|
|
268
|
+
//# sourceMappingURL=SchemaValidator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SchemaValidator.js","sourceRoot":"","sources":["../../src/engine/SchemaValidator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { GraphQLDirective } from 'graphql';
|
|
2
|
+
export declare const modelDirective: GraphQLDirective;
|
|
3
|
+
export declare const idDirective: GraphQLDirective;
|
|
4
|
+
export declare const uniqueDirective: GraphQLDirective;
|
|
5
|
+
export declare const indexDirective: GraphQLDirective;
|
|
6
|
+
export declare const defaultDirective: GraphQLDirective;
|
|
7
|
+
export declare const relationDirective: GraphQLDirective;
|
|
8
|
+
export declare const createdAtDirective: GraphQLDirective;
|
|
9
|
+
export declare const updatedAtDirective: GraphQLDirective;
|
|
10
|
+
export declare const embeddedDirective: GraphQLDirective;
|
|
11
|
+
export declare const hideDirective: GraphQLDirective;
|
|
12
|
+
export declare const lenzDirectives: GraphQLDirective[];
|
|
13
|
+
export declare function isLenzDirective(directiveName: string): boolean;
|
|
14
|
+
export declare function getDirectiveDefinition(directiveName: string): GraphQLDirective | undefined;
|
|
15
|
+
//# sourceMappingURL=directives.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directives.d.ts","sourceRoot":"","sources":["../../src/engine/directives.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAoD,MAAM,SAAS,CAAC;AAG7F,eAAO,MAAM,cAAc,kBAIzB,CAAC;AAEH,eAAO,MAAM,WAAW,kBAItB,CAAC;AAEH,eAAO,MAAM,eAAe,kBAI1B,CAAC;AAEH,eAAO,MAAM,cAAc,kBAIzB,CAAC;AAEH,eAAO,MAAM,gBAAgB,kBAU3B,CAAC;AAEH,eAAO,MAAM,iBAAiB,kBAU5B,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;AAGH,eAAO,MAAM,cAAc,oBAW1B,CAAC;AAGF,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAE9D;AAGD,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAE1F"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.lenzDirectives = exports.hideDirective = exports.embeddedDirective = exports.updatedAtDirective = exports.createdAtDirective = exports.relationDirective = exports.defaultDirective = exports.indexDirective = exports.uniqueDirective = exports.idDirective = exports.modelDirective = void 0;
|
|
4
|
+
exports.isLenzDirective = isLenzDirective;
|
|
5
|
+
exports.getDirectiveDefinition = getDirectiveDefinition;
|
|
6
|
+
const graphql_1 = require("graphql");
|
|
7
|
+
// Определение всех директив Lenz ORM
|
|
8
|
+
exports.modelDirective = new graphql_1.GraphQLDirective({
|
|
9
|
+
name: 'model',
|
|
10
|
+
locations: [graphql_1.DirectiveLocation.OBJECT],
|
|
11
|
+
description: 'Marks a GraphQL type as a database model'
|
|
12
|
+
});
|
|
13
|
+
exports.idDirective = new graphql_1.GraphQLDirective({
|
|
14
|
+
name: 'id',
|
|
15
|
+
locations: [graphql_1.DirectiveLocation.FIELD_DEFINITION],
|
|
16
|
+
description: 'Marks a field as primary key (auto-generated ObjectId)'
|
|
17
|
+
});
|
|
18
|
+
exports.uniqueDirective = new graphql_1.GraphQLDirective({
|
|
19
|
+
name: 'unique',
|
|
20
|
+
locations: [graphql_1.DirectiveLocation.FIELD_DEFINITION],
|
|
21
|
+
description: 'Creates a unique index on the field'
|
|
22
|
+
});
|
|
23
|
+
exports.indexDirective = new graphql_1.GraphQLDirective({
|
|
24
|
+
name: 'index',
|
|
25
|
+
locations: [graphql_1.DirectiveLocation.FIELD_DEFINITION],
|
|
26
|
+
description: 'Creates a regular index on the field'
|
|
27
|
+
});
|
|
28
|
+
exports.defaultDirective = new graphql_1.GraphQLDirective({
|
|
29
|
+
name: 'default',
|
|
30
|
+
locations: [graphql_1.DirectiveLocation.FIELD_DEFINITION],
|
|
31
|
+
args: {
|
|
32
|
+
value: {
|
|
33
|
+
type: new graphql_1.GraphQLNonNull(graphql_1.GraphQLString),
|
|
34
|
+
description: 'Default value for the field'
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
description: 'Sets a default value for a field'
|
|
38
|
+
});
|
|
39
|
+
exports.relationDirective = new graphql_1.GraphQLDirective({
|
|
40
|
+
name: 'relation',
|
|
41
|
+
locations: [graphql_1.DirectiveLocation.FIELD_DEFINITION],
|
|
42
|
+
args: {
|
|
43
|
+
field: {
|
|
44
|
+
type: new graphql_1.GraphQLNonNull(graphql_1.GraphQLString),
|
|
45
|
+
description: 'The field that stores the foreign key'
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
description: 'Defines a relationship between models'
|
|
49
|
+
});
|
|
50
|
+
exports.createdAtDirective = new graphql_1.GraphQLDirective({
|
|
51
|
+
name: 'createdAt',
|
|
52
|
+
locations: [graphql_1.DirectiveLocation.FIELD_DEFINITION],
|
|
53
|
+
description: 'Automatically sets timestamp on creation'
|
|
54
|
+
});
|
|
55
|
+
exports.updatedAtDirective = new graphql_1.GraphQLDirective({
|
|
56
|
+
name: 'updatedAt',
|
|
57
|
+
locations: [graphql_1.DirectiveLocation.FIELD_DEFINITION],
|
|
58
|
+
description: 'Automatically updates timestamp on modification'
|
|
59
|
+
});
|
|
60
|
+
exports.embeddedDirective = new graphql_1.GraphQLDirective({
|
|
61
|
+
name: 'embedded',
|
|
62
|
+
locations: [graphql_1.DirectiveLocation.OBJECT],
|
|
63
|
+
description: 'Marks a type as embedded document (not stored in separate collection)'
|
|
64
|
+
});
|
|
65
|
+
exports.hideDirective = new graphql_1.GraphQLDirective({
|
|
66
|
+
name: 'hide',
|
|
67
|
+
locations: [graphql_1.DirectiveLocation.FIELD_DEFINITION],
|
|
68
|
+
description: 'Excludes field from query results by default. Can be explicitly selected via select option.'
|
|
69
|
+
});
|
|
70
|
+
// Экспорт всех директив
|
|
71
|
+
exports.lenzDirectives = [
|
|
72
|
+
exports.modelDirective,
|
|
73
|
+
exports.idDirective,
|
|
74
|
+
exports.uniqueDirective,
|
|
75
|
+
exports.indexDirective,
|
|
76
|
+
exports.defaultDirective,
|
|
77
|
+
exports.relationDirective,
|
|
78
|
+
exports.createdAtDirective,
|
|
79
|
+
exports.updatedAtDirective,
|
|
80
|
+
exports.embeddedDirective,
|
|
81
|
+
exports.hideDirective
|
|
82
|
+
];
|
|
83
|
+
// Утилита для проверки, является ли директива директивой Lenz
|
|
84
|
+
function isLenzDirective(directiveName) {
|
|
85
|
+
return exports.lenzDirectives.some(d => d.name === directiveName);
|
|
86
|
+
}
|
|
87
|
+
// Утилита для получения определения директивы по имени
|
|
88
|
+
function getDirectiveDefinition(directiveName) {
|
|
89
|
+
return exports.lenzDirectives.find(d => d.name === directiveName);
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=directives.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directives.js","sourceRoot":"","sources":["../../src/engine/directives.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LenzEngine = exports.CodeGenerator = exports.GraphQLParser = void 0;
|
|
4
|
+
var GraphQLParser_1 = require("./GraphQLParser");
|
|
5
|
+
Object.defineProperty(exports, "GraphQLParser", { enumerable: true, get: function () { return GraphQLParser_1.GraphQLParser; } });
|
|
6
|
+
var CodeGenerator_1 = require("./CodeGenerator");
|
|
7
|
+
Object.defineProperty(exports, "CodeGenerator", { enumerable: true, get: function () { return CodeGenerator_1.CodeGenerator; } });
|
|
8
|
+
var LenzEngine_1 = require("./LenzEngine");
|
|
9
|
+
Object.defineProperty(exports, "LenzEngine", { enumerable: true, get: function () { return LenzEngine_1.LenzEngine; } });
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":";;;AAAA,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,2CAA0C;AAAjC,wGAAA,UAAU,OAAA"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Structured error classes for Lenz ORM
|
|
3
|
+
*/
|
|
4
|
+
export declare class LenzError extends Error {
|
|
5
|
+
readonly code: string;
|
|
6
|
+
readonly details: Record<string, any> | undefined;
|
|
7
|
+
constructor(code: string, message: string, details?: Record<string, any>);
|
|
8
|
+
}
|
|
9
|
+
export declare class SchemaValidationError extends LenzError {
|
|
10
|
+
constructor(message: string, details?: Record<string, any>);
|
|
11
|
+
}
|
|
12
|
+
export declare class SchemaParseError extends LenzError {
|
|
13
|
+
constructor(message: string, details?: Record<string, any>);
|
|
14
|
+
}
|
|
15
|
+
export declare class CodeGenerationError extends LenzError {
|
|
16
|
+
constructor(message: string, details?: Record<string, any>);
|
|
17
|
+
}
|
|
18
|
+
export declare class ConfigurationError extends LenzError {
|
|
19
|
+
constructor(message: string, details?: Record<string, any>);
|
|
20
|
+
}
|
|
21
|
+
export declare class DatabaseError extends LenzError {
|
|
22
|
+
constructor(message: string, details?: Record<string, any>);
|
|
23
|
+
}
|
|
24
|
+
export declare class CircularDependencyError extends SchemaValidationError {
|
|
25
|
+
constructor(modelNames: string[], details?: Record<string, any>);
|
|
26
|
+
}
|
|
27
|
+
export declare class DuplicateModelError extends SchemaValidationError {
|
|
28
|
+
constructor(modelName: string, details?: Record<string, any>);
|
|
29
|
+
}
|
|
30
|
+
export declare class DuplicateFieldError extends SchemaValidationError {
|
|
31
|
+
constructor(modelName: string, fieldName: string, details?: Record<string, any>);
|
|
32
|
+
}
|
|
33
|
+
export declare class InvalidFieldTypeError extends SchemaValidationError {
|
|
34
|
+
constructor(modelName: string, fieldName: string, fieldType: string, details?: Record<string, any>);
|
|
35
|
+
}
|
|
36
|
+
export declare class InvalidDirectiveError extends SchemaValidationError {
|
|
37
|
+
constructor(directiveName: string, location: string, details?: Record<string, any>);
|
|
38
|
+
}
|
|
39
|
+
export declare class MissingRequiredFieldError extends SchemaValidationError {
|
|
40
|
+
constructor(modelName: string, fieldName: string, details?: Record<string, any>);
|
|
41
|
+
}
|
|
42
|
+
export declare class RelationValidationError extends SchemaValidationError {
|
|
43
|
+
constructor(message: string, details?: Record<string, any>);
|
|
44
|
+
}
|
|
45
|
+
export declare function isLenzError(error: any): error is LenzError;
|
|
46
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,qBAAa,SAAU,SAAQ,KAAK;IAClC,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC;gBAE7C,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAWzE;AAED,qBAAa,qBAAsB,SAAQ,SAAS;gBACtC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAI3D;AAED,qBAAa,gBAAiB,SAAQ,SAAS;gBACjC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAI3D;AAED,qBAAa,mBAAoB,SAAQ,SAAS;gBACpC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAI3D;AAED,qBAAa,kBAAmB,SAAQ,SAAS;gBACnC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAI3D;AAED,qBAAa,aAAc,SAAQ,SAAS;gBAC9B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAI3D;AAGD,qBAAa,uBAAwB,SAAQ,qBAAqB;gBACpD,UAAU,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAOhE;AAED,qBAAa,mBAAoB,SAAQ,qBAAqB;gBAChD,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAO7D;AAED,qBAAa,mBAAoB,SAAQ,qBAAqB;gBAChD,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAQhF;AAED,qBAAa,qBAAsB,SAAQ,qBAAqB;gBAClD,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CASnG;AAED,qBAAa,qBAAsB,SAAQ,qBAAqB;gBAClD,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAQnF;AAED,qBAAa,yBAA0B,SAAQ,qBAAqB;gBACtD,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAQhF;AAED,qBAAa,uBAAwB,SAAQ,qBAAqB;gBACpD,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAI3D;AAGD,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,SAAS,CAE1D"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Structured error classes for Lenz ORM
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.RelationValidationError = exports.MissingRequiredFieldError = exports.InvalidDirectiveError = exports.InvalidFieldTypeError = exports.DuplicateFieldError = exports.DuplicateModelError = exports.CircularDependencyError = exports.DatabaseError = exports.ConfigurationError = exports.CodeGenerationError = exports.SchemaParseError = exports.SchemaValidationError = exports.LenzError = void 0;
|
|
7
|
+
exports.isLenzError = isLenzError;
|
|
8
|
+
class LenzError extends Error {
|
|
9
|
+
constructor(code, message, details) {
|
|
10
|
+
super(message);
|
|
11
|
+
this.name = 'LenzError';
|
|
12
|
+
this.code = code;
|
|
13
|
+
this.details = details;
|
|
14
|
+
// Maintain proper stack trace
|
|
15
|
+
if (Error.captureStackTrace) {
|
|
16
|
+
Error.captureStackTrace(this, LenzError);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
exports.LenzError = LenzError;
|
|
21
|
+
class SchemaValidationError extends LenzError {
|
|
22
|
+
constructor(message, details) {
|
|
23
|
+
super('SCHEMA_VALIDATION_ERROR', message, details);
|
|
24
|
+
this.name = 'SchemaValidationError';
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.SchemaValidationError = SchemaValidationError;
|
|
28
|
+
class SchemaParseError extends LenzError {
|
|
29
|
+
constructor(message, details) {
|
|
30
|
+
super('SCHEMA_PARSE_ERROR', message, details);
|
|
31
|
+
this.name = 'SchemaParseError';
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.SchemaParseError = SchemaParseError;
|
|
35
|
+
class CodeGenerationError extends LenzError {
|
|
36
|
+
constructor(message, details) {
|
|
37
|
+
super('CODE_GENERATION_ERROR', message, details);
|
|
38
|
+
this.name = 'CodeGenerationError';
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
exports.CodeGenerationError = CodeGenerationError;
|
|
42
|
+
class ConfigurationError extends LenzError {
|
|
43
|
+
constructor(message, details) {
|
|
44
|
+
super('CONFIGURATION_ERROR', message, details);
|
|
45
|
+
this.name = 'ConfigurationError';
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.ConfigurationError = ConfigurationError;
|
|
49
|
+
class DatabaseError extends LenzError {
|
|
50
|
+
constructor(message, details) {
|
|
51
|
+
super('DATABASE_ERROR', message, details);
|
|
52
|
+
this.name = 'DatabaseError';
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
exports.DatabaseError = DatabaseError;
|
|
56
|
+
// Specific validation errors
|
|
57
|
+
class CircularDependencyError extends SchemaValidationError {
|
|
58
|
+
constructor(modelNames, details) {
|
|
59
|
+
super(`Circular dependency detected between models: ${modelNames.join(' -> ')}`, {
|
|
60
|
+
modelNames,
|
|
61
|
+
...details
|
|
62
|
+
});
|
|
63
|
+
this.name = 'CircularDependencyError';
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
exports.CircularDependencyError = CircularDependencyError;
|
|
67
|
+
class DuplicateModelError extends SchemaValidationError {
|
|
68
|
+
constructor(modelName, details) {
|
|
69
|
+
super(`Duplicate model name: ${modelName}`, {
|
|
70
|
+
modelName,
|
|
71
|
+
...details
|
|
72
|
+
});
|
|
73
|
+
this.name = 'DuplicateModelError';
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
exports.DuplicateModelError = DuplicateModelError;
|
|
77
|
+
class DuplicateFieldError extends SchemaValidationError {
|
|
78
|
+
constructor(modelName, fieldName, details) {
|
|
79
|
+
super(`Duplicate field '${fieldName}' in model '${modelName}'`, {
|
|
80
|
+
modelName,
|
|
81
|
+
fieldName,
|
|
82
|
+
...details
|
|
83
|
+
});
|
|
84
|
+
this.name = 'DuplicateFieldError';
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
exports.DuplicateFieldError = DuplicateFieldError;
|
|
88
|
+
class InvalidFieldTypeError extends SchemaValidationError {
|
|
89
|
+
constructor(modelName, fieldName, fieldType, details) {
|
|
90
|
+
super(`Invalid field type '${fieldType}' for field '${fieldName}' in model '${modelName}'`, {
|
|
91
|
+
modelName,
|
|
92
|
+
fieldName,
|
|
93
|
+
fieldType,
|
|
94
|
+
...details
|
|
95
|
+
});
|
|
96
|
+
this.name = 'InvalidFieldTypeError';
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
exports.InvalidFieldTypeError = InvalidFieldTypeError;
|
|
100
|
+
class InvalidDirectiveError extends SchemaValidationError {
|
|
101
|
+
constructor(directiveName, location, details) {
|
|
102
|
+
super(`Invalid directive '@${directiveName}' at ${location}`, {
|
|
103
|
+
directiveName,
|
|
104
|
+
location,
|
|
105
|
+
...details
|
|
106
|
+
});
|
|
107
|
+
this.name = 'InvalidDirectiveError';
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
exports.InvalidDirectiveError = InvalidDirectiveError;
|
|
111
|
+
class MissingRequiredFieldError extends SchemaValidationError {
|
|
112
|
+
constructor(modelName, fieldName, details) {
|
|
113
|
+
super(`Missing required field '${fieldName}' in model '${modelName}'`, {
|
|
114
|
+
modelName,
|
|
115
|
+
fieldName,
|
|
116
|
+
...details
|
|
117
|
+
});
|
|
118
|
+
this.name = 'MissingRequiredFieldError';
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
exports.MissingRequiredFieldError = MissingRequiredFieldError;
|
|
122
|
+
class RelationValidationError extends SchemaValidationError {
|
|
123
|
+
constructor(message, details) {
|
|
124
|
+
super(message, details);
|
|
125
|
+
this.name = 'RelationValidationError';
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
exports.RelationValidationError = RelationValidationError;
|
|
129
|
+
// Utility function to check if error is a LenzError
|
|
130
|
+
function isLenzError(error) {
|
|
131
|
+
return error && typeof error === 'object' && error.name === 'LenzError';
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export { LenzEngine } from './engine/LenzEngine';
|
|
2
|
+
export * from './config';
|
|
3
|
+
export * from './engine/GraphQLParser';
|
|
4
|
+
import { LenzEngine as LenzEngineClass } from './engine/LenzEngine';
|
|
5
|
+
declare const _default: {
|
|
6
|
+
LenzEngine: typeof LenzEngineClass;
|
|
7
|
+
generate: import("commander").Command;
|
|
8
|
+
init: import("commander").Command;
|
|
9
|
+
studio: import("commander").Command;
|
|
10
|
+
};
|
|
11
|
+
export default _default;
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,cAAc,UAAU,CAAC;AAQzB,cAAc,wBAAwB,CAAC;AAGvC,OAAO,EAAE,UAAU,IAAI,eAAe,EAAE,MAAM,qBAAqB,CAAC;;;;;;;AACpE,wBAKE"}
|