@aws-amplify/graphql-api-construct 1.16.0-gen2-migration-1015.0 → 1.16.1-ai-streaming.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (304) hide show
  1. package/.jsii +79 -152
  2. package/API.md +1 -11
  3. package/CHANGELOG.md +21 -1
  4. package/lib/amplify-dynamodb-table-wrapper.js +1 -1
  5. package/lib/amplify-graphql-api.js +9 -12
  6. package/lib/amplify-graphql-definition.js +1 -1
  7. package/lib/internal/metadata.d.ts +4 -0
  8. package/lib/internal/metadata.js +42 -0
  9. package/lib/model-datasource-strategy-types.d.ts +1 -19
  10. package/lib/model-datasource-strategy-types.js +1 -1
  11. package/lib/sql-model-datasource-strategy.js +1 -1
  12. package/lib/types.d.ts +1 -1
  13. package/lib/types.js +1 -1
  14. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/conversation_handler_construct.d.ts +19 -1
  15. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/conversation_handler_construct.js +36 -2
  16. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/index.d.ts +2 -2
  17. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/index.js +1 -1
  18. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/bedrock_converse_adapter.d.ts +11 -4
  19. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/bedrock_converse_adapter.js +279 -67
  20. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/conversation_message_history_retriever.js +34 -8
  21. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/conversation_turn_executor.d.ts +2 -2
  22. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/conversation_turn_executor.js +17 -4
  23. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/conversation_turn_response_sender.d.ts +17 -3
  24. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/conversation_turn_response_sender.js +56 -18
  25. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/default_handler.d.ts +1 -1
  26. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/event-tools-provider/event_tools_provider.js +2 -2
  27. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/event-tools-provider/graphql_tool.d.ts +7 -7
  28. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/event-tools-provider/graphql_tool.js +3 -2
  29. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/executable_tool_factory.d.ts +7 -0
  30. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/executable_tool_factory.js +16 -0
  31. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/graphql_request_executor.d.ts +2 -1
  32. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/graphql_request_executor.js +4 -2
  33. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/index.d.ts +3 -2
  34. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/index.js +4 -2
  35. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/types.d.ts +71 -14
  36. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/types.js +1 -1
  37. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/README.md +4 -0
  38. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/ai/conversation/index.d.ts +23 -0
  39. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/ai/conversation/index.js +10 -0
  40. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/ai/conversation/v1.d.ts +22 -0
  41. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/ai/conversation/v1.js +11 -0
  42. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/auth/index.d.ts +118 -0
  43. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/auth/index.js +10 -0
  44. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/auth/v1.d.ts +117 -0
  45. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/auth/v1.js +31 -0
  46. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/custom/index.d.ts +23 -0
  47. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/custom/index.js +10 -0
  48. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/custom/v1.d.ts +22 -0
  49. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/custom/v1.js +11 -0
  50. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/function/index.d.ts +23 -0
  51. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/function/index.js +10 -0
  52. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/function/v1.d.ts +22 -0
  53. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/function/v1.js +11 -0
  54. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/graphql/index.d.ts +59 -0
  55. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/graphql/index.js +12 -0
  56. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/graphql/v1.d.ts +59 -0
  57. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/graphql/v1.js +25 -0
  58. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/index.d.ts +515 -0
  59. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/index.js +112 -0
  60. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/platform/index.d.ts +2 -0
  61. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/platform/index.js +18 -0
  62. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/platform/stack_metadata_schemas.d.ts +42 -0
  63. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/platform/stack_metadata_schemas.js +22 -0
  64. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/stack/index.d.ts +28 -0
  65. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/stack/index.js +10 -0
  66. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/stack/v1.d.ts +27 -0
  67. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/stack/v1.js +12 -0
  68. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/storage/index.d.ts +33 -0
  69. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/storage/index.js +10 -0
  70. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/storage/v1.d.ts +32 -0
  71. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/storage/v1.js +33 -0
  72. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/package.json +27 -0
  73. package/node_modules/@aws-amplify/ai-constructs/package.json +9 -2
  74. package/node_modules/@aws-amplify/graphql-auth-transformer/CHANGELOG.md +9 -1
  75. package/node_modules/@aws-amplify/graphql-auth-transformer/package.json +14 -14
  76. package/node_modules/@aws-amplify/graphql-conversation-transformer/CHANGELOG.md +20 -2
  77. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/conversation-directive-configuration.d.ts +48 -0
  78. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/conversation-directive-configuration.d.ts.map +1 -0
  79. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/conversation-directive-configuration.js +3 -0
  80. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/conversation-directive-configuration.js.map +1 -0
  81. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/conversation-model.d.ts +10 -0
  82. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/conversation-model.d.ts.map +1 -0
  83. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/{session-model.js → conversation-model.js} +18 -24
  84. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/conversation-model.js.map +1 -0
  85. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/message-model.d.ts +14 -10
  86. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/message-model.d.ts.map +1 -1
  87. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/message-model.js +99 -46
  88. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/message-model.js.map +1 -1
  89. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/name-values.d.ts +15 -0
  90. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/name-values.d.ts.map +1 -0
  91. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/name-values.js +32 -0
  92. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/name-values.js.map +1 -0
  93. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/grapqhl-conversation-transformer.d.ts +1 -24
  94. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/grapqhl-conversation-transformer.d.ts.map +1 -1
  95. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/grapqhl-conversation-transformer.js +1 -7
  96. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/grapqhl-conversation-transformer.js.map +1 -1
  97. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-pipeline-definition.d.ts +3 -0
  98. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-pipeline-definition.d.ts.map +1 -0
  99. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-pipeline-definition.js +53 -0
  100. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-pipeline-definition.js.map +1 -0
  101. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-stream-pipeline-definition.d.ts +3 -0
  102. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-stream-pipeline-definition.d.ts.map +1 -0
  103. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-stream-pipeline-definition.js +58 -0
  104. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-stream-pipeline-definition.js.map +1 -0
  105. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-subscription-pipeline-definition.d.ts +3 -0
  106. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-subscription-pipeline-definition.d.ts.map +1 -0
  107. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-subscription-pipeline-definition.js +21 -0
  108. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-subscription-pipeline-definition.js.map +1 -0
  109. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/generate-resolver.d.ts +7 -0
  110. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/generate-resolver.d.ts.map +1 -0
  111. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/generate-resolver.js +41 -0
  112. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/generate-resolver.js.map +1 -0
  113. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/index.d.ts +8 -0
  114. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/index.d.ts.map +1 -0
  115. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/index.js +17 -0
  116. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/index.js.map +1 -0
  117. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/list-messages-init-resolver.d.ts +2 -3
  118. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/list-messages-init-resolver.d.ts.map +1 -1
  119. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/list-messages-init-resolver.js +11 -13
  120. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/list-messages-init-resolver.js.map +1 -1
  121. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/resolver-function-definition.d.ts +23 -0
  122. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/resolver-function-definition.d.ts.map +1 -0
  123. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/resolver-function-definition.js +18 -0
  124. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/resolver-function-definition.js.map +1 -0
  125. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/send-message-pipeline-definition.d.ts +3 -0
  126. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/send-message-pipeline-definition.d.ts.map +1 -0
  127. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/send-message-pipeline-definition.js +88 -0
  128. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/send-message-pipeline-definition.js.map +1 -0
  129. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/{assistant-messages-subscription-resolver-fn.template.js → templates/assistant-messages-subscription-resolver-fn.template.js} +1 -1
  130. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/templates/assistant-streaming-mutation-resolver-fn.template.js +96 -0
  131. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/{invoke-lambda-resolver-fn.template.js → templates/invoke-lambda-resolver-fn.template.js} +14 -7
  132. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/{list-messages-init-resolver-fn.template.js → templates/list-messages-init-resolver-fn.template.js} +1 -1
  133. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/{utils → tools}/graphql-json-schema-type.d.ts +1 -1
  134. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/tools/graphql-json-schema-type.d.ts.map +1 -0
  135. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/{utils → tools}/graphql-json-schema-type.js +1 -1
  136. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/{utils → tools}/graphql-json-schema-type.js.map +1 -1
  137. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/{utils/tools.d.ts → tools/process-tools.d.ts} +8 -14
  138. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/tools/process-tools.d.ts.map +1 -0
  139. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/{utils/tools.js → tools/process-tools.js} +21 -21
  140. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/tools/process-tools.js.map +1 -0
  141. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-field-handler.d.ts +3 -1
  142. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-field-handler.d.ts.map +1 -1
  143. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-field-handler.js +72 -16
  144. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-field-handler.js.map +1 -1
  145. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-prepare-handler.d.ts +2 -3
  146. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-prepare-handler.d.ts.map +1 -1
  147. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-prepare-handler.js +22 -19
  148. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-prepare-handler.js.map +1 -1
  149. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-resolver-generator.d.ts +2 -7
  150. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-resolver-generator.d.ts.map +1 -1
  151. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-resolver-generator.js +50 -98
  152. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-resolver-generator.js.map +1 -1
  153. package/node_modules/@aws-amplify/graphql-conversation-transformer/package.json +15 -14
  154. package/node_modules/@aws-amplify/graphql-default-value-transformer/CHANGELOG.md +9 -1
  155. package/node_modules/@aws-amplify/graphql-default-value-transformer/package.json +9 -9
  156. package/node_modules/@aws-amplify/graphql-directives/CHANGELOG.md +2 -2
  157. package/node_modules/@aws-amplify/graphql-directives/lib/directives/belongs-to.d.ts.map +1 -1
  158. package/node_modules/@aws-amplify/graphql-directives/lib/directives/belongs-to.js +1 -1
  159. package/node_modules/@aws-amplify/graphql-directives/lib/directives/belongs-to.js.map +1 -1
  160. package/node_modules/@aws-amplify/graphql-directives/lib/directives/conversation.d.ts.map +1 -1
  161. package/node_modules/@aws-amplify/graphql-directives/lib/directives/conversation.js +6 -0
  162. package/node_modules/@aws-amplify/graphql-directives/lib/directives/conversation.js.map +1 -1
  163. package/node_modules/@aws-amplify/graphql-directives/package.json +2 -3
  164. package/node_modules/@aws-amplify/graphql-function-transformer/CHANGELOG.md +9 -1
  165. package/node_modules/@aws-amplify/graphql-function-transformer/package.json +8 -8
  166. package/node_modules/@aws-amplify/graphql-generation-transformer/CHANGELOG.md +9 -1
  167. package/node_modules/@aws-amplify/graphql-generation-transformer/package.json +8 -8
  168. package/node_modules/@aws-amplify/graphql-http-transformer/CHANGELOG.md +9 -1
  169. package/node_modules/@aws-amplify/graphql-http-transformer/package.json +8 -8
  170. package/node_modules/@aws-amplify/graphql-index-transformer/CHANGELOG.md +9 -1
  171. package/node_modules/@aws-amplify/graphql-index-transformer/package.json +9 -9
  172. package/node_modules/@aws-amplify/graphql-maps-to-transformer/CHANGELOG.md +9 -1
  173. package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/assets/mapping-lambda.zip +0 -0
  174. package/node_modules/@aws-amplify/graphql-maps-to-transformer/package.json +12 -12
  175. package/node_modules/@aws-amplify/graphql-model-transformer/CHANGELOG.md +6 -11
  176. package/node_modules/@aws-amplify/graphql-model-transformer/lib/graphql-model-transformer.d.ts.map +1 -1
  177. package/node_modules/@aws-amplify/graphql-model-transformer/lib/graphql-model-transformer.js +2 -7
  178. package/node_modules/@aws-amplify/graphql-model-transformer/lib/graphql-model-transformer.js.map +1 -1
  179. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-lambda.zip +0 -0
  180. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-notification-lambda.zip +0 -0
  181. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-patching-lambda.zip +0 -0
  182. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamo-model-resource-generator.d.ts.map +1 -1
  183. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamo-model-resource-generator.js +3 -12
  184. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamo-model-resource-generator.js.map +1 -1
  185. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamodb-table-construct/index.d.ts +0 -2
  186. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamodb-table-construct/index.d.ts.map +1 -1
  187. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamodb-table-construct/index.js +2 -4
  188. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamodb-table-construct/index.js.map +1 -1
  189. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/amplify-table-manager-handler.d.ts.map +1 -1
  190. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/amplify-table-manager-handler.js +1 -6
  191. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/amplify-table-manager-handler.js.map +1 -1
  192. package/node_modules/@aws-amplify/graphql-model-transformer/package.json +10 -13
  193. package/node_modules/@aws-amplify/graphql-predictions-transformer/CHANGELOG.md +9 -1
  194. package/node_modules/@aws-amplify/graphql-predictions-transformer/lib/predictionsLambdaFunction.zip +0 -0
  195. package/node_modules/@aws-amplify/graphql-predictions-transformer/package.json +8 -8
  196. package/node_modules/@aws-amplify/graphql-relational-transformer/CHANGELOG.md +9 -3
  197. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-belongs-to-transformer.js +0 -3
  198. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-belongs-to-transformer.js.map +1 -1
  199. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/has-many/has-many-directive-ddb-references-transformer.d.ts.map +1 -1
  200. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/has-many/has-many-directive-ddb-references-transformer.js +1 -7
  201. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/has-many/has-many-directive-ddb-references-transformer.js.map +1 -1
  202. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/has-one/has-one-directive-ddb-references-transformer.d.ts.map +1 -1
  203. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/has-one/has-one-directive-ddb-references-transformer.js +1 -7
  204. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/has-one/has-one-directive-ddb-references-transformer.js.map +1 -1
  205. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/types.d.ts +0 -1
  206. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/types.d.ts.map +1 -1
  207. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/utils.d.ts +0 -1
  208. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/utils.d.ts.map +1 -1
  209. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/utils.js +1 -9
  210. package/node_modules/@aws-amplify/graphql-relational-transformer/lib/utils.js.map +1 -1
  211. package/node_modules/@aws-amplify/graphql-relational-transformer/package.json +10 -10
  212. package/node_modules/@aws-amplify/graphql-searchable-transformer/CHANGELOG.md +9 -1
  213. package/node_modules/@aws-amplify/graphql-searchable-transformer/lib/streaming-lambda.zip +0 -0
  214. package/node_modules/@aws-amplify/graphql-searchable-transformer/package.json +9 -9
  215. package/node_modules/@aws-amplify/graphql-sql-transformer/CHANGELOG.md +9 -1
  216. package/node_modules/@aws-amplify/graphql-sql-transformer/package.json +9 -9
  217. package/node_modules/@aws-amplify/graphql-transformer/CHANGELOG.md +9 -1
  218. package/node_modules/@aws-amplify/graphql-transformer/package.json +18 -18
  219. package/node_modules/@aws-amplify/graphql-transformer-core/API.md +0 -4
  220. package/node_modules/@aws-amplify/graphql-transformer-core/CHANGELOG.md +7 -6
  221. package/node_modules/@aws-amplify/graphql-transformer-core/lib/index.d.ts +1 -1
  222. package/node_modules/@aws-amplify/graphql-transformer-core/lib/index.d.ts.map +1 -1
  223. package/node_modules/@aws-amplify/graphql-transformer-core/lib/index.js +2 -3
  224. package/node_modules/@aws-amplify/graphql-transformer-core/lib/index.js.map +1 -1
  225. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/model-datasource-strategy-utils.d.ts +1 -2
  226. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/model-datasource-strategy-utils.d.ts.map +1 -1
  227. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/model-datasource-strategy-utils.js +1 -9
  228. package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/model-datasource-strategy-utils.js.map +1 -1
  229. package/node_modules/@aws-amplify/graphql-transformer-core/package.json +6 -6
  230. package/node_modules/@aws-amplify/graphql-transformer-interfaces/API.md +1 -11
  231. package/node_modules/@aws-amplify/graphql-transformer-interfaces/CHANGELOG.md +0 -11
  232. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/model-datasource/types.d.ts +1 -6
  233. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/model-datasource/types.d.ts.map +1 -1
  234. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/model-datasource/types.js.map +1 -1
  235. package/node_modules/@aws-amplify/graphql-transformer-interfaces/package.json +2 -3
  236. package/node_modules/@aws-amplify/graphql-transformer-interfaces/src/model-datasource/types.ts +0 -10
  237. package/node_modules/@aws-amplify/graphql-transformer-interfaces/tsconfig.tsbuildinfo +1 -1
  238. package/node_modules/graphql-mapping-template/CHANGELOG.md +0 -4
  239. package/node_modules/graphql-mapping-template/package.json +2 -3
  240. package/node_modules/graphql-transformer-common/API.md +1 -0
  241. package/node_modules/graphql-transformer-common/CHANGELOG.md +11 -3
  242. package/node_modules/graphql-transformer-common/lib/TypescriptSchemaConstants.d.ts +1 -0
  243. package/node_modules/graphql-transformer-common/lib/TypescriptSchemaConstants.d.ts.map +1 -1
  244. package/node_modules/graphql-transformer-common/lib/TypescriptSchemaConstants.js +1 -0
  245. package/node_modules/graphql-transformer-common/lib/TypescriptSchemaConstants.js.map +1 -1
  246. package/node_modules/graphql-transformer-common/package.json +3 -3
  247. package/package.json +23 -23
  248. package/src/amplify-graphql-api.ts +12 -12
  249. package/src/internal/metadata.ts +40 -0
  250. package/src/model-datasource-strategy-types.ts +0 -21
  251. package/src/types.ts +1 -1
  252. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/session-model.d.ts +0 -10
  253. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/session-model.d.ts.map +0 -1
  254. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/session-model.js.map +0 -1
  255. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-messages-subscription-resolver.d.ts +0 -4
  256. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-messages-subscription-resolver.d.ts.map +0 -1
  257. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-messages-subscription-resolver.js +0 -16
  258. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-messages-subscription-resolver.js.map +0 -1
  259. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-mutation-resolver.d.ts +0 -4
  260. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-mutation-resolver.d.ts.map +0 -1
  261. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-mutation-resolver.js +0 -25
  262. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-mutation-resolver.js.map +0 -1
  263. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/auth-resolver.d.ts +0 -4
  264. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/auth-resolver.d.ts.map +0 -1
  265. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/auth-resolver.js +0 -16
  266. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/auth-resolver.js.map +0 -1
  267. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/init-resolver.d.ts +0 -3
  268. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/init-resolver.d.ts.map +0 -1
  269. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/init-resolver.js +0 -22
  270. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/init-resolver.js.map +0 -1
  271. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/invoke-lambda-resolver.d.ts +0 -4
  272. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/invoke-lambda-resolver.d.ts.map +0 -1
  273. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/invoke-lambda-resolver.js +0 -77
  274. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/invoke-lambda-resolver.js.map +0 -1
  275. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/verify-session-owner-resolver.d.ts +0 -5
  276. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/verify-session-owner-resolver.d.ts.map +0 -1
  277. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/verify-session-owner-resolver.js +0 -34
  278. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/verify-session-owner-resolver.js.map +0 -1
  279. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/write-message-to-table-resolver.d.ts +0 -4
  280. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/write-message-to-table-resolver.d.ts.map +0 -1
  281. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/write-message-to-table-resolver.js +0 -25
  282. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/write-message-to-table-resolver.js.map +0 -1
  283. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/utils/graphql-json-schema-type.d.ts.map +0 -1
  284. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/utils/tools.d.ts.map +0 -1
  285. package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/utils/tools.js.map +0 -1
  286. package/node_modules/@aws-amplify/graphql-directives/LICENSE +0 -201
  287. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/import-table.d.ts +0 -7
  288. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/import-table.d.ts.map +0 -1
  289. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/import-table.js +0 -205
  290. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/import-table.js.map +0 -1
  291. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/node_modules/.package-lock.json +0 -13
  292. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/node_modules/lodash.isequal/LICENSE +0 -47
  293. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/node_modules/lodash.isequal/README.md +0 -18
  294. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/node_modules/lodash.isequal/index.js +0 -1848
  295. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/node_modules/lodash.isequal/package.json +0 -16
  296. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/package-lock.json +0 -21
  297. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/package.json +0 -11
  298. package/node_modules/@aws-amplify/graphql-transformer-interfaces/LICENSE +0 -201
  299. package/node_modules/graphql-mapping-template/LICENSE +0 -201
  300. /package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/{assistant-mutation-resolver-fn.template.js → templates/assistant-mutation-resolver-fn.template.js} +0 -0
  301. /package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/{auth-resolver-fn.template.js → templates/auth-resolver-fn.template.js} +0 -0
  302. /package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/{init-resolver-fn.template.js → templates/init-resolver-fn.template.js} +0 -0
  303. /package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/{verify-session-owner-resolver-fn.template.js → templates/verify-session-owner-resolver-fn.template.js} +0 -0
  304. /package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/{write-message-to-table-resolver-fn.template.js → templates/write-message-to-table-resolver-fn.template.js} +0 -0
