@luvio/compiler 0.86.0 → 0.87.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 +5 -0
- package/dist/codegen/graphql/interface/index.js +19 -0
- package/dist/codegen/graphql/interface/index.js.map +1 -0
- package/dist/codegen/graphql/interface/ingest.d.ts +6 -0
- package/dist/codegen/graphql/interface/ingest.js +45 -0
- package/dist/codegen/graphql/interface/ingest.js.map +1 -0
- package/dist/codegen/graphql/interface/interface.d.ts +11 -0
- package/dist/codegen/graphql/interface/interface.js +94 -0
- package/dist/codegen/graphql/interface/interface.js.map +1 -0
- package/dist/codegen/graphql/source-printer/graphql-type-source-printer.js +6 -2
- package/dist/codegen/graphql/source-printer/graphql-type-source-printer.js.map +1 -1
- package/dist/codegen/graphql/type/constants.d.ts +7 -0
- package/dist/codegen/graphql/type/constants.js +8 -1
- package/dist/codegen/graphql/type/constants.js.map +1 -1
- package/dist/codegen/graphql/type/generateTypeUtil.d.ts +3 -0
- package/dist/codegen/graphql/type/generateTypeUtil.js +94 -0
- package/dist/codegen/graphql/type/generateTypeUtil.js.map +1 -0
- package/dist/codegen/graphql/type/index.d.ts +2 -4
- package/dist/codegen/graphql/type/index.js +1 -29
- package/dist/codegen/graphql/type/index.js.map +1 -1
- package/dist/codegen/graphql/type/ingest.d.ts +3 -3
- package/dist/codegen/graphql/type/ingest.js +66 -45
- 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 +2 -2
- package/dist/codegen/graphql/type/interface.js.map +1 -1
- package/dist/codegen/shape/graphql/shape-type-definition.js +1 -1
- package/dist/codegen/shape/shape-ingest-paginated.js +3 -3
- package/dist/codegen/shape/shape-ingest-paginated.js.map +1 -1
- package/dist/codegen/shared/constants.d.ts +2 -0
- package/dist/codegen/shared/constants.js +3 -1
- package/dist/codegen/shared/constants.js.map +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { ImportContext } from '../../../utils/imports';
|
|
2
|
+
import type { InterfaceTypeDefinitionNode } from '@luvio/graphql-parser';
|
|
3
|
+
import type { LuvioGraphQLDSL } from '../../../intermediate/graphql';
|
|
4
|
+
import type { GraphQLCodegenMetadata } from '../source-printer';
|
|
5
|
+
export declare function generateInterfaceType(graphqlDsl: LuvioGraphQLDSL, typeName: string, def: InterfaceTypeDefinitionNode, importContext: ImportContext, metadata: GraphQLCodegenMetadata): string;
|
|
@@ -0,0 +1,19 @@
|
|
|
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.generateInterfaceType = void 0;
|
|
7
|
+
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
|
+
const interface_1 = require("./interface");
|
|
9
|
+
const ingest_1 = require("./ingest");
|
|
10
|
+
const imports_1 = require("../../../utils/imports");
|
|
11
|
+
function generateInterfaceType(graphqlDsl, typeName, def, importContext, metadata) {
|
|
12
|
+
return (0, imports_1.resolveImports)((0, deindent_1.default) `
|
|
13
|
+
export const name = '${typeName}';
|
|
14
|
+
${(0, interface_1.generateInterface)(typeName, def, importContext, metadata)}
|
|
15
|
+
${(0, ingest_1.generateIngest)(graphqlDsl, typeName, def, importContext, metadata)}
|
|
16
|
+
`);
|
|
17
|
+
}
|
|
18
|
+
exports.generateInterfaceType = generateInterfaceType;
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +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;AAMxD,SAAgB,qBAAqB,CACjC,UAA2B,EAC3B,QAAgB,EAChB,GAAgC,EAChC,aAA4B,EAC5B,QAAgC;IAEhC,OAAO,IAAA,wBAAc,EAAC,IAAA,kBAAQ,EAAA;+BACH,QAAQ;UAC7B,IAAA,6BAAiB,EAAC,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;UACzD,IAAA,uBAAc,EAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;KACvE,CAAC,CAAC;AACP,CAAC;AAZD,sDAYC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
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 generateIngestFromDef(graphqlDsl: LuvioGraphQLDSL, def: InterfaceTypeDefinitionNode, importContext: ImportContext): string;
|
|
6
|
+
export declare function generateIngest(graphqlDsl: LuvioGraphQLDSL, typeName: string, def: InterfaceTypeDefinitionNode, importContext: ImportContext, _metadata: GraphQLCodegenMetadata): string;
|
|
@@ -0,0 +1,45 @@
|
|
|
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.generateIngest = exports.generateIngestFromDef = void 0;
|
|
7
|
+
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
|
+
const constants_1 = require("../../shared/constants");
|
|
9
|
+
const interface_1 = require("./interface");
|
|
10
|
+
const constants_2 = require("../type/constants");
|
|
11
|
+
function generateIngestFromDef(graphqlDsl, def, importContext) {
|
|
12
|
+
const { schema } = graphqlDsl;
|
|
13
|
+
const type = schema.getType(def.name.value);
|
|
14
|
+
if (type) {
|
|
15
|
+
const ingestStatements = schema.getImplementations(type).objects.map((object) => {
|
|
16
|
+
return (0, deindent_1.default) `
|
|
17
|
+
if(typename === '${object.name}') {
|
|
18
|
+
return ${importContext.importGraphQLArtifact(object.name, 'ingest')}(astNode, state)
|
|
19
|
+
}
|
|
20
|
+
`;
|
|
21
|
+
});
|
|
22
|
+
return ingestStatements.join('\n');
|
|
23
|
+
}
|
|
24
|
+
return '';
|
|
25
|
+
}
|
|
26
|
+
exports.generateIngestFromDef = generateIngestFromDef;
|
|
27
|
+
function generateIngest(graphqlDsl, typeName, def, importContext, _metadata) {
|
|
28
|
+
var _a;
|
|
29
|
+
const { schema } = graphqlDsl;
|
|
30
|
+
const { importGraphQLArtifact } = importContext;
|
|
31
|
+
const graphqlStateInterface = importGraphQLArtifact(constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GRAPHQL_STATE_INTERFACE_IDENTIFIER);
|
|
32
|
+
const astNodeParamType = ((_a = schema.getQueryType()) === null || _a === void 0 ? void 0 : _a.name) === typeName
|
|
33
|
+
? constants_1.LUVIO_GRAPHQL_OPERATION_DEFINITION_NODE_IMPORT
|
|
34
|
+
: constants_1.LUVIO_GRAPHQL_FIELD_NODE_IMPORT;
|
|
35
|
+
return (0, deindent_1.default) `
|
|
36
|
+
export function ingest(astNode: ${astNodeParamType}, state: ${graphqlStateInterface}<${interface_1.PARTIAL_INTERFACE_IDENTIFIER}>) {
|
|
37
|
+
const typename = state.data.__typename;
|
|
38
|
+
|
|
39
|
+
// Delegate key building and ingest to concrete implementations
|
|
40
|
+
${generateIngestFromDef(graphqlDsl, def, importContext)};
|
|
41
|
+
}
|
|
42
|
+
`;
|
|
43
|
+
}
|
|
44
|
+
exports.generateIngest = generateIngest;
|
|
45
|
+
//# sourceMappingURL=ingest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/interface/ingest.ts"],"names":[],"mappings":";;;;;;AACA,uEAA+C;AAE/C,sDAGgC;AAGhC,2CAA2D;AAC3D,iDAA6F;AAE7F,SAAgB,qBAAqB,CACjC,UAA2B,EAC3B,GAAgC,EAChC,aAA4B;IAE5B,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;IAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAyB,CAAC;IACpE,IAAI,IAAI,EAAE;QACN,MAAM,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC5E,OAAO,IAAA,kBAAQ,EAAA;mCACQ,MAAM,CAAC,IAAI;6BACjB,aAAa,CAAC,qBAAqB,CACxC,MAAM,CAAC,IAAI,EACX,QAAQ,CACX;;aAER,CAAC;QACN,CAAC,CAAC,CAAC;QAEH,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACtC;IAED,OAAO,EAAE,CAAC;AACd,CAAC;AAvBD,sDAuBC;AAED,SAAgB,cAAc,CAC1B,UAA2B,EAC3B,QAAgB,EAChB,GAAgC,EAChC,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,gCAAoB,EACpB,8CAAkC,CACrC,CAAC;IACF,MAAM,gBAAgB,GAClB,CAAA,MAAA,MAAM,CAAC,YAAY,EAAE,0CAAE,IAAI,MAAK,QAAQ;QACpC,CAAC,CAAC,0DAA8C;QAChD,CAAC,CAAC,2CAA+B,CAAC;IAE1C,OAAO,IAAA,kBAAQ,EAAA;0CACuB,gBAAgB,YAAY,qBAAqB,IAAI,wCAA4B;;;;cAI7G,qBAAqB,CAAC,UAAU,EAAE,GAAG,EAAE,aAAa,CAAC;;KAE9D,CAAC;AACN,CAAC;AA1BD,wCA0BC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { InterfaceTypeDefinitionNode, TypeNode } from '@luvio/graphql-parser';
|
|
2
|
+
import type { GraphQLCodegenMetadata } from '../source-printer/graphql-source-printer';
|
|
3
|
+
import type { ImportContext } from '../../../utils/imports';
|
|
4
|
+
export declare const TYPE_INTERFACE_IDENTIFIER = "Interface";
|
|
5
|
+
export declare const MINIMUM_INTERFACE_IDENTIFIER: string;
|
|
6
|
+
export declare const PARTIAL_INTERFACE_IDENTIFIER: string;
|
|
7
|
+
export declare function generateTypeReference(type: TypeNode, importContext: ImportContext, scalarToPrimitiveMap: Record<string, string>, state: {
|
|
8
|
+
required: boolean;
|
|
9
|
+
array: boolean;
|
|
10
|
+
}): string;
|
|
11
|
+
export declare function generateInterface(name: string, def: InterfaceTypeDefinitionNode, importContext: ImportContext, metadata: GraphQLCodegenMetadata): string;
|
|
@@ -0,0 +1,94 @@
|
|
|
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.generateInterface = exports.generateTypeReference = exports.PARTIAL_INTERFACE_IDENTIFIER = exports.MINIMUM_INTERFACE_IDENTIFIER = exports.TYPE_INTERFACE_IDENTIFIER = void 0;
|
|
7
|
+
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
|
+
const key_1 = require("../type/key");
|
|
9
|
+
exports.TYPE_INTERFACE_IDENTIFIER = 'Interface';
|
|
10
|
+
exports.MINIMUM_INTERFACE_IDENTIFIER = `Minimum${exports.TYPE_INTERFACE_IDENTIFIER}`;
|
|
11
|
+
exports.PARTIAL_INTERFACE_IDENTIFIER = `Partial${exports.TYPE_INTERFACE_IDENTIFIER}`;
|
|
12
|
+
function generateNamedTypeReference(type, importContext, scalarToPrimitiveMap) {
|
|
13
|
+
const { value: typeName } = type.name;
|
|
14
|
+
if (scalarToPrimitiveMap[type.name.value] !== undefined) {
|
|
15
|
+
return scalarToPrimitiveMap[type.name.value];
|
|
16
|
+
}
|
|
17
|
+
return importContext.importGraphQLArtifact(typeName, exports.TYPE_INTERFACE_IDENTIFIER);
|
|
18
|
+
}
|
|
19
|
+
function generateTypeReference(type, importContext, scalarToPrimitiveMap, state) {
|
|
20
|
+
switch (type.kind) {
|
|
21
|
+
case 'ListType':
|
|
22
|
+
return `${generateTypeReference(type.type, importContext, scalarToPrimitiveMap, {
|
|
23
|
+
required: state.required,
|
|
24
|
+
array: true,
|
|
25
|
+
})}`;
|
|
26
|
+
case 'NonNullType':
|
|
27
|
+
return generateTypeReference(type.type, importContext, scalarToPrimitiveMap, {
|
|
28
|
+
required: true,
|
|
29
|
+
array: state.array,
|
|
30
|
+
});
|
|
31
|
+
case 'NamedType': {
|
|
32
|
+
let base = generateNamedTypeReference(type, importContext, scalarToPrimitiveMap);
|
|
33
|
+
if (state.array === true) {
|
|
34
|
+
base = `${base}[]`;
|
|
35
|
+
}
|
|
36
|
+
if (state.required === false) {
|
|
37
|
+
base = `${base} | null`;
|
|
38
|
+
}
|
|
39
|
+
return base;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
exports.generateTypeReference = generateTypeReference;
|
|
44
|
+
function generateMinimumInterface(idNode) {
|
|
45
|
+
if (idNode === undefined) {
|
|
46
|
+
return '';
|
|
47
|
+
}
|
|
48
|
+
const properties = {};
|
|
49
|
+
if (idNode !== undefined) {
|
|
50
|
+
const idNodeName = idNode.name.value;
|
|
51
|
+
properties[idNodeName] = `${idNodeName}: Interface["${idNodeName}"]`;
|
|
52
|
+
}
|
|
53
|
+
return (0, deindent_1.default) `
|
|
54
|
+
export interface ${exports.MINIMUM_INTERFACE_IDENTIFIER} {
|
|
55
|
+
${Object.values(properties).join(';\n')}
|
|
56
|
+
}
|
|
57
|
+
`;
|
|
58
|
+
}
|
|
59
|
+
function generateInterfaceTypeDefinitionNode(name, def, importContext, scalarToPrimitiveMap) {
|
|
60
|
+
const { fields } = def;
|
|
61
|
+
if (fields === undefined) {
|
|
62
|
+
return (0, deindent_1.default) `
|
|
63
|
+
interface ${exports.TYPE_INTERFACE_IDENTIFIER} {}
|
|
64
|
+
`;
|
|
65
|
+
}
|
|
66
|
+
const properties = fields.map((field) => {
|
|
67
|
+
const { name, type } = field;
|
|
68
|
+
return (0, deindent_1.default) `
|
|
69
|
+
${name.value}: ${generateTypeReference(type, importContext, scalarToPrimitiveMap, {
|
|
70
|
+
required: false,
|
|
71
|
+
array: false,
|
|
72
|
+
})}
|
|
73
|
+
`;
|
|
74
|
+
});
|
|
75
|
+
const idNode = (0, key_1.findIdNode)(def);
|
|
76
|
+
const minimum = generateMinimumInterface(idNode);
|
|
77
|
+
const partialDef = minimum === ''
|
|
78
|
+
? `Record<string, any>`
|
|
79
|
+
: `Record<string, any> & ${exports.MINIMUM_INTERFACE_IDENTIFIER}`;
|
|
80
|
+
return (0, deindent_1.default) `
|
|
81
|
+
export interface ${exports.TYPE_INTERFACE_IDENTIFIER} {
|
|
82
|
+
${properties.join(';\n')}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
${minimum}
|
|
86
|
+
|
|
87
|
+
export type ${exports.PARTIAL_INTERFACE_IDENTIFIER} = ${partialDef};
|
|
88
|
+
`;
|
|
89
|
+
}
|
|
90
|
+
function generateInterface(name, def, importContext, metadata) {
|
|
91
|
+
return generateInterfaceTypeDefinitionNode(name, def, importContext, metadata.scalarToPrimitiveMap);
|
|
92
|
+
}
|
|
93
|
+
exports.generateInterface = generateInterface;
|
|
94
|
+
//# sourceMappingURL=interface.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/interface/interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,10 +8,12 @@ const imports_1 = require("../../../utils/imports");
|
|
|
8
8
|
const path_1 = __importDefault(require("path"));
|
|
9
9
|
const graphql_parser_1 = require("@luvio/graphql-parser");
|
|
10
10
|
const type_1 = require("../type");
|
|
11
|
+
const generateTypeUtil_1 = require("../type/generateTypeUtil");
|
|
11
12
|
const union_1 = require("../union");
|
|
12
13
|
const enum_1 = require("../enum");
|
|
13
14
|
const utils_1 = require("../../../intermediate/utils");
|
|
14
15
|
const graphql_1 = require("../../shape/graphql");
|
|
16
|
+
const interface_1 = require("../interface");
|
|
15
17
|
exports.GRAPHQL_OUTPUT_DIRECTORY = 'graphql';
|
|
16
18
|
exports.GRAPHQL_OBJECT_TYPENAME = 'typeName';
|
|
17
19
|
const GRAPHQL_TYPES_DIRECTORY = 'types';
|
|
@@ -22,7 +24,7 @@ class GraphQLTypeSourcePrinter {
|
|
|
22
24
|
const typeKeys = Object.keys(graphqlDSL.schema.getTypeMap());
|
|
23
25
|
const modules = {};
|
|
24
26
|
const { relPath } = this.createGraphQLTypeImportContext(compilerBaseOutputDir, 'type-util');
|
|
25
|
-
const typeUtil = (0,
|
|
27
|
+
const typeUtil = (0, generateTypeUtil_1.generateTypeUtil)(graphQLResource, metadata);
|
|
26
28
|
modules[relPath] = typeUtil;
|
|
27
29
|
// TODO: What should happen if multiple endpoints use the same Representation? Technically this would be legal in RAML as the
|
|
28
30
|
// top level types are the same.
|
|
@@ -37,9 +39,11 @@ class GraphQLTypeSourcePrinter {
|
|
|
37
39
|
const { relPath, importContext } = this.createGraphQLTypeImportContext(compilerBaseOutputDir, typeDefinition.name);
|
|
38
40
|
switch (kind) {
|
|
39
41
|
case graphql_parser_1.Kind.OBJECT_TYPE_DEFINITION:
|
|
40
|
-
case graphql_parser_1.Kind.INTERFACE_TYPE_DEFINITION:
|
|
41
42
|
modules[relPath] = (0, type_1.generateType)(graphqlDSL, typeDefinition.name, typeDefinition.astNode, importContext, metadata);
|
|
42
43
|
break;
|
|
44
|
+
case graphql_parser_1.Kind.INTERFACE_TYPE_DEFINITION:
|
|
45
|
+
modules[relPath] = (0, interface_1.generateInterfaceType)(graphqlDSL, typeDefinition.name, typeDefinition.astNode, importContext, metadata);
|
|
46
|
+
break;
|
|
43
47
|
case graphql_parser_1.Kind.UNION_TYPE_DEFINITION:
|
|
44
48
|
modules[relPath] = (0, union_1.generate)(typeDefinition.name, typeDefinition.astNode, importContext, metadata);
|
|
45
49
|
break;
|
|
@@ -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,
|
|
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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"}
|
|
@@ -5,3 +5,10 @@ export declare const CREATE_LINK_IDENTIFIER = "createLink";
|
|
|
5
5
|
export declare const TYPE_UTIL_IDENTIFIER = "type-util";
|
|
6
6
|
export declare const TYPE_INGEST_IDENTIFIER = "ingest";
|
|
7
7
|
export declare const KEY_BUILDER_IDENTIFIER = "keyBuilder";
|
|
8
|
+
export declare const SERIALIZE_FIELD_ARGUMENTS_IDENTIFIER = "serializeFieldArguments";
|
|
9
|
+
export declare const GET_REQUESTED_FIELD_IDENTIFIER = "getRequestedField";
|
|
10
|
+
export declare const GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER = "getSerializedKeyForField";
|
|
11
|
+
export declare const FIELD_KEY_IDENTIFIER = "fieldKey";
|
|
12
|
+
export declare const FIELD_DATA_IDENTIFIER = "fieldData";
|
|
13
|
+
export declare const FIELD_DATA_KEY_IDENTIFIER = "fieldDataKey";
|
|
14
|
+
export declare const REQUESTED_FIELD_IDENTIFIER = "requestedField";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.KEY_BUILDER_IDENTIFIER = exports.TYPE_INGEST_IDENTIFIER = exports.TYPE_UTIL_IDENTIFIER = exports.CREATE_LINK_IDENTIFIER = exports.TIMESTAMP_IDENTIFIER = exports.GRAPHQL_STATE_INTERFACE_IDENTIFIER = exports.GRAPHQL_VARIABLES_IDENTIFIER = void 0;
|
|
3
|
+
exports.REQUESTED_FIELD_IDENTIFIER = exports.FIELD_DATA_KEY_IDENTIFIER = exports.FIELD_DATA_IDENTIFIER = exports.FIELD_KEY_IDENTIFIER = exports.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER = exports.GET_REQUESTED_FIELD_IDENTIFIER = exports.SERIALIZE_FIELD_ARGUMENTS_IDENTIFIER = exports.KEY_BUILDER_IDENTIFIER = exports.TYPE_INGEST_IDENTIFIER = exports.TYPE_UTIL_IDENTIFIER = exports.CREATE_LINK_IDENTIFIER = exports.TIMESTAMP_IDENTIFIER = exports.GRAPHQL_STATE_INTERFACE_IDENTIFIER = exports.GRAPHQL_VARIABLES_IDENTIFIER = void 0;
|
|
4
4
|
exports.GRAPHQL_VARIABLES_IDENTIFIER = 'GraphQLVariables';
|
|
5
5
|
exports.GRAPHQL_STATE_INTERFACE_IDENTIFIER = 'GraphQLState';
|
|
6
6
|
exports.TIMESTAMP_IDENTIFIER = 'timestamp';
|
|
@@ -8,4 +8,11 @@ exports.CREATE_LINK_IDENTIFIER = 'createLink';
|
|
|
8
8
|
exports.TYPE_UTIL_IDENTIFIER = 'type-util';
|
|
9
9
|
exports.TYPE_INGEST_IDENTIFIER = 'ingest';
|
|
10
10
|
exports.KEY_BUILDER_IDENTIFIER = 'keyBuilder';
|
|
11
|
+
exports.SERIALIZE_FIELD_ARGUMENTS_IDENTIFIER = 'serializeFieldArguments';
|
|
12
|
+
exports.GET_REQUESTED_FIELD_IDENTIFIER = 'getRequestedField';
|
|
13
|
+
exports.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER = 'getSerializedKeyForField';
|
|
14
|
+
exports.FIELD_KEY_IDENTIFIER = 'fieldKey';
|
|
15
|
+
exports.FIELD_DATA_IDENTIFIER = 'fieldData';
|
|
16
|
+
exports.FIELD_DATA_KEY_IDENTIFIER = 'fieldDataKey';
|
|
17
|
+
exports.REQUESTED_FIELD_IDENTIFIER = 'requestedField';
|
|
11
18
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,4BAA4B,GAAG,kBAAkB,CAAC;AAClD,QAAA,kCAAkC,GAAG,cAAc,CAAC;AACpD,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,sBAAsB,GAAG,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,4BAA4B,GAAG,kBAAkB,CAAC;AAClD,QAAA,kCAAkC,GAAG,cAAc,CAAC;AACpD,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,sBAAsB,GAAG,YAAY,CAAC;AACtC,QAAA,oCAAoC,GAAG,yBAAyB,CAAC;AACjE,QAAA,8BAA8B,GAAG,mBAAmB,CAAC;AACrD,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,0BAA0B,GAAG,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,94 @@
|
|
|
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.generateTypeUtil = void 0;
|
|
7
|
+
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
|
+
const imports_1 = require("../../../utils/imports");
|
|
9
|
+
const utils_1 = require("../utils");
|
|
10
|
+
const constants_1 = require("../../adapter/constants");
|
|
11
|
+
const constants_2 = require("../../shared/constants");
|
|
12
|
+
const constants_3 = require("./constants");
|
|
13
|
+
function generateTypeUtil(graphqlResource, metadata) {
|
|
14
|
+
var _a;
|
|
15
|
+
return (0, imports_1.resolveImports)((0, deindent_1.default) `
|
|
16
|
+
export type ${constants_3.GRAPHQL_VARIABLES_IDENTIFIER} = Record<string, any>;
|
|
17
|
+
|
|
18
|
+
export interface ${constants_3.GRAPHQL_STATE_INTERFACE_IDENTIFIER}<D = unknown> {
|
|
19
|
+
data: D,
|
|
20
|
+
variables: ${constants_3.GRAPHQL_VARIABLES_IDENTIFIER},
|
|
21
|
+
path: ${constants_1.ADAPTER_INGEST_PATH_INTERFACE_IDENTIFIER}
|
|
22
|
+
${constants_2.LUVIO_IDENTIFIER}: ${constants_2.LUVIO_IMPORT},
|
|
23
|
+
${constants_2.LUVIO_STORE_IDENTIFIER}: ${constants_2.LUVIO_STORE_IMPORT},
|
|
24
|
+
${constants_3.TIMESTAMP_IDENTIFIER}: number
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export function ${constants_3.CREATE_LINK_IDENTIFIER}(ref: string) {
|
|
28
|
+
return {
|
|
29
|
+
__ref: ref,
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export function ${constants_3.SERIALIZE_FIELD_ARGUMENTS_IDENTIFIER}(argumentNodes: Readonly<${constants_2.LUVIO_GRAPHQL_ARGUMENT_NODE_IMPORT}[]>, variables: ${constants_3.GRAPHQL_VARIABLES_IDENTIFIER}): string {
|
|
34
|
+
const mutableArgumentNodes = Object.assign([], argumentNodes);
|
|
35
|
+
return \`args__(\${mutableArgumentNodes.sort(
|
|
36
|
+
(a, b) =>{
|
|
37
|
+
const aName = a.name.value.toUpperCase()
|
|
38
|
+
const bName = b.name.value.toUpperCase()
|
|
39
|
+
return aName < bName ? -1 : (aName > bName) ? 1 : 0;
|
|
40
|
+
}).map(node => serializeArgNode(node, variables)).join("::")})\`
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
function serializeArgNode(argumentNode: ${constants_2.LUVIO_GRAPHQL_ARGUMENT_NODE_IMPORT}, variables: ${constants_3.GRAPHQL_VARIABLES_IDENTIFIER}): string {
|
|
44
|
+
const argName = argumentNode.name.value;
|
|
45
|
+
return \`\${argName}:\${serializeValueNode(argumentNode.value, variables)}\`
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
function serializeValueNode(valueNode: ${constants_2.LUVIO_GRAPHQL_VALUE_NODE_IMPORT}, variables: ${constants_3.GRAPHQL_VARIABLES_IDENTIFIER}): string {
|
|
49
|
+
switch(valueNode.kind){
|
|
50
|
+
case("BooleanValue"):
|
|
51
|
+
return valueNode.value + ''
|
|
52
|
+
case("IntValue"):
|
|
53
|
+
case("FloatValue"):
|
|
54
|
+
case("EnumValue"):
|
|
55
|
+
case("StringValue"):
|
|
56
|
+
return valueNode.value
|
|
57
|
+
case("ListValue"):
|
|
58
|
+
const mutableValueNodeList = Object.assign([], valueNode.values);
|
|
59
|
+
return mutableValueNodeList.sort(
|
|
60
|
+
(a, b) =>{
|
|
61
|
+
const aName = a.name.value.toUpperCase()
|
|
62
|
+
const bName = b.name.value.toUpperCase()
|
|
63
|
+
return aName < bName ? -1 : (aName > bName) ? 1 : 0
|
|
64
|
+
}).map((val, i) => serializeValueNode(val, variables) + \`[\${i}]\`).join(',')
|
|
65
|
+
case("Variable"):
|
|
66
|
+
return variables[valueNode.name.value] + "" //TODO: Is this correct serialization for object type variables?
|
|
67
|
+
case("NullValue"):
|
|
68
|
+
return "null";
|
|
69
|
+
case("ObjectValue"):
|
|
70
|
+
const mutableFieldNodeList = Object.assign([], valueNode.fields);
|
|
71
|
+
return mutableFieldNodeList.sort(
|
|
72
|
+
(a, b) =>{
|
|
73
|
+
const aName = a.name.value.toUpperCase()
|
|
74
|
+
const bName = b.name.value.toUpperCase()
|
|
75
|
+
return aName < bName ? -1 : (aName > bName) ? 1 : 0
|
|
76
|
+
}).map(field => field.name.value + ":" + serializeValueNode(field.value, variables)).join(',')
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
export const TTL = ${(0, utils_1.getShapeTtl)(metadata.rootTtl, (_a = graphqlResource.returnShape) === null || _a === void 0 ? void 0 : _a.id, metadata.shapeTtls)};
|
|
81
|
+
|
|
82
|
+
export function ${constants_3.GET_REQUESTED_FIELD_IDENTIFIER}(responseDataFieldName: string, requestedFields: ${constants_2.LUVIO_GRAPHQL_FIELD_NODE_IMPORT}[]): ${constants_2.LUVIO_GRAPHQL_FIELD_NODE_IMPORT} | undefined {
|
|
83
|
+
return requestedFields.find(fieldNode => (fieldNode.alias && fieldNode.alias.value === responseDataFieldName) || (!fieldNode.alias && fieldNode.name.value === responseDataFieldName));
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
export function ${constants_3.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER}(field: ${constants_2.LUVIO_GRAPHQL_FIELD_NODE_IMPORT}, variables: ${constants_3.GRAPHQL_VARIABLES_IDENTIFIER}): string {
|
|
87
|
+
// Serialize the arguments given to this field. Luvio can't "eval" these arguments atm
|
|
88
|
+
const argumentString : string = field.arguments && field.arguments.length > 0 ? '__' + ${constants_3.SERIALIZE_FIELD_ARGUMENTS_IDENTIFIER}(field.arguments, variables) : '';
|
|
89
|
+
return field.name.value + argumentString; // It should be safe to always use the fieldName - If an alias is meaningful, there will be arguments on the key also.
|
|
90
|
+
}
|
|
91
|
+
`);
|
|
92
|
+
}
|
|
93
|
+
exports.generateTypeUtil = generateTypeUtil;
|
|
94
|
+
//# sourceMappingURL=generateTypeUtil.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateTypeUtil.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/generateTypeUtil.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAC/C,oDAAwD;AACxD,oCAAuC;AAGvC,uDAAmF;AACnF,sDAQgC;AAChC,2CAQqB;AAErB,SAAgB,gBAAgB,CAC5B,eAAgC,EAChC,QAAgC;;IAEhC,OAAO,IAAA,wBAAc,EAAC,IAAA,kBAAQ,EAAA;sBACZ,wCAA4B;;2BAEvB,8CAAkC;;yBAEpC,wCAA4B;oBACjC,oDAAwC;cAC9C,4BAAgB,KAAK,wBAAY;cACjC,kCAAsB,KAAK,8BAAkB;cAC7C,gCAAoB;;;0BAGR,kCAAsB;;;;;;0BAMtB,gDAAoC,4BAA4B,8CAAkC,mBAAmB,wCAA4B;;;;;;;;;;kDAUzH,8CAAkC,gBAAgB,wCAA4B;;;;;iDAK/E,2CAA+B,gBAAgB,wCAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAgC/F,IAAA,mBAAW,EAC5B,QAAQ,CAAC,OAAO,EAChB,MAAA,eAAe,CAAC,WAAW,0CAAE,EAAE,EAC/B,QAAQ,CAAC,SAAS,CACrB;;0BAEiB,0CAA8B,oDAAoD,2CAA+B,QAAQ,2CAA+B;;;;0BAIxJ,mDAAuC,WAAW,2CAA+B,gBAAgB,wCAA4B;;qGAElD,gDAAoC;;;KAGpI,CAAC,CAAC;AACP,CAAC;AArFD,4CAqFC"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import type { ImportContext } from '../../../utils/imports';
|
|
2
|
-
import type {
|
|
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
|
-
|
|
6
|
-
export declare function generateTypeUtil(graphqlResource: GraphQLResource, metadata: GraphQLCodegenMetadata): string;
|
|
7
|
-
export declare function generateType(graphqlDsl: LuvioGraphQLDSL, typeName: string, def: ObjectTypeDefinitionNode | InterfaceTypeDefinitionNode, importContext: ImportContext, metadata: GraphQLCodegenMetadata): string;
|
|
5
|
+
export declare function generateType(graphqlDsl: LuvioGraphQLDSL, typeName: string, def: ObjectTypeDefinitionNode, importContext: ImportContext, metadata: GraphQLCodegenMetadata): string;
|
|
@@ -3,41 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.generateType =
|
|
6
|
+
exports.generateType = void 0;
|
|
7
7
|
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
8
|
const key_1 = require("./key");
|
|
9
9
|
const interface_1 = require("./interface");
|
|
10
10
|
const ingest_1 = require("./ingest");
|
|
11
11
|
const ttl_1 = require("./ttl");
|
|
12
12
|
const imports_1 = require("../../../utils/imports");
|
|
13
|
-
const utils_1 = require("../utils");
|
|
14
|
-
const constants_1 = require("../../adapter/constants");
|
|
15
|
-
const constants_2 = require("../../shared/constants");
|
|
16
|
-
const constants_3 = require("./constants");
|
|
17
|
-
function generateTypeUtil(graphqlResource, metadata) {
|
|
18
|
-
var _a;
|
|
19
|
-
return (0, imports_1.resolveImports)((0, deindent_1.default) `
|
|
20
|
-
export type ${constants_3.GRAPHQL_VARIABLES_IDENTIFIER} = Record<string, any>;
|
|
21
|
-
|
|
22
|
-
export interface ${constants_3.GRAPHQL_STATE_INTERFACE_IDENTIFIER}<D = unknown> {
|
|
23
|
-
data: D,
|
|
24
|
-
variables: ${constants_3.GRAPHQL_VARIABLES_IDENTIFIER},
|
|
25
|
-
path: ${constants_1.ADAPTER_INGEST_PATH_INTERFACE_IDENTIFIER}
|
|
26
|
-
${constants_2.LUVIO_IDENTIFIER}: ${constants_2.LUVIO_IMPORT},
|
|
27
|
-
${constants_2.LUVIO_STORE_IDENTIFIER}: ${constants_2.LUVIO_STORE_IMPORT},
|
|
28
|
-
${constants_3.TIMESTAMP_IDENTIFIER}: number
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
export function ${constants_3.CREATE_LINK_IDENTIFIER}(ref: string) {
|
|
32
|
-
return {
|
|
33
|
-
__ref: ref,
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export const TTL = ${(0, utils_1.getShapeTtl)(metadata.rootTtl, (_a = graphqlResource.returnShape) === null || _a === void 0 ? void 0 : _a.id, metadata.shapeTtls)};
|
|
38
|
-
`);
|
|
39
|
-
}
|
|
40
|
-
exports.generateTypeUtil = generateTypeUtil;
|
|
41
13
|
function generateType(graphqlDsl, typeName, def, importContext, metadata) {
|
|
42
14
|
return (0, imports_1.resolveImports)((0, deindent_1.default) `
|
|
43
15
|
export const name = '${typeName}';
|
|
@@ -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,2CAAgD;AAChD,qCAA0C;AAC1C,+BAAoC;AACpC,oDAAwD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/index.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAC/C,+BAAoC;AACpC,2CAAgD;AAChD,qCAA0C;AAC1C,+BAAoC;AACpC,oDAAwD;AAMxD,SAAgB,YAAY,CACxB,UAA2B,EAC3B,QAAgB,EAChB,GAA6B,EAC7B,aAA4B,EAC5B,QAAgC;IAEhC,OAAO,IAAA,wBAAc,EAAC,IAAA,kBAAQ,EAAA;+BACH,QAAQ;UAC7B,IAAA,iBAAW,EAAC,UAAU,EAAE,QAAQ,CAAC;UACjC,IAAA,6BAAiB,EAAC,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;UACzD,IAAA,iBAAW,EAAC,GAAG,EAAE,aAAa,EAAE,UAAU,CAAC,UAAU,CAAC;UACtD,IAAA,uBAAc,EAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;KACvE,CAAC,CAAC;AACP,CAAC;AAdD,oCAcC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { FieldDefinitionNode,
|
|
1
|
+
import type { FieldDefinitionNode, ListTypeNode, NamedTypeNode, ObjectTypeDefinitionNode, TypeNode } from '@luvio/graphql-parser';
|
|
2
2
|
import type { ImportContext } from '../../../utils/imports';
|
|
3
3
|
import type { NormalizableTypes } from '../utils';
|
|
4
4
|
import type { LuvioGraphQLDSL } from '../../../intermediate/graphql';
|
|
@@ -6,5 +6,5 @@ import type { GraphQLCodegenMetadata } from '../source-printer';
|
|
|
6
6
|
export declare function ingestNamedType(field: FieldDefinitionNode, typeNode: NamedTypeNode, importContext: ImportContext, normalizableTypeMap: NormalizableTypes): string;
|
|
7
7
|
export declare function ingestListType(field: FieldDefinitionNode, typeNode: ListTypeNode, importContext: ImportContext, normalizableTypeMap: NormalizableTypes): string;
|
|
8
8
|
export declare function ingestType(field: FieldDefinitionNode, typeNode: TypeNode, importContext: ImportContext, normalizableTypeMap: NormalizableTypes): string;
|
|
9
|
-
export declare function generateIngestFromDef(graphqlDsl: LuvioGraphQLDSL, def: ObjectTypeDefinitionNode
|
|
10
|
-
export declare function generateIngest(graphqlDsl: LuvioGraphQLDSL, typeName: string, def: ObjectTypeDefinitionNode
|
|
9
|
+
export declare function generateIngestFromDef(graphqlDsl: LuvioGraphQLDSL, def: ObjectTypeDefinitionNode, importContext: ImportContext, normalizableTypeMap: NormalizableTypes): string;
|
|
10
|
+
export declare function generateIngest(graphqlDsl: LuvioGraphQLDSL, typeName: string, def: ObjectTypeDefinitionNode, importContext: ImportContext, _metadata: GraphQLCodegenMetadata): string;
|
|
@@ -14,29 +14,29 @@ const REQUESTED_FIELDS_IDENTIFIER = 'requestedFields';
|
|
|
14
14
|
function ingestNamedType(field, typeNode, importContext, normalizableTypeMap) {
|
|
15
15
|
const typeName = (0, utils_1.resolveTypeName)(typeNode);
|
|
16
16
|
const { importGraphQLArtifact } = importContext;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
const isScalar = normalizableTypeMap[typeName] === undefined;
|
|
18
|
+
const fieldName = field.name.value;
|
|
19
|
+
if (isScalar) {
|
|
20
|
+
return generateIngestScalarField(fieldName);
|
|
20
21
|
}
|
|
21
22
|
const typeNameIngestImport = importGraphQLArtifact(typeName, constants_2.TYPE_INGEST_IDENTIFIER);
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
data: data.${field.name.value},
|
|
33
|
-
};
|
|
34
|
-
data.${field.name.value} = ${typeNameIngestImport}(
|
|
35
|
-
fieldNode,
|
|
36
|
-
${field.name.value}State
|
|
37
|
-
) as any;
|
|
23
|
+
const fieldStateIdentifier = `${fieldName}State`;
|
|
24
|
+
return `if(${constants_2.REQUESTED_FIELD_IDENTIFIER}.name.value === '${fieldName}') {
|
|
25
|
+
const ${fieldStateIdentifier} = {
|
|
26
|
+
...state,
|
|
27
|
+
path: {
|
|
28
|
+
parent: null,
|
|
29
|
+
propertyName: ${constants_2.FIELD_KEY_IDENTIFIER},
|
|
30
|
+
fullPath: key + '__' + ${constants_2.FIELD_KEY_IDENTIFIER}
|
|
31
|
+
},
|
|
32
|
+
data: ${constants_2.FIELD_DATA_IDENTIFIER},
|
|
38
33
|
};
|
|
39
|
-
|
|
34
|
+
delete data[${constants_2.FIELD_DATA_KEY_IDENTIFIER}]; // TODO (W-11126527): prefer using a dataSink instead
|
|
35
|
+
data[${constants_2.FIELD_KEY_IDENTIFIER}] = ${typeNameIngestImport}(
|
|
36
|
+
${constants_2.REQUESTED_FIELD_IDENTIFIER},
|
|
37
|
+
${fieldStateIdentifier}
|
|
38
|
+
) as any;
|
|
39
|
+
};`;
|
|
40
40
|
}
|
|
41
41
|
exports.ingestNamedType = ingestNamedType;
|
|
42
42
|
function ingestListType(field, typeNode, importContext, normalizableTypeMap) {
|
|
@@ -45,26 +45,16 @@ function ingestListType(field, typeNode, importContext, normalizableTypeMap) {
|
|
|
45
45
|
const typeName = (0, utils_1.resolveTypeName)(typeNode);
|
|
46
46
|
const fullPathIdentifier = `fullPath__${fieldName}`;
|
|
47
47
|
const typeDefinition = normalizableTypeMap[typeName];
|
|
48
|
-
const dataIdentifier = `data.${fieldName}`;
|
|
49
48
|
const collectionIdentifier = `${fieldName}__items`;
|
|
49
|
+
const dataIdentifier = `data[${constants_2.FIELD_KEY_IDENTIFIER}]`;
|
|
50
50
|
// Non-normalizable types
|
|
51
51
|
if (typeDefinition === undefined) {
|
|
52
|
-
return (
|
|
53
|
-
if (${dataIdentifier} !== undefined && ${dataIdentifier} !== null) {
|
|
54
|
-
const ${fullPathIdentifier} = key + '__${fieldName}';
|
|
55
|
-
${constants_1.LUVIO_IDENTIFIER}.storePublish(${fullPathIdentifier}, ${dataIdentifier})
|
|
56
|
-
${dataIdentifier} = {
|
|
57
|
-
__ref: ${fullPathIdentifier}
|
|
58
|
-
} as any;
|
|
59
|
-
};
|
|
60
|
-
`;
|
|
52
|
+
return generateIngestScalarField(fieldName);
|
|
61
53
|
}
|
|
62
54
|
const typeNameIngestImport = importGraphQLArtifact(typeName, constants_2.TYPE_INGEST_IDENTIFIER);
|
|
63
|
-
return (
|
|
64
|
-
if(${dataIdentifier} !== undefined && ${dataIdentifier} !== null) {
|
|
65
|
-
const fieldNode = ${REQUESTED_FIELDS_IDENTIFIER}.find(fieldNode => fieldNode.name.value === "${fieldName}");
|
|
55
|
+
return `if(${constants_2.REQUESTED_FIELD_IDENTIFIER}.name.value === '${fieldName}') {
|
|
66
56
|
const ${collectionIdentifier}: ${constants_1.LUVIO_STORE_LINK_IMPORT}[] = [];
|
|
67
|
-
const ${fullPathIdentifier} = key
|
|
57
|
+
const ${fullPathIdentifier} = \`\${key}__\${${constants_2.FIELD_KEY_IDENTIFIER}}\`;
|
|
68
58
|
for(let i = 0, len = ${dataIdentifier}.length; i < len; i++) {
|
|
69
59
|
const item = ${dataIdentifier}[i];
|
|
70
60
|
|
|
@@ -78,7 +68,7 @@ function ingestListType(field, typeNode, importContext, normalizableTypeMap) {
|
|
|
78
68
|
data: item,
|
|
79
69
|
};
|
|
80
70
|
${collectionIdentifier}[i] = ${typeNameIngestImport}(
|
|
81
|
-
|
|
71
|
+
${constants_2.REQUESTED_FIELD_IDENTIFIER},
|
|
82
72
|
itemState
|
|
83
73
|
)
|
|
84
74
|
}
|
|
@@ -90,6 +80,12 @@ function ingestListType(field, typeNode, importContext, normalizableTypeMap) {
|
|
|
90
80
|
`;
|
|
91
81
|
}
|
|
92
82
|
exports.ingestListType = ingestListType;
|
|
83
|
+
function generateIngestScalarField(fieldName) {
|
|
84
|
+
return `if(${constants_2.REQUESTED_FIELD_IDENTIFIER}.name.value === '${fieldName}') {
|
|
85
|
+
delete data[${constants_2.FIELD_DATA_KEY_IDENTIFIER}]; // TODO (W-11126527): prefer using a dataSink instead
|
|
86
|
+
data[${constants_2.FIELD_KEY_IDENTIFIER}] = ${constants_2.FIELD_DATA_IDENTIFIER};
|
|
87
|
+
}`;
|
|
88
|
+
}
|
|
93
89
|
function ingestType(field, typeNode, importContext, normalizableTypeMap) {
|
|
94
90
|
if (field === undefined) {
|
|
95
91
|
return '';
|
|
@@ -107,6 +103,10 @@ exports.ingestType = ingestType;
|
|
|
107
103
|
function generateIngestFromDef(graphqlDsl, def, importContext, normalizableTypeMap) {
|
|
108
104
|
const { schema } = graphqlDsl;
|
|
109
105
|
const type = schema.getType(def.name.value);
|
|
106
|
+
return generateObjectTypeIngest(type, importContext, normalizableTypeMap);
|
|
107
|
+
}
|
|
108
|
+
exports.generateIngestFromDef = generateIngestFromDef;
|
|
109
|
+
function generateObjectTypeIngest(type, importContext, normalizableTypeMap) {
|
|
110
110
|
const fieldMap = type.getFields();
|
|
111
111
|
const fieldList = Object.keys(fieldMap);
|
|
112
112
|
const fieldIngestStatements = fieldList
|
|
@@ -119,17 +119,38 @@ function generateIngestFromDef(graphqlDsl, def, importContext, normalizableTypeM
|
|
|
119
119
|
return ingestType(field.astNode, (_b = field.astNode) === null || _b === void 0 ? void 0 : _b.type, importContext, normalizableTypeMap);
|
|
120
120
|
})
|
|
121
121
|
.filter((statement) => statement !== '');
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
return
|
|
122
|
+
const eachFieldHandling = fieldIngestStatements.join('\n');
|
|
123
|
+
const ingestStatements = [
|
|
124
|
+
getRequestedFieldsStatement(),
|
|
125
|
+
iterateThroughResponseKeys(importContext, eachFieldHandling),
|
|
126
|
+
];
|
|
127
|
+
return ingestStatements.join('\n');
|
|
128
|
+
}
|
|
129
|
+
function getRequestedFieldsStatement() {
|
|
130
|
+
return `const ${REQUESTED_FIELDS_IDENTIFIER}: ${constants_1.LUVIO_GRAPHQL_FIELD_NODE_IMPORT}[] = astNode && astNode.selectionSet ?
|
|
131
|
+
astNode.selectionSet.selections
|
|
132
|
+
.filter((i): i is ${constants_1.LUVIO_GRAPHQL_FIELD_NODE_IMPORT} => {
|
|
133
|
+
return i.kind === "Field";
|
|
134
|
+
}) :
|
|
135
|
+
[];`;
|
|
136
|
+
}
|
|
137
|
+
function iterateThroughResponseKeys(importContext, individualFieldIngestBlock) {
|
|
138
|
+
const getRequestedFieldImport = importContext.importGraphQLArtifact(constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GET_REQUESTED_FIELD_IDENTIFIER);
|
|
139
|
+
const getFieldKeyImport = importContext.importGraphQLArtifact(constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER);
|
|
140
|
+
return (0, deindent_1.default) `
|
|
141
|
+
const responseKeys = Object.keys(data);
|
|
142
|
+
for(var responseFieldIndex = 0; responseFieldIndex < responseKeys.length; responseFieldIndex++){
|
|
143
|
+
const ${constants_2.FIELD_DATA_KEY_IDENTIFIER} = responseKeys[responseFieldIndex];
|
|
144
|
+
const ${constants_2.FIELD_DATA_IDENTIFIER} = data[${constants_2.FIELD_DATA_KEY_IDENTIFIER}];
|
|
145
|
+
const ${constants_2.REQUESTED_FIELD_IDENTIFIER} = ${getRequestedFieldImport}(${constants_2.FIELD_DATA_KEY_IDENTIFIER}, ${REQUESTED_FIELDS_IDENTIFIER});
|
|
146
|
+
if(${constants_2.REQUESTED_FIELD_IDENTIFIER} === undefined) {
|
|
147
|
+
break; // TODO: (W-11132802) We got a field back we didn't ask for. Call handleUnknownField.
|
|
148
|
+
}
|
|
149
|
+
const ${constants_2.FIELD_KEY_IDENTIFIER} = ${getFieldKeyImport}(${constants_2.REQUESTED_FIELD_IDENTIFIER}, state.variables);
|
|
150
|
+
${individualFieldIngestBlock}
|
|
151
|
+
}
|
|
152
|
+
`;
|
|
131
153
|
}
|
|
132
|
-
exports.generateIngestFromDef = generateIngestFromDef;
|
|
133
154
|
function generateIngest(graphqlDsl, typeName, def, importContext, _metadata) {
|
|
134
155
|
var _a;
|
|
135
156
|
const { schema } = graphqlDsl;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/ingest.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/ingest.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ObjectTypeDefinitionNode, TypeNode } from '@luvio/graphql-parser';
|
|
2
2
|
import type { GraphQLCodegenMetadata } from '../source-printer/graphql-source-printer';
|
|
3
3
|
import type { ImportContext } from '../../../utils/imports';
|
|
4
4
|
export declare const TYPE_INTERFACE_IDENTIFIER = "Interface";
|
|
@@ -8,4 +8,4 @@ export declare function generateTypeReference(type: TypeNode, importContext: Imp
|
|
|
8
8
|
required: boolean;
|
|
9
9
|
array: boolean;
|
|
10
10
|
}): string;
|
|
11
|
-
export declare function generateInterface(name: string, def: ObjectTypeDefinitionNode
|
|
11
|
+
export declare function generateInterface(name: string, def: ObjectTypeDefinitionNode, importContext: ImportContext, metadata: GraphQLCodegenMetadata): string;
|
|
@@ -75,8 +75,8 @@ function generateObjectTypeDefinitionNode(name, def, importContext, scalarToPrim
|
|
|
75
75
|
const idNode = (0, key_1.findIdNode)(def);
|
|
76
76
|
const minimum = generateMinimumInterface(idNode);
|
|
77
77
|
const partialDef = minimum === ''
|
|
78
|
-
? `
|
|
79
|
-
: `
|
|
78
|
+
? `Record<string, any>`
|
|
79
|
+
: `Record<string, any> & ${exports.MINIMUM_INTERFACE_IDENTIFIER}`;
|
|
80
80
|
return (0, deindent_1.default) `
|
|
81
81
|
export interface ${exports.TYPE_INTERFACE_IDENTIFIER} {
|
|
82
82
|
${properties.join(';\n')}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/interface.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,7 +26,7 @@ function generateIngestPagination(shapeConfig) {
|
|
|
26
26
|
const ${PAGINATION_KEY_IDENTIFIER} = ${constants_1.KEY_IDENTIFIER} + '${constants_2.PAGINATION_KEY_SUFFIX}';
|
|
27
27
|
${generateIngestPaginationMetadata(importContext, shapePaginated)}
|
|
28
28
|
|
|
29
|
-
if (${constants_1.EXISTING_RECORD_IDENTIFIER} !== undefined) {
|
|
29
|
+
if (${constants_1.EXISTING_RECORD_IDENTIFIER} !== undefined && ${constants_1.EXISTING_RECORD_IDENTIFIER}.${items} !== undefined) {
|
|
30
30
|
${constants_1.INCOMING_RECORD_IDENTIFIER}.${items} = [
|
|
31
31
|
...${constants_1.EXISTING_RECORD_IDENTIFIER}.${items}.slice(0, ${START_OFFSET_IDENTIFIER}),
|
|
32
32
|
...${constants_1.INCOMING_RECORD_IDENTIFIER}.${items},
|
|
@@ -67,7 +67,7 @@ function generateIngestSyntheticCursorPaginationMetadata(importContext, shapePag
|
|
|
67
67
|
if (process.env.NODE_ENV !== 'production') {
|
|
68
68
|
if (
|
|
69
69
|
${START_OFFSET_IDENTIFIER} < 0 ||
|
|
70
|
-
(${constants_1.EXISTING_RECORD_IDENTIFIER} && ${constants_1.EXISTING_RECORD_IDENTIFIER}.${items}.length < ${START_OFFSET_IDENTIFIER})
|
|
70
|
+
(${constants_1.EXISTING_RECORD_IDENTIFIER} && ${constants_1.EXISTING_RECORD_IDENTIFIER}.${items} && ${constants_1.EXISTING_RECORD_IDENTIFIER}.${items}.length < ${START_OFFSET_IDENTIFIER})
|
|
71
71
|
) {
|
|
72
72
|
throw new RangeError('${pageMetadata.token} value ' + ${pagination_1.CursorPaginatedTypeProperty.Token} + ' is not recognized');
|
|
73
73
|
}
|
|
@@ -132,7 +132,7 @@ function generateIngestCursorPaginationMetadata(importContext, shapePaginated) {
|
|
|
132
132
|
if (process.env.NODE_ENV !== 'production') {
|
|
133
133
|
if (
|
|
134
134
|
${START_OFFSET_IDENTIFIER} < 0 ||
|
|
135
|
-
(${constants_1.EXISTING_RECORD_IDENTIFIER} && ${constants_1.EXISTING_RECORD_IDENTIFIER}.${items}.length < ${START_OFFSET_IDENTIFIER})
|
|
135
|
+
(${constants_1.EXISTING_RECORD_IDENTIFIER} && ${constants_1.EXISTING_RECORD_IDENTIFIER}.${items} && ${constants_1.EXISTING_RECORD_IDENTIFIER}.${items}.length < ${START_OFFSET_IDENTIFIER})
|
|
136
136
|
) {
|
|
137
137
|
throw new RangeError('${pageMetadata.token} value ' + ${pagination_1.CursorPaginatedTypeProperty.Token} + ' is not recognized');
|
|
138
138
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shape-ingest-paginated.js","sourceRoot":"","sources":["../../../src/codegen/shape/shape-ingest-paginated.ts"],"names":[],"mappings":";;;;;;AAAA,oEAA4C;AAG5C,8DAKuC;AAIvC,2CAKqB;AACrB,mDAAoF;AACpF,mEAAuE;AACvE,6DAAoF;AAEpF,MAAM,yBAAyB,GAAG,eAAe,CAAC;AAClD,MAAM,uBAAuB,GAAG,aAAa,CAAC;AAC9C,MAAM,sBAAsB,GAAG,YAAY,CAAC;AAC5C,MAAM,uCAAuC,GAAG,4BAA4B,CAAC;AAC7E,MAAM,uCAAuC,GAAG,4BAA4B,CAAC;AAE7E,SAAgB,wBAAwB,CAAC,WAA+B;IACpE,MAAM,EACF,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EACtB,SAAS,EACT,aAAa,GAChB,GAAG,WAAW,CAAC;IAChB,MAAM,cAAc,GAAG,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACzD,IAAI,cAAc,KAAK,SAAS,EAAE;QAC9B,OAAO,EAAE,CAAC;KACb;IAED,MAAM,EAAE,KAAK,EAAE,GAAG,cAAc,CAAC;IAEjC,OAAO,IAAA,kBAAQ,EAAA;gBACH,yBAAyB,MAAM,0BAAc,OAAO,iCAAqB;UAC/E,gCAAgC,CAAC,aAAa,EAAE,cAAc,CAAC;;cAE3D,sCAA0B;
|
|
1
|
+
{"version":3,"file":"shape-ingest-paginated.js","sourceRoot":"","sources":["../../../src/codegen/shape/shape-ingest-paginated.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,3 +13,5 @@ export declare const LUVIO_GRAPHQL_PRINT_IMPORT: string;
|
|
|
13
13
|
export declare const LUVIO_GRAPHQL_DOCUMENT_NODE_IMPORT: string;
|
|
14
14
|
export declare const LUVIO_GRAPHQL_OPERATION_DEFINITION_NODE_IMPORT: string;
|
|
15
15
|
export declare const LUVIO_GRAPHQL_FIELD_NODE_IMPORT: string;
|
|
16
|
+
export declare const LUVIO_GRAPHQL_ARGUMENT_NODE_IMPORT: string;
|
|
17
|
+
export declare const LUVIO_GRAPHQL_VALUE_NODE_IMPORT: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LUVIO_GRAPHQL_FIELD_NODE_IMPORT = exports.LUVIO_GRAPHQL_OPERATION_DEFINITION_NODE_IMPORT = exports.LUVIO_GRAPHQL_DOCUMENT_NODE_IMPORT = exports.LUVIO_GRAPHQL_PRINT_IMPORT = exports.PAGINATION_KEY_SUFFIX = exports.CACHE_KEY_FIELD_DELIMITER = exports.CACHE_KEY_NAMESPACE_DELIMITER = exports.READER_FRAGMENT_IMPORT = exports.ADAPTER_CACHE_KEY_SET_TYPE_IDENTIFIER = exports.LUVIO_STORE_LINK_IMPORT = exports.LUVIO_IN_MEMORY_STORE_IMPORT = exports.LUVIO_STORE_IMPORT = exports.LUVIO_IMPORT = exports.LUVIO_STORE_IDENTIFIER = exports.LUVIO_IDENTIFIER = void 0;
|
|
3
|
+
exports.LUVIO_GRAPHQL_VALUE_NODE_IMPORT = exports.LUVIO_GRAPHQL_ARGUMENT_NODE_IMPORT = exports.LUVIO_GRAPHQL_FIELD_NODE_IMPORT = exports.LUVIO_GRAPHQL_OPERATION_DEFINITION_NODE_IMPORT = exports.LUVIO_GRAPHQL_DOCUMENT_NODE_IMPORT = exports.LUVIO_GRAPHQL_PRINT_IMPORT = exports.PAGINATION_KEY_SUFFIX = exports.CACHE_KEY_FIELD_DELIMITER = exports.CACHE_KEY_NAMESPACE_DELIMITER = exports.READER_FRAGMENT_IMPORT = exports.ADAPTER_CACHE_KEY_SET_TYPE_IDENTIFIER = exports.LUVIO_STORE_LINK_IMPORT = exports.LUVIO_IN_MEMORY_STORE_IMPORT = exports.LUVIO_STORE_IMPORT = exports.LUVIO_IMPORT = exports.LUVIO_STORE_IDENTIFIER = exports.LUVIO_IDENTIFIER = void 0;
|
|
4
4
|
const imports_1 = require("../../utils/imports");
|
|
5
5
|
// Identifiers
|
|
6
6
|
exports.LUVIO_IDENTIFIER = 'luvio';
|
|
@@ -21,4 +21,6 @@ exports.LUVIO_GRAPHQL_PRINT_IMPORT = (0, imports_1.namedImport)('@luvio/graphql-
|
|
|
21
21
|
exports.LUVIO_GRAPHQL_DOCUMENT_NODE_IMPORT = (0, imports_1.namedImport)('@luvio/graphql-parser', 'DocumentNode');
|
|
22
22
|
exports.LUVIO_GRAPHQL_OPERATION_DEFINITION_NODE_IMPORT = (0, imports_1.namedImport)('@luvio/graphql-parser', 'OperationDefinitionNode');
|
|
23
23
|
exports.LUVIO_GRAPHQL_FIELD_NODE_IMPORT = (0, imports_1.namedImport)('@luvio/graphql-parser', 'FieldNode');
|
|
24
|
+
exports.LUVIO_GRAPHQL_ARGUMENT_NODE_IMPORT = (0, imports_1.namedImport)('@luvio/graphql-parser', 'ArgumentNode');
|
|
25
|
+
exports.LUVIO_GRAPHQL_VALUE_NODE_IMPORT = (0, imports_1.namedImport)('@luvio/graphql-parser', 'ValueNode');
|
|
24
26
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/codegen/shared/constants.ts"],"names":[],"mappings":";;;AAAA,iDAAkD;AAElD,cAAc;AACD,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,sBAAsB,GAAG,OAAO,CAAC;AAE9C,iBAAiB;AACJ,QAAA,YAAY,GAAG,IAAA,qBAAW,EAAC,eAAe,EAAE,OAAO,CAAC,CAAC;AACrD,QAAA,kBAAkB,GAAG,IAAA,qBAAW,EAAC,eAAe,EAAE,OAAO,CAAC,CAAC;AAC3D,QAAA,4BAA4B,GAAG,IAAA,qBAAW,EAAC,eAAe,EAAE,eAAe,CAAC,CAAC;AAC7E,QAAA,uBAAuB,GAAG,IAAA,qBAAW,EAAC,eAAe,EAAE,WAAW,CAAC,CAAC;AACpE,QAAA,qCAAqC,GAAG,IAAA,qBAAW,EAAC,eAAe,EAAE,aAAa,CAAC,CAAC;AACpF,QAAA,sBAAsB,GAAG,IAAA,qBAAW,EAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;AAErF,wEAAwE;AAC3D,QAAA,6BAA6B,GAAG,IAAI,CAAC;AACrC,QAAA,yBAAyB,GAAG,GAAG,CAAC;AAEhC,QAAA,qBAAqB,GAAG,cAAc,CAAC;AAEpD,gCAAgC;AACnB,QAAA,0BAA0B,GAAG,IAAA,qBAAW,EAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;AAC3E,QAAA,kCAAkC,GAAG,IAAA,qBAAW,EACzD,uBAAuB,EACvB,cAAc,CACjB,CAAC;AACW,QAAA,8CAA8C,GAAG,IAAA,qBAAW,EACrE,uBAAuB,EACvB,yBAAyB,CAC5B,CAAC;AACW,QAAA,+BAA+B,GAAG,IAAA,qBAAW,EAAC,uBAAuB,EAAE,WAAW,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/codegen/shared/constants.ts"],"names":[],"mappings":";;;AAAA,iDAAkD;AAElD,cAAc;AACD,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,sBAAsB,GAAG,OAAO,CAAC;AAE9C,iBAAiB;AACJ,QAAA,YAAY,GAAG,IAAA,qBAAW,EAAC,eAAe,EAAE,OAAO,CAAC,CAAC;AACrD,QAAA,kBAAkB,GAAG,IAAA,qBAAW,EAAC,eAAe,EAAE,OAAO,CAAC,CAAC;AAC3D,QAAA,4BAA4B,GAAG,IAAA,qBAAW,EAAC,eAAe,EAAE,eAAe,CAAC,CAAC;AAC7E,QAAA,uBAAuB,GAAG,IAAA,qBAAW,EAAC,eAAe,EAAE,WAAW,CAAC,CAAC;AACpE,QAAA,qCAAqC,GAAG,IAAA,qBAAW,EAAC,eAAe,EAAE,aAAa,CAAC,CAAC;AACpF,QAAA,sBAAsB,GAAG,IAAA,qBAAW,EAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;AAErF,wEAAwE;AAC3D,QAAA,6BAA6B,GAAG,IAAI,CAAC;AACrC,QAAA,yBAAyB,GAAG,GAAG,CAAC;AAEhC,QAAA,qBAAqB,GAAG,cAAc,CAAC;AAEpD,gCAAgC;AACnB,QAAA,0BAA0B,GAAG,IAAA,qBAAW,EAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;AAC3E,QAAA,kCAAkC,GAAG,IAAA,qBAAW,EACzD,uBAAuB,EACvB,cAAc,CACjB,CAAC;AACW,QAAA,8CAA8C,GAAG,IAAA,qBAAW,EACrE,uBAAuB,EACvB,yBAAyB,CAC5B,CAAC;AACW,QAAA,+BAA+B,GAAG,IAAA,qBAAW,EAAC,uBAAuB,EAAE,WAAW,CAAC,CAAC;AACpF,QAAA,kCAAkC,GAAG,IAAA,qBAAW,EACzD,uBAAuB,EACvB,cAAc,CACjB,CAAC;AACW,QAAA,+BAA+B,GAAG,IAAA,qBAAW,EAAC,uBAAuB,EAAE,WAAW,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@luvio/compiler",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.87.0",
|
|
4
4
|
"description": "Luvio Compiler",
|
|
5
5
|
"main": "dist/main.js",
|
|
6
6
|
"types": "dist/main.d.ts",
|
|
@@ -31,11 +31,11 @@
|
|
|
31
31
|
"resources/"
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@luvio/graphql-parser": "0.
|
|
34
|
+
"@luvio/graphql-parser": "0.87.0",
|
|
35
35
|
"amf-client-js": "4.2.0"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
|
-
"@luvio/adapter-test-library": "0.
|
|
39
|
-
"@luvio/engine": "0.
|
|
38
|
+
"@luvio/adapter-test-library": "0.87.0",
|
|
39
|
+
"@luvio/engine": "0.87.0"
|
|
40
40
|
}
|
|
41
41
|
}
|