@luvio/compiler 0.81.1-238.1 → 0.83.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.
Files changed (114) hide show
  1. package/dist/codegen/adapter/index.d.ts +8 -2
  2. package/dist/codegen/adapter/index.js +18 -14
  3. package/dist/codegen/adapter/index.js.map +1 -1
  4. package/dist/codegen/adapter-tests/index.d.ts +3 -2
  5. package/dist/codegen/adapter-tests/index.js +3 -7
  6. package/dist/codegen/adapter-tests/index.js.map +1 -1
  7. package/dist/codegen/graphql/enum/index.d.ts +2 -2
  8. package/dist/codegen/graphql/enum/index.js +6 -5
  9. package/dist/codegen/graphql/enum/index.js.map +1 -1
  10. package/dist/codegen/graphql/graphql-dsl.d.ts +4 -10
  11. package/dist/codegen/graphql/graphql-dsl.js +5 -8
  12. package/dist/codegen/graphql/graphql-dsl.js.map +1 -1
  13. package/dist/codegen/graphql/source-printer/graphql-adapter-source-printer.d.ts +7 -5
  14. package/dist/codegen/graphql/source-printer/graphql-adapter-source-printer.js +31 -3
  15. package/dist/codegen/graphql/source-printer/graphql-adapter-source-printer.js.map +1 -1
  16. package/dist/codegen/graphql/source-printer/graphql-resource-source-printer.d.ts +6 -3
  17. package/dist/codegen/graphql/source-printer/graphql-resource-source-printer.js +15 -3
  18. package/dist/codegen/graphql/source-printer/graphql-resource-source-printer.js.map +1 -1
  19. package/dist/codegen/graphql/source-printer/graphql-source-printer.d.ts +5 -2
  20. package/dist/codegen/graphql/source-printer/graphql-source-printer.js +9 -6
  21. package/dist/codegen/graphql/source-printer/graphql-source-printer.js.map +1 -1
  22. package/dist/codegen/graphql/source-printer/graphql-type-source-printer.d.ts +2 -2
  23. package/dist/codegen/graphql/source-printer/graphql-type-source-printer.js +6 -5
  24. package/dist/codegen/graphql/source-printer/graphql-type-source-printer.js.map +1 -1
  25. package/dist/codegen/graphql/source-printer/index.d.ts +2 -2
  26. package/dist/codegen/graphql/source-printer/index.js.map +1 -1
  27. package/dist/codegen/graphql/type/index.d.ts +5 -2
  28. package/dist/codegen/graphql/type/index.js +39 -6
  29. package/dist/codegen/graphql/type/index.js.map +1 -1
  30. package/dist/codegen/graphql/type/ingest.d.ts +3 -2
  31. package/dist/codegen/graphql/type/ingest.js +22 -8
  32. package/dist/codegen/graphql/type/ingest.js.map +1 -1
  33. package/dist/codegen/graphql/type/interface.d.ts +3 -3
  34. package/dist/codegen/graphql/type/interface.js +2 -48
  35. package/dist/codegen/graphql/type/interface.js.map +1 -1
  36. package/dist/codegen/graphql/type/ttl.d.ts +4 -0
  37. package/dist/codegen/graphql/type/ttl.js +18 -0
  38. package/dist/codegen/graphql/type/ttl.js.map +1 -0
  39. package/dist/codegen/graphql/union/index.d.ts +2 -2
  40. package/dist/codegen/graphql/union/index.js +6 -5
  41. package/dist/codegen/graphql/union/index.js.map +1 -1
  42. package/dist/codegen/graphql/utils/index.d.ts +1 -1
  43. package/dist/codegen/graphql/utils/index.js +2 -1
  44. package/dist/codegen/graphql/utils/index.js.map +1 -1
  45. package/dist/codegen/graphql/utils/types.d.ts +6 -0
  46. package/dist/codegen/graphql/utils/types.js +13 -1
  47. package/dist/codegen/graphql/utils/types.js.map +1 -1
  48. package/dist/codegen/package-renderer/index.d.ts +2 -0
  49. package/dist/codegen/package-renderer/index.js +6 -0
  50. package/dist/codegen/package-renderer/index.js.map +1 -0
  51. package/dist/codegen/package-renderer/package-renderer.d.ts +16 -0
  52. package/dist/codegen/package-renderer/package-renderer.js +72 -0
  53. package/dist/codegen/package-renderer/package-renderer.js.map +1 -0
  54. package/dist/codegen/package-renderer/text-file.d.ts +6 -0
  55. package/dist/codegen/package-renderer/text-file.js +3 -0
  56. package/dist/codegen/package-renderer/text-file.js.map +1 -0
  57. package/dist/codegen/resource/create-resource-request.d.ts +3 -2
  58. package/dist/codegen/resource/create-resource-request.js +4 -5
  59. package/dist/codegen/resource/create-resource-request.js.map +1 -1
  60. package/dist/codegen/resource/index.d.ts +4 -2
  61. package/dist/codegen/resource/index.js +3 -3
  62. package/dist/codegen/resource/index.js.map +1 -1
  63. package/dist/codegen/shape/shape-select-paginated.js +1 -8
  64. package/dist/codegen/shape/shape-select-paginated.js.map +1 -1
  65. package/dist/codegen/typescript/index.d.ts +3 -0
  66. package/dist/codegen/typescript/index.js +15 -0
  67. package/dist/codegen/typescript/index.js.map +1 -0
  68. package/dist/codegen/typescript/typescript-import.d.ts +93 -0
  69. package/dist/codegen/typescript/typescript-import.js +110 -0
  70. package/dist/codegen/typescript/typescript-import.js.map +1 -0
  71. package/dist/codegen/typescript/typescript-package.d.ts +13 -0
  72. package/dist/codegen/typescript/typescript-package.js +85 -0
  73. package/dist/codegen/typescript/typescript-package.js.map +1 -0
  74. package/dist/codegen/typescript/typescript-source-file-id.d.ts +13 -0
  75. package/dist/codegen/typescript/typescript-source-file-id.js +21 -0
  76. package/dist/codegen/typescript/typescript-source-file-id.js.map +1 -0
  77. package/dist/codegen/typescript/typescript-source-file.d.ts +10 -0
  78. package/dist/codegen/typescript/typescript-source-file.js +19 -0
  79. package/dist/codegen/typescript/typescript-source-file.js.map +1 -0
  80. package/dist/interfaces/source-printers/graphql/graphql-adapter-printer.d.ts +5 -3
  81. package/dist/interfaces/source-printers/graphql/graphql-resource-printer.d.ts +5 -3
  82. package/dist/interfaces/source-printers/graphql/graphql-type-printer.d.ts +2 -2
  83. package/dist/intermediate/graphql-annotation.d.ts +1 -1
  84. package/dist/intermediate/graphql.d.ts +10 -3
  85. package/dist/intermediate/resource.d.ts +2 -2
  86. package/dist/main.d.ts +8 -4
  87. package/dist/main.js +16 -5
  88. package/dist/main.js.map +1 -1
  89. package/dist/parser/annotation-graphql.d.ts +2 -2
  90. package/dist/parser/main.d.ts +8 -1
  91. package/dist/parser/main.js +186 -180
  92. package/dist/parser/main.js.map +1 -1
  93. package/dist/parser/resource.js +13 -11
  94. package/dist/parser/resource.js.map +1 -1
  95. package/dist/plugin.d.ts +4 -2
  96. package/dist/utils/files.d.ts +0 -8
  97. package/dist/utils/files.js +1 -16
  98. package/dist/utils/files.js.map +1 -1
  99. package/dist/utils/generation.d.ts +4 -2
  100. package/dist/utils/generation.js +8 -14
  101. package/dist/utils/generation.js.map +1 -1
  102. package/dist/utils/imports.d.ts +4 -2
  103. package/dist/utils/imports.js +27 -30
  104. package/dist/utils/imports.js.map +1 -1
  105. package/package.json +5 -6
  106. package/dist/codegen/graphql/index.d.ts +0 -13
  107. package/dist/codegen/graphql/index.js +0 -87
  108. package/dist/codegen/graphql/index.js.map +0 -1
  109. package/dist/generate.d.ts +0 -17
  110. package/dist/generate.js +0 -137
  111. package/dist/generate.js.map +0 -1
  112. package/dist/parse.d.ts +0 -2
  113. package/dist/parse.js +0 -14
  114. package/dist/parse.js.map +0 -1
