@luvio/compiler 0.113.0 → 0.115.0
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 +2 -1
- package/dist/codegen/graphql/interface/index.js +2 -2
- package/dist/codegen/graphql/interface/index.js.map +1 -1
- package/dist/codegen/graphql/interface/select.d.ts +2 -1
- package/dist/codegen/graphql/interface/select.js +7 -5
- package/dist/codegen/graphql/interface/select.js.map +1 -1
- package/dist/codegen/graphql/interface/type-cache-keys.js +4 -4
- package/dist/codegen/graphql/interface/type-cache-keys.js.map +1 -1
- package/dist/codegen/graphql/source-printer/graphql-type-source-printer.js +1 -1
- package/dist/codegen/graphql/source-printer/graphql-type-source-printer.js.map +1 -1
- package/dist/codegen/graphql/type/attach-mapped.d.ts +4 -0
- package/dist/codegen/graphql/type/attach-mapped.js +49 -0
- package/dist/codegen/graphql/type/attach-mapped.js.map +1 -0
- package/dist/codegen/graphql/type/constants.d.ts +10 -0
- package/dist/codegen/graphql/type/constants.js +12 -1
- package/dist/codegen/graphql/type/constants.js.map +1 -1
- package/dist/codegen/graphql/type/convert.d.ts +1 -2
- package/dist/codegen/graphql/type/convert.js +5 -3
- package/dist/codegen/graphql/type/convert.js.map +1 -1
- package/dist/codegen/graphql/type/generateTypeUtil.js +5 -1
- package/dist/codegen/graphql/type/generateTypeUtil.js.map +1 -1
- package/dist/codegen/graphql/type/index.d.ts +1 -1
- package/dist/codegen/graphql/type/index.js +10 -2
- package/dist/codegen/graphql/type/index.js.map +1 -1
- package/dist/codegen/graphql/type/ingest-mapped.d.ts +4 -0
- package/dist/codegen/graphql/type/ingest-mapped.js +36 -0
- package/dist/codegen/graphql/type/ingest-mapped.js.map +1 -0
- package/dist/codegen/graphql/type/ingest.js +13 -27
- package/dist/codegen/graphql/type/ingest.js.map +1 -1
- package/dist/codegen/graphql/type/mapped-type-cache-keys.d.ts +4 -0
- package/dist/codegen/graphql/type/mapped-type-cache-keys.js +36 -0
- package/dist/codegen/graphql/type/mapped-type-cache-keys.js.map +1 -0
- package/dist/codegen/graphql/type/select.d.ts +2 -1
- package/dist/codegen/graphql/type/select.js +54 -48
- package/dist/codegen/graphql/type/select.js.map +1 -1
- package/dist/codegen/graphql/type/type-cache-keys.d.ts +2 -1
- package/dist/codegen/graphql/type/type-cache-keys.js +40 -27
- package/dist/codegen/graphql/type/type-cache-keys.js.map +1 -1
- package/dist/codegen/graphql/type/utils.d.ts +6 -1
- package/dist/codegen/graphql/type/utils.js +24 -1
- package/dist/codegen/graphql/type/utils.js.map +1 -1
- package/dist/codegen/graphql/union/select.js +5 -4
- package/dist/codegen/graphql/union/select.js.map +1 -1
- package/dist/codegen/graphql/union/type-cache-keys.js +4 -4
- package/dist/codegen/graphql/union/type-cache-keys.js.map +1 -1
- package/dist/codegen/pagination-utils/cursor-based.js +2 -0
- package/dist/codegen/pagination-utils/cursor-based.js.map +1 -1
- package/dist/codegen/shape/graphql/shape-cache-keys.js +2 -1
- package/dist/codegen/shape/graphql/shape-cache-keys.js.map +1 -1
- package/dist/codegen/shape/graphql/shape-select.js +2 -3
- package/dist/codegen/shape/graphql/shape-select.js.map +1 -1
- package/package.json +4 -4
|
@@ -2,4 +2,5 @@ import type { ImportContext } from '../../../utils/imports';
|
|
|
2
2
|
import type { InterfaceTypeDefinitionNode } from '@luvio/graphql-parser';
|
|
3
3
|
import type { LuvioGraphQLDSL } from '../../../intermediate/graphql';
|
|
4
4
|
import type { GraphQLCodegenMetadata } from '../source-printer';
|
|
5
|
-
|
|
5
|
+
import type { ModelInfo } from '../../../main';
|
|
6
|
+
export declare function generateInterfaceType(graphqlDsl: LuvioGraphQLDSL, typeName: string, def: InterfaceTypeDefinitionNode, importContext: ImportContext, metadata: GraphQLCodegenMetadata, modelInfo: ModelInfo): string;
|
|
@@ -13,13 +13,13 @@ const query_transformer_1 = require("./query-transformer");
|
|
|
13
13
|
const type_cache_keys_1 = require("./type-cache-keys");
|
|
14
14
|
const type_from_field_1 = require("../type/type-from-field");
|
|
15
15
|
const version_1 = require("./version");
|
|
16
|
-
function generateInterfaceType(graphqlDsl, typeName, def, importContext, metadata) {
|
|
16
|
+
function generateInterfaceType(graphqlDsl, typeName, def, importContext, metadata, modelInfo) {
|
|
17
17
|
return (0, imports_1.resolveImports)((0, deindent_1.default) `
|
|
18
18
|
export const name = '${typeName}';
|
|
19
19
|
${(0, interface_1.generateInterface)(typeName, def, importContext, metadata)}
|
|
20
20
|
${(0, version_1.generateVersion)()}
|
|
21
21
|
${(0, ingest_1.generateIngest)(graphqlDsl, typeName, def, importContext, metadata)}
|
|
22
|
-
${(0, select_1.generateSelect)(graphqlDsl, typeName, def, importContext, metadata)}
|
|
22
|
+
${(0, select_1.generateSelect)(graphqlDsl, typeName, def, importContext, metadata, modelInfo)}
|
|
23
23
|
${(0, query_transformer_1.generate)(graphqlDsl, typeName, def, importContext, metadata)}
|
|
24
24
|
${(0, type_cache_keys_1.generateGetTypeCacheKeys)(graphqlDsl, typeName, def, importContext, metadata)}
|
|
25
25
|
${(0, type_from_field_1.generateGetFieldType)(graphqlDsl, def)}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/interface/index.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAC/C,2CAAgD;AAChD,qCAA0C;AAC1C,oDAAwD;AAKxD,qCAA0C;AAC1C,2DAA2E;AAC3E,uDAA6D;AAC7D,6DAA+D;AAC/D,uCAA4C;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/interface/index.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAC/C,2CAAgD;AAChD,qCAA0C;AAC1C,oDAAwD;AAKxD,qCAA0C;AAC1C,2DAA2E;AAC3E,uDAA6D;AAC7D,6DAA+D;AAC/D,uCAA4C;AAG5C,SAAgB,qBAAqB,CACjC,UAA2B,EAC3B,QAAgB,EAChB,GAAgC,EAChC,aAA4B,EAC5B,QAAgC,EAChC,SAAoB;IAEpB,OAAO,IAAA,wBAAc,EAAC,IAAA,kBAAQ,EAAA;+BACH,QAAQ;UAC7B,IAAA,6BAAiB,EAAC,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;UACzD,IAAA,yBAAe,GAAE;UACjB,IAAA,uBAAc,EAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;UAClE,IAAA,uBAAc,EAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;UAC7E,IAAA,4BAAwB,EAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;UAC5E,IAAA,0CAAwB,EAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;UAC5E,IAAA,sCAAoB,EAAC,UAAU,EAAE,GAAG,CAAC;KAC1C,CAAC,CAAC;AACP,CAAC;AAlBD,sDAkBC"}
|
|
@@ -2,5 +2,6 @@ import type { GraphQLInterfaceType, GraphQLSchema, InterfaceTypeDefinitionNode }
|
|
|
2
2
|
import type { ImportContext } from '../../../utils/imports';
|
|
3
3
|
import type { LuvioGraphQLDSL } from '../../../intermediate/graphql';
|
|
4
4
|
import type { GraphQLCodegenMetadata } from '../source-printer';
|
|
5
|
+
import type { ModelInfo } from '../../../main';
|
|
5
6
|
export declare function generateSelectFromDef(graphQLSchema: GraphQLSchema, interfaceType: GraphQLInterfaceType, importContext: ImportContext): string;
|
|
6
|
-
export declare function generateSelect(graphqlDsl: LuvioGraphQLDSL, typeName: string, def: InterfaceTypeDefinitionNode, importContext: ImportContext, _metadata: GraphQLCodegenMetadata): string;
|
|
7
|
+
export declare function generateSelect(graphqlDsl: LuvioGraphQLDSL, typeName: string, def: InterfaceTypeDefinitionNode, importContext: ImportContext, _metadata: GraphQLCodegenMetadata, modelInfo: ModelInfo): string;
|
|
@@ -9,20 +9,21 @@ const constants_1 = require("../../adapter/constants");
|
|
|
9
9
|
const constants_2 = require("../../shared/constants");
|
|
10
10
|
const constants_3 = require("../type/constants");
|
|
11
11
|
const interface_1 = require("./interface");
|
|
12
|
+
const utils_1 = require("../type/utils");
|
|
12
13
|
function generateSelectFromDef(graphQLSchema, interfaceType, importContext) {
|
|
13
14
|
const selectStatements = graphQLSchema
|
|
14
15
|
.getImplementations(interfaceType)
|
|
15
16
|
.objects.map((object) => {
|
|
16
|
-
const objectPartialInterfaceAlias = importContext.importGraphQLArtifact('types', object.name, interface_1.PARTIAL_INTERFACE_IDENTIFIER);
|
|
17
17
|
return (0, deindent_1.default) `
|
|
18
18
|
if(typename === '${object.name}') {
|
|
19
|
-
return ${importContext.importGraphQLArtifact('types', object.name, 'select')}(field, variables, fragments)(source as
|
|
20
|
-
}`;
|
|
19
|
+
return ${importContext.importGraphQLArtifact('types', object.name, 'select')}(field, variables, fragments)(source as any, reader)
|
|
20
|
+
}`; // Using the any cast here instead of doing all the calulations to figure out the Normalized
|
|
21
|
+
// representation of each interface implementation when it doesn't add a ton of value (still a type cast and it's proper once we're in the new function)
|
|
21
22
|
});
|
|
22
23
|
return selectStatements.join('\n');
|
|
23
24
|
}
|
|
24
25
|
exports.generateSelectFromDef = generateSelectFromDef;
|
|
25
|
-
function generateSelect(graphqlDsl, typeName, def, importContext, _metadata) {
|
|
26
|
+
function generateSelect(graphqlDsl, typeName, def, importContext, _metadata, modelInfo) {
|
|
26
27
|
var _a;
|
|
27
28
|
const { schema } = graphqlDsl;
|
|
28
29
|
const type = schema.getType(def.name.value);
|
|
@@ -34,9 +35,10 @@ function generateSelect(graphqlDsl, typeName, def, importContext, _metadata) {
|
|
|
34
35
|
: constants_2.LUVIO_GRAPHQL_FIELD_NODE_IMPORT;
|
|
35
36
|
const graphqlVariablesImport = importContext.importGraphQLArtifact('types', constants_3.TYPE_UTIL_IDENTIFIER, constants_3.GRAPHQL_VARIABLES_IDENTIFIER);
|
|
36
37
|
const fragmentMapImport = importContext.importGraphQLArtifact('types', constants_3.TYPE_UTIL_IDENTIFIER, constants_3.GRAPHQL_FRAGMENT_MAP_IDENTIFIER);
|
|
38
|
+
const normalizedDataType = (0, utils_1.getNormalizedDataType)(graphqlDsl, typeName, importContext, modelInfo);
|
|
37
39
|
return (0, deindent_1.default) `
|
|
38
40
|
export function select(field: ${astNodeParamType}, variables: ${graphqlVariablesImport}, fragments: ${fragmentMapImport}) {
|
|
39
|
-
return (source: ${
|
|
41
|
+
return (source: ${normalizedDataType}, reader: ${constants_1.ADAPTER_READER_IMPORT}<any>): ${interface_1.PARTIAL_INTERFACE_IDENTIFIER} | undefined => {
|
|
40
42
|
const typename = source.data.__typename;
|
|
41
43
|
${generateSelectFromDef(schema, type, importContext)}
|
|
42
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/interface/select.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAC/C,uDAAgE;AAOhE,sDAGgC;AAGhC,iDAI2B;AAC3B,2CAA2D;
|
|
1
|
+
{"version":3,"file":"select.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/interface/select.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAC/C,uDAAgE;AAOhE,sDAGgC;AAGhC,iDAI2B;AAC3B,2CAA2D;AAC3D,yCAAsD;AAGtD,SAAgB,qBAAqB,CACjC,aAA4B,EAC5B,aAAmC,EACnC,aAA4B;IAE5B,MAAM,gBAAgB,GAAG,aAAa;SACjC,kBAAkB,CAAC,aAAa,CAAC;SACjC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACpB,OAAO,IAAA,kBAAQ,EAAA;mCACQ,MAAM,CAAC,IAAI;6BACjB,aAAa,CAAC,qBAAqB,CACxC,OAAO,EACP,MAAM,CAAC,IAAI,EACX,QAAQ,CACX;kBACH,CAAC,CAAC,4FAA4F;QACpG,wJAAwJ;IAC5J,CAAC,CAAC,CAAC;IAEP,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC;AApBD,sDAoBC;AAED,SAAgB,cAAc,CAC1B,UAA2B,EAC3B,QAAgB,EAChB,GAAgC,EAChC,aAA4B,EAC5B,SAAiC,EACjC,SAAoB;;IAEpB,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;IAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5C,IAAI,CAAC,IAAI,EAAE;QACP,OAAO,EAAE,CAAC;KACb;IACD,MAAM,gBAAgB,GAClB,CAAA,MAAA,MAAM,CAAC,YAAY,EAAE,0CAAE,IAAI,MAAK,QAAQ;QACpC,CAAC,CAAC,0DAA8C;QAChD,CAAC,CAAC,2CAA+B,CAAC;IAC1C,MAAM,sBAAsB,GAAG,aAAa,CAAC,qBAAqB,CAC9D,OAAO,EACP,gCAAoB,EACpB,wCAA4B,CAC/B,CAAC;IACF,MAAM,iBAAiB,GAAG,aAAa,CAAC,qBAAqB,CACzD,OAAO,EACP,gCAAoB,EACpB,2CAA+B,CAClC,CAAC;IAEF,MAAM,kBAAkB,GAAG,IAAA,6BAAqB,EAC5C,UAAU,EACV,QAAQ,EACR,aAAa,EACb,SAAS,CACZ,CAAC;IAEF,OAAO,IAAA,kBAAQ,EAAA;wCACqB,gBAAgB,gBAAgB,sBAAsB,gBAAgB,iBAAiB;8BACjG,kBAAkB,aAAa,iCAAqB,WAAW,wCAA4B;;kBAEvG,qBAAqB,CAAC,MAAM,EAAE,IAA4B,EAAE,aAAa,CAAC;;;KAGvF,CAAC;AACN,CAAC;AA3CD,wCA2CC"}
|
|
@@ -6,12 +6,12 @@ const constants_2 = require("../type/constants");
|
|
|
6
6
|
const interface_1 = require("./interface");
|
|
7
7
|
function generateGetCacheKeysFromDef(graphQLSchema, interfaceType, importContext) {
|
|
8
8
|
const type = graphQLSchema.getType(interfaceType.name.value);
|
|
9
|
-
const graphqlStateInterface = importContext.importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.
|
|
9
|
+
const graphqlStateInterface = importContext.importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GRAPHQL_LUVIO_STATE_INTERFACE_IDENTIFIER);
|
|
10
10
|
const selectStatements = graphQLSchema.getImplementations(type).objects.map((object) => {
|
|
11
11
|
const partialInterfaceIdentifier = importContext.importGraphQLArtifact('types', object.name, interface_1.PARTIAL_INTERFACE_IDENTIFIER);
|
|
12
12
|
const getCacheKeysImport = importContext.importGraphQLArtifact('types', object.name, 'getTypeCacheKeys');
|
|
13
13
|
return `if(typename === '${object.name}') {
|
|
14
|
-
return ${getCacheKeysImport}(
|
|
14
|
+
return ${getCacheKeysImport}(astNode, state as ${graphqlStateInterface}< ${partialInterfaceIdentifier}>)
|
|
15
15
|
}`;
|
|
16
16
|
});
|
|
17
17
|
return selectStatements.join('\n');
|
|
@@ -20,12 +20,12 @@ function generateGetTypeCacheKeys(graphqlDsl, graphqlTypeName, interfaceType, im
|
|
|
20
20
|
var _a;
|
|
21
21
|
const { schema } = graphqlDsl;
|
|
22
22
|
const { importGraphQLArtifact } = importContext;
|
|
23
|
-
const graphqlStateInterface = importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.
|
|
23
|
+
const graphqlStateInterface = importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GRAPHQL_LUVIO_STATE_INTERFACE_IDENTIFIER);
|
|
24
24
|
const astNodeParamType = ((_a = schema.getQueryType()) === null || _a === void 0 ? void 0 : _a.name) === graphqlTypeName
|
|
25
25
|
? constants_1.LUVIO_GRAPHQL_OPERATION_DEFINITION_NODE_IMPORT
|
|
26
26
|
: constants_1.LUVIO_GRAPHQL_FIELD_NODE_IMPORT;
|
|
27
27
|
const getCacheKeysStatements = generateGetCacheKeysFromDef(schema, interfaceType, importContext);
|
|
28
|
-
return `export function ${constants_2.TYPE_CACHE_KEYS_IDENTIFIER}(
|
|
28
|
+
return `export function ${constants_2.TYPE_CACHE_KEYS_IDENTIFIER}(astNode: ${astNodeParamType}, state: ${graphqlStateInterface}<${interface_1.PARTIAL_INTERFACE_IDENTIFIER}>): ${constants_1.ADAPTER_CACHE_KEY_SET_TYPE_IDENTIFIER} {
|
|
29
29
|
const { path, data } = state;
|
|
30
30
|
const typename = data.__typename;
|
|
31
31
|
${getCacheKeysStatements}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-cache-keys.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/interface/type-cache-keys.ts"],"names":[],"mappings":";;;AAOA,
|
|
1
|
+
{"version":3,"file":"type-cache-keys.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/interface/type-cache-keys.ts"],"names":[],"mappings":";;;AAOA,sDAIgC;AAEhC,iDAI2B;AAC3B,2CAA2D;AAE3D,SAAS,2BAA2B,CAChC,aAA4B,EAC5B,aAA0C,EAC1C,aAA4B;IAE5B,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAyB,CAAC;IACrF,MAAM,qBAAqB,GAAG,aAAa,CAAC,qBAAqB,CAC7D,OAAO,EACP,gCAAoB,EACpB,oDAAwC,CAC3C,CAAC;IACF,MAAM,gBAAgB,GAAG,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACnF,MAAM,0BAA0B,GAAG,aAAa,CAAC,qBAAqB,CAClE,OAAO,EACP,MAAM,CAAC,IAAI,EACX,wCAA4B,CAC/B,CAAC;QACF,MAAM,kBAAkB,GAAG,aAAa,CAAC,qBAAqB,CAC1D,OAAO,EACP,MAAM,CAAC,IAAI,EACX,kBAAkB,CACrB,CAAC;QACF,OAAO,oBAAoB,MAAM,CAAC,IAAI;6BACjB,kBAAkB,sBAAsB,qBAAqB,KAAK,0BAA0B;kBACvG,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC;AAED,SAAgB,wBAAwB,CACpC,UAA2B,EAC3B,eAAuB,EACvB,aAA0C,EAC1C,aAA4B,EAC5B,SAAiC;;IAEjC,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;IAC9B,MAAM,EAAE,qBAAqB,EAAE,GAAG,aAAa,CAAC;IAChD,MAAM,qBAAqB,GAAG,qBAAqB,CAC/C,OAAO,EACP,gCAAoB,EACpB,oDAAwC,CAC3C,CAAC;IACF,MAAM,gBAAgB,GAClB,CAAA,MAAA,MAAM,CAAC,YAAY,EAAE,0CAAE,IAAI,MAAK,eAAe;QAC3C,CAAC,CAAC,0DAA8C;QAChD,CAAC,CAAC,2CAA+B,CAAC;IAE1C,MAAM,sBAAsB,GAAG,2BAA2B,CACtD,MAAM,EACN,aAAa,EACb,aAAa,CAChB,CAAC;IAEF,OAAO,mBAAmB,sCAA0B,aAAa,gBAAgB,YAAY,qBAAqB,IAAI,wCAA4B,OAAO,iDAAqC;;;cAGpL,sBAAsB;;UAE1B,CAAC;AACX,CAAC;AA/BD,4DA+BC"}
|
|
@@ -45,7 +45,7 @@ class GraphQLTypeSourcePrinter {
|
|
|
45
45
|
modules[relPath] = (0, type_1.generateType)(graphqlDSL, typeDefinition.name, typeDefinition.astNode, importContext, metadata, modelInfo);
|
|
46
46
|
break;
|
|
47
47
|
case graphql_parser_1.Kind.INTERFACE_TYPE_DEFINITION:
|
|
48
|
-
modules[relPath] = (0, interface_1.generateInterfaceType)(graphqlDSL, typeDefinition.name, typeDefinition.astNode, importContext, metadata);
|
|
48
|
+
modules[relPath] = (0, interface_1.generateInterfaceType)(graphqlDSL, typeDefinition.name, typeDefinition.astNode, importContext, metadata, modelInfo);
|
|
49
49
|
break;
|
|
50
50
|
case graphql_parser_1.Kind.UNION_TYPE_DEFINITION:
|
|
51
51
|
modules[relPath] = (0, union_1.generate)(graphqlDSL, typeDefinition.name, typeDefinition.astNode, importContext, metadata);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphql-type-source-printer.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/source-printer/graphql-type-source-printer.ts"],"names":[],"mappings":";;;;;;AAEA,oDAA6D;AAC7D,gDAAwB;AACxB,0DAA6C;AAC7C,kCAAuC;AACvC,+DAA4D;AAC5D,oCAAyD;AACzD,kCAAuD;AAIvD,uDAA0D;AAG1D,iDAAuE;AACvE,4CAAqD;AACrD,wBAA6C;AAC7C,iFAAyF;AACzF,yEAAkG;AAErF,QAAA,uBAAuB,GAAG,UAAU,CAAC;AAClD,MAAM,uBAAuB,GAAG,OAAO,CAAC;AACxC,MAAM,oBAAoB,GAAG,OAAO,CAAC;AAIrC,MAAa,wBAAwB;IACjC,QAAQ,CACJ,eAAgC,EAChC,qBAAsC,EACtC,QAAgC,EAChC,SAAoB,EACpB,MAAuB;QAEvB,MAAM,EAAE,UAAU,EAAE,GAAG,eAAe,CAAC;QACvC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QAC7D,MAAM,OAAO,GAAgC,EAAE,CAAC;QAEhD,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,qBAAqB,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAEtF,IAAI,UAAU,CAAC,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7C,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;SACjC;QAED,6HAA6H;QAC7H,gCAAgC;QAChC,MAAM,CAAC,MAAM,CACT,OAAO,EACP,IAAI,CAAC,2BAA2B,CAC5B,SAAS,EACT,qBAAqB,EACrB,eAAe,EACf,MAAM,CACT,CACJ,CAAC;QAEF,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACzB,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC1D,IACI,cAAc,KAAK,SAAS;gBAC5B,cAAc,KAAK,IAAI;gBACvB,cAAc,CAAC,OAAO,KAAK,SAAS;gBACpC,cAAc,CAAC,OAAO,KAAK,IAAI,EACjC;gBACE,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC;gBACzC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,8BAA8B,CAClE,qBAAqB,EACrB,cAAc,CAAC,IAAI,EACnB,MAAM,CACT,CAAC;gBAEF,QAAQ,IAAI,EAAE;oBACV,KAAK,qBAAI,CAAC,sBAAsB;wBAC5B,OAAO,CAAC,OAAO,CAAC,GAAG,IAAA,mBAAY,EAC3B,UAAU,EACV,cAAc,CAAC,IAAI,EACnB,cAAc,CAAC,OAAO,EACtB,aAAa,EACb,QAAQ,EACR,SAAS,CACZ,CAAC;wBACF,MAAM;oBACV,KAAK,qBAAI,CAAC,yBAAyB;wBAC/B,OAAO,CAAC,OAAO,CAAC,GAAG,IAAA,iCAAqB,EACpC,UAAU,EACV,cAAc,CAAC,IAAI,EACnB,cAAc,CAAC,OAAO,EACtB,aAAa,EACb,QAAQ,
|
|
1
|
+
{"version":3,"file":"graphql-type-source-printer.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/source-printer/graphql-type-source-printer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { LuvioGraphQLDSL } from '../../../intermediate/graphql';
|
|
2
|
+
import type { ModelInfo } from '../../../main';
|
|
3
|
+
import type { ImportContext } from '../../../utils/imports';
|
|
4
|
+
export declare function generateAttachMappedData(graphqlDsl: LuvioGraphQLDSL, graphqlTypeName: string, importContext: ImportContext, modelInfo: ModelInfo): string;
|
|
@@ -0,0 +1,49 @@
|
|
|
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.generateAttachMappedData = void 0;
|
|
7
|
+
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
|
+
const constants_1 = require("../../adapter/constants");
|
|
9
|
+
const shape_version_1 = require("../../shape/shape-version");
|
|
10
|
+
const constants_2 = require("./constants");
|
|
11
|
+
const utils_1 = require("./utils");
|
|
12
|
+
function generateAttachMappedData(graphqlDsl, graphqlTypeName, importContext, modelInfo) {
|
|
13
|
+
const ramlTypeInfo = (0, utils_1.getMappedRamlTypeIdAndName)(graphqlDsl, graphqlTypeName, modelInfo);
|
|
14
|
+
if (ramlTypeInfo === undefined) {
|
|
15
|
+
return '';
|
|
16
|
+
}
|
|
17
|
+
const ramlShapeVersionImport = importContext.importRamlArtifact(ramlTypeInfo.id, shape_version_1.SHAPE_VERSION_IDENTIFIER);
|
|
18
|
+
const ramlShapeNameImport = importContext.importRamlArtifact(ramlTypeInfo.id, `${ramlTypeInfo.typename}Normalized`);
|
|
19
|
+
const normalizedGraphQLTypeImport = (0, utils_1.getNormalizedDataType)(graphqlDsl, graphqlTypeName, importContext, modelInfo);
|
|
20
|
+
return (0, deindent_1.default) `
|
|
21
|
+
function ${constants_2.ATTACH_MAPPED_DATA_IDENTIFIER}(source: ${normalizedGraphQLTypeImport}, reader: ${constants_1.ADAPTER_READER_IMPORT}<any>) {
|
|
22
|
+
// careful - may need to get the reader fragment from each type in RAML in the future
|
|
23
|
+
if (source.${constants_2.LINK_IDENTIFIER} !== undefined && source.${constants_2.LINK_IDENTIFIER}.__ref !== undefined) {
|
|
24
|
+
reader.markSeenId(source.${constants_2.LINK_IDENTIFIER}.__ref);
|
|
25
|
+
const linkedData = reader.read<${ramlShapeNameImport}>({
|
|
26
|
+
recordId: source.${constants_2.LINK_IDENTIFIER}.__ref,
|
|
27
|
+
node: {
|
|
28
|
+
kind: 'Fragment',
|
|
29
|
+
private: [],
|
|
30
|
+
opaque: true,
|
|
31
|
+
version: ${ramlShapeVersionImport}
|
|
32
|
+
},
|
|
33
|
+
variables: {}
|
|
34
|
+
});
|
|
35
|
+
if(linkedData.data !== undefined) {
|
|
36
|
+
source = {
|
|
37
|
+
...source,
|
|
38
|
+
${constants_2.LINKED_DATA_IDENTIFIER}: linkedData.data
|
|
39
|
+
}
|
|
40
|
+
} else {
|
|
41
|
+
reader.markMissingLink(source.${constants_2.LINK_IDENTIFIER}.__ref);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return source;
|
|
45
|
+
}
|
|
46
|
+
`;
|
|
47
|
+
}
|
|
48
|
+
exports.generateAttachMappedData = generateAttachMappedData;
|
|
49
|
+
//# sourceMappingURL=attach-mapped.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attach-mapped.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/attach-mapped.ts"],"names":[],"mappings":";;;;;;AAEA,uEAA+C;AAE/C,uDAAgE;AAChE,6DAAqE;AACrE,2CAIqB;AACrB,mCAA4E;AAE5E,SAAgB,wBAAwB,CACpC,UAA2B,EAC3B,eAAuB,EACvB,aAA4B,EAC5B,SAAoB;IAEpB,MAAM,YAAY,GAAG,IAAA,kCAA0B,EAAC,UAAU,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC;IACxF,IAAI,YAAY,KAAK,SAAS,EAAE;QAC5B,OAAO,EAAE,CAAC;KACb;IACD,MAAM,sBAAsB,GAAG,aAAa,CAAC,kBAAkB,CAC3D,YAAY,CAAC,EAAE,EACf,wCAAwB,CAC3B,CAAC;IACF,MAAM,mBAAmB,GAAG,aAAa,CAAC,kBAAkB,CACxD,YAAY,CAAC,EAAE,EACf,GAAG,YAAY,CAAC,QAAQ,YAAY,CACvC,CAAC;IACF,MAAM,2BAA2B,GAAG,IAAA,6BAAqB,EACrD,UAAU,EACV,eAAe,EACf,aAAa,EACb,SAAS,CACZ,CAAC;IACF,OAAO,IAAA,kBAAQ,EAAA;mBACA,yCAA6B,YAAY,2BAA2B,aAAa,iCAAqB;;yBAEhG,2BAAe,4BAA4B,2BAAe;2CACxC,2BAAe;iDACT,mBAAmB;uCAC7B,2BAAe;;;;;mCAKnB,sBAAsB;;;;;;;0BAO/B,kCAAsB;;;oDAGI,2BAAe;;;;;KAK9D,CAAC;AACN,CAAC;AAnDD,4DAmDC"}
|
|
@@ -37,7 +37,17 @@ export declare const HAS_NEXT_PAGE_IDENTIFIER = "hasNextPage";
|
|
|
37
37
|
export declare const HAS_PREVIOUS_PAGE_IDENTIFIER = "hasPreviousPage";
|
|
38
38
|
export declare const END_CURSOR_IDENTIFIER = "endCursor";
|
|
39
39
|
export declare const START_CURSOR_IDENTIFIER = "startCursor";
|
|
40
|
+
export declare const TYPE_NAME_IDENTIFIER = "__typename";
|
|
40
41
|
export declare const IS_FRAGMENT_APPLICABLE_IDENTIFIER = "isFragmentApplicable";
|
|
41
42
|
export declare const REQUESTED_FIELDS_IDENTIFIER = "requestedFields";
|
|
42
43
|
export declare const FIRST_IDENTIFIER = "first";
|
|
43
44
|
export declare const AFTER_IDENTIFIER = "after";
|
|
45
|
+
export declare const GET_FIELD_DATA_IDENTIFIER = "getFieldData";
|
|
46
|
+
export declare const INGEST_MAPPED_DATA = "ingestMappedData";
|
|
47
|
+
export declare const NORMALIZED_GRAPHQL_TYPE = "NormalizedGraphQL";
|
|
48
|
+
export declare const SELECT_TYPE_IDENTIFIER = "selectType";
|
|
49
|
+
export declare const ATTACH_MAPPED_DATA_IDENTIFIER = "attachMappedData";
|
|
50
|
+
export declare const GRAPHQL_LUVIO_STATE_INTERFACE_IDENTIFIER = "GraphQLLuvioState";
|
|
51
|
+
export declare const MAPPED_TYPE_CACHE_KEYS_IDENTIFIER = "getMappedTypeCacheKeys";
|
|
52
|
+
export declare const LINK_IDENTIFIER = "__link";
|
|
53
|
+
export declare const LINKED_DATA_IDENTIFIER = "__linkedData";
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AFTER_IDENTIFIER = exports.FIRST_IDENTIFIER = exports.REQUESTED_FIELDS_IDENTIFIER = exports.IS_FRAGMENT_APPLICABLE_IDENTIFIER = exports.START_CURSOR_IDENTIFIER = exports.END_CURSOR_IDENTIFIER = exports.HAS_PREVIOUS_PAGE_IDENTIFIER = exports.HAS_NEXT_PAGE_IDENTIFIER = exports.CURSOR_IDENTIFIER = exports.NODE_IDENTIFIER = exports.EDGES_IDENTIFIER = exports.PAGE_INFO_IDENTIFIER = exports.IS_MAPPED_FIELD_IDENTIFIER = exports.INGEST_FIELD_BY_TYPE_IDENTIFIER = exports.GET_FIELD_TYPE_IDENTIFIER = exports.QUERY_TRANSFORM_HELPER_IDENTIFIER = exports.GET_MINIMUM_FIELDS_IDENTIFIER = exports.GET_QUERY_TRANSFORM_HELPER_FOR_TYPE_IDENTIFIER = exports.GET_QUERY_TRANSFORM_HELPER_FOR_FIELD_IDENTIFIER = exports.APPLY_MINIMUM_FIELDS_TO_QUERY_IDENTIFIER = exports.SINK_IDENTIFIER = exports.REQUESTED_FIELD_NAME_IDENTIFIER = exports.REQUESTED_FIELD_IDENTIFIER = exports.FIELD_TYPE_IDENTIFIER = exports.FIELD_DATA_KEY_IDENTIFIER = exports.FIELD_DATA_IDENTIFIER = exports.FIELD_KEY_IDENTIFIER = exports.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER = exports.GET_REQUESTED_FIELDS_FOR_TYPE_IDENTIFIER = exports.GET_REQUESTED_FIELD_IDENTIFIER = exports.SERIALIZE_FIELD_ARGUMENTS_IDENTIFIER = exports.KEY_BUILDER_IDENTIFIER = exports.TYPE_CACHE_KEYS_IDENTIFIER = exports.TYPE_CONVERT_IDENTIFIER = exports.TYPE_INGEST_IDENTIFIER = exports.TYPE_UTIL_IDENTIFIER = exports.CREATE_LINK_IDENTIFIER = exports.TIMESTAMP_IDENTIFIER = exports.GRAPHQL_TYPE_DETAILS_INTERFACE_IDENTIFIER = exports.GRAPHQL_STATE_INTERFACE_IDENTIFIER = exports.GRAPHQL_INGEST_STATE_INTERFACE_IDENTIFIER = exports.GRAPHQL_FRAGMENT_MAP_IDENTIFIER = exports.GRAPHQL_VARIABLES_IDENTIFIER = void 0;
|
|
3
|
+
exports.GRAPHQL_LUVIO_STATE_INTERFACE_IDENTIFIER = exports.ATTACH_MAPPED_DATA_IDENTIFIER = exports.SELECT_TYPE_IDENTIFIER = exports.NORMALIZED_GRAPHQL_TYPE = exports.INGEST_MAPPED_DATA = exports.GET_FIELD_DATA_IDENTIFIER = exports.AFTER_IDENTIFIER = exports.FIRST_IDENTIFIER = exports.REQUESTED_FIELDS_IDENTIFIER = exports.IS_FRAGMENT_APPLICABLE_IDENTIFIER = exports.TYPE_NAME_IDENTIFIER = exports.START_CURSOR_IDENTIFIER = exports.END_CURSOR_IDENTIFIER = exports.HAS_PREVIOUS_PAGE_IDENTIFIER = exports.HAS_NEXT_PAGE_IDENTIFIER = exports.CURSOR_IDENTIFIER = exports.NODE_IDENTIFIER = exports.EDGES_IDENTIFIER = exports.PAGE_INFO_IDENTIFIER = exports.IS_MAPPED_FIELD_IDENTIFIER = exports.INGEST_FIELD_BY_TYPE_IDENTIFIER = exports.GET_FIELD_TYPE_IDENTIFIER = exports.QUERY_TRANSFORM_HELPER_IDENTIFIER = exports.GET_MINIMUM_FIELDS_IDENTIFIER = exports.GET_QUERY_TRANSFORM_HELPER_FOR_TYPE_IDENTIFIER = exports.GET_QUERY_TRANSFORM_HELPER_FOR_FIELD_IDENTIFIER = exports.APPLY_MINIMUM_FIELDS_TO_QUERY_IDENTIFIER = exports.SINK_IDENTIFIER = exports.REQUESTED_FIELD_NAME_IDENTIFIER = exports.REQUESTED_FIELD_IDENTIFIER = exports.FIELD_TYPE_IDENTIFIER = exports.FIELD_DATA_KEY_IDENTIFIER = exports.FIELD_DATA_IDENTIFIER = exports.FIELD_KEY_IDENTIFIER = exports.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER = exports.GET_REQUESTED_FIELDS_FOR_TYPE_IDENTIFIER = exports.GET_REQUESTED_FIELD_IDENTIFIER = exports.SERIALIZE_FIELD_ARGUMENTS_IDENTIFIER = exports.KEY_BUILDER_IDENTIFIER = exports.TYPE_CACHE_KEYS_IDENTIFIER = exports.TYPE_CONVERT_IDENTIFIER = exports.TYPE_INGEST_IDENTIFIER = exports.TYPE_UTIL_IDENTIFIER = exports.CREATE_LINK_IDENTIFIER = exports.TIMESTAMP_IDENTIFIER = exports.GRAPHQL_TYPE_DETAILS_INTERFACE_IDENTIFIER = exports.GRAPHQL_STATE_INTERFACE_IDENTIFIER = exports.GRAPHQL_INGEST_STATE_INTERFACE_IDENTIFIER = exports.GRAPHQL_FRAGMENT_MAP_IDENTIFIER = exports.GRAPHQL_VARIABLES_IDENTIFIER = void 0;
|
|
4
|
+
exports.LINKED_DATA_IDENTIFIER = exports.LINK_IDENTIFIER = exports.MAPPED_TYPE_CACHE_KEYS_IDENTIFIER = void 0;
|
|
4
5
|
exports.GRAPHQL_VARIABLES_IDENTIFIER = 'GraphQLVariables';
|
|
5
6
|
exports.GRAPHQL_FRAGMENT_MAP_IDENTIFIER = 'GraphQLFragmentMap';
|
|
6
7
|
exports.GRAPHQL_INGEST_STATE_INTERFACE_IDENTIFIER = 'GraphQLIngestState';
|
|
@@ -40,8 +41,18 @@ exports.HAS_NEXT_PAGE_IDENTIFIER = 'hasNextPage';
|
|
|
40
41
|
exports.HAS_PREVIOUS_PAGE_IDENTIFIER = 'hasPreviousPage';
|
|
41
42
|
exports.END_CURSOR_IDENTIFIER = 'endCursor';
|
|
42
43
|
exports.START_CURSOR_IDENTIFIER = 'startCursor';
|
|
44
|
+
exports.TYPE_NAME_IDENTIFIER = '__typename';
|
|
43
45
|
exports.IS_FRAGMENT_APPLICABLE_IDENTIFIER = 'isFragmentApplicable';
|
|
44
46
|
exports.REQUESTED_FIELDS_IDENTIFIER = 'requestedFields';
|
|
45
47
|
exports.FIRST_IDENTIFIER = 'first';
|
|
46
48
|
exports.AFTER_IDENTIFIER = 'after';
|
|
49
|
+
exports.GET_FIELD_DATA_IDENTIFIER = 'getFieldData';
|
|
50
|
+
exports.INGEST_MAPPED_DATA = 'ingestMappedData';
|
|
51
|
+
exports.NORMALIZED_GRAPHQL_TYPE = 'NormalizedGraphQL';
|
|
52
|
+
exports.SELECT_TYPE_IDENTIFIER = 'selectType';
|
|
53
|
+
exports.ATTACH_MAPPED_DATA_IDENTIFIER = 'attachMappedData';
|
|
54
|
+
exports.GRAPHQL_LUVIO_STATE_INTERFACE_IDENTIFIER = 'GraphQLLuvioState';
|
|
55
|
+
exports.MAPPED_TYPE_CACHE_KEYS_IDENTIFIER = 'getMappedTypeCacheKeys';
|
|
56
|
+
exports.LINK_IDENTIFIER = '__link';
|
|
57
|
+
exports.LINKED_DATA_IDENTIFIER = '__linkedData';
|
|
47
58
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/constants.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/constants.ts"],"names":[],"mappings":";;;;AAAa,QAAA,4BAA4B,GAAG,kBAAkB,CAAC;AAClD,QAAA,+BAA+B,GAAG,oBAAoB,CAAC;AACvD,QAAA,yCAAyC,GAAG,oBAAoB,CAAC;AACjE,QAAA,kCAAkC,GAAG,cAAc,CAAC;AACpD,QAAA,yCAAyC,GAAG,oBAAoB,CAAC;AACjE,QAAA,oBAAoB,GAAG,WAAW,CAAC;AACnC,QAAA,sBAAsB,GAAG,YAAY,CAAC;AACtC,QAAA,oBAAoB,GAAG,WAAW,CAAC;AACnC,QAAA,sBAAsB,GAAG,QAAQ,CAAC;AAClC,QAAA,uBAAuB,GAAG,sBAAsB,CAAC;AACjD,QAAA,0BAA0B,GAAG,kBAAkB,CAAC;AAChD,QAAA,sBAAsB,GAAG,YAAY,CAAC;AACtC,QAAA,oCAAoC,GAAG,yBAAyB,CAAC;AACjE,QAAA,8BAA8B,GAAG,mBAAmB,CAAC;AACrD,QAAA,wCAAwC,GAAG,2BAA2B,CAAC;AACvE,QAAA,uCAAuC,GAAG,0BAA0B,CAAC;AACrE,QAAA,oBAAoB,GAAG,UAAU,CAAC;AAClC,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,yBAAyB,GAAG,cAAc,CAAC;AAC3C,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,0BAA0B,GAAG,gBAAgB,CAAC;AAC9C,QAAA,+BAA+B,GAAG,oBAAoB,CAAC;AACvD,QAAA,eAAe,GAAG,MAAM,CAAC;AACzB,QAAA,wCAAwC,GAAG,2BAA2B,CAAC;AACvE,QAAA,+CAA+C,GAAG,iCAAiC,CAAC;AACpF,QAAA,8CAA8C,GAAG,gCAAgC,CAAC;AAClF,QAAA,6BAA6B,GAAG,kBAAkB,CAAC;AACnD,QAAA,iCAAiC,GAAG,sBAAsB,CAAC;AAC3D,QAAA,yBAAyB,GAAG,cAAc,CAAC;AAC3C,QAAA,+BAA+B,GAAG,mBAAmB,CAAC;AACtD,QAAA,0BAA0B,GAAG,eAAe,CAAC;AAC7C,QAAA,oBAAoB,GAAG,UAAU,CAAC;AAClC,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,eAAe,GAAG,MAAM,CAAC;AACzB,QAAA,iBAAiB,GAAG,QAAQ,CAAC;AAC7B,QAAA,wBAAwB,GAAG,aAAa,CAAC;AACzC,QAAA,4BAA4B,GAAG,iBAAiB,CAAC;AACjD,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,uBAAuB,GAAG,aAAa,CAAC;AACxC,QAAA,oBAAoB,GAAG,YAAY,CAAC;AACpC,QAAA,iCAAiC,GAAG,sBAAsB,CAAC;AAC3D,QAAA,2BAA2B,GAAG,iBAAiB,CAAC;AAChD,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,yBAAyB,GAAG,cAAc,CAAC;AAC3C,QAAA,kBAAkB,GAAG,kBAAkB,CAAC;AACxC,QAAA,uBAAuB,GAAG,mBAAmB,CAAC;AAC9C,QAAA,sBAAsB,GAAG,YAAY,CAAC;AACtC,QAAA,6BAA6B,GAAG,kBAAkB,CAAC;AACnD,QAAA,wCAAwC,GAAG,mBAAmB,CAAC;AAC/D,QAAA,iCAAiC,GAAG,wBAAwB,CAAC;AAC7D,QAAA,eAAe,GAAG,QAAQ,CAAC;AAC3B,QAAA,sBAAsB,GAAG,cAAc,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { ObjectTypeDefinitionNode } from '@luvio/graphql-parser';
|
|
2
2
|
import type { ImportContext } from '../../../utils/imports';
|
|
3
|
-
import type { NormalizableTypes } from '../utils';
|
|
4
3
|
import type { LuvioGraphQLDSL } from '../../../intermediate/graphql';
|
|
5
4
|
import type { ModelInfo } from '../../../main';
|
|
6
|
-
export declare function generateRamlConversion(graphqlDsl: LuvioGraphQLDSL, graphqlTypeName: string, importContext: ImportContext, def: ObjectTypeDefinitionNode, modelInfo: ModelInfo
|
|
5
|
+
export declare function generateRamlConversion(graphqlDsl: LuvioGraphQLDSL, graphqlTypeName: string, importContext: ImportContext, def: ObjectTypeDefinitionNode, modelInfo: ModelInfo): string;
|
|
@@ -109,10 +109,11 @@ function generateConvertType(field, typeNode, ramlFieldName, importContext, norm
|
|
|
109
109
|
return generateConvertType(field, typeNode.type, ramlFieldName, importContext, normalizableTypeMap);
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
|
-
function generateRamlConversion(graphqlDsl, graphqlTypeName, importContext, def, modelInfo
|
|
112
|
+
function generateRamlConversion(graphqlDsl, graphqlTypeName, importContext, def, modelInfo) {
|
|
113
113
|
var _a;
|
|
114
114
|
// get the target RAML type ingest function
|
|
115
115
|
const { schema, typeNameToExtensions } = graphqlDsl;
|
|
116
|
+
const normalizableTypeMap = (0, types_1.getNormalizableTypeMap)(schema);
|
|
116
117
|
const ramlTypeName = (0, utils_2.getRamlTypeName)(typeNameToExtensions, graphqlTypeName);
|
|
117
118
|
if (ramlTypeName === undefined) {
|
|
118
119
|
return '';
|
|
@@ -121,8 +122,9 @@ function generateRamlConversion(graphqlDsl, graphqlTypeName, importContext, def,
|
|
|
121
122
|
if (ramlTypeId === undefined) {
|
|
122
123
|
return '';
|
|
123
124
|
}
|
|
124
|
-
const { importRamlArtifact } = importContext;
|
|
125
|
+
const { importRamlArtifact, importGraphQLArtifact } = importContext;
|
|
125
126
|
const ramlInterface = importRamlArtifact(ramlTypeId, ramlTypeName);
|
|
127
|
+
const graphqlStateInterface = importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GRAPHQL_LUVIO_STATE_INTERFACE_IDENTIFIER);
|
|
126
128
|
// get RAML mapping
|
|
127
129
|
const graphqlFields = (0, types_1.getObjectFields)(def);
|
|
128
130
|
const ramlIngestStatements = graphqlFields
|
|
@@ -146,7 +148,7 @@ function generateRamlConversion(graphqlDsl, graphqlTypeName, importContext, def,
|
|
|
146
148
|
const getFieldKeyImport = importContext.importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER);
|
|
147
149
|
const recursivePartialInterface = importContext.importTypeUtil('RecursivePartial');
|
|
148
150
|
return (0, deindent_1.default) `
|
|
149
|
-
export function
|
|
151
|
+
export function ${constants_2.TYPE_CONVERT_IDENTIFIER} (astNode: ${astNodeParamType}, state: ${graphqlStateInterface}<${interface_1.PARTIAL_INTERFACE_IDENTIFIER}>) {
|
|
150
152
|
const { ${constants_1.LUVIO_IDENTIFIER}, path, data } = state;
|
|
151
153
|
const key = ${constants_2.KEY_BUILDER_IDENTIFIER}(${constants_1.LUVIO_IDENTIFIER}, path, data);
|
|
152
154
|
const ${constants_2.SINK_IDENTIFIER}: ${recursivePartialInterface}<${ramlInterface}> = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convert.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/convert.ts"],"names":[],"mappings":";;;;;;AAKA,uEAA+C;AAE/C,sDAIgC;AAEhC,oCAA2C;AAC3C,mCAKiB;AACjB,
|
|
1
|
+
{"version":3,"file":"convert.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/convert.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,6 +25,7 @@ function generateTypeUtil(graphqlResource, metadata, importContext) {
|
|
|
25
25
|
const cursorConnectionTypes = graphqlResource.graphqlDSL.cursorConnectionTypes;
|
|
26
26
|
return (0, imports_1.resolveImports)((0, deindent_1.default) `
|
|
27
27
|
export type ${constants_3.GRAPHQL_VARIABLES_IDENTIFIER} = Record<string, any>;
|
|
28
|
+
export type ${constants_3.NORMALIZED_GRAPHQL_TYPE}<D = undefined> = { data: Record<string, any>, ${constants_3.LINK_IDENTIFIER}?: ${constants_2.LUVIO_STORE_LINK_IMPORT}, ${constants_3.LINKED_DATA_IDENTIFIER}?: D};
|
|
28
29
|
export type ${constants_3.GRAPHQL_FRAGMENT_MAP_IDENTIFIER} = Record<string, ${constants_2.LUVIO_GRAPHQL_FRAGMENT_DEFINITION_NODE_IMPORT}>;
|
|
29
30
|
export type ${constants_3.GRAPHQL_TYPE_DETAILS_INTERFACE_IDENTIFIER} = { isArray: boolean, typename: string };
|
|
30
31
|
|
|
@@ -35,8 +36,11 @@ function generateTypeUtil(graphqlResource, metadata, importContext) {
|
|
|
35
36
|
fragments: ${constants_3.GRAPHQL_FRAGMENT_MAP_IDENTIFIER}
|
|
36
37
|
}
|
|
37
38
|
|
|
38
|
-
export interface ${constants_3.
|
|
39
|
+
export interface ${constants_3.GRAPHQL_LUVIO_STATE_INTERFACE_IDENTIFIER}<D> extends ${constants_3.GRAPHQL_STATE_INTERFACE_IDENTIFIER}<D> {
|
|
39
40
|
${constants_2.LUVIO_IDENTIFIER}: ${constants_2.LUVIO_IMPORT},
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
export interface ${constants_3.GRAPHQL_INGEST_STATE_INTERFACE_IDENTIFIER}<D> extends ${constants_3.GRAPHQL_LUVIO_STATE_INTERFACE_IDENTIFIER}<D> {
|
|
40
44
|
${constants_2.LUVIO_STORE_IDENTIFIER}: ${constants_2.LUVIO_STORE_IMPORT},
|
|
41
45
|
${constants_3.TIMESTAMP_IDENTIFIER}: number
|
|
42
46
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateTypeUtil.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/generateTypeUtil.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAC/C,oDAAwD;AAExD,oCAAuC;AAGvC,uDAAmF;AACnF,
|
|
1
|
+
{"version":3,"file":"generateTypeUtil.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/generateTypeUtil.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,5 +2,5 @@ import type { ImportContext } from '../../../utils/imports';
|
|
|
2
2
|
import type { ObjectTypeDefinitionNode } from '@luvio/graphql-parser';
|
|
3
3
|
import type { LuvioGraphQLDSL } from '../../../intermediate/graphql';
|
|
4
4
|
import type { GraphQLCodegenMetadata } from '../source-printer';
|
|
5
|
-
import type { ModelInfo } from '../../../
|
|
5
|
+
import type { ModelInfo } from '../../../intermediate/model-info';
|
|
6
6
|
export declare function generateType(graphqlDsl: LuvioGraphQLDSL, graphqlTypeName: string, def: ObjectTypeDefinitionNode, importContext: ImportContext, metadata: GraphQLCodegenMetadata, modelInfo: ModelInfo): string;
|
|
@@ -19,6 +19,10 @@ const ingest_field_by_type_1 = require("./ingest-field-by-type");
|
|
|
19
19
|
const is_mapped_field_1 = require("./is-mapped-field");
|
|
20
20
|
const fragment_matcher_1 = require("./fragment-matcher");
|
|
21
21
|
const version_1 = require("./version");
|
|
22
|
+
const convert_1 = require("./convert");
|
|
23
|
+
const ingest_mapped_1 = require("./ingest-mapped");
|
|
24
|
+
const attach_mapped_1 = require("./attach-mapped");
|
|
25
|
+
const mapped_type_cache_keys_1 = require("./mapped-type-cache-keys");
|
|
22
26
|
function generateType(graphqlDsl, graphqlTypeName, def, importContext, metadata, modelInfo) {
|
|
23
27
|
return (0, imports_1.resolveImports)((0, deindent_1.default) `
|
|
24
28
|
export const name = '${graphqlTypeName}';
|
|
@@ -28,13 +32,17 @@ function generateType(graphqlDsl, graphqlTypeName, def, importContext, metadata,
|
|
|
28
32
|
${(0, key_1.generateKey)(def, importContext, graphqlDsl.schemaName)}
|
|
29
33
|
${(0, merge_1.generateMerge)(importContext)}
|
|
30
34
|
${(0, ingest_1.generateIngest)(graphqlDsl, graphqlTypeName, def, importContext, metadata, modelInfo)}
|
|
31
|
-
${(0, select_1.generateSelect)(graphqlDsl, graphqlTypeName, def, importContext, metadata)}
|
|
35
|
+
${(0, select_1.generateSelect)(graphqlDsl, graphqlTypeName, def, importContext, metadata, modelInfo)}
|
|
32
36
|
${(0, query_transformer_1.generate)(graphqlDsl, graphqlTypeName, def, importContext, metadata)}
|
|
33
|
-
${(0, type_cache_keys_1.generateGetTypeCacheKeys)(graphqlDsl, graphqlTypeName, def, importContext, metadata)}
|
|
37
|
+
${(0, type_cache_keys_1.generateGetTypeCacheKeys)(graphqlDsl, graphqlTypeName, def, importContext, metadata, modelInfo)}
|
|
34
38
|
${(0, type_from_field_1.generateGetFieldType)(graphqlDsl, def)}
|
|
35
39
|
${(0, ingest_field_by_type_1.generateIngestFieldDataByType)(graphqlDsl, graphqlTypeName, def, importContext, metadata)}
|
|
36
40
|
${(0, is_mapped_field_1.generateIsMappedField)(graphqlDsl, graphqlTypeName, def)}
|
|
37
41
|
${(0, fragment_matcher_1.generateFragmentMatcher)(graphqlDsl, graphqlTypeName, def, importContext, metadata)};
|
|
42
|
+
${(0, convert_1.generateRamlConversion)(graphqlDsl, graphqlTypeName, importContext, def, modelInfo)}
|
|
43
|
+
${(0, ingest_mapped_1.generateIngestMappedData)(graphqlDsl, graphqlTypeName, importContext, modelInfo)}
|
|
44
|
+
${(0, attach_mapped_1.generateAttachMappedData)(graphqlDsl, graphqlTypeName, importContext, modelInfo)}
|
|
45
|
+
${(0, mapped_type_cache_keys_1.generateGetRamlMappingCacheKeys)(graphqlDsl, graphqlTypeName, importContext, modelInfo)}
|
|
38
46
|
`);
|
|
39
47
|
}
|
|
40
48
|
exports.generateType = generateType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/index.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAC/C,+BAAoC;AACpC,2CAAiD;AACjD,qCAA0C;AAC1C,+BAAoC;AACpC,mCAAwC;AACxC,oDAAwD;AAKxD,qCAA0C;AAC1C,2DAA2E;AAE3E,uDAA6D;AAC7D,uDAAyD;AACzD,iEAAuE;AACvE,uDAA0D;AAC1D,yDAA6D;AAC7D,uCAA4C;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/index.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAC/C,+BAAoC;AACpC,2CAAiD;AACjD,qCAA0C;AAC1C,+BAAoC;AACpC,mCAAwC;AACxC,oDAAwD;AAKxD,qCAA0C;AAC1C,2DAA2E;AAE3E,uDAA6D;AAC7D,uDAAyD;AACzD,iEAAuE;AACvE,uDAA0D;AAC1D,yDAA6D;AAC7D,uCAA4C;AAC5C,uCAAmD;AACnD,mDAA2D;AAC3D,mDAA2D;AAC3D,qEAA2E;AAE3E,SAAgB,YAAY,CACxB,UAA2B,EAC3B,eAAuB,EACvB,GAA6B,EAC7B,aAA4B,EAC5B,QAAgC,EAChC,SAAoB;IAEpB,OAAO,IAAA,wBAAc,EAAC,IAAA,kBAAQ,EAAA;+BACH,eAAe;UACpC,IAAA,iBAAW,EAAC,UAAU,EAAE,eAAe,CAAC;UACxC,IAAA,yBAAe,EAAC,eAAe,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;UAC9D,IAAA,8BAAkB,EAAC,UAAU,EAAE,eAAe,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;UAC7E,IAAA,iBAAW,EAAC,GAAG,EAAE,aAAa,EAAE,UAAU,CAAC,UAAU,CAAC;UACtD,IAAA,qBAAa,EAAC,aAAa,CAAC;UAC5B,IAAA,uBAAc,EAAC,UAAU,EAAE,eAAe,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;UACpF,IAAA,uBAAc,EAAC,UAAU,EAAE,eAAe,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;UACpF,IAAA,4BAAwB,EAAC,UAAU,EAAE,eAAe,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;UACnF,IAAA,0CAAwB,EACtB,UAAU,EACV,eAAe,EACf,GAAG,EACH,aAAa,EACb,QAAQ,EACR,SAAS,CACZ;UACC,IAAA,sCAAoB,EAAC,UAAU,EAAE,GAAG,CAAC;UACrC,IAAA,oDAA6B,EAAC,UAAU,EAAE,eAAe,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;UACxF,IAAA,uCAAqB,EAAC,UAAU,EAAE,eAAe,EAAE,GAAG,CAAC;UACvD,IAAA,0CAAuB,EAAC,UAAU,EAAE,eAAe,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;UAClF,IAAA,gCAAsB,EAAC,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,CAAC;UAClF,IAAA,wCAAwB,EAAC,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,CAAC;UAC/E,IAAA,wCAAwB,EAAC,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,CAAC;UAC/E,IAAA,wDAA+B,EAAC,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,CAAC;KAC3F,CAAC,CAAC;AACP,CAAC;AAnCD,oCAmCC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { LuvioGraphQLDSL } from '../../../intermediate/graphql';
|
|
2
|
+
import type { ModelInfo } from '../../../main';
|
|
3
|
+
import type { ImportContext } from '../../../utils/imports';
|
|
4
|
+
export declare function generateIngestMappedData(graphqlDsl: LuvioGraphQLDSL, graphqlTypeName: string, importContext: ImportContext, modelInfo: ModelInfo): string;
|
|
@@ -0,0 +1,36 @@
|
|
|
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.generateIngestMappedData = void 0;
|
|
7
|
+
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
|
+
const constants_1 = require("../../shared/constants");
|
|
9
|
+
const constants_2 = require("./constants");
|
|
10
|
+
const interface_1 = require("./interface");
|
|
11
|
+
const utils_1 = require("./utils");
|
|
12
|
+
function generateIngestMappedData(graphqlDsl, graphqlTypeName, importContext, modelInfo) {
|
|
13
|
+
const { importRamlArtifact, importGraphQLArtifact } = importContext;
|
|
14
|
+
const { typeNameToExtensions } = graphqlDsl;
|
|
15
|
+
const convertToRamlImport = importGraphQLArtifact('types', graphqlTypeName, constants_2.TYPE_CONVERT_IDENTIFIER);
|
|
16
|
+
const graphqlStateInterface = importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GRAPHQL_INGEST_STATE_INTERFACE_IDENTIFIER);
|
|
17
|
+
const ramlTypeName = (0, utils_1.getRamlTypeName)(typeNameToExtensions, graphqlTypeName);
|
|
18
|
+
if (ramlTypeName !== undefined) {
|
|
19
|
+
const ramlTypeId = (0, utils_1.getRamlTypeIdByName)(ramlTypeName, modelInfo);
|
|
20
|
+
if (ramlTypeId !== undefined) {
|
|
21
|
+
const ingestImport = importRamlArtifact(ramlTypeId, constants_2.TYPE_INGEST_IDENTIFIER);
|
|
22
|
+
return (0, deindent_1.default) `
|
|
23
|
+
export function ${constants_2.INGEST_MAPPED_DATA}(astNode: ${constants_1.LUVIO_GRAPHQL_FIELD_NODE_IMPORT}, state: ${graphqlStateInterface}<${interface_1.PARTIAL_INTERFACE_IDENTIFIER}>): ${constants_1.LUVIO_STORE_LINK_IMPORT} | undefined {
|
|
24
|
+
const ramlSink = ${convertToRamlImport}(astNode, state);
|
|
25
|
+
if (ramlSink !== undefined) {
|
|
26
|
+
// partially ingest with RAML
|
|
27
|
+
return ${ingestImport}(ramlSink, state.path, state.luvio, state.store, state.timestamp);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
`;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return '';
|
|
34
|
+
}
|
|
35
|
+
exports.generateIngestMappedData = generateIngestMappedData;
|
|
36
|
+
//# sourceMappingURL=ingest-mapped.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ingest-mapped.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/ingest-mapped.ts"],"names":[],"mappings":";;;;;;AAEA,uEAA+C;AAE/C,sDAAkG;AAClG,2CAMqB;AACrB,2CAA2D;AAC3D,mCAA+D;AAE/D,SAAgB,wBAAwB,CACpC,UAA2B,EAC3B,eAAuB,EACvB,aAA4B,EAC5B,SAAoB;IAEpB,MAAM,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,GAAG,aAAa,CAAC;IACpE,MAAM,EAAE,oBAAoB,EAAE,GAAG,UAAU,CAAC;IAE5C,MAAM,mBAAmB,GAAG,qBAAqB,CAC7C,OAAO,EACP,eAAe,EACf,mCAAuB,CAC1B,CAAC;IACF,MAAM,qBAAqB,GAAG,qBAAqB,CAC/C,OAAO,EACP,gCAAoB,EACpB,qDAAyC,CAC5C,CAAC;IAEF,MAAM,YAAY,GAAG,IAAA,uBAAe,EAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;IAC5E,IAAI,YAAY,KAAK,SAAS,EAAE;QAC5B,MAAM,UAAU,GAAG,IAAA,2BAAmB,EAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAChE,IAAI,UAAU,KAAK,SAAS,EAAE;YAC1B,MAAM,YAAY,GAAG,kBAAkB,CAAC,UAAU,EAAE,kCAAsB,CAAC,CAAC;YAC5E,OAAO,IAAA,kBAAQ,EAAA;8BACG,8BAAkB,aAAa,2CAA+B,YAAY,qBAAqB,IAAI,wCAA4B,OAAO,mCAAuB;mCACxJ,mBAAmB;;;6BAGzB,YAAY;;;aAG5B,CAAC;SACL;KACJ;IACD,OAAO,EAAE,CAAC;AACd,CAAC;AArCD,4DAqCC"}
|
|
@@ -6,9 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.generateIngest = void 0;
|
|
7
7
|
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
8
|
const constants_1 = require("../../shared/constants");
|
|
9
|
-
const utils_1 = require("
|
|
10
|
-
const utils_2 = require("./utils");
|
|
11
|
-
const convert_1 = require("./convert");
|
|
9
|
+
const utils_1 = require("./utils");
|
|
12
10
|
const constants_2 = require("./constants");
|
|
13
11
|
const interface_1 = require("./interface");
|
|
14
12
|
const constants_3 = require("../../pagination-utils/constants");
|
|
@@ -21,7 +19,7 @@ const version_1 = require("./version");
|
|
|
21
19
|
const INGEST_PAGINATED_METDATA = 'ingestPaginationMetadata';
|
|
22
20
|
function generateObjectTypeIngest(importContext, graphqlTypeName, isCursorConnectionType) {
|
|
23
21
|
const ingestStatements = [
|
|
24
|
-
(0,
|
|
22
|
+
(0, utils_1.getRequestedFieldsStatement)(importContext, graphqlTypeName),
|
|
25
23
|
iterateThroughResponseKeys(importContext, graphqlTypeName, isCursorConnectionType),
|
|
26
24
|
];
|
|
27
25
|
return ingestStatements.join('\n');
|
|
@@ -108,6 +106,7 @@ function iterateThroughResponseKeys(importContext, graphqlTypeName, isCursorConn
|
|
|
108
106
|
const getFieldKeyImport = importContext.importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER);
|
|
109
107
|
const getFieldTypeImport = importContext.importGraphQLArtifact('types', graphqlTypeName, constants_2.GET_FIELD_TYPE_IDENTIFIER);
|
|
110
108
|
const deepFreezeImport = importContext.importTypeUtil('deepFreeze');
|
|
109
|
+
const isMappedFieldImport = importContext.importGraphQLArtifact('types', graphqlTypeName, constants_2.IS_MAPPED_FIELD_IDENTIFIER);
|
|
111
110
|
return (0, deindent_1.default) `
|
|
112
111
|
for(const ${constants_2.FIELD_DATA_KEY_IDENTIFIER} of Object.keys(data)){
|
|
113
112
|
const ${constants_2.FIELD_DATA_IDENTIFIER} = data[${constants_2.FIELD_DATA_KEY_IDENTIFIER}];
|
|
@@ -115,7 +114,7 @@ function iterateThroughResponseKeys(importContext, graphqlTypeName, isCursorConn
|
|
|
115
114
|
if(${constants_2.REQUESTED_FIELD_IDENTIFIER} === undefined) {
|
|
116
115
|
continue; // TODO: (W-11132802) We got a field back we didn't ask for. Call handleUnknownField.
|
|
117
116
|
}
|
|
118
|
-
if(${
|
|
117
|
+
if(${isMappedFieldImport}(${constants_2.REQUESTED_FIELD_IDENTIFIER})) {
|
|
119
118
|
continue; // Skips scalar fields that are mapped to RAML.
|
|
120
119
|
}
|
|
121
120
|
const ${constants_2.FIELD_TYPE_IDENTIFIER} = ${getFieldTypeImport}(${constants_2.REQUESTED_FIELD_IDENTIFIER});
|
|
@@ -150,33 +149,30 @@ function iterateThroughResponseKeys(importContext, graphqlTypeName, isCursorConn
|
|
|
150
149
|
function generateIngest(graphqlDsl, graphqlTypeName, def, importContext, _metadata, modelInfo) {
|
|
151
150
|
var _a;
|
|
152
151
|
const { schema, typeNameToExtensions, cursorConnectionTypes } = graphqlDsl;
|
|
153
|
-
const { importGraphQLArtifact, importAdapterUtil,
|
|
154
|
-
const normalizableTypeMap = (0, utils_1.getNormalizableTypeMap)(schema);
|
|
152
|
+
const { importGraphQLArtifact, importAdapterUtil, importTypeUtil } = importContext;
|
|
155
153
|
const createLink = importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.CREATE_LINK_IDENTIFIER);
|
|
156
154
|
const graphqlStateInterface = importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GRAPHQL_INGEST_STATE_INTERFACE_IDENTIFIER);
|
|
157
155
|
const equalsObjectImport = importTypeUtil('equalsObject');
|
|
158
156
|
const STABLE_JSON_STRINGIFY = importAdapterUtil('stableJSONStringify');
|
|
159
157
|
const keyPrefix = importAdapterUtil('keyPrefix');
|
|
160
|
-
const ttl = (0,
|
|
158
|
+
const ttl = (0, utils_1.isTypeExtensionDefined)(typeNameToExtensions, graphqlTypeName, 'ttl')
|
|
161
159
|
? 'TTL'
|
|
162
160
|
: importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, 'TTL');
|
|
163
161
|
const astNodeParamType = ((_a = schema.getQueryType()) === null || _a === void 0 ? void 0 : _a.name) === graphqlTypeName
|
|
164
162
|
? constants_1.LUVIO_GRAPHQL_OPERATION_DEFINITION_NODE_IMPORT
|
|
165
163
|
: constants_1.LUVIO_GRAPHQL_FIELD_NODE_IMPORT;
|
|
166
|
-
const
|
|
167
|
-
let
|
|
168
|
-
const ramlTypeName = (0,
|
|
164
|
+
const ingestMappedDataImport = importGraphQLArtifact('types', graphqlTypeName, constants_2.INGEST_MAPPED_DATA);
|
|
165
|
+
let ramlIngestBlock = '';
|
|
166
|
+
const ramlTypeName = (0, utils_1.getRamlTypeName)(typeNameToExtensions, graphqlTypeName);
|
|
169
167
|
if (ramlTypeName !== undefined) {
|
|
170
|
-
const ramlTypeId = (0,
|
|
168
|
+
const ramlTypeId = (0, utils_1.getRamlTypeIdByName)(ramlTypeName, modelInfo);
|
|
171
169
|
if (ramlTypeId !== undefined) {
|
|
172
|
-
|
|
170
|
+
ramlIngestBlock = (0, deindent_1.default) `
|
|
171
|
+
mergedData["${constants_2.LINK_IDENTIFIER}"] = ${ingestMappedDataImport}(astNode, state);`;
|
|
173
172
|
}
|
|
174
173
|
}
|
|
175
174
|
const isCursorConnectionType = cursorConnectionTypes.includes(graphqlTypeName);
|
|
176
175
|
return (0, deindent_1.default) `
|
|
177
|
-
|
|
178
|
-
${convertToRaml}
|
|
179
|
-
|
|
180
176
|
${isCursorConnectionType ? generatePaginationFunction(importContext, astNodeParamType) : ''}
|
|
181
177
|
|
|
182
178
|
export function ingest(astNode: ${astNodeParamType}, state: ${graphqlStateInterface}<${interface_1.PARTIAL_INTERFACE_IDENTIFIER}>) {
|
|
@@ -189,17 +185,7 @@ function generateIngest(graphqlDsl, graphqlTypeName, def, importContext, _metada
|
|
|
189
185
|
|
|
190
186
|
// merge existing cache data and new request response data
|
|
191
187
|
let mergedData: Record<string,any> = {data: ${constants_2.SINK_IDENTIFIER}};
|
|
192
|
-
${
|
|
193
|
-
? ''
|
|
194
|
-
: (0, deindent_1.default) `
|
|
195
|
-
// delegate type ingest to RAML ingest if the type is in RAML mapping
|
|
196
|
-
const ramlSink = convertGraphQLToRaml(astNode, state);
|
|
197
|
-
if (ramlSink !== undefined) {
|
|
198
|
-
|
|
199
|
-
// partially ingest with RAML
|
|
200
|
-
const ramlTypeRef = ${ramlIngest}(ramlSink, path, ${constants_1.LUVIO_IDENTIFIER}, ${constants_1.LUVIO_STORE_IDENTIFIER}, ${constants_2.TIMESTAMP_IDENTIFIER});
|
|
201
|
-
mergedData["__link"] = ramlTypeRef;
|
|
202
|
-
}`}
|
|
188
|
+
${ramlIngestBlock}
|
|
203
189
|
const existingData = ${constants_1.LUVIO_STORE_IDENTIFIER}.readEntry<${interface_1.PARTIAL_INTERFACE_IDENTIFIER}>(key);
|
|
204
190
|
${isCursorConnectionType
|
|
205
191
|
? `${INGEST_PAGINATED_METDATA}(astNode, state, key, ${constants_2.SINK_IDENTIFIER} as ${interface_1.PARTIAL_INTERFACE_IDENTIFIER}, existingData as ${interface_1.PARTIAL_INTERFACE_IDENTIFIER});`
|