@smartive/graphql-magic 19.4.0 → 19.5.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.
- package/CHANGELOG.md +2 -2
- package/dist/bin/gqm.cjs +39 -5
- package/dist/cjs/index.cjs +43 -5
- package/dist/esm/db/generate.js +23 -3
- package/dist/esm/db/generate.js.map +1 -1
- package/dist/esm/migrations/generate.js +1 -1
- package/dist/esm/migrations/generate.js.map +1 -1
- package/dist/esm/models/model-definitions.d.ts +6 -0
- package/dist/esm/models/models.d.ts +8 -1
- package/dist/esm/models/models.js +11 -0
- package/dist/esm/models/models.js.map +1 -1
- package/dist/esm/schema/generate.d.ts +1 -1
- package/dist/esm/schema/generate.js +3 -2
- package/dist/esm/schema/generate.js.map +1 -1
- package/dist/esm/schema/utils.d.ts +2 -1
- package/dist/esm/schema/utils.js +5 -0
- package/dist/esm/schema/utils.js.map +1 -1
- package/package.json +3 -3
- package/src/db/generate.ts +26 -3
- package/src/migrations/generate.ts +1 -1
- package/src/models/model-definitions.ts +2 -0
- package/src/models/models.ts +13 -0
- package/src/schema/generate.ts +3 -1
- package/src/schema/utils.ts +7 -0
- package/tests/generated/api/index.ts +41 -0
- package/tests/generated/client/index.ts +13 -0
- package/tests/generated/models.json +41 -0
- package/tests/generated/schema.graphql +11 -0
- package/tests/utils/models.ts +38 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# [19.
|
|
1
|
+
# [19.5.0](https://github.com/smartive/graphql-magic/compare/v19.4.0...v19.5.0) (2025-07-30)
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
### Features
|
|
5
5
|
|
|
6
|
-
*
|
|
6
|
+
* Union types ([#331](https://github.com/smartive/graphql-magic/issues/331)) ([da9d23c](https://github.com/smartive/graphql-magic/commit/da9d23c7b767961dd7740f4e689522d0d4231713))
|
package/dist/bin/gqm.cjs
CHANGED
|
@@ -108,6 +108,7 @@ var Models = class {
|
|
|
108
108
|
interfaces;
|
|
109
109
|
objects;
|
|
110
110
|
entities;
|
|
111
|
+
unions;
|
|
111
112
|
definitions;
|
|
112
113
|
constructor(definitions) {
|
|
113
114
|
this.definitions = (0, import_cloneDeep.default)(definitions);
|
|
@@ -261,6 +262,7 @@ var Models = class {
|
|
|
261
262
|
this.objects = this.models.filter((model) => model instanceof ObjectModel);
|
|
262
263
|
this.rawEnums = this.models.filter((model) => model instanceof RawEnumModel);
|
|
263
264
|
this.scalars = this.models.filter((model) => model instanceof ScalarModel);
|
|
265
|
+
this.unions = this.models.filter((model) => model instanceof UnionModel);
|
|
264
266
|
}
|
|
265
267
|
getModel(name2, kind) {
|
|
266
268
|
const model = get(this.modelsByName, name2);
|
|
@@ -287,6 +289,14 @@ var Model = class {
|
|
|
287
289
|
var ScalarModel = class extends Model {
|
|
288
290
|
kind;
|
|
289
291
|
};
|
|
292
|
+
var UnionModel = class extends Model {
|
|
293
|
+
kind;
|
|
294
|
+
types;
|
|
295
|
+
constructor(models, definition) {
|
|
296
|
+
super(models, definition);
|
|
297
|
+
Object.assign(this, (0, import_omit.default)(definition, "name", "plural", "description"));
|
|
298
|
+
}
|
|
299
|
+
};
|
|
290
300
|
var EnumModel = class extends Model {
|
|
291
301
|
kind;
|
|
292
302
|
values;
|
|
@@ -475,7 +485,8 @@ var MODEL_KIND_TO_CLASS_MAPPING = {
|
|
|
475
485
|
interface: InterfaceModel,
|
|
476
486
|
object: ObjectModel,
|
|
477
487
|
"raw-enum": RawEnumModel,
|
|
478
|
-
scalar: ScalarModel
|
|
488
|
+
scalar: ScalarModel,
|
|
489
|
+
union: UnionModel
|
|
479
490
|
};
|
|
480
491
|
var Relation = class {
|
|
481
492
|
constructor(name2, sourceModel, field, targetModel) {
|
|
@@ -608,9 +619,25 @@ var generateDBModels = (models, dateLibrary) => {
|
|
|
608
619
|
indentNumberOfSpaces: 2
|
|
609
620
|
});
|
|
610
621
|
writer.write(DATE_CLASS_IMPORT[dateLibrary]).blankLine();
|
|
622
|
+
for (const [key, value2] of Object.entries(PRIMITIVE_TYPES)) {
|
|
623
|
+
writer.write(`export type ${key} = ${value2};`).blankLine();
|
|
624
|
+
}
|
|
611
625
|
for (const enm2 of models.enums) {
|
|
612
626
|
writer.write(`export type ${enm2.name} = ${enm2.values.map((v) => `'${v}'`).join(" | ")};`).blankLine();
|
|
613
627
|
}
|
|
628
|
+
for (const enm2 of models.rawEnums) {
|
|
629
|
+
writer.write(`export type ${enm2.name} = ${enm2.values.map((v) => `'${v}'`).join(" | ")};`).blankLine();
|
|
630
|
+
}
|
|
631
|
+
for (const model of models.unions) {
|
|
632
|
+
writer.write(`export type ${model.name} = ${model.types.join(" | ")};`).blankLine();
|
|
633
|
+
}
|
|
634
|
+
for (const model of models.objects) {
|
|
635
|
+
writer.write(`export type ${model.name} = `).inlineBlock(() => {
|
|
636
|
+
for (const field of model.fields) {
|
|
637
|
+
writer.write(`'${getColumnName(field)}': ${getFieldType(field, dateLibrary)}${field.nonNull ? "" : " | null"};`).newLine();
|
|
638
|
+
}
|
|
639
|
+
}).blankLine();
|
|
640
|
+
}
|
|
614
641
|
for (const model of models.entities) {
|
|
615
642
|
const fields2 = model.relations.some((relation) => relation.field.foreignKey === "id") ? model.fields.filter((field) => field.name !== "id") : model.fields;
|
|
616
643
|
writer.write(`export type ${model.name} = `).inlineBlock(() => {
|
|
@@ -661,13 +688,13 @@ var getFieldType = (field, dateLibrary, input2) => {
|
|
|
661
688
|
const kind = field.kind;
|
|
662
689
|
switch (kind) {
|
|
663
690
|
case "json":
|
|
664
|
-
return
|
|
691
|
+
return field.type;
|
|
665
692
|
case "relation":
|
|
666
693
|
return "string";
|
|
667
694
|
case "enum":
|
|
668
695
|
return field.type + (field.list ? "[]" : "");
|
|
669
696
|
case "custom":
|
|
670
|
-
|
|
697
|
+
return field.type;
|
|
671
698
|
case "primitive":
|
|
672
699
|
case void 0:
|
|
673
700
|
if (field.type === "DateTime") {
|
|
@@ -1221,7 +1248,7 @@ var MigrationGenerator = class {
|
|
|
1221
1248
|
col();
|
|
1222
1249
|
break;
|
|
1223
1250
|
case "json":
|
|
1224
|
-
this.writer.
|
|
1251
|
+
this.writer.writeLine(`table.json('${typeToField(name2)}');`);
|
|
1225
1252
|
break;
|
|
1226
1253
|
case "custom":
|
|
1227
1254
|
throw new Error(`Can't create a column for ${name2} because it's a custom field`);
|
|
@@ -1288,6 +1315,11 @@ var input = (nme, fields2, dvs) => ({
|
|
|
1288
1315
|
kind: import_graphql5.Kind.INPUT_OBJECT_TYPE_DEFINITION,
|
|
1289
1316
|
directives: directives(dvs)
|
|
1290
1317
|
});
|
|
1318
|
+
var union = (nme, types) => ({
|
|
1319
|
+
name: name(nme),
|
|
1320
|
+
kind: import_graphql5.Kind.UNION_TYPE_DEFINITION,
|
|
1321
|
+
types: types.map((t) => namedType(t))
|
|
1322
|
+
});
|
|
1291
1323
|
var object = (nme, fds, interfaces, dvs) => ({
|
|
1292
1324
|
name: name(nme),
|
|
1293
1325
|
fields: fields(fds),
|
|
@@ -1420,7 +1452,8 @@ var generateDefinitions = ({
|
|
|
1420
1452
|
inputs,
|
|
1421
1453
|
interfaces,
|
|
1422
1454
|
entities,
|
|
1423
|
-
objects
|
|
1455
|
+
objects,
|
|
1456
|
+
unions
|
|
1424
1457
|
}) => {
|
|
1425
1458
|
const definitions = [
|
|
1426
1459
|
// Predefined types
|
|
@@ -1430,6 +1463,7 @@ var generateDefinitions = ({
|
|
|
1430
1463
|
...objects.filter(({ name: name2 }) => !["Query", "Mutation"].includes(name2)).map((model) => object(model.name, model.fields)),
|
|
1431
1464
|
...interfaces.map(({ name: name2, fields: fields2 }) => iface(name2, fields2)),
|
|
1432
1465
|
...inputs.map((model) => input(model.name, model.fields)),
|
|
1466
|
+
...unions.map((model) => union(model.name, model.types)),
|
|
1433
1467
|
...objects.filter(
|
|
1434
1468
|
(model) => entities.some((m) => m.creatable && m.fields.some((f) => f.creatable && f.kind === "json" && f.type === model.name))
|
|
1435
1469
|
).map((model) => input(`Create${model.name}`, model.fields)),
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -55,6 +55,7 @@ __export(index_exports, {
|
|
|
55
55
|
SPECIAL_FILTERS: () => SPECIAL_FILTERS,
|
|
56
56
|
ScalarModel: () => ScalarModel,
|
|
57
57
|
TYPE_ALIAS: () => TYPE_ALIAS,
|
|
58
|
+
UnionModel: () => UnionModel,
|
|
58
59
|
UserInputError: () => UserInputError,
|
|
59
60
|
addJoin: () => addJoin,
|
|
60
61
|
and: () => and,
|
|
@@ -187,6 +188,7 @@ __export(index_exports, {
|
|
|
187
188
|
summonByKey: () => summonByKey,
|
|
188
189
|
summonByName: () => summonByName,
|
|
189
190
|
typeToField: () => typeToField,
|
|
191
|
+
union: () => union,
|
|
190
192
|
updateEntities: () => updateEntities,
|
|
191
193
|
updateEntity: () => updateEntity,
|
|
192
194
|
value: () => value
|
|
@@ -310,6 +312,7 @@ var Models = class {
|
|
|
310
312
|
interfaces;
|
|
311
313
|
objects;
|
|
312
314
|
entities;
|
|
315
|
+
unions;
|
|
313
316
|
definitions;
|
|
314
317
|
constructor(definitions) {
|
|
315
318
|
this.definitions = (0, import_cloneDeep.default)(definitions);
|
|
@@ -463,6 +466,7 @@ var Models = class {
|
|
|
463
466
|
this.objects = this.models.filter((model) => model instanceof ObjectModel);
|
|
464
467
|
this.rawEnums = this.models.filter((model) => model instanceof RawEnumModel);
|
|
465
468
|
this.scalars = this.models.filter((model) => model instanceof ScalarModel);
|
|
469
|
+
this.unions = this.models.filter((model) => model instanceof UnionModel);
|
|
466
470
|
}
|
|
467
471
|
getModel(name2, kind) {
|
|
468
472
|
const model = get(this.modelsByName, name2);
|
|
@@ -489,6 +493,14 @@ var Model = class {
|
|
|
489
493
|
var ScalarModel = class extends Model {
|
|
490
494
|
kind;
|
|
491
495
|
};
|
|
496
|
+
var UnionModel = class extends Model {
|
|
497
|
+
kind;
|
|
498
|
+
types;
|
|
499
|
+
constructor(models, definition) {
|
|
500
|
+
super(models, definition);
|
|
501
|
+
Object.assign(this, (0, import_omit.default)(definition, "name", "plural", "description"));
|
|
502
|
+
}
|
|
503
|
+
};
|
|
492
504
|
var EnumModel = class extends Model {
|
|
493
505
|
kind;
|
|
494
506
|
values;
|
|
@@ -677,7 +689,8 @@ var MODEL_KIND_TO_CLASS_MAPPING = {
|
|
|
677
689
|
interface: InterfaceModel,
|
|
678
690
|
object: ObjectModel,
|
|
679
691
|
"raw-enum": RawEnumModel,
|
|
680
|
-
scalar: ScalarModel
|
|
692
|
+
scalar: ScalarModel,
|
|
693
|
+
union: UnionModel
|
|
681
694
|
};
|
|
682
695
|
var Relation = class {
|
|
683
696
|
constructor(name2, sourceModel, field, targetModel) {
|
|
@@ -1012,9 +1025,25 @@ var generateDBModels = (models, dateLibrary) => {
|
|
|
1012
1025
|
indentNumberOfSpaces: 2
|
|
1013
1026
|
});
|
|
1014
1027
|
writer.write(DATE_CLASS_IMPORT[dateLibrary]).blankLine();
|
|
1028
|
+
for (const [key, value2] of Object.entries(PRIMITIVE_TYPES)) {
|
|
1029
|
+
writer.write(`export type ${key} = ${value2};`).blankLine();
|
|
1030
|
+
}
|
|
1015
1031
|
for (const enm2 of models.enums) {
|
|
1016
1032
|
writer.write(`export type ${enm2.name} = ${enm2.values.map((v) => `'${v}'`).join(" | ")};`).blankLine();
|
|
1017
1033
|
}
|
|
1034
|
+
for (const enm2 of models.rawEnums) {
|
|
1035
|
+
writer.write(`export type ${enm2.name} = ${enm2.values.map((v) => `'${v}'`).join(" | ")};`).blankLine();
|
|
1036
|
+
}
|
|
1037
|
+
for (const model of models.unions) {
|
|
1038
|
+
writer.write(`export type ${model.name} = ${model.types.join(" | ")};`).blankLine();
|
|
1039
|
+
}
|
|
1040
|
+
for (const model of models.objects) {
|
|
1041
|
+
writer.write(`export type ${model.name} = `).inlineBlock(() => {
|
|
1042
|
+
for (const field of model.fields) {
|
|
1043
|
+
writer.write(`'${getColumnName(field)}': ${getFieldType(field, dateLibrary)}${field.nonNull ? "" : " | null"};`).newLine();
|
|
1044
|
+
}
|
|
1045
|
+
}).blankLine();
|
|
1046
|
+
}
|
|
1018
1047
|
for (const model of models.entities) {
|
|
1019
1048
|
const fields2 = model.relations.some((relation) => relation.field.foreignKey === "id") ? model.fields.filter((field) => field.name !== "id") : model.fields;
|
|
1020
1049
|
writer.write(`export type ${model.name} = `).inlineBlock(() => {
|
|
@@ -1065,13 +1094,13 @@ var getFieldType = (field, dateLibrary, input2) => {
|
|
|
1065
1094
|
const kind = field.kind;
|
|
1066
1095
|
switch (kind) {
|
|
1067
1096
|
case "json":
|
|
1068
|
-
return
|
|
1097
|
+
return field.type;
|
|
1069
1098
|
case "relation":
|
|
1070
1099
|
return "string";
|
|
1071
1100
|
case "enum":
|
|
1072
1101
|
return field.type + (field.list ? "[]" : "");
|
|
1073
1102
|
case "custom":
|
|
1074
|
-
|
|
1103
|
+
return field.type;
|
|
1075
1104
|
case "primitive":
|
|
1076
1105
|
case void 0:
|
|
1077
1106
|
if (field.type === "DateTime") {
|
|
@@ -1625,7 +1654,7 @@ var MigrationGenerator = class {
|
|
|
1625
1654
|
col();
|
|
1626
1655
|
break;
|
|
1627
1656
|
case "json":
|
|
1628
|
-
this.writer.
|
|
1657
|
+
this.writer.writeLine(`table.json('${typeToField(name2)}');`);
|
|
1629
1658
|
break;
|
|
1630
1659
|
case "custom":
|
|
1631
1660
|
throw new Error(`Can't create a column for ${name2} because it's a custom field`);
|
|
@@ -3269,6 +3298,11 @@ var input = (nme, fields2, dvs) => ({
|
|
|
3269
3298
|
kind: import_graphql5.Kind.INPUT_OBJECT_TYPE_DEFINITION,
|
|
3270
3299
|
directives: directives(dvs)
|
|
3271
3300
|
});
|
|
3301
|
+
var union = (nme, types) => ({
|
|
3302
|
+
name: name(nme),
|
|
3303
|
+
kind: import_graphql5.Kind.UNION_TYPE_DEFINITION,
|
|
3304
|
+
types: types.map((t) => namedType(t))
|
|
3305
|
+
});
|
|
3272
3306
|
var object = (nme, fds, interfaces, dvs) => ({
|
|
3273
3307
|
name: name(nme),
|
|
3274
3308
|
fields: fields(fds),
|
|
@@ -3409,7 +3443,8 @@ var generateDefinitions = ({
|
|
|
3409
3443
|
inputs,
|
|
3410
3444
|
interfaces,
|
|
3411
3445
|
entities,
|
|
3412
|
-
objects
|
|
3446
|
+
objects,
|
|
3447
|
+
unions
|
|
3413
3448
|
}) => {
|
|
3414
3449
|
const definitions = [
|
|
3415
3450
|
// Predefined types
|
|
@@ -3419,6 +3454,7 @@ var generateDefinitions = ({
|
|
|
3419
3454
|
...objects.filter(({ name: name2 }) => !["Query", "Mutation"].includes(name2)).map((model) => object(model.name, model.fields)),
|
|
3420
3455
|
...interfaces.map(({ name: name2, fields: fields2 }) => iface(name2, fields2)),
|
|
3421
3456
|
...inputs.map((model) => input(model.name, model.fields)),
|
|
3457
|
+
...unions.map((model) => union(model.name, model.types)),
|
|
3422
3458
|
...objects.filter(
|
|
3423
3459
|
(model) => entities.some((m) => m.creatable && m.fields.some((f) => f.creatable && f.kind === "json" && f.type === model.name))
|
|
3424
3460
|
).map((model) => input(`Create${model.name}`, model.fields)),
|
|
@@ -3684,6 +3720,7 @@ var printSchemaFromModels = (models) => printSchema((0, import_graphql6.buildAST
|
|
|
3684
3720
|
SPECIAL_FILTERS,
|
|
3685
3721
|
ScalarModel,
|
|
3686
3722
|
TYPE_ALIAS,
|
|
3723
|
+
UnionModel,
|
|
3687
3724
|
UserInputError,
|
|
3688
3725
|
addJoin,
|
|
3689
3726
|
and,
|
|
@@ -3816,6 +3853,7 @@ var printSchemaFromModels = (models) => printSchema((0, import_graphql6.buildAST
|
|
|
3816
3853
|
summonByKey,
|
|
3817
3854
|
summonByName,
|
|
3818
3855
|
typeToField,
|
|
3856
|
+
union,
|
|
3819
3857
|
updateEntities,
|
|
3820
3858
|
updateEntity,
|
|
3821
3859
|
value
|
package/dist/esm/db/generate.js
CHANGED
|
@@ -17,9 +17,30 @@ export const generateDBModels = (models, dateLibrary) => {
|
|
|
17
17
|
indentNumberOfSpaces: 2,
|
|
18
18
|
});
|
|
19
19
|
writer.write(DATE_CLASS_IMPORT[dateLibrary]).blankLine();
|
|
20
|
+
for (const [key, value] of Object.entries(PRIMITIVE_TYPES)) {
|
|
21
|
+
writer.write(`export type ${key} = ${value};`).blankLine();
|
|
22
|
+
}
|
|
20
23
|
for (const enm of models.enums) {
|
|
21
24
|
writer.write(`export type ${enm.name} = ${enm.values.map((v) => `'${v}'`).join(' | ')};`).blankLine();
|
|
22
25
|
}
|
|
26
|
+
for (const enm of models.rawEnums) {
|
|
27
|
+
writer.write(`export type ${enm.name} = ${enm.values.map((v) => `'${v}'`).join(' | ')};`).blankLine();
|
|
28
|
+
}
|
|
29
|
+
for (const model of models.unions) {
|
|
30
|
+
writer.write(`export type ${model.name} = ${model.types.join(' | ')};`).blankLine();
|
|
31
|
+
}
|
|
32
|
+
for (const model of models.objects) {
|
|
33
|
+
writer
|
|
34
|
+
.write(`export type ${model.name} = `)
|
|
35
|
+
.inlineBlock(() => {
|
|
36
|
+
for (const field of model.fields) {
|
|
37
|
+
writer
|
|
38
|
+
.write(`'${getColumnName(field)}': ${getFieldType(field, dateLibrary)}${field.nonNull ? '' : ' | null'};`)
|
|
39
|
+
.newLine();
|
|
40
|
+
}
|
|
41
|
+
})
|
|
42
|
+
.blankLine();
|
|
43
|
+
}
|
|
23
44
|
for (const model of models.entities) {
|
|
24
45
|
// TODO: deprecate allowing to define foreignKey
|
|
25
46
|
const fields = model.relations.some((relation) => relation.field.foreignKey === 'id')
|
|
@@ -83,15 +104,14 @@ const getFieldType = (field, dateLibrary, input) => {
|
|
|
83
104
|
const kind = field.kind;
|
|
84
105
|
switch (kind) {
|
|
85
106
|
case 'json':
|
|
86
|
-
|
|
87
|
-
return 'string';
|
|
107
|
+
return field.type;
|
|
88
108
|
case 'relation':
|
|
89
109
|
// Relations are stored as ids
|
|
90
110
|
return 'string';
|
|
91
111
|
case 'enum':
|
|
92
112
|
return field.type + (field.list ? '[]' : '');
|
|
93
113
|
case 'custom':
|
|
94
|
-
|
|
114
|
+
return field.type;
|
|
95
115
|
case 'primitive':
|
|
96
116
|
case undefined:
|
|
97
117
|
if (field.type === 'DateTime') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/db/generate.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/db/generate.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAe,GAAG,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,IAAI,CAAC;AAEjG,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAe,MAAM,gBAAgB,CAAC;AAE5E,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,EAAE,EAAE,QAAQ;IACZ,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,QAAQ;IACb,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;AAElH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAAE,WAAwB,EAAE,EAAE;IAC3E,2DAA2D;IAC3D,MAAM,MAAM,GAAoB,IAAI,eAAe,CAAC,SAAS,CAAC,CAAC;QAC7D,cAAc,EAAE,IAAI;QACpB,oBAAoB,EAAE,CAAC;KACxB,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAEzD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QAC3D,MAAM,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,KAAK,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;IAC7D,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAC/B,MAAM,CAAC,KAAK,CAAC,eAAe,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;IACxG,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAClC,MAAM,CAAC,KAAK,CAAC,eAAe,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;IACxG,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,MAAM,CAAC,KAAK,CAAC,eAAe,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;IACtF,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM;aACH,KAAK,CAAC,eAAe,KAAK,CAAC,IAAI,KAAK,CAAC;aACrC,WAAW,CAAC,GAAG,EAAE;YAChB,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjC,MAAM;qBACH,KAAK,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC;qBACzG,OAAO,EAAE,CAAC;YACf,CAAC;QACH,CAAC,CAAC;aACD,SAAS,EAAE,CAAC;IACjB,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpC,gDAAgD;QAChD,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;YACnF,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;YACrD,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;QAEjB,MAAM;aACH,KAAK,CAAC,eAAe,KAAK,CAAC,IAAI,KAAK,CAAC;aACrC,WAAW,CAAC,GAAG,EAAE;YAChB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;gBACtD,MAAM;qBACH,KAAK,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC;qBACzG,OAAO,EAAE,CAAC;YACf,CAAC;QACH,CAAC,CAAC;aACD,SAAS,EAAE,CAAC;QAEf,MAAM;aACH,KAAK,CAAC,eAAe,KAAK,CAAC,IAAI,gBAAgB,CAAC;aAChD,WAAW,CAAC,GAAG,EAAE;YAChB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;gBACxE,MAAM;qBACH,KAAK,CACJ,IAAI,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,YAAY,CACvG,KAAK,EACL,WAAW,EACX,IAAI,CACL,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CACtE;qBACA,OAAO,EAAE,CAAC;YACf,CAAC;QACH,CAAC,CAAC;aACD,SAAS,EAAE,CAAC;QAEf,MAAM;aACH,KAAK,CAAC,eAAe,KAAK,CAAC,IAAI,YAAY,CAAC;aAC5C,WAAW,CAAC,GAAG,EAAE;YAChB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;gBACxE,MAAM;qBACH,KAAK,CACJ,IAAI,aAAa,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GACnG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SACvB,GAAG,CACJ;qBACA,OAAO,EAAE,CAAC;YACf,CAAC;QACH,CAAC,CAAC;aACD,SAAS,EAAE,CAAC;QAEf,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM;iBACH,KAAK,CAAC,eAAe,KAAK,CAAC,IAAI,SAAS,CAAC;iBACzC,WAAW,CAAC,GAAG,EAAE;gBAChB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;oBACtD,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBAC1C,SAAS;oBACX,CAAC;oBACD,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;oBACvC,MAAM;yBACH,KAAK,CACJ,IAAI,aAAa,CAAC,KAAK,CAAC,IACtB,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GACxG,KAAK,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,GACxG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAC7B,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CACrC;yBACA,OAAO,EAAE,CAAC;gBACf,CAAC;YACH,CAAC,CAAC;iBACD,SAAS,EAAE,CAAC;QACjB,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE;QACvD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;YAC7D,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;QAChE,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,KAAkB,EAAE,WAAwB,EAAE,KAAe,EAAE,EAAE;IACrF,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IACxB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,IAAI,CAAC;QACpB,KAAK,UAAU;YACb,8BAA8B;YAC9B,OAAO,QAAQ,CAAC;QAClB,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/C,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC,IAAI,CAAC;QACpB,KAAK,WAAW,CAAC;QACjB,KAAK,SAAS;YACZ,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC9B,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAChH,CAAC;YAED,OAAO,GAAG,CAAC,eAAe,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACrE,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,eAAe,GAAU,IAAI,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,MAAc,EAAE,EAAE;IACnD,2DAA2D;IAC3D,MAAM,MAAM,GAAoB,IAAI,eAAe,CAAC,SAAS,CAAC,CAAC;QAC7D,cAAc,EAAE,IAAI;QACpB,oBAAoB,EAAE,CAAC;KACxB,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,OAAO,EAAE,CAAC;IACvD,MAAM;SACH,KAAK,CACJ,YAAY,MAAM,CAAC,QAAQ;SACxB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,gBAAgB,KAAK,CAAC,IAAI,SAAS,CAAC;SAC/E,IAAI,CAAC,IAAI,CAAC,cAAc,CAC5B;SACA,SAAS,EAAE,CAAC;IAEf,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE;QACnE,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE;YACjD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpC,MAAM;qBACH,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,8BAA8B,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,gBAAgB,KAAK,CAAC,IAAI,WAAW,CAAC;qBACjH,OAAO,EAAE,CAAC;YACf,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;AAC3B,CAAC,CAAC"}
|
|
@@ -539,7 +539,7 @@ export class MigrationGenerator {
|
|
|
539
539
|
col();
|
|
540
540
|
break;
|
|
541
541
|
case 'json':
|
|
542
|
-
this.writer.
|
|
542
|
+
this.writer.writeLine(`table.json('${typeToField(name)}');`);
|
|
543
543
|
break;
|
|
544
544
|
case 'custom':
|
|
545
545
|
throw new Error(`Can't create a column for ${name} because it's a custom field`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/migrations/generate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/migrations/generate.ts"],"names":[],"mappings":"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"}
|
|
@@ -131,6 +131,9 @@ export type ModelDefinition = {
|
|
|
131
131
|
} | {
|
|
132
132
|
kind: 'raw-enum';
|
|
133
133
|
values: readonly string[];
|
|
134
|
+
} | {
|
|
135
|
+
kind: 'union';
|
|
136
|
+
types: readonly string[];
|
|
134
137
|
} | {
|
|
135
138
|
kind: 'interface';
|
|
136
139
|
fields: EntityFieldDefinition[];
|
|
@@ -187,5 +190,8 @@ export type InputModelDefinition = Extract<ModelDefinition, {
|
|
|
187
190
|
export type EntityModelDefinition = Extract<ModelDefinition, {
|
|
188
191
|
kind: 'entity';
|
|
189
192
|
}>;
|
|
193
|
+
export type UnionModelDefinition = Extract<ModelDefinition, {
|
|
194
|
+
kind: 'union';
|
|
195
|
+
}>;
|
|
190
196
|
export type ModelDefinitions = ModelDefinition[];
|
|
191
197
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CustomFieldDefinition, EnumFieldDefinition, FloatFieldDefinition, IDFieldDefinition, InputModelDefinition, IntFieldDefinition, InterfaceModelDefinition, JsonFieldDefinition, ObjectModelDefinition, OrderBy, PrimitiveFieldDefinition, RawEnumModelDefinition, StringFieldDefinition, UploadFieldDefinition } from '..';
|
|
1
|
+
import { CustomFieldDefinition, EnumFieldDefinition, FloatFieldDefinition, IDFieldDefinition, InputModelDefinition, IntFieldDefinition, InterfaceModelDefinition, JsonFieldDefinition, ObjectModelDefinition, OrderBy, PrimitiveFieldDefinition, RawEnumModelDefinition, StringFieldDefinition, UnionModelDefinition, UploadFieldDefinition } from '..';
|
|
2
2
|
import { BooleanFieldDefinition, DateTimeFieldDefinition, EntityFieldDefinition, EntityModelDefinition, EnumModelDefinition, ModelDefinition, ModelDefinitions, ObjectFieldDefinition, RelationFieldDefinition } from './model-definitions';
|
|
3
3
|
export type ObjectField = ObjectFieldDefinition;
|
|
4
4
|
export type EntityField = EntityFieldDefinition;
|
|
@@ -26,6 +26,7 @@ export declare class Models {
|
|
|
26
26
|
interfaces: InterfaceModel[];
|
|
27
27
|
objects: ObjectModel[];
|
|
28
28
|
entities: EntityModel[];
|
|
29
|
+
unions: UnionModel[];
|
|
29
30
|
definitions: ModelDefinitions;
|
|
30
31
|
constructor(definitions: ModelDefinitions);
|
|
31
32
|
getModel<K extends keyof ModelKindToClassMapping>(name: string, kind?: K): ModelKindToClassMapping[K];
|
|
@@ -40,6 +41,11 @@ export declare abstract class Model {
|
|
|
40
41
|
export declare class ScalarModel extends Model {
|
|
41
42
|
kind: 'scalar';
|
|
42
43
|
}
|
|
44
|
+
export declare class UnionModel extends Model {
|
|
45
|
+
kind: 'union';
|
|
46
|
+
types: string[];
|
|
47
|
+
constructor(models: Models, definition: UnionModelDefinition);
|
|
48
|
+
}
|
|
43
49
|
export declare class EnumModel extends Model {
|
|
44
50
|
kind: 'enum';
|
|
45
51
|
values: string[];
|
|
@@ -129,6 +135,7 @@ declare const MODEL_KIND_TO_CLASS_MAPPING: {
|
|
|
129
135
|
object: typeof ObjectModel;
|
|
130
136
|
'raw-enum': typeof RawEnumModel;
|
|
131
137
|
scalar: typeof ScalarModel;
|
|
138
|
+
union: typeof UnionModel;
|
|
132
139
|
};
|
|
133
140
|
type ModelKindToClassMapping = {
|
|
134
141
|
[K in keyof typeof MODEL_KIND_TO_CLASS_MAPPING]: InstanceType<(typeof MODEL_KIND_TO_CLASS_MAPPING)[K]>;
|
|
@@ -15,6 +15,7 @@ export class Models {
|
|
|
15
15
|
interfaces;
|
|
16
16
|
objects;
|
|
17
17
|
entities;
|
|
18
|
+
unions;
|
|
18
19
|
definitions;
|
|
19
20
|
constructor(definitions) {
|
|
20
21
|
this.definitions = cloneDeep(definitions);
|
|
@@ -171,6 +172,7 @@ export class Models {
|
|
|
171
172
|
this.objects = this.models.filter((model) => model instanceof ObjectModel);
|
|
172
173
|
this.rawEnums = this.models.filter((model) => model instanceof RawEnumModel);
|
|
173
174
|
this.scalars = this.models.filter((model) => model instanceof ScalarModel);
|
|
175
|
+
this.unions = this.models.filter((model) => model instanceof UnionModel);
|
|
174
176
|
}
|
|
175
177
|
getModel(name, kind) {
|
|
176
178
|
const model = get(this.modelsByName, name);
|
|
@@ -198,6 +200,14 @@ export class Model {
|
|
|
198
200
|
export class ScalarModel extends Model {
|
|
199
201
|
kind;
|
|
200
202
|
}
|
|
203
|
+
export class UnionModel extends Model {
|
|
204
|
+
kind;
|
|
205
|
+
types;
|
|
206
|
+
constructor(models, definition) {
|
|
207
|
+
super(models, definition);
|
|
208
|
+
Object.assign(this, omit(definition, 'name', 'plural', 'description'));
|
|
209
|
+
}
|
|
210
|
+
}
|
|
201
211
|
export class EnumModel extends Model {
|
|
202
212
|
kind;
|
|
203
213
|
values;
|
|
@@ -385,6 +395,7 @@ const MODEL_KIND_TO_CLASS_MAPPING = {
|
|
|
385
395
|
object: ObjectModel,
|
|
386
396
|
'raw-enum': RawEnumModel,
|
|
387
397
|
scalar: ScalarModel,
|
|
398
|
+
union: UnionModel,
|
|
388
399
|
};
|
|
389
400
|
export class Relation {
|
|
390
401
|
name;
|