@luvio/compiler 0.82.1 → 0.85.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 (182) hide show
  1. package/dist/codegen/adapter/graphql/adapter-config-interface.d.ts +3 -0
  2. package/dist/codegen/adapter/graphql/adapter-config-interface.js +24 -0
  3. package/dist/codegen/adapter/graphql/adapter-config-interface.js.map +1 -0
  4. package/dist/codegen/adapter/graphql/index.d.ts +7 -0
  5. package/dist/codegen/adapter/graphql/index.js +54 -0
  6. package/dist/codegen/adapter/graphql/index.js.map +1 -0
  7. package/dist/codegen/adapter/index.d.ts +9 -7
  8. package/dist/codegen/adapter/index.js +10 -30
  9. package/dist/codegen/adapter/index.js.map +1 -1
  10. package/dist/codegen/adapter-tests/expected-responses.js +3 -3
  11. package/dist/codegen/adapter-tests/expected-responses.js.map +1 -1
  12. package/dist/codegen/adapter-tests/index.d.ts +3 -2
  13. package/dist/codegen/adapter-tests/index.js +3 -7
  14. package/dist/codegen/adapter-tests/index.js.map +1 -1
  15. package/dist/codegen/graphql/enum/index.d.ts +2 -2
  16. package/dist/codegen/graphql/enum/index.js +2 -2
  17. package/dist/codegen/graphql/enum/index.js.map +1 -1
  18. package/dist/codegen/graphql/enum/interface.d.ts +2 -2
  19. package/dist/codegen/graphql/enum/interface.js +1 -1
  20. package/dist/codegen/graphql/enum/interface.js.map +1 -1
  21. package/dist/codegen/graphql/graphql-dsl.d.ts +13 -0
  22. package/dist/codegen/graphql/graphql-dsl.js +26 -0
  23. package/dist/codegen/graphql/graphql-dsl.js.map +1 -0
  24. package/dist/codegen/graphql/source-printer/graphql-adapter-source-printer.d.ts +8 -4
  25. package/dist/codegen/graphql/source-printer/graphql-adapter-source-printer.js +31 -3
  26. package/dist/codegen/graphql/source-printer/graphql-adapter-source-printer.js.map +1 -1
  27. package/dist/codegen/graphql/source-printer/graphql-resource-source-printer.d.ts +6 -2
  28. package/dist/codegen/graphql/source-printer/graphql-resource-source-printer.js +15 -3
  29. package/dist/codegen/graphql/source-printer/graphql-resource-source-printer.js.map +1 -1
  30. package/dist/codegen/graphql/source-printer/graphql-source-printer.d.ts +14 -17
  31. package/dist/codegen/graphql/source-printer/graphql-source-printer.js +17 -19
  32. package/dist/codegen/graphql/source-printer/graphql-source-printer.js.map +1 -1
  33. package/dist/codegen/graphql/source-printer/graphql-type-source-printer.d.ts +9 -3
  34. package/dist/codegen/graphql/source-printer/graphql-type-source-printer.js +37 -18
  35. package/dist/codegen/graphql/source-printer/graphql-type-source-printer.js.map +1 -1
  36. package/dist/codegen/graphql/source-printer/index.d.ts +2 -2
  37. package/dist/codegen/graphql/source-printer/index.js.map +1 -1
  38. package/dist/codegen/graphql/type/index.d.ts +5 -3
  39. package/dist/codegen/graphql/type/index.js +13 -5
  40. package/dist/codegen/graphql/type/index.js.map +1 -1
  41. package/dist/codegen/graphql/type/ingest.d.ts +5 -4
  42. package/dist/codegen/graphql/type/ingest.js +67 -27
  43. package/dist/codegen/graphql/type/ingest.js.map +1 -1
  44. package/dist/codegen/graphql/type/interface.d.ts +2 -2
  45. package/dist/codegen/graphql/type/interface.js +1 -1
  46. package/dist/codegen/graphql/type/interface.js.map +1 -1
  47. package/dist/codegen/graphql/type/ttl.d.ts +4 -0
  48. package/dist/codegen/graphql/type/ttl.js +18 -0
  49. package/dist/codegen/graphql/type/ttl.js.map +1 -0
  50. package/dist/codegen/graphql/union/index.d.ts +2 -2
  51. package/dist/codegen/graphql/union/index.js +2 -2
  52. package/dist/codegen/graphql/union/index.js.map +1 -1
  53. package/dist/codegen/graphql/union/interface.d.ts +2 -2
  54. package/dist/codegen/graphql/union/interface.js +1 -1
  55. package/dist/codegen/graphql/union/interface.js.map +1 -1
  56. package/dist/codegen/graphql/utils/index.d.ts +1 -1
  57. package/dist/codegen/graphql/utils/index.js +2 -1
  58. package/dist/codegen/graphql/utils/index.js.map +1 -1
  59. package/dist/codegen/graphql/utils/types.d.ts +9 -3
  60. package/dist/codegen/graphql/utils/types.js +13 -1
  61. package/dist/codegen/graphql/utils/types.js.map +1 -1
  62. package/dist/codegen/package-renderer/index.d.ts +2 -0
  63. package/dist/codegen/package-renderer/index.js +6 -0
  64. package/dist/codegen/package-renderer/index.js.map +1 -0
  65. package/dist/codegen/package-renderer/package-renderer.d.ts +16 -0
  66. package/dist/codegen/package-renderer/package-renderer.js +72 -0
  67. package/dist/codegen/package-renderer/package-renderer.js.map +1 -0
  68. package/dist/codegen/package-renderer/text-file.d.ts +6 -0
  69. package/dist/{generate.js → codegen/package-renderer/text-file.js} +1 -1
  70. package/dist/codegen/package-renderer/text-file.js.map +1 -0
  71. package/dist/codegen/resource/create-resource-request.d.ts +6 -2
  72. package/dist/codegen/resource/create-resource-request.js +11 -17
  73. package/dist/codegen/resource/create-resource-request.js.map +1 -1
  74. package/dist/codegen/resource/graphql/create-resource-request.d.ts +4 -0
  75. package/dist/codegen/resource/graphql/create-resource-request.js +30 -0
  76. package/dist/codegen/resource/graphql/create-resource-request.js.map +1 -0
  77. package/dist/codegen/resource/graphql/index.d.ts +6 -0
  78. package/dist/codegen/resource/graphql/index.js +30 -0
  79. package/dist/codegen/resource/graphql/index.js.map +1 -0
  80. package/dist/codegen/resource/graphql/ingest-error.d.ts +5 -0
  81. package/dist/codegen/resource/graphql/ingest-error.js +63 -0
  82. package/dist/codegen/resource/graphql/ingest-error.js.map +1 -0
  83. package/dist/codegen/resource/graphql/ingest-success.d.ts +4 -0
  84. package/dist/codegen/resource/graphql/ingest-success.js +56 -0
  85. package/dist/codegen/resource/graphql/ingest-success.js.map +1 -0
  86. package/dist/codegen/resource/graphql/key-builder.d.ts +3 -0
  87. package/dist/codegen/resource/graphql/key-builder.js +25 -0
  88. package/dist/codegen/resource/graphql/key-builder.js.map +1 -0
  89. package/dist/codegen/resource/graphql/resource-params.d.ts +4 -0
  90. package/dist/codegen/resource/graphql/resource-params.js +25 -0
  91. package/dist/codegen/resource/graphql/resource-params.js.map +1 -0
  92. package/dist/codegen/resource/graphql/response-cache-keys.d.ts +4 -0
  93. package/dist/codegen/resource/graphql/response-cache-keys.js +33 -0
  94. package/dist/codegen/resource/graphql/response-cache-keys.js.map +1 -0
  95. package/dist/codegen/resource/index.d.ts +5 -3
  96. package/dist/codegen/resource/index.js +5 -5
  97. package/dist/codegen/resource/index.js.map +1 -1
  98. package/dist/codegen/resource/ingest-error.d.ts +2 -2
  99. package/dist/codegen/resource/ingest-error.js.map +1 -1
  100. package/dist/codegen/resource/ingest-success.js +5 -3
  101. package/dist/codegen/resource/ingest-success.js.map +1 -1
  102. package/dist/codegen/resource/key-builder.d.ts +1 -0
  103. package/dist/codegen/resource/key-builder.js +2 -1
  104. package/dist/codegen/resource/key-builder.js.map +1 -1
  105. package/dist/codegen/resource/resource-params.d.ts +2 -2
  106. package/dist/codegen/resource/resource-params.js.map +1 -1
  107. package/dist/codegen/rest/source-printer/rest-adapter-source-printer.d.ts +7 -4
  108. package/dist/codegen/rest/source-printer/rest-adapter-source-printer.js +11 -15
  109. package/dist/codegen/rest/source-printer/rest-adapter-source-printer.js.map +1 -1
  110. package/dist/codegen/rest/source-printer/rest-source-printer.d.ts +6 -3
  111. package/dist/codegen/rest/source-printer/rest-source-printer.js +9 -15
  112. package/dist/codegen/rest/source-printer/rest-source-printer.js.map +1 -1
  113. package/dist/codegen/shape/graphql/index.d.ts +3 -0
  114. package/dist/codegen/shape/graphql/index.js +29 -0
  115. package/dist/codegen/shape/graphql/index.js.map +1 -0
  116. package/dist/codegen/shape/graphql/key-builder.d.ts +5 -0
  117. package/dist/codegen/shape/graphql/key-builder.js +26 -0
  118. package/dist/codegen/shape/graphql/key-builder.js.map +1 -0
  119. package/dist/codegen/shape/graphql/shape-ingest.d.ts +3 -0
  120. package/dist/codegen/shape/graphql/shape-ingest.js +67 -0
  121. package/dist/codegen/shape/graphql/shape-ingest.js.map +1 -0
  122. package/dist/codegen/shape/graphql/shape-type-definition.d.ts +3 -0
  123. package/dist/codegen/shape/graphql/shape-type-definition.js +28 -0
  124. package/dist/codegen/shape/graphql/shape-type-definition.js.map +1 -0
  125. package/dist/codegen/shape/shape-select-paginated.js +6 -16
  126. package/dist/codegen/shape/shape-select-paginated.js.map +1 -1
  127. package/dist/codegen/shape/shape-utils-ingest.js +22 -0
  128. package/dist/codegen/shape/shape-utils-ingest.js.map +1 -1
  129. package/dist/codegen/shared/constants.d.ts +5 -0
  130. package/dist/codegen/shared/constants.js +7 -1
  131. package/dist/codegen/shared/constants.js.map +1 -1
  132. package/dist/codegen/typescript/index.d.ts +3 -0
  133. package/dist/codegen/typescript/index.js +15 -0
  134. package/dist/codegen/typescript/index.js.map +1 -0
  135. package/dist/codegen/typescript/typescript-import.d.ts +93 -0
  136. package/dist/codegen/typescript/typescript-import.js +110 -0
  137. package/dist/codegen/typescript/typescript-import.js.map +1 -0
  138. package/dist/codegen/typescript/typescript-package.d.ts +13 -0
  139. package/dist/codegen/typescript/typescript-package.js +85 -0
  140. package/dist/codegen/typescript/typescript-package.js.map +1 -0
  141. package/dist/codegen/typescript/typescript-source-file-id.d.ts +13 -0
  142. package/dist/codegen/typescript/typescript-source-file-id.js +21 -0
  143. package/dist/codegen/typescript/typescript-source-file-id.js.map +1 -0
  144. package/dist/codegen/typescript/typescript-source-file.d.ts +10 -0
  145. package/dist/codegen/typescript/typescript-source-file.js +19 -0
  146. package/dist/codegen/typescript/typescript-source-file.js.map +1 -0
  147. package/dist/compiler/raml-compiler.d.ts +11 -12
  148. package/dist/compiler/raml-compiler.js +17 -10
  149. package/dist/compiler/raml-compiler.js.map +1 -1
  150. package/dist/interfaces/source-printers/graphql/graphql-adapter-printer.d.ts +6 -2
  151. package/dist/interfaces/source-printers/graphql/graphql-resource-printer.d.ts +5 -2
  152. package/dist/interfaces/source-printers/graphql/graphql-type-printer.d.ts +7 -2
  153. package/dist/interfaces/source-writer.d.ts +0 -1
  154. package/dist/intermediate/graphql-annotation.d.ts +1 -1
  155. package/dist/intermediate/graphql.d.ts +13 -3
  156. package/dist/intermediate/model-info.d.ts +2 -0
  157. package/dist/intermediate/resource.d.ts +2 -4
  158. package/dist/intermediate/resource.js.map +1 -1
  159. package/dist/main.d.ts +2 -3
  160. package/dist/main.js.map +1 -1
  161. package/dist/parser/annotation-adapter.d.ts +2 -1
  162. package/dist/parser/annotation-adapter.js +30 -28
  163. package/dist/parser/annotation-adapter.js.map +1 -1
  164. package/dist/parser/annotation-graphql.d.ts +2 -2
  165. package/dist/parser/annotation-graphql.js +1 -0
  166. package/dist/parser/annotation-graphql.js.map +1 -1
  167. package/dist/parser/main.js +9 -3
  168. package/dist/parser/main.js.map +1 -1
  169. package/dist/parser/resource.js +16 -15
  170. package/dist/parser/resource.js.map +1 -1
  171. package/dist/plugin.d.ts +4 -2
  172. package/dist/utils/aml.js +5 -1
  173. package/dist/utils/aml.js.map +1 -1
  174. package/dist/utils/generation.d.ts +4 -2
  175. package/dist/utils/generation.js +5 -11
  176. package/dist/utils/generation.js.map +1 -1
  177. package/dist/utils/imports.d.ts +4 -2
  178. package/dist/utils/imports.js +27 -31
  179. package/dist/utils/imports.js.map +1 -1
  180. package/package.json +4 -4
  181. package/dist/generate.d.ts +0 -15
  182. package/dist/generate.js.map +0 -1
