@schema-hub/zod-graphql-query-builder 0.0.13 → 0.0.15
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 +17 -6
- package/readme.md +80 -2
- package/sbom.cdx.json +67 -0
- package/zod-graphql-query-builder/build-context.js +11 -0
- package/zod-graphql-query-builder/build-context.js.map +1 -0
- package/zod-graphql-query-builder/builder.d.ts +5 -16
- package/zod-graphql-query-builder/builder.d.ts.map +1 -1
- package/zod-graphql-query-builder/builder.js +21 -161
- package/zod-graphql-query-builder/builder.js.map +1 -1
- package/zod-graphql-query-builder/custom-scalar.d.ts +1 -2
- package/zod-graphql-query-builder/custom-scalar.d.ts.map +1 -1
- package/zod-graphql-query-builder/custom-scalar.js +3 -3
- package/zod-graphql-query-builder/custom-scalar.js.map +1 -1
- package/zod-graphql-query-builder/entry-point.d.ts +7 -10
- package/zod-graphql-query-builder/entry-point.d.ts.map +1 -1
- package/zod-graphql-query-builder/entry-point.js +4 -4
- package/zod-graphql-query-builder/fragment-definitions.js +15 -0
- package/zod-graphql-query-builder/fragment-definitions.js.map +1 -0
- package/zod-graphql-query-builder/query-schema.d.ts +65 -29
- package/zod-graphql-query-builder/query-schema.d.ts.map +1 -1
- package/zod-graphql-query-builder/query-schema.js +26 -32
- package/zod-graphql-query-builder/query-schema.js.map +1 -1
- package/zod-graphql-query-builder/root-shape.js +7 -0
- package/zod-graphql-query-builder/root-shape.js.map +1 -0
- package/zod-graphql-query-builder/serializer.js +312 -0
- package/zod-graphql-query-builder/serializer.js.map +1 -0
- package/zod-graphql-query-builder/type-name.d.ts +8 -0
- package/zod-graphql-query-builder/type-name.d.ts.map +1 -0
- package/zod-graphql-query-builder/type-name.js +45 -0
- package/zod-graphql-query-builder/type-name.js.map +1 -0
- package/zod-graphql-query-builder/values/enum.d.ts +0 -1
- package/zod-graphql-query-builder/values/enum.d.ts.map +1 -1
- package/zod-graphql-query-builder/values/enum.js +2 -2
- package/zod-graphql-query-builder/values/parameter-list.js +10 -4
- package/zod-graphql-query-builder/values/parameter-list.js.map +1 -1
- package/zod-graphql-query-builder/values/value.d.ts +4 -9
- package/zod-graphql-query-builder/values/value.d.ts.map +1 -1
- package/zod-graphql-query-builder/values/value.js +13 -7
- package/zod-graphql-query-builder/values/value.js.map +1 -1
- package/zod-graphql-query-builder/values/variable-placeholder.d.ts +0 -2
- package/zod-graphql-query-builder/values/variable-placeholder.d.ts.map +1 -1
- package/zod-graphql-query-builder/values/variable-placeholder.js +1 -1
- package/zod-graphql-query-builder/values/variable-set.js +4 -0
- package/zod-graphql-query-builder/values/variable-set.js.map +1 -0
- package/zod-graphql-query-builder/variable-correlations.js.map +1 -1
- package/zod-graphql-query-builder/variable-definition.d.ts +1 -2
- package/zod-graphql-query-builder/variable-definition.d.ts.map +1 -1
- package/zod-graphql-query-builder/variable-definition.js +6 -3
- package/zod-graphql-query-builder/variable-definition.js.map +1 -1
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/* eslint-disable no-underscore-dangle -- we need to access _zod */
|
|
2
|
+
import { $ZodLiteral } from 'zod/v4/core';
|
|
3
|
+
import { unwrapFieldSchema } from "./query-schema.js";
|
|
4
|
+
import { isValidGraphqlName } from "./values/name.js";
|
|
5
|
+
function extractLiteralStringValue(schema) {
|
|
6
|
+
const unwrapped = unwrapFieldSchema(schema);
|
|
7
|
+
if (!(unwrapped instanceof $ZodLiteral)) {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
const { values } = unwrapped._zod.def;
|
|
11
|
+
if (values.length !== 1) {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
const [value] = values;
|
|
15
|
+
if (typeof value !== 'string') {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
return value;
|
|
19
|
+
}
|
|
20
|
+
function inferTypeNameFromShape(schema) {
|
|
21
|
+
const typenameField = schema._zod.def.shape.__typename;
|
|
22
|
+
if (typenameField === undefined) {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
const value = extractLiteralStringValue(typenameField);
|
|
26
|
+
if (value === null || !isValidGraphqlName(value)) {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
return value;
|
|
30
|
+
}
|
|
31
|
+
function assertNoTypeNameConflict(explicit, inferred) {
|
|
32
|
+
if (explicit === null || inferred === null || explicit === inferred) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
const prefix = `Conflicting GraphQL type name for schema: registered as "${explicit}" but `;
|
|
36
|
+
const suffix = `\`__typename\` literal is "${inferred}".`;
|
|
37
|
+
throw new Error(prefix + suffix);
|
|
38
|
+
}
|
|
39
|
+
export function resolveTypeName(registry, schema) {
|
|
40
|
+
const explicit = registry.get(schema)?.typeName ?? null;
|
|
41
|
+
const inferred = inferTypeNameFromShape(schema);
|
|
42
|
+
assertNoTypeNameConflict(explicit, inferred);
|
|
43
|
+
return explicit ?? inferred;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=type-name.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type-name.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/type-name.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAIH,iBAAiB,EACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAWtD,SAAS,yBAAyB,CAAC,MAAmB;IAClD,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,CAAC,SAAS,YAAY,WAAW,CAAC,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;IACtC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,CAAE,KAAK,CAAE,GAAG,MAAM,CAAC;IACzB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAsC;IAClE,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC;IACvD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,KAAK,GAAG,yBAAyB,CAAC,aAAa,CAAC,CAAC;IACvD,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,wBAAwB,CAAC,QAAuB,EAAE,QAAuB;IAC9E,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAClE,OAAO;IACX,CAAC;IACD,MAAM,MAAM,GAAG,4DAA4D,QAAQ,QAAQ,CAAC;IAC5F,MAAM,MAAM,GAAG,8BAA8B,QAAQ,IAAI,CAAC;IAC1D,MAAM,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,eAAe,CAC3B,QAA8B,EAC9B,MAAsC;IAEtC,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,QAAQ,IAAI,IAAI,CAAC;IACxD,MAAM,QAAQ,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAChD,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC7C,OAAO,QAAQ,IAAI,QAAQ,CAAC;AAChC,CAAC"}
|
|
@@ -2,6 +2,5 @@ export type GraphqlEnumValue = {
|
|
|
2
2
|
readonly enumValue: string;
|
|
3
3
|
readonly tag: symbol;
|
|
4
4
|
};
|
|
5
|
-
export declare function isEnumValue(value: unknown): value is GraphqlEnumValue;
|
|
6
5
|
export declare function enumValue(value: string): GraphqlEnumValue;
|
|
7
6
|
//# sourceMappingURL=enum.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enum.d.ts","sourceRoot":"","sources":["../../../../../source/zod-graphql-query-builder/values/enum.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACxB
|
|
1
|
+
{"version":3,"file":"enum.d.ts","sourceRoot":"","sources":["../../../../../source/zod-graphql-query-builder/values/enum.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACxB;AAQD,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { isValidGraphqlName } from
|
|
2
|
-
import { hasProperty, isRecord } from
|
|
1
|
+
import { isValidGraphqlName } from "./name.js";
|
|
2
|
+
import { hasProperty, isRecord } from "./record.js";
|
|
3
3
|
const enumValueSymbol = Symbol('GraphQL enum value');
|
|
4
4
|
export function isEnumValue(value) {
|
|
5
5
|
return isRecord(value) && hasProperty(value, 'tag') && value.tag === enumValueSymbol;
|
|
@@ -1,15 +1,21 @@
|
|
|
1
|
-
import { isValidGraphqlName } from
|
|
2
|
-
import { normalizeGraphqlValue } from
|
|
1
|
+
import { isValidGraphqlName } from "./name.js";
|
|
2
|
+
import { normalizeGraphqlValue } from "./value.js";
|
|
3
|
+
import { mergeVariables } from "./variable-set.js";
|
|
3
4
|
export function normalizeParameterList(parameters) {
|
|
4
5
|
let referencedVariables = new Set();
|
|
5
6
|
const serializedParameters = [];
|
|
6
|
-
|
|
7
|
+
const sortedEntries = Object
|
|
8
|
+
.entries(parameters)
|
|
9
|
+
.toSorted(function ([nameA], [nameB]) {
|
|
10
|
+
return nameA.localeCompare(nameB);
|
|
11
|
+
});
|
|
12
|
+
for (const [parameterName, parameterValue] of sortedEntries) {
|
|
7
13
|
if (!isValidGraphqlName(parameterName)) {
|
|
8
14
|
throw new Error(`Parameter name "${parameterName}" is not a valid GraphQL parameter name`);
|
|
9
15
|
}
|
|
10
16
|
const normalizedParameterValue = normalizeGraphqlValue(parameterValue);
|
|
11
17
|
serializedParameters.push(`${parameterName}: ${normalizedParameterValue.serializedValue}`);
|
|
12
|
-
referencedVariables =
|
|
18
|
+
referencedVariables = mergeVariables(referencedVariables, normalizedParameterValue.referencedVariables);
|
|
13
19
|
}
|
|
14
20
|
return {
|
|
15
21
|
serializedValue: serializedParameters.length > 0 ? `(${serializedParameters.join(', ')})` : '',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parameter-list.js","sourceRoot":"","sources":["../../../../../source/zod-graphql-query-builder/values/parameter-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAkD,qBAAqB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"parameter-list.js","sourceRoot":"","sources":["../../../../../source/zod-graphql-query-builder/values/parameter-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAkD,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,UAAU,sBAAsB,CAAC,UAAkD;IACrF,IAAI,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC5C,MAAM,oBAAoB,GAAa,EAAE,CAAC;IAE1C,MAAM,aAAa,GAAG,MAAM;SACvB,OAAO,CAAC,UAAU,CAAC;SACnB,QAAQ,CAAC,UAAU,CAAE,KAAK,CAAE,EAAE,CAAE,KAAK,CAAE;QACpC,OAAO,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEP,KAAK,MAAM,CAAE,aAAa,EAAE,cAAc,CAAE,IAAI,aAAa,EAAE,CAAC;QAC5D,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,mBAAmB,aAAa,yCAAyC,CAAC,CAAC;QAC/F,CAAC;QAED,MAAM,wBAAwB,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;QACvE,oBAAoB,CAAC,IAAI,CAAC,GAAG,aAAa,KAAK,wBAAwB,CAAC,eAAe,EAAE,CAAC,CAAC;QAC3F,mBAAmB,GAAG,cAAc,CAAC,mBAAmB,EAAE,wBAAwB,CAAC,mBAAmB,CAAC,CAAC;IAC5G,CAAC;IAED,OAAO;QACH,eAAe,EAAE,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QAC9F,mBAAmB;KACtB,CAAC;AACN,CAAC"}
|
|
@@ -1,14 +1,9 @@
|
|
|
1
|
-
import { type GraphqlEnumValue } from './enum.
|
|
2
|
-
import { type GraphqlVariablePlaceholder } from './variable-placeholder.
|
|
1
|
+
import { type GraphqlEnumValue } from './enum.ts';
|
|
2
|
+
import { type GraphqlVariablePlaceholder } from './variable-placeholder.ts';
|
|
3
3
|
type GraphqlObjectValue = {
|
|
4
|
-
[Key: string]: GraphqlValue;
|
|
4
|
+
readonly [Key: string]: GraphqlValue;
|
|
5
5
|
};
|
|
6
6
|
type GraphqlPrimitiveValue = boolean | number | string | null;
|
|
7
|
-
export type GraphqlValue = GraphqlEnumValue | GraphqlObjectValue | GraphqlPrimitiveValue | GraphqlValue[]
|
|
8
|
-
export type NormalizedGraphqlValue = {
|
|
9
|
-
serializedValue: string;
|
|
10
|
-
referencedVariables: Set<string>;
|
|
11
|
-
};
|
|
12
|
-
export declare function normalizeGraphqlValue(value: GraphqlValue): NormalizedGraphqlValue;
|
|
7
|
+
export type GraphqlValue = GraphqlEnumValue | GraphqlObjectValue | GraphqlPrimitiveValue | GraphqlVariablePlaceholder | readonly GraphqlValue[];
|
|
13
8
|
export {};
|
|
14
9
|
//# sourceMappingURL=value.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"value.d.ts","sourceRoot":"","sources":["../../../../../source/zod-graphql-query-builder/values/value.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAe,MAAM,WAAW
|
|
1
|
+
{"version":3,"file":"value.d.ts","sourceRoot":"","sources":["../../../../../source/zod-graphql-query-builder/values/value.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAe,MAAM,WAAW;AAG9D,OAAO,EAAE,KAAK,0BAA0B,EAAyB,MAAM,2BAA2B;AAGlG,KAAK,kBAAkB,GAAG;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,CAAC;CAAE;AAMnE,KAAK,qBAAqB,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI;AAO7D,MAAM,MAAM,YAAY,GAClB,gBAAgB,GAChB,kBAAkB,GAClB,qBAAqB,GACrB,0BAA0B,GAC1B,SAAS,YAAY,EAAE"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { isEnumValue } from
|
|
2
|
-
import { isValidGraphqlName } from
|
|
3
|
-
import { isRecord } from
|
|
4
|
-
import { isVariablePlaceholder } from
|
|
1
|
+
import { isEnumValue } from "./enum.js";
|
|
2
|
+
import { isValidGraphqlName } from "./name.js";
|
|
3
|
+
import { isRecord } from "./record.js";
|
|
4
|
+
import { isVariablePlaceholder } from "./variable-placeholder.js";
|
|
5
|
+
import { mergeVariables } from "./variable-set.js";
|
|
5
6
|
function isObjectValue(value) {
|
|
6
7
|
return isRecord(value) && !isEnumValue(value) && !isVariablePlaceholder(value);
|
|
7
8
|
}
|
|
@@ -15,14 +16,19 @@ function serializePrimitiveValue(value) {
|
|
|
15
16
|
function normalizeObjectValue(value) {
|
|
16
17
|
let referencedVariables = new Set();
|
|
17
18
|
const serializedFields = [];
|
|
18
|
-
|
|
19
|
+
const sortedEntries = Object
|
|
20
|
+
.entries(value)
|
|
21
|
+
.toSorted(function ([nameA], [nameB]) {
|
|
22
|
+
return nameA.localeCompare(nameB);
|
|
23
|
+
});
|
|
24
|
+
for (const [fieldName, fieldValue] of sortedEntries) {
|
|
19
25
|
if (!isValidGraphqlName(fieldName)) {
|
|
20
26
|
throw new Error(`Field name "${fieldName}" is not a valid GraphQL field name`);
|
|
21
27
|
}
|
|
22
28
|
// eslint-disable-next-line @typescript-eslint/no-use-before-define -- mutual recursion
|
|
23
29
|
const normalizedFieldValue = normalizeGraphqlValue(fieldValue);
|
|
24
30
|
serializedFields.push(`${fieldName}: ${normalizedFieldValue.serializedValue}`);
|
|
25
|
-
referencedVariables =
|
|
31
|
+
referencedVariables = mergeVariables(referencedVariables, normalizedFieldValue.referencedVariables);
|
|
26
32
|
}
|
|
27
33
|
return {
|
|
28
34
|
serializedValue: `{${serializedFields.join(', ')}}`,
|
|
@@ -36,7 +42,7 @@ function normalizeListValue(value) {
|
|
|
36
42
|
// eslint-disable-next-line @typescript-eslint/no-use-before-define -- mutual recursion
|
|
37
43
|
const normalizedItem = normalizeGraphqlValue(item);
|
|
38
44
|
serializedItems.push(normalizedItem.serializedValue);
|
|
39
|
-
referencedVariables =
|
|
45
|
+
referencedVariables = mergeVariables(referencedVariables, normalizedItem.referencedVariables);
|
|
40
46
|
}
|
|
41
47
|
return {
|
|
42
48
|
serializedValue: `[${serializedItems.join(', ')}]`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"value.js","sourceRoot":"","sources":["../../../../../source/zod-graphql-query-builder/values/value.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,WAAW,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAmC,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"value.js","sourceRoot":"","sources":["../../../../../source/zod-graphql-query-builder/values/value.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,5 @@ export type GraphqlVariablePlaceholder = {
|
|
|
2
2
|
readonly variableName: string;
|
|
3
3
|
readonly tag: symbol;
|
|
4
4
|
};
|
|
5
|
-
export declare function isVariablePlaceholder(value: unknown): value is GraphqlVariablePlaceholder;
|
|
6
|
-
export declare function isValidVariableIdentifier(value: string): boolean;
|
|
7
5
|
export declare function variablePlaceholder(variableName: string): GraphqlVariablePlaceholder;
|
|
8
6
|
//# sourceMappingURL=variable-placeholder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variable-placeholder.d.ts","sourceRoot":"","sources":["../../../../../source/zod-graphql-query-builder/values/variable-placeholder.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,0BAA0B,GAAG;IACrC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACxB
|
|
1
|
+
{"version":3,"file":"variable-placeholder.d.ts","sourceRoot":"","sources":["../../../../../source/zod-graphql-query-builder/values/variable-placeholder.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,0BAA0B,GAAG;IACrC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACxB;AAcD,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,0BAA0B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { hasProperty, isRecord } from
|
|
1
|
+
import { hasProperty, isRecord } from "./record.js";
|
|
2
2
|
const variablePlaceholderSymbol = Symbol('GraphQL Variable Placeholder');
|
|
3
3
|
export function isVariablePlaceholder(value) {
|
|
4
4
|
return isRecord(value) && hasProperty(value, 'tag') && value.tag === variablePlaceholderSymbol;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variable-set.js","sourceRoot":"","sources":["../../../../../source/zod-graphql-query-builder/values/variable-set.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,cAAc,CAAC,KAA0B,EAAE,MAA2B;IAClF,OAAO,IAAI,GAAG,CAAC,CAAE,GAAG,KAAK,EAAE,GAAG,MAAM,CAAE,CAAC,CAAC;AAC5C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variable-correlations.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/variable-correlations.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,+BAA+B,CAC3C,mBAAwC,EACxC,
|
|
1
|
+
{"version":3,"file":"variable-correlations.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/variable-correlations.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,+BAA+B,CAC3C,mBAAwC,EACxC,mBAAwC;IAExC,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAE5E,KAAK,MAAM,kBAAkB,IAAI,mBAAmB,EAAE,CAAC;QACnD,yBAAyB,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,KAAK,CAAC,wBAAwB,kBAAkB,qCAAqC,CAAC,CAAC;QACrG,CAAC;IACL,CAAC;IAED,MAAM,CAAE,mBAAmB,CAAE,GAAG,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACtE,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,4BAA4B,mBAAmB,uBAAuB,CAAC,CAAC;IAC5F,CAAC;AACL,CAAC"}
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
export type VariableDefinitions = Record<string, string
|
|
2
|
-
export declare function serializeVariableDefinitions(definitions: VariableDefinitions): string;
|
|
1
|
+
export type VariableDefinitions = Readonly<Record<string, string>>;
|
|
3
2
|
//# sourceMappingURL=variable-definition.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variable-definition.d.ts","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/variable-definition.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC
|
|
1
|
+
{"version":3,"file":"variable-definition.d.ts","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/variable-definition.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { isValidVariableIdentifier } from
|
|
2
|
-
import { isValidGraphqlType } from
|
|
1
|
+
import { isValidVariableIdentifier } from "./values/variable-placeholder.js";
|
|
2
|
+
import { isValidGraphqlType } from "./variable-type.js";
|
|
3
3
|
function ensureValidVariableDefinition(variableDefinition) {
|
|
4
4
|
const [variableName, variableType] = variableDefinition;
|
|
5
5
|
if (!isValidVariableIdentifier(variableName)) {
|
|
@@ -19,7 +19,10 @@ export function serializeVariableDefinitions(definitions) {
|
|
|
19
19
|
return '';
|
|
20
20
|
}
|
|
21
21
|
entries.forEach(ensureValidVariableDefinition);
|
|
22
|
-
const
|
|
22
|
+
const sortedEntries = entries.toSorted(function ([nameA], [nameB]) {
|
|
23
|
+
return nameA.localeCompare(nameB);
|
|
24
|
+
});
|
|
25
|
+
const serializedEntries = sortedEntries.map(serializeVariableDefinitionPair);
|
|
23
26
|
return `(${serializedEntries.join(', ')})`;
|
|
24
27
|
}
|
|
25
28
|
//# sourceMappingURL=variable-definition.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variable-definition.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/variable-definition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAMxD,SAAS,6BAA6B,CAAC,kBAA0C;IAC7E,MAAM,
|
|
1
|
+
{"version":3,"file":"variable-definition.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/variable-definition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAMxD,SAAS,6BAA6B,CAAC,kBAA0C;IAC7E,MAAM,CAAE,YAAY,EAAE,YAAY,CAAE,GAAG,kBAAkB,CAAC;IAE1D,IAAI,CAAC,yBAAyB,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,kBAAkB,YAAY,wCAAwC,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,SAAS,YAAY,mBAAmB,YAAY,cAAc,CAAC,CAAC;IACxF,CAAC;AACL,CAAC;AAED,SAAS,+BAA+B,CAAC,kBAA0C;IAC/E,MAAM,CAAE,YAAY,EAAE,YAAY,CAAE,GAAG,kBAAkB,CAAC;IAC1D,OAAO,GAAG,YAAY,KAAK,YAAY,EAAE,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,WAAgC;IACzE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAE5C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,CAAC;IACd,CAAC;IAED,OAAO,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;IAC/C,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAE,KAAK,CAAE,EAAE,CAAE,KAAK,CAAE;QACjE,OAAO,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IACH,MAAM,iBAAiB,GAAG,aAAa,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAE7E,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAC/C,CAAC"}
|