@@ -0,0 +1,41 @@
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.generateResolverFunction = exports.generateResolverPipeline = void 0;
7
+ const graphql_transformer_core_1 = require("@aws-amplify/graphql-transformer-core");
8
+ const fs_extra_1 = __importDefault(require("fs-extra"));
9
+ const graphql_transformer_common_1 = require("graphql-transformer-common");
10
+ const path_1 = __importDefault(require("path"));
11
+ const generateResolverPipeline = (pipelineDefinition, directiveConfig, ctx) => {
12
+ const { typeName, fieldName } = pipelineDefinition.field(directiveConfig);
13
+ const resolverResourceId = graphql_transformer_common_1.ResolverResourceIDs.ResolverResourceID(typeName, fieldName);
14
+ const codeMappingTemplate = (0, exports.generateResolverFunction)(pipelineDefinition.dataSlot, directiveConfig, ctx);
15
+ const dataSourceProvider = pipelineDefinition.dataSlot.dataSource(directiveConfig);
16
+ const requestSlots = pipelineDefinition.requestSlots.map((slot) => slot.slotName);
17
+ const responseSlots = pipelineDefinition.responseSlots.map((slot) => slot.slotName);
18
+ const pipelineResolver = new graphql_transformer_core_1.TransformerResolver(typeName, fieldName, resolverResourceId, { codeMappingTemplate }, requestSlots, responseSlots, dataSourceProvider, graphql_transformer_core_1.APPSYNC_JS_RUNTIME);
19
+ const resolverSlots = [...pipelineDefinition.requestSlots, ...pipelineDefinition.responseSlots];
20
+ for (const slot of resolverSlots) {
21
+ const mappingTemplate = (0, exports.generateResolverFunction)(slot, directiveConfig, ctx);
22
+ pipelineResolver.addJsFunctionToSlot(slot.slotName, mappingTemplate, slot.dataSource(directiveConfig));
23
+ }
24
+ return pipelineResolver;
25
+ };
26
+ exports.generateResolverPipeline = generateResolverPipeline;
27
+ const generateResolverFunction = (definition, config, ctx) => {
28
+ const template = fs_extra_1.default.readFileSync(path_1.default.join(__dirname, 'templates', definition.fileName), 'utf8');
29
+ const substitutions = definition.substitutions(config, ctx);
30
+ const resolver = substituteResolverTemplateValues(template, substitutions);
31
+ return definition.generateTemplate(config, resolver);
32
+ };
33
+ exports.generateResolverFunction = generateResolverFunction;
34
+ const substituteResolverTemplateValues = (resolver, substitutions) => {
35
+ Object.entries(substitutions).forEach(([key, value]) => {
36
+ const replaced = resolver.replace(new RegExp(`\\[\\[${key}\\]\\]`, 'g'), value);
37
+ resolver = replaced;
38
+ });
39
+ return resolver;
40
+ };
41
+ //# sourceMappingURL=generate-resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-resolver.js","sourceRoot":"","sources":["../../src/resolvers/generate-resolver.ts"],"names":[],"mappings":";;;;;;AAAA,oFAAiH;AAEjH,wDAA0B;AAC1B,2EAAiE;AACjE,gDAAwB;AAUjB,MAAM,wBAAwB,GAAG,CACtC,kBAAsC,EACtC,eAAmD,EACnD,GAA+B,EACV,EAAE;IACvB,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,kBAAkB,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC1E,MAAM,kBAAkB,GAAG,gDAAmB,CAAC,kBAAkB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACvF,MAAM,mBAAmB,GAAG,IAAA,gCAAwB,EAAC,kBAAkB,CAAC,QAAQ,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;IACxG,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IACnF,MAAM,YAAY,GAAG,kBAAkB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClF,MAAM,aAAa,GAAG,kBAAkB,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEpF,MAAM,gBAAgB,GAAG,IAAI,8CAAmB,CAC9C,QAAQ,EACR,SAAS,EACT,kBAAkB,EAClB,EAAE,mBAAmB,EAAE,EACvB,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,6CAAkB,CACnB,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,GAAG,kBAAkB,CAAC,YAAY,EAAE,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAChG,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE;QAChC,MAAM,eAAe,GAAG,IAAA,gCAAwB,EAAC,IAAI,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;QAC7E,gBAAgB,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC;KACxG;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC,CAAC;AA9BW,QAAA,wBAAwB,4BA8BnC;AAQK,MAAM,wBAAwB,GAAG,CACtC,UAAsC,EACtC,MAA0C,EAC1C,GAA+B,EACN,EAAE;IAC3B,MAAM,QAAQ,GAAG,kBAAE,CAAC,YAAY,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;IACjG,MAAM,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,gCAAgC,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC3E,OAAO,UAAU,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AACvD,CAAC,CAAC;AATW,QAAA,wBAAwB,4BASnC;AAQF,MAAM,gCAAgC,GAAG,CAAC,QAAgB,EAAE,aAAqC,EAAU,EAAE;IAC3G,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACrD,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,SAAS,GAAG,QAAQ,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;QAChF,QAAQ,GAAG,QAAQ,CAAC;IACtB,CAAC,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { assistantResponsePipelineDefinition } from './assistant-response-pipeline-definition';
2
+ import { assistantResponseStreamPipelineDefinition } from './assistant-response-stream-pipeline-definition';
3
+ import { assistantResponseSubscriptionPipelineDefinition } from './assistant-response-subscription-pipeline-definition';
4
+ import { generateResolverFunction, generateResolverPipeline } from './generate-resolver';
5
+ import { listMessagesInitFunctionDefinition } from './list-messages-init-resolver';
6
+ import { sendMessagePipelineDefinition } from './send-message-pipeline-definition';
7
+ export { assistantResponsePipelineDefinition, assistantResponseStreamPipelineDefinition, assistantResponseSubscriptionPipelineDefinition, generateResolverFunction, generateResolverPipeline, listMessagesInitFunctionDefinition, sendMessagePipelineDefinition, };
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resolvers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mCAAmC,EAAE,MAAM,0CAA0C,CAAC;AAC/F,OAAO,EAAE,yCAAyC,EAAE,MAAM,iDAAiD,CAAC;AAC5G,OAAO,EAAE,+CAA+C,EAAE,MAAM,uDAAuD,CAAC;AACxH,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAE,kCAAkC,EAAE,MAAM,+BAA+B,CAAC;AACnF,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AAEnF,OAAO,EACL,mCAAmC,EACnC,yCAAyC,EACzC,+CAA+C,EAC/C,wBAAwB,EACxB,wBAAwB,EACxB,kCAAkC,EAClC,6BAA6B,GAC9B,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sendMessagePipelineDefinition = exports.listMessagesInitFunctionDefinition = exports.generateResolverPipeline = exports.generateResolverFunction = exports.assistantResponseSubscriptionPipelineDefinition = exports.assistantResponseStreamPipelineDefinition = exports.assistantResponsePipelineDefinition = void 0;
4
+ const assistant_response_pipeline_definition_1 = require("./assistant-response-pipeline-definition");
5
+ Object.defineProperty(exports, "assistantResponsePipelineDefinition", { enumerable: true, get: function () { return assistant_response_pipeline_definition_1.assistantResponsePipelineDefinition; } });
6
+ const assistant_response_stream_pipeline_definition_1 = require("./assistant-response-stream-pipeline-definition");
7
+ Object.defineProperty(exports, "assistantResponseStreamPipelineDefinition", { enumerable: true, get: function () { return assistant_response_stream_pipeline_definition_1.assistantResponseStreamPipelineDefinition; } });
8
+ const assistant_response_subscription_pipeline_definition_1 = require("./assistant-response-subscription-pipeline-definition");
9
+ Object.defineProperty(exports, "assistantResponseSubscriptionPipelineDefinition", { enumerable: true, get: function () { return assistant_response_subscription_pipeline_definition_1.assistantResponseSubscriptionPipelineDefinition; } });
10
+ const generate_resolver_1 = require("./generate-resolver");
11
+ Object.defineProperty(exports, "generateResolverFunction", { enumerable: true, get: function () { return generate_resolver_1.generateResolverFunction; } });
12
+ Object.defineProperty(exports, "generateResolverPipeline", { enumerable: true, get: function () { return generate_resolver_1.generateResolverPipeline; } });
13
+ const list_messages_init_resolver_1 = require("./list-messages-init-resolver");
14
+ Object.defineProperty(exports, "listMessagesInitFunctionDefinition", { enumerable: true, get: function () { return list_messages_init_resolver_1.listMessagesInitFunctionDefinition; } });
15
+ const send_message_pipeline_definition_1 = require("./send-message-pipeline-definition");
16
+ Object.defineProperty(exports, "sendMessagePipelineDefinition", { enumerable: true, get: function () { return send_message_pipeline_definition_1.sendMessagePipelineDefinition; } });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resolvers/index.ts"],"names":[],"mappings":";;;AAAA,qGAA+F;AAQ7F,oHARO,4EAAmC,OAQP;AAPrC,mHAA4G;AAQ1G,0HARO,yFAAyC,OAQP;AAP3C,+HAAwH;AAQtH,gIARO,qGAA+C,OAQP;AAPjD,2DAAyF;AAQvF,yGARO,4CAAwB,OAQP;AACxB,yGATiC,4CAAwB,OASjC;AAR1B,+EAAmF;AASjF,mHATO,gEAAkC,OASP;AARpC,yFAAmF;AASjF,8GATO,gEAA6B,OASP"}
@@ -1,4 +1,3 @@
1
- import { MappingTemplateProvider } from '@aws-amplify/graphql-transformer-interfaces';
2
- import { ConversationDirectiveConfiguration } from '../grapqhl-conversation-transformer';
3
- export declare const listMessageInitMappingTemplate: (config: ConversationDirectiveConfiguration) => MappingTemplateProvider;
1
+ import { ResolverFunctionDefinition } from './resolver-function-definition';
2
+ export declare const listMessagesInitFunctionDefinition: ResolverFunctionDefinition;
4
3
  //# sourceMappingURL=list-messages-init-resolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-messages-init-resolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/list-messages-init-resolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AAGtF,OAAO,EAAE,kCAAkC,EAAE,MAAM,qCAAqC,CAAC;AAOzF,eAAO,MAAM,8BAA8B,WAAY,kCAAkC,KAAG,uBAI3F,CAAC"}