@@ -1,4 +1,4 @@
1
1
  import type { UnionTypeDefinitionNode } from '@luvio/graphql-parser';
2
2
  import type { ImportContext } from '../../../utils/imports';
3
- import type { GraphQLGenerateState, GraphQLCodegenMetadata } from '../source-printer/graphql-source-printer';
4
- export declare function generate(state: GraphQLGenerateState, name: string, def: UnionTypeDefinitionNode, importContext: ImportContext, metadata: GraphQLCodegenMetadata): 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;
@@ -7,9 +7,9 @@ exports.generate = void 0;
7
7
  const deindent_1 = __importDefault(require("../../../utils/deindent"));
8
8
  const interface_1 = require("./interface");
9
9
  const imports_1 = require("../../../utils/imports");
10
- function generate(state, name, def, importContext, metadata) {
10
+ function generate(name, def, importContext, metadata) {
11
11
  return (0, imports_1.resolveImports)((0, deindent_1.default) `
12
- ${(0, interface_1.generateInterface)(state, name, def, importContext, metadata)}
12
+ ${(0, interface_1.generateInterface)(name, def, importContext, metadata)}
13
13
  `);
14
14
  }
15
15
  exports.generate = generate;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/union/index.ts"],"names":[],"mappings":";;;;;;AACA,uEAA+C;AAE/C,2CAAgD;AAChD,oDAAwD;AAMxD,SAAgB,QAAQ,CACpB,KAA2B,EAC3B,IAAY,EACZ,GAA4B,EAC5B,aAA4B,EAC5B,QAAgC;IAEhC,OAAO,IAAA,wBAAc,EAAC,IAAA,kBAAQ,EAAA;UACxB,IAAA,6BAAiB,EAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC;KACjE,CAAC,CAAC;AACP,CAAC;AAVD,4BAUC"}
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,4 +1,4 @@
1
1
  import type { UnionTypeDefinitionNode } from '@luvio/graphql-parser';
2
2
  import type { ImportContext } from '../../../utils/imports';
3
- import type { GraphQLCodegenMetadata, GraphQLGenerateState } from '../source-printer/graphql-source-printer';
4
- export declare function generateInterface(state: GraphQLGenerateState, name: string, def: UnionTypeDefinitionNode, importContext: ImportContext, metadata: GraphQLCodegenMetadata): string;
3
+ import type { GraphQLCodegenMetadata } from '../source-printer/graphql-source-printer';
4
+ export declare function generateInterface(name: string, def: UnionTypeDefinitionNode, importContext: ImportContext, metadata: GraphQLCodegenMetadata): string;
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.generateInterface = void 0;
7
7
  const deindent_1 = __importDefault(require("../../../utils/deindent"));
8
8
  const interface_1 = require("../type/interface");
9
- function generateInterface(state, name, def, importContext, metadata) {
9
+ function generateInterface(name, def, importContext, metadata) {
10
10
  return generateUnionDefinitionNode(name, def, importContext, metadata.scalarToPrimitiveMap);
11
11
  }
12
12
  exports.generateInterface = generateInterface;
@@ -1 +1 @@
1
- {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/union/interface.ts"],"names":[],"mappings":";;;;;;AACA,uEAA+C;AAM/C,iDAAqF;AAErF,SAAgB,iBAAiB,CAC7B,KAA2B,EAC3B,IAAY,EACZ,GAA4B,EAC5B,aAA4B,EAC5B,QAAgC;IAEhC,OAAO,2BAA2B,CAAC,IAAI,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;AAChG,CAAC;AARD,8CAQC;AAED,SAAS,2BAA2B,CAChC,IAAY,EACZ,GAA4B,EAC5B,aAA4B,EAC5B,oBAA4C;IAE5C,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC;IAEtB,IAAI,KAAK,KAAK,SAAS,EAAE;QACrB,OAAO,IAAA,kBAAQ,EAAA;0BACG,qCAAyB;SAC1C,CAAC;KACL;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC9B,OAAO,IAAA,iCAAqB,EAAC,IAAI,EAAE,aAAa,EAAE,oBAAoB,EAAE;YACpE,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,KAAK;SACf,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,OAAO,IAAA,kBAAQ,EAAA;sBACG,qCAAyB,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;KAClE,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/union/interface.ts"],"names":[],"mappings":";;;;;;AACA,uEAA+C;AAG/C,iDAAqF;AAErF,SAAgB,iBAAiB,CAC7B,IAAY,EACZ,GAA4B,EAC5B,aAA4B,EAC5B,QAAgC;IAEhC,OAAO,2BAA2B,CAAC,IAAI,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;AAChG,CAAC;AAPD,8CAOC;AAED,SAAS,2BAA2B,CAChC,IAAY,EACZ,GAA4B,EAC5B,aAA4B,EAC5B,oBAA4C;IAE5C,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC;IAEtB,IAAI,KAAK,KAAK,SAAS,EAAE;QACrB,OAAO,IAAA,kBAAQ,EAAA;0BACG,qCAAyB;SAC1C,CAAC;KACL;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC9B,OAAO,IAAA,iCAAqB,EAAC,IAAI,EAAE,aAAa,EAAE,oBAAoB,EAAE;YACpE,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,KAAK;SACf,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,OAAO,IAAA,kBAAQ,EAAA;sBACG,qCAAyB,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;KAClE,CAAC;AACN,CAAC"}
@@ -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,10 +1,16 @@
1
- import type { GraphQLInterfaceType, GraphQLObjectType, LuvioGraphQLSchema, TypeNode } from '@luvio/graphql-parser';
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
- export declare function resolveFieldTypeName(schema: LuvioGraphQLSchema['schema'], field: any): string | null;
5
+ export declare function resolveFieldTypeName(schema: GraphQLSchema, field: any): string | null;
5
6
  /**
6
7
  *
7
8
  * @param schema : GraphQLSchema
8
9
  * @returns : NormalizableTypes Map
9
10
  */
10
- export declare function getNormalizableTypeMap(schema: LuvioGraphQLSchema['schema']): NormalizableTypes;
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,CAChC,MAAoC,EACpC,KAAU;IAEV,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;AAbD,oDAaC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB,CAAC,MAAoC;;IACvE,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
+ }
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=generate.js.map
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,9 @@
1
- import type { CompilerConfig } from '../../generate';
2
1
  import type { Resource } from '../../intermediate/resource';
3
2
  import type { ImportContext } from '../../utils/imports';
4
3
  export declare const CREATE_RESOURCE_REQUEST_IDENTIFIER = "createResourceRequest";
5
- export declare function generateCreateResourceRequest(importContext: ImportContext, resource: Resource, compilerConfig: CompilerConfig, relPath: string): string;
4
+ export declare function generateQueryParams(resource: Resource): string;
5
+ export declare function generateUrlParams(resource: Resource): string;
6
+ export declare function generateBody(resource: Resource): string;
7
+ export declare function generateHeaders(resource: Resource): string;
8
+ export declare function generateCreateResourceRequest(importContext: ImportContext, resource: Resource): string;
9
+ export declare function generateCreateResourceRequestWrapper(importContext: ImportContext, id: string, headers: string, resource: Resource, method: string, body: string, urlParams: string, queryParams: string): string;
@@ -3,8 +3,7 @@ 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.generateCreateResourceRequest = exports.CREATE_RESOURCE_REQUEST_IDENTIFIER = void 0;
7
- const path_1 = __importDefault(require("path"));
6
+ exports.generateCreateResourceRequestWrapper = exports.generateCreateResourceRequest = exports.generateHeaders = exports.generateBody = exports.generateUrlParams = exports.generateQueryParams = exports.CREATE_RESOURCE_REQUEST_IDENTIFIER = void 0;
8
7
  const resource_1 = require("../../intermediate/resource");
9
8
  const constants_1 = require("../adapter/constants");
10
9
  const utils_1 = require("../../intermediate/utils");
@@ -63,16 +62,19 @@ function generateQueryParams(resource) {
63
62
  ? '{}'
64
63
  : `${CONFIG_IDENTIFIER}.${resource_1.CONFIG_PROPERTY_QUERY_PARAMS}`;
65
64
  }
65
+ exports.generateQueryParams = generateQueryParams;
66
66
  function generateUrlParams(resource) {
67
67
  return resource.urlParameters.length === 0
68
68
  ? '{}'
69
69
  : `${CONFIG_IDENTIFIER}.${resource_1.CONFIG_PROPERTY_URL_PARAMS}`;
70
70
  }
71
+ exports.generateUrlParams = generateUrlParams;
71
72
  function generateBody(resource) {
72
73
  return resource.bodyShape === undefined
73
74
  ? 'null'
74
75
  : `${CONFIG_IDENTIFIER}.${resource_1.CONFIG_PROPERTY_BODY}`;
75
76
  }
77
+ exports.generateBody = generateBody;
76
78
  function generateHeaders(resource) {
77
79
  const properties = resource.headers
78
80
  .map((header) => {
@@ -98,24 +100,17 @@ function generateHeaders(resource) {
98
100
  ${properties}
99
101
  `;
100
102
  }
101
- function generateFulfill(importContext, resource, compilerConfig, relPath) {
102
- const { fulfill } = resource;
103
- if (fulfill === undefined) {
104
- return '';
105
- }
106
- const { importAbsolutePath } = importContext;
107
- const { outputDirectory } = compilerConfig.sourceWriter;
108
- const absResourceLocation = path_1.default.resolve(outputDirectory, path_1.default.dirname(relPath));
109
- return importAbsolutePath(absResourceLocation, 'default');
110
- }
111
- function generateCreateResourceRequest(importContext, resource, compilerConfig, relPath) {
103
+ exports.generateHeaders = generateHeaders;
104
+ function generateCreateResourceRequest(importContext, resource) {
112
105
  const { id, method } = resource;
113
106
  const headers = generateHeaders(resource);
114
107
  const urlParams = generateUrlParams(resource);
115
108
  const queryParams = generateQueryParams(resource);
116
109
  const body = generateBody(resource);
117
- const fulfillIdentifier = generateFulfill(importContext, resource, compilerConfig, relPath);
118
- const fulfillProperty = fulfillIdentifier === '' ? '' : `fulfill: ${fulfillIdentifier},`;
110
+ return generateCreateResourceRequestWrapper(importContext, id, headers, resource, method, body, urlParams, queryParams);
111
+ }
112
+ exports.generateCreateResourceRequest = generateCreateResourceRequest;
113
+ function generateCreateResourceRequestWrapper(importContext, id, headers, resource, method, body, urlParams, queryParams) {
119
114
  const resourceRequestConfig = importContext.importRamlArtifact(id, resource_params_1.RESOURCE_PARAMS_INTERFACE);
120
115
  return (0, deindent_1.default) `
121
116
  export function ${exports.CREATE_RESOURCE_REQUEST_IDENTIFIER}(${CONFIG_IDENTIFIER}: ${resourceRequestConfig}): ${constants_1.ADAPTER_RESOURCE_REQUEST_IDENTIFIER} {
@@ -130,12 +125,11 @@ function generateCreateResourceRequest(importContext, resource, compilerConfig,
130
125
  queryParams: ${queryParams},
131
126
  headers,
132
127
  priority: 'normal',
133
- ${fulfillProperty}
134
128
  }
135
129
  }
136
130
 
137
131
  export default ${exports.CREATE_RESOURCE_REQUEST_IDENTIFIER};
138
132
  `;
139
133
  }
140
- exports.generateCreateResourceRequest = generateCreateResourceRequest;
134
+ exports.generateCreateResourceRequestWrapper = generateCreateResourceRequestWrapper;
141
135
  //# sourceMappingURL=create-resource-request.js.map
@@ -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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"}
@@ -0,0 +1,4 @@
1
+ import type { GraphQLResource } from '../../../intermediate/resource';
2
+ import type { ImportContext } from '../../../utils/imports';
3
+ export declare const CREATE_RESOURCE_REQUEST_IDENTIFIER = "createResourceRequest";
4
+ export declare function generateGraphQLCreateResourceRequest(importContext: ImportContext, resource: GraphQLResource): string;
@@ -0,0 +1,30 @@
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.generateGraphQLCreateResourceRequest = exports.CREATE_RESOURCE_REQUEST_IDENTIFIER = void 0;
7
+ const resource_1 = require("../../../intermediate/resource");
8
+ const deindent_1 = __importDefault(require("../../../utils/deindent"));
9
+ const constants_1 = require("../../shared/constants");
10
+ const create_resource_request_1 = require("../create-resource-request");
11
+ const CONFIG_IDENTIFIER = 'config';
12
+ exports.CREATE_RESOURCE_REQUEST_IDENTIFIER = 'createResourceRequest';
13
+ // Resource param will likely be used in the future w/ applyMinimumFields and supporting get instead of post
14
+ function generateGraphQLBody(_resource, _importContext) {
15
+ // TODO: W-10942024 - should also call applyMinimumFields on the query here, just before stringification
16
+ return (0, deindent_1.default) `{
17
+ ...${CONFIG_IDENTIFIER}.${resource_1.CONFIG_PROPERTY_BODY},
18
+ query: ${constants_1.LUVIO_GRAPHQL_PRINT_IMPORT}(${CONFIG_IDENTIFIER}.${resource_1.CONFIG_PROPERTY_BODY}.query)
19
+ }`;
20
+ }
21
+ function generateGraphQLCreateResourceRequest(importContext, resource) {
22
+ const { id, method } = resource;
23
+ const headers = (0, create_resource_request_1.generateHeaders)(resource);
24
+ const urlParams = (0, create_resource_request_1.generateUrlParams)(resource);
25
+ const queryParams = (0, create_resource_request_1.generateQueryParams)(resource);
26
+ const body = generateGraphQLBody(resource, importContext);
27
+ return (0, create_resource_request_1.generateCreateResourceRequestWrapper)(importContext, id, headers, resource, method, body, urlParams, queryParams);
28
+ }
29
+ exports.generateGraphQLCreateResourceRequest = generateGraphQLCreateResourceRequest;
30
+ //# sourceMappingURL=create-resource-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-resource-request.js","sourceRoot":"","sources":["../../../../src/codegen/resource/graphql/create-resource-request.ts"],"names":[],"mappings":";;;;;;AACA,6DAAsE;AACtE,uEAA+C;AAE/C,sDAAoE;AACpE,wEAKoC;AAEpC,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AAEtB,QAAA,kCAAkC,GAAG,uBAAuB,CAAC;AAE1E,4GAA4G;AAC5G,SAAS,mBAAmB,CAAC,SAA0B,EAAE,cAA6B;IAClF,wGAAwG;IACxG,OAAO,IAAA,kBAAQ,EAAA;qBACE,iBAAiB,IAAI,+BAAoB;yBACrC,sCAA0B,IAAI,iBAAiB,IAAI,+BAAoB;cAClF,CAAC;AACf,CAAC;AAED,SAAgB,oCAAoC,CAChD,aAA4B,EAC5B,QAAyB;IAEzB,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC;IAEhC,MAAM,OAAO,GAAG,IAAA,yCAAe,EAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,IAAA,2CAAiB,EAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,IAAA,6CAAmB,EAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,IAAI,GAAG,mBAAmB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAE1D,OAAO,IAAA,8DAAoC,EACvC,aAAa,EACb,EAAE,EACF,OAAO,EACP,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,SAAS,EACT,WAAW,CACd,CAAC;AACN,CAAC;AArBD,oFAqBC"}
@@ -0,0 +1,6 @@
1
+ /// <reference types="node" />
2
+ import type { ModelInfo } from '../../../intermediate/model-info';
3
+ import type path from 'path';
4
+ import type { CompilerPlugin } from '../../../plugin';
5
+ import type { GraphQLResource } from '../../../intermediate/resource';
6
+ export declare function generateGraphQLResource(typescriptFilePath: path.ParsedPath, compilerBaseOutputDir: path.ParsedPath, resource: GraphQLResource, modelInfo: ModelInfo, plugin?: CompilerPlugin): string;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateGraphQLResource = void 0;
4
+ const imports_1 = require("../../../utils/imports");
5
+ const evict_success_1 = require("../evict-success");
6
+ const select_1 = require("../select");
7
+ const resource_params_1 = require("./resource-params");
8
+ const ingest_error_1 = require("./ingest-error");
9
+ const ingest_success_1 = require("./ingest-success");
10
+ const key_builder_1 = require("./key-builder");
11
+ const response_cache_keys_1 = require("./response-cache-keys");
12
+ const create_resource_request_1 = require("./create-resource-request");
13
+ function generateGraphQLResource(typescriptFilePath, compilerBaseOutputDir, resource, modelInfo, plugin) {
14
+ const importContext = (0, imports_1.createImportContext)(typescriptFilePath, compilerBaseOutputDir, plugin);
15
+ const code = [
16
+ (0, resource_params_1.generateGraphQLResourceParams)(importContext),
17
+ (0, select_1.generateSelect)(importContext, resource, modelInfo),
18
+ (0, key_builder_1.generateGraphQLKeyBuilder)(importContext, resource),
19
+ (0, response_cache_keys_1.generateGraphQLGetResponseCacheKeys)(importContext, resource),
20
+ (0, ingest_success_1.generateGraphQLIngestSuccess)(importContext, resource),
21
+ (0, ingest_error_1.generateGraphQLIngestError)(importContext, resource, modelInfo),
22
+ (0, evict_success_1.generateEvictSuccess)(importContext, resource),
23
+ (0, create_resource_request_1.generateGraphQLCreateResourceRequest)(importContext, resource),
24
+ ]
25
+ .filter(Boolean)
26
+ .join('\n\n');
27
+ return (0, imports_1.resolveImports)(code);
28
+ }
29
+ exports.generateGraphQLResource = generateGraphQLResource;
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/resource/graphql/index.ts"],"names":[],"mappings":";;;AACA,oDAA6E;AAC7E,oDAAwD;AACxD,sCAA2C;AAI3C,uDAAkE;AAClE,iDAA4D;AAC5D,qDAAgE;AAChE,+CAA0D;AAC1D,+DAA4E;AAC5E,uEAAiF;AAEjF,SAAgB,uBAAuB,CACnC,kBAAmC,EACnC,qBAAsC,EACtC,QAAyB,EACzB,SAAoB,EACpB,MAAuB;IAEvB,MAAM,aAAa,GAAG,IAAA,6BAAmB,EAAC,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,CAAC,CAAC;IAE7F,MAAM,IAAI,GAAG;QACT,IAAA,+CAA6B,EAAC,aAAa,CAAC;QAC5C,IAAA,uBAAc,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAClD,IAAA,uCAAyB,EAAC,aAAa,EAAE,QAAQ,CAAC;QAClD,IAAA,yDAAmC,EAAC,aAAa,EAAE,QAAQ,CAAC;QAC5D,IAAA,6CAA4B,EAAC,aAAa,EAAE,QAAQ,CAAC;QACrD,IAAA,yCAA0B,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC9D,IAAA,oCAAoB,EAAC,aAAa,EAAE,QAAQ,CAAC;QAC7C,IAAA,8DAAoC,EAAC,aAAa,EAAE,QAAQ,CAAC;KAChE;SACI,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC,CAAC;IAElB,OAAO,IAAA,wBAAc,EAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAvBD,0DAuBC"}
@@ -0,0 +1,5 @@
1
+ import type { ModelInfo } from '../../../intermediate/model-info';
2
+ import type { ImportContext } from '../../../utils/imports';
3
+ import type { GraphQLResource } from '../../../intermediate/resource';
4
+ export declare const RESOURCE_INGEST_ERROR_IDENTIFIER = "ingestError";
5
+ export declare function generateGraphQLIngestError(importContext: ImportContext, resource: GraphQLResource, modelInfo: ModelInfo): string;
@@ -0,0 +1,63 @@
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.generateGraphQLIngestError = exports.RESOURCE_INGEST_ERROR_IDENTIFIER = void 0;
7
+ const deindent_1 = __importDefault(require("../../../utils/deindent"));
8
+ const constants_1 = require("../../adapter/constants");
9
+ const constants_2 = require("../../shared/constants");
10
+ const key_builder_1 = require("../key-builder");
11
+ const resource_params_1 = require("./resource-params");
12
+ const RESOURCE_PARAMS_IDENTIFIER = 'params';
13
+ const SNAPSHOT_REFRESH_IDENTIFIER = 'snapshotRefresh';
14
+ const KEY_IDENTIFIER = 'key';
15
+ const ERROR_SNAPSHOT_IDENTIFIER = 'errorSnapshot';
16
+ const RESPONSE_IDENTIFIER = 'error';
17
+ exports.RESOURCE_INGEST_ERROR_IDENTIFIER = 'ingestError';
18
+ function getIngestCode(importContext, shapeId, modelInfo) {
19
+ const shapeTTL = modelInfo.shapeTtls[shapeId];
20
+ if (shapeTTL) {
21
+ const { importAdapterUtil, importRamlArtifact } = importContext;
22
+ const ttlIdentifier = importRamlArtifact(shapeId, 'TTL');
23
+ const KEY_PREFIX = importAdapterUtil('keyPrefix');
24
+ const REPRESENTATION_NAME = importRamlArtifact(shapeId, 'RepresentationType');
25
+ return (0, deindent_1.default) `
26
+ const storeMetadataParams = {
27
+ ttl: ${ttlIdentifier},
28
+ namespace: ${KEY_PREFIX},
29
+ representationName: ${REPRESENTATION_NAME}
30
+ };
31
+ ${constants_2.LUVIO_IDENTIFIER}.storeIngestError(${KEY_IDENTIFIER}, ${ERROR_SNAPSHOT_IDENTIFIER}, storeMetadataParams);
32
+ `;
33
+ }
34
+ return (0, deindent_1.default) `
35
+ ${constants_2.LUVIO_IDENTIFIER}.storeIngestError(${KEY_IDENTIFIER}, ${ERROR_SNAPSHOT_IDENTIFIER});
36
+ `;
37
+ }
38
+ // Basically a copy of the rest code minus the part where we check the HTTP verb.
39
+ // Seems like we may want to do something different, because GraphQL endpoints should always
40
+ // return 200s, even when returning errors. https://spec.graphql.org/June2018/#sec-Errors
41
+ function generateGraphQLIngestError(importContext, resource, modelInfo) {
42
+ const { importRamlArtifact } = importContext;
43
+ const { id, returnShape } = resource;
44
+ if (returnShape === undefined) {
45
+ //TODO: cleanup in W-11069204
46
+ return '';
47
+ }
48
+ const returnShapeId = returnShape.id;
49
+ const returnShapeName = returnShape.name;
50
+ const resourceTypeIdentifier = importRamlArtifact(returnShapeId, returnShapeName);
51
+ const resourceRequestConfig = importRamlArtifact(id, resource_params_1.RESOURCE_PARAMS_INTERFACE);
52
+ const keyBuilder = importRamlArtifact(id, key_builder_1.RESOURCE_KEY_BUILDER_IDENTIFIER);
53
+ return (0, deindent_1.default) `
54
+ export function ${exports.RESOURCE_INGEST_ERROR_IDENTIFIER}(${constants_2.LUVIO_IDENTIFIER}: ${constants_2.LUVIO_IMPORT}, ${RESOURCE_PARAMS_IDENTIFIER}: ${resourceRequestConfig}, ${RESPONSE_IDENTIFIER}: ${constants_1.ADAPTER_FETCH_RESPONSE_INTERFACE_IDENTIFIER}<unknown>, ${SNAPSHOT_REFRESH_IDENTIFIER}?: ${constants_1.ADAPTER_SNAPSHOT_REFRESH_INTERFACE}<${resourceTypeIdentifier}>): ${constants_1.ADAPTER_ERROR_SNAPSHOT_IMPORT} {
55
+ const ${KEY_IDENTIFIER} = ${keyBuilder}(${RESOURCE_PARAMS_IDENTIFIER});
56
+ const ${ERROR_SNAPSHOT_IDENTIFIER} = ${constants_2.LUVIO_IDENTIFIER}.errorSnapshot(${RESPONSE_IDENTIFIER}, ${SNAPSHOT_REFRESH_IDENTIFIER});
57
+ ${getIngestCode(importContext, returnShapeId, modelInfo)}
58
+ return ${ERROR_SNAPSHOT_IDENTIFIER};
59
+ }
60
+ `;
61
+ }
62
+ exports.generateGraphQLIngestError = generateGraphQLIngestError;
63
+ //# sourceMappingURL=ingest-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ingest-error.js","sourceRoot":"","sources":["../../../../src/codegen/resource/graphql/ingest-error.ts"],"names":[],"mappings":";;;;;;AACA,uEAA+C;AAC/C,uDAIiC;AACjC,sDAAwE;AACxE,gDAAiE;AACjE,uDAA8D;AAI9D,MAAM,0BAA0B,GAAG,QAAQ,CAAC;AAC5C,MAAM,2BAA2B,GAAG,iBAAiB,CAAC;AACtD,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,yBAAyB,GAAG,eAAe,CAAC;AAClD,MAAM,mBAAmB,GAAG,OAAO,CAAC;AAEvB,QAAA,gCAAgC,GAAG,aAAa,CAAC;AAE9D,SAAS,aAAa,CAAC,aAA4B,EAAE,OAAe,EAAE,SAAoB;IACtF,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,QAAQ,EAAE;QACV,MAAM,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;QAChE,MAAM,aAAa,GAAG,kBAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAClD,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAE9E,OAAO,IAAA,kBAAQ,EAAA;;uBAEA,aAAa;6BACP,UAAU;sCACD,mBAAmB;;cAE3C,4BAAgB,qBAAqB,cAAc,KAAK,yBAAyB;SACtF,CAAC;KACL;IAED,OAAO,IAAA,kBAAQ,EAAA;UACT,4BAAgB,qBAAqB,cAAc,KAAK,yBAAyB;KACtF,CAAC;AACN,CAAC;AAED,iFAAiF;AACjF,4FAA4F;AAC5F,yFAAyF;AACzF,SAAgB,0BAA0B,CACtC,aAA4B,EAC5B,QAAyB,EACzB,SAAoB;IAEpB,MAAM,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;IAC7C,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IAErC,IAAI,WAAW,KAAK,SAAS,EAAE;QAC3B,6BAA6B;QAC7B,OAAO,EAAE,CAAC;KACb;IAED,MAAM,aAAa,GAAG,WAAW,CAAC,EAAE,CAAC;IACrC,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,CAAC;IACzC,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IAClF,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,EAAE,EAAE,2CAAyB,CAAC,CAAC;IAChF,MAAM,UAAU,GAAG,kBAAkB,CAAC,EAAE,EAAE,6CAA+B,CAAC,CAAC;IAE3E,OAAO,IAAA,kBAAQ,EAAA;0BACO,wCAAgC,IAAI,4BAAgB,KAAK,wBAAY,KAAK,0BAA0B,KAAK,qBAAqB,KAAK,mBAAmB,KAAK,uDAA2C,cAAc,2BAA2B,MAAM,8CAAkC,IAAI,sBAAsB,OAAO,yCAA6B;oBAC3V,cAAc,MAAM,UAAU,IAAI,0BAA0B;oBAC5D,yBAAyB,MAAM,4BAAgB,kBAAkB,mBAAmB,KAAK,2BAA2B;cAC1H,aAAa,CAAC,aAAa,EAAE,aAAa,EAAE,SAAS,CAAC;qBAC/C,yBAAyB;;KAEzC,CAAC;AACN,CAAC;AA3BD,gEA2BC"}
@@ -0,0 +1,4 @@
1
+ import type { GraphQLResource } from '../../../intermediate/resource';
2
+ import type { ImportContext } from '../../../utils/imports';
3
+ export declare const RESOURCE_INGEST_SUCCESS_IDENTIFIER = "ingestSuccess";
4
+ export declare function generateGraphQLIngestSuccess(importContext: ImportContext, resource: GraphQLResource): string;
@@ -0,0 +1,56 @@
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.generateGraphQLIngestSuccess = exports.RESOURCE_INGEST_SUCCESS_IDENTIFIER = void 0;
7
+ const deindent_1 = __importDefault(require("../../../utils/deindent"));
8
+ const constants_1 = require("../../adapter/constants");
9
+ const constants_2 = require("../../shared/constants");
10
+ const shape_ingest_1 = require("../../shape/shape-ingest");
11
+ const key_builder_1 = require("../key-builder");
12
+ const resource_params_1 = require("./resource-params");
13
+ const constants_3 = require("../constants");
14
+ exports.RESOURCE_INGEST_SUCCESS_IDENTIFIER = 'ingestSuccess';
15
+ const RESPONSE_IDENTIFIER = 'response';
16
+ const KEY_IDENTIFIER = 'key';
17
+ const SNAPSHOT_IDENTIFIER = 'snapshot';
18
+ function generateGraphQLIngestSuccess(importContext, resource) {
19
+ const { importRamlArtifact } = importContext;
20
+ const { id: resourceId, returnShape } = resource;
21
+ if (returnShape === undefined) {
22
+ //TODO: cleanup in W-11069204
23
+ return '';
24
+ }
25
+ const { name: returnShapeName, id: returnShapeId } = returnShape;
26
+ const ingestIdentifier = importRamlArtifact(returnShapeId, shape_ingest_1.SHAPE_INGEST_IDENTIFIER);
27
+ const keyStatement = `${importRamlArtifact(resourceId, key_builder_1.RESOURCE_KEY_BUILDER_IDENTIFIER)}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER})`;
28
+ const resourceTypeIdentifier = importRamlArtifact(returnShapeId, returnShapeName);
29
+ const snapshotRefreshArgument = `, ${constants_1.ADAPTER_SNAPSHOT_REFRESH_IDENTIFIER}?: ${constants_1.ADAPTER_SNAPSHOT_REFRESH_INTERFACE}<${resourceTypeIdentifier}>`;
30
+ const snapshotRefreshIdentifier = ', ' + constants_1.ADAPTER_SNAPSHOT_REFRESH_IDENTIFIER;
31
+ const resourceRequestConfig = importRamlArtifact(resourceId, resource_params_1.RESOURCE_PARAMS_INTERFACE);
32
+ const select = importRamlArtifact(resourceId, constants_3.RESOURCE_SELECT_IDENTIFIER);
33
+ return (0, deindent_1.default) `
34
+ export function ${exports.RESOURCE_INGEST_SUCCESS_IDENTIFIER}(${constants_2.LUVIO_IDENTIFIER}: ${constants_2.LUVIO_IMPORT}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}: ${resourceRequestConfig}, ${RESPONSE_IDENTIFIER}: ${constants_1.ADAPTER_RESOURCE_RESPONSE_INTERFACE_IDENTIFIER}<${resourceTypeIdentifier}>${snapshotRefreshArgument}): ${constants_1.ADAPTER_FULFILLED_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, {}> | ${constants_1.ADAPTER_STALE_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, {}> | ${constants_1.ADAPTER_PENDING_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, any> {
35
+ const { ${constants_1.ADAPTER_RESPONSE_BODY_IDENTIFIER} } = ${RESPONSE_IDENTIFIER};
36
+ const ${KEY_IDENTIFIER} = ${keyStatement};
37
+ const { query, variables } = ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}.body;
38
+ ${constants_2.LUVIO_IDENTIFIER}.storeIngest<${resourceTypeIdentifier}>(${KEY_IDENTIFIER}, ${ingestIdentifier}(query, variables), ${constants_1.ADAPTER_RESPONSE_BODY_IDENTIFIER});
39
+ const ${SNAPSHOT_IDENTIFIER} = ${constants_2.LUVIO_IDENTIFIER}.storeLookup<${resourceTypeIdentifier}>({
40
+ recordId: ${KEY_IDENTIFIER},
41
+ node: ${select}(${constants_2.LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}),
42
+ variables: {},
43
+ }${snapshotRefreshIdentifier});
44
+
45
+ if (process.env.NODE_ENV !== 'production') {
46
+ if(${SNAPSHOT_IDENTIFIER}.state !== 'Fulfilled') {
47
+ throw new Error('Invalid network response. Expected resource response to result in Fulfilled snapshot');
48
+ }
49
+ }
50
+
51
+ return ${SNAPSHOT_IDENTIFIER} as (${constants_1.ADAPTER_FULFILLED_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, {}> | ${constants_1.ADAPTER_STALE_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, {}>);
52
+ }
53
+ `;
54
+ }
55
+ exports.generateGraphQLIngestSuccess = generateGraphQLIngestSuccess;
56
+ //# sourceMappingURL=ingest-success.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ingest-success.js","sourceRoot":"","sources":["../../../../src/codegen/resource/graphql/ingest-success.ts"],"names":[],"mappings":";;;;;;AACA,uEAA+C;AAE/C,uDASiC;AACjC,sDAAwE;AACxE,2DAAmE;AACnE,gDAAiE;AACjE,uDAA8D;AAC9D,4CAA0D;AAE7C,QAAA,kCAAkC,GAAG,eAAe,CAAC;AAClE,MAAM,mBAAmB,GAAG,UAAU,CAAC;AACvC,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,mBAAmB,GAAG,UAAU,CAAC;AAEvC,SAAgB,4BAA4B,CACxC,aAA4B,EAC5B,QAAyB;IAEzB,MAAM,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;IAC7C,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IACjD,IAAI,WAAW,KAAK,SAAS,EAAE;QAC3B,6BAA6B;QAC7B,OAAO,EAAE,CAAC;KACb;IAED,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,WAAW,CAAC;IACjE,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,aAAa,EAAE,sCAAuB,CAAC,CAAC;IAEpF,MAAM,YAAY,GAAG,GAAG,kBAAkB,CACtC,UAAU,EACV,6CAA+B,CAClC,IAAI,8CAAkC,GAAG,CAAC;IAE3C,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IAElF,MAAM,uBAAuB,GAAG,KAAK,+CAAmC,MAAM,8CAAkC,IAAI,sBAAsB,GAAG,CAAC;IAC9I,MAAM,yBAAyB,GAAG,IAAI,GAAG,+CAAmC,CAAC;IAC7E,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,UAAU,EAAE,2CAAyB,CAAC,CAAC;IACxF,MAAM,MAAM,GAAG,kBAAkB,CAAC,UAAU,EAAE,sCAA0B,CAAC,CAAC;IAE1E,OAAO,IAAA,kBAAQ,EAAA;0BACO,0CAAkC,IAAI,4BAAgB,KAAK,wBAAY,KAAK,8CAAkC,KAAK,qBAAqB,KAAK,mBAAmB,KAAK,0DAA8C,IAAI,sBAAsB,IAAI,uBAAuB,MAAM,6CAAiC,IAAI,sBAAsB,WAAW,yCAA6B,IAAI,sBAAsB,WAAW,2CAA+B,IAAI,sBAAsB;sBACnd,4CAAgC,QAAQ,mBAAmB;oBAC7D,cAAc,MAAM,YAAY;2CACT,8CAAkC;cAC/D,4BAAgB,gBAAgB,sBAAsB,KAAK,cAAc,KAAK,gBAAgB,uBAAuB,4CAAgC;oBAC/I,mBAAmB,MAAM,4BAAgB,gBAAgB,sBAAsB;4BACvE,cAAc;wBAClB,MAAM,IAAI,4BAAgB,KAAK,8CAAkC;;eAE1E,yBAAyB;;;qBAGnB,mBAAmB;;;;;qBAKnB,mBAAmB,QAAQ,6CAAiC,IAAI,sBAAsB,WAAW,yCAA6B,IAAI,sBAAsB;;KAExK,CAAC;AACN,CAAC;AA/CD,oEA+CC"}