@@ -3,16 +3,49 @@ 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 = void 0;
6
+ exports.generateType = exports.generateTypeUtil = 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
- function generateType(state, typeName, def, importContext) {
11
- return (0, deindent_1.default) `
10
+ const ingest_1 = require("./ingest");
11
+ const ttl_1 = require("./ttl");
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
+ function generateType(graphqlDsl, typeName, def, importContext, metadata) {
42
+ return (0, imports_1.resolveImports)((0, deindent_1.default) `
12
43
  export const name = '${typeName}';
13
- ${(0, interface_1.generateInterface)(state, typeName, def, importContext)}
14
- ${(0, key_1.generateKey)(def, importContext, state.schema.schemaName)}
15
- `;
44
+ ${(0, ttl_1.generateTtl)(graphqlDsl, typeName)}
45
+ ${(0, interface_1.generateInterface)(typeName, def, importContext, metadata)}
46
+ ${(0, key_1.generateKey)(def, importContext, graphqlDsl.schemaName)}
47
+ ${(0, ingest_1.generateIngest)(graphqlDsl, typeName, def, importContext, metadata)}
48
+ `);
16
49
  }
17
50
  exports.generateType = generateType;
18
51
  //# sourceMappingURL=index.js.map
@@ -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;AAKhD,SAAgB,YAAY,CACxB,KAA2B,EAC3B,QAAgB,EAChB,GAA2D,EAC3D,aAA4B;IAE5B,OAAO,IAAA,kBAAQ,EAAA;+BACY,QAAQ;UAC7B,IAAA,6BAAiB,EAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,aAAa,CAAC;UACtD,IAAA,iBAAW,EAAC,GAAG,EAAE,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC;KAC7D,CAAC;AACN,CAAC;AAXD,oCAWC"}
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;AACxD,oCAAuC;AAMvC,uDAAmF;AAEnF,sDAKgC;AAChC,2CAKqB;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;;;;;;6BAMnB,IAAA,mBAAW,EAC5B,QAAQ,CAAC,OAAO,EAChB,MAAA,eAAe,CAAC,WAAW,0CAAE,EAAE,EAC/B,QAAQ,CAAC,SAAS,CACrB;KACJ,CAAC,CAAC;AACP,CAAC;AA5BD,4CA4BC;AAED,SAAgB,YAAY,CACxB,UAA2B,EAC3B,QAAgB,EAChB,GAA2D,EAC3D,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,9 +1,10 @@
1
1
  import type { FieldDefinitionNode, InterfaceTypeDefinitionNode, ListTypeNode, NamedTypeNode, ObjectTypeDefinitionNode, TypeNode } from '@luvio/graphql-parser';
2
2
  import type { ImportContext } from '../../../utils/imports';
3
3
  import type { NormalizableTypes } from '../utils';
4
- import type { LuvioGraphQLDSL } from '../graphql-dsl';
4
+ import type { LuvioGraphQLDSL } from '../../../intermediate/graphql';
5
+ import type { GraphQLCodegenMetadata } from '../source-printer';
5
6
  export declare function ingestNamedType(field: FieldDefinitionNode, typeNode: NamedTypeNode, importContext: ImportContext, normalizableTypeMap: NormalizableTypes): string;
6
7
  export declare function ingestListType(field: FieldDefinitionNode, typeNode: ListTypeNode, importContext: ImportContext, normalizableTypeMap: NormalizableTypes): string;
7
8
  export declare function ingestType(field: FieldDefinitionNode, typeNode: TypeNode, importContext: ImportContext, normalizableTypeMap: NormalizableTypes): string;