1
+ {"version":3,"file":"list-messages-init-resolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/list-messages-init-resolver.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,0BAA0B,EAC3B,MAAM,gCAAgC,CAAC;AAMxC,eAAO,MAAM,kCAAkC,EAAE,0BAO/C,CAAC"}
@@ -1,16 +1,14 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.listMessageInitMappingTemplate = void 0;
7
- const graphql_transformer_core_1 = require("@aws-amplify/graphql-transformer-core");
8
- const fs_1 = __importDefault(require("fs"));
9
- const path_1 = __importDefault(require("path"));
10
- const listMessageInitMappingTemplate = (config) => {
11
- const resolver = fs_1.default.readFileSync(path_1.default.join(__dirname, 'list-messages-init-resolver-fn.template.js'), 'utf8');
12
- const templateName = `Query.${config.field.name.value}.list-messages-init.js`;
13
- return graphql_transformer_core_1.MappingTemplate.s3MappingFunctionCodeFromString(resolver, templateName);
14
- };
15
- exports.listMessageInitMappingTemplate = listMessageInitMappingTemplate;
3
+ exports.listMessagesInitFunctionDefinition = void 0;
4
+ const name_values_1 = require("../graphql-types/name-values");
5
+ const resolver_function_definition_1 = require("./resolver-function-definition");
6
+ exports.listMessagesInitFunctionDefinition = (0, resolver_function_definition_1.createResolverFunctionDefinition)({
7
+ slotName: 'init',
8
+ fileName: 'list-messages-init-resolver-fn.template.js',
9
+ generateTemplate: (0, resolver_function_definition_1.createS3AssetMappingTemplateGenerator)('Query', 'list-messages-init', (config) => config.field.name.value),
10
+ substitutions: () => ({
11
+ INDEX_NAME: name_values_1.LIST_MESSAGES_INDEX_NAME,
12
+ }),
13
+ });
16
14
  //# sourceMappingURL=list-messages-init-resolver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-messages-init-resolver.js","sourceRoot":"","sources":["../../src/resolvers/list-messages-init-resolver.ts"],"names":[],"mappings":";;;;;;AAAA,oFAAwE;AAExE,4CAAoB;AACpB,gDAAwB;AAQjB,MAAM,8BAA8B,GAAG,CAAC,MAA0C,EAA2B,EAAE;IACpH,MAAM,QAAQ,GAAG,YAAE,CAAC,YAAY,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,4CAA4C,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7G,MAAM,YAAY,GAAG,SAAS,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,wBAAwB,CAAC;IAC9E,OAAO,0CAAe,CAAC,+BAA+B,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;AACjF,CAAC,CAAC;AAJW,QAAA,8BAA8B,kCAIzC"}
