@schema-hub/zod-graphql-query-builder 0.0.4 → 0.0.5
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 +2 -2
- package/readme.md +8 -8
- package/zod-graphql-query-builder/builder.d.ts.map +1 -1
- package/zod-graphql-query-builder/builder.js +10 -3
- package/zod-graphql-query-builder/builder.js.map +1 -1
- package/zod-graphql-query-builder/entry-point.d.ts +2 -2
- package/zod-graphql-query-builder/entry-point.d.ts.map +1 -1
- package/zod-graphql-query-builder/query-schema.d.ts +5 -0
- package/zod-graphql-query-builder/query-schema.d.ts.map +1 -1
- package/zod-graphql-query-builder/query-schema.js +19 -3
- package/zod-graphql-query-builder/query-schema.js.map +1 -1
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
},
|
|
6
6
|
"description": "Transforms Zod schemas into GraphQL queries",
|
|
7
7
|
"engines": {
|
|
8
|
-
"node": "^20"
|
|
8
|
+
"node": "^20 || ^22"
|
|
9
9
|
},
|
|
10
10
|
"keywords": [
|
|
11
11
|
"graphql",
|
|
@@ -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.
|
|
30
|
+
"version": "0.0.5"
|
|
31
31
|
}
|
package/readme.md
CHANGED
|
@@ -88,9 +88,9 @@ const mySchema = z
|
|
|
88
88
|
.object({
|
|
89
89
|
foo: graphqlFieldOptions(z.string(), {
|
|
90
90
|
parameters: {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
91
|
+
anyParameterAssignedToPlainValue: 'plain-string',
|
|
92
|
+
anyParameterAssignedToEnumValue: enumValue('foo'),
|
|
93
|
+
anyParameterReferencingAVariable: variablePlaceholder('$var')
|
|
94
94
|
}
|
|
95
95
|
})
|
|
96
96
|
})
|
|
@@ -101,7 +101,7 @@ const query = buildGraphqlQuery(mySchema, { variableDefinitions: { $var: 'String
|
|
|
101
101
|
**Built query:**
|
|
102
102
|
|
|
103
103
|
```graphql
|
|
104
|
-
query ($var: String!) { foo(
|
|
104
|
+
query ($var: String!) { foo(anyParameterAssignedToPlainValue: "plain-string", anyParameterAssignedToEnumValue: foo, anyParameterReferencingAVariable: $var) }
|
|
105
105
|
```
|
|
106
106
|
|
|
107
107
|
### Defining Fragments
|
|
@@ -184,9 +184,9 @@ const mySchema = z
|
|
|
184
184
|
.object({
|
|
185
185
|
foo: graphqlFieldOptions(z.string(), {
|
|
186
186
|
parameters: {
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
187
|
+
anyParameterAssignedToPlainValue: 'plain-string',
|
|
188
|
+
anyParameterAssignedToEnumValue: enumValue('foo'),
|
|
189
|
+
anyParameterReferencingAVariable: variablePlaceholder('$var')
|
|
190
190
|
}
|
|
191
191
|
})
|
|
192
192
|
})
|
|
@@ -197,5 +197,5 @@ const mutation = buildGraphqlMutation(mySchema, { variableDefinitions: { $var: '
|
|
|
197
197
|
**Built mutation:**
|
|
198
198
|
|
|
199
199
|
```graphql
|
|
200
|
-
mutation ($var: String!) { foo(
|
|
200
|
+
mutation ($var: String!) { foo(anyParameterAssignedToPlainValue: "plain-string", anyParameterAssignedToEnumValue: foo, anyParameterReferencingAVariable: $var) }
|
|
201
201
|
```
|
|
@@ -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,
|
|
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,EAKnB,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,CAqKjD"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z, ZodArray, ZodDiscriminatedUnion } from 'zod';
|
|
2
|
-
import { isFragmentsSchema, isObjectOrListSchema, isStrictObjectSchema, isUnionOrListSchema, unwrapFieldSchema } from './query-schema.js';
|
|
2
|
+
import { isFragmentsSchema, isObjectOrListSchema, isStrictObjectSchema, isUnionOrListSchema, unwrapFieldSchema, unwrapFieldSchemaChain } from './query-schema.js';
|
|
3
3
|
import { normalizeParameterList } from './values/parameter-list.js';
|
|
4
4
|
import { ensureValidVariableCorrelations } from './variable-correlations.js';
|
|
5
5
|
import { serializeVariableDefinitions } from './variable-definition.js';
|
|
@@ -45,8 +45,15 @@ function getUnionSchema(schema) {
|
|
|
45
45
|
export function createQueryBuilder() {
|
|
46
46
|
const fieldOptionsRegistry = new WeakMap();
|
|
47
47
|
function getFieldOptionsForSchema(schema) {
|
|
48
|
-
const
|
|
49
|
-
|
|
48
|
+
const unwrappingResult = unwrapFieldSchemaChain(schema);
|
|
49
|
+
const queue = [...unwrappingResult.wrapperElements, unwrappingResult.unwrappedSchema];
|
|
50
|
+
for (const currentSchema of queue) {
|
|
51
|
+
const fieldOptions = fieldOptionsRegistry.get(currentSchema);
|
|
52
|
+
if (fieldOptions !== undefined) {
|
|
53
|
+
return fieldOptions;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return {};
|
|
50
57
|
}
|
|
51
58
|
function serializedFieldSelector(fieldName, fieldSchema) {
|
|
52
59
|
const fieldOptions = getFieldOptionsForSchema(fieldSchema);
|
|
@@ -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,
|
|
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,EACjB,sBAAsB,EACzB,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;AAqBD,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,gBAAgB,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,CAAC,GAAG,gBAAgB,CAAC,eAAe,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAC;QAEtF,KAAK,MAAM,aAAa,IAAI,KAAK,EAAE,CAAC;YAChC,MAAM,YAAY,GAAG,oBAAoB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAE7D,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC7B,OAAO,YAAY,CAAC;YACxB,CAAC;QACL,CAAC;QAED,OAAO,EAAE,CAAC;IACd,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,SAAS,aAAa,CAClB,YAAkC,EAClC,MAAc,EACd,OAAyB;QAEzB,IAAI,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC5C,MAAM,EAAE,mBAAmB,GAAG,EAAE,EAAE,aAAa,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;QACjE,MAAM,WAAW,GAAa,EAAE,CAAC;QAEjC,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAClE,MAAM,eAAe,GAAG,oBAAoB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAErE,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;YAClD,mBAAmB,GAAG,IAAI,GAAG,CAAC;gBAC1B,GAAG,mBAAmB;gBACtB,GAAG,eAAe,CAAC,mBAAmB;aACzC,CAAC,CAAC;QACP,CAAC;QAED,+BAA+B,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;QAC1E,MAAM,sBAAsB,GAAG,iBAAiB,CAC5C,GAAG,aAAa,GAAG,4BAA4B,CAAC,mBAAmB,CAAC,EAAE,CACzE,CAAC;QAEF,OAAO,GAAG,YAAY,IAAI,sBAAsB,KAAK,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACpF,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,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;QAED,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,EAAE;YAC9B,OAAO,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;KACJ,CAAC;AACN,CAAC"}
|
|
@@ -2,8 +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").OperationOptions
|
|
6
|
-
export declare const buildGraphqlMutation: <Schema extends import("./query-schema.js").QuerySchema>(schema: Schema, options?: import("./builder.js").OperationOptions
|
|
5
|
+
export declare const buildGraphqlQuery: <Schema extends import("./query-schema.js").QuerySchema>(schema: Schema, options?: import("./builder.js").OperationOptions) => string;
|
|
6
|
+
export declare const buildGraphqlMutation: <Schema extends import("./query-schema.js").QuerySchema>(schema: Schema, options?: import("./builder.js").OperationOptions) => string;
|
|
7
7
|
export { enumValue } from './values/enum.js';
|
|
8
8
|
export { variablePlaceholder } from './values/variable-placeholder.js';
|
|
9
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,
|
|
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,uIAAqB,CAAC;AACpD,eAAO,MAAM,oBAAoB,uIAAwB,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"}
|
|
@@ -16,6 +16,11 @@ export type FieldShape = {
|
|
|
16
16
|
export type NonWrappedFieldSchema = PrimitiveSchema | StrictObjectSchema<FieldShape> | ZodArray<FieldSchema> | ZodDiscriminatedUnion<'__typename', FragmentUnionOptionSchema[]> | ZodTuple<[FieldSchema, ...FieldSchema[]]>;
|
|
17
17
|
export type WrappedFieldSchema = EffectSchema<FieldSchema> | ZodLazy<FieldSchema> | ZodNullable<FieldSchema>;
|
|
18
18
|
export type FieldSchema = NonWrappedFieldSchema | WrappedFieldSchema;
|
|
19
|
+
type UnwrappedChainResult = {
|
|
20
|
+
unwrappedSchema: NonWrappedFieldSchema;
|
|
21
|
+
wrapperElements: WrappedFieldSchema[];
|
|
22
|
+
};
|
|
23
|
+
export declare function unwrapFieldSchemaChain(parent: FieldSchema): UnwrappedChainResult;
|
|
19
24
|
export declare function unwrapFieldSchema(parent: FieldSchema): NonWrappedFieldSchema;
|
|
20
25
|
type QueryShape = Record<string, FieldSchema>;
|
|
21
26
|
export type QuerySchema = StrictObjectSchema<QueryShape>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-schema.d.ts","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/query-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,QAAQ,EACR,KAAK,UAAU,EACf,qBAAqB,EACrB,UAAU,EACV,OAAO,EACP,KAAK,UAAU,EACf,KAAK,OAAO,EACZ,WAAW,EACX,KAAK,SAAS,EACd,SAAS,EACT,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,QAAQ,EACR,KAAK,UAAU,EAClB,MAAM,KAAK,CAAC;AAGb,MAAM,WAAW,kBAAkB,CAAC,KAAK,SAAS,WAAW,CACzD,SAAQ,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC;CAAG;AAExE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,kBAAkB,CAAC,UAAU,CAAC,CAE9F;AAGD,UAAU,YAAY,CAAC,MAAM,SAAS,UAAU,CAAE,SAAQ,UAAU,CAAC,MAAM,CAAC;CAAG;AAE/E,KAAK,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;AAChF,KAAK,eAAe,GAAG,aAAa,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AAEpF,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;AAEhE,MAAM,CAAC,OAAO,MAAM,yBAAyB,GAAG,SAAS,CACnD,UAAU,GACV;IACE,UAAU,EAAE,eAAe,CAAC;CAC/B,EACD,QAAQ,CACX,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,WAAW,CAAC;CAAE,CAAC;AACxE,MAAM,MAAM,qBAAqB,GAC3B,eAAe,GACf,kBAAkB,CAAC,UAAU,CAAC,GAC9B,QAAQ,CAAC,WAAW,CAAC,GACrB,qBAAqB,CAAC,YAAY,EAAE,yBAAyB,EAAE,CAAC,GAChE,QAAQ,CAAC,CAAC,WAAW,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC;AAChD,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;AAC7G,MAAM,MAAM,WAAW,GAAG,qBAAqB,GAAG,kBAAkB,CAAC;AAMrE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,qBAAqB,
|
|
1
|
+
{"version":3,"file":"query-schema.d.ts","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/query-schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,14 @@ export function isStrictObjectSchema(schema) {
|
|
|
5
5
|
function isWrappedFieldSchema(schema) {
|
|
6
6
|
return schema instanceof ZodLazy || schema instanceof ZodEffects || schema instanceof ZodNullable;
|
|
7
7
|
}
|
|
8
|
-
|
|
8
|
+
function recursiveUnwrapFieldSchemaChain(parent, currentChain) {
|
|
9
9
|
let unwrapped = parent;
|
|
10
|
+
if (!isWrappedFieldSchema(parent)) {
|
|
11
|
+
return {
|
|
12
|
+
unwrappedSchema: parent,
|
|
13
|
+
wrapperElements: currentChain
|
|
14
|
+
};
|
|
15
|
+
}
|
|
10
16
|
if (parent instanceof ZodLazy) {
|
|
11
17
|
unwrapped = parent.schema;
|
|
12
18
|
}
|
|
@@ -17,9 +23,19 @@ export function unwrapFieldSchema(parent) {
|
|
|
17
23
|
unwrapped = parent.unwrap();
|
|
18
24
|
}
|
|
19
25
|
if (isWrappedFieldSchema(unwrapped)) {
|
|
20
|
-
return
|
|
26
|
+
return recursiveUnwrapFieldSchemaChain(unwrapped, [...currentChain, parent]);
|
|
21
27
|
}
|
|
22
|
-
return
|
|
28
|
+
return {
|
|
29
|
+
unwrappedSchema: unwrapped,
|
|
30
|
+
wrapperElements: [...currentChain, parent]
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
export function unwrapFieldSchemaChain(parent) {
|
|
34
|
+
return recursiveUnwrapFieldSchemaChain(parent, []);
|
|
35
|
+
}
|
|
36
|
+
export function unwrapFieldSchema(parent) {
|
|
37
|
+
const result = unwrapFieldSchemaChain(parent);
|
|
38
|
+
return result.unwrappedSchema;
|
|
23
39
|
}
|
|
24
40
|
export function isObjectOrListSchema(schema) {
|
|
25
41
|
return isStrictObjectSchema(schema) || schema instanceof ZodArray || schema instanceof ZodTuple;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-schema.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/query-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,QAAQ,EAER,qBAAqB,EACrB,UAAU,EACV,OAAO,EAGP,WAAW,EAEX,SAAS,EAGT,QAAQ,EAEX,MAAM,KAAK,CAAC;AAMb,MAAM,UAAU,oBAAoB,CAAC,MAAe;IAChD,OAAO,MAAM,YAAY,SAAS,CAAC;AACvC,CAAC;AA4BD,SAAS,oBAAoB,CAAC,MAAmB;IAC7C,OAAO,MAAM,YAAY,OAAO,IAAI,MAAM,YAAY,UAAU,IAAI,MAAM,YAAY,WAAW,CAAC;AACtG,CAAC;
|
|
1
|
+
{"version":3,"file":"query-schema.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/query-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,QAAQ,EAER,qBAAqB,EACrB,UAAU,EACV,OAAO,EAGP,WAAW,EAEX,SAAS,EAGT,QAAQ,EAEX,MAAM,KAAK,CAAC;AAMb,MAAM,UAAU,oBAAoB,CAAC,MAAe;IAChD,OAAO,MAAM,YAAY,SAAS,CAAC;AACvC,CAAC;AA4BD,SAAS,oBAAoB,CAAC,MAAmB;IAC7C,OAAO,MAAM,YAAY,OAAO,IAAI,MAAM,YAAY,UAAU,IAAI,MAAM,YAAY,WAAW,CAAC;AACtG,CAAC;AAOD,SAAS,+BAA+B,CACpC,MAAmB,EACnB,YAAkC;IAElC,IAAI,SAAS,GAAgB,MAAM,CAAC;IAEpC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,OAAO;YACH,eAAe,EAAE,MAAM;YACvB,eAAe,EAAE,YAAY;SAChC,CAAC;IACN,CAAC;IAED,IAAI,MAAM,YAAY,OAAO,EAAE,CAAC;QAC5B,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9B,CAAC;SAAM,IAAI,MAAM,YAAY,UAAU,EAAE,CAAC;QACtC,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;IACnC,CAAC;SAAM,IAAI,MAAM,YAAY,WAAW,EAAE,CAAC;QACvC,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;IAChC,CAAC;IAED,IAAI,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,OAAO,+BAA+B,CAAC,SAAS,EAAE,CAAC,GAAG,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,OAAO;QACH,eAAe,EAAE,SAAS;QAC1B,eAAe,EAAE,CAAC,GAAG,YAAY,EAAE,MAAM,CAAC;KAC7C,CAAC;AACN,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAmB;IACtD,OAAO,+BAA+B,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,MAAmB;IACjD,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC9C,OAAO,MAAM,CAAC,eAAe,CAAC;AAClC,CAAC;AAUD,MAAM,UAAU,oBAAoB,CAAC,MAAmB;IACpD,OAAO,oBAAoB,CAAC,MAAM,CAAC,IAAI,MAAM,YAAY,QAAQ,IAAI,MAAM,YAAY,QAAQ,CAAC;AACpG,CAAC;AAID,MAAM,UAAU,iBAAiB,CAAC,MAAmB;IACjD,OAAO,MAAM,YAAY,qBAAqB,CAAC;AACnD,CAAC;AAID,MAAM,UAAU,mBAAmB,CAAC,MAAmB;IACnD,OAAO,iBAAiB,CAAC,MAAM,CAAC,IAAI,MAAM,YAAY,QAAQ,IAAI,MAAM,YAAY,QAAQ,CAAC;AACjG,CAAC"}
|