@luvio/compiler 0.121.0 → 0.121.1-242.2
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/dist/codegen/graphql/interface/index.d.ts +1 -1
- package/dist/codegen/graphql/interface/index.js +10 -8
- package/dist/codegen/graphql/interface/index.js.map +1 -1
- package/dist/codegen/graphql/type/constants.d.ts +7 -3
- package/dist/codegen/graphql/type/constants.js +9 -5
- package/dist/codegen/graphql/type/constants.js.map +1 -1
- package/dist/codegen/graphql/type/fragment-type.d.ts +4 -0
- package/dist/codegen/graphql/type/fragment-type.js +20 -0
- package/dist/codegen/graphql/type/fragment-type.js.map +1 -0
- package/dist/codegen/graphql/type/generateTypeUtil.js +142 -46
- package/dist/codegen/graphql/type/generateTypeUtil.js.map +1 -1
- package/dist/codegen/graphql/type/index.js +4 -2
- package/dist/codegen/graphql/type/index.js.map +1 -1
- package/dist/codegen/graphql/type/ingest-field-by-type.d.ts +2 -2
- package/dist/codegen/graphql/type/ingest-field-by-type.js +13 -8
- package/dist/codegen/graphql/type/ingest-field-by-type.js.map +1 -1
- package/dist/codegen/graphql/type/ingest.js +18 -3
- package/dist/codegen/graphql/type/ingest.js.map +1 -1
- package/dist/codegen/graphql/type/interface.d.ts +2 -2
- package/dist/codegen/graphql/type/interface.js +3 -8
- package/dist/codegen/graphql/type/interface.js.map +1 -1
- package/dist/codegen/graphql/type/key.d.ts +2 -2
- package/dist/codegen/graphql/type/key.js +1 -1
- package/dist/codegen/graphql/type/key.js.map +1 -1
- package/dist/codegen/graphql/type/minimumFields.d.ts +6 -0
- package/dist/codegen/graphql/type/minimumFields.js +68 -0
- package/dist/codegen/graphql/type/minimumFields.js.map +1 -0
- package/dist/codegen/graphql/type/select.js +10 -5
- package/dist/codegen/graphql/type/select.js.map +1 -1
- package/dist/codegen/graphql/type/type-from-field.d.ts +2 -2
- package/dist/codegen/graphql/type/type-from-field.js.map +1 -1
- package/dist/codegen/graphql/union/index.d.ts +1 -1
- package/dist/codegen/graphql/union/index.js +12 -6
- package/dist/codegen/graphql/union/index.js.map +1 -1
- package/dist/codegen/graphql/utils/types.d.ts +3 -3
- package/dist/codegen/graphql/utils/types.js +3 -0
- package/dist/codegen/graphql/utils/types.js.map +1 -1
- package/dist/codegen/shape/graphql/shape-cache-keys.js +2 -6
- package/dist/codegen/shape/graphql/shape-cache-keys.js.map +1 -1
- package/dist/codegen/shape/graphql/shape-ingest.js +2 -6
- package/dist/codegen/shape/graphql/shape-ingest.js.map +1 -1
- package/dist/codegen/shared/constants.d.ts +1 -0
- package/dist/codegen/shared/constants.js +2 -1
- package/dist/codegen/shared/constants.js.map +1 -1
- package/package.json +6 -5
- package/dist/codegen/graphql/interface/query-transformer.d.ts +0 -5
- package/dist/codegen/graphql/interface/query-transformer.js +0 -21
- package/dist/codegen/graphql/interface/query-transformer.js.map +0 -1
- package/dist/codegen/graphql/type/query-transformer.d.ts +0 -8
- package/dist/codegen/graphql/type/query-transformer.js +0 -193
- package/dist/codegen/graphql/type/query-transformer.js.map +0 -1
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { InterfaceTypeDefinitionNode } from '@luvio/graphql-parser';
|
|
2
|
-
import type { ImportContext } from '../../../utils/imports';
|
|
3
|
-
import type { LuvioGraphQLDSL } from '../../../intermediate/graphql';
|
|
4
|
-
import type { GraphQLCodegenMetadata } from '../source-printer';
|
|
5
|
-
export declare function generate(graphqlDsl: LuvioGraphQLDSL, typeName: string, def: InterfaceTypeDefinitionNode, importContext: ImportContext, _metadata: GraphQLCodegenMetadata): string;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.generate = void 0;
|
|
7
|
-
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
|
-
const query_transformer_1 = require("../type/query-transformer");
|
|
9
|
-
function generate(graphqlDsl, typeName, def, importContext, _metadata) {
|
|
10
|
-
var _a;
|
|
11
|
-
const { schema } = graphqlDsl;
|
|
12
|
-
const isQueryType = ((_a = schema.getQueryType()) === null || _a === void 0 ? void 0 : _a.name) === typeName;
|
|
13
|
-
const queryTransform = (0, query_transformer_1.generateQueryTransformerForFields)(graphqlDsl, def, importContext, typeName);
|
|
14
|
-
const minimumFields = (0, query_transformer_1.generateGetMinimumFields)(isQueryType, def, graphqlDsl);
|
|
15
|
-
return (0, deindent_1.default) `
|
|
16
|
-
${queryTransform}
|
|
17
|
-
${minimumFields}
|
|
18
|
-
`;
|
|
19
|
-
}
|
|
20
|
-
exports.generate = generate;
|
|
21
|
-
//# sourceMappingURL=query-transformer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query-transformer.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/interface/query-transformer.ts"],"names":[],"mappings":";;;;;;AACA,uEAA+C;AAI/C,iEAGmC;AAEnC,SAAgB,QAAQ,CACpB,UAA2B,EAC3B,QAAgB,EAChB,GAAgC,EAChC,aAA4B,EAC5B,SAAiC;;IAEjC,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;IAC9B,MAAM,WAAW,GAAG,CAAA,MAAA,MAAM,CAAC,YAAY,EAAE,0CAAE,IAAI,MAAK,QAAQ,CAAC;IAE7D,MAAM,cAAc,GAAG,IAAA,qDAAiC,EACpD,UAAU,EACV,GAAG,EACH,aAAa,EACb,QAAQ,CACX,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,4CAAwB,EAAC,WAAW,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IAE7E,OAAO,IAAA,kBAAQ,EAAA;UACT,cAAc;UACd,aAAa;KAClB,CAAC;AACN,CAAC;AAtBD,4BAsBC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { GraphQLSchema, InterfaceTypeDefinitionNode, ObjectTypeDefinitionNode } from '@luvio/graphql-parser';
|
|
2
|
-
import type { ImportContext } from '../../../utils/imports';
|
|
3
|
-
import type { LuvioGraphQLDSL } from '../../../intermediate/graphql';
|
|
4
|
-
import type { GraphQLCodegenMetadata } from '../source-printer';
|
|
5
|
-
export declare function generateQueryTransformerForFields(graphqlDsl: LuvioGraphQLDSL, def: ObjectTypeDefinitionNode | InterfaceTypeDefinitionNode, importContext: ImportContext, typeName: string): string;
|
|
6
|
-
export declare function generateQueryTransformerForQueryReturnTypes(schema: GraphQLSchema, importContext: ImportContext): string;
|
|
7
|
-
export declare function generateGetMinimumFields(isQueryType: boolean, def: ObjectTypeDefinitionNode | InterfaceTypeDefinitionNode, graphqlDsl: LuvioGraphQLDSL): string;
|
|
8
|
-
export declare function generate(graphqlDsl: LuvioGraphQLDSL, typeName: string, def: ObjectTypeDefinitionNode, importContext: ImportContext, _metadata: GraphQLCodegenMetadata): string;
|
|
@@ -1,193 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.generate = exports.generateGetMinimumFields = exports.generateQueryTransformerForQueryReturnTypes = exports.generateQueryTransformerForFields = void 0;
|
|
7
|
-
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
|
-
const constants_1 = require("../../shared/constants");
|
|
9
|
-
const utils_1 = require("../utils");
|
|
10
|
-
const interface_1 = require("./interface");
|
|
11
|
-
const constants_2 = require("./constants");
|
|
12
|
-
const FIELD_TYPENAME_IDENTIFIER = 'fieldTypeName';
|
|
13
|
-
const minFieldsForCursorConnections = {
|
|
14
|
-
[constants_2.EDGES_IDENTIFIER]: [constants_2.NODE_IDENTIFIER, constants_2.CURSOR_IDENTIFIER],
|
|
15
|
-
[constants_2.PAGE_INFO_IDENTIFIER]: [
|
|
16
|
-
constants_2.HAS_NEXT_PAGE_IDENTIFIER,
|
|
17
|
-
constants_2.END_CURSOR_IDENTIFIER,
|
|
18
|
-
constants_2.START_CURSOR_IDENTIFIER,
|
|
19
|
-
],
|
|
20
|
-
};
|
|
21
|
-
function generateQueryTransformerForFields(graphqlDsl, def, importContext, typeName) {
|
|
22
|
-
const { schema, cursorConnectionTypes } = graphqlDsl;
|
|
23
|
-
const type = schema.getType(typeName);
|
|
24
|
-
const fieldMap = type.getFields();
|
|
25
|
-
const fieldList = Object.keys(fieldMap);
|
|
26
|
-
const isCursorConnectionType = cursorConnectionTypes.includes(def.name.value);
|
|
27
|
-
const queryTransformerStatements = fieldList
|
|
28
|
-
.map((fieldName) => {
|
|
29
|
-
var _a;
|
|
30
|
-
const field = fieldMap[fieldName];
|
|
31
|
-
if (field !== undefined &&
|
|
32
|
-
field !== null &&
|
|
33
|
-
field.astNode !== undefined &&
|
|
34
|
-
field.astNode !== null) {
|
|
35
|
-
const fieldTypeName = (0, utils_1.resolveTypeName)((_a = field.astNode) === null || _a === void 0 ? void 0 : _a.type);
|
|
36
|
-
const schemaType = schema.getType(fieldTypeName);
|
|
37
|
-
if (schemaType === undefined ||
|
|
38
|
-
schemaType === null ||
|
|
39
|
-
schemaType.astNode === undefined ||
|
|
40
|
-
schemaType.astNode === null) {
|
|
41
|
-
return '';
|
|
42
|
-
}
|
|
43
|
-
// Interface or Object Type
|
|
44
|
-
if (schemaType.astNode.kind === 'InterfaceTypeDefinition' ||
|
|
45
|
-
schemaType.astNode.kind === 'ObjectTypeDefinition') {
|
|
46
|
-
const getQueryTransformHelperImport = importContext.importGraphQLArtifact('types', fieldTypeName, constants_2.GET_QUERY_TRANSFORM_HELPER_FOR_FIELD_IDENTIFIER);
|
|
47
|
-
const getMinimumSelectionsImport = importContext.importGraphQLArtifact('types', fieldTypeName, constants_2.GET_MINIMUM_SELECTIONS_IDENTIFIER);
|
|
48
|
-
// the pageInfo and edges fields of Cursor Connection types can have additional
|
|
49
|
-
// minimum fields required for pagination.
|
|
50
|
-
const connectionFields = isCursorConnectionType
|
|
51
|
-
? minFieldsForCursorConnections[fieldName]
|
|
52
|
-
: undefined;
|
|
53
|
-
const getMinimumSelectionsFunction = connectionFields !== undefined
|
|
54
|
-
? `function(): ${constants_1.LUVIO_GRAPHQL_SELECTION_NODE_IMPORT}[] {
|
|
55
|
-
const minSelections: ${constants_1.LUVIO_GRAPHQL_SELECTION_NODE_IMPORT}[] = ${getMinimumSelectionsImport}();
|
|
56
|
-
['${connectionFields.join("','")}'].forEach(connectionField => {
|
|
57
|
-
minSelections.push({
|
|
58
|
-
kind: 'Field',
|
|
59
|
-
name: {
|
|
60
|
-
kind: 'Name',
|
|
61
|
-
value: connectionField,
|
|
62
|
-
}
|
|
63
|
-
})
|
|
64
|
-
})
|
|
65
|
-
return minSelections;
|
|
66
|
-
}`
|
|
67
|
-
: getMinimumSelectionsImport;
|
|
68
|
-
return (0, deindent_1.default) `
|
|
69
|
-
if (${FIELD_TYPENAME_IDENTIFIER} === '${fieldTypeName}') {
|
|
70
|
-
return {
|
|
71
|
-
${constants_2.GET_QUERY_TRANSFORM_HELPER_FOR_FIELD_IDENTIFIER}: ${getQueryTransformHelperImport},
|
|
72
|
-
${constants_2.GET_MINIMUM_SELECTIONS_IDENTIFIER}: ${getMinimumSelectionsFunction}
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
`;
|
|
76
|
-
}
|
|
77
|
-
// Union Type
|
|
78
|
-
if (schemaType.astNode.kind === 'UnionTypeDefinition') {
|
|
79
|
-
return (0, deindent_1.default) `
|
|
80
|
-
if (${FIELD_TYPENAME_IDENTIFIER} === '${fieldTypeName}') {
|
|
81
|
-
return {
|
|
82
|
-
${constants_2.GET_QUERY_TRANSFORM_HELPER_FOR_FIELD_IDENTIFIER}: (field: ${constants_1.LUVIO_GRAPHQL_FIELD_NODE_IMPORT}) => { return undefined },
|
|
83
|
-
${constants_2.GET_MINIMUM_SELECTIONS_IDENTIFIER}: () => { return [] }
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
`;
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
return '';
|
|
90
|
-
})
|
|
91
|
-
.filter((statement) => statement !== '');
|
|
92
|
-
// default return when field does not have a schema defined type
|
|
93
|
-
queryTransformerStatements.push('return undefined;');
|
|
94
|
-
const eachFieldHandling = queryTransformerStatements.join('\n');
|
|
95
|
-
const queryTransformerFunctionsImport = importContext.importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.QUERY_TRANSFORM_HELPER_IDENTIFIER);
|
|
96
|
-
const getFieldTypeImport = importContext.importGraphQLArtifact('types', typeName, constants_2.GET_FIELD_TYPE_IDENTIFIER);
|
|
97
|
-
return (0, deindent_1.default) `
|
|
98
|
-
export function ${constants_2.GET_QUERY_TRANSFORM_HELPER_FOR_FIELD_IDENTIFIER}(field: ${constants_1.LUVIO_GRAPHQL_FIELD_NODE_IMPORT}): ${queryTransformerFunctionsImport} | undefined {
|
|
99
|
-
const fieldType = ${getFieldTypeImport}(field);
|
|
100
|
-
if(fieldType === undefined) return undefined;
|
|
101
|
-
const ${FIELD_TYPENAME_IDENTIFIER} = fieldType.typename;
|
|
102
|
-
${eachFieldHandling}
|
|
103
|
-
}
|
|
104
|
-
`;
|
|
105
|
-
}
|
|
106
|
-
exports.generateQueryTransformerForFields = generateQueryTransformerForFields;
|
|
107
|
-
function generateQueryTransformerForQueryReturnTypes(schema, importContext) {
|
|
108
|
-
const queryType = schema.getQueryType();
|
|
109
|
-
if (queryType === null || queryType === undefined) {
|
|
110
|
-
return '';
|
|
111
|
-
}
|
|
112
|
-
// Get the list of potential query return types
|
|
113
|
-
let queryReturnTypes = Object.values(queryType.getFields()).reduce((acc, queryField) => {
|
|
114
|
-
const queryReturnTypeName = queryField.type.name;
|
|
115
|
-
return [queryReturnTypeName, ...acc];
|
|
116
|
-
}, []);
|
|
117
|
-
queryReturnTypes = [...new Set(queryReturnTypes)];
|
|
118
|
-
const queryTransformerStatements = queryReturnTypes
|
|
119
|
-
.map((typeName) => {
|
|
120
|
-
const schemaType = schema.getType(typeName);
|
|
121
|
-
if (schemaType !== undefined &&
|
|
122
|
-
schemaType !== null &&
|
|
123
|
-
schemaType.astNode !== undefined &&
|
|
124
|
-
schemaType.astNode !== null &&
|
|
125
|
-
(schemaType.astNode.kind === 'InterfaceTypeDefinition' ||
|
|
126
|
-
schemaType.astNode.kind === 'ObjectTypeDefinition')) {
|
|
127
|
-
const getQueryTransformerImport = importContext.importGraphQLArtifact('types', typeName, constants_2.GET_QUERY_TRANSFORM_HELPER_FOR_FIELD_IDENTIFIER);
|
|
128
|
-
const getMinimumSelectionsImport = importContext.importGraphQLArtifact('types', typeName, constants_2.GET_MINIMUM_SELECTIONS_IDENTIFIER);
|
|
129
|
-
return (0, deindent_1.default) `
|
|
130
|
-
if (typeName === '${typeName}') {
|
|
131
|
-
return {
|
|
132
|
-
${constants_2.GET_QUERY_TRANSFORM_HELPER_FOR_FIELD_IDENTIFIER}: ${getQueryTransformerImport},
|
|
133
|
-
${constants_2.GET_MINIMUM_SELECTIONS_IDENTIFIER}: ${getMinimumSelectionsImport}
|
|
134
|
-
};
|
|
135
|
-
}
|
|
136
|
-
`;
|
|
137
|
-
}
|
|
138
|
-
return '';
|
|
139
|
-
})
|
|
140
|
-
.filter((statement) => statement !== '');
|
|
141
|
-
// default return when type is not defined in the schema
|
|
142
|
-
queryTransformerStatements.push('return undefined;');
|
|
143
|
-
const eachTypeHandling = queryTransformerStatements.join('\n');
|
|
144
|
-
const queryTransformerFunctionsImport = importContext.importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.QUERY_TRANSFORM_HELPER_IDENTIFIER);
|
|
145
|
-
return (0, deindent_1.default) `
|
|
146
|
-
export function ${constants_2.GET_QUERY_TRANSFORM_HELPER_FOR_TYPE_IDENTIFIER}(typeName: string): ${queryTransformerFunctionsImport} | undefined {
|
|
147
|
-
${eachTypeHandling}
|
|
148
|
-
}
|
|
149
|
-
`;
|
|
150
|
-
}
|
|
151
|
-
exports.generateQueryTransformerForQueryReturnTypes = generateQueryTransformerForQueryReturnTypes;
|
|
152
|
-
function generateGetMinimumFields(isQueryType, def, graphqlDsl) {
|
|
153
|
-
const minFieldStatements = isQueryType
|
|
154
|
-
? ''
|
|
155
|
-
: (0, interface_1.getMinimumFields)(def, graphqlDsl)
|
|
156
|
-
.map((field) => {
|
|
157
|
-
return (0, deindent_1.default) `
|
|
158
|
-
minimumSelections.push({
|
|
159
|
-
kind: 'Field',
|
|
160
|
-
name: {
|
|
161
|
-
kind: 'Name',
|
|
162
|
-
value: '${field}',
|
|
163
|
-
}
|
|
164
|
-
});
|
|
165
|
-
`;
|
|
166
|
-
})
|
|
167
|
-
.join('\n');
|
|
168
|
-
return (0, deindent_1.default) `
|
|
169
|
-
export function ${constants_2.GET_MINIMUM_SELECTIONS_IDENTIFIER}(): ${constants_1.LUVIO_GRAPHQL_SELECTION_NODE_IMPORT}[] {
|
|
170
|
-
const minimumSelections: ${constants_1.LUVIO_GRAPHQL_SELECTION_NODE_IMPORT}[] = [];
|
|
171
|
-
${minFieldStatements}
|
|
172
|
-
return minimumSelections;
|
|
173
|
-
}
|
|
174
|
-
`;
|
|
175
|
-
}
|
|
176
|
-
exports.generateGetMinimumFields = generateGetMinimumFields;
|
|
177
|
-
function generate(graphqlDsl, typeName, def, importContext, _metadata) {
|
|
178
|
-
var _a;
|
|
179
|
-
const { schema } = graphqlDsl;
|
|
180
|
-
const isQueryType = ((_a = schema.getQueryType()) === null || _a === void 0 ? void 0 : _a.name) === typeName;
|
|
181
|
-
const queryTransformerForFields = generateQueryTransformerForFields(graphqlDsl, def, importContext, typeName);
|
|
182
|
-
const queryTransformerForAllTypes = isQueryType
|
|
183
|
-
? generateQueryTransformerForQueryReturnTypes(schema, importContext)
|
|
184
|
-
: '';
|
|
185
|
-
const minimumFields = generateGetMinimumFields(isQueryType, def, graphqlDsl);
|
|
186
|
-
return (0, deindent_1.default) `
|
|
187
|
-
${queryTransformerForFields}
|
|
188
|
-
${queryTransformerForAllTypes}
|
|
189
|
-
${minimumFields}
|
|
190
|
-
`;
|
|
191
|
-
}
|
|
192
|
-
exports.generate = generate;
|
|
193
|
-
//# sourceMappingURL=query-transformer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query-transformer.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/query-transformer.ts"],"names":[],"mappings":"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"}
|