@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
@@ -1,5 +1,3 @@
1
- import { DataSourceType } from '../transformer-context/transformer-datasource-provider';
2
-
3
1
  // #########################################################################################################################################
4
2
  // If you change types in this file (the internal implementation), be sure to make corresponding necessary changes to
5
3
  // amplify-graphql-api-construct/src/model-datasource-strategy.ts (the customer-facing interface) and the adapter functions in this file.
@@ -17,8 +15,15 @@ export interface ModelDataSourceStrategyBase {
17
15
  dbType: ModelDataSourceStrategyDbType;
18
16
  }
19
17
 
20
- // TODO: Make this the source of truth for database type definitions used throughout the construct & transformer
21
- export type ModelDataSourceStrategyDbType = 'DYNAMODB' | 'MYSQL' | 'POSTGRES';
18
+ /**
19
+ * All supported database types that can be used to resolve models.
20
+ */
21
+ export type ModelDataSourceStrategyDbType = 'DYNAMODB' | ModelDataSourceStrategySqlDbType;
22
+
23
+ /**
24
+ * All supported SQL database types that can be used to resolve models.
25
+ */
26
+ export type ModelDataSourceStrategySqlDbType = 'MYSQL' | 'POSTGRES';
22
27
 
23
28
  /**
24
29
  * Use default CloudFormation type 'AWS::DynamoDB::Table' to provision table.
@@ -39,6 +44,8 @@ export interface AmplifyDynamoDbModelDataSourceStrategy extends ModelDataSourceS
39
44
  /**
40
45
  * A strategy that creates a Lambda to connect to a pre-existing SQL table to resolve model data.
41
46
  *
47
+ * Note: The implementation type is different from the interface type: the interface type contains the custom SQL statements that are
48
+ * reference by the `@sql` `reference` attribute, while the implementation moves those into the SqlDirectiveDataSourceStrategy type.
42
49
  */
