@gqlbase/plugins 0.0.4 → 0.0.6
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 +25 -0
- package/dist/base/ModelPlugin/ModelPlugin.d.ts.map +1 -1
- package/dist/base/ModelPlugin/ModelPlugin.js +10 -10
- package/dist/base/ModelPlugin/ModelPlugin.js.map +1 -1
- package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.d.ts +23 -0
- package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.d.ts.map +1 -0
- package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.js +161 -0
- package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.js.map +1 -0
- package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.utils.d.ts +12 -0
- package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.utils.d.ts.map +1 -0
- package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.utils.js +30 -0
- package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.utils.js.map +1 -0
- package/dist/base/ModelTypesGeneratorPlugin/index.d.ts +2 -0
- package/dist/base/ModelTypesGeneratorPlugin/index.d.ts.map +1 -0
- package/dist/base/ModelTypesGeneratorPlugin/index.js +2 -0
- package/dist/base/ModelTypesGeneratorPlugin/index.js.map +1 -0
- package/dist/base/ScalarsPlugin/ScalarsPlugin.d.ts +56 -0
- package/dist/base/ScalarsPlugin/ScalarsPlugin.d.ts.map +1 -0
- package/dist/base/ScalarsPlugin/ScalarsPlugin.js +140 -0
- package/dist/base/ScalarsPlugin/ScalarsPlugin.js.map +1 -0
- package/dist/base/ScalarsPlugin/index.d.ts +2 -0
- package/dist/base/ScalarsPlugin/index.d.ts.map +1 -0
- package/dist/base/ScalarsPlugin/index.js +2 -0
- package/dist/base/ScalarsPlugin/index.js.map +1 -0
- package/dist/base/SchemaGeneratorPlugin.d.ts +1 -1
- package/dist/base/SchemaGeneratorPlugin.d.ts.map +1 -1
- package/dist/base/SchemaGeneratorPlugin.js +2 -1
- package/dist/base/SchemaGeneratorPlugin.js.map +1 -1
- package/dist/base/basePreset.d.ts +2 -0
- package/dist/base/basePreset.d.ts.map +1 -1
- package/dist/base/basePreset.js +12 -1
- package/dist/base/basePreset.js.map +1 -1
- package/dist/base/index.d.ts +1 -0
- package/dist/base/index.d.ts.map +1 -1
- package/dist/base/index.js +1 -0
- package/dist/base/index.js.map +1 -1
- package/package.json +3 -3
package/README.md
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# @gqlbase/plugins
|
|
2
|
+
|
|
3
|
+
Built-in plugins and presets for gqlbase.
|
|
4
|
+
|
|
5
|
+
This is an internal package. Install the main [`gqlbase`](https://www.npmjs.com/package/gqlbase) package instead.
|
|
6
|
+
|
|
7
|
+
## What this package provides
|
|
8
|
+
|
|
9
|
+
**Base preset** (`gqlbase/plugins/base`):
|
|
10
|
+
|
|
11
|
+
- `ScalarsPlugin` — registers built-in scalar types
|
|
12
|
+
- `UtilitiesPlugin` — processes visibility and scope directives
|
|
13
|
+
- `ModelPlugin` — generates CRUD operations from `@model` types
|
|
14
|
+
- `RelationsPlugin` — resolves `@hasOne` and `@hasMany` relations
|
|
15
|
+
- `SchemaGeneratorPlugin` — outputs the transformed schema
|
|
16
|
+
- `ModelTypesGeneratorPlugin` — outputs TypeScript type definitions
|
|
17
|
+
|
|
18
|
+
**Relay preset** (`gqlbase/plugins/relay`):
|
|
19
|
+
|
|
20
|
+
- `NodeInterfacePlugin` — adds the Relay `Node` interface
|
|
21
|
+
- `ConnectionPlugin` — generates connection and edge types
|
|
22
|
+
|
|
23
|
+
## License
|
|
24
|
+
|
|
25
|
+
MIT
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelPlugin.d.ts","sourceRoot":"","sources":["../../../src/base/ModelPlugin/ModelPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EACL,cAAc,EAWd,UAAU,EAEX,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EAUL,kBAAkB,EAInB,MAAM,wBAAwB,CAAC;AAEhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AAEH,qBAAa,WAAY,YAAW,kBAAkB;IACpD,SAAgB,IAAI,iBAAiB;IACrC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;IACtC,OAAO,CAAC,kBAAkB,CAAkB;gBAG1C,OAAO,EAAE,mBAAmB,EAC5B,OAAO,GAAE,kBAAsD;IAOjE,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,kBAAkB;IAqB1B,OAAO,CAAC,sBAAsB;IAc9B,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,4BAA4B;IAoBpC,OAAO,CAAC,4BAA4B;IAgBpC,OAAO,CAAC,6BAA6B;IAUrC,OAAO,CAAC,wBAAwB;IAWhC,OAAO,CAAC,0BAA0B;IAUlC,OAAO,CAAC,0BAA0B;IAWlC,OAAO,CAAC,wBAAwB;
|
|
1
|
+
{"version":3,"file":"ModelPlugin.d.ts","sourceRoot":"","sources":["../../../src/base/ModelPlugin/ModelPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EACL,cAAc,EAWd,UAAU,EAEX,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EAUL,kBAAkB,EAInB,MAAM,wBAAwB,CAAC;AAEhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AAEH,qBAAa,WAAY,YAAW,kBAAkB;IACpD,SAAgB,IAAI,iBAAiB;IACrC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;IACtC,OAAO,CAAC,kBAAkB,CAAkB;gBAG1C,OAAO,EAAE,mBAAmB,EAC5B,OAAO,GAAE,kBAAsD;IAOjE,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,kBAAkB;IAqB1B,OAAO,CAAC,sBAAsB;IAc9B,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,4BAA4B;IAoBpC,OAAO,CAAC,4BAA4B;IAgBpC,OAAO,CAAC,6BAA6B;IAUrC,OAAO,CAAC,wBAAwB;IAWhC,OAAO,CAAC,0BAA0B;IAUlC,OAAO,CAAC,0BAA0B;IAWlC,OAAO,CAAC,wBAAwB;IAwBhC,OAAO,CAAC,kBAAkB;IAsF1B,OAAO,CAAC,oBAAoB;IA0D5B,OAAO,CAAC,oBAAoB;IAgB5B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAwB7B,OAAO,CAAC,0BAA0B;IAalC,OAAO,CAAC,oBAAoB;IAoBrB,IAAI;IA4BJ,KAAK,CAAC,UAAU,EAAE,cAAc;IAIhC,OAAO,CAAC,UAAU,EAAE,UAAU;IA0B9B,OAAO,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAIrC,KAAK,IAAI,IAAI;CAGrB;AAED,eAAO,MAAM,WAAW,sFAAmC,CAAC"}
|
|
@@ -184,17 +184,21 @@ export class ModelPlugin {
|
|
|
184
184
|
_createScalarFilterInput(node, inputName) {
|
|
185
185
|
const scalarType = getTypeHint(node);
|
|
186
186
|
switch (scalarType) {
|
|
187
|
+
case "id":
|
|
188
|
+
return this._createIDLikeFilterInput(inputName, node.name);
|
|
187
189
|
case "string":
|
|
188
190
|
return this._createStringLikeFilterInput(inputName, node.name);
|
|
189
|
-
case "
|
|
190
|
-
case "float":
|
|
191
|
+
case "number":
|
|
191
192
|
return this._createNumberLikeFilterInput(inputName, node.name);
|
|
192
193
|
case "boolean":
|
|
193
194
|
return this._createBooleanLikeFilterInput(inputName, node.name);
|
|
194
|
-
case "
|
|
195
|
-
return this.
|
|
196
|
-
|
|
197
|
-
|
|
195
|
+
case "object":
|
|
196
|
+
return this._createBooleanLikeFilterInput(inputName, node.name);
|
|
197
|
+
case "unknown":
|
|
198
|
+
default: {
|
|
199
|
+
this.context.logger.warn(`Unknown type for scalar ${node.name}. Defaulting to minimal, bolean like, filter input.`);
|
|
200
|
+
return this._createBooleanLikeFilterInput(inputName, node.name);
|
|
201
|
+
}
|
|
198
202
|
}
|
|
199
203
|
}
|
|
200
204
|
_createFilterInput(target) {
|
|
@@ -223,10 +227,8 @@ export class ModelPlugin {
|
|
|
223
227
|
if (isObjectLike(typeDef)) {
|
|
224
228
|
continue;
|
|
225
229
|
}
|
|
226
|
-
this.context.logger.debug(`Processing filter input for field ${field.name} of type ${typeName}. Filter input name: ${inputName}`);
|
|
227
230
|
if (isListTypeNode(field.type) && (isScalar(typeDef) || isEnum(typeDef))) {
|
|
228
231
|
const listFilterInputName = pascalCase(typeDef.name, "list", "filter", "input");
|
|
229
|
-
this.context.logger.debug(`Creating list filter input ${listFilterInputName} for list of type ${typeDef.name}`);
|
|
230
232
|
if (!this.context.document.hasNode(listFilterInputName)) {
|
|
231
233
|
const listFilterInput = this._createListLikeFilterInput(listFilterInputName, typeName);
|
|
232
234
|
this.context.document.addNode(listFilterInput);
|
|
@@ -235,7 +237,6 @@ export class ModelPlugin {
|
|
|
235
237
|
continue;
|
|
236
238
|
}
|
|
237
239
|
if (isScalar(typeDef)) {
|
|
238
|
-
this.context.logger.debug(`Creating scalar filter input ${inputName} for scalar ${typeDef.name}`);
|
|
239
240
|
const scalarFilterInput = this._createScalarFilterInput(typeDef, inputName);
|
|
240
241
|
if (scalarFilterInput) {
|
|
241
242
|
this.context.document.addNode(scalarFilterInput);
|
|
@@ -244,7 +245,6 @@ export class ModelPlugin {
|
|
|
244
245
|
continue;
|
|
245
246
|
}
|
|
246
247
|
if (isEnum(typeDef)) {
|
|
247
|
-
this.context.logger.debug(`Creating enum filter input ${inputName} for enum ${typeDef.name}`);
|
|
248
248
|
const enumFilterInput = this._createEnumLikeFilterInput(inputName, typeDef.name);
|
|
249
249
|
this.context.document.addNode(enumFilterInput);
|
|
250
250
|
filterInput.addField(InputValueNode.create(field.name, NamedTypeNode.create(inputName)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelPlugin.js","sourceRoot":"","sources":["../../../src/base/ModelPlugin/ModelPlugin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ModelPlugin.js","sourceRoot":"","sources":["../../../src/base/ModelPlugin/ModelPlugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ITransformerContext, TransformerPluginBase } from "@gqlbase/core";
|
|
2
|
+
import { DefinitionNode } from "@gqlbase/core/definition";
|
|
3
|
+
/**
|
|
4
|
+
* This plugin generates TypeScript types for all objects defined in the schema.
|
|
5
|
+
*/
|
|
6
|
+
export declare class ModelTypesGeneratorPlugin extends TransformerPluginBase {
|
|
7
|
+
private nodes;
|
|
8
|
+
constructor(context: ITransformerContext);
|
|
9
|
+
private _getContent;
|
|
10
|
+
private _createTypeNameIdentifier;
|
|
11
|
+
private _createValueTypeReference;
|
|
12
|
+
private _createFieldMembers;
|
|
13
|
+
private _createObjectType;
|
|
14
|
+
private _createInterfaceType;
|
|
15
|
+
private _createEnumType;
|
|
16
|
+
private _createUnionType;
|
|
17
|
+
before(): void;
|
|
18
|
+
match(definition: DefinitionNode): boolean;
|
|
19
|
+
generate(definition: DefinitionNode): void;
|
|
20
|
+
output(): {};
|
|
21
|
+
}
|
|
22
|
+
export declare const modelTypesGeneratorPlugin: (options?: unknown) => import("@gqlbase/core").IPluginFactory;
|
|
23
|
+
//# sourceMappingURL=ModelTypesGeneratorPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModelTypesGeneratorPlugin.d.ts","sourceRoot":"","sources":["../../../src/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAGhG,OAAO,EACL,cAAc,EAQf,MAAM,0BAA0B,CAAC;AAWlC;;GAEG;AAEH,qBAAa,yBAA0B,SAAQ,qBAAqB;IAClE,OAAO,CAAC,KAAK,CAAiB;gBAElB,OAAO,EAAE,mBAAmB;IAIxC,OAAO,CAAC,WAAW;IAgBnB,OAAO,CAAC,yBAAyB;IAkCjC,OAAO,CAAC,yBAAyB;IAajC,OAAO,CAAC,mBAAmB;IAoC3B,OAAO,CAAC,iBAAiB;IAazB,OAAO,CAAC,oBAAoB;IAc5B,OAAO,CAAC,eAAe;IAsBvB,OAAO,CAAC,gBAAgB;IAsBjB,MAAM;IAkBN,KAAK,CAAC,UAAU,EAAE,cAAc,GAAG,OAAO;IAQ1C,QAAQ,CAAC,UAAU,EAAE,cAAc;IAkBnC,MAAM;CAMd;AAED,eAAO,MAAM,yBAAyB,+DAAiD,CAAC"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
import { createPluginFactory, TransformerPluginBase } from "@gqlbase/core";
|
|
3
|
+
import { writeOutputFile } from "@gqlbase/shared/files";
|
|
4
|
+
import { createFileHeaders } from "@gqlbase/shared/codegen";
|
|
5
|
+
import { EnumNode, InterfaceNode, ListTypeNode, NonNullTypeNode, ObjectNode, UnionNode, } from "@gqlbase/core/definition";
|
|
6
|
+
import { getBuildinScalarTypeKeyword, isNonNullableField, isOperationNode, } from "./ModelTypesGeneratorPlugin.utils.js";
|
|
7
|
+
import { isEnum, isObjectLike, isScalar } from "../ModelPlugin/ModelPlugin.utils.js";
|
|
8
|
+
import { isRelationField } from "../RelationsPlugin/RelationsPlugin.utils.js";
|
|
9
|
+
import { isBuildInScalar } from "@gqlbase/shared/definition";
|
|
10
|
+
import { getTypeHint, isInternal } from "@gqlbase/core/plugins";
|
|
11
|
+
/**
|
|
12
|
+
* This plugin generates TypeScript types for all objects defined in the schema.
|
|
13
|
+
*/
|
|
14
|
+
export class ModelTypesGeneratorPlugin extends TransformerPluginBase {
|
|
15
|
+
nodes = [];
|
|
16
|
+
constructor(context) {
|
|
17
|
+
super("ModelTypesGeneratorPlugin", context);
|
|
18
|
+
}
|
|
19
|
+
_getContent() {
|
|
20
|
+
const file = ts.createSourceFile("models.typegen.ts",
|
|
21
|
+
/*sourceText*/ "", ts.ScriptTarget.Latest,
|
|
22
|
+
/*setParentNodes*/ false, ts.ScriptKind.TS);
|
|
23
|
+
const printer = ts.createPrinter({
|
|
24
|
+
newLine: ts.NewLineKind.CarriageReturnLineFeed,
|
|
25
|
+
removeComments: false,
|
|
26
|
+
});
|
|
27
|
+
return printer.printList(ts.ListFormat.MultiLine, ts.factory.createNodeArray(this.nodes), file);
|
|
28
|
+
}
|
|
29
|
+
_createTypeNameIdentifier(typeName) {
|
|
30
|
+
if (isBuildInScalar(typeName)) {
|
|
31
|
+
return ts.factory.createIdentifier(getBuildinScalarTypeKeyword(typeName));
|
|
32
|
+
}
|
|
33
|
+
const typeDef = this.context.document.getNodeOrThrow(typeName);
|
|
34
|
+
if (isScalar(typeDef)) {
|
|
35
|
+
const hint = getTypeHint(typeDef);
|
|
36
|
+
switch (hint) {
|
|
37
|
+
case "id":
|
|
38
|
+
return ts.factory.createIdentifier("string");
|
|
39
|
+
case "string":
|
|
40
|
+
return ts.factory.createIdentifier("string");
|
|
41
|
+
case "number":
|
|
42
|
+
return ts.factory.createIdentifier("number");
|
|
43
|
+
case "boolean":
|
|
44
|
+
return ts.factory.createIdentifier("boolean");
|
|
45
|
+
case "object":
|
|
46
|
+
return ts.factory.createIdentifier("Record<string, unknown>");
|
|
47
|
+
case "unknown":
|
|
48
|
+
default: {
|
|
49
|
+
this.context.logger.warn(`Unknown type hint for scalar ${typeDef.name}. Defaulting to unknown.`);
|
|
50
|
+
return ts.factory.createIdentifier("unknown");
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return ts.factory.createIdentifier(typeName);
|
|
55
|
+
}
|
|
56
|
+
_createValueTypeReference(fieldType) {
|
|
57
|
+
if (fieldType instanceof NonNullTypeNode) {
|
|
58
|
+
return this._createValueTypeReference(fieldType.type);
|
|
59
|
+
}
|
|
60
|
+
if (fieldType instanceof ListTypeNode) {
|
|
61
|
+
const elementType = this._createValueTypeReference(fieldType.type);
|
|
62
|
+
return ts.factory.createArrayTypeNode(elementType);
|
|
63
|
+
}
|
|
64
|
+
return ts.factory.createTypeReferenceNode(this._createTypeNameIdentifier(fieldType.name));
|
|
65
|
+
}
|
|
66
|
+
_createFieldMembers(definition) {
|
|
67
|
+
const members = [];
|
|
68
|
+
for (const field of definition.fields ?? []) {
|
|
69
|
+
if (isRelationField(field)) {
|
|
70
|
+
continue;
|
|
71
|
+
}
|
|
72
|
+
const questionToken = isNonNullableField(field)
|
|
73
|
+
? undefined
|
|
74
|
+
: ts.factory.createToken(ts.SyntaxKind.QuestionToken);
|
|
75
|
+
const typeNode = isNonNullableField(field)
|
|
76
|
+
? this._createValueTypeReference(field.type)
|
|
77
|
+
: ts.factory.createTypeReferenceNode("Maybe", [this._createValueTypeReference(field.type)]);
|
|
78
|
+
const propertySignature = ts.factory.createPropertySignature([ts.factory.createModifier(ts.SyntaxKind.ReadonlyKeyword)], ts.factory.createIdentifier(field.name), questionToken, typeNode);
|
|
79
|
+
// ts.addSyntheticLeadingComment(
|
|
80
|
+
// propertySignature,
|
|
81
|
+
// ts.SyntaxKind.MultiLineCommentTrivia,
|
|
82
|
+
// `* ${field.name ?? ""} `,
|
|
83
|
+
// /*hasTrailingNewLine*/ true
|
|
84
|
+
// );
|
|
85
|
+
members.push(propertySignature);
|
|
86
|
+
}
|
|
87
|
+
return members;
|
|
88
|
+
}
|
|
89
|
+
_createObjectType(definition) {
|
|
90
|
+
const members = this._createFieldMembers(definition);
|
|
91
|
+
const objectType = ts.factory.createTypeAliasDeclaration(
|
|
92
|
+
/*modifiers*/ [ts.factory.createModifier(ts.SyntaxKind.ExportKeyword)], ts.factory.createIdentifier(definition.name),
|
|
93
|
+
/*typeParameters*/ undefined, ts.factory.createTypeLiteralNode(members));
|
|
94
|
+
this.nodes.push(objectType);
|
|
95
|
+
}
|
|
96
|
+
_createInterfaceType(definition) {
|
|
97
|
+
const members = this._createFieldMembers(definition);
|
|
98
|
+
const interfaceType = ts.factory.createInterfaceDeclaration(
|
|
99
|
+
/*modifiers*/ [ts.factory.createModifier(ts.SyntaxKind.ExportKeyword)], ts.factory.createIdentifier(definition.name),
|
|
100
|
+
/*typeParameters*/ undefined,
|
|
101
|
+
/*heritageClauses*/ undefined, members);
|
|
102
|
+
this.nodes.push(interfaceType);
|
|
103
|
+
}
|
|
104
|
+
_createEnumType(definition) {
|
|
105
|
+
if (!definition.values?.length) {
|
|
106
|
+
this.context.logger.warn(`Enum type ${definition.name} does not have any values. Skipping type generation.`);
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
const members = definition.values.map((value) => ts.factory.createLiteralTypeNode(ts.factory.createStringLiteral(value.name)));
|
|
110
|
+
const enumType = ts.factory.createTypeAliasDeclaration(
|
|
111
|
+
/*modifiers*/ [ts.factory.createModifier(ts.SyntaxKind.ExportKeyword)], ts.factory.createIdentifier(definition.name),
|
|
112
|
+
/*typeParameters*/ undefined, ts.factory.createUnionTypeNode(members));
|
|
113
|
+
this.nodes.push(enumType);
|
|
114
|
+
}
|
|
115
|
+
_createUnionType(definition) {
|
|
116
|
+
if (!definition.types?.length) {
|
|
117
|
+
this.context.logger.warn(`Union type ${definition.name} does not have any member types. Skipping type generation.`);
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
const refs = definition.types.map((type) => ts.factory.createTypeReferenceNode(ts.factory.createIdentifier(type.name)));
|
|
121
|
+
const unionType = ts.factory.createTypeAliasDeclaration(
|
|
122
|
+
/*modifiers*/ [ts.factory.createModifier(ts.SyntaxKind.ExportKeyword)], ts.factory.createIdentifier(definition.name),
|
|
123
|
+
/*typeParameters*/ undefined, ts.factory.createUnionTypeNode(refs));
|
|
124
|
+
this.nodes.push(unionType);
|
|
125
|
+
}
|
|
126
|
+
before() {
|
|
127
|
+
const headers = createFileHeaders();
|
|
128
|
+
this.nodes = [...headers];
|
|
129
|
+
this.nodes.push(ts.factory.createTypeAliasDeclaration(
|
|
130
|
+
/*modifiers*/ [ts.factory.createModifier(ts.SyntaxKind.ExportKeyword)], ts.factory.createIdentifier("Maybe"), [ts.factory.createTypeParameterDeclaration(undefined, "T")], ts.factory.createUnionTypeNode([
|
|
131
|
+
ts.factory.createTypeReferenceNode("T"),
|
|
132
|
+
ts.factory.createLiteralTypeNode(ts.factory.createNull()),
|
|
133
|
+
])));
|
|
134
|
+
}
|
|
135
|
+
match(definition) {
|
|
136
|
+
return ((isObjectLike(definition) || isEnum(definition)) &&
|
|
137
|
+
!isOperationNode(definition) &&
|
|
138
|
+
!isInternal(definition));
|
|
139
|
+
}
|
|
140
|
+
generate(definition) {
|
|
141
|
+
if (definition instanceof InterfaceNode) {
|
|
142
|
+
return this._createInterfaceType(definition);
|
|
143
|
+
}
|
|
144
|
+
if (definition instanceof ObjectNode) {
|
|
145
|
+
return this._createObjectType(definition);
|
|
146
|
+
}
|
|
147
|
+
if (definition instanceof UnionNode) {
|
|
148
|
+
return this._createUnionType(definition);
|
|
149
|
+
}
|
|
150
|
+
if (definition instanceof EnumNode) {
|
|
151
|
+
return this._createEnumType(definition);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
output() {
|
|
155
|
+
const content = this._getContent();
|
|
156
|
+
writeOutputFile(this.context.outputDirectory, "models.typegen.ts", content);
|
|
157
|
+
return {};
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
export const modelTypesGeneratorPlugin = createPluginFactory(ModelTypesGeneratorPlugin);
|
|
161
|
+
//# sourceMappingURL=ModelTypesGeneratorPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModelTypesGeneratorPlugin.js","sourceRoot":"","sources":["../../../src/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DefinitionNode, FieldNode, InputValueNode } from "@gqlbase/core/definition";
|
|
2
|
+
export declare const isOperationNode: (node: DefinitionNode) => boolean;
|
|
3
|
+
/**
|
|
4
|
+
*
|
|
5
|
+
* @param field Field node to check for non-nullability
|
|
6
|
+
* @returns True if the field is non-nullable, false otherwise
|
|
7
|
+
*
|
|
8
|
+
* TODO: check for semantic nullability based on directives.
|
|
9
|
+
*/
|
|
10
|
+
export declare const isNonNullableField: (field: FieldNode | InputValueNode) => boolean;
|
|
11
|
+
export declare const getBuildinScalarTypeKeyword: (typeName: string) => string;
|
|
12
|
+
//# sourceMappingURL=ModelTypesGeneratorPlugin.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModelTypesGeneratorPlugin.utils.d.ts","sourceRoot":"","sources":["../../../src/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,SAAS,EACT,cAAc,EAEf,MAAM,0BAA0B,CAAC;AAIlC,eAAO,MAAM,eAAe,GAAI,MAAM,cAAc,YAEnD,CAAC;AAEF;;;;;;GAMG;AAEH,eAAO,MAAM,kBAAkB,GAAI,OAAO,SAAS,GAAG,cAAc,YAEnE,CAAC;AAEF,eAAO,MAAM,2BAA2B,GAAI,UAAU,MAAM,KAAG,MAa9D,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { NonNullTypeNode, } from "@gqlbase/core/definition";
|
|
2
|
+
const OPERATION_NODE_NAME = ["Query", "Mutation", "Subscription"];
|
|
3
|
+
export const isOperationNode = (node) => {
|
|
4
|
+
return OPERATION_NODE_NAME.includes(node.name);
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
*
|
|
8
|
+
* @param field Field node to check for non-nullability
|
|
9
|
+
* @returns True if the field is non-nullable, false otherwise
|
|
10
|
+
*
|
|
11
|
+
* TODO: check for semantic nullability based on directives.
|
|
12
|
+
*/
|
|
13
|
+
export const isNonNullableField = (field) => {
|
|
14
|
+
return field.type instanceof NonNullTypeNode;
|
|
15
|
+
};
|
|
16
|
+
export const getBuildinScalarTypeKeyword = (typeName) => {
|
|
17
|
+
switch (typeName) {
|
|
18
|
+
case "ID":
|
|
19
|
+
case "String":
|
|
20
|
+
return "string";
|
|
21
|
+
case "Int":
|
|
22
|
+
case "Float":
|
|
23
|
+
return "number";
|
|
24
|
+
case "Boolean":
|
|
25
|
+
return "boolean";
|
|
26
|
+
default:
|
|
27
|
+
throw new Error(`Unsupported build-in scalar type: ${typeName}`);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=ModelTypesGeneratorPlugin.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModelTypesGeneratorPlugin.utils.js","sourceRoot":"","sources":["../../../src/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAElC,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,cAAc,CAAU,CAAC;AAE3E,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAoB,EAAE,EAAE;IACtD,OAAO,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAA4C,CAAC,CAAC;AACzF,CAAC,CAAC;AAEF;;;;;;GAMG;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAiC,EAAE,EAAE;IACtE,OAAO,KAAK,CAAC,IAAI,YAAY,eAAe,CAAC;AAC/C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,QAAgB,EAAU,EAAE;IACtE,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,IAAI,CAAC;QACV,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,KAAK,CAAC;QACX,KAAK,OAAO;YACV,OAAO,QAAQ,CAAC;QAClB,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC;QACnB;YACE,MAAM,IAAI,KAAK,CAAC,qCAAqC,QAAQ,EAAE,CAAC,CAAC;IACrE,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/base/ModelTypesGeneratorPlugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,gCAAgC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/base/ModelTypesGeneratorPlugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,gCAAgC,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { ITransformerContext } from "@gqlbase/core/context";
|
|
2
|
+
import { TransformerPluginBase } from "@gqlbase/core/plugins";
|
|
3
|
+
/**
|
|
4
|
+
* Adds support for custom, commonly used scalars.
|
|
5
|
+
*
|
|
6
|
+
* The implementation of these scalars is left to the user, but they help provide a common interface for platforms that implement custom scalars.
|
|
7
|
+
*
|
|
8
|
+
* Scalars:
|
|
9
|
+
*
|
|
10
|
+
* - `DateTime`: ISO-8601 formatted date-time string.
|
|
11
|
+
* Specified by: http://www.ietf.org/rfc/rfc3339.txt
|
|
12
|
+
* Example: `"2023-01-01T12:34:56Z"`, `"1999-12-31T23:59:59+00:00"`
|
|
13
|
+
*
|
|
14
|
+
* - `Date`: ISO-8601 formatted date string (YYYY-MM-DD).
|
|
15
|
+
* Specified by: http://www.ietf.org/rfc/rfc3339.txt
|
|
16
|
+
* Example: `"2023-01-01"`, `"1999-12-31"`
|
|
17
|
+
*
|
|
18
|
+
* - `Time`: ISO-8601 formatted time string (hh:mm:ss).
|
|
19
|
+
* Specified by: http://www.ietf.org/rfc/rfc3339.txt
|
|
20
|
+
* Example: `"12:34:56"`, `"23:59"`, `"00:00"`
|
|
21
|
+
*
|
|
22
|
+
* - `Timestamp`: Unix timestamp (number of seconds since January 1, 1970).
|
|
23
|
+
* Specified by: https://en.wikipedia.org/wiki/Unix_time
|
|
24
|
+
* Example: `1627846261`, `-1234567890`
|
|
25
|
+
*
|
|
26
|
+
* - `URL`: A valid URL string.
|
|
27
|
+
* Specified by: https://www.ietf.org/rfc/rfc3986.txt
|
|
28
|
+
* Example: `"https://www.example.com"`, `"ftp://ftp.example.com/resource.txt"`
|
|
29
|
+
*
|
|
30
|
+
* - `EmailAddress`: A valid email address string.
|
|
31
|
+
* Specified by: https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address
|
|
32
|
+
* Example: `"
|
|
33
|
+
*
|
|
34
|
+
* - `PhoneNumber`: A valid phone number string.
|
|
35
|
+
* Specified by: https://www.itu.int/rec/T-REC-E.164
|
|
36
|
+
* Example: `"+1-202-555-0123"`, `"+44 20 7946 0958"`
|
|
37
|
+
*
|
|
38
|
+
* - `IPAddress`: A valid IPv4 or IPv6 address string.
|
|
39
|
+
* Specified by: https://www.ietf.org/rfc/rfc3986.txt
|
|
40
|
+
* Example: `"
|
|
41
|
+
*
|
|
42
|
+
* - `JSON`: Arbitrary JSON value.
|
|
43
|
+
* Specified by: https://json.org/
|
|
44
|
+
* Example: `{"key": "value", "array": [1, 2, 3], "nested": {"foo": "bar"}}`
|
|
45
|
+
*
|
|
46
|
+
* - `UUID`: A valid UUID v4 string.
|
|
47
|
+
* Specified by: http://rfc-editor.org/rfc/rfc9562
|
|
48
|
+
* Example: `"550e8400-e29b-41d4-a716-446655440000"`, `"123e4567-e89b-12d3-a456-426614174000"`
|
|
49
|
+
*
|
|
50
|
+
*/
|
|
51
|
+
export declare class ScalarsPlugin extends TransformerPluginBase {
|
|
52
|
+
constructor(context: ITransformerContext);
|
|
53
|
+
init(): void;
|
|
54
|
+
}
|
|
55
|
+
export declare const scalarsPlugin: (options?: unknown) => import("@gqlbase/core/plugins").IPluginFactory;
|
|
56
|
+
//# sourceMappingURL=ScalarsPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScalarsPlugin.d.ts","sourceRoot":"","sources":["../../../src/base/ScalarsPlugin/ScalarsPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAuB,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEnF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH,qBAAa,aAAc,SAAQ,qBAAqB;gBAC1C,OAAO,EAAE,mBAAmB;IAIjC,IAAI;CA4GZ;AAED,eAAO,MAAM,aAAa,uEAAqC,CAAC"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { ArgumentNode, DirectiveNode, ScalarNode, ValueNode } from "@gqlbase/core/definition";
|
|
2
|
+
import { createPluginFactory, TransformerPluginBase } from "@gqlbase/core/plugins";
|
|
3
|
+
/**
|
|
4
|
+
* Adds support for custom, commonly used scalars.
|
|
5
|
+
*
|
|
6
|
+
* The implementation of these scalars is left to the user, but they help provide a common interface for platforms that implement custom scalars.
|
|
7
|
+
*
|
|
8
|
+
* Scalars:
|
|
9
|
+
*
|
|
10
|
+
* - `DateTime`: ISO-8601 formatted date-time string.
|
|
11
|
+
* Specified by: http://www.ietf.org/rfc/rfc3339.txt
|
|
12
|
+
* Example: `"2023-01-01T12:34:56Z"`, `"1999-12-31T23:59:59+00:00"`
|
|
13
|
+
*
|
|
14
|
+
* - `Date`: ISO-8601 formatted date string (YYYY-MM-DD).
|
|
15
|
+
* Specified by: http://www.ietf.org/rfc/rfc3339.txt
|
|
16
|
+
* Example: `"2023-01-01"`, `"1999-12-31"`
|
|
17
|
+
*
|
|
18
|
+
* - `Time`: ISO-8601 formatted time string (hh:mm:ss).
|
|
19
|
+
* Specified by: http://www.ietf.org/rfc/rfc3339.txt
|
|
20
|
+
* Example: `"12:34:56"`, `"23:59"`, `"00:00"`
|
|
21
|
+
*
|
|
22
|
+
* - `Timestamp`: Unix timestamp (number of seconds since January 1, 1970).
|
|
23
|
+
* Specified by: https://en.wikipedia.org/wiki/Unix_time
|
|
24
|
+
* Example: `1627846261`, `-1234567890`
|
|
25
|
+
*
|
|
26
|
+
* - `URL`: A valid URL string.
|
|
27
|
+
* Specified by: https://www.ietf.org/rfc/rfc3986.txt
|
|
28
|
+
* Example: `"https://www.example.com"`, `"ftp://ftp.example.com/resource.txt"`
|
|
29
|
+
*
|
|
30
|
+
* - `EmailAddress`: A valid email address string.
|
|
31
|
+
* Specified by: https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address
|
|
32
|
+
* Example: `"
|
|
33
|
+
*
|
|
34
|
+
* - `PhoneNumber`: A valid phone number string.
|
|
35
|
+
* Specified by: https://www.itu.int/rec/T-REC-E.164
|
|
36
|
+
* Example: `"+1-202-555-0123"`, `"+44 20 7946 0958"`
|
|
37
|
+
*
|
|
38
|
+
* - `IPAddress`: A valid IPv4 or IPv6 address string.
|
|
39
|
+
* Specified by: https://www.ietf.org/rfc/rfc3986.txt
|
|
40
|
+
* Example: `"
|
|
41
|
+
*
|
|
42
|
+
* - `JSON`: Arbitrary JSON value.
|
|
43
|
+
* Specified by: https://json.org/
|
|
44
|
+
* Example: `{"key": "value", "array": [1, 2, 3], "nested": {"foo": "bar"}}`
|
|
45
|
+
*
|
|
46
|
+
* - `UUID`: A valid UUID v4 string.
|
|
47
|
+
* Specified by: http://rfc-editor.org/rfc/rfc9562
|
|
48
|
+
* Example: `"550e8400-e29b-41d4-a716-446655440000"`, `"123e4567-e89b-12d3-a456-426614174000"`
|
|
49
|
+
*
|
|
50
|
+
*/
|
|
51
|
+
export class ScalarsPlugin extends TransformerPluginBase {
|
|
52
|
+
constructor(context) {
|
|
53
|
+
super("ScalarsPlugin", context);
|
|
54
|
+
}
|
|
55
|
+
init() {
|
|
56
|
+
this.context.base
|
|
57
|
+
.addNode(ScalarNode.create("DateTime", [
|
|
58
|
+
DirectiveNode.create("specifiedBy", [
|
|
59
|
+
ArgumentNode.create("url", ValueNode.string("http://www.ietf.org/rfc/rfc3339.txt")),
|
|
60
|
+
]),
|
|
61
|
+
DirectiveNode.create("gqlbase_typehint", [
|
|
62
|
+
ArgumentNode.create("type", ValueNode.enum("string")),
|
|
63
|
+
]),
|
|
64
|
+
]))
|
|
65
|
+
.addNode(ScalarNode.create("Date", [
|
|
66
|
+
DirectiveNode.create("specifiedBy", [
|
|
67
|
+
ArgumentNode.create("url", ValueNode.string("http://www.ietf.org/rfc/rfc3339.txt")),
|
|
68
|
+
]),
|
|
69
|
+
DirectiveNode.create("gqlbase_typehint", [
|
|
70
|
+
ArgumentNode.create("type", ValueNode.enum("string")),
|
|
71
|
+
]),
|
|
72
|
+
]))
|
|
73
|
+
.addNode(ScalarNode.create("Time", [
|
|
74
|
+
DirectiveNode.create("specifiedBy", [
|
|
75
|
+
ArgumentNode.create("url", ValueNode.string("http://www.ietf.org/rfc/rfc3339.txt")),
|
|
76
|
+
]),
|
|
77
|
+
DirectiveNode.create("gqlbase_typehint", [
|
|
78
|
+
ArgumentNode.create("type", ValueNode.enum("string")),
|
|
79
|
+
]),
|
|
80
|
+
]))
|
|
81
|
+
.addNode(ScalarNode.create("Timestamp", [
|
|
82
|
+
DirectiveNode.create("specifiedBy", [
|
|
83
|
+
ArgumentNode.create("url", ValueNode.string("https://en.wikipedia.org/wiki/Unix_time")),
|
|
84
|
+
]),
|
|
85
|
+
DirectiveNode.create("gqlbase_typehint", [
|
|
86
|
+
ArgumentNode.create("type", ValueNode.enum("number")),
|
|
87
|
+
]),
|
|
88
|
+
]))
|
|
89
|
+
.addNode(ScalarNode.create("UUID", [
|
|
90
|
+
DirectiveNode.create("specifiedBy", [
|
|
91
|
+
ArgumentNode.create("url", ValueNode.string("http://rfc-editor.org/rfc/rfc9562")),
|
|
92
|
+
]),
|
|
93
|
+
DirectiveNode.create("gqlbase_typehint", [
|
|
94
|
+
ArgumentNode.create("type", ValueNode.enum("id")),
|
|
95
|
+
]),
|
|
96
|
+
]))
|
|
97
|
+
.addNode(ScalarNode.create("URL", [
|
|
98
|
+
DirectiveNode.create("specifiedBy", [
|
|
99
|
+
ArgumentNode.create("url", ValueNode.string("https://www.ietf.org/rfc/rfc3986.txt")),
|
|
100
|
+
]),
|
|
101
|
+
DirectiveNode.create("gqlbase_typehint", [
|
|
102
|
+
ArgumentNode.create("type", ValueNode.enum("string")),
|
|
103
|
+
]),
|
|
104
|
+
]))
|
|
105
|
+
.addNode(ScalarNode.create("EmailAddress", [
|
|
106
|
+
DirectiveNode.create("specifiedBy", [
|
|
107
|
+
ArgumentNode.create("url", ValueNode.string("https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address")),
|
|
108
|
+
]),
|
|
109
|
+
DirectiveNode.create("gqlbase_typehint", [
|
|
110
|
+
ArgumentNode.create("type", ValueNode.enum("string")),
|
|
111
|
+
]),
|
|
112
|
+
]))
|
|
113
|
+
.addNode(ScalarNode.create("PhoneNumber", [
|
|
114
|
+
DirectiveNode.create("specifiedBy", [
|
|
115
|
+
ArgumentNode.create("url", ValueNode.string("https://www.itu.int/rec/T-REC-E.164")),
|
|
116
|
+
]),
|
|
117
|
+
DirectiveNode.create("gqlbase_typehint", [
|
|
118
|
+
ArgumentNode.create("type", ValueNode.enum("string")),
|
|
119
|
+
]),
|
|
120
|
+
]))
|
|
121
|
+
.addNode(ScalarNode.create("IPAddress", [
|
|
122
|
+
DirectiveNode.create("specifiedBy", [
|
|
123
|
+
ArgumentNode.create("url", ValueNode.string("https://www.ietf.org/rfc/rfc3986.txt")),
|
|
124
|
+
]),
|
|
125
|
+
DirectiveNode.create("gqlbase_typehint", [
|
|
126
|
+
ArgumentNode.create("type", ValueNode.enum("string")),
|
|
127
|
+
]),
|
|
128
|
+
]))
|
|
129
|
+
.addNode(ScalarNode.create("JSON", [
|
|
130
|
+
DirectiveNode.create("specifiedBy", [
|
|
131
|
+
ArgumentNode.create("url", ValueNode.string("https://json.org/")),
|
|
132
|
+
]),
|
|
133
|
+
DirectiveNode.create("gqlbase_typehint", [
|
|
134
|
+
ArgumentNode.create("type", ValueNode.enum("object")),
|
|
135
|
+
]),
|
|
136
|
+
]));
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
export const scalarsPlugin = createPluginFactory(ScalarsPlugin);
|
|
140
|
+
//# sourceMappingURL=ScalarsPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScalarsPlugin.js","sourceRoot":"","sources":["../../../src/base/ScalarsPlugin/ScalarsPlugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/base/ScalarsPlugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/base/ScalarsPlugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ITransformerContext, TransformerPluginBase } from "@gqlbase/core";
|
|
2
2
|
export declare class SchemaGeneratorPlugin extends TransformerPluginBase {
|
|
3
3
|
constructor(context: ITransformerContext);
|
|
4
|
-
|
|
4
|
+
output(): {};
|
|
5
5
|
}
|
|
6
6
|
export declare const schemaGeneratorPlugin: (options?: unknown) => import("@gqlbase/core").IPluginFactory;
|
|
7
7
|
//# sourceMappingURL=SchemaGeneratorPlugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaGeneratorPlugin.d.ts","sourceRoot":"","sources":["../../src/base/SchemaGeneratorPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAGhG,qBAAa,qBAAsB,SAAQ,qBAAqB;gBAClD,OAAO,EAAE,mBAAmB;IAIjC,
|
|
1
|
+
{"version":3,"file":"SchemaGeneratorPlugin.d.ts","sourceRoot":"","sources":["../../src/base/SchemaGeneratorPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAGhG,qBAAa,qBAAsB,SAAQ,qBAAqB;gBAClD,OAAO,EAAE,mBAAmB;IAIjC,MAAM;CAMd;AAED,eAAO,MAAM,qBAAqB,+DAA6C,CAAC"}
|
|
@@ -4,9 +4,10 @@ export class SchemaGeneratorPlugin extends TransformerPluginBase {
|
|
|
4
4
|
constructor(context) {
|
|
5
5
|
super("SchemaGeneratorPlugin", context);
|
|
6
6
|
}
|
|
7
|
-
|
|
7
|
+
output() {
|
|
8
8
|
const schema = this.context.document.print();
|
|
9
9
|
writeOutputFile(this.context.outputDirectory, "schema.graphql", schema);
|
|
10
|
+
return {};
|
|
10
11
|
}
|
|
11
12
|
}
|
|
12
13
|
export const schemaGeneratorPlugin = createPluginFactory(SchemaGeneratorPlugin);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaGeneratorPlugin.js","sourceRoot":"","sources":["../../src/base/SchemaGeneratorPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAuB,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAChG,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,OAAO,qBAAsB,SAAQ,qBAAqB;IAC9D,YAAY,OAA4B;QACtC,KAAK,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAEM,
|
|
1
|
+
{"version":3,"file":"SchemaGeneratorPlugin.js","sourceRoot":"","sources":["../../src/base/SchemaGeneratorPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAuB,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAChG,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,OAAO,qBAAsB,SAAQ,qBAAqB;IAC9D,YAAY,OAA4B;QACtC,KAAK,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAEM,MAAM;QACX,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC7C,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC;QAExE,OAAO,EAAE,CAAC;IACZ,CAAC;CACF;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAAmB,CAAC,qBAAqB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basePreset.d.ts","sourceRoot":"","sources":["../../src/base/basePreset.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"basePreset.d.ts","sourceRoot":"","sources":["../../src/base/basePreset.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;GAYG;AAEH,wBAAgB,UAAU,6CASzB"}
|
package/dist/base/basePreset.js
CHANGED
|
@@ -1,19 +1,30 @@
|
|
|
1
1
|
import { utilsPlugin } from "./UtilitiesPlugin/index.js";
|
|
2
|
+
import { scalarsPlugin } from "./ScalarsPlugin/index.js";
|
|
2
3
|
import { modelPlugin } from "./ModelPlugin/index.js";
|
|
3
4
|
import { relationPlugin } from "./RelationsPlugin/index.js";
|
|
4
5
|
import { schemaGeneratorPlugin } from "./SchemaGeneratorPlugin.js";
|
|
6
|
+
import { modelTypesGeneratorPlugin } from "./ModelTypesGeneratorPlugin/index.js";
|
|
5
7
|
/**
|
|
6
8
|
* A preset that includes all the base plugins
|
|
7
9
|
*
|
|
8
10
|
* Inludes:
|
|
9
11
|
* - `UtilitiesPlugin`
|
|
12
|
+
* - `ScalarsPlugin`
|
|
10
13
|
* - `ModelPlugin`
|
|
11
14
|
* - `RelationsPlugin`
|
|
12
15
|
* - `SchemaGeneratorPlugin`
|
|
16
|
+
* - `ModelTypesGeneratorPlugin`
|
|
13
17
|
*
|
|
14
18
|
* @returns An array of plugin factories for the base plugins.
|
|
15
19
|
*/
|
|
16
20
|
export function basePreset() {
|
|
17
|
-
return [
|
|
21
|
+
return [
|
|
22
|
+
utilsPlugin(),
|
|
23
|
+
scalarsPlugin(),
|
|
24
|
+
modelPlugin(),
|
|
25
|
+
relationPlugin(),
|
|
26
|
+
schemaGeneratorPlugin(),
|
|
27
|
+
modelTypesGeneratorPlugin(),
|
|
28
|
+
];
|
|
18
29
|
}
|
|
19
30
|
//# sourceMappingURL=basePreset.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basePreset.js","sourceRoot":"","sources":["../../src/base/basePreset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"basePreset.js","sourceRoot":"","sources":["../../src/base/basePreset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AAEjF;;;;;;;;;;;;GAYG;AAEH,MAAM,UAAU,UAAU;IACxB,OAAO;QACL,WAAW,EAAE;QACb,aAAa,EAAE;QACf,WAAW,EAAE;QACb,cAAc,EAAE;QAChB,qBAAqB,EAAE;QACvB,yBAAyB,EAAE;KAC5B,CAAC;AACJ,CAAC"}
|
package/dist/base/index.d.ts
CHANGED
|
@@ -2,5 +2,6 @@ export { ModelPlugin, type ModelPluginOptions, ModelDirective, ModelOperation, m
|
|
|
2
2
|
export { RelationsPlugin, relationPlugin, RelationDirective, isRelationField, isOneRelationship, isManyRelationship, type FieldRelationship, type RelationPluginOptions, } from "./RelationsPlugin/index.js";
|
|
3
3
|
export { UtilitiesPlugin, UtilityDirective, utilsPlugin, isReadOnly, isClientOnly, isCreateOnly, isFilterOnly, isServerOnly, isUpdateOnly, isWriteOnly, } from "./UtilitiesPlugin/index.js";
|
|
4
4
|
export { SchemaGeneratorPlugin, schemaGeneratorPlugin } from "./SchemaGeneratorPlugin.js";
|
|
5
|
+
export { ModelTypesGeneratorPlugin, modelTypesGeneratorPlugin, } from "./ModelTypesGeneratorPlugin/index.js";
|
|
5
6
|
export { basePreset } from "./basePreset.js";
|
|
6
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/base/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,KAAK,kBAAkB,EACvB,cAAc,EACd,cAAc,EACd,WAAW,EACX,OAAO,GACR,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,GAC3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,KAAK,kBAAkB,EACvB,cAAc,EACd,cAAc,EACd,WAAW,EACX,OAAO,GACR,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,GAC3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EACL,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/base/index.js
CHANGED
|
@@ -2,5 +2,6 @@ export { ModelPlugin, ModelDirective, ModelOperation, modelPlugin, isModel, } fr
|
|
|
2
2
|
export { RelationsPlugin, relationPlugin, RelationDirective, isRelationField, isOneRelationship, isManyRelationship, } from "./RelationsPlugin/index.js";
|
|
3
3
|
export { UtilitiesPlugin, UtilityDirective, utilsPlugin, isReadOnly, isClientOnly, isCreateOnly, isFilterOnly, isServerOnly, isUpdateOnly, isWriteOnly, } from "./UtilitiesPlugin/index.js";
|
|
4
4
|
export { SchemaGeneratorPlugin, schemaGeneratorPlugin } from "./SchemaGeneratorPlugin.js";
|
|
5
|
+
export { ModelTypesGeneratorPlugin, modelTypesGeneratorPlugin, } from "./ModelTypesGeneratorPlugin/index.js";
|
|
5
6
|
export { basePreset } from "./basePreset.js";
|
|
6
7
|
//# sourceMappingURL=index.js.map
|
package/dist/base/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAEX,cAAc,EACd,cAAc,EACd,WAAW,EACX,OAAO,GACR,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,GAGnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAEX,cAAc,EACd,cAAc,EACd,WAAW,EACX,OAAO,GACR,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,GAGnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EACL,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gqlbase/plugins",
|
|
3
|
-
"version": "0.0.4",
|
|
4
3
|
"description": "Collection of plugins and presets for gqlbase, providing common transformations and utilities that can be used in GraphQL schema transformation processes.",
|
|
4
|
+
"version": "0.0.6",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"type": "module",
|
|
7
7
|
"license": "MIT",
|
|
@@ -42,8 +42,8 @@
|
|
|
42
42
|
"test": "vitest run"
|
|
43
43
|
},
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@gqlbase/core": "^0.0.
|
|
46
|
-
"@gqlbase/shared": "^0.0.
|
|
45
|
+
"@gqlbase/core": "^0.0.6",
|
|
46
|
+
"@gqlbase/shared": "^0.0.6"
|
|
47
47
|
},
|
|
48
48
|
"peerDependencies": {
|
|
49
49
|
"graphql": ">=16"
|