@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.
Files changed (37) hide show
  1. package/README.md +25 -0
  2. package/dist/base/ModelPlugin/ModelPlugin.d.ts.map +1 -1
  3. package/dist/base/ModelPlugin/ModelPlugin.js +10 -10
  4. package/dist/base/ModelPlugin/ModelPlugin.js.map +1 -1
  5. package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.d.ts +23 -0
  6. package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.d.ts.map +1 -0
  7. package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.js +161 -0
  8. package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.js.map +1 -0
  9. package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.utils.d.ts +12 -0
  10. package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.utils.d.ts.map +1 -0
  11. package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.utils.js +30 -0
  12. package/dist/base/ModelTypesGeneratorPlugin/ModelTypesGeneratorPlugin.utils.js.map +1 -0
  13. package/dist/base/ModelTypesGeneratorPlugin/index.d.ts +2 -0
  14. package/dist/base/ModelTypesGeneratorPlugin/index.d.ts.map +1 -0
  15. package/dist/base/ModelTypesGeneratorPlugin/index.js +2 -0
  16. package/dist/base/ModelTypesGeneratorPlugin/index.js.map +1 -0
  17. package/dist/base/ScalarsPlugin/ScalarsPlugin.d.ts +56 -0
  18. package/dist/base/ScalarsPlugin/ScalarsPlugin.d.ts.map +1 -0
  19. package/dist/base/ScalarsPlugin/ScalarsPlugin.js +140 -0
  20. package/dist/base/ScalarsPlugin/ScalarsPlugin.js.map +1 -0
  21. package/dist/base/ScalarsPlugin/index.d.ts +2 -0
  22. package/dist/base/ScalarsPlugin/index.d.ts.map +1 -0
  23. package/dist/base/ScalarsPlugin/index.js +2 -0
  24. package/dist/base/ScalarsPlugin/index.js.map +1 -0
  25. package/dist/base/SchemaGeneratorPlugin.d.ts +1 -1
  26. package/dist/base/SchemaGeneratorPlugin.d.ts.map +1 -1
  27. package/dist/base/SchemaGeneratorPlugin.js +2 -1
  28. package/dist/base/SchemaGeneratorPlugin.js.map +1 -1
  29. package/dist/base/basePreset.d.ts +2 -0
  30. package/dist/base/basePreset.d.ts.map +1 -1
  31. package/dist/base/basePreset.js +12 -1
  32. package/dist/base/basePreset.js.map +1 -1
  33. package/dist/base/index.d.ts +1 -0
  34. package/dist/base/index.d.ts.map +1 -1
  35. package/dist/base/index.js +1 -0
  36. package/dist/base/index.js.map +1 -1
  37. 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;IAkBhC,OAAO,CAAC,kBAAkB;IAoG1B,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"}
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 "int":
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 "id":
195
- return this._createIDLikeFilterInput(inputName, node.name);
196
- default:
197
- return null;
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,2 @@
1
+ export { ModelTypesGeneratorPlugin, modelTypesGeneratorPlugin, } from "./ModelTypesGeneratorPlugin.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -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,2 @@
1
+ export { ModelTypesGeneratorPlugin, modelTypesGeneratorPlugin, } from "./ModelTypesGeneratorPlugin.js";
2
+ //# sourceMappingURL=index.js.map
@@ -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,2 @@
1
+ export { ScalarsPlugin, scalarsPlugin } from "./ScalarsPlugin.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -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,2 @@
1
+ export { ScalarsPlugin, scalarsPlugin } from "./ScalarsPlugin.js";
2
+ //# sourceMappingURL=index.js.map
@@ -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
- generate(): void;
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,QAAQ;CAIhB;AAED,eAAO,MAAM,qBAAqB,+DAA6C,CAAC"}
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
- generate() {
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,QAAQ;QACb,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;IAC1E,CAAC;CACF;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAAmB,CAAC,qBAAqB,CAAC,CAAC"}
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"}
@@ -3,9 +3,11 @@
3
3
  *
4
4
  * Inludes:
5
5
  * - `UtilitiesPlugin`
6
+ * - `ScalarsPlugin`
6
7
  * - `ModelPlugin`
7
8
  * - `RelationsPlugin`
8
9
  * - `SchemaGeneratorPlugin`
10
+ * - `ModelTypesGeneratorPlugin`
9
11
  *
10
12
  * @returns An array of plugin factories for the base plugins.
11
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"basePreset.d.ts","sourceRoot":"","sources":["../../src/base/basePreset.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;GAUG;AAEH,wBAAgB,UAAU,6CAEzB"}
1
+ {"version":3,"file":"basePreset.d.ts","sourceRoot":"","sources":["../../src/base/basePreset.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;GAYG;AAEH,wBAAgB,UAAU,6CASzB"}
@@ -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 [utilsPlugin(), modelPlugin(), relationPlugin(), schemaGeneratorPlugin()];
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;AAEnE;;;;;;;;;;GAUG;AAEH,MAAM,UAAU,UAAU;IACxB,OAAO,CAAC,WAAW,EAAE,EAAE,WAAW,EAAE,EAAE,cAAc,EAAE,EAAE,qBAAqB,EAAE,CAAC,CAAC;AACnF,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"}
@@ -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
@@ -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"}
@@ -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
@@ -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.4",
46
- "@gqlbase/shared": "^0.0.4"
45
+ "@gqlbase/core": "^0.0.6",
46
+ "@gqlbase/shared": "^0.0.6"
47
47
  },
48
48
  "peerDependencies": {
49
49
  "graphql": ">=16"