43
50
  export interface SQLLambdaModelDataSourceStrategy extends ModelDataSourceStrategyBase {
44
51
  /**
@@ -50,7 +57,7 @@ export interface SQLLambdaModelDataSourceStrategy extends ModelDataSourceStrateg
50
57
  /**
51
58
  * The type of the SQL database used to process model operations for this definition.
52
59
  */
53
- readonly dbType: 'MYSQL' | 'POSTGRES';
60
+ readonly dbType: ModelDataSourceStrategySqlDbType;
54
61
 
55
62
  /**
56
63
  * The parameters the Lambda data source will use to connect to the database.
@@ -62,12 +69,6 @@ export interface SQLLambdaModelDataSourceStrategy extends ModelDataSourceStrateg
62
69
  */
63
70
  readonly vpcConfiguration?: VpcConfig;
64
71
 
65
- /**
66
- * Custom SQL statements. The key is the value of the `references` attribute of the `@sql` directive in the `schema`; the value is the SQL
67
- * to be executed.
68
- */
69
- readonly customSqlStatements?: Record<string, string>;
70
-
71
72
  /**
72
73
  * The configuration for the provisioned concurrency of the Lambda.
73
74
  */
@@ -137,27 +138,58 @@ export interface SqlModelDataSourceDbConnectionConfig {
137
138
  readonly databaseNameSsmPath: string;
138
139
  }
139
140
 
140
- export interface CustomSqlDataSourceStrategy {
141
+ /**
142
+ * The internal implementation type for defining a ModelDataSourceStrategy used to resolve a field annotated with a `@sql` directive.
143
+ *
144
+ * Note: The implementation type is different from the interface type: it directly contains the SQL statement to be executed rather than
145
+ * passing a map.
146
+ */
147
+ export interface SqlDirectiveDataSourceStrategy {
148
+ /** The built-in type (either "Query" or "Mutation") with which the custom SQL is associated */
141
149
  readonly typeName: 'Query' | 'Mutation';
150
+
151
+ /** The field name with which the custom SQL is associated */
142
152
  readonly fieldName: string;
143
- // TODO: Replace this when we support heterogeneous SQL data sources in a single API
144
- readonly dataSourceType: DataSourceType;
153
+
154
+ /** The strategy used to create the datasource that will resolve the custom SQL statement. */
155
+ readonly strategy: SQLLambdaModelDataSourceStrategy;
156
+
157
+ /**
158
+ * Custom SQL statements to be executed to resolve this field.
159
+ *
160
+ * Note: It's overkill to make this a map: a SqlDirectiveDataSourceStrategy will only ever use at most one statement (and maybe not even
161
+ * that if the directive uses inline statements). However, to avoid having to parse the directive configuration in multiple places, we'll
162
+ * pass the entire map as specified in the CDK construct definition, and let the directive transformer use it to look up references.
163
+ */
164
+ readonly customSqlStatements?: Record<string, string>;
145
165
  }
146
166
 
167
+ /**
168
+ * Defines types that vend a dataSourceStrategies and optional customSqlDataSourceStrategies field. Primarily used for transformer context.
169
+ */
147
170
  export interface DataSourceStrategiesProvider {
148
171
  /** Maps GraphQL model names to the ModelDataSourceStrategy used to resolve it. The key of the record is the GraphQL type name. */
149
- // TODO: Add this back during combine feature
150
- // dataSourceStrategies: Record<string, ModelDataSourceStrategy>;
172
+ dataSourceStrategies: Record<string, ModelDataSourceStrategy>;
151
173
 
152
174
  /** Maps custom Query and Mutation fields to the ModelDataSourceStrategy used to resolve them. */
153
- customSqlDataSourceStrategies: CustomSqlDataSourceStrategy[];
175
+ sqlDirectiveDataSourceStrategies?: SqlDirectiveDataSourceStrategy[];
154
176
  }
155
177
 
156
178
  /**
157
- * Maps a given AWS region to the SQL Lambda layer version ARN for that region. TODO: Rename to SQLLambdaLayerMapping
179
+ * Maps a given AWS region to the SQL Lambda layer version ARN for that region. TODO: Once we remove SQL imports from Gen1 CLI, remove this
180
+ * from the transformer interfaces package in favor of the model generator, which is the only place that needs it now that we always resolve
181
+ * the layer mapping at deploy time.
158
182
  */
159
183
  export interface RDSLayerMapping {
160
184
  readonly [key: string]: {
161
185
  layerRegion: string;
162
186
  };
163
187
  }
188
+
189
+ /**
190
+ * Defines types that vend an rdsLayerMapping field. This is used solely for the Gen1 CLI import API flow, since wiring the custom resource
191
+ * provider used by the CDK isn't worth the cost. TODO: Remove this once we remove SQL imports from Gen1 CLI.
192
+ */
193
+ export interface RDSLayerMappingProvider {
194
+ rdsLayerMapping?: RDSLayerMapping;
195
+ }
@@ -3,12 +3,6 @@ export {
3
3
  TransformerDataSourceManagerProvider,
4
4
  AppSyncDataSourceType,
5
5
  DataSourceInstance,
6
- DataSourceType,
7
- DBType,
8
- DataSourceProvisionStrategy,
9
- DynamoDBProvisionStrategy,
10
- SQLLambdaModelProvisionStrategy,
11
- SQLDBType,
12
6
  } from './transformer-datasource-provider';
13
7
  export { TransformerContextOutputProvider } from './transformer-context-output-provider';
14
8
  export { TransformerProviderRegistry } from './transformer-provider-registry';
@@ -1,7 +1,7 @@
1
1
  import { DocumentNode } from 'graphql';
2
2
  import { AppSyncAuthConfiguration, GraphQLAPIProvider } from '../graphql-api-provider';
3
- import { CustomSqlDataSourceStrategy, ProvisionedConcurrencyConfig, RDSLayerMapping, VpcConfig } from '../model-datasource';
4
- import { TransformerDataSourceManagerProvider, DataSourceType } from './transformer-datasource-provider';
3
+ import { DataSourceStrategiesProvider, RDSLayerMappingProvider } from '../model-datasource';
4
+ import { TransformerDataSourceManagerProvider } from './transformer-datasource-provider';
5
5
  import { TransformerProviderRegistry } from './transformer-provider-registry';
6
6
  import { TransformerContextOutputProvider } from './transformer-context-output-provider';
7
7
  import { StackManagerProvider } from './stack-manager-provider';
@@ -11,23 +11,20 @@ import { TransformerResolversManagerProvider } from './transformer-resolver-prov
11
11
  import { SynthParameters } from './synth-parameters';
12
12
 
13
13
  export interface TransformerContextMetadataProvider {
14
- set<T>(key: string, value: T): void;
15
- get<T>(key: string): T | undefined;
16
- has(key: string): boolean;
14
+ set: <T>(key: string, value: T) => void;
15
+ get: <T>(key: string) => T | undefined;
16
+ has: (key: string) => boolean;
17
17
  }
18
18
 
19
19
  export type TransformerSecrets = { [key: string]: any };
20
20
 
21
- export interface TransformerContextProvider {
21
+ export interface TransformerContextProvider extends DataSourceStrategiesProvider, RDSLayerMappingProvider {
22
22
  metadata: TransformerContextMetadataProvider;
23
23
  resolvers: TransformerResolversManagerProvider;
24
24
  dataSources: TransformerDataSourceManagerProvider;
25
25
  providerRegistry: TransformerProviderRegistry;
26
26
 
27
27
  inputDocument: DocumentNode;
28
- modelToDatasourceMap: Map<string, DataSourceType>;
29
- customSqlDataSourceStrategies?: CustomSqlDataSourceStrategy[];
30
- datasourceSecretParameterLocations: Map<string, TransformerSecrets>;
31
28
  output: TransformerContextOutputProvider;
32
29
  stackManager: StackManagerProvider;
33
30
  api: GraphQLAPIProvider;
@@ -35,20 +32,16 @@ export interface TransformerContextProvider {
35
32
  authConfig: AppSyncAuthConfiguration;
36
33
  transformParameters: TransformParameters;
37
34
  synthParameters: SynthParameters;
38
- customQueries: Map<string, string>;
39
35
 
40
- isProjectUsingDataStore(): boolean;
41
- getResolverConfig<ResolverConfig>(): ResolverConfig | undefined;
42
- readonly sqlLambdaVpcConfig?: VpcConfig;
43
- readonly rdsLayerMapping?: RDSLayerMapping;
44
- readonly sqlLambdaProvisionedConcurrencyConfig?: ProvisionedConcurrencyConfig;
36
+ isProjectUsingDataStore: () => boolean;
37
+ getResolverConfig: <ResolverConfig>() => ResolverConfig | undefined;
45
38
  }
46
39
 
47
40
  export type TransformerBeforeStepContextProvider = Pick<
48
41
  TransformerContextProvider,
49
42
  | 'inputDocument'
50
- | 'modelToDatasourceMap'
51
- | 'customSqlDataSourceStrategies'
43
+ | 'dataSourceStrategies'
44
+ | 'sqlDirectiveDataSourceStrategies'
52
45
  | 'transformParameters'
53
46
  | 'isProjectUsingDataStore'
54
47
  | 'getResolverConfig'
@@ -60,8 +53,8 @@ export type TransformerBeforeStepContextProvider = Pick<
60
53
  export type TransformerSchemaVisitStepContextProvider = Pick<
61
54
  TransformerContextProvider,
62
55
  | 'inputDocument'
63
- | 'modelToDatasourceMap'
64
- | 'customSqlDataSourceStrategies'
56
+ | 'dataSourceStrategies'
57
+ | 'sqlDirectiveDataSourceStrategies'
65
58
  | 'output'
66
59
  | 'providerRegistry'
67
60
  | 'transformParameters'
@@ -75,8 +68,8 @@ export type TransformerSchemaVisitStepContextProvider = Pick<
75
68
  export type TransformerValidationStepContextProvider = Pick<
76
69
  TransformerContextProvider,
77
70
  | 'inputDocument'
78
- | 'modelToDatasourceMap'
79
- | 'customSqlDataSourceStrategies'
71
+ | 'dataSourceStrategies'
72
+ | 'sqlDirectiveDataSourceStrategies'
80
73
  | 'output'
81
74
  | 'providerRegistry'
82
75
  | 'dataSources'
@@ -26,46 +26,3 @@ export interface TransformerDataSourceManagerProvider {
26
26
  }
27
27
 
28
28
  export interface DataSourceProvider extends BackedDataSource {}
29
-
30
- /**
31
- * Supported transformable database types. TODO: Remove this when we normalize database type handling throughout
32
- */
33
- export type DBType = 'DDB' | SQLDBType;
34
-
35
- /**
36
- * Supported transformable SQL database types. TODO: Remove this when we normalize database type handling throughout
37
- */
38
- export type SQLDBType = 'MySQL' | 'Postgres';
39
-
40
- // TODO: add strategy for the RDS. TODO: Move this to amplify-graphql-api-construct
41
- export type DataSourceProvisionStrategy = DynamoDBProvisionStrategy | SQLLambdaModelProvisionStrategy;
42
-
43
- /**
44
- * Provisioning configuration for a DynamoDB datasource. TODO: Remove this type in favor of strategy definitions in
45
- * amplify-graphql-api-construct
46
- */
47
- export const enum DynamoDBProvisionStrategy {
48
- /**
49
- * Use default CloudFormation resource of `AWS::DynamoDB::Table`
50
- */
51
- DEFAULT = 'DEFAULT',
52
- /**
53
- * Use custom resource type `Custom::AmplifyDynamoDBTable`
54
- */
55
- AMPLIFY_TABLE = 'AMPLIFY_TABLE',
56
- }
57
-
58
- // TODO: Remove this type in favor of fully-specified SQLLambdaModelDataSourceStrategy from amplify-graphql-api-construct
59
- export const enum SQLLambdaModelProvisionStrategy {
60
- /**
61
- * A strategy that creates a Lambda to connect to a pre-existing SQL table to resolve model data.
62
- */
63
- DEFAULT = 'DEFAULT',
64
- }
65
-
66
- // TODO: Replace usages of this type with ModelDataSourceStrategy
67
- export interface DataSourceType {
68
- dbType: DBType;
69
- provisionDB: boolean;
70
- provisionStrategy: DataSourceProvisionStrategy;
71
- }