@aws-amplify/graphql-api-construct 1.4.3 → 1.5.1-alpha.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (229) hide show
  1. package/.jsii +202 -201
  2. package/API.md +7 -7
  3. package/CHANGELOG.md +12 -0
  4. package/README.md +210 -20
  5. package/lib/amplify-dynamodb-table-wrapper.js +1 -1
  6. package/lib/amplify-graphql-api.d.ts +0 -7
  7. package/lib/amplify-graphql-api.js +18 -76
  8. package/lib/amplify-graphql-definition.d.ts +1 -13
  9. package/lib/amplify-graphql-definition.js +27 -16
  10. package/lib/index.d.ts +1 -1
  11. package/lib/index.js +2 -2
  12. package/lib/internal/data-source-config.d.ts +14 -20
  13. package/lib/internal/data-source-config.js +110 -38
  14. package/lib/internal/model-type-name.d.ts +2 -2
  15. package/lib/internal/model-type-name.js +4 -4
  16. package/lib/{model-datasource-strategy.d.ts → model-datasource-strategy-types.d.ts} +17 -11
  17. package/lib/model-datasource-strategy-types.js +10 -0
  18. package/lib/sql-model-datasource-strategy.d.ts +1 -1
  19. package/lib/sql-model-datasource-strategy.js +4 -4
  20. package/lib/types.d.ts +1 -9
  21. package/lib/types.js +1 -1
  22. package/node_modules/@aws-amplify/graphql-auth-transformer/CHANGELOG.md +6 -0
  23. package/node_modules/@aws-amplify/graphql-auth-transformer/lib/graphql-auth-transformer.d.ts.map +1 -1
  24. package/node_modules/@aws-amplify/graphql-auth-transformer/lib/graphql-auth-transformer.js +6 -10
  25. package/node_modules/@aws-amplify/graphql-auth-transformer/lib/graphql-auth-transformer.js.map +1 -1
  26. package/node_modules/@aws-amplify/graphql-auth-transformer/lib/utils/validations.js +1 -1
  27. package/node_modules/@aws-amplify/graphql-auth-transformer/package.json +16 -12
  28. package/node_modules/@aws-amplify/graphql-default-value-transformer/CHANGELOG.md +6 -0
  29. package/node_modules/@aws-amplify/graphql-default-value-transformer/lib/graphql-default-value-transformer.d.ts.map +1 -1
  30. package/node_modules/@aws-amplify/graphql-default-value-transformer/lib/graphql-default-value-transformer.js +2 -7
  31. package/node_modules/@aws-amplify/graphql-default-value-transformer/lib/graphql-default-value-transformer.js.map +1 -1
  32. package/node_modules/@aws-amplify/graphql-default-value-transformer/package.json +13 -9
  33. package/node_modules/@aws-amplify/graphql-function-transformer/CHANGELOG.md +6 -0
  34. package/node_modules/@aws-amplify/graphql-function-transformer/lib/graphql-function-transformer.d.ts.map +1 -1
  35. package/node_modules/@aws-amplify/graphql-function-transformer/lib/graphql-function-transformer.js +7 -0
  36. package/node_modules/@aws-amplify/graphql-function-transformer/lib/graphql-function-transformer.js.map +1 -1
  37. package/node_modules/@aws-amplify/graphql-function-transformer/package.json +11 -7
  38. package/node_modules/@aws-amplify/graphql-http-transformer/CHANGELOG.md +4 -0
  39. package/node_modules/@aws-amplify/graphql-http-transformer/package.json +11 -7
  40. package/node_modules/@aws-amplify/graphql-index-transformer/CHANGELOG.md +6 -0
  41. package/node_modules/@aws-amplify/graphql-index-transformer/lib/graphql-primary-key-transformer.d.ts.map +1 -1
  42. package/node_modules/@aws-amplify/graphql-index-transformer/lib/graphql-primary-key-transformer.js +4 -4
  43. package/node_modules/@aws-amplify/graphql-index-transformer/lib/graphql-primary-key-transformer.js.map +1 -1
  44. package/node_modules/@aws-amplify/graphql-index-transformer/lib/resolvers/resolvers.d.ts +3 -5
  45. package/node_modules/@aws-amplify/graphql-index-transformer/lib/resolvers/resolvers.d.ts.map +1 -1
  46. package/node_modules/@aws-amplify/graphql-index-transformer/lib/resolvers/resolvers.js +12 -34
  47. package/node_modules/@aws-amplify/graphql-index-transformer/lib/resolvers/resolvers.js.map +1 -1
  48. package/node_modules/@aws-amplify/graphql-index-transformer/package.json +13 -9
  49. package/node_modules/@aws-amplify/graphql-maps-to-transformer/CHANGELOG.md +6 -0
  50. package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/assets/mapping-lambda.zip +0 -0
  51. package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/graphql-maps-to-transformer.d.ts.map +1 -1
  52. package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/graphql-maps-to-transformer.js +3 -4
  53. package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/graphql-maps-to-transformer.js.map +1 -1
  54. package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/graphql-refers-to-transformer.d.ts.map +1 -1
  55. package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/graphql-refers-to-transformer.js +3 -3
  56. package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/graphql-refers-to-transformer.js.map +1 -1
  57. package/node_modules/@aws-amplify/graphql-maps-to-transformer/package.json +16 -12
  58. package/node_modules/@aws-amplify/graphql-model-transformer/API.md +2 -2
  59. package/node_modules/@aws-amplify/graphql-model-transformer/CHANGELOG.md +7 -0
  60. package/node_modules/@aws-amplify/graphql-model-transformer/lib/graphql-model-transformer.d.ts +1 -3
  61. package/node_modules/@aws-amplify/graphql-model-transformer/lib/graphql-model-transformer.d.ts.map +1 -1
  62. package/node_modules/@aws-amplify/graphql-model-transformer/lib/graphql-model-transformer.js +61 -68
  63. package/node_modules/@aws-amplify/graphql-model-transformer/lib/graphql-model-transformer.js.map +1 -1
  64. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-lambda.zip +0 -0
  65. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-notification-lambda.zip +0 -0
  66. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-patching-lambda.zip +0 -0
  67. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resolvers/rds/resolver.d.ts +8 -8
  68. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resolvers/rds/resolver.d.ts.map +1 -1
  69. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resolvers/rds/resolver.js +32 -36
  70. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resolvers/rds/resolver.js.map +1 -1
  71. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/rds-model-resource-generator.d.ts +3 -2
  72. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/rds-model-resource-generator.d.ts.map +1 -1
  73. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/rds-model-resource-generator.js +70 -34
  74. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/rds-model-resource-generator.js.map +1 -1
  75. package/node_modules/@aws-amplify/graphql-model-transformer/package.json +15 -10
  76. package/node_modules/@aws-amplify/graphql-predictions-transformer/CHANGELOG.md +4 -0
  77. package/node_modules/@aws-amplify/graphql-predictions-transformer/lib/predictionsLambdaFunction.zip +0 -0
  78. package/node_modules/@aws-amplify/graphql-predictions-transformer/package.json +11 -7
  79. package/node_modules/@aws-amplify/graphql-relational-transformer/API.md +2 -2
  80. package/node_modules/@aws-amplify/graphql-relational-transformer/CHANGELOG.md +6 -0
  81. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-belongs-to-transformer.d.ts.map +1 -1
  82. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-belongs-to-transformer.js +14 -7
  83. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-belongs-to-transformer.js.map +1 -1
  84. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-has-many-transformer.d.ts.map +1 -1
  85. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-has-many-transformer.js +6 -6
  86. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-has-many-transformer.js.map +1 -1
  87. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-has-one-transformer.js +6 -6
  88. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-has-one-transformer.js.map +1 -1
  89. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-many-to-many-transformer.d.ts.map +1 -1
  90. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-many-to-many-transformer.js +8 -1
  91. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-many-to-many-transformer.js.map +1 -1
  92. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/resolver/ddb-generator.d.ts.map +1 -1
  93. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/resolver/ddb-generator.js +5 -3
  94. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/resolver/ddb-generator.js.map +1 -1
  95. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/resolver/generator-factory.d.ts +2 -2
  96. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/resolver/generator-factory.d.ts.map +1 -1
  97. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/resolver/generator-factory.js.map +1 -1
  98. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/resolver/rds-generator.d.ts.map +1 -1
  99. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/resolver/rds-generator.js +18 -6
  100. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/resolver/rds-generator.js.map +1 -1
  101. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/utils.d.ts +18 -18
  102. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/utils.d.ts.map +1 -1
  103. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/utils.js +54 -54
  104. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/utils.js.map +1 -1
  105. package/node_modules/@aws-amplify/graphql-relational-transformer/package.json +14 -10
  106. package/node_modules/@aws-amplify/graphql-searchable-transformer/CHANGELOG.md +6 -0
  107. package/node_modules/@aws-amplify/graphql-searchable-transformer/lib/graphql-searchable-transformer.js +1 -1
  108. package/node_modules/@aws-amplify/graphql-searchable-transformer/lib/streaming-lambda.zip +0 -0
  109. package/node_modules/@aws-amplify/graphql-searchable-transformer/package.json +12 -8
  110. package/node_modules/@aws-amplify/graphql-sql-transformer/CHANGELOG.md +6 -0
  111. package/node_modules/@aws-amplify/graphql-sql-transformer/lib/graphql-sql-transformer.d.ts.map +1 -1
  112. package/node_modules/@aws-amplify/graphql-sql-transformer/lib/graphql-sql-transformer.js +31 -25
  113. package/node_modules/@aws-amplify/graphql-sql-transformer/lib/graphql-sql-transformer.js.map +1 -1
  114. package/node_modules/@aws-amplify/graphql-sql-transformer/package.json +12 -8
  115. package/node_modules/@aws-amplify/graphql-transformer/API.md +3 -17
  116. package/node_modules/@aws-amplify/graphql-transformer/CHANGELOG.md +4 -0
  117. package/node_modules/@aws-amplify/graphql-transformer/lib/graphql-transformer.d.ts +4 -14
  118. package/node_modules/@aws-amplify/graphql-transformer/lib/graphql-transformer.d.ts.map +1 -1
  119. package/node_modules/@aws-amplify/graphql-transformer/lib/graphql-transformer.js +8 -15
  120. package/node_modules/@aws-amplify/graphql-transformer/lib/graphql-transformer.js.map +1 -1
  121. package/node_modules/@aws-amplify/graphql-transformer/package.json +20 -16
  122. package/node_modules/@aws-amplify/graphql-transformer/src/graphql-transformer.ts +30 -57
  123. package/node_modules/@aws-amplify/graphql-transformer-core/API.md +97 -30
  124. package/node_modules/@aws-amplify/graphql-transformer-core/CHANGELOG.md +7 -0
  125. package/node_modules/@aws-amplify/graphql-transformer-core/lib/index.d.ts +3 -3
  126. package/node_modules/@aws-amplify/graphql-transformer-core/lib/index.d.ts.map +1 -1
  127. package/node_modules/@aws-amplify/graphql-transformer-core/lib/index.js +22 -10
  128. package/node_modules/@aws-amplify/graphql-transformer-core/lib/index.js.map +1 -1
  129. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/index.d.ts +1 -1
  130. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/index.d.ts.map +1 -1
  131. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/index.js +4 -2
  132. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/index.js.map +1 -1
  133. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/transform.d.ts +6 -12
  134. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/transform.d.ts.map +1 -1
  135. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/transform.js +4 -11
  136. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/transform.js.map +1 -1
  137. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/types.d.ts +0 -9
  138. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/types.d.ts.map +1 -1
  139. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/utils.d.ts +12 -10
  140. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/utils.d.ts.map +1 -1
  141. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/utils.js +94 -39
  142. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformation/utils.js.map +1 -1
  143. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformer-context/index.d.ts +10 -22
  144. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformer-context/index.d.ts.map +1 -1
  145. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformer-context/index.js +3 -7
  146. package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformer-context/index.js.map +1 -1
  147. package/node_modules/@aws-amplify/graphql-transformer-core/lib/types/import-appsync-api-types.d.ts +1 -4
  148. package/node_modules/@aws-amplify/graphql-transformer-core/lib/types/import-appsync-api-types.d.ts.map +1 -1
  149. package/node_modules/@aws-amplify/graphql-transformer-core/lib/types/import-appsync-api-types.js +1 -4
  150. package/node_modules/@aws-amplify/graphql-transformer-core/lib/types/import-appsync-api-types.js.map +1 -1
  151. package/node_modules/@aws-amplify/graphql-transformer-core/lib/types/index.d.ts +2 -1
  152. package/node_modules/@aws-amplify/graphql-transformer-core/lib/types/index.d.ts.map +1 -1
  153. package/node_modules/@aws-amplify/graphql-transformer-core/lib/types/index.js +16 -4
  154. package/node_modules/@aws-amplify/graphql-transformer-core/lib/types/index.js.map +1 -1
  155. package/node_modules/@aws-amplify/graphql-transformer-core/lib/types/model-datasource-strategies.d.ts +7 -0
  156. package/node_modules/@aws-amplify/graphql-transformer-core/lib/types/model-datasource-strategies.d.ts.map +1 -0
  157. package/node_modules/@aws-amplify/graphql-transformer-core/lib/types/model-datasource-strategies.js +15 -0
  158. package/node_modules/@aws-amplify/graphql-transformer-core/lib/types/model-datasource-strategies.js.map +1 -0
  159. package/node_modules/@aws-amplify/graphql-transformer-core/lib/types/types.d.ts.map +1 -1
  160. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/graphql-utils.d.ts +16 -2
  161. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/graphql-utils.d.ts.map +1 -1
  162. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/graphql-utils.js +21 -5
  163. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/graphql-utils.js.map +1 -1
  164. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/index.d.ts +3 -4
  165. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/index.d.ts.map +1 -1
  166. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/index.js +5 -12
  167. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/index.js.map +1 -1
  168. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/model-datasource-strategy-utils.d.ts +11 -8
  169. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/model-datasource-strategy-utils.d.ts.map +1 -1
  170. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/model-datasource-strategy-utils.js +64 -52
  171. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/model-datasource-strategy-utils.js.map +1 -1
  172. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/rds-util.d.ts +0 -10
  173. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/rds-util.d.ts.map +1 -1
  174. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/rds-util.js +1 -58
  175. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/rds-util.js.map +1 -1
  176. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/resource-name.d.ts +22 -0
  177. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/resource-name.d.ts.map +1 -1
  178. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/resource-name.js +28 -1
  179. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/resource-name.js.map +1 -1
  180. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/schema-utils.d.ts +2 -2
  181. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/schema-utils.d.ts.map +1 -1
  182. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/schema-utils.js +7 -6
  183. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/schema-utils.js.map +1 -1
  184. package/node_modules/@aws-amplify/graphql-transformer-core/package.json +9 -5
  185. package/node_modules/@aws-amplify/graphql-transformer-interfaces/API.md +32 -68
  186. package/node_modules/@aws-amplify/graphql-transformer-interfaces/CHANGELOG.md +4 -0
  187. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/model-datasource/types.d.ts +11 -7
  188. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/model-datasource/types.d.ts.map +1 -1
  189. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/transformer-context/index.d.ts +1 -1
  190. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/transformer-context/index.d.ts.map +1 -1
  191. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/transformer-context/index.js +1 -3
  192. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/transformer-context/index.js.map +1 -1
  193. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/transformer-context/transformer-context-provider.d.ts +11 -18
  194. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/transformer-context/transformer-context-provider.d.ts.map +1 -1
  195. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/transformer-context/transformer-datasource-provider.d.ts +0 -15
  196. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/transformer-context/transformer-datasource-provider.d.ts.map +1 -1
  197. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/transformer-context/transformer-datasource-provider.js +1 -10
  198. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/transformer-context/transformer-datasource-provider.js.map +1 -1
  199. package/node_modules/@aws-amplify/graphql-transformer-interfaces/package.json +7 -3
  200. package/node_modules/@aws-amplify/graphql-transformer-interfaces/src/model-datasource/types.ts +50 -18
  201. package/node_modules/@aws-amplify/graphql-transformer-interfaces/src/transformer-context/index.ts +0 -6
  202. package/node_modules/@aws-amplify/graphql-transformer-interfaces/src/transformer-context/transformer-context-provider.ts +14 -21
  203. package/node_modules/@aws-amplify/graphql-transformer-interfaces/src/transformer-context/transformer-datasource-provider.ts +0 -43
  204. package/node_modules/@aws-amplify/graphql-transformer-interfaces/tsconfig.tsbuildinfo +1 -1
  205. package/node_modules/graphql-mapping-template/CHANGELOG.md +4 -0
  206. package/node_modules/graphql-mapping-template/LICENSE +201 -0
  207. package/node_modules/graphql-mapping-template/package.json +8 -3
  208. package/node_modules/graphql-transformer-common/API.md +0 -15
  209. package/node_modules/graphql-transformer-common/CHANGELOG.md +6 -0
  210. package/node_modules/graphql-transformer-common/LICENSE +201 -0
  211. package/node_modules/graphql-transformer-common/lib/ResourceConstants.d.ts +0 -15
  212. package/node_modules/graphql-transformer-common/lib/ResourceConstants.d.ts.map +1 -1
  213. package/node_modules/graphql-transformer-common/lib/ResourceConstants.js +0 -15
  214. package/node_modules/graphql-transformer-common/lib/ResourceConstants.js.map +1 -1
  215. package/node_modules/graphql-transformer-common/package.json +8 -3
  216. package/package.json +24 -19
  217. package/src/amplify-graphql-api.ts +19 -91
  218. package/src/amplify-graphql-definition.ts +41 -17
  219. package/src/index.ts +1 -1
  220. package/src/internal/data-source-config.ts +146 -52
  221. package/src/internal/model-type-name.ts +3 -2
  222. package/src/{model-datasource-strategy.ts → model-datasource-strategy-types.ts} +20 -12
  223. package/src/sql-model-datasource-strategy.ts +3 -3
  224. package/src/types.ts +1 -9
  225. package/lib/model-datasource-strategy.js +0 -10
  226. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/provision-strategy-utils.d.ts +0 -3
  227. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/provision-strategy-utils.d.ts.map +0 -1
  228. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/provision-strategy-utils.js +0 -15
  229. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/provision-strategy-utils.js.map +0 -1