1
+ {"version":3,"file":"list-messages-init-resolver.js","sourceRoot":"","sources":["../../src/resolvers/list-messages-init-resolver.ts"],"names":[],"mappings":";;;AAAA,8DAAwE;AACxE,iFAIwC;AAM3B,QAAA,kCAAkC,GAA+B,IAAA,+DAAgC,EAAC;IAC7G,QAAQ,EAAE,MAAM;IAChB,QAAQ,EAAE,4CAA4C;IACtD,gBAAgB,EAAE,IAAA,oEAAqC,EAAC,OAAO,EAAE,oBAAoB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;IAC3H,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;QACpB,UAAU,EAAE,sCAAwB;KACrC,CAAC;CACH,CAAC,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { DataSourceProvider, MappingTemplateProvider, TransformerContextProvider } from '@aws-amplify/graphql-transformer-interfaces';
2
+ import { ConversationDirectiveConfiguration } from '../conversation-directive-configuration';
3
+ export declare const createResolverFunctionDefinition: (definition: Optional<ResolverFunctionDefinition, 'dataSource' | 'substitutions'>) => ResolverFunctionDefinition;
4
+ export type ResolverFunctionDefinition = {
5
+ slotName: string;
6
+ fileName: string;
7
+ generateTemplate: (config: ConversationDirectiveConfiguration, code: string) => MappingTemplateProvider;
8
+ dataSource: (config: ConversationDirectiveConfiguration) => DataSourceProvider | undefined;
9
+ substitutions: (config: ConversationDirectiveConfiguration, ctx: TransformerContextProvider) => Record<string, string>;
10
+ };
11
+ export type PipelineDefinition = {
12
+ requestSlots: ResolverFunctionDefinition[];
13
+ dataSlot: ResolverFunctionDefinition;
14
+ responseSlots: ResolverFunctionDefinition[];
15
+ field: (config: ConversationDirectiveConfiguration) => {
16
+ typeName: string;
17
+ fieldName: string;
18
+ };
19
+ };
20
+ export declare const createS3AssetMappingTemplateGenerator: (parentName: string, slotName: string, fieldName: (config: ConversationDirectiveConfiguration) => string) => (config: ConversationDirectiveConfiguration, code: string) => import("@aws-amplify/graphql-transformer-core/lib/cdk-compat/template-asset").S3MappingJSResolverFunctionCode;
21
+ type Optional<T, K extends keyof T> = Pick<Partial<T>, K> & Omit<T, K>;
22
+ export {};
23
+ //# sourceMappingURL=resolver-function-definition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolver-function-definition.d.ts","sourceRoot":"","sources":["../../src/resolvers/resolver-function-definition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AACtI,OAAO,EAAE,kCAAkC,EAAE,MAAM,yCAAyC,CAAC;AAQ7F,eAAO,MAAM,gCAAgC,eAC/B,SAAS,0BAA0B,EAAE,YAAY,GAAG,eAAe,CAAC,KAC/E,0BAMF,CAAC;AAKF,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,CAAC,MAAM,EAAE,kCAAkC,EAAE,IAAI,EAAE,MAAM,KAAK,uBAAuB,CAAC;IACxG,UAAU,EAAE,CAAC,MAAM,EAAE,kCAAkC,KAAK,kBAAkB,GAAG,SAAS,CAAC;IAC3F,aAAa,EAAE,CAAC,MAAM,EAAE,kCAAkC,EAAE,GAAG,EAAE,0BAA0B,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACxH,CAAC;AAKF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,YAAY,EAAE,0BAA0B,EAAE,CAAC;IAC3C,QAAQ,EAAE,0BAA0B,CAAC;IACrC,aAAa,EAAE,0BAA0B,EAAE,CAAC;IAC5C,KAAK,EAAE,CAAC,MAAM,EAAE,kCAAkC,KAAK;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAChG,CAAC;AAKF,eAAO,MAAM,qCAAqC,eACnC,MAAM,YAAY,MAAM,sBAAsB,kCAAkC,KAAK,MAAM,cAC/F,kCAAkC,QAAQ,MAAM,kHACmD,CAAC;AAE/G,KAAK,QAAQ,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createS3AssetMappingTemplateGenerator = exports.createResolverFunctionDefinition = void 0;
4
+ const graphql_transformer_core_1 = require("@aws-amplify/graphql-transformer-core");
5
+ const createResolverFunctionDefinition = (definition) => {
6
+ var _a, _b;
7
+ return {
8
+ ...definition,
9
+ dataSource: (_a = definition.dataSource) !== null && _a !== void 0 ? _a : NONE_DATA_SOURCE,
10
+ substitutions: (_b = definition.substitutions) !== null && _b !== void 0 ? _b : EMPTY_SUBSTITUTIONS,
11
+ };
12
+ };
13
+ exports.createResolverFunctionDefinition = createResolverFunctionDefinition;
14
+ const createS3AssetMappingTemplateGenerator = (parentName, slotName, fieldName) => (config, code) => graphql_transformer_core_1.MappingTemplate.s3MappingFunctionCodeFromString(code, `${parentName}.${fieldName(config)}.${slotName}.js`);
15
+ exports.createS3AssetMappingTemplateGenerator = createS3AssetMappingTemplateGenerator;
16
+ const NONE_DATA_SOURCE = () => undefined;
17
+ const EMPTY_SUBSTITUTIONS = () => ({});
18
+ //# sourceMappingURL=resolver-function-definition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolver-function-definition.js","sourceRoot":"","sources":["../../src/resolvers/resolver-function-definition.ts"],"names":[],"mappings":";;;AAEA,oFAAwE;AAOjE,MAAM,gCAAgC,GAAG,CAC9C,UAAgF,EACpD,EAAE;;IAC9B,OAAO;QACL,GAAG,UAAU;QACb,UAAU,EAAE,MAAA,UAAU,CAAC,UAAU,mCAAI,gBAAgB;QACrD,aAAa,EAAE,MAAA,UAAU,CAAC,aAAa,mCAAI,mBAAmB;KAC/D,CAAC;AACJ,CAAC,CAAC;AARW,QAAA,gCAAgC,oCAQ3C;AA0BK,MAAM,qCAAqC,GAChD,CAAC,UAAkB,EAAE,QAAgB,EAAE,SAAiE,EAAE,EAAE,CAC5G,CAAC,MAA0C,EAAE,IAAY,EAAE,EAAE,CAC3D,0CAAe,CAAC,+BAA+B,CAAC,IAAI,EAAE,GAAG,UAAU,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,QAAQ,KAAK,CAAC,CAAC;AAHlG,QAAA,qCAAqC,yCAG6D;AAI/G,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC;AACzC,MAAM,mBAAmB,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { PipelineDefinition } from './resolver-function-definition';
2
+ export declare const sendMessagePipelineDefinition: PipelineDefinition;
3
+ //# sourceMappingURL=send-message-pipeline-definition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send-message-pipeline-definition.d.ts","sourceRoot":"","sources":["../../src/resolvers/send-message-pipeline-definition.ts"],"names":[],"mappings":"AAQA,OAAO,EAGL,kBAAkB,EAEnB,MAAM,gCAAgC,CAAC;AAKxC,eAAO,MAAM,6BAA6B,EAAE,kBAK3C,CAAC"}
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sendMessagePipelineDefinition = void 0;
4
+ const graphql_transformer_core_1 = require("@aws-amplify/graphql-transformer-core");
5
+ const name_values_1 = require("../graphql-types/name-values");
6
+ const resolver_function_definition_1 = require("./resolver-function-definition");
7
+ exports.sendMessagePipelineDefinition = {
8
+ requestSlots: [init(), auth(), verifySessionOwner(), writeMessageToTable()],
9
+ dataSlot: invokeLambda(),
10
+ responseSlots: [],
11
+ field: (config) => ({ typeName: 'Mutation', fieldName: config.field.name.value }),
12
+ };
13
+ function init() {
14
+ return (0, resolver_function_definition_1.createResolverFunctionDefinition)({
15
+ slotName: 'init',
16
+ fileName: 'init-resolver-fn.template.js',
17
+ generateTemplate: (_, code) => graphql_transformer_core_1.MappingTemplate.inlineTemplateFromString(code),
18
+ substitutions: (_, ctx) => ({
19
+ GRAPHQL_API_ENDPOINT: ctx.api.graphqlUrl,
20
+ }),
21
+ });
22
+ }
23
+ function auth() {
24
+ return (0, resolver_function_definition_1.createResolverFunctionDefinition)({
25
+ slotName: 'auth',
26
+ fileName: 'auth-resolver-fn.template.js',
27
+ generateTemplate: templateGenerator('auth'),
28
+ });
29
+ }
30
+ function verifySessionOwner() {
31
+ return (0, resolver_function_definition_1.createResolverFunctionDefinition)({
32
+ slotName: 'verifySessionOwner',
33
+ fileName: 'verify-session-owner-resolver-fn.template.js',
34
+ generateTemplate: templateGenerator('verify-session-owner'),
35
+ dataSource: (config) => config.dataSources.conversationTableDataSource,
36
+ substitutions: () => ({
37
+ CONVERSATION_ID_PARENT: 'ctx.args',
38
+ }),
39
+ });
40
+ }
41
+ function writeMessageToTable() {
42
+ return (0, resolver_function_definition_1.createResolverFunctionDefinition)({
43
+ slotName: 'writeMessageToTable',
44
+ fileName: 'write-message-to-table-resolver-fn.template.js',
45
+ generateTemplate: templateGenerator('write-message-to-table'),
46
+ dataSource: (config) => config.dataSources.messageTableDataSource,
47
+ substitutions: (config) => ({
48
+ CONVERSATION_MESSAGE_TYPE_NAME: config.message.model.name.value,
49
+ }),
50
+ });
51
+ }
52
+ function invokeLambda() {
53
+ return (0, resolver_function_definition_1.createResolverFunctionDefinition)({
54
+ slotName: 'data',
55
+ fileName: 'invoke-lambda-resolver-fn.template.js',
56
+ generateTemplate: templateGenerator('invoke-lambda'),
57
+ dataSource: (config) => config.dataSources.lambdaFunctionDataSource,
58
+ substitutions: invokeLambdaResolverSubstitutions,
59
+ });
60
+ }
61
+ function invokeLambdaResolverSubstitutions(config) {
62
+ return {
63
+ MODEL_ID: JSON.stringify(config.aiModel),
64
+ SYSTEM_PROMPT: JSON.stringify(config.systemPrompt),
65
+ DATA_TOOLS: JSON.stringify(config.toolSpec),
66
+ SELECTION_SET: streamingSelectionSet,
67
+ INFERENCE_CONFIGURATION: JSON.stringify(config.inferenceConfiguration),
68
+ RESPONSE_MUTATION_NAME: config.assistantResponseMutation.field.name.value,
69
+ RESPONSE_MUTATION_INPUT_TYPE_NAME: config.assistantResponseMutation.input.name.value,
70
+ MESSAGE_MODEL_NAME: config.message.model.name.value,
71
+ GET_QUERY_NAME: (0, name_values_1.getConversationMessageGetQueryName)(config),
72
+ GET_QUERY_INPUT_TYPE_NAME: name_values_1.CONVERSATION_MESSAGE_GET_QUERY_INPUT_TYPE_NAME,
73
+ LIST_QUERY_NAME: (0, name_values_1.getConversationMessageListQueryName)(config),
74
+ LIST_QUERY_INPUT_TYPE_NAME: (0, name_values_1.getConversationMessageListQueryInputTypeName)(config),
75
+ LIST_QUERY_LIMIT: 'undefined',
76
+ STREAMING_RESPONSE_MUTATION_NAME: config.assistantResponseStreamingMutation.field.name.value,
77
+ STREAMING_RESPONSE_MUTATION_INPUT_TYPE_NAME: config.assistantResponseStreamingMutation.input.name.value,
78
+ };
79
+ }
80
+ function fieldName(config) {
81
+ return config.field.name.value;
82
+ }
83
+ function templateGenerator(slotName) {
84
+ return (0, resolver_function_definition_1.createS3AssetMappingTemplateGenerator)('Mutation', slotName, fieldName);
85
+ }
86
+ const selectionSet = `id conversationId content { image { format source { bytes }} text toolUse { toolUseId name input } toolResult { status toolUseId content { json text image { format source { bytes }} document { format name source { bytes }} }}} role owner createdAt updatedAt`;
87
+ const streamingSelectionSet = `associatedUserMessageId contentBlockDeltaIndex contentBlockDoneAtIndex contentBlockIndex contentBlockText contentBlockToolUse { toolUseId name input } conversationId id stopReason owner errors { errorType message }`;
88
+ //# sourceMappingURL=send-message-pipeline-definition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send-message-pipeline-definition.js","sourceRoot":"","sources":["../../src/resolvers/send-message-pipeline-definition.ts"],"names":[],"mappings":"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"}
@@ -32,7 +32,7 @@ export function request(ctx) {
32
32
  if (!isAuthorized && ctx.stash.authFilter.length === 0) {
33
33
  util.unauthorized();
34
34
  }
35
- ctx.args.filter = { ...ctx.args.filter, and: [{ conversationId: { eq: ctx.args.conversationId } }] };
35
+ ctx.args.filter = { ...ctx.stash.authFilter, and: [{ conversationId: { eq: ctx.args.conversationId } }] };
36
36
  return { version: '2018-05-29', payload: {} };
37
37
  }
38
38
 
@@ -0,0 +1,96 @@
1
+ import { util } from '@aws-appsync/utils';
2
+ import * as ddb from '@aws-appsync/utils/dynamodb';
3
+
4
+ /**
5
+ * Sends a request to the attached data source
6
+ * @param {import('@aws-appsync/utils').Context} ctx the context
7
+ * @returns {*} the request
8
+ */
9
+ export function request(ctx) {
10
+ const {
11
+ conversationId,
12
+ associatedUserMessageId,
13
+ accumulatedTurnContent,
14
+ contentBlockIndex,
15
+ errors,
16
+ } = ctx.args.input;
17
+
18
+ const { owner } = ctx.args;
19
+
20
+ if (errors) {
21
+ runtime.earlyReturn({
22
+ id: `${associatedUserMessageId}#response`,
23
+ conversationId,
24
+ associatedUserMessageId,
25
+ contentBlockIndex,
26
+ errors,
27
+ owner,
28
+ });
29
+ }
30
+ const { createdAt, updatedAt } = ctx.stash.defaultValues;
31
+
32
+ const assistantResponseId = `${associatedUserMessageId}#response`;
33
+ const expression = 'SET #typename = :typename, #conversationId = :conversationId, #associatedUserMessageId = :associatedUserMessageId, #role = :role, #content = :content, #owner = :owner, #createdAt = if_not_exists(#createdAt, :createdAt), #updatedAt = :updatedAt';
34
+
35
+ const expressionValues = util.dynamodb.toMapValues({
36
+ ':typename': '[[CONVERSATION_MESSAGE_TYPE_NAME]]',
37
+ ':conversationId': conversationId,
38
+ ':associatedUserMessageId': associatedUserMessageId,
39
+ ':role': 'assistant',
40
+ ':content': accumulatedTurnContent,
41
+ ':owner': owner,
42
+ ':createdAt': createdAt,
43
+ ':updatedAt': updatedAt,
44
+ });
45
+
46
+ // https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ReservedWords.html
47
+ const expressionNames = {
48
+ '#typename': '__typename',
49
+ '#conversationId': 'conversationId',
50
+ '#associatedUserMessageId': 'associatedUserMessageId',
51
+ '#role': 'role',
52
+ '#content': 'content',
53
+ '#owner': 'owner',
54
+ '#createdAt': 'createdAt',
55
+ '#updatedAt': 'updatedAt',
56
+ };
57
+
58
+ return {
59
+ operation: 'UpdateItem',
60
+ key: util.dynamodb.toMapValues({ id: assistantResponseId }),
61
+ update: {
62
+ expression,
63
+ expressionValues,
64
+ expressionNames,
65
+ },
66
+ };
67
+ }
68
+
69
+ /**
70
+ * Returns the resolver result
71
+ * @param {import('@aws-appsync/utils').Context} ctx the context
72
+ * @returns {*} the result
73
+ */
74
+ export function response(ctx) {
75
+ console.log('>>> response function ctx <<<', ctx);
76
+ if (ctx.error) {
77
+ util.error(ctx.error.message, ctx.error.type);
78
+ }
79
+ const streamId = `${ctx.args.input.associatedUserMessageId}#stream`;
80
+ const { owner } = ctx.args;
81
+ const event = ctx.args.input;
82
+
83
+ const streamEvent = {
84
+ ...event,
85
+ __typename: 'ConversationMessageStreamPart',
86
+ id: streamId,
87
+ owner,
88
+ };
89
+
90
+ // TODO: The lambda event should provide the toolUse directly.
91
+ if (event.contentBlockToolUse && event.contentBlockToolUse.toolUse) {
92
+ streamEvent.contentBlockToolUse = event.contentBlockToolUse.toolUse;
93
+ }
94
+
95
+ return streamEvent;
96
+ }
@@ -4,21 +4,27 @@ export function request(ctx) {
4
4
  const { args, request } = ctx;
5
5
  const { graphqlApiEndpoint } = ctx.stash;
6
6
 
7
- [[TOOL_DEFINITIONS_LINE]]
8
7
  const selectionSet = '[[SELECTION_SET]]';
9
8
 
10
- const responseMutation = {
11
- name: '[[RESPONSE_MUTATION_NAME]]',
12
- inputTypeName: '[[RESPONSE_MUTATION_INPUT_TYPE_NAME]]',
9
+ const streamingResponseMutation = {
10
+ name: '[[STREAMING_RESPONSE_MUTATION_NAME]]',
11
+ inputTypeName: '[[STREAMING_RESPONSE_MUTATION_INPUT_TYPE_NAME]]',
13
12
  selectionSet,
14
13
  };
14
+
15
15
  const currentMessageId = ctx.stash.defaultValues.id;
16
- [[MODEL_CONFIGURATION_LINE]]
16
+
17
+ const modelConfiguration = {
18
+ modelId: [[MODEL_ID]],
19
+ systemPrompt: [[SYSTEM_PROMPT]],
20
+ inferenceConfiguration: [[INFERENCE_CONFIGURATION]],
21
+ };
17
22
 
18
23
  const clientTools = args.toolConfiguration?.tools?.map((tool) => {
19
24
  return { ...tool.toolSpec };
20
25
  });
21
- [[TOOLS_CONFIGURATION_LINE]]
26
+ const dataTools = [[DATA_TOOLS]];
27
+ const toolsConfiguration = { dataTools, clientTools };
22
28
 
23
29
  const messageHistoryQuery = {
24
30
  getQueryName: '[[GET_QUERY_NAME]]',
@@ -32,12 +38,13 @@ export function request(ctx) {
32
38
  const payload = {
33
39
  conversationId: args.conversationId,
34
40
  currentMessageId,
35
- responseMutation,
41
+ responseMutation: streamingResponseMutation,
36
42
  graphqlApiEndpoint,
37
43
  modelConfiguration,
38
44
  request: { headers: { authorization: authHeader } },
39
45
  messageHistoryQuery,
40
46
  toolsConfiguration,
47
+ streamResponse: true,
41
48
  };
42
49
 
43
50
  return {
@@ -1,5 +1,5 @@
1
1
  export function request(ctx) {
2
- ctx.stash.metadata.index = 'gsi-ConversationMessage.conversationId.createdAt';
2
+ ctx.stash.metadata.index = '[[INDEX_NAME]]';
3
3
  return {};
4
4
  }
5
5
 
@@ -1,5 +1,5 @@
1
+ import { JSONSchema } from '@aws-amplify/graphql-transformer-core';
1
2
  import { TransformerContextProvider } from '@aws-amplify/graphql-transformer-interfaces';
2
3
  import { TypeNode } from 'graphql';
3
- import { JSONSchema } from '@aws-amplify/graphql-transformer-core';
4
4
  export declare function generateJSONSchemaFromTypeNode(typeNode: TypeNode, ctx: TransformerContextProvider, schema?: JSONSchema): JSONSchema;
5
5
  //# sourceMappingURL=graphql-json-schema-type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphql-json-schema-type.d.ts","sourceRoot":"","sources":["../../src/tools/graphql-json-schema-type.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAIX,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AACzF,OAAO,EAOL,QAAQ,EAET,MAAM,SAAS,CAAC;AAUjB,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,0BAA0B,EAC/B,MAAM,GAAE,UAAyB,GAChC,UAAU,CASZ"}
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.generateJSONSchemaFromTypeNode = void 0;
4
+ const graphql_transformer_core_1 = require("@aws-amplify/graphql-transformer-core");
4
5
  const graphql_1 = require("graphql");
5
6
  const graphql_transformer_common_1 = require("graphql-transformer-common");
6
- const graphql_transformer_core_1 = require("@aws-amplify/graphql-transformer-core");
7
7
  function generateJSONSchemaFromTypeNode(typeNode, ctx, schema = { type: '' }) {
8
8
  switch (typeNode.kind) {
9
9
  case graphql_1.Kind.NAMED_TYPE:
@@ -1 +1 @@
1
- {"version":3,"file":"graphql-json-schema-type.js","sourceRoot":"","sources":["../../src/utils/graphql-json-schema-type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graphql-json-schema-type.js","sourceRoot":"","sources":["../../src/tools/graphql-json-schema-type.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,19 @@
1
1
  import { JSONSchema } from '@aws-amplify/graphql-transformer-core';
2
2
  import { TransformerContextProvider } from '@aws-amplify/graphql-transformer-interfaces';
3
- export type ToolDefinition = {
3
+ import { ToolDefinition } from '../conversation-directive-configuration';
4
+ export type Tool = {
4
5
  name: string;
5
6
  description: string;
6
- };
7
- export type Tools = {
8
- tools: Tool[];
7
+ inputSchema: {
8
+ json: JSONSchema;
9
+ };
10
+ graphqlRequestInputDescriptor?: GraphQLRequestInputDescriptor;
9
11
  };
10
12
  type GraphQLRequestInputDescriptor = {
11
13
  selectionSet: string;
12
14
  propertyTypes: Record<string, string>;
13
15
  queryName: string;
14
16
  };
15
- type Tool = {
16
- name: string;
17
- description: string;
18
- inputSchema: {
19
- json: JSONSchema;
20
- };
21
- graphqlRequestInputDescriptor?: GraphQLRequestInputDescriptor;
22
- };
23
- export declare const processTools: (toolDefinitions: ToolDefinition[], ctx: TransformerContextProvider) => Tools | undefined;
17
+ export declare const processTools: (toolDefinitions: ToolDefinition[], ctx: TransformerContextProvider) => Tool[] | undefined;
24
18
  export {};
25
- //# sourceMappingURL=tools.d.ts.map
19
+ //# sourceMappingURL=process-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-tools.d.ts","sourceRoot":"","sources":["../../src/tools/process-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,UAAU,EAAE,MAAM,uCAAuC,CAAC;AAC1F,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AAGzF,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAGzE,MAAM,MAAM,IAAI,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,UAAU,CAAC;KAClB,CAAC;IACF,6BAA6B,CAAC,EAAE,6BAA6B,CAAC;CAC/D,CAAC;AAEF,KAAK,6BAA6B,GAAG;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAUF,eAAO,MAAM,YAAY,oBAAqB,cAAc,EAAE,OAAO,0BAA0B,KAAG,IAAI,EAAE,GAAG,SAyB1G,CAAC"}
@@ -4,6 +4,26 @@ exports.processTools = void 0;
4
4
  const graphql_transformer_core_1 = require("@aws-amplify/graphql-transformer-core");
5
5
  const graphql_transformer_common_1 = require("graphql-transformer-common");
6
6
  const graphql_json_schema_type_1 = require("./graphql-json-schema-type");
7
+ const processTools = (toolDefinitions, ctx) => {
8
+ if (!toolDefinitions || toolDefinitions.length === 0) {
9
+ return undefined;
10
+ }
11
+ const queryType = ctx.output.getType('Query');
12
+ if (!queryType.fields || queryType.fields.length === 0) {
13
+ throw new graphql_transformer_core_1.InvalidDirectiveError('Tools must be queries - no queries found in the schema');
14
+ }
15
+ const tools = toolDefinitions.map((toolDefinition) => {
16
+ var _a;
17
+ const { name: toolName, description } = toolDefinition;
18
+ const queryField = (_a = queryType.fields) === null || _a === void 0 ? void 0 : _a.find((field) => field.name.value === toolName);
19
+ if (!queryField) {
20
+ throw new graphql_transformer_core_1.InvalidDirectiveError(`Tool "${toolName}" defined in @conversation directive has no matching Query field definition`);
21
+ }
22
+ return createTool(toolName, description, queryField, ctx);
23
+ });
24
+ return tools;
25
+ };
26
+ exports.processTools = processTools;
7
27
  const generateSelectionSet = (currentType, ctx, seenTypes = new Set(), fieldName = '') => {
8
28
  if ((0, graphql_transformer_common_1.isScalar)(currentType)) {
9
29
  return fieldName;
@@ -37,26 +57,6 @@ const getObjectTypeFromName = (name, ctx) => {
37
57
  }
38
58
  return node;
39
59
  };
40
- const processTools = (toolDefinitions, ctx) => {
41
- if (!toolDefinitions || toolDefinitions.length === 0) {
42
- return undefined;
43
- }
44
- const queryType = ctx.output.getType('Query');
45
- if (!queryType.fields || queryType.fields.length === 0) {
46
- throw new graphql_transformer_core_1.InvalidDirectiveError('Tools must be queries - no queries found in the schema');
47
- }
48
- const tools = toolDefinitions.map((toolDefinition) => {
49
- var _a;
50
- const { name: toolName, description } = toolDefinition;
51
- const queryField = (_a = queryType.fields) === null || _a === void 0 ? void 0 : _a.find((field) => field.name.value === toolName);
52
- if (!queryField) {
53
- throw new graphql_transformer_core_1.InvalidDirectiveError(`Tool "${toolName}" defined in @conversation directive has no matching Query field definition`);
54
- }
55
- return createTool(toolName, description, queryField, ctx);
56
- });
57
- return { tools };
58
- };
59
- exports.processTools = processTools;
60
60
  const createTool = (toolName, description, queryField, ctx) => {
61
61
  const { type: returnType, arguments: fieldArguments } = queryField;
62
62
  const { properties, required } = generateToolProperties(fieldArguments, ctx, toolName, returnType);
@@ -113,4 +113,4 @@ const generatePropertyTypes = (fieldArguments, toolName, returnType) => {
113
113
  const isModelListOperation = (toolName, responseType) => {
114
114
  return (0, graphql_transformer_common_1.getBaseType)(responseType).startsWith('Model') && toolName.startsWith('list');
115
115
  };
116
- //# sourceMappingURL=tools.js.map
116
+ //# sourceMappingURL=process-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-tools.js","sourceRoot":"","sources":["../../src/tools/process-tools.ts"],"names":[],"mappings":"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"}