8
9
  export declare function generateIngestFromDef(graphqlDsl: LuvioGraphQLDSL, def: ObjectTypeDefinitionNode | InterfaceTypeDefinitionNode, importContext: ImportContext, normalizableTypeMap: NormalizableTypes): string;
9
- export declare function generateIngest(graphqlDsl: LuvioGraphQLDSL, def: ObjectTypeDefinitionNode | InterfaceTypeDefinitionNode, importContext: ImportContext): string;
10
+ export declare function generateIngest(graphqlDsl: LuvioGraphQLDSL, typeName: string, def: ObjectTypeDefinitionNode | InterfaceTypeDefinitionNode, importContext: ImportContext, _metadata: GraphQLCodegenMetadata): string;
@@ -7,6 +7,7 @@ exports.generateIngest = exports.generateIngestFromDef = exports.ingestType = ex
7
7
  const deindent_1 = __importDefault(require("../../../utils/deindent"));
8
8
  const constants_1 = require("../../shared/constants");
9
9
  const utils_1 = require("../utils");
10
+ const ttl_1 = require("./ttl");
10
11
  const constants_2 = require("./constants");
11
12
  function ingestNamedType(field, typeNode, importContext, normalizableTypeMap) {
12
13
  const typeName = (0, utils_1.resolveTypeName)(typeNode);
@@ -44,7 +45,7 @@ function ingestListType(field, typeNode, importContext, normalizableTypeMap) {
44
45
  return (0, deindent_1.default) `
45
46
  if (${dataIdentifier} !== undefined && ${dataIdentifier} !== null) {
46
47
  const ${fullPathIdentifier} = key + '__${fieldName}';
47
- store.publish(${fullPathIdentifier}, ${dataIdentifier})
48
+ ${constants_1.LUVIO_IDENTIFIER}.storePublish(${fullPathIdentifier}, ${dataIdentifier})
48
49
  ${dataIdentifier} = {
49
50
  __ref: ${fullPathIdentifier}
50
51
  };
@@ -69,7 +70,7 @@ function ingestListType(field, typeNode, importContext, normalizableTypeMap) {
69
70
  data: item,
70
71
  })
71
72
  }
72
- ${constants_1.LUVIO_STORE_IDENTIFIER}.publish(${fullPathIdentifier}, ${collectionIdentifier})
73
+ ${constants_1.LUVIO_IDENTIFIER}.storePublish(${fullPathIdentifier}, ${collectionIdentifier})
73
74
  ${dataIdentifier} = {
74
75
  __ref: ${fullPathIdentifier}
75
76
  };
@@ -107,22 +108,35 @@ function generateIngestFromDef(graphqlDsl, def, importContext, normalizableTypeM
107
108
  return statements.filter((statement) => statement !== '').join('\n');
108
109
  }
109
110
  exports.generateIngestFromDef = generateIngestFromDef;
110
- function generateIngest(graphqlDsl, def, importContext) {
111
+ function generateIngest(graphqlDsl, typeName, def, importContext, _metadata) {
111
112
  const { schema } = graphqlDsl;
112
- const { importGraphQLArtifact } = importContext;
113
+ const { importGraphQLArtifact, importAdapterUtil } = importContext;
113
114
  const normalizableTypeMap = (0, utils_1.getNormalizableTypeMap)(schema);
114
115
  const createLink = importGraphQLArtifact(constants_2.TYPE_UTIL_IDENTIFIER, constants_2.CREATE_LINK_IDENTIFIER);
115
- const graphQLStateInterface = importGraphQLArtifact(constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GRAPHQL_STATE_INTERFACE_IDENTIFIER);
116
+ const graphqlStateInterface = importGraphQLArtifact(constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GRAPHQL_STATE_INTERFACE_IDENTIFIER);
117
+ const keyPrefix = importAdapterUtil('keyPrefix');
118
+ const ttl = (0, ttl_1.isTypeTtlDefined)(graphqlDsl.typeExtensions, typeName)
119
+ ? 'TTL'
120
+ : importGraphQLArtifact(constants_2.TYPE_UTIL_IDENTIFIER, 'TTL');
116
121
  return (0, deindent_1.default) `
117
- export function ingest<D>(state: ${graphQLStateInterface}<D>) {
118
- const { path, ${constants_1.LUVIO_STORE_IDENTIFIER} } = state;
122
+ export function ingest<D>(state: ${graphqlStateInterface}<D>) {
123
+ const { path, ${constants_1.LUVIO_IDENTIFIER} } = state;
119
124
  const data: any = state.data;
120
125
  const key = ${constants_2.KEY_BUILDER_IDENTIFIER}(path, data as any);
126
+
121
127
  // normalize
122
128
  ${generateIngestFromDef(graphqlDsl, def, importContext, normalizableTypeMap)};
123
129
 
124
130
  // publish
125
- ${constants_1.LUVIO_STORE_IDENTIFIER}.publish(key, data);
131
+ ${constants_1.LUVIO_IDENTIFIER}.storePublish(key, data);
132
+
133
+ const storeMetadataParams = {
134
+ ttl: ${ttl},
135
+ namespace: ${keyPrefix},
136
+ representationName: "${typeName}",
137
+ };
138
+ ${constants_1.LUVIO_IDENTIFIER}.publishStoreMetadata(key, storeMetadataParams);
139
+
126
140
  return ${createLink}(key);
127
141
  }
128
142
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/ingest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/ingest.ts"],"names":[],"mappings":";;;;;;AASA,uEAA+C;AAE/C,sDAAmF;AAEnF,oCAAmE;AACnE,+BAAyC;AACzC,2CAMqB;AAIrB,SAAgB,eAAe,CAC3B,KAA0B,EAC1B,QAAuB,EACvB,aAA4B,EAC5B,mBAAsC;IAEtC,MAAM,QAAQ,GAAG,IAAA,uBAAe,EAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,EAAE,qBAAqB,EAAE,GAAG,aAAa,CAAC;IAChD,2CAA2C;IAC3C,IAAI,mBAAmB,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE;QAC7C,OAAO,EAAE,CAAC;KACb;IAED,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,QAAQ,EAAE,kCAAsB,CAAC,CAAC;IAErF,OAAO,IAAA,kBAAQ,EAAA;mBACA,KAAK,CAAC,IAAI,CAAC,KAAK,0BAA0B,KAAK,CAAC,IAAI,CAAC,KAAK;mBAC1D,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,oBAAoB;;;;qCAIxB,KAAK,CAAC,IAAI,CAAC,KAAK;yCACZ,KAAK,CAAC,IAAI,CAAC,KAAK;;6BAE5B,KAAK,CAAC,IAAI,CAAC,KAAK;;;KAGxC,CAAC;AACN,CAAC;AA5BD,0CA4BC;AAED,SAAgB,cAAc,CAC1B,KAA0B,EAC1B,QAAsB,EACtB,aAA4B,EAC5B,mBAAsC;IAEtC,MAAM,EAAE,qBAAqB,EAAE,GAAG,aAAa,CAAC;IAChD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;IACnC,MAAM,QAAQ,GAAG,IAAA,uBAAe,EAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,kBAAkB,GAAG,aAAa,SAAS,EAAE,CAAC;IACpD,MAAM,cAAc,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,QAAQ,SAAS,EAAE,CAAC;IAC3C,MAAM,oBAAoB,GAAG,GAAG,SAAS,SAAS,CAAC;IAEnD,yBAAyB;IACzB,IAAI,cAAc,KAAK,SAAS,EAAE;QAC9B,OAAO,IAAA,kBAAQ,EAAA;cACT,cAAc,qBAAqB,cAAc;oBAC3C,kBAAkB,eAAe,SAAS;cAChD,4BAAgB,iBAAiB,kBAAkB,KAAK,cAAc;cACtE,cAAc;yBACH,kBAAkB;;;KAGtC,CAAC;KACD;IAED,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,QAAQ,EAAE,kCAAsB,CAAC,CAAC;IAErF,OAAO,IAAA,kBAAQ,EAAA;aACN,cAAc,qBAAqB,cAAc;oBAC1C,oBAAoB,KAAK,mCAAuB;oBAChD,kBAAkB,eAAe,SAAS;mCAC3B,cAAc;+BAClB,cAAc;;kBAE3B,oBAAoB,SAAS,oBAAoB;;;;;oCAK/B,kBAAkB;;;;;cAKxC,4BAAgB,iBAAiB,kBAAkB,KAAK,oBAAoB;cAC5E,cAAc;yBACH,kBAAkB;;;KAGtC,CAAC;AACN,CAAC;AApDD,wCAoDC;AAED,SAAgB,UAAU,CACtB,KAA0B,EAC1B,QAAkB,EAClB,aAA4B,EAC5B,mBAAsC;IAEtC,IAAI,KAAK,KAAK,SAAS,EAAE;QACrB,OAAO,EAAE,CAAC;KACb;IAED,QAAQ,QAAQ,CAAC,IAAI,EAAE;QACnB,KAAK,WAAW;YACZ,OAAO,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,mBAAmB,CAAC,CAAC;QAChF,KAAK,UAAU;YACX,OAAO,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,mBAAmB,CAAC,CAAC;QAC/E;YACI,OAAO,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,mBAAmB,CAAC,CAAC;KACnF;AACL,CAAC;AAlBD,gCAkBC;AAED,SAAgB,qBAAqB,CACjC,UAA2B,EAC3B,GAA2D,EAC3D,aAA4B,EAC5B,mBAAsC;IAEtC,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;IAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAsB,CAAC;IACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IAElC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAExC,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;;QAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;QAElC,IAAI,CAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,IAAI,MAAK,SAAS,EAAE;YACnC,OAAO;SACV;QACD,OAAO,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,MAAA,KAAK,CAAC,OAAO,0CAAE,IAAI,EAAE,aAAa,EAAE,mBAAmB,CAAC,CAAC;IAC9F,CAAC,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzE,CAAC;AAtBD,sDAsBC;AAED,SAAgB,cAAc,CAC1B,UAA2B,EAC3B,QAAgB,EAChB,GAA2D,EAC3D,aAA4B,EAC5B,SAAiC;IAEjC,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;IAC9B,MAAM,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,GAAG,aAAa,CAAC;IACnE,MAAM,mBAAmB,GAAG,IAAA,8BAAsB,EAAC,MAAM,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,qBAAqB,CAAC,gCAAoB,EAAE,kCAAsB,CAAC,CAAC;IACvF,MAAM,qBAAqB,GAAG,qBAAqB,CAC/C,gCAAoB,EACpB,8CAAkC,CACrC,CAAC;IACF,MAAM,SAAS,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACjD,MAAM,GAAG,GAAG,IAAA,sBAAgB,EAAC,UAAU,CAAC,cAAc,EAAE,QAAQ,CAAC;QAC7D,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,qBAAqB,CAAC,gCAAoB,EAAE,KAAK,CAAC,CAAC;IAEzD,OAAO,IAAA,kBAAQ,EAAA;2CACwB,qBAAqB;4BACpC,4BAAgB;;0BAElB,kCAAsB;;;cAGlC,qBAAqB,CAAC,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,mBAAmB,CAAC;;;cAG1E,4BAAgB;;;uBAGP,GAAG;6BACG,SAAS;uCACC,QAAQ;;cAEjC,4BAAgB;;qBAET,UAAU;;KAE1B,CAAC;AACN,CAAC;AA1CD,wCA0CC"}
@@ -1,5 +1,5 @@
1
- import type { EnumTypeDefinitionNode, FieldDefinitionNode, InterfaceTypeDefinitionNode, ObjectTypeDefinitionNode, TypeNode, UnionTypeDefinitionNode } from '@luvio/graphql-parser';
2
- import type { GraphQLGenerateState } from '..';
1
+ import type { InterfaceTypeDefinitionNode, ObjectTypeDefinitionNode, TypeNode } from '@luvio/graphql-parser';
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";
5
5
  export declare const MINIMUM_INTERFACE_IDENTIFIER: string;
@@ -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(state: GraphQLGenerateState, name: string, def: ObjectTypeDefinitionNode | InterfaceTypeDefinitionNode | EnumTypeDefinitionNode | UnionTypeDefinitionNode | FieldDefinitionNode, importContext: ImportContext): string;
11
+ export declare function generateInterface(name: string, def: ObjectTypeDefinitionNode | InterfaceTypeDefinitionNode, importContext: ImportContext, metadata: GraphQLCodegenMetadata): string;
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.generateInterface = exports.generateTypeReference = exports.PARTIAL_INTERFACE_IDENTIFIER = exports.MINIMUM_INTERFACE_IDENTIFIER = exports.TYPE_INTERFACE_IDENTIFIER = void 0;
7
- const graphql_parser_1 = require("@luvio/graphql-parser");
8
7
  const deindent_1 = __importDefault(require("../../../utils/deindent"));
9
8
  const key_1 = require("./key");
10
9
  exports.TYPE_INTERFACE_IDENTIFIER = 'Interface';
@@ -88,53 +87,8 @@ function generateObjectTypeDefinitionNode(name, def, importContext, scalarToPrim
88
87
  export type ${exports.PARTIAL_INTERFACE_IDENTIFIER} = ${partialDef};
89
88
  `;
90
89
  }
91
- function generateEnumDefinitionNode(name, def) {
92
- const { values } = def;
93
- if (values === undefined) {
94
- return (0, deindent_1.default) `
95
- enum ${exports.TYPE_INTERFACE_IDENTIFIER} {}
96
- `;
97
- }
98
- const rendered = values.map((value) => {
99
- const { value: enumName } = value.name;
100
- return (0, deindent_1.default) `
101
- ${enumName} = '${enumName}'
102
- `;
103
- });
104
- return (0, deindent_1.default) `
105
- export enum ${exports.TYPE_INTERFACE_IDENTIFIER} {
106
- ${rendered.join(',\n')}
107
- }
108
- `;
109
- }
110
- function generateUnionDefinitionNode(name, def, importContext, scalarToPrimitiveMap) {
111
- const { types } = def;
112
- if (types === undefined) {
113
- return (0, deindent_1.default) `
114
- export type ${exports.TYPE_INTERFACE_IDENTIFIER} = never;
115
- `;
116
- }
117
- const unions = types.map((type) => {
118
- return generateTypeReference(type, importContext, scalarToPrimitiveMap, {
119
- required: true,
120
- array: false,
121
- });
122
- });
123
- return (0, deindent_1.default) `
124
- export type ${exports.TYPE_INTERFACE_IDENTIFIER} = ${unions.join(' | ')}
125
- `;
126
- }
127
- function generateInterface(state, name, def, importContext) {
128
- switch (def.kind) {
129
- case graphql_parser_1.Kind.OBJECT_TYPE_DEFINITION:
130
- case graphql_parser_1.Kind.INTERFACE_TYPE_DEFINITION:
131
- return generateObjectTypeDefinitionNode(name, def, importContext, state.scalarToPrimitiveMap);
132
- case graphql_parser_1.Kind.UNION_TYPE_DEFINITION:
133
- return generateUnionDefinitionNode(name, def, importContext, state.scalarToPrimitiveMap);
134
- case graphql_parser_1.Kind.ENUM_TYPE_DEFINITION:
135
- return generateEnumDefinitionNode(name, def);
136
- }
137
- return '';
90
+ function generateInterface(name, def, importContext, metadata) {
91
+ return generateObjectTypeDefinitionNode(name, def, importContext, metadata.scalarToPrimitiveMap);
138
92
  }
139
93
  exports.generateInterface = generateInterface;
140
94
  //# sourceMappingURL=interface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/interface.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { GraphQLAnnotation } from '../../../intermediate/graphql-annotation';
2
+ import type { LuvioGraphQLDSL } from '../../../intermediate/graphql';
3
+ export declare function isTypeTtlDefined(typeExtensions: GraphQLAnnotation['typeExtensions'] | undefined, typeName: string): boolean;
4
+ export declare function generateTtl(graphqlDsl: LuvioGraphQLDSL, typeName: string): string;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateTtl = exports.isTypeTtlDefined = void 0;
4
+ function isTypeTtlDefined(typeExtensions, typeName) {
5
+ return (typeExtensions !== undefined &&
6
+ typeExtensions[typeName] !== undefined &&
7
+ typeExtensions[typeName].ttl !== undefined);
8
+ }
9
+ exports.isTypeTtlDefined = isTypeTtlDefined;
10
+ function generateTtl(graphqlDsl, typeName) {
11
+ const { typeExtensions } = graphqlDsl;
12
+ if (!isTypeTtlDefined(typeExtensions, typeName)) {
13
+ return '';
14
+ }
15
+ return `export const TTL = ${typeExtensions[typeName].ttl};`;
16
+ }
17
+ exports.generateTtl = generateTtl;
18
+ //# sourceMappingURL=ttl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ttl.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/ttl.ts"],"names":[],"mappings":";;;AAGA,SAAgB,gBAAgB,CAC5B,cAA+D,EAC/D,QAAgB;IAEhB,OAAO,CACH,cAAc,KAAK,SAAS;QAC5B,cAAc,CAAC,QAAQ,CAAC,KAAK,SAAS;QACtC,cAAc,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,SAAS,CAC7C,CAAC;AACN,CAAC;AATD,4CASC;AAED,SAAgB,WAAW,CAAC,UAA2B,EAAE,QAAgB;IACrE,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC;IAEtC,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE;QAC7C,OAAO,EAAE,CAAC;KACb;IACD,OAAO,sBAAsB,cAAe,CAAC,QAAQ,CAAC,CAAC,GAAG,GAAG,CAAC;AAClE,CAAC;AAPD,kCAOC"}
@@ -1,4 +1,4 @@
1
1
  import type { UnionTypeDefinitionNode } from '@luvio/graphql-parser';
2
- import type { GraphQLGenerateState } from '..';
3
2
  import type { ImportContext } from '../../../utils/imports';
4
- export declare function generate(state: GraphQLGenerateState, name: string, def: UnionTypeDefinitionNode, importContext: ImportContext): string;
3
+ import type { GraphQLCodegenMetadata } from '../source-printer/graphql-source-printer';
4
+ export declare function generate(name: string, def: UnionTypeDefinitionNode, importContext: ImportContext, metadata: GraphQLCodegenMetadata): string;
@@ -5,11 +5,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.generate = void 0;
7
7
  const deindent_1 = __importDefault(require("../../../utils/deindent"));
8
- const interface_1 = require("../type/interface");
9
- function generate(state, name, def, importContext) {
10
- return (0, deindent_1.default) `
11
- ${(0, interface_1.generateInterface)(state, name, def, importContext)}
12
- `;
8
+ const interface_1 = require("./interface");
9
+ const imports_1 = require("../../../utils/imports");
10
+ function generate(name, def, importContext, metadata) {
11
+ return (0, imports_1.resolveImports)((0, deindent_1.default) `
12
+ ${(0, interface_1.generateInterface)(name, def, importContext, metadata)}
13
+ `);
13
14
  }
14
15
  exports.generate = generate;
15
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/union/index.ts"],"names":[],"mappings":";;;;;;AAEA,uEAA+C;AAE/C,iDAAsD;AAEtD,SAAgB,QAAQ,CACpB,KAA2B,EAC3B,IAAY,EACZ,GAA4B,EAC5B,aAA4B;IAE5B,OAAO,IAAA,kBAAQ,EAAA;UACT,IAAA,6BAAiB,EAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,aAAa,CAAC;KACvD,CAAC;AACN,CAAC;AATD,4BASC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/union/index.ts"],"names":[],"mappings":";;;;;;AACA,uEAA+C;AAE/C,2CAAgD;AAChD,oDAAwD;AAGxD,SAAgB,QAAQ,CACpB,IAAY,EACZ,GAA4B,EAC5B,aAA4B,EAC5B,QAAgC;IAEhC,OAAO,IAAA,wBAAc,EAAC,IAAA,kBAAQ,EAAA;UACxB,IAAA,6BAAiB,EAAC,IAAI,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;KAC1D,CAAC,CAAC;AACP,CAAC;AATD,4BASC"}
@@ -1 +1 @@
1
- export { resolveTypeName, resolveFieldTypeName, getNormalizableTypeMap, NormalizableTypes, } from './types';
1
+ export { resolveTypeName, resolveFieldTypeName, getNormalizableTypeMap, NormalizableTypes, getShapeTtl, } from './types';
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getNormalizableTypeMap = exports.resolveFieldTypeName = exports.resolveTypeName = void 0;
3
+ exports.getShapeTtl = exports.getNormalizableTypeMap = exports.resolveFieldTypeName = exports.resolveTypeName = void 0;
4
4
  var types_1 = require("./types");
5
5
  Object.defineProperty(exports, "resolveTypeName", { enumerable: true, get: function () { return types_1.resolveTypeName; } });
6
6
  Object.defineProperty(exports, "resolveFieldTypeName", { enumerable: true, get: function () { return types_1.resolveFieldTypeName; } });
7
7
  Object.defineProperty(exports, "getNormalizableTypeMap", { enumerable: true, get: function () { return types_1.getNormalizableTypeMap; } });
8
+ Object.defineProperty(exports, "getShapeTtl", { enumerable: true, get: function () { return types_1.getShapeTtl; } });
8
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/utils/index.ts"],"names":[],"mappings":";;;AAAA,iCAKiB;AAJb,wGAAA,eAAe,OAAA;AACf,6GAAA,oBAAoB,OAAA;AACpB,+GAAA,sBAAsB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/utils/index.ts"],"names":[],"mappings":";;;AAAA,iCAMiB;AALb,wGAAA,eAAe,OAAA;AACf,6GAAA,oBAAoB,OAAA;AACpB,+GAAA,sBAAsB,OAAA;AAEtB,oGAAA,WAAW,OAAA"}
@@ -1,4 +1,5 @@
1
1
  import type { GraphQLSchema, GraphQLInterfaceType, GraphQLObjectType, TypeNode } from '@luvio/graphql-parser';
2
+ import type { ShapeTtls } from '../../../intermediate/model-info';
2
3
  export declare type NormalizableTypes = Record<string, GraphQLInterfaceType | GraphQLObjectType<any, any>>;
3
4
  export declare function resolveTypeName(typeNode: TypeNode): string;
4
5
  export declare function resolveFieldTypeName(schema: GraphQLSchema, field: any): string | null;
@@ -8,3 +9,8 @@ export declare function resolveFieldTypeName(schema: GraphQLSchema, field: any):
8
9
  * @returns : NormalizableTypes Map
9
10
  */
10
11
  export declare function getNormalizableTypeMap(schema: GraphQLSchema): NormalizableTypes;
12
+ /**
13
+ * We can define TTL at RAML root level and shape level
14
+ * When both are defined the shape TTL overrides root level TTL
15
+ */
16
+ export declare function getShapeTtl(rootTtl: number | undefined, shapeId: string | undefined, shapeTtls: ShapeTtls | undefined): number;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getNormalizableTypeMap = exports.resolveFieldTypeName = exports.resolveTypeName = void 0;
3
+ exports.getShapeTtl = exports.getNormalizableTypeMap = exports.resolveFieldTypeName = exports.resolveTypeName = void 0;
4
4
  function resolveTypeName(typeNode) {
5
5
  switch (typeNode.kind) {
6
6
  case 'NamedType':
@@ -42,4 +42,16 @@ function getNormalizableTypeMap(schema) {
42
42
  return normalizableTypeMap;
43
43
  }
44
44
  exports.getNormalizableTypeMap = getNormalizableTypeMap;
45
+ /**
46
+ * We can define TTL at RAML root level and shape level
47
+ * When both are defined the shape TTL overrides root level TTL
48
+ */
49
+ function getShapeTtl(rootTtl, shapeId, shapeTtls) {
50
+ const shapeTtl = shapeTtls && shapeTtls[shapeId];
51
+ if (rootTtl === undefined && shapeTtl === undefined) {
52
+ throw new Error(`Either shape ttl or root ttl should be defined`);
53
+ }
54
+ return shapeTtl !== undefined ? shapeTtl : rootTtl;
55
+ }
56
+ exports.getShapeTtl = getShapeTtl;
45
57
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/utils/types.ts"],"names":[],"mappings":";;;AASA,SAAgB,eAAe,CAAC,QAAkB;IAC9C,QAAQ,QAAQ,CAAC,IAAI,EAAE;QACnB,KAAK,WAAW;YACZ,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QAC/B;YACI,OAAO,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KAC7C;AACL,CAAC;AAPD,0CAOC;AAED,SAAgB,oBAAoB,CAAC,MAAqB,EAAE,KAAU;IAClE,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAErD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE;QACrC,OAAO,IAAI,CAAC;KACf;IAED,OAAO,IAAI,CAAC,IAAI,CAAC;AACrB,CAAC;AAVD,oDAUC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB,CAAC,MAAqB;;IACxD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACpC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvC,MAAM,mBAAmB,GAAsB,EAAE,CAAC;IAElD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE/B,IACI,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,MAAK,yBAAyB;YAChD,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,MAAK,sBAAsB,EAC/C;YACE,uDAAuD;YACvD,uFAAuF;YACvF,aAAa;YACb,mBAAmB,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;SACxC;KACJ;IAED,OAAO,mBAAmB,CAAC;AAC/B,CAAC;AApBD,wDAoBC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/utils/types.ts"],"names":[],"mappings":";;;AAUA,SAAgB,eAAe,CAAC,QAAkB;IAC9C,QAAQ,QAAQ,CAAC,IAAI,EAAE;QACnB,KAAK,WAAW;YACZ,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QAC/B;YACI,OAAO,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KAC7C;AACL,CAAC;AAPD,0CAOC;AAED,SAAgB,oBAAoB,CAAC,MAAqB,EAAE,KAAU;IAClE,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAErD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE;QACrC,OAAO,IAAI,CAAC;KACf;IAED,OAAO,IAAI,CAAC,IAAI,CAAC;AACrB,CAAC;AAVD,oDAUC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB,CAAC,MAAqB;;IACxD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACpC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvC,MAAM,mBAAmB,GAAsB,EAAE,CAAC;IAElD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE/B,IACI,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,MAAK,yBAAyB;YAChD,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,MAAK,sBAAsB,EAC/C;YACE,uDAAuD;YACvD,uFAAuF;YACvF,aAAa;YACb,mBAAmB,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;SACxC;KACJ;IAED,OAAO,mBAAmB,CAAC;AAC/B,CAAC;AApBD,wDAoBC;AAED;;;GAGG;AACH,SAAgB,WAAW,CACvB,OAA2B,EAC3B,OAA2B,EAC3B,SAAgC;IAEhC,MAAM,QAAQ,GAAG,SAAS,IAAI,SAAS,CAAC,OAAQ,CAAC,CAAC;IAElD,IAAI,OAAO,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE;QACjD,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;KACrE;IAED,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAQ,CAAC;AACxD,CAAC;AAZD,kCAYC"}
@@ -0,0 +1,2 @@
1
+ export { TextFile } from './text-file';
2
+ export { PackageRenderer, LuvioPackageRenderer } from './package-renderer';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LuvioPackageRenderer = void 0;
4
+ var package_renderer_1 = require("./package-renderer");
5
+ Object.defineProperty(exports, "LuvioPackageRenderer", { enumerable: true, get: function () { return package_renderer_1.LuvioPackageRenderer; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/codegen/package-renderer/index.ts"],"names":[],"mappings":";;;AACA,uDAA2E;AAAjD,wHAAA,oBAAoB,OAAA"}
@@ -0,0 +1,16 @@
1
+ /// <reference types="node" />
2
+ import type { TextFile } from './text-file';
3
+ import path from 'path';
4
+ import type { TypescriptPackage } from '../typescript/typescript-package';
5
+ export interface PackageRenderer {
6
+ renderPackage(sourcePackage: TypescriptPackage): TextFile[];
7
+ }
8
+ export declare class LuvioPackageRenderer implements PackageRenderer {
9
+ private compilerBaseOutputDir;
10
+ constructor(compilerBaseOutputDir: path.ParsedPath);
11
+ renderPackage(sourcePackage: TypescriptPackage): TextFile[];
12
+ private resolveImports;
13
+ private renderRawImport;
14
+ private buildDefaultName;
15
+ private buildNamedImportClause;
16
+ }
@@ -0,0 +1,72 @@
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.LuvioPackageRenderer = void 0;
7
+ const path_1 = __importDefault(require("path"));
8
+ class LuvioPackageRenderer {
9
+ constructor(compilerBaseOutputDir) {
10
+ this.compilerBaseOutputDir = compilerBaseOutputDir;
11
+ }
12
+ renderPackage(sourcePackage) {
13
+ return this.resolveImports(sourcePackage);
14
+ }
15
+ resolveImports(sourcePackage) {
16
+ return sourcePackage.sourceFiles.map((file) => {
17
+ const importsByModuleId = {};
18
+ file.imports.forEach((sourceImport) => {
19
+ const moduleId = sourceImport.moduleId;
20
+ if (!importsByModuleId[moduleId]) {
21
+ importsByModuleId[moduleId] = [];
22
+ }
23
+ importsByModuleId[moduleId].push(sourceImport);
24
+ });
25
+ const rawImportStatements = Object.values(importsByModuleId).map((imports) => {
26
+ return this.renderRawImport(file, imports);
27
+ });
28
+ const rawImportBlock = rawImportStatements.filter(Boolean).join('\n');
29
+ const content = rawImportBlock ? `${rawImportBlock}\n\n${file.code}` : file.code;
30
+ return {
31
+ path: path_1.default.parse(path_1.default.join(path_1.default.format(this.compilerBaseOutputDir), path_1.default.format(file.id.generateFilePath()))),
32
+ content,
33
+ };
34
+ });
35
+ }
36
+ renderRawImport(sourceFile, imports) {
37
+ const defaultImportClauses = new Set();
38
+ const namedImportClauses = new Set();
39
+ imports.forEach((sourceImport) => {
40
+ const clauseSet = sourceImport.importType === 'default' ? defaultImportClauses : namedImportClauses;
41
+ clauseSet.add(sourceImport.importClause);
42
+ });
43
+ const defaultImportName = this.buildDefaultName(defaultImportClauses);
44
+ const namedImportRawClause = this.buildNamedImportClause(namedImportClauses);
45
+ const importModulePath = imports[0].generateImportModule(sourceFile.id);
46
+ if ((defaultImportName && !namedImportRawClause) ||
47
+ (!defaultImportName && namedImportRawClause)) {
48
+ return `import ${defaultImportName || namedImportRawClause} from '${importModulePath}';`;
49
+ }
50
+ if (defaultImportName && namedImportRawClause) {
51
+ return `import ${defaultImportName}, ${namedImportRawClause} from '${importModulePath}';`;
52
+ }
53
+ return '';
54
+ }
55
+ buildDefaultName(defaultImportClauses) {
56
+ let defaultImportName = undefined;
57
+ for (let clause of defaultImportClauses) {
58
+ defaultImportName = clause;
59
+ }
60
+ return defaultImportName;
61
+ }
62
+ buildNamedImportClause(namedImportClauses) {
63
+ let namedImportRawClause = undefined;
64
+ if (namedImportClauses.size > 0) {
65
+ const clauses = Array.from(namedImportClauses);
66
+ namedImportRawClause = `{ ${clauses.join(', ')} }`;
67
+ }
68
+ return namedImportRawClause;
69
+ }
70
+ }
71
+ exports.LuvioPackageRenderer = LuvioPackageRenderer;
72
+ //# sourceMappingURL=package-renderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-renderer.js","sourceRoot":"","sources":["../../../src/codegen/package-renderer/package-renderer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /// <reference types="node" />
2
+ import type path from 'path';
3
+ export interface TextFile {
4
+ path: path.ParsedPath;
5
+ content: string;
6
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=text-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-file.js","sourceRoot":"","sources":["../../../src/codegen/package-renderer/text-file.ts"],"names":[],"mappings":""}
@@ -1,5 +1,6 @@
1
- import type { CompilerConfig } from '../../generate';
1
+ /// <reference types="node" />
2
+ import path from 'path';
2
3
  import type { Resource } from '../../intermediate/resource';
3
4
  import type { ImportContext } from '../../utils/imports';
4
5
  export declare const CREATE_RESOURCE_REQUEST_IDENTIFIER = "createResourceRequest";
5
- export declare function generateCreateResourceRequest(importContext: ImportContext, resource: Resource, compilerConfig: CompilerConfig, relPath: string): string;
6
+ export declare function generateCreateResourceRequest(importContext: ImportContext, resource: Resource, compilerBaseOutputDir: path.ParsedPath, relPath: string): string;
@@ -98,23 +98,22 @@ function generateHeaders(resource) {
98
98
  ${properties}
99
99
  `;
100
100
  }
101
- function generateFulfill(importContext, resource, compilerConfig, relPath) {
101
+ function generateFulfill(importContext, resource, compilerBaseOutputDir, relPath) {
102
102
  const { fulfill } = resource;
103
103
  if (fulfill === undefined) {
104
104
  return '';
105
105
  }
106
106
  const { importAbsolutePath } = importContext;
107
- const { outputDir } = compilerConfig;
108
- const absResourceLocation = path_1.default.resolve(outputDir, path_1.default.dirname(relPath));
107
+ const absResourceLocation = path_1.default.resolve(path_1.default.format(compilerBaseOutputDir), path_1.default.dirname(relPath));
109
108
  return importAbsolutePath(absResourceLocation, 'default');
110
109
  }
111
- function generateCreateResourceRequest(importContext, resource, compilerConfig, relPath) {
110
+ function generateCreateResourceRequest(importContext, resource, compilerBaseOutputDir, relPath) {
112
111
  const { id, method } = resource;
113
112
  const headers = generateHeaders(resource);
114
113
  const urlParams = generateUrlParams(resource);
115
114
  const queryParams = generateQueryParams(resource);
116
115
  const body = generateBody(resource);
117
- const fulfillIdentifier = generateFulfill(importContext, resource, compilerConfig, relPath);
116
+ const fulfillIdentifier = generateFulfill(importContext, resource, compilerBaseOutputDir, relPath);
118
117
  const fulfillProperty = fulfillIdentifier === '' ? '' : `fulfill: ${fulfillIdentifier},`;
119
118
  const resourceRequestConfig = importContext.importRamlArtifact(id, resource_params_1.RESOURCE_PARAMS_INTERFACE);
120
119
  return (0, deindent_1.default) `
@@ -1 +1 @@
1
- {"version":3,"file":"create-resource-request.js","sourceRoot":"","sources":["../../../src/codegen/resource/create-resource-request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-resource-request.js","sourceRoot":"","sources":["../../../src/codegen/resource/create-resource-request.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
- import type { CodeGenerationEnvironment } from '../../generate';
1
+ /// <reference types="node" />
2
2
  import type { ModelInfo } from '../../intermediate/model-info';
3
3
  import type { Resource } from '../../intermediate/resource';
4
- export declare function generateResource(env: CodeGenerationEnvironment, resource: Resource, modelInfo: ModelInfo, relPath: string): string;
4
+ import type path from 'path';
5
+ import type { CompilerPlugin } from '../../plugin';
6
+ export declare function generateResource(typescriptFilePath: path.ParsedPath, compilerBaseOutputDir: path.ParsedPath, resource: Resource, modelInfo: ModelInfo, relPath: string, plugin?: CompilerPlugin): string;