@schema-hub/zod-graphql-query-builder 0.0.3 → 0.0.4

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "author": "Mathias Schreck <schreck.mathias@gmail.com>",
3
3
  "dependencies": {
4
- "graphql": "16.8.1"
4
+ "graphql": "16.9.0"
5
5
  },
6
6
  "description": "Transforms Zod schemas into GraphQL queries",
7
7
  "engines": {
@@ -27,5 +27,5 @@
27
27
  },
28
28
  "type": "module",
29
29
  "types": "zod-graphql-query-builder/entry-point.d.ts",
30
- "version": "0.0.3"
30
+ "version": "0.0.4"
31
31
  }
package/readme.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # zod-graphql-query-builder
2
2
 
3
- This library transforms a [`zod`](https://github.com/colinhacks/zod) schema into a GraphQL query.
3
+ This library transforms a [`zod`](https://github.com/colinhacks/zod) schema into a GraphQL query or mutation.
4
4
 
5
5
  ## Example
6
6
 
@@ -44,7 +44,7 @@ import { buildGraphqlQuery } from '@schema-hub/zod-graphql-query-builder';
44
44
  import { z } from 'zod';
45
45
 
46
46
  const mySchema = z.object({ foo: z.string() }).strict();
47
- const query = buildGraphqlQuery(mySchema, { queryName: 'MyQuery' });
47
+ const query = buildGraphqlQuery(mySchema, { operationName: 'MyQuery' });
48
48
  ```
49
49
 
50
50
  **Built query:**
@@ -68,7 +68,7 @@ const query = buildGraphqlQuery(mySchema);
68
68
  **Built query:**
69
69
 
70
70
  ```graphql
71
- query MyQuery { foo: bar }
71
+ query { foo: bar }
72
72
  ```
73
73
 
74
74
  ### Defining Field Arguments / Parameters
@@ -126,5 +126,76 @@ const query = buildGraphqlQuery(mySchema);
126
126
  **Built query:**
127
127
 
128
128
  ```graphql
129
- query { foo: { ... on A { __typename, valueA }, ... on B { __typename, valueB } } }
129
+ query { foo { ... on A { __typename, valueA }, ... on B { __typename, valueB } } }
130
+ ```
131
+
132
+ ## Mutations
133
+
134
+ ### Basic Mutation
135
+
136
+ **Input:**
137
+
138
+ ```typescript
139
+ import { buildGraphqlMutation } from '@schema-hub/zod-graphql-query-builder';
140
+ import { z } from 'zod';
141
+
142
+ const mySchema = z.object({ foo: z.string() }).strict();
143
+ const mutation = buildGraphqlMutation(mySchema);
144
+ ```
145
+
146
+ **Built mutation:**
147
+
148
+ ```graphql
149
+ mutation { foo }
150
+ ```
151
+
152
+ ### Mutation with Name
153
+
154
+ **Input:**
155
+
156
+ ```typescript
157
+ import { buildGraphqlMutation } from '@schema-hub/zod-graphql-query-builder';
158
+ import { z } from 'zod';
159
+
160
+ const mySchema = z.object({ foo: z.string() }).strict();
161
+ const mutation = buildGraphqlMutation(mySchema, { operationName: 'MyMutation' });
162
+ ```
163
+
164
+ **Built mutation:**
165
+
166
+ ```graphql
167
+ mutation MyMutation { foo }
168
+ ```
169
+
170
+ ### Mutation with Variables
171
+
172
+ **Input:**
173
+
174
+ ```typescript
175
+ import {
176
+ buildGraphqlMutation,
177
+ enumValue,
178
+ graphqlFieldOptions,
179
+ variablePlaceholder
180
+ } from '@schema-hub/zod-graphql-query-builder';
181
+ import { z } from 'zod';
182
+
183
+ const mySchema = z
184
+ .object({
185
+ foo: graphqlFieldOptions(z.string(), {
186
+ parameters: {
187
+ plainValue: 'plain-string',
188
+ enumParameter: enumValue('foo'),
189
+ variable: variablePlaceholder('$var')
190
+ }
191
+ })
192
+ })
193
+ .strict();
194
+ const mutation = buildGraphqlMutation(mySchema, { variableDefinitions: { $var: 'String!' } });
195
+ ```
196
+
197
+ **Built mutation:**
198
+
199
+ ```graphql
200
+ mutation ($var: String!) { foo(plainValue: "plain-string", enumParameter: foo, variable: $var) }
130
201
  ```
@@ -6,13 +6,14 @@ type GraphqlFieldOptions = {
6
6
  aliasFor?: string;
7
7
  parameters?: Record<string, GraphqlValue>;
8
8
  };
9
- export type QueryOptions = {
10
- queryName?: string | undefined;
9
+ export type OperationOptions = {
10
+ operationName?: string | undefined;
11
11
  variableDefinitions?: VariableDefinitions | undefined;
12
12
  };
13
13
  export type QueryBuilder = {
14
14
  registerFieldOptions: <Schema extends FieldSchema>(schema: Schema, options: GraphqlFieldOptions) => ZodLazy<Schema>;
15
- buildQuery: <Schema extends QuerySchema>(schema: Schema, options?: QueryOptions) => string;
15
+ buildQuery: <Schema extends QuerySchema>(schema: Schema, options?: OperationOptions) => string;
16
+ buildMutation: <Schema extends QuerySchema>(schema: Schema, options?: OperationOptions) => string;
16
17
  };
17
18
  export declare function createQueryBuilder(): QueryBuilder;
18
19
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,OAAO,EAAiB,MAAM,KAAK,CAAC;AACtF,OAAO,EACH,KAAK,WAAW,EAUhB,KAAK,WAAW,EAInB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,YAAY,EAA0B,MAAM,mBAAmB,CAAC;AAE9E,OAAO,EAAgC,KAAK,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AASlG,KAAK,mBAAmB,GAAG;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACvB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,mBAAmB,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;CACzD,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACvB,oBAAoB,EAAE,CAAC,MAAM,SAAS,WAAW,EAC7C,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,mBAAmB,KAC3B,OAAO,CAAC,MAAM,CAAC,CAAC;IACrB,UAAU,EAAE,CAAC,MAAM,SAAS,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,KAAK,MAAM,CAAC;CAC9F,CAAC;AA+CF,wBAAgB,kBAAkB,IAAI,YAAY,CA+IjD"}
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,OAAO,EAAiB,MAAM,KAAK,CAAC;AACtF,OAAO,EACH,KAAK,WAAW,EAUhB,KAAK,WAAW,EAInB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,YAAY,EAA0B,MAAM,mBAAmB,CAAC;AAE9E,OAAO,EAAgC,KAAK,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AASlG,KAAK,mBAAmB,GAAG;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC3B,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,mBAAmB,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;CACzD,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACvB,oBAAoB,EAAE,CAAC,MAAM,SAAS,WAAW,EAC7C,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,mBAAmB,KAC3B,OAAO,CAAC,MAAM,CAAC,CAAC;IACrB,UAAU,EAAE,CAAC,MAAM,SAAS,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,KAAK,MAAM,CAAC;IAC/F,aAAa,EAAE,CAAC,MAAM,SAAS,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,KAAK,MAAM,CAAC;CACrG,CAAC;AA+CF,wBAAgB,kBAAkB,IAAI,YAAY,CA2JjD"}
@@ -119,6 +119,22 @@ export function createQueryBuilder() {
119
119
  }
120
120
  return fieldSelector;
121
121
  }
122
+ function buildDocument(documentType, schema, options) {
123
+ let referencedVariables = new Set();
124
+ const { variableDefinitions = {}, operationName = '' } = options;
125
+ const bodyEntries = [];
126
+ for (const [fieldName, fieldSchema] of Object.entries(schema.shape)) {
127
+ const serializedField = serializeFieldSchema(fieldName, fieldSchema);
128
+ bodyEntries.push(serializedField.serializedValue);
129
+ referencedVariables = new Set([
130
+ ...referencedVariables,
131
+ ...serializedField.referencedVariables
132
+ ]);
133
+ }
134
+ ensureValidVariableCorrelations(variableDefinitions, referencedVariables);
135
+ const operationNameAndParams = withTrailingSpace(`${operationName}${serializeVariableDefinitions(variableDefinitions)}`);
136
+ return `${documentType} ${operationNameAndParams}{ ${bodyEntries.join(', ')} }`;
137
+ }
122
138
  return {
123
139
  registerFieldOptions(schema, options) {
124
140
  const newSchemaInstance = z.lazy(() => {
@@ -128,20 +144,10 @@ export function createQueryBuilder() {
128
144
  return newSchemaInstance;
129
145
  },
130
146
  buildQuery(schema, options = {}) {
131
- let referencedVariables = new Set();
132
- const { variableDefinitions = {}, queryName = '' } = options;
133
- const bodyEntries = [];
134
- for (const [fieldName, fieldSchema] of Object.entries(schema.shape)) {
135
- const serializedField = serializeFieldSchema(fieldName, fieldSchema);
136
- bodyEntries.push(serializedField.serializedValue);
137
- referencedVariables = new Set([
138
- ...referencedVariables,
139
- ...serializedField.referencedVariables
140
- ]);
141
- }
142
- ensureValidVariableCorrelations(variableDefinitions, referencedVariables);
143
- const queryNameAndParams = withTrailingSpace(`${queryName}${serializeVariableDefinitions(variableDefinitions)}`);
144
- return `query ${queryNameAndParams}{ ${bodyEntries.join(', ')} }`;
147
+ return buildDocument('query', schema, options);
148
+ },
149
+ buildMutation(schema, options = {}) {
150
+ return buildDocument('mutation', schema, options);
145
151
  }
146
152
  };
147
153
  }
@@ -1 +1 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,qBAAqB,EAA+B,MAAM,KAAK,CAAC;AACtF,OAAO,EAMH,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EAKnB,iBAAiB,EACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,OAAO,EAAE,+BAA+B,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAAE,4BAA4B,EAA4B,MAAM,0BAA0B,CAAC;AAElG,SAAS,iBAAiB,CAAC,KAAa;IACpC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,OAAO,GAAG,KAAK,GAAG,CAAC;AACvB,CAAC;AAoBD,SAAS,qBAAqB,CAC1B,SAAwD,EACxD,MAA6B;IAE7B,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxD,IAAI,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC;QAC3B,OAAO,aAAa,CAAC;IACzB,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAS,qBAAqB,CAC1B,SAAwD,EACxD,MAAiD;IAEjD,MAAM,CAAC,kBAAkB,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;IAC1C,MAAM,sBAAsB,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IACrE,IAAI,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACpC,OAAO,sBAAsB,CAAC;IAClC,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAS,eAAe,CAAC,MAA0B;IAC/C,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,IAAI,MAAM,YAAY,QAAQ,EAAE,CAAC;QAC7B,OAAO,qBAAqB,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,qBAAqB,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,cAAc,CACnB,MAAyB;IAEzB,IAAI,MAAM,YAAY,qBAAqB,EAAE,CAAC;QAC1C,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,IAAI,MAAM,YAAY,QAAQ,EAAE,CAAC;QAC7B,OAAO,qBAAqB,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,qBAAqB,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,kBAAkB;IAC9B,MAAM,oBAAoB,GAAG,IAAI,OAAO,EAAoC,CAAC;IAE7E,SAAS,wBAAwB,CAAC,MAAmB;QACjD,MAAM,YAAY,GAAG,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtD,OAAO,YAAY,IAAI,EAAE,CAAC;IAC9B,CAAC;IAED,SAAS,uBAAuB,CAAC,SAAiB,EAAE,WAAwB;QACxE,MAAM,YAAY,GAAG,wBAAwB,CAAC,WAAW,CAAC,CAAC;QAC3D,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,YAAY,CAAC;QAE9C,MAAM,YAAY,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,KAAK,QAAQ,EAAE,CAAC;QAEtF,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,uBAAuB,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;YACnE,OAAO;gBACH,eAAe,EAAE,GAAG,YAAY,GAAG,uBAAuB,CAAC,eAAe,EAAE;gBAC5E,mBAAmB,EAAE,uBAAuB,CAAC,mBAAmB;aACnE,CAAC;QACN,CAAC;QAED,OAAO;YACH,eAAe,EAAE,YAAY;YAC7B,mBAAmB,EAAE,IAAI,GAAG,EAAE;SACjC,CAAC;IACN,CAAC;IAED,SAAS,qBAAqB,CAAC,YAA4C;QACvE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC5C,MAAM,iBAAiB,GAAa,EAAE,CAAC;QAEvC,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,OAAO,EAAE,CAAC;YAC7C,gFAAgF;YAChF,MAAM,eAAe,GAAG,oBAAoB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YACrE,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,mBAAmB,EAAE,GAAG,eAAe,CAAC,mBAAmB,CAAC,CAAC,CAAC;YAChG,iBAAiB,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;QAC5D,CAAC;QAED,OAAO;YACH,eAAe,EAAE,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;YACvD,mBAAmB;SACtB,CAAC;IACN,CAAC;IAED,SAAS,kBAAkB,CACvB,YAAsE;QAEtE,IAAI,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC5C,MAAM,mBAAmB,GAAa,EAAE,CAAC;QAEzC,KAAK,MAAM,CAAC,YAAY,EAAE,cAAc,CAAC,IAAI,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;YAClE,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;YACjE,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,mBAAmB,EAAE,GAAG,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,CAAC;YACnG,mBAAmB,CAAC,IAAI,CAAC,UAAU,YAAY,GAAG,kBAAkB,CAAC,eAAe,EAAE,CAAC,CAAC;QAC5F,CAAC;QACD,OAAO;YACH,eAAe,EAAE,MAAM,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;YACzD,mBAAmB;SACtB,CAAC;IACN,CAAC;IAED,SAAS,gCAAgC,CACrC,aAAqC,EACrC,SAAiC;QAEjC,OAAO;YACH,eAAe,EAAE,GAAG,aAAa,CAAC,eAAe,GAAG,SAAS,CAAC,eAAe,EAAE;YAC/E,mBAAmB,EAAE,IAAI,GAAG,CAAC;gBACzB,GAAG,aAAa,CAAC,mBAAmB;gBACpC,GAAG,SAAS,CAAC,mBAAmB;aACnC,CAAC;SACL,CAAC;IACN,CAAC;IAED,wFAAwF;IACxF,SAAS,oBAAoB,CACzB,SAAiB,EACjB,WAAwB;QAExB,MAAM,aAAa,GAAG,uBAAuB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACtE,MAAM,eAAe,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAEvD,IAAI,oBAAoB,CAAC,eAAe,CAAC,EAAE,CAAC;YACxC,MAAM,YAAY,GAAG,eAAe,CAAC,eAAe,CAAC,CAAC;YAEtD,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;gBACxB,OAAO,gCAAgC,CAAC,aAAa,EAAE,qBAAqB,CAAC,YAAY,CAAC,CAAC,CAAC;YAChG,CAAC;QACL,CAAC;QAED,IAAI,mBAAmB,CAAC,eAAe,CAAC,EAAE,CAAC;YACvC,MAAM,WAAW,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;YACpD,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;gBACvB,OAAO,gCAAgC,CACnC,aAAa,EACb,kBAAkB,CACd,WAAW,CAAC,UAAiF,CAChG,CACJ,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO,aAAa,CAAC;IACzB,CAAC;IAED,OAAO;QACH,oBAAoB,CAChB,MAAc,EACd,OAA4B;YAE5B,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;gBAClC,OAAO,MAAM,CAAC;YAClB,CAAC,CAAoB,CAAC;YACtB,oBAAoB,CAAC,GAAG,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;YAErD,OAAO,iBAAiB,CAAC;QAC7B,CAAC;QAED,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,EAAE;YAC3B,IAAI,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;YAC5C,MAAM,EAAE,mBAAmB,GAAG,EAAE,EAAE,SAAS,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;YAC7D,MAAM,WAAW,GAAa,EAAE,CAAC;YAEjC,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClE,MAAM,eAAe,GAAG,oBAAoB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;gBAErE,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;gBAClD,mBAAmB,GAAG,IAAI,GAAG,CAAC;oBAC1B,GAAG,mBAAmB;oBACtB,GAAG,eAAe,CAAC,mBAAmB;iBACzC,CAAC,CAAC;YACP,CAAC;YAED,+BAA+B,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;YAC1E,MAAM,kBAAkB,GAAG,iBAAiB,CACxC,GAAG,SAAS,GAAG,4BAA4B,CAAC,mBAAmB,CAAC,EAAE,CACrE,CAAC;YAEF,OAAO,SAAS,kBAAkB,KAAK,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QACtE,CAAC;KACJ,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/builder.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,8 @@ export declare const graphqlFieldOptions: <Schema extends import("./query-schema
2
2
  aliasFor?: string;
3
3
  parameters?: Record<string, import("./values/value.js").GraphqlValue>;
4
4
  }) => import("zod").ZodLazy<Schema>;
5
- export declare const buildGraphqlQuery: <Schema extends import("./query-schema.js").QuerySchema>(schema: Schema, options?: import("./builder.js").QueryOptions | undefined) => string;
5
+ export declare const buildGraphqlQuery: <Schema extends import("./query-schema.js").QuerySchema>(schema: Schema, options?: import("./builder.js").OperationOptions | undefined) => string;
6
+ export declare const buildGraphqlMutation: <Schema extends import("./query-schema.js").QuerySchema>(schema: Schema, options?: import("./builder.js").OperationOptions | undefined) => string;
6
7
  export { enumValue } from './values/enum.js';
7
8
  export { variablePlaceholder } from './values/variable-placeholder.js';
8
9
  export type { QuerySchema } from './query-schema.js';
@@ -1 +1 @@
1
- {"version":3,"file":"entry-point.d.ts","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/entry-point.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,mBAAmB;;;mCAA+B,CAAC;AAChE,eAAO,MAAM,iBAAiB,+IAAqB,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"entry-point.d.ts","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/entry-point.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,mBAAmB;;;mCAA+B,CAAC;AAChE,eAAO,MAAM,iBAAiB,mJAAqB,CAAC;AACpD,eAAO,MAAM,oBAAoB,mJAAwB,CAAC;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
@@ -2,6 +2,7 @@ import { createQueryBuilder } from './builder.js';
2
2
  const builder = createQueryBuilder();
3
3
  export const graphqlFieldOptions = builder.registerFieldOptions;
4
4
  export const buildGraphqlQuery = builder.buildQuery;
5
+ export const buildGraphqlMutation = builder.buildMutation;
5
6
  export { enumValue } from './values/enum.js';
6
7
  export { variablePlaceholder } from './values/variable-placeholder.js';
7
8
  //# sourceMappingURL=entry-point.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"entry-point.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;AAErC,MAAM,CAAC,MAAM,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;AAChE,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"entry-point.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;AAErC,MAAM,CAAC,MAAM,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;AAChE,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC"}