@@ -40,21 +40,20 @@ const validateChildReferencesFields = (config, ctx) => {
40
40
  }
41
41
  };
42
42
  exports.validateChildReferencesFields = validateChildReferencesFields;
43
- function getRelatedTypeIndex(config, ctx, indexName) {
43
+ const getRelatedTypeIndex = (config, ctx, indexName) => {
44
44
  const { directiveName, field, fieldNodes } = config;
45
45
  const relatedType = ctx.output.getType(config.relatedType.name.value);
46
46
  const fieldMap = new Map();
47
47
  let partitionFieldName;
48
- let partitionField;
49
48
  const sortFieldNames = [];
50
49
  const sortFields = [];
51
- for (const field of relatedType.fields) {
52
- fieldMap.set(field.name.value, field);
53
- for (const directive of field.directives) {
54
- const directiveName = directive.name.value;
50
+ for (const relatedTypeField of relatedType.fields) {
51
+ fieldMap.set(relatedTypeField.name.value, relatedTypeField);
52
+ for (const directive of relatedTypeField.directives) {
53
+ const relatedDirectiveName = directive.name.value;
55
54
  const name = getIndexName(directive);
56
- if ((!indexName && directiveName === 'primaryKey') || (indexName && indexName === name && directiveName === 'index')) {
57
- partitionFieldName = field.name.value;
55
+ if ((!indexName && relatedDirectiveName === 'primaryKey') || (indexName && indexName === name && relatedDirectiveName === 'index')) {
56
+ partitionFieldName = relatedTypeField.name.value;
58
57
  for (const argument of directive.arguments) {
59
58
  if (argument.name.value === 'sortKeyFields') {
60
59
  if (argument.value.kind === graphql_1.Kind.STRING) {
@@ -77,7 +76,7 @@ function getRelatedTypeIndex(config, ctx, indexName) {
77
76
  }
78
77
  partitionFieldName = 'id';
79
78
  }
80
- partitionField = fieldMap.get(partitionFieldName);
79
+ const partitionField = fieldMap.get(partitionFieldName);
81
80
  if (!partitionField) {
82
81
  throw new Error(`Expected partition field ${partitionFieldName} to be found in map.`);
83
82
  }
@@ -106,9 +105,9 @@ function getRelatedTypeIndex(config, ctx, indexName) {
106
105
  }
107
106
  }
108
107
  return [partitionField, ...sortFields];
109
- }
108
+ };
110
109
  exports.getRelatedTypeIndex = getRelatedTypeIndex;
111
- function ensureFieldsArray(config) {
110
+ const ensureFieldsArray = (config) => {
112
111
  if (config.references) {
113
112
  throw new graphql_transformer_core_1.InvalidDirectiveError(`DynamoDB models do not support 'references' on @${config.directiveName} directive.`);
114
113
  }
@@ -121,14 +120,14 @@ function ensureFieldsArray(config) {
121
120
  else if (config.fields.length === 0) {
122
121
  throw new graphql_transformer_core_1.InvalidDirectiveError(`No fields passed to @${config.directiveName} directive.`);
123
122
  }
124
- }
123
+ };
125
124
  exports.ensureFieldsArray = ensureFieldsArray;
126
- function ensureReferencesArray(config) {
125
+ const ensureReferencesArray = (config) => {
127
126
  if (config.fields) {
128
127
  throw new graphql_transformer_core_1.InvalidDirectiveError(`Relational database models do not support 'fields' on @${config.directiveName} directive.`);
129
128
  }
130
129
  if (!config.references) {
131
- throw new graphql_transformer_core_1.InvalidDirectiveError(`Reference fields must be passed to @${config.directiveName} directive for RDS models.`);
130
+ throw new graphql_transformer_core_1.InvalidDirectiveError(`Reference fields must be passed to @${config.directiveName} directive for SQL models.`);
132
131
  }
133
132
  else if (!Array.isArray(config.references)) {
134
133
  config.references = [config.references];
@@ -136,19 +135,19 @@ function ensureReferencesArray(config) {
136
135
  else if (config.references.length === 0) {
137
136
  throw new graphql_transformer_core_1.InvalidDirectiveError(`No reference fields passed to @${config.directiveName} directive.`);
138
137
  }
139
- }
138
+ };
140
139
  exports.ensureReferencesArray = ensureReferencesArray;
141
- function getModelDirective(objectType) {
140
+ const getModelDirective = (objectType) => {
142
141
  return objectType.directives.find((directive) => directive.name.value === 'model');
143
- }
142
+ };
144
143
  exports.getModelDirective = getModelDirective;
145
- function validateModelDirective(config) {
146
- if (!getModelDirective(config.object)) {
144
+ const validateModelDirective = (config) => {
145
+ if (!(0, exports.getModelDirective)(config.object)) {
147
146
  throw new graphql_transformer_core_1.InvalidDirectiveError(`@${config.directiveName} must be on an @model object type field.`);
148
147
  }
149
- }
148
+ };
150
149
  exports.validateModelDirective = validateModelDirective;
151
- function getRelatedType(config, ctx) {
150
+ const getRelatedType = (config, ctx) => {
152
151
  const { field } = config;
153
152
  const relatedTypeName = (0, graphql_transformer_common_1.getBaseType)(field.type);
154
153
  const relatedType = ctx.inputDocument.definitions.find((d) => d.kind === graphql_1.Kind.OBJECT_TYPE_DEFINITION && d.name.value === relatedTypeName);
@@ -156,9 +155,9 @@ function getRelatedType(config, ctx) {
156
155
  throw new Error(`Could not find related type with name ${relatedTypeName} while processing relationships.`);
157
156
  }
158
157
  return relatedType;
159
- }
158
+ };
160
159
  exports.getRelatedType = getRelatedType;
161
- function getFieldsNodes(config, ctx) {
160
+ const getFieldsNodes = (config, ctx) => {
162
161
  const { directiveName, fields, object } = config;
163
162
  const enums = ctx.output.getTypeDefinitionsOfKind(graphql_1.Kind.ENUM_TYPE_DEFINITION);
164
163
  return fields.map((fieldName) => {
@@ -171,9 +170,9 @@ function getFieldsNodes(config, ctx) {
171
170
  }
172
171
  return fieldNode;
173
172
  });
174
- }
173
+ };
175
174
  exports.getFieldsNodes = getFieldsNodes;
176
- function getReferencesNodes(config, ctx) {
175
+ const getReferencesNodes = (config, ctx) => {
177
176
  const { directiveName, references, relatedType } = config;
178
177
  const enums = ctx.output.getTypeDefinitionsOfKind(graphql_1.Kind.ENUM_TYPE_DEFINITION);
179
178
  return references.map((fieldName) => {
@@ -186,9 +185,9 @@ function getReferencesNodes(config, ctx) {
186
185
  }
187
186
  return fieldNode;
188
187
  });
189
- }
188
+ };
190
189
  exports.getReferencesNodes = getReferencesNodes;
191
- function getBelongsToReferencesNodes(config, ctx) {
190
+ const getBelongsToReferencesNodes = (config, ctx) => {
192
191
  const { directiveName, references, object } = config;
193
192
  const enums = ctx.output.getTypeDefinitionsOfKind(graphql_1.Kind.ENUM_TYPE_DEFINITION);
194
193
  return references.map((fieldName) => {
@@ -201,40 +200,41 @@ function getBelongsToReferencesNodes(config, ctx) {
201
200
  }
202
201
  return fieldNode;
203
202
  });
204
- }
203
+ };
205
204
  exports.getBelongsToReferencesNodes = getBelongsToReferencesNodes;
206
- function validateRelatedModelDirective(config) {
207
- if (!getModelDirective(config.relatedType)) {
205
+ const validateRelatedModelDirective = (config) => {
206
+ if (!(0, exports.getModelDirective)(config.relatedType)) {
208
207
  throw new graphql_transformer_core_1.InvalidDirectiveError(`Object type ${config.relatedType.name.value} must be annotated with @model.`);
209
208
  }
210
- }
209
+ };
211
210
  exports.validateRelatedModelDirective = validateRelatedModelDirective;
212
- function getIndexName(directive) {
211
+ const getIndexName = (directive) => {
213
212
  for (const argument of directive.arguments) {
214
213
  if (argument.name.value === 'name') {
215
214
  return argument.value.value;
216
215
  }
217
216
  }
218
- }
219
- function getConnectionAttributeName(transformParameters, type, field, relatedTypeField) {
217
+ return undefined;
218
+ };
219
+ const getConnectionAttributeName = (transformParameters, type, field, relatedTypeField) => {
220
220
  const nameSuffix = transformParameters.respectPrimaryKeyAttributesOnConnectionField ? relatedTypeField : 'id';
221
221
  return (0, graphql_transformer_common_1.toCamelCase)([type, field, nameSuffix]);
222
- }
222
+ };
223
223
  exports.getConnectionAttributeName = getConnectionAttributeName;
224
- function getManyToManyConnectionAttributeName(transformParameters, field, relatedTypeField) {
224
+ const getManyToManyConnectionAttributeName = (transformParameters, field, relatedTypeField) => {
225
225
  const nameSuffix = transformParameters.respectPrimaryKeyAttributesOnConnectionField ? (0, graphql_transformer_common_1.toPascalCase)([relatedTypeField]) : 'ID';
226
226
  return `${(0, graphql_transformer_common_1.toCamelCase)([field])}${nameSuffix}`;
227
- }
227
+ };
228
228
  exports.getManyToManyConnectionAttributeName = getManyToManyConnectionAttributeName;
229
- function getSortKeyConnectionAttributeName(type, field, relatedTypeField) {
229
+ const getSortKeyConnectionAttributeName = (type, field, relatedTypeField) => {
230
230
  return (0, graphql_transformer_common_1.toCamelCase)([type, field, relatedTypeField]);
231
- }
231
+ };
232
232
  exports.getSortKeyConnectionAttributeName = getSortKeyConnectionAttributeName;
233
- function getBackendConnectionAttributeName(transformParameters, resourceHelper, type, field, relatedTypeField) {
234
- return getConnectionAttributeName(transformParameters, resourceHelper.getModelNameMapping(type), field, relatedTypeField);
235
- }
233
+ const getBackendConnectionAttributeName = (transformParameters, resourceHelper, type, field, relatedTypeField) => {
234
+ return (0, exports.getConnectionAttributeName)(transformParameters, resourceHelper.getModelNameMapping(type), field, relatedTypeField);
235
+ };
236
236
  exports.getBackendConnectionAttributeName = getBackendConnectionAttributeName;
237
- function validateDisallowedDataStoreRelationships(config, ctx) {
237
+ const validateDisallowedDataStoreRelationships = (config, ctx) => {
238
238
  if (!ctx.isProjectUsingDataStore()) {
239
239
  return;
240
240
  }
@@ -251,12 +251,12 @@ function validateDisallowedDataStoreRelationships(config, ctx) {
251
251
  if (hasUnsupportedConnectionFields) {
252
252
  throw new graphql_transformer_core_1.InvalidDirectiveError(`${modelType} and ${relatedType.name.value} cannot refer to each other via @hasOne or @hasMany when DataStore is in use. Use @belongsTo instead. See https://docs.amplify.aws/cli/graphql/data-modeling/#belongs-to-relationship`);
253
253
  }
254
- }
254
+ };
255
255
  exports.validateDisallowedDataStoreRelationships = validateDisallowedDataStoreRelationships;
256
- function registerHasOneForeignKeyMappings({ transformParameters, resourceHelper, thisTypeName, thisFieldName, relatedType, }) {
256
+ const registerHasOneForeignKeyMappings = ({ transformParameters, resourceHelper, thisTypeName, thisFieldName, relatedType, }) => {
257
257
  if (resourceHelper.isModelRenamed(thisTypeName)) {
258
- const currAttrName = getConnectionAttributeName(transformParameters, thisTypeName, thisFieldName, (0, exports.getObjectPrimaryKey)(relatedType).name.value);
259
- const origAttrName = getBackendConnectionAttributeName(transformParameters, resourceHelper, thisTypeName, thisFieldName, (0, exports.getObjectPrimaryKey)(relatedType).name.value);
258
+ const currAttrName = (0, exports.getConnectionAttributeName)(transformParameters, thisTypeName, thisFieldName, (0, exports.getObjectPrimaryKey)(relatedType).name.value);
259
+ const origAttrName = (0, exports.getBackendConnectionAttributeName)(transformParameters, resourceHelper, thisTypeName, thisFieldName, (0, exports.getObjectPrimaryKey)(relatedType).name.value);
260
260
  const modelFieldMap = resourceHelper.getModelFieldMap(thisTypeName);
261
261
  modelFieldMap.addMappedField({ currentFieldName: currAttrName, originalFieldName: origAttrName });
262
262
  ['create', 'update', 'delete', 'get', 'list', 'sync'].forEach((op) => {
@@ -269,14 +269,14 @@ function registerHasOneForeignKeyMappings({ transformParameters, resourceHelper,
269
269
  resourceHelper
270
270
  .getModelFieldMap(relatedType.name.value)
271
271
  .addResolverReference({ typeName: thisTypeName, fieldName: thisFieldName, isList: false });
272
- }
272
+ };
273
273
  exports.registerHasOneForeignKeyMappings = registerHasOneForeignKeyMappings;
274
- function registerHasManyForeignKeyMappings({ transformParameters, resourceHelper, thisTypeName, thisFieldName, relatedType, }) {
274
+ const registerHasManyForeignKeyMappings = ({ transformParameters, resourceHelper, thisTypeName, thisFieldName, relatedType, }) => {
275
275
  if (!resourceHelper.isModelRenamed(thisTypeName)) {
276
276
  return;
277
277
  }
278
- const currAttrName = getConnectionAttributeName(transformParameters, thisTypeName, thisFieldName, (0, exports.getObjectPrimaryKey)(relatedType).name.value);
279
- const origAttrName = getBackendConnectionAttributeName(transformParameters, resourceHelper, thisTypeName, thisFieldName, (0, exports.getObjectPrimaryKey)(relatedType).name.value);
278
+ const currAttrName = (0, exports.getConnectionAttributeName)(transformParameters, thisTypeName, thisFieldName, (0, exports.getObjectPrimaryKey)(relatedType).name.value);
279
+ const origAttrName = (0, exports.getBackendConnectionAttributeName)(transformParameters, resourceHelper, thisTypeName, thisFieldName, (0, exports.getObjectPrimaryKey)(relatedType).name.value);
280
280
  const modelFieldMap = resourceHelper.getModelFieldMap(relatedType.name.value);
281
281
  modelFieldMap
282
282
  .addMappedField({ currentFieldName: currAttrName, originalFieldName: origAttrName })
@@ -287,9 +287,9 @@ function registerHasManyForeignKeyMappings({ transformParameters, resourceHelper
287
287
  const opIsList = op === 'list' || op === 'sync';
288
288
  modelFieldMap.addResolverReference({ typeName: opTypeName, fieldName: opFieldName, isList: opIsList });
289
289
  });
290
- }
290
+ };
291
291
  exports.registerHasManyForeignKeyMappings = registerHasManyForeignKeyMappings;
292
- function registerManyToManyForeignKeyMappings({ resourceHelper, typeName, referencedBy, fieldMap, }) {
292
+ const registerManyToManyForeignKeyMappings = ({ resourceHelper, typeName, referencedBy, fieldMap, }) => {
293
293
  const modelFieldMap = resourceHelper.getModelFieldMap(typeName);
294
294
  fieldMap.forEach(modelFieldMap.addMappedField);
295
295
  referencedBy.forEach(modelFieldMap.addResolverReference);
@@ -299,7 +299,7 @@ function registerManyToManyForeignKeyMappings({ resourceHelper, typeName, refere
299
299
  const opIsList = op === 'list' || op === 'sync';
300
300
  modelFieldMap.addResolverReference({ typeName: opTypeName, fieldName: opFieldName, isList: opIsList });
301
301
  });
302
- }
302
+ };
303
303
  exports.registerManyToManyForeignKeyMappings = registerManyToManyForeignKeyMappings;
304
304
  const getObjectPrimaryKey = (object) => {
305
305
  let primaryKey = (0, graphql_transformer_common_1.makeField)('id', [], (0, graphql_transformer_common_1.makeNonNullType)((0, graphql_transformer_common_1.makeNamedType)('ID')));
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-amplify/graphql-relational-transformer",
3
- "version": "2.2.3",
3
+ "version": "2.3.1-alpha.1+edba38d57",
4
4
  "description": "Amplify GraphQL relational modeling transformers",
5
5
  "repository": {
6
6
  "type": "git",
@@ -28,17 +28,17 @@
28
28
  "extract-api": "ts-node ../../scripts/extract-api.ts"
29
29
  },
30
30
  "dependencies": {
31
- "@aws-amplify/graphql-index-transformer": "2.2.3",
32
- "@aws-amplify/graphql-model-transformer": "2.3.3",
33
- "@aws-amplify/graphql-transformer-core": "2.3.3",
34
- "@aws-amplify/graphql-transformer-interfaces": "3.3.1",
31
+ "@aws-amplify/graphql-index-transformer": "2.3.1-alpha.1+edba38d57",
32
+ "@aws-amplify/graphql-model-transformer": "2.4.1-alpha.1+edba38d57",
33
+ "@aws-amplify/graphql-transformer-core": "2.4.1-alpha.1+edba38d57",
34
+ "@aws-amplify/graphql-transformer-interfaces": "3.3.3-alpha.1+edba38d57",
35
35
  "graphql": "^15.5.0",
36
- "graphql-mapping-template": "4.20.12",
37
- "graphql-transformer-common": "4.26.2",
36
+ "graphql-mapping-template": "4.20.14-alpha.1+edba38d57",
37
+ "graphql-transformer-common": "4.27.1-alpha.1+edba38d57",
38
38
  "immer": "^9.0.12"
39
39
  },
40
40
  "devDependencies": {
41
- "@aws-amplify/graphql-transformer-test-utils": "0.3.3"
41
+ "@aws-amplify/graphql-transformer-test-utils": "0.4.0"
42
42
  },
43
43
  "peerDependencies": {
44
44
  "aws-cdk-lib": "^2.80.0",
@@ -64,7 +64,11 @@
64
64
  "functions": 50,
65
65
  "lines": 55
66
66
  }
67
- }
67
+ },
68
+ "coverageReporters": [
69
+ "clover",
70
+ "text"
71
+ ]
68
72
  },
69
- "gitHead": "5256b5955ee204dd56f8074a43406852f8206c54"
73
+ "gitHead": "edba38d57f363191913c763e621d92d1aa9490f8"
70
74
  }
@@ -3,6 +3,12 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [2.4.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-searchable-transformer@2.3.3...@aws-amplify/graphql-searchable-transformer@2.4.0) (2023-12-06)
7
+
8
+ ### Features
9
+
10
+ - combine heterogeneous data sources ([#2109](https://github.com/aws-amplify/amplify-category-api/issues/2109)) ([fd58bb5](https://github.com/aws-amplify/amplify-category-api/commit/fd58bb5af4249220d17c9751acf677955aed74ea))
11
+
6
12
  ## [2.3.3](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-searchable-transformer@2.3.2...@aws-amplify/graphql-searchable-transformer@2.3.3) (2023-11-22)
7
13
 
8
14
  **Note:** Version bump only for package @aws-amplify/graphql-searchable-transformer
@@ -271,7 +271,7 @@ class SearchableModelTransformer extends graphql_transformer_core_1.TransformerP
271
271
  this.prepare = (ctx) => {
272
272
  for (const def of this.searchableObjectTypeDefinitions) {
273
273
  const modelName = def.node.name.value;
274
- if ((0, graphql_transformer_core_1.isRDSModel)(ctx, modelName)) {
274
+ if ((0, graphql_transformer_core_1.isSqlModel)(ctx, modelName)) {
275
275
  throw new graphql_transformer_core_1.InvalidDirectiveError(`@searchable is not supported on "${modelName}" model as it uses RDS datasource.`);
276
276
  }
277
277
  ctx.resourceHelper.getModelFieldMap(modelName).addResolverReference({ typeName: 'Query', fieldName: def.fieldName, isList: true });
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-amplify/graphql-searchable-transformer",
3
- "version": "2.3.3",
3
+ "version": "2.4.1-alpha.1+edba38d57",
4
4
  "description": "Amplfy GraphQL @searchable transformer",
5
5
  "repository": {
6
6
  "type": "git",
@@ -28,19 +28,19 @@
28
28
  "extract-api": "ts-node ../../scripts/extract-api.ts"
29
29
  },
30
30
  "dependencies": {
31
- "@aws-amplify/graphql-model-transformer": "2.3.3",
32
- "@aws-amplify/graphql-transformer-core": "2.3.3",
33
- "@aws-amplify/graphql-transformer-interfaces": "3.3.1",
31
+ "@aws-amplify/graphql-model-transformer": "2.4.1-alpha.1+edba38d57",
32
+ "@aws-amplify/graphql-transformer-core": "2.4.1-alpha.1+edba38d57",
33
+ "@aws-amplify/graphql-transformer-interfaces": "3.3.3-alpha.1+edba38d57",
34
34
  "graphql": "^15.5.0",
35
- "graphql-mapping-template": "4.20.12",
36
- "graphql-transformer-common": "4.26.2"
35
+ "graphql-mapping-template": "4.20.14-alpha.1+edba38d57",
36
+ "graphql-transformer-common": "4.27.1-alpha.1+edba38d57"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "aws-cdk-lib": "^2.80.0",
40
40
  "constructs": "^10.0.5"
41
41
  },
42
42
  "devDependencies": {
43
- "@aws-amplify/graphql-transformer-test-utils": "0.3.3",
43
+ "@aws-amplify/graphql-transformer-test-utils": "0.4.0",
44
44
  "@types/node": "^12.12.6"
45
45
  },
46
46
  "jest": {
@@ -65,9 +65,13 @@
65
65
  "lines": 80
66
66
  }
67
67
  },
68
+ "coverageReporters": [
69
+ "clover",
70
+ "text"
71
+ ],
68
72
  "modulePathIgnorePatterns": [
69
73
  "overrides"
70
74
  ]
71
75
  },
72
- "gitHead": "5256b5955ee204dd56f8074a43406852f8206c54"
76
+ "gitHead": "edba38d57f363191913c763e621d92d1aa9490f8"
73
77
  }
@@ -3,6 +3,12 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.2.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-sql-transformer@0.1.3...@aws-amplify/graphql-sql-transformer@0.2.0) (2023-12-06)
7
+
8
+ ### Features
9
+
10
+ - combine heterogeneous data sources ([#2109](https://github.com/aws-amplify/amplify-category-api/issues/2109)) ([fd58bb5](https://github.com/aws-amplify/amplify-category-api/commit/fd58bb5af4249220d17c9751acf677955aed74ea))
11
+
6
12
  ## [0.1.3](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-sql-transformer@0.1.2...@aws-amplify/graphql-sql-transformer@0.1.3) (2023-11-22)
7
13
 
8
14
  ### Bug Fixes
@@ -1 +1 @@
1
- {"version":3,"file":"graphql-sql-transformer.d.ts","sourceRoot":"","sources":["../src/graphql-sql-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,qBAAqB,EACtB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,0BAA0B,EAAE,yCAAyC,EAAE,MAAM,6CAA6C,CAAC;AAmBpI,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAcpH,qBAAa,cAAe,SAAQ,qBAAqB;IACvD,OAAO,CAAC,kBAAkB,CAAoE;;IAM9F,KAAK,WACK,wBAAwB,GAAG,2BAA2B,cAClD,mBAAmB,aACpB,aAAa,OACnB,yCAAyC,KAC7C,IAAI,CAkCL;IAEF,iBAAiB,YAAa,0BAA0B,KAAG,IAAI,CA8D7D;CACH;AAqCD,eAAO,MAAM,gCAAgC,cAAe,MAAM,aAAa,MAAM,iBAAiB,MAAM,KAAG,MAgB9G,CAAC;AAEF,eAAO,MAAM,wCAAwC,QAAO,MAQ3D,CAAC"}
1
+ {"version":3,"file":"graphql-sql-transformer.d.ts","sourceRoot":"","sources":["../src/graphql-sql-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,qBAAqB,EACtB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,0BAA0B,EAAE,yCAAyC,EAAE,MAAM,6CAA6C,CAAC;AAkBpI,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAcpH,qBAAa,cAAe,SAAQ,qBAAqB;IACvD,OAAO,CAAC,kBAAkB,CAAoE;;IAM9F,KAAK,WACK,wBAAwB,GAAG,2BAA2B,cAClD,mBAAmB,aACpB,aAAa,OACnB,yCAAyC,KAC7C,IAAI,CAkCL;IAEF,iBAAiB,YAAa,0BAA0B,KAAG,IAAI,CAwD7D;CACH;AAwDD,eAAO,MAAM,gCAAgC,cAAe,MAAM,aAAa,MAAM,iBAAiB,MAAM,KAAG,MAgB9G,CAAC;AAEF,eAAO,MAAM,wCAAwC,QAAO,MAQ3D,CAAC"}
@@ -25,7 +25,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.generateSqlLambdaResponseMappingTemplate = exports.generateSqlLambdaRequestTemplate = exports.SqlTransformer = void 0;
27
27
  const graphql_transformer_core_1 = require("@aws-amplify/graphql-transformer-core");
28
- const graphql_model_transformer_1 = require("@aws-amplify/graphql-model-transformer");
29
28
  const cdk = __importStar(require("aws-cdk-lib"));
30
29
  const graphql_mapping_template_1 = require("graphql-mapping-template");
31
30
  const graphql_transformer_common_1 = require("graphql-transformer-common");
@@ -45,7 +44,7 @@ class SqlTransformer extends graphql_transformer_core_1.TransformerPluginBase {
45
44
  const directiveWrapped = new graphql_transformer_core_1.DirectiveWrapper(directive);
46
45
  if (!((_a = directive === null || directive === void 0 ? void 0 : directive.arguments) === null || _a === void 0 ? void 0 : _a.find((arg) => arg.name.value === 'statement')) &&
47
46
  !((_b = directive === null || directive === void 0 ? void 0 : directive.arguments) === null || _b === void 0 ? void 0 : _b.find((arg) => arg.name.value === 'reference'))) {
48
- throw new graphql_transformer_core_1.InvalidDirectiveError(`@sql directive must have either a 'statement' or 'reference' argument. Check type "${parent.name.value}" and field "${definition.name.value}".`);
47
+ throw new graphql_transformer_core_1.InvalidDirectiveError(`@sql directive must have either a 'statement' or a 'reference' argument. Check type "${parent.name.value}" and field "${definition.name.value}".`);
49
48
  }
50
49
  const args = directiveWrapped.getArguments({
51
50
  resolverTypeName: parent.name.value,
@@ -72,21 +71,16 @@ class SqlTransformer extends graphql_transformer_core_1.TransformerPluginBase {
72
71
  this.sqlDirectiveFields.forEach((resolverFns) => {
73
72
  resolverFns.forEach((config) => {
74
73
  var _a;
75
- const { SQLLambdaDataSourceLogicalID: dataSourceId } = graphql_transformer_common_1.ResourceConstants.RESOURCES;
76
- let dataSource = context.api.host.getDataSource(dataSourceId);
77
- if (!dataSource) {
78
- const generator = new graphql_model_transformer_1.RdsModelResourceGenerator();
79
- generator.enableGenerator();
80
- const typeName = config.resolverTypeName;
81
- const fieldName = config.resolverFieldName;
82
- const strategy = (_a = context.customSqlDataSourceStrategies) === null || _a === void 0 ? void 0 : _a.find((css) => css.typeName === typeName && css.fieldName === fieldName);
83
- if (!strategy) {
84
- throw new Error(`Could not find custom SQL strategy for ${typeName}.${fieldName}`);
85
- }
86
- generator.generateResources(context, strategy.dataSourceType.dbType);
87
- dataSource = context.api.host.getDataSource(dataSourceId);
74
+ const typeName = config.resolverTypeName;
75
+ const fieldName = config.resolverFieldName;
76
+ const strategy = (_a = context.sqlDirectiveDataSourceStrategies) === null || _a === void 0 ? void 0 : _a.find((css) => css.typeName === typeName && css.fieldName === fieldName);
77
+ if (!strategy) {
78
+ throw new Error(`Could not find custom SQL strategy for ${typeName}.${fieldName}`);
88
79
  }
89
- const statement = getStatement(config, context.customQueries);
80
+ const resourceNames = (0, graphql_transformer_core_1.getResourceNamesForStrategy)(strategy.strategy);
81
+ const dataSourceId = resourceNames.sqlLambdaDataSource;
82
+ const dataSource = context.api.host.getDataSource(dataSourceId);
83
+ const statement = getStatement(config, strategy.customSqlStatements);
90
84
  const resolverResourceId = graphql_transformer_common_1.ResolverResourceIDs.ResolverResourceID(config.resolverTypeName, config.resolverFieldName);
91
85
  const resolver = context.resolvers.generateQueryResolver(config.resolverTypeName, config.resolverFieldName, resolverResourceId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, exports.generateSqlLambdaRequestTemplate)(statement, 'RAW_SQL', config.resolverFieldName), `${config.resolverTypeName}.${config.resolverFieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, exports.generateSqlLambdaResponseMappingTemplate)(), `${config.resolverTypeName}.${config.resolverFieldName}.res.vtl`));
92
86
  resolver.addToSlot('postAuth', graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(generateAuthExpressionForSandboxMode(context.transformParameters.sandboxModeEnabled), `${config.resolverTypeName}.${config.resolverFieldName}.{slotName}.{slotIndex}.req.vtl`));
@@ -107,19 +101,31 @@ const generateAuthExpressionForSandboxMode = (enabled) => {
107
101
  exp = (0, graphql_mapping_template_1.methodCall)((0, graphql_mapping_template_1.ref)('util.unauthorized'));
108
102
  return (0, graphql_mapping_template_1.printBlock)(`Sandbox Mode ${enabled ? 'Enabled' : 'Disabled'}`)((0, graphql_mapping_template_1.compoundExpression)([(0, graphql_mapping_template_1.iff)((0, graphql_mapping_template_1.not)((0, graphql_mapping_template_1.ref)('ctx.stash.get("hasAuth")')), exp), (0, graphql_mapping_template_1.toJson)((0, graphql_mapping_template_1.obj)({}))]));
109
103
  };
110
- const getStatement = (config, customQueries) => {
111
- var _a;
112
- if (config.reference && !customQueries.has(config.reference)) {
113
- throw new graphql_transformer_core_1.InvalidDirectiveError(`@sql directive 'reference' argument must be a valid custom query name. Check type "${config.resolverTypeName}" and field "${config.resolverFieldName}". The custom query "${config.reference}" does not exist in "sql-statements" directory.`);
104
+ const getStatementFromStatementAttribute = (config) => {
105
+ const statement = config.statement;
106
+ if (statement === undefined || statement.trim().length === 0) {
107
+ throw new graphql_transformer_core_1.InvalidDirectiveError(`@sql directive 'statement' argument must not be empty. Check type "${config.resolverTypeName}" and field "${config.resolverFieldName}".`);
108
+ }
109
+ return statement;
110
+ };
111
+ const getStatementFromReferenceAttribute = (config, customQueries) => {
112
+ if (!config.reference || !customQueries || !customQueries[config.reference]) {
113
+ throw new graphql_transformer_core_1.InvalidDirectiveError(`The ${config.resolverTypeName} field "${config.resolverFieldName}" references a custom SQL statement "${config.reference}" that ` +
114
+ `doesn't exist. Verify that "${config.reference}" is a key in the customSqlStatements property.`);
114
115
  }
116
+ return customQueries[config.reference];
117
+ };
118
+ const getStatement = (config, customQueries) => {
115
119
  if (config.reference && config.statement) {
116
- throw new graphql_transformer_core_1.InvalidDirectiveError(`@sql directive can have either 'statement' or 'reference' argument but not both. Check type "${config.resolverTypeName}" and field "${config.resolverFieldName}".`);
120
+ throw new graphql_transformer_core_1.InvalidDirectiveError(`@sql directive can have either a 'statement' or a 'reference' argument but not both. Check type "${config.resolverTypeName}" and field "${config.resolverFieldName}".`);
117
121
  }
118
- if (config.statement !== undefined && config.statement.trim().length === 0) {
119
- throw new graphql_transformer_core_1.InvalidDirectiveError(`@sql directive 'statement' argument must not be empty. Check type "${config.resolverTypeName}" and field "${config.resolverFieldName}".`);
122
+ if (typeof config.statement === 'string') {
123
+ return getStatementFromStatementAttribute(config);
120
124
  }
121
- const statement = (_a = config.statement) !== null && _a !== void 0 ? _a : customQueries.get(config.reference);
122
- return statement;
125
+ if (typeof config.reference === 'string') {
126
+ return getStatementFromReferenceAttribute(config, customQueries);
127
+ }
128
+ throw new graphql_transformer_core_1.InvalidDirectiveError(`@sql directive must have either a 'statement' or a 'reference' argument. Check type "${config.resolverTypeName}" and field "${config.resolverFieldName}".`);
123
129
  };
124
130
  const generateSqlLambdaRequestTemplate = (statement, operation, operationName) => {
125
131
  return (0, graphql_mapping_template_1.printBlock)('Invoke RDS Lambda data source')((0, graphql_mapping_template_1.compoundExpression)([
@@ -1 +1 @@
1
- {"version":3,"file":"graphql-sql-transformer.js","sourceRoot":"","sources":["../src/graphql-sql-transformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graphql-sql-transformer.js","sourceRoot":"","sources":["../src/graphql-sql-transformer.ts"],"names":[],"mappings":"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"}