@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.
- package/.jsii +79 -152
- package/API.md +1 -11
- package/CHANGELOG.md +21 -1
- package/lib/amplify-dynamodb-table-wrapper.js +1 -1
- package/lib/amplify-graphql-api.js +9 -12
- package/lib/amplify-graphql-definition.js +1 -1
- package/lib/internal/metadata.d.ts +4 -0
- package/lib/internal/metadata.js +42 -0
- package/lib/model-datasource-strategy-types.d.ts +1 -19
- package/lib/model-datasource-strategy-types.js +1 -1
- package/lib/sql-model-datasource-strategy.js +1 -1
- package/lib/types.d.ts +1 -1
- package/lib/types.js +1 -1
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/conversation_handler_construct.d.ts +19 -1
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/conversation_handler_construct.js +36 -2
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/index.d.ts +2 -2
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/index.js +1 -1
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/bedrock_converse_adapter.d.ts +11 -4
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/bedrock_converse_adapter.js +279 -67
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/conversation_message_history_retriever.js +34 -8
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/conversation_turn_executor.d.ts +2 -2
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/conversation_turn_executor.js +17 -4
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/conversation_turn_response_sender.d.ts +17 -3
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/conversation_turn_response_sender.js +56 -18
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/default_handler.d.ts +1 -1
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/event-tools-provider/event_tools_provider.js +2 -2
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/event-tools-provider/graphql_tool.d.ts +7 -7
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/event-tools-provider/graphql_tool.js +3 -2
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/executable_tool_factory.d.ts +7 -0
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/executable_tool_factory.js +16 -0
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/graphql_request_executor.d.ts +2 -1
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/graphql_request_executor.js +4 -2
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/index.d.ts +3 -2
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/index.js +4 -2
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/types.d.ts +71 -14
- package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/types.js +1 -1
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/README.md +4 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/ai/conversation/index.d.ts +23 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/ai/conversation/index.js +10 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/ai/conversation/v1.d.ts +22 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/ai/conversation/v1.js +11 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/auth/index.d.ts +118 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/auth/index.js +10 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/auth/v1.d.ts +117 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/auth/v1.js +31 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/custom/index.d.ts +23 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/custom/index.js +10 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/custom/v1.d.ts +22 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/custom/v1.js +11 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/function/index.d.ts +23 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/function/index.js +10 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/function/v1.d.ts +22 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/function/v1.js +11 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/graphql/index.d.ts +59 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/graphql/index.js +12 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/graphql/v1.d.ts +59 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/graphql/v1.js +25 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/index.d.ts +515 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/index.js +112 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/platform/index.d.ts +2 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/platform/index.js +18 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/platform/stack_metadata_schemas.d.ts +42 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/platform/stack_metadata_schemas.js +22 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/stack/index.d.ts +28 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/stack/index.js +10 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/stack/v1.d.ts +27 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/stack/v1.js +12 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/storage/index.d.ts +33 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/storage/index.js +10 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/storage/v1.d.ts +32 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/lib/storage/v1.js +33 -0
- package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/backend-output-schemas/package.json +27 -0
- package/node_modules/@aws-amplify/ai-constructs/package.json +9 -2
- package/node_modules/@aws-amplify/graphql-auth-transformer/CHANGELOG.md +9 -1
- package/node_modules/@aws-amplify/graphql-auth-transformer/package.json +14 -14
- package/node_modules/@aws-amplify/graphql-conversation-transformer/CHANGELOG.md +20 -2
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/conversation-directive-configuration.d.ts +48 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/conversation-directive-configuration.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/conversation-directive-configuration.js +3 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/conversation-directive-configuration.js.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/conversation-model.d.ts +10 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/conversation-model.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/{session-model.js → conversation-model.js} +18 -24
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/conversation-model.js.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/message-model.d.ts +14 -10
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/message-model.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/message-model.js +99 -46
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/message-model.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/name-values.d.ts +15 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/name-values.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/name-values.js +32 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/name-values.js.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/grapqhl-conversation-transformer.d.ts +1 -24
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/grapqhl-conversation-transformer.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/grapqhl-conversation-transformer.js +1 -7
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/grapqhl-conversation-transformer.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-pipeline-definition.d.ts +3 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-pipeline-definition.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-pipeline-definition.js +53 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-pipeline-definition.js.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-stream-pipeline-definition.d.ts +3 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-stream-pipeline-definition.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-stream-pipeline-definition.js +58 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-stream-pipeline-definition.js.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-subscription-pipeline-definition.d.ts +3 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-subscription-pipeline-definition.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-subscription-pipeline-definition.js +21 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-response-subscription-pipeline-definition.js.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/generate-resolver.d.ts +7 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/generate-resolver.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/generate-resolver.js +41 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/generate-resolver.js.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/index.d.ts +8 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/index.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/index.js +17 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/index.js.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/list-messages-init-resolver.d.ts +2 -3
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/list-messages-init-resolver.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/list-messages-init-resolver.js +11 -13
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/list-messages-init-resolver.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/resolver-function-definition.d.ts +23 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/resolver-function-definition.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/resolver-function-definition.js +18 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/resolver-function-definition.js.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/send-message-pipeline-definition.d.ts +3 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/send-message-pipeline-definition.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/send-message-pipeline-definition.js +88 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/send-message-pipeline-definition.js.map +1 -0
- 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
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/templates/assistant-streaming-mutation-resolver-fn.template.js +96 -0
- 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
- 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
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/{utils → tools}/graphql-json-schema-type.d.ts +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/tools/graphql-json-schema-type.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/{utils → tools}/graphql-json-schema-type.js +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/{utils → tools}/graphql-json-schema-type.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/{utils/tools.d.ts → tools/process-tools.d.ts} +8 -14
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/tools/process-tools.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/{utils/tools.js → tools/process-tools.js} +21 -21
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/tools/process-tools.js.map +1 -0
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-field-handler.d.ts +3 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-field-handler.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-field-handler.js +72 -16
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-field-handler.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-prepare-handler.d.ts +2 -3
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-prepare-handler.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-prepare-handler.js +22 -19
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-prepare-handler.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-resolver-generator.d.ts +2 -7
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-resolver-generator.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-resolver-generator.js +50 -98
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/transformer-steps/conversation-resolver-generator.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/package.json +15 -14
- package/node_modules/@aws-amplify/graphql-default-value-transformer/CHANGELOG.md +9 -1
- package/node_modules/@aws-amplify/graphql-default-value-transformer/package.json +9 -9
- package/node_modules/@aws-amplify/graphql-directives/CHANGELOG.md +2 -2
- package/node_modules/@aws-amplify/graphql-directives/lib/directives/belongs-to.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-directives/lib/directives/belongs-to.js +1 -1
- package/node_modules/@aws-amplify/graphql-directives/lib/directives/belongs-to.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-directives/lib/directives/conversation.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-directives/lib/directives/conversation.js +6 -0
- package/node_modules/@aws-amplify/graphql-directives/lib/directives/conversation.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-directives/package.json +2 -3
- package/node_modules/@aws-amplify/graphql-function-transformer/CHANGELOG.md +9 -1
- package/node_modules/@aws-amplify/graphql-function-transformer/package.json +8 -8
- package/node_modules/@aws-amplify/graphql-generation-transformer/CHANGELOG.md +9 -1
- package/node_modules/@aws-amplify/graphql-generation-transformer/package.json +8 -8
- package/node_modules/@aws-amplify/graphql-http-transformer/CHANGELOG.md +9 -1
- package/node_modules/@aws-amplify/graphql-http-transformer/package.json +8 -8
- package/node_modules/@aws-amplify/graphql-index-transformer/CHANGELOG.md +9 -1
- package/node_modules/@aws-amplify/graphql-index-transformer/package.json +9 -9
- package/node_modules/@aws-amplify/graphql-maps-to-transformer/CHANGELOG.md +9 -1
- package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/assets/mapping-lambda.zip +0 -0
- package/node_modules/@aws-amplify/graphql-maps-to-transformer/package.json +12 -12
- package/node_modules/@aws-amplify/graphql-model-transformer/CHANGELOG.md +6 -11
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/graphql-model-transformer.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/graphql-model-transformer.js +2 -7
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/graphql-model-transformer.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-lambda.zip +0 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-notification-lambda.zip +0 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-patching-lambda.zip +0 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamo-model-resource-generator.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamo-model-resource-generator.js +3 -12
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamo-model-resource-generator.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamodb-table-construct/index.d.ts +0 -2
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamodb-table-construct/index.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamodb-table-construct/index.js +2 -4
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamodb-table-construct/index.js.map +1 -1
- 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
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/amplify-table-manager-handler.js +1 -6
- 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
- package/node_modules/@aws-amplify/graphql-model-transformer/package.json +10 -13
- package/node_modules/@aws-amplify/graphql-predictions-transformer/CHANGELOG.md +9 -1
- package/node_modules/@aws-amplify/graphql-predictions-transformer/lib/predictionsLambdaFunction.zip +0 -0
- package/node_modules/@aws-amplify/graphql-predictions-transformer/package.json +8 -8
- package/node_modules/@aws-amplify/graphql-relational-transformer/CHANGELOG.md +9 -3
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-belongs-to-transformer.js +0 -3
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/graphql-belongs-to-transformer.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/has-many/has-many-directive-ddb-references-transformer.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/has-many/has-many-directive-ddb-references-transformer.js +1 -7
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/has-many/has-many-directive-ddb-references-transformer.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/has-one/has-one-directive-ddb-references-transformer.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/has-one/has-one-directive-ddb-references-transformer.js +1 -7
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/has-one/has-one-directive-ddb-references-transformer.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/types.d.ts +0 -1
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/types.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/utils.d.ts +0 -1
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/utils.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/utils.js +1 -9
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/utils.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-relational-transformer/package.json +10 -10
- package/node_modules/@aws-amplify/graphql-searchable-transformer/CHANGELOG.md +9 -1
- package/node_modules/@aws-amplify/graphql-searchable-transformer/lib/streaming-lambda.zip +0 -0
- package/node_modules/@aws-amplify/graphql-searchable-transformer/package.json +9 -9
- package/node_modules/@aws-amplify/graphql-sql-transformer/CHANGELOG.md +9 -1
- package/node_modules/@aws-amplify/graphql-sql-transformer/package.json +9 -9
- package/node_modules/@aws-amplify/graphql-transformer/CHANGELOG.md +9 -1
- package/node_modules/@aws-amplify/graphql-transformer/package.json +18 -18
- package/node_modules/@aws-amplify/graphql-transformer-core/API.md +0 -4
- package/node_modules/@aws-amplify/graphql-transformer-core/CHANGELOG.md +7 -6
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/index.d.ts +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/index.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/index.js +2 -3
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/index.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/model-datasource-strategy-utils.d.ts +1 -2
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/model-datasource-strategy-utils.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/model-datasource-strategy-utils.js +1 -9
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/model-datasource-strategy-utils.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-core/package.json +6 -6
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/API.md +1 -11
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/CHANGELOG.md +0 -11
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/model-datasource/types.d.ts +1 -6
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/model-datasource/types.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/model-datasource/types.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/package.json +2 -3
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/src/model-datasource/types.ts +0 -10
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/tsconfig.tsbuildinfo +1 -1
- package/node_modules/graphql-mapping-template/CHANGELOG.md +0 -4
- package/node_modules/graphql-mapping-template/package.json +2 -3
- package/node_modules/graphql-transformer-common/API.md +1 -0
- package/node_modules/graphql-transformer-common/CHANGELOG.md +11 -3
- package/node_modules/graphql-transformer-common/lib/TypescriptSchemaConstants.d.ts +1 -0
- package/node_modules/graphql-transformer-common/lib/TypescriptSchemaConstants.d.ts.map +1 -1
- package/node_modules/graphql-transformer-common/lib/TypescriptSchemaConstants.js +1 -0
- package/node_modules/graphql-transformer-common/lib/TypescriptSchemaConstants.js.map +1 -1
- package/node_modules/graphql-transformer-common/package.json +3 -3
- package/package.json +23 -23
- package/src/amplify-graphql-api.ts +12 -12
- package/src/internal/metadata.ts +40 -0
- package/src/model-datasource-strategy-types.ts +0 -21
- package/src/types.ts +1 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/session-model.d.ts +0 -10
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/session-model.d.ts.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/graphql-types/session-model.js.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-messages-subscription-resolver.d.ts +0 -4
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-messages-subscription-resolver.d.ts.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-messages-subscription-resolver.js +0 -16
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-messages-subscription-resolver.js.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-mutation-resolver.d.ts +0 -4
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-mutation-resolver.d.ts.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-mutation-resolver.js +0 -25
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/assistant-mutation-resolver.js.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/auth-resolver.d.ts +0 -4
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/auth-resolver.d.ts.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/auth-resolver.js +0 -16
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/auth-resolver.js.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/init-resolver.d.ts +0 -3
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/init-resolver.d.ts.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/init-resolver.js +0 -22
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/init-resolver.js.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/invoke-lambda-resolver.d.ts +0 -4
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/invoke-lambda-resolver.d.ts.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/invoke-lambda-resolver.js +0 -77
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/invoke-lambda-resolver.js.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/verify-session-owner-resolver.d.ts +0 -5
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/verify-session-owner-resolver.d.ts.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/verify-session-owner-resolver.js +0 -34
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/verify-session-owner-resolver.js.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/write-message-to-table-resolver.d.ts +0 -4
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/write-message-to-table-resolver.d.ts.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/write-message-to-table-resolver.js +0 -25
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/write-message-to-table-resolver.js.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/utils/graphql-json-schema-type.d.ts.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/utils/tools.d.ts.map +0 -1
- package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/utils/tools.js.map +0 -1
- package/node_modules/@aws-amplify/graphql-directives/LICENSE +0 -201
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/import-table.d.ts +0 -7
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/import-table.d.ts.map +0 -1
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/import-table.js +0 -205
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/import-table.js.map +0 -1
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/node_modules/.package-lock.json +0 -13
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/node_modules/lodash.isequal/LICENSE +0 -47
- 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
- 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
- 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
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/package-lock.json +0 -21
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/package.json +0 -11
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/LICENSE +0 -201
- package/node_modules/graphql-mapping-template/LICENSE +0 -201
- /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
- /package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/{auth-resolver-fn.template.js → templates/auth-resolver-fn.template.js} +0 -0
- /package/node_modules/@aws-amplify/graphql-conversation-transformer/lib/resolvers/{init-resolver-fn.template.js → templates/init-resolver-fn.template.js} +0 -0
- /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
- /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
@@ -65,15 +65,10 @@ class ConversationMessageHistoryRetriever {
|
|
65
65
|
/**
|
66
66
|
* Creates conversation message history retriever.
|
67
67
|
*/
|
68
|
-
constructor(event, graphqlRequestExecutor = new graphql_request_executor_1.GraphqlRequestExecutor(event.graphqlApiEndpoint, event.request.headers.authorization)) {
|
68
|
+
constructor(event, graphqlRequestExecutor = new graphql_request_executor_1.GraphqlRequestExecutor(event.graphqlApiEndpoint, event.request.headers.authorization, event.request.headers['x-amz-user-agent'])) {
|
69
69
|
this.event = event;
|
70
70
|
this.graphqlRequestExecutor = graphqlRequestExecutor;
|
71
71
|
this.getMessageHistory = async () => {
|
72
|
-
var _a;
|
73
|
-
if ((_a = this.event.messages) === null || _a === void 0 ? void 0 : _a.length) {
|
74
|
-
// This is for backwards compatibility and should be removed with messages property.
|
75
|
-
return this.event.messages;
|
76
|
-
}
|
77
72
|
const messages = await this.listMessages();
|
78
73
|
let currentMessage = messages.find((m) => m.id === this.event.currentMessageId);
|
79
74
|
// This is a fallback in case current message is not available in the message list.
|
@@ -165,9 +160,40 @@ class ConversationMessageHistoryRetriever {
|
|
165
160
|
query,
|
166
161
|
variables,
|
167
162
|
});
|
168
|
-
|
163
|
+
const items = response.data[this.event.messageHistoryQuery.listQueryName].items;
|
164
|
+
items.forEach((item) => {
|
165
|
+
var _a;
|
166
|
+
(_a = item.content) === null || _a === void 0 ? void 0 : _a.forEach((contentBlock) => {
|
167
|
+
var _a, _b;
|
168
|
+
let property;
|
169
|
+
for (property in contentBlock) {
|
170
|
+
// Deserialization of GraphQl query result sets these properties to 'null'
|
171
|
+
// This can trigger Bedrock SDK validation as it expects 'undefined' if properties are not set.
|
172
|
+
// We can't fix how GraphQl response is deserialized.
|
173
|
+
// Therefore, we apply this transformation to fix the data.
|
174
|
+
if (contentBlock[property] === null) {
|
175
|
+
contentBlock[property] = undefined;
|
176
|
+
}
|
177
|
+
}
|
178
|
+
if (typeof ((_a = contentBlock.toolUse) === null || _a === void 0 ? void 0 : _a.input) === 'string') {
|
179
|
+
// toolUse.input may come as serialized JSON for Client Tools.
|
180
|
+
// Parse it in that case.
|
181
|
+
contentBlock.toolUse.input = JSON.parse(contentBlock.toolUse.input);
|
182
|
+
}
|
183
|
+
if ((_b = contentBlock.toolResult) === null || _b === void 0 ? void 0 : _b.content) {
|
184
|
+
contentBlock.toolResult.content.forEach((toolResultContentBlock) => {
|
185
|
+
if (typeof toolResultContentBlock.json === 'string') {
|
186
|
+
// toolResult.content[].json may come as serialized JSON for Client Tools.
|
187
|
+
// Parse it in that case.
|
188
|
+
toolResultContentBlock.json = JSON.parse(toolResultContentBlock.json);
|
189
|
+
}
|
190
|
+
});
|
191
|
+
}
|
192
|
+
});
|
193
|
+
});
|
194
|
+
return items;
|
169
195
|
};
|
170
196
|
}
|
171
197
|
}
|
172
198
|
exports.ConversationMessageHistoryRetriever = ConversationMessageHistoryRetriever;
|
173
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uX21lc3NhZ2VfaGlzdG9yeV9yZXRyaWV2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udmVyc2F0aW9uL3J1bnRpbWUvY29udmVyc2F0aW9uX21lc3NhZ2VfaGlzdG9yeV9yZXRyaWV2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EseUVBQW9FO0FBbUNwRTs7OztHQUlHO0FBQ0gsTUFBTSx1QkFBdUIsR0FBRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBZ0QvQixDQUFDO0FBRUY7Ozs7R0FJRztBQUNILE1BQWEsbUNBQW1DO0lBQzlDOztPQUVHO0lBQ0gsWUFDbUIsS0FBNEIsRUFDNUIseUJBQXlCLElBQUksaURBQXNCLENBQ2xFLEtBQUssQ0FBQyxrQkFBa0IsRUFDeEIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUNwQztRQUpnQixVQUFLLEdBQUwsS0FBSyxDQUF1QjtRQUM1QiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBR3RDO1FBR0gsc0JBQWlCLEdBQUcsS0FBSyxJQUF5QyxFQUFFOztZQUNsRSxJQUFJLE1BQUEsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLDBDQUFFLE1BQU0sRUFBRTtnQkFDL0Isb0ZBQW9GO2dCQUNwRixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO2FBQzVCO1lBQ0QsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFFM0MsSUFBSSxjQUFjLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FDaEMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FDNUMsQ0FBQztZQUVGLG1GQUFtRjtZQUNuRix5RUFBeUU7WUFDekUsK0JBQStCO1lBQy9CLElBQUksQ0FBQyxj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WSxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDO1FBRUksaUJBQVksR0FBRyxLQUFLLElBRTFCLEVBQUU7O1lBQ0YsTUFBTSxLQUFLLEdBQUc7c0NBQ29CLElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsc0JBQXNCO2NBQzdFLElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsYUFBYTs7a0JBRXhDLHVCQUF1Qjs7OztLQUlwQyxDQUFDO1lBQ0YsTUFBTSxTQUFTLEdBQW1CO2dCQUNoQyxNQUFNLEVBQUU7b0JBQ04sY0FBYyxFQUFFO3dCQUNkLEVBQUUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWM7cUJBQzlCO2lCQUNGO2dCQUNELEtBQUssRUFBRSxNQUFBLElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsY0FBYyxtQ0FBSSxJQUFJO2FBQzdELENBQUM7WUFFRixNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxjQUFjLENBRy9EO2dCQUNBLEtBQUs7Z0JBQ0wsU0FBUzthQUNWLENBQUMsQ0FBQztZQUVILE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUMzRSxDQUFDLENBQUM7SUFuSUMsQ0FBQztDQW9JTDtBQTlJRCxrRkE4SUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb252ZXJzYXRpb25NZXNzYWdlLCBDb252ZXJzYXRpb25UdXJuRXZlbnQgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IEdyYXBocWxSZXF1ZXN0RXhlY3V0b3IgfSBmcm9tICcuL2dyYXBocWxfcmVxdWVzdF9leGVjdXRvcic7XG5cbmV4cG9ydCB0eXBlIENvbnZlcnNhdGlvbkhpc3RvcnlNZXNzYWdlSXRlbSA9IENvbnZlcnNhdGlvbk1lc3NhZ2UgJiB7XG4gIGlkOiBzdHJpbmc7XG4gIGNvbnZlcnNhdGlvbklkOiBzdHJpbmc7XG4gIGFzc29jaWF0ZWRVc2VyTWVzc2FnZUlkPzogc3RyaW5nO1xuICBhaUNvbnRleHQ/OiB1bmtub3duO1xufTtcblxuZXhwb3J0IHR5cGUgR2V0UXVlcnlJbnB1dCA9IHtcbiAgaWQ6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEdldFF1ZXJ5T3V0cHV0ID0ge1xuICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBDb252ZXJzYXRpb25IaXN0b3J5TWVzc2FnZUl0ZW0+O1xufTtcblxuZXhwb3J0IHR5cGUgTGlzdFF1ZXJ5SW5wdXQgPSB7XG4gIGZpbHRlcjoge1xuICAgIGNvbnZlcnNhdGlvbklkOiB7XG4gICAgICBlcTogc3RyaW5nO1xuICAgIH07XG4gIH07XG4gIGxpbWl0OiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBMaXN0UXVlcnlPdXRwdXQgPSB7XG4gIGRhdGE6IFJlY29yZDxcbiAgICBzdHJpbmcsXG4gICAge1xuICAgICAgaXRlbXM6IEFycmF5PENvbnZlcnNhdGlvbkhpc3RvcnlNZXNzYWdlSXRlbT47XG4gICAgfVxuICA+O1xufTtcblxuLyoqXG4gKiBUaGVzZSBhcmUgYWxsIHByb3BlcnRpZXMgd2UgaGF2ZSB0byBwdWxsLlxuICogVW5mb3J0dW5hdGVseSwgR1FMIGRvZXNuJ3Qgc3VwcG9ydCB3aWxkY2FyZHMuXG4gKiBodHRwczovL2dpdGh1Yi5jb20vZ3JhcGhxbC9ncmFwaHFsLXNwZWMvaXNzdWVzLzEyN1xuICovXG5jb25zdCBtZXNzYWdlSXRlbVNlbGVjdGlvblNldCA9IGBcbiAgICAgICAgICAgICAgICBpZFxuICAgICAgICAgICAgICAgIGNvbnZlcnNhdGlvbklkXG4gICAgICAgICAgICAgICAgYXNzb2NpYXRlZFVzZXJNZXNzYWdlSWRcbiAgICAgICAgICAgICAgICBhaUNvbnRleHRcbiAgICAgICAgICAgICAgICByb2xlXG4gICAgICAgICAgICAgICAgY29udGVudCB7XG4gICAgICAgICAgICAgICAgICB0ZXh0XG4gICAgICAgICAgICAgICAgICBkb2N1bWVudCB7XG4gICAgICAgICAgICAgICAgICAgIHNvdXJjZSB7XG4gICAgICAgICAgICAgICAgICAgICAgYnl0ZXNcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBmb3JtYXRcbiAgICAgICAgICAgICAgICAgICAgbmFtZVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICBmb3JtYXRcbiAgICAgICAgICAgICAgICAgICAgc291cmNlIHtcbiAgICAgICAgICAgICAgICAgICAgICBieXRlc1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB0b29sUmVzdWx0IHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBieXRlc1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICBpbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXRcbiAgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGJ5dGVzXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIGpzb25cbiAgICAgICAgICAgICAgICAgICAgICB0ZXh0XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgc3RhdHVzXG4gICAgICAgICAgICAgICAgICAgIHRvb2xVc2VJZFxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgdG9vbFVzZSB7XG4gICAgICAgICAgICAgICAgICAgIGlucHV0XG4gICAgICAgICAgICAgICAgICAgIG5hbWVcbiAgICAgICAgICAgICAgICAgICAgdG9vbFVzZUlkXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuYDtcblxuLyoqXG4gKiBUaGlzIGNsYXNzIGlzIHJlc3BvbnNpYmxlIGZvciByZXRyaWV2aW5nIG1lc3NhZ2UgaGlzdG9yeSB0aGF0IGJlbG9uZ3MgdG8gY29udmVyc2F0aW9uIHR1cm4gZXZlbnQuXG4gKiBJdCBxdWVyaWVzIEFwcFN5bmMgdG8gbGlzdCBtZXNzYWdlcyB0aGF0IGJlbG9uZyB0byBjb252ZXJzYXRpb24uXG4gKiBBZGRpdGlvbmFsbHksIGl0IGxvb2tzIHVwIGEgY3VycmVudCBtZXNzYWdlIGluIGNhc2UgaXQncyBtaXNzaW5nIGluIHRoZSBsaXN0IGR1ZSB0byBldmVudHVhbCBjb25zaXN0ZW5jeS5cbiAqL1xuZXhwb3J0IGNsYXNzIENvbnZlcnNhdGlvbk1lc3NhZ2VIaXN0b3J5UmV0cmlldmVyIHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgY29udmVyc2F0aW9uIG1lc3NhZ2UgaGlzdG9yeSByZXRyaWV2ZXIuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGV2ZW50OiBDb252ZXJzYXRpb25UdXJuRXZlbnQsXG4gICAgcHJpdmF0ZSByZWFkb25seSBncmFwaHFsUmVxdWVzdEV4ZWN1dG9yID0gbmV3IEdyYXBocWxSZXF1ZXN0RXhlY3V0b3IoXG4gICAgICBldmVudC5ncmFwaHFsQXBpRW5kcG9pbnQsXG4gICAgICBldmVudC5yZXF1ZXN0LmhlYWRlcnMuYXV0aG9yaXphdGlvblxuICAgIClcbiAgKSB7fVxuXG4gIGdldE1lc3NhZ2VIaXN0b3J5ID0gYXN5bmMgKCk6IFByb21pc2U8QXJyYXk8Q29udmVyc2F0aW9uTWVzc2FnZT4+ID0+IHtcbiAgICBpZiAodGhpcy5ldmVudC5tZXNzYWdlcz8ubGVuZ3RoKSB7XG4gICAgICAvLyBUaGlzIGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSBhbmQgc2hvdWxkIGJlIHJlbW92ZWQgd2l0aCBtZXNzYWdlcyBwcm9wZXJ0eS5cbiAgICAgIHJldHVybiB0aGlzLmV2ZW50Lm1lc3NhZ2VzO1xuICAgIH1cbiAgICBjb25zdCBtZXNzYWdlcyA9IGF3YWl0IHRoaXMubGlzdE1lc3NhZ2VzKCk7XG5cbiAgICBsZXQgY3VycmVudE1lc3NhZ2UgPSBtZXNzYWdlcy5maW5kKFxuICAgICAgKG0pID0+IG0uaWQgPT09IHRoaXMuZXZlbnQuY3VycmVudE1lc3NhZ2VJZFxuICAgICk7XG5cbiAgICAvLyBUaGlzIGlzIGEgZmFsbGJhY2sgaW4gY2FzZSBjdXJyZW50IG1lc3NhZ2UgaXMgbm90IGF2YWlsYWJsZSBpbiB0aGUgbWVzc2FnZSBsaXN0LlxuICAgIC8vIEkuZS4gaW4gYSBzaXR1YXRpb24gd2hlbiBmcmVzaGx5IHdyaXR0ZW4gbWVzc2FnZSBpcyBub3QgeWV0IHZpc2libGUgaW5cbiAgICAvLyBldmVudHVhbGx5IGNvbnNpc3RlbnQgcmVhZHMuXG4gICAgaWYgKCFjdXJyZW50TWVzc2FnZSkge1xuICAgICAgY3VycmVudE1lc3NhZ2UgPSBhd2FpdCB0aGlzLmdldEN1cnJlbnRNZXNzYWdlKCk7XG4gICAgICBtZXNzYWdlcy5wdXNoKGN1cnJlbnRNZXNzYWdlKTtcbiAgICB9XG5cbiAgICAvLyBJbmRleCBhc3Npc3RhbnQgbWVzc2FnZXMgYnkgY29ycmVzcG9uZGluZyB1c2VyIG1lc3NhZ2UuXG4gICAgY29uc3QgYXNzaXN0YW50TWVzc2FnZUJ5VXNlck1lc3NhZ2VJZDogTWFwPFxuICAgICAgc3RyaW5nLFxuICAgICAgQ29udmVyc2F0aW9uSGlzdG9yeU1lc3NhZ2VJdGVtXG4gICAgPiA9IG5ldyBNYXAoKTtcbiAgICBtZXNzYWdlcy5mb3JFYWNoKChtZXNzYWdlKSA9PiB7XG4gICAgICBpZiAobWVzc2FnZS5yb2xlID09PSAnYXNzaXN0YW50JyAmJiBtZXNzYWdlLmFzc29jaWF0ZWRVc2VyTWVzc2FnZUlkKSB7XG4gICAgICAgIGFzc2lzdGFudE1lc3NhZ2VCeVVzZXJNZXNzYWdlSWQuc2V0KFxuICAgICAgICAgIG1lc3NhZ2UuYXNzb2NpYXRlZFVzZXJNZXNzYWdlSWQsXG4gICAgICAgICAgbWVzc2FnZVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gUmVjb25jaWxlIGhpc3RvcnkgYW5kIGluamVjdCBhaUNvbnRleHRcbiAgICByZXR1cm4gbWVzc2FnZXMucmVkdWNlKChhY2MsIGN1cnJlbnQpID0+IHtcbiAgICAgIC8vIEJlZHJvY2sgZXhwZWN0cyB0aGF0IG1lc3NhZ2UgaGlzdG9yeSBpcyB1c2VyLT5hc3Npc3RhbnQtPnVzZXItPmFzc2lzdGFudC0+Li4uIGFuZCBzbyBvbi5cbiAgICAgIC8vIFRoZSBjaHJvbm9sb2dpY2FsIG9yZGVyIGRvZXNuJ3QgYXNzdXJlIHRoaXMgb3JkZXJpbmcgaWYgdGhlcmUgd2VyZSBhbnkgY29uY3VycmVudCBtZXNzYWdlcyBzZW50LlxuICAgICAgLy8gVGhlcmVmb3JlLCBjb252ZXJzYXRpb24gaXMgb3JkZXJlZCBieSB1c2VyJ3MgbWVzc2FnZXMgb25seSBhbmQgY29ycmVzcG9uZGluZyBhc3Npc3RhbnQgbWVzc2FnZXMgYXJlIGluc2VydGVkXG4gICAgICAvLyBpbnRvIHJpZ2h0IHBsYWNlIHJlZ2FyZGxlc3Mgb2YgdGhlaXIgY3JlYXRlZEF0IHZhbHVlLlxuICAgICAgLy8gVGhpcyBhbGdvcml0aG0gYXNzdW1lcyB0aGF0IEdRTCBxdWVyeSByZXR1cm5zIG1lc3NhZ2VzIHNvcnRlZCBieSBjcmVhdGVkQXQuXG4gICAgICBpZiAoY3VycmVudC5yb2xlID09PSAnYXNzaXN0YW50Jykge1xuICAgICAgICAvLyBJbml0aWFsbHksIHNraXAgYXNzaXN0YW50IG1lc3NhZ2VzLCB0aGVzZSBtaWdodCBiZSBvdXQgb2YgY2hyb25vbG9naWNhbCBvcmRlci5cbiAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgY3VycmVudC5yb2xlID09PSAndXNlcicgJiZcbiAgICAgICAgIWFzc2lzdGFudE1lc3NhZ2VCeVVzZXJNZXNzYWdlSWQuaGFzKGN1cnJlbnQuaWQpICYmXG4gICAgICAgIGN1cnJlbnQuaWQgIT09IHRoaXMuZXZlbnQuY3VycmVudE1lc3NhZ2VJZFxuICAgICAgKSB7XG4gICAgICAgIC8vIFNraXAgdXNlciBtZXNzYWdlcyB0aGF0IGRpZG4ndCBnZXQgYW5zd2VyIGZyb20gYXNzaXN0YW50IHlldC5cbiAgICAgICAgLy8gVGhlc2UgbWlnaHQgYmUgc3RpbGwgXCJpbi1mbGlnaHRcIiwgaS5lLiBhc3Npc3RhbnQgaXMgc3RpbGwgd29ya2luZyBvbiB0aGVtIGluIHNlcGFyYXRlIGludm9jYXRpb24uXG4gICAgICAgIC8vIEV4Y2VwdCBjdXJyZW50IG1lc3NhZ2UsIHdlIHdhbnQgdG8gcHJvY2VzcyB0aGF0IG9uZS5cbiAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFpQ29udGV4dCA9IGN1cnJlbnQuYWlDb250ZXh0O1xuICAgICAgY29uc3QgY29udGVudCA9IGFpQ29udGV4dFxuICAgICAgICA/IFsuLi5jdXJyZW50LmNvbnRlbnQsIHsgdGV4dDogSlNPTi5zdHJpbmdpZnkoYWlDb250ZXh0KSB9XVxuICAgICAgICA6IGN1cnJlbnQuY29udGVudDtcblxuICAgICAgYWNjLnB1c2goeyByb2xlOiBjdXJyZW50LnJvbGUsIGNvbnRlbnQgfSk7XG5cbiAgICAgIC8vIEZpbmQgYW5kIGluc2VydCBjb3JyZXNwb25kaW5nIGFzc2lzdGFudCBtZXNzYWdlLlxuICAgICAgY29uc3QgY29ycmVzcG9uZGluZ0Fzc2lzdGFudE1lc3NhZ2UgPSBhc3Npc3RhbnRNZXNzYWdlQnlVc2VyTWVzc2FnZUlkLmdldChcbiAgICAgICAgY3VycmVudC5pZFxuICAgICAgKTtcbiAgICAgIGlmIChjb3JyZXNwb25kaW5nQXNzaXN0YW50TWVzc2FnZSkge1xuICAgICAgICBhY2MucHVzaCh7XG4gICAgICAgICAgcm9sZTogY29ycmVzcG9uZGluZ0Fzc2lzdGFudE1lc3NhZ2Uucm9sZSxcbiAgICAgICAgICBjb250ZW50OiBjb3JyZXNwb25kaW5nQXNzaXN0YW50TWVzc2FnZS5jb250ZW50LFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBhY2M7XG4gICAgfSwgW10gYXMgQXJyYXk8Q29udmVyc2F0aW9uTWVzc2FnZT4pO1xuICB9O1xuXG4gIHByaXZhdGUgZ2V0Q3VycmVudE1lc3NhZ2UgPVxuICAgIGFzeW5jICgpOiBQcm9taXNlPENvbnZlcnNhdGlvbkhpc3RvcnlNZXNzYWdlSXRlbT4gPT4ge1xuICAgICAgY29uc3QgcXVlcnkgPSBgXG4gICAgICAgIHF1ZXJ5IEdldE1lc3NhZ2UoJGlkOiAke3RoaXMuZXZlbnQubWVzc2FnZUhpc3RvcnlRdWVyeS5nZXRRdWVyeUlucHV0VHlwZU5hbWV9ISkge1xuICAgICAgICAgICAgJHt0aGlzLmV2ZW50Lm1lc3NhZ2VIaXN0b3J5UXVlcnkuZ2V0UXVlcnlOYW1lfShpZDogJGlkKSB7XG4gICAgICAgICAgICAgICR7bWVzc2FnZUl0ZW1TZWxlY3Rpb25TZXR9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICBgO1xuICAgICAgY29uc3QgdmFyaWFibGVzOiBHZXRRdWVyeUlucHV0ID0ge1xuICAgICAgICBpZDogdGhpcy5ldmVudC5jdXJyZW50TWVzc2FnZUlkLFxuICAgICAgfTtcblxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmdyYXBocWxSZXF1ZXN0RXhlY3V0b3IuZXhlY3V0ZUdyYXBocWw8XG4gICAgICAgIEdldFF1ZXJ5SW5wdXQsXG4gICAgICAgIEdldFF1ZXJ5T3V0cHV0XG4gICAgICA+KHtcbiAgICAgICAgcXVlcnksXG4gICAgICAgIHZhcmlhYmxlcyxcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YVt0aGlzLmV2ZW50Lm1lc3NhZ2VIaXN0b3J5UXVlcnkuZ2V0UXVlcnlOYW1lXTtcbiAgICB9O1xuXG4gIHByaXZhdGUgbGlzdE1lc3NhZ2VzID0gYXN5bmMgKCk6IFByb21pc2U8XG4gICAgQXJyYXk8Q29udmVyc2F0aW9uSGlzdG9yeU1lc3NhZ2VJdGVtPlxuICA+ID0+IHtcbiAgICBjb25zdCBxdWVyeSA9IGBcbiAgICAgICAgcXVlcnkgTGlzdE1lc3NhZ2VzKCRmaWx0ZXI6ICR7dGhpcy5ldmVudC5tZXNzYWdlSGlzdG9yeVF1ZXJ5Lmxpc3RRdWVyeUlucHV0VHlwZU5hbWV9ISwgJGxpbWl0OiBJbnQpIHtcbiAgICAgICAgICAgICR7dGhpcy5ldmVudC5tZXNzYWdlSGlzdG9yeVF1ZXJ5Lmxpc3RRdWVyeU5hbWV9KGZpbHRlcjogJGZpbHRlciwgbGltaXQ6ICRsaW1pdCkge1xuICAgICAgICAgICAgICBpdGVtcyB7XG4gICAgICAgICAgICAgICAgJHttZXNzYWdlSXRlbVNlbGVjdGlvblNldH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgYDtcbiAgICBjb25zdCB2YXJpYWJsZXM6IExpc3RRdWVyeUlucHV0ID0ge1xuICAgICAgZmlsdGVyOiB7XG4gICAgICAgIGNvbnZlcnNhdGlvbklkOiB7XG4gICAgICAgICAgZXE6IHRoaXMuZXZlbnQuY29udmVyc2F0aW9uSWQsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgbGltaXQ6IHRoaXMuZXZlbnQubWVzc2FnZUhpc3RvcnlRdWVyeS5saXN0UXVlcnlMaW1pdCA/PyAxMDAwLFxuICAgIH07XG5cbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuZ3JhcGhxbFJlcXVlc3RFeGVjdXRvci5leGVjdXRlR3JhcGhxbDxcbiAgICAgIExpc3RRdWVyeUlucHV0LFxuICAgICAgTGlzdFF1ZXJ5T3V0cHV0XG4gICAgPih7XG4gICAgICBxdWVyeSxcbiAgICAgIHZhcmlhYmxlcyxcbiAgICB9KTtcblxuICAgIHJldHVybiByZXNwb25zZS5kYXRhW3RoaXMuZXZlbnQubWVzc2FnZUhpc3RvcnlRdWVyeS5saXN0UXVlcnlOYW1lXS5pdGVtcztcbiAgfTtcbn1cbiJdfQ==
|
199
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uX21lc3NhZ2VfaGlzdG9yeV9yZXRyaWV2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udmVyc2F0aW9uL3J1bnRpbWUvY29udmVyc2F0aW9uX21lc3NhZ2VfaGlzdG9yeV9yZXRyaWV2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EseUVBQW9FO0FBbUNwRTs7OztHQUlHO0FBQ0gsTUFBTSx1QkFBdUIsR0FBRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBZ0QvQixDQUFDO0FBRUY7Ozs7R0FJRztBQUNILE1BQWEsbUNBQW1DO0lBQzlDOztPQUVHO0lBQ0gsWUFDbUIsS0FBNEIsRUFDNUIseUJBQXlCLElBQUksaURBQXNCLENBQ2xFLEtBQUssQ0FBQyxrQkFBa0IsRUFDeEIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUNuQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUMxQztRQUxnQixVQUFLLEdBQUwsS0FBSyxDQUF1QjtRQUM1QiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBSXRDO1FBR0gsc0JBQWlCLEdBQUcsS0FBSyxJQUF5QyxFQUFFO1lBQ2xFLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBRTNDLElBQUksY0FBYyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQ2hDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQzVDLENBQUM7WUFFRixtRkFBbUY7WUFDbkYseUVBQXlFO1lBQ3pFLCtCQUErQjtZQUMvQixJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUNuQixjQUFjLEdBQUcsTUFBTSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFDaEQsUUFBUSxD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QUFFO3dCQUNuRCw4REFBOEQ7d0JBQzlELHlCQUF5Qjt3QkFDekIsWUFBWSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO3FCQUNyRTtvQkFDRCxJQUFJLE1BQUEsWUFBWSxDQUFDLFVBQVUsMENBQUUsT0FBTyxFQUFFO3dCQUNwQyxZQUFZLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxzQkFBc0IsRUFBRSxFQUFFOzRCQUNqRSxJQUFJLE9BQU8sc0JBQXNCLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRTtnQ0FDbkQsMEVBQTBFO2dDQUMxRSx5QkFBeUI7Z0NBQ3pCLHNCQUFzQixDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUN0QyxzQkFBc0IsQ0FBQyxJQUFJLENBQzVCLENBQUM7NkJBQ0g7d0JBQ0gsQ0FBQyxDQUFDLENBQUM7cUJBQ0o7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztZQUVILE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDO0lBbEtDLENBQUM7Q0FtS0w7QUE5S0Qsa0ZBOEtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udmVyc2F0aW9uTWVzc2FnZSwgQ29udmVyc2F0aW9uVHVybkV2ZW50IH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBHcmFwaHFsUmVxdWVzdEV4ZWN1dG9yIH0gZnJvbSAnLi9ncmFwaHFsX3JlcXVlc3RfZXhlY3V0b3InO1xuXG5leHBvcnQgdHlwZSBDb252ZXJzYXRpb25IaXN0b3J5TWVzc2FnZUl0ZW0gPSBDb252ZXJzYXRpb25NZXNzYWdlICYge1xuICBpZDogc3RyaW5nO1xuICBjb252ZXJzYXRpb25JZDogc3RyaW5nO1xuICBhc3NvY2lhdGVkVXNlck1lc3NhZ2VJZD86IHN0cmluZztcbiAgYWlDb250ZXh0PzogdW5rbm93bjtcbn07XG5cbmV4cG9ydCB0eXBlIEdldFF1ZXJ5SW5wdXQgPSB7XG4gIGlkOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBHZXRRdWVyeU91dHB1dCA9IHtcbiAgZGF0YTogUmVjb3JkPHN0cmluZywgQ29udmVyc2F0aW9uSGlzdG9yeU1lc3NhZ2VJdGVtPjtcbn07XG5cbmV4cG9ydCB0eXBlIExpc3RRdWVyeUlucHV0ID0ge1xuICBmaWx0ZXI6IHtcbiAgICBjb252ZXJzYXRpb25JZDoge1xuICAgICAgZXE6IHN0cmluZztcbiAgICB9O1xuICB9O1xuICBsaW1pdDogbnVtYmVyO1xufTtcblxuZXhwb3J0IHR5cGUgTGlzdFF1ZXJ5T3V0cHV0ID0ge1xuICBkYXRhOiBSZWNvcmQ8XG4gICAgc3RyaW5nLFxuICAgIHtcbiAgICAgIGl0ZW1zOiBBcnJheTxDb252ZXJzYXRpb25IaXN0b3J5TWVzc2FnZUl0ZW0+O1xuICAgIH1cbiAgPjtcbn07XG5cbi8qKlxuICogVGhlc2UgYXJlIGFsbCBwcm9wZXJ0aWVzIHdlIGhhdmUgdG8gcHVsbC5cbiAqIFVuZm9ydHVuYXRlbHksIEdRTCBkb2Vzbid0IHN1cHBvcnQgd2lsZGNhcmRzLlxuICogaHR0cHM6Ly9naXRodWIuY29tL2dyYXBocWwvZ3JhcGhxbC1zcGVjL2lzc3Vlcy8xMjdcbiAqL1xuY29uc3QgbWVzc2FnZUl0ZW1TZWxlY3Rpb25TZXQgPSBgXG4gICAgICAgICAgICAgICAgaWRcbiAgICAgICAgICAgICAgICBjb252ZXJzYXRpb25JZFxuICAgICAgICAgICAgICAgIGFzc29jaWF0ZWRVc2VyTWVzc2FnZUlkXG4gICAgICAgICAgICAgICAgYWlDb250ZXh0XG4gICAgICAgICAgICAgICAgcm9sZVxuICAgICAgICAgICAgICAgIGNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgdGV4dFxuICAgICAgICAgICAgICAgICAgZG9jdW1lbnQge1xuICAgICAgICAgICAgICAgICAgICBzb3VyY2Uge1xuICAgICAgICAgICAgICAgICAgICAgIGJ5dGVzXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZm9ybWF0XG4gICAgICAgICAgICAgICAgICAgIG5hbWVcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIGltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9ybWF0XG4gICAgICAgICAgICAgICAgICAgIHNvdXJjZSB7XG4gICAgICAgICAgICAgICAgICAgICAgYnl0ZXNcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgdG9vbFJlc3VsdCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgc291cmNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYnl0ZXNcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0XG4gICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBieXRlc1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICBqc29uXG4gICAgICAgICAgICAgICAgICAgICAgdGV4dFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHN0YXR1c1xuICAgICAgICAgICAgICAgICAgICB0b29sVXNlSWRcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHRvb2xVc2Uge1xuICAgICAgICAgICAgICAgICAgICBpbnB1dFxuICAgICAgICAgICAgICAgICAgICBuYW1lXG4gICAgICAgICAgICAgICAgICAgIHRvb2xVc2VJZFxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbmA7XG5cbi8qKlxuICogVGhpcyBjbGFzcyBpcyByZXNwb25zaWJsZSBmb3IgcmV0cmlldmluZyBtZXNzYWdlIGhpc3RvcnkgdGhhdCBiZWxvbmdzIHRvIGNvbnZlcnNhdGlvbiB0dXJuIGV2ZW50LlxuICogSXQgcXVlcmllcyBBcHBTeW5jIHRvIGxpc3QgbWVzc2FnZXMgdGhhdCBiZWxvbmcgdG8gY29udmVyc2F0aW9uLlxuICogQWRkaXRpb25hbGx5LCBpdCBsb29rcyB1cCBhIGN1cnJlbnQgbWVzc2FnZSBpbiBjYXNlIGl0J3MgbWlzc2luZyBpbiB0aGUgbGlzdCBkdWUgdG8gZXZlbnR1YWwgY29uc2lzdGVuY3kuXG4gKi9cbmV4cG9ydCBjbGFzcyBDb252ZXJzYXRpb25NZXNzYWdlSGlzdG9yeVJldHJpZXZlciB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGNvbnZlcnNhdGlvbiBtZXNzYWdlIGhpc3RvcnkgcmV0cmlldmVyLlxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBldmVudDogQ29udmVyc2F0aW9uVHVybkV2ZW50LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZ3JhcGhxbFJlcXVlc3RFeGVjdXRvciA9IG5ldyBHcmFwaHFsUmVxdWVzdEV4ZWN1dG9yKFxuICAgICAgZXZlbnQuZ3JhcGhxbEFwaUVuZHBvaW50LFxuICAgICAgZXZlbnQucmVxdWVzdC5oZWFkZXJzLmF1dGhvcml6YXRpb24sXG4gICAgICBldmVudC5yZXF1ZXN0LmhlYWRlcnNbJ3gtYW16LXVzZXItYWdlbnQnXVxuICAgIClcbiAgKSB7fVxuXG4gIGdldE1lc3NhZ2VIaXN0b3J5ID0gYXN5bmMgKCk6IFByb21pc2U8QXJyYXk8Q29udmVyc2F0aW9uTWVzc2FnZT4+ID0+IHtcbiAgICBjb25zdCBtZXNzYWdlcyA9IGF3YWl0IHRoaXMubGlzdE1lc3NhZ2VzKCk7XG5cbiAgICBsZXQgY3VycmVudE1lc3NhZ2UgPSBtZXNzYWdlcy5maW5kKFxuICAgICAgKG0pID0+IG0uaWQgPT09IHRoaXMuZXZlbnQuY3VycmVudE1lc3NhZ2VJZFxuICAgICk7XG5cbiAgICAvLyBUaGlzIGlzIGEgZmFsbGJhY2sgaW4gY2FzZSBjdXJyZW50IG1lc3NhZ2UgaXMgbm90IGF2YWlsYWJsZSBpbiB0aGUgbWVzc2FnZSBsaXN0LlxuICAgIC8vIEkuZS4gaW4gYSBzaXR1YXRpb24gd2hlbiBmcmVzaGx5IHdyaXR0ZW4gbWVzc2FnZSBpcyBub3QgeWV0IHZpc2libGUgaW5cbiAgICAvLyBldmVudHVhbGx5IGNvbnNpc3RlbnQgcmVhZHMuXG4gICAgaWYgKCFjdXJyZW50TWVzc2FnZSkge1xuICAgICAgY3VycmVudE1lc3NhZ2UgPSBhd2FpdCB0aGlzLmdldEN1cnJlbnRNZXNzYWdlKCk7XG4gICAgICBtZXNzYWdlcy5wdXNoKGN1cnJlbnRNZXNzYWdlKTtcbiAgICB9XG5cbiAgICAvLyBJbmRleCBhc3Npc3RhbnQgbWVzc2FnZXMgYnkgY29ycmVzcG9uZGluZyB1c2VyIG1lc3NhZ2UuXG4gICAgY29uc3QgYXNzaXN0YW50TWVzc2FnZUJ5VXNlck1lc3NhZ2VJZDogTWFwPFxuICAgICAgc3RyaW5nLFxuICAgICAgQ29udmVyc2F0aW9uSGlzdG9yeU1lc3NhZ2VJdGVtXG4gICAgPiA9IG5ldyBNYXAoKTtcbiAgICBtZXNzYWdlcy5mb3JFYWNoKChtZXNzYWdlKSA9PiB7XG4gICAgICBpZiAobWVzc2FnZS5yb2xlID09PSAnYXNzaXN0YW50JyAmJiBtZXNzYWdlLmFzc29jaWF0ZWRVc2VyTWVzc2FnZUlkKSB7XG4gICAgICAgIGFzc2lzdGFudE1lc3NhZ2VCeVVzZXJNZXNzYWdlSWQuc2V0KFxuICAgICAgICAgIG1lc3NhZ2UuYXNzb2NpYXRlZFVzZXJNZXNzYWdlSWQsXG4gICAgICAgICAgbWVzc2FnZVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gUmVjb25jaWxlIGhpc3RvcnkgYW5kIGluamVjdCBhaUNvbnRleHRcbiAgICByZXR1cm4gbWVzc2FnZXMucmVkdWNlKChhY2MsIGN1cnJlbnQpID0+IHtcbiAgICAgIC8vIEJlZHJvY2sgZXhwZWN0cyB0aGF0IG1lc3NhZ2UgaGlzdG9yeSBpcyB1c2VyLT5hc3Npc3RhbnQtPnVzZXItPmFzc2lzdGFudC0+Li4uIGFuZCBzbyBvbi5cbiAgICAgIC8vIFRoZSBjaHJvbm9sb2dpY2FsIG9yZGVyIGRvZXNuJ3QgYXNzdXJlIHRoaXMgb3JkZXJpbmcgaWYgdGhlcmUgd2VyZSBhbnkgY29uY3VycmVudCBtZXNzYWdlcyBzZW50LlxuICAgICAgLy8gVGhlcmVmb3JlLCBjb252ZXJzYXRpb24gaXMgb3JkZXJlZCBieSB1c2VyJ3MgbWVzc2FnZXMgb25seSBhbmQgY29ycmVzcG9uZGluZyBhc3Npc3RhbnQgbWVzc2FnZXMgYXJlIGluc2VydGVkXG4gICAgICAvLyBpbnRvIHJpZ2h0IHBsYWNlIHJlZ2FyZGxlc3Mgb2YgdGhlaXIgY3JlYXRlZEF0IHZhbHVlLlxuICAgICAgLy8gVGhpcyBhbGdvcml0aG0gYXNzdW1lcyB0aGF0IEdRTCBxdWVyeSByZXR1cm5zIG1lc3NhZ2VzIHNvcnRlZCBieSBjcmVhdGVkQXQuXG4gICAgICBpZiAoY3VycmVudC5yb2xlID09PSAnYXNzaXN0YW50Jykge1xuICAgICAgICAvLyBJbml0aWFsbHksIHNraXAgYXNzaXN0YW50IG1lc3NhZ2VzLCB0aGVzZSBtaWdodCBiZSBvdXQgb2YgY2hyb25vbG9naWNhbCBvcmRlci5cbiAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgY3VycmVudC5yb2xlID09PSAndXNlcicgJiZcbiAgICAgICAgIWFzc2lzdGFudE1lc3NhZ2VCeVVzZXJNZXNzYWdlSWQuaGFzKGN1cnJlbnQuaWQpICYmXG4gICAgICAgIGN1cnJlbnQuaWQgIT09IHRoaXMuZXZlbnQuY3VycmVudE1lc3NhZ2VJZFxuICAgICAgKSB7XG4gICAgICAgIC8vIFNraXAgdXNlciBtZXNzYWdlcyB0aGF0IGRpZG4ndCBnZXQgYW5zd2VyIGZyb20gYXNzaXN0YW50IHlldC5cbiAgICAgICAgLy8gVGhlc2UgbWlnaHQgYmUgc3RpbGwgXCJpbi1mbGlnaHRcIiwgaS5lLiBhc3Npc3RhbnQgaXMgc3RpbGwgd29ya2luZyBvbiB0aGVtIGluIHNlcGFyYXRlIGludm9jYXRpb24uXG4gICAgICAgIC8vIEV4Y2VwdCBjdXJyZW50IG1lc3NhZ2UsIHdlIHdhbnQgdG8gcHJvY2VzcyB0aGF0IG9uZS5cbiAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFpQ29udGV4dCA9IGN1cnJlbnQuYWlDb250ZXh0O1xuICAgICAgY29uc3QgY29udGVudCA9IGFpQ29udGV4dFxuICAgICAgICA/IFsuLi5jdXJyZW50LmNvbnRlbnQsIHsgdGV4dDogSlNPTi5zdHJpbmdpZnkoYWlDb250ZXh0KSB9XVxuICAgICAgICA6IGN1cnJlbnQuY29udGVudDtcblxuICAgICAgYWNjLnB1c2goeyByb2xlOiBjdXJyZW50LnJvbGUsIGNvbnRlbnQgfSk7XG5cbiAgICAgIC8vIEZpbmQgYW5kIGluc2VydCBjb3JyZXNwb25kaW5nIGFzc2lzdGFudCBtZXNzYWdlLlxuICAgICAgY29uc3QgY29ycmVzcG9uZGluZ0Fzc2lzdGFudE1lc3NhZ2UgPSBhc3Npc3RhbnRNZXNzYWdlQnlVc2VyTWVzc2FnZUlkLmdldChcbiAgICAgICAgY3VycmVudC5pZFxuICAgICAgKTtcbiAgICAgIGlmIChjb3JyZXNwb25kaW5nQXNzaXN0YW50TWVzc2FnZSkge1xuICAgICAgICBhY2MucHVzaCh7XG4gICAgICAgICAgcm9sZTogY29ycmVzcG9uZGluZ0Fzc2lzdGFudE1lc3NhZ2Uucm9sZSxcbiAgICAgICAgICBjb250ZW50OiBjb3JyZXNwb25kaW5nQXNzaXN0YW50TWVzc2FnZS5jb250ZW50LFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBhY2M7XG4gICAgfSwgW10gYXMgQXJyYXk8Q29udmVyc2F0aW9uTWVzc2FnZT4pO1xuICB9O1xuXG4gIHByaXZhdGUgZ2V0Q3VycmVudE1lc3NhZ2UgPVxuICAgIGFzeW5jICgpOiBQcm9taXNlPENvbnZlcnNhdGlvbkhpc3RvcnlNZXNzYWdlSXRlbT4gPT4ge1xuICAgICAgY29uc3QgcXVlcnkgPSBgXG4gICAgICAgIHF1ZXJ5IEdldE1lc3NhZ2UoJGlkOiAke3RoaXMuZXZlbnQubWVzc2FnZUhpc3RvcnlRdWVyeS5nZXRRdWVyeUlucHV0VHlwZU5hbWV9ISkge1xuICAgICAgICAgICAgJHt0aGlzLmV2ZW50Lm1lc3NhZ2VIaXN0b3J5UXVlcnkuZ2V0UXVlcnlOYW1lfShpZDogJGlkKSB7XG4gICAgICAgICAgICAgICR7bWVzc2FnZUl0ZW1TZWxlY3Rpb25TZXR9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICBgO1xuICAgICAgY29uc3QgdmFyaWFibGVzOiBHZXRRdWVyeUlucHV0ID0ge1xuICAgICAgICBpZDogdGhpcy5ldmVudC5jdXJyZW50TWVzc2FnZUlkLFxuICAgICAgfTtcblxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmdyYXBocWxSZXF1ZXN0RXhlY3V0b3IuZXhlY3V0ZUdyYXBocWw8XG4gICAgICAgIEdldFF1ZXJ5SW5wdXQsXG4gICAgICAgIEdldFF1ZXJ5T3V0cHV0XG4gICAgICA+KHtcbiAgICAgICAgcXVlcnksXG4gICAgICAgIHZhcmlhYmxlcyxcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YVt0aGlzLmV2ZW50Lm1lc3NhZ2VIaXN0b3J5UXVlcnkuZ2V0UXVlcnlOYW1lXTtcbiAgICB9O1xuXG4gIHByaXZhdGUgbGlzdE1lc3NhZ2VzID0gYXN5bmMgKCk6IFByb21pc2U8XG4gICAgQXJyYXk8Q29udmVyc2F0aW9uSGlzdG9yeU1lc3NhZ2VJdGVtPlxuICA+ID0+IHtcbiAgICBjb25zdCBxdWVyeSA9IGBcbiAgICAgICAgcXVlcnkgTGlzdE1lc3NhZ2VzKCRmaWx0ZXI6ICR7dGhpcy5ldmVudC5tZXNzYWdlSGlzdG9yeVF1ZXJ5Lmxpc3RRdWVyeUlucHV0VHlwZU5hbWV9ISwgJGxpbWl0OiBJbnQpIHtcbiAgICAgICAgICAgICR7dGhpcy5ldmVudC5tZXNzYWdlSGlzdG9yeVF1ZXJ5Lmxpc3RRdWVyeU5hbWV9KGZpbHRlcjogJGZpbHRlciwgbGltaXQ6ICRsaW1pdCkge1xuICAgICAgICAgICAgICBpdGVtcyB7XG4gICAgICAgICAgICAgICAgJHttZXNzYWdlSXRlbVNlbGVjdGlvblNldH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgYDtcbiAgICBjb25zdCB2YXJpYWJsZXM6IExpc3RRdWVyeUlucHV0ID0ge1xuICAgICAgZmlsdGVyOiB7XG4gICAgICAgIGNvbnZlcnNhdGlvbklkOiB7XG4gICAgICAgICAgZXE6IHRoaXMuZXZlbnQuY29udmVyc2F0aW9uSWQsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgbGltaXQ6IHRoaXMuZXZlbnQubWVzc2FnZUhpc3RvcnlRdWVyeS5saXN0UXVlcnlMaW1pdCA/PyAxMDAwLFxuICAgIH07XG5cbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuZ3JhcGhxbFJlcXVlc3RFeGVjdXRvci5leGVjdXRlR3JhcGhxbDxcbiAgICAgIExpc3RRdWVyeUlucHV0LFxuICAgICAgTGlzdFF1ZXJ5T3V0cHV0XG4gICAgPih7XG4gICAgICBxdWVyeSxcbiAgICAgIHZhcmlhYmxlcyxcbiAgICB9KTtcblxuICAgIGNvbnN0IGl0ZW1zID1cbiAgICAgIHJlc3BvbnNlLmRhdGFbdGhpcy5ldmVudC5tZXNzYWdlSGlzdG9yeVF1ZXJ5Lmxpc3RRdWVyeU5hbWVdLml0ZW1zO1xuXG4gICAgaXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgaXRlbS5jb250ZW50Py5mb3JFYWNoKChjb250ZW50QmxvY2spID0+IHtcbiAgICAgICAgbGV0IHByb3BlcnR5OiBrZXlvZiB0eXBlb2YgY29udGVudEJsb2NrO1xuICAgICAgICBmb3IgKHByb3BlcnR5IGluIGNvbnRlbnRCbG9jaykge1xuICAgICAgICAgIC8vIERlc2VyaWFsaXphdGlvbiBvZiBHcmFwaFFsIHF1ZXJ5IHJlc3VsdCBzZXRzIHRoZXNlIHByb3BlcnRpZXMgdG8gJ251bGwnXG4gICAgICAgICAgLy8gVGhpcyBjYW4gdHJpZ2dlciBCZWRyb2NrIFNESyB2YWxpZGF0aW9uIGFzIGl0IGV4cGVjdHMgJ3VuZGVmaW5lZCcgaWYgcHJvcGVydGllcyBhcmUgbm90IHNldC5cbiAgICAgICAgICAvLyBXZSBjYW4ndCBmaXggaG93IEdyYXBoUWwgcmVzcG9uc2UgaXMgZGVzZXJpYWxpemVkLlxuICAgICAgICAgIC8vIFRoZXJlZm9yZSwgd2UgYXBwbHkgdGhpcyB0cmFuc2Zvcm1hdGlvbiB0byBmaXggdGhlIGRhdGEuXG4gICAgICAgICAgaWYgKGNvbnRlbnRCbG9ja1twcm9wZXJ0eV0gPT09IG51bGwpIHtcbiAgICAgICAgICAgIGNvbnRlbnRCbG9ja1twcm9wZXJ0eV0gPSB1bmRlZmluZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50QmxvY2sudG9vbFVzZT8uaW5wdXQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgLy8gdG9vbFVzZS5pbnB1dCBtYXkgY29tZSBhcyBzZXJpYWxpemVkIEpTT04gZm9yIENsaWVudCBUb29scy5cbiAgICAgICAgICAvLyBQYXJzZSBpdCBpbiB0aGF0IGNhc2UuXG4gICAgICAgICAgY29udGVudEJsb2NrLnRvb2xVc2UuaW5wdXQgPSBKU09OLnBhcnNlKGNvbnRlbnRCbG9jay50b29sVXNlLmlucHV0KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY29udGVudEJsb2NrLnRvb2xSZXN1bHQ/LmNvbnRlbnQpIHtcbiAgICAgICAgICBjb250ZW50QmxvY2sudG9vbFJlc3VsdC5jb250ZW50LmZvckVhY2goKHRvb2xSZXN1bHRDb250ZW50QmxvY2spID0+IHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdG9vbFJlc3VsdENvbnRlbnRCbG9jay5qc29uID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAvLyB0b29sUmVzdWx0LmNvbnRlbnRbXS5qc29uIG1heSBjb21lIGFzIHNlcmlhbGl6ZWQgSlNPTiBmb3IgQ2xpZW50IFRvb2xzLlxuICAgICAgICAgICAgICAvLyBQYXJzZSBpdCBpbiB0aGF0IGNhc2UuXG4gICAgICAgICAgICAgIHRvb2xSZXN1bHRDb250ZW50QmxvY2suanNvbiA9IEpTT04ucGFyc2UoXG4gICAgICAgICAgICAgICAgdG9vbFJlc3VsdENvbnRlbnRCbG9jay5qc29uXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGl0ZW1zO1xuICB9O1xufVxuIl19
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/// <reference types="node" />
|
2
2
|
import { ConversationTurnResponseSender } from './conversation_turn_response_sender.js';
|
3
|
-
import { ConversationTurnEvent, ExecutableTool } from './types.js';
|
3
|
+
import { ConversationTurnEvent, ExecutableTool, JSONSchema } from './types.js';
|
4
4
|
import { BedrockConverseAdapter } from './bedrock_converse_adapter.js';
|
5
5
|
/**
|
6
6
|
* This class is responsible for orchestrating conversation turn execution.
|
@@ -25,6 +25,6 @@ export declare class ConversationTurnExecutor {
|
|
25
25
|
* AppSync instance with conversational routes defined and sends response back.
|
26
26
|
*/
|
27
27
|
export declare const handleConversationTurnEvent: (event: ConversationTurnEvent, props?: {
|
28
|
-
tools?: Array<ExecutableTool
|
28
|
+
tools?: Array<ExecutableTool<JSONSchema, any>>;
|
29
29
|
}) => Promise<void>;
|
30
30
|
//# sourceMappingURL=conversation_turn_executor.d.ts.map
|
@@ -22,8 +22,17 @@ class ConversationTurnExecutor {
|
|
22
22
|
this.execute = async () => {
|
23
23
|
try {
|
24
24
|
this.logger.log(`Handling conversation turn event, currentMessageId=${this.event.currentMessageId}, conversationId=${this.event.conversationId}`);
|
25
|
-
|
26
|
-
|
25
|
+
this.logger.debug('Event received:', this.event);
|
26
|
+
if (this.event.streamResponse) {
|
27
|
+
const chunks = this.bedrockConverseAdapter.askBedrockStreaming();
|
28
|
+
for await (const chunk of chunks) {
|
29
|
+
await this.responseSender.sendResponseChunk(chunk);
|
30
|
+
}
|
31
|
+
}
|
32
|
+
else {
|
33
|
+
const assistantResponse = await this.bedrockConverseAdapter.askBedrock();
|
34
|
+
await this.responseSender.sendResponse(assistantResponse);
|
35
|
+
}
|
27
36
|
this.logger.log(`Conversation turn event handled successfully, currentMessageId=${this.event.currentMessageId}, conversationId=${this.event.conversationId}`);
|
28
37
|
}
|
29
38
|
catch (e) {
|
@@ -39,9 +48,13 @@ exports.ConversationTurnExecutor = ConversationTurnExecutor;
|
|
39
48
|
* This function handles a conversation turn event that is coming from
|
40
49
|
* AppSync instance with conversational routes defined and sends response back.
|
41
50
|
*/
|
42
|
-
const handleConversationTurnEvent = async (event,
|
51
|
+
const handleConversationTurnEvent = async (event,
|
52
|
+
// This is by design, so that tools with different input types can be added
|
53
|
+
// to single arrays. Downstream code doesn't use these types.
|
54
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
55
|
+
props) => {
|
43
56
|
var _a;
|
44
57
|
await new ConversationTurnExecutor(event, (_a = props === null || props === void 0 ? void 0 : props.tools) !== null && _a !== void 0 ? _a : []).execute();
|
45
58
|
};
|
46
59
|
exports.handleConversationTurnEvent = handleConversationTurnEvent;
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uX3R1cm5fZXhlY3V0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udmVyc2F0aW9uL3J1bnRpbWUvY29udmVyc2F0aW9uX3R1cm5fZXhlY3V0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUdBQXdGO0FBRXhGLCtFQUF1RTtBQUV2RTs7Ozs7O0dBTUc7QUFDSCxNQUFhLHdCQUF3QjtJQUNuQzs7T0FFRztJQUNILFlBQ21CLEtBQTRCLEVBQzdDLGVBQXNDLEVBQ3JCLHlCQUF5QixJQUFJLG9EQUFzQixDQUNsRSxLQUFLLEVBQ0wsZUFBZSxDQUNoQixFQUNnQixpQkFBaUIsSUFBSSxxRUFBOEIsQ0FBQyxLQUFLLENBQUMsRUFDMUQsU0FBUyxPQUFPO1FBUGhCLFVBQUssR0FBTCxLQUFLLENBQXVCO1FBRTVCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FHdEM7UUFDZ0IsbUJBQWMsR0FBZCxjQUFjLENBQTRDO1FBQzFELFdBQU0sR0FBTixNQUFNLENBQVU7UUFHbkMsWUFBTyxHQUFHLEtBQUssSUFBbUIsRUFBRTtZQUNsQyxJQUFJO2dCQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUNiLHNEQUFzRCxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixvQkFBb0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FDakksQ0FBQztnQkFDRixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBRWpELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUU7b0JBQzdCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO29CQUNqRSxJQUFJLEtBQUssRUFBRSxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUU7d0JBQ2hDLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztxQkFDcEQ7aUJBQ0Y7cUJBQU07b0JBQ0wsTUFBTSxpQkFBaUIsR0FDckIsTUFBTSxJQUFJLENBQUMsc0JBQXNCLENBQUMsVUFBVSxFQUFFLENBQUM7b0JBQ2pELE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsQ0FBQztpQkFDM0Q7Z0JBRUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQ2Isa0VBQWtFLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLG9CQUFvQixJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUM3SSxDQUFDO2FBQ0g7WUFBQyxPQUFPLENBQUMsRUFBRTtnQkFDVixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZiw4REFBOEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0Isb0JBQW9CLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLEVBQ3hJLENBQUMsQ0FDRixDQUFDO2dCQUNGLGlFQUFpRTtnQkFDakUsTUFBTSxDQUFDLENBQUM7YUFDVDtRQUNILENBQUMsQ0FBQztJQS9CQyxDQUFDO0NBZ0NMO0FBN0NELDREQTZDQztBQUVEOzs7R0FHRztBQUNJLE1BQU0sMkJBQTJCLEdBQUcsS0FBSyxFQUM5QyxLQUE0QjtBQUM1QiwyRUFBMkU7QUFDM0UsNkRBQTZEO0FBQzdELDhEQUE4RDtBQUM5RCxLQUEwRCxFQUMzQyxFQUFFOztJQUNqQixNQUFNLElBQUksd0JBQXdCLENBQUMsS0FBSyxFQUFFLE1BQUEsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLEtBQUssbUNBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7QUFDMUUsQ0FBQyxDQUFDO0FBUlcsUUFBQSwyQkFBMkIsK0JBUXRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udmVyc2F0aW9uVHVyblJlc3BvbnNlU2VuZGVyIH0gZnJvbSAnLi9jb252ZXJzYXRpb25fdHVybl9yZXNwb25zZV9zZW5kZXIuanMnO1xuaW1wb3J0IHsgQ29udmVyc2F0aW9uVHVybkV2ZW50LCBFeGVjdXRhYmxlVG9vbCwgSlNPTlNjaGVtYSB9IGZyb20gJy4vdHlwZXMuanMnO1xuaW1wb3J0IHsgQmVkcm9ja0NvbnZlcnNlQWRhcHRlciB9IGZyb20gJy4vYmVkcm9ja19jb252ZXJzZV9hZGFwdGVyLmpzJztcblxuLyoqXG4gKiBUaGlzIGNsYXNzIGlzIHJlc3BvbnNpYmxlIGZvciBvcmNoZXN0cmF0aW5nIGNvbnZlcnNhdGlvbiB0dXJuIGV4ZWN1dGlvbi5cbiAqIFRoZSBjb252ZXJzYXRpb24gdHVybiBjb25zaXN0IG9mOlxuICogMS4gQWNjZXB0aW5nIGFuIGV2ZW50IHRoYXQgaXMgY29taW5nIGZyb20gY29udmVyc2F0aW9uYWwgcm91dGUgcmVzb2x2ZXJzIGluIEFwcFN5bmMuXG4gKiAyLiBJbnRlcmFjdGluZyB3aXRoIEFXUyBCZWRyb2NrIHRvIHByb2R1Y2UgcmVzcG9uc2UuXG4gKiAzLiBTZW5kIHJlc3BvbnNlIGJhY2sgdG8gQXBwU3luYyBpbiBhIGZvcm0gb2YgbXV0YXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBDb252ZXJzYXRpb25UdXJuRXhlY3V0b3Ige1xuICAvKipcbiAgICogQ3JlYXRlcyBjb252ZXJzYXRpb24gdHVybiBleGVjdXRvci5cbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZXZlbnQ6IENvbnZlcnNhdGlvblR1cm5FdmVudCxcbiAgICBhZGRpdGlvbmFsVG9vbHM6IEFycmF5PEV4ZWN1dGFibGVUb29sPixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGJlZHJvY2tDb252ZXJzZUFkYXB0ZXIgPSBuZXcgQmVkcm9ja0NvbnZlcnNlQWRhcHRlcihcbiAgICAgIGV2ZW50LFxuICAgICAgYWRkaXRpb25hbFRvb2xzXG4gICAgKSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc3BvbnNlU2VuZGVyID0gbmV3IENvbnZlcnNhdGlvblR1cm5SZXNwb25zZVNlbmRlcihldmVudCksXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBjb25zb2xlXG4gICkge31cblxuICBleGVjdXRlID0gYXN5bmMgKCk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLmxvZ2dlci5sb2coXG4gICAgICAgIGBIYW5kbGluZyBjb252ZXJzYXRpb24gdHVybiBldmVudCwgY3VycmVudE1lc3NhZ2VJZD0ke3RoaXMuZXZlbnQuY3VycmVudE1lc3NhZ2VJZH0sIGNvbnZlcnNhdGlvbklkPSR7dGhpcy5ldmVudC5jb252ZXJzYXRpb25JZH1gXG4gICAgICApO1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ0V2ZW50IHJlY2VpdmVkOicsIHRoaXMuZXZlbnQpO1xuXG4gICAgICBpZiAodGhpcy5ldmVudC5zdHJlYW1SZXNwb25zZSkge1xuICAgICAgICBjb25zdCBjaHVua3MgPSB0aGlzLmJlZHJvY2tDb252ZXJzZUFkYXB0ZXIuYXNrQmVkcm9ja1N0cmVhbWluZygpO1xuICAgICAgICBmb3IgYXdhaXQgKGNvbnN0IGNodW5rIG9mIGNodW5rcykge1xuICAgICAgICAgIGF3YWl0IHRoaXMucmVzcG9uc2VTZW5kZXIuc2VuZFJlc3BvbnNlQ2h1bmsoY2h1bmspO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBhc3Npc3RhbnRSZXNwb25zZSA9XG4gICAgICAgICAgYXdhaXQgdGhpcy5iZWRyb2NrQ29udmVyc2VBZGFwdGVyLmFza0JlZHJvY2soKTtcbiAgICAgICAgYXdhaXQgdGhpcy5yZXNwb25zZVNlbmRlci5zZW5kUmVzcG9uc2UoYXNzaXN0YW50UmVzcG9uc2UpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmxvZ2dlci5sb2coXG4gICAgICAgIGBDb252ZXJzYXRpb24gdHVybiBldmVudCBoYW5kbGVkIHN1Y2Nlc3NmdWxseSwgY3VycmVudE1lc3NhZ2VJZD0ke3RoaXMuZXZlbnQuY3VycmVudE1lc3NhZ2VJZH0sIGNvbnZlcnNhdGlvbklkPSR7dGhpcy5ldmVudC5jb252ZXJzYXRpb25JZH1gXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmVycm9yKFxuICAgICAgICBgRmFpbGVkIHRvIGhhbmRsZSBjb252ZXJzYXRpb24gdHVybiBldmVudCwgY3VycmVudE1lc3NhZ2VJZD0ke3RoaXMuZXZlbnQuY3VycmVudE1lc3NhZ2VJZH0sIGNvbnZlcnNhdGlvbklkPSR7dGhpcy5ldmVudC5jb252ZXJzYXRpb25JZH1gLFxuICAgICAgICBlXG4gICAgICApO1xuICAgICAgLy8gUHJvcGFnYXRlIGVycm9yIHRvIG1hcmsgbGFtYmRhIGV4ZWN1dGlvbiBhcyBmYWlsZWQgaW4gbWV0cmljcy5cbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9O1xufVxuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gaGFuZGxlcyBhIGNvbnZlcnNhdGlvbiB0dXJuIGV2ZW50IHRoYXQgaXMgY29taW5nIGZyb21cbiAqIEFwcFN5bmMgaW5zdGFuY2Ugd2l0aCBjb252ZXJzYXRpb25hbCByb3V0ZXMgZGVmaW5lZCBhbmQgc2VuZHMgcmVzcG9uc2UgYmFjay5cbiAqL1xuZXhwb3J0IGNvbnN0IGhhbmRsZUNvbnZlcnNhdGlvblR1cm5FdmVudCA9IGFzeW5jIChcbiAgZXZlbnQ6IENvbnZlcnNhdGlvblR1cm5FdmVudCxcbiAgLy8gVGhpcyBpcyBieSBkZXNpZ24sIHNvIHRoYXQgdG9vbHMgd2l0aCBkaWZmZXJlbnQgaW5wdXQgdHlwZXMgY2FuIGJlIGFkZGVkXG4gIC8vIHRvIHNpbmdsZSBhcnJheXMuIERvd25zdHJlYW0gY29kZSBkb2Vzbid0IHVzZSB0aGVzZSB0eXBlcy5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgcHJvcHM/OiB7IHRvb2xzPzogQXJyYXk8RXhlY3V0YWJsZVRvb2w8SlNPTlNjaGVtYSwgYW55Pj4gfVxuKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGF3YWl0IG5ldyBDb252ZXJzYXRpb25UdXJuRXhlY3V0b3IoZXZlbnQsIHByb3BzPy50b29scyA/PyBbXSkuZXhlY3V0ZSgpO1xufTtcbiJdfQ==
|
@@ -1,13 +1,23 @@
|
|
1
|
-
|
1
|
+
/// <reference types="node" />
|
2
|
+
import { ConversationTurnError, ConversationTurnEvent, ConversationTurnResponse, StreamingResponseChunk } from './types.js';
|
2
3
|
import type { ContentBlock } from '@aws-sdk/client-bedrock-runtime';
|
3
4
|
import { GraphqlRequestExecutor } from './graphql_request_executor';
|
4
5
|
export type MutationResponseInput = {
|
5
6
|
input: {
|
7
|
+
associatedUserMessageId: string;
|
6
8
|
conversationId: string;
|
7
9
|
content: ContentBlock[];
|
10
|
+
errors?: never;
|
11
|
+
} | {
|
8
12
|
associatedUserMessageId: string;
|
13
|
+
conversationId: string;
|
14
|
+
content?: never;
|
15
|
+
errors: ConversationTurnError[];
|
9
16
|
};
|
10
17
|
};
|
18
|
+
export type MutationStreamingResponseInput = {
|
19
|
+
input: StreamingResponseChunk;
|
20
|
+
};
|
11
21
|
/**
|
12
22
|
* This class is responsible for sending a response produced by Bedrock back to AppSync
|
13
23
|
* in a form of mutation.
|
@@ -15,11 +25,15 @@ export type MutationResponseInput = {
|
|
15
25
|
export declare class ConversationTurnResponseSender {
|
16
26
|
private readonly event;
|
17
27
|
private readonly graphqlRequestExecutor;
|
28
|
+
private readonly logger;
|
18
29
|
/**
|
19
30
|
* Creates conversation turn response sender.
|
20
31
|
*/
|
21
|
-
constructor(event: ConversationTurnEvent, graphqlRequestExecutor?: GraphqlRequestExecutor);
|
22
|
-
sendResponse: (
|
32
|
+
constructor(event: ConversationTurnEvent, graphqlRequestExecutor?: GraphqlRequestExecutor, logger?: Console);
|
33
|
+
sendResponse: (response: ConversationTurnResponse) => Promise<void>;
|
34
|
+
sendResponseChunk: (chunk: StreamingResponseChunk) => Promise<void>;
|
23
35
|
private createMutationRequest;
|
36
|
+
private createStreamingMutationRequest;
|
37
|
+
private serializeContent;
|
24
38
|
}
|
25
39
|
//# sourceMappingURL=conversation_turn_response_sender.d.ts.map
|
@@ -10,17 +10,53 @@ class ConversationTurnResponseSender {
|
|
10
10
|
/**
|
11
11
|
* Creates conversation turn response sender.
|
12
12
|
*/
|
13
|
-
constructor(event, graphqlRequestExecutor = new graphql_request_executor_1.GraphqlRequestExecutor(event.graphqlApiEndpoint, event.request.headers.authorization)) {
|
13
|
+
constructor(event, graphqlRequestExecutor = new graphql_request_executor_1.GraphqlRequestExecutor(event.graphqlApiEndpoint, event.request.headers.authorization, event.request.headers['x-amz-user-agent']), logger = console) {
|
14
14
|
this.event = event;
|
15
15
|
this.graphqlRequestExecutor = graphqlRequestExecutor;
|
16
|
-
this.
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
16
|
+
this.logger = logger;
|
17
|
+
this.sendResponse = async (response) => {
|
18
|
+
const responseMutationRequest = this.createMutationRequest(response);
|
19
|
+
this.logger.debug('Sending response mutation:', responseMutationRequest);
|
20
|
+
await this.graphqlRequestExecutor.executeGraphql(responseMutationRequest);
|
21
|
+
};
|
22
|
+
this.sendResponseChunk = async (chunk) => {
|
23
|
+
const responseMutationRequest = this.createStreamingMutationRequest(chunk);
|
24
|
+
this.logger.debug('Sending response mutation:', responseMutationRequest);
|
25
|
+
await this.graphqlRequestExecutor.executeGraphql(responseMutationRequest);
|
26
|
+
};
|
27
|
+
this.createMutationRequest = (response) => {
|
28
|
+
const query = `
|
29
|
+
mutation PublishModelResponse($input: ${this.event.responseMutation.inputTypeName}!) {
|
30
|
+
${this.event.responseMutation.name}(input: $input) {
|
31
|
+
${this.event.responseMutation.selectionSet}
|
32
|
+
}
|
33
|
+
}
|
34
|
+
`;
|
35
|
+
let variables;
|
36
|
+
if (typeof response.content !== 'undefined') {
|
37
|
+
variables = {
|
38
|
+
input: {
|
39
|
+
conversationId: this.event.conversationId,
|
40
|
+
content: this.serializeContent(response.content),
|
41
|
+
associatedUserMessageId: this.event.currentMessageId,
|
42
|
+
},
|
43
|
+
};
|
44
|
+
}
|
45
|
+
else if (typeof response.errors !== 'undefined') {
|
46
|
+
variables = {
|
47
|
+
input: {
|
48
|
+
conversationId: this.event.conversationId,
|
49
|
+
errors: response.errors,
|
50
|
+
associatedUserMessageId: this.event.currentMessageId,
|
51
|
+
},
|
52
|
+
};
|
53
|
+
}
|
54
|
+
else {
|
55
|
+
throw new Error('Response contains neither content nor error');
|
56
|
+
}
|
57
|
+
return { query, variables };
|
22
58
|
};
|
23
|
-
this.
|
59
|
+
this.createStreamingMutationRequest = (chunk) => {
|
24
60
|
const query = `
|
25
61
|
mutation PublishModelResponse($input: ${this.event.responseMutation.inputTypeName}!) {
|
26
62
|
${this.event.responseMutation.name}(input: $input) {
|
@@ -28,7 +64,17 @@ class ConversationTurnResponseSender {
|
|
28
64
|
}
|
29
65
|
}
|
30
66
|
`;
|
31
|
-
|
67
|
+
chunk = {
|
68
|
+
...chunk,
|
69
|
+
accumulatedTurnContent: this.serializeContent(chunk.accumulatedTurnContent),
|
70
|
+
};
|
71
|
+
const variables = {
|
72
|
+
input: chunk,
|
73
|
+
};
|
74
|
+
return { query, variables };
|
75
|
+
};
|
76
|
+
this.serializeContent = (content) => {
|
77
|
+
return content.map((block) => {
|
32
78
|
if (block.toolUse) {
|
33
79
|
// The `input` field is typed as `AWS JSON` in the GraphQL API because it can represent
|
34
80
|
// arbitrary JSON values.
|
@@ -38,16 +84,8 @@ class ConversationTurnResponseSender {
|
|
38
84
|
}
|
39
85
|
return block;
|
40
86
|
});
|
41
|
-
const variables = {
|
42
|
-
input: {
|
43
|
-
conversationId: this.event.conversationId,
|
44
|
-
content,
|
45
|
-
associatedUserMessageId: this.event.currentMessageId,
|
46
|
-
},
|
47
|
-
};
|
48
|
-
return { query, variables };
|
49
87
|
};
|
50
88
|
}
|
51
89
|
}
|
52
90
|
exports.ConversationTurnResponseSender = ConversationTurnResponseSender;
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uX3R1cm5fcmVzcG9uc2Vfc2VuZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnZlcnNhdGlvbi9ydW50aW1lL2NvbnZlcnNhdGlvbl90dXJuX3Jlc3BvbnNlX3NlbmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFPQSx5RUFBb0U7QUFzQnBFOzs7R0FHRztBQUNILE1BQWEsOEJBQThCO0lBQ3pDOztPQUVHO0lBQ0gsWUFDbUIsS0FBNEIsRUFDNUIseUJBQXlCLElBQUksaURBQXNCLENBQ2xFLEtBQUssQ0FBQyxrQkFBa0IsRUFDeEIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUNuQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUMxQyxFQUNnQixTQUFTLE9BQU87UUFOaEIsVUFBSyxHQUFMLEtBQUssQ0FBdUI7UUFDNUIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUl0QztRQUNnQixXQUFNLEdBQU4sTUFBTSxDQUFVO1FBR25DLGlCQUFZLEdBQUcsS0FBSyxFQUFFLFFBQWtDLEVBQUUsRUFBRTtZQUMxRCxNQUFNLHVCQUF1QixHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNyRSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyw0QkFBNEIsRUFBRSx1QkFBdUIsQ0FBQyxDQUFDO1lBQ3pFLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixDQUFDLGNBQWMsQ0FHOUMsdUJBQXVCLENBQUMsQ0FBQztRQUM3QixDQUFDLENBQUM7UUFFRixzQkFBaUIsR0FBRyxLQUFLLEVBQUUsS0FBNkIsRUFBRSxFQUFFO1lBQzFELE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxDQUFDLDhCQUE4QixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzNFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLDRCQUE0QixFQUFFLHVCQUF1QixDQUFDLENBQUM7WUFDekUsTUFBTSxJQUFJLENBQUMsc0JBQXNCLENBQUMsY0FBYyxDQUc5Qyx1QkFBdUIsQ0FBQyxDQUFDO1FBQzdCLENBQUMsQ0FBQztRQUVNLDBCQUFxQixHQUFHLENBQUMsUUFBa0MsRUFBRSxFQUFFO1lBQ3JFLE1BQU0sS0FBSyxHQUFHO2dEQUM4QixJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLGFBQWE7Y0FDM0UsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJO2tCQUM1QixJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFlBQVk7OztLQUdyRCxDQUFDO1lBQ0YsSUFBSSxTQUFnQyxDQUFDO1lBQ3JDLElBQUksT0FBTyxRQUFRLENBQUMsT0FBTyxLQUFLLFdBQVcsRUFBRTtnQkFDM0MsU0FBUyxHQUFHO29CQUNWLEtBQUssRUFBRTt3QkFDTCxjQUFjLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjO3dCQUN6QyxPQUFPLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7d0JBQ2hELHVCQUF1QixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCO3FCQUNyRDtpQkFDRixDQUFDO2FBQ0g7aUJBQU0sSUFBSSxPQUFPLFFBQVEsQ0FBQyxNQUFNLEtBQUssV0FBVyxFQUFFO2dCQUNqRCxTQUFTLEdBQUc7b0JBQ1YsS0FBSyxFQUFFO3dCQUNMLGNBQWMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWM7d0JBQ3pDLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTTt3QkFDdkIsdUJBQXVCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0I7cUJBQ3JEO2lCQUNGLENBQUM7YUFDSDtpQkFBTTtnQkFDTCxNQUFNLElBQUksS0FBSyxDQUFDLDZDQUE2QyxDQUFDLENBQUM7YUFDaEU7WUFDRCxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxDQUFDO1FBQzlCLENBQUMsQ0FBQztRQUVNLG1DQUE4QixHQUFHLENBQUMsS0FBNkIsRUFBRSxFQUFFO1lBQ3pFLE1BQU0sS0FBSyxHQUFHO2dEQUM4QixJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLGFBQWE7Y0FDM0UsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJO2tCQUM1QixJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFlBQVk7OztLQUdyRCxDQUFDO1lBQ0YsS0FBSyxHQUFHO2dCQUNOLEdBQUcsS0FBSztnQkFDUixzQkFBc0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQzNDLEtBQUssQ0FBQyxzQkFBc0IsQ0FDN0I7YUFDRixDQUFDO1lBQ0YsTUFBTSxTQUFTLEdBQW1DO2dCQUNoRCxLQUFLLEVBQUUsS0FBSzthQUNiLENBQUM7WUFDRixPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxDQUFDO1FBQzlCLENBQUMsQ0FBQztRQUVNLHFCQUFnQixHQUFHLENBQUMsT0FBdUIsRUFBRSxFQUFFO1lBQ3JELE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUMzQixJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUU7b0JBQ2pCLHVGQUF1RjtvQkFDdkYseUJBQXlCO29CQUN6QiwrRUFBK0U7b0JBQy9FLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDbEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUFFLEdBQUcsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO2lCQUNqRDtnQkFDRCxPQUFPLEtBQUssQ0FBQztZQUNmLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO0lBbEZDLENBQUM7Q0FtRkw7QUEvRkQsd0VBK0ZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29udmVyc2F0aW9uVHVybkVycm9yLFxuICBDb252ZXJzYXRpb25UdXJuRXZlbnQsXG4gIENvbnZlcnNhdGlvblR1cm5SZXNwb25zZSxcbiAgU3RyZWFtaW5nUmVzcG9uc2VDaHVuayxcbn0gZnJvbSAnLi90eXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7IENvbnRlbnRCbG9jayB9IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1iZWRyb2NrLXJ1bnRpbWUnO1xuaW1wb3J0IHsgR3JhcGhxbFJlcXVlc3RFeGVjdXRvciB9IGZyb20gJy4vZ3JhcGhxbF9yZXF1ZXN0X2V4ZWN1dG9yJztcblxuZXhwb3J0IHR5cGUgTXV0YXRpb25SZXNwb25zZUlucHV0ID0ge1xuICBpbnB1dDpcbiAgICB8IHtcbiAgICAgICAgYXNzb2NpYXRlZFVzZXJNZXNzYWdlSWQ6IHN0cmluZztcbiAgICAgICAgY29udmVyc2F0aW9uSWQ6IHN0cmluZztcbiAgICAgICAgY29udGVudDogQ29udGVudEJsb2NrW107XG4gICAgICAgIGVycm9ycz86IG5ldmVyO1xuICAgICAgfVxuICAgIHwge1xuICAgICAgICBhc3NvY2lhdGVkVXNlck1lc3NhZ2VJZDogc3RyaW5nO1xuICAgICAgICBjb252ZXJzYXRpb25JZDogc3RyaW5nO1xuICAgICAgICBjb250ZW50PzogbmV2ZXI7XG4gICAgICAgIGVycm9yczogQ29udmVyc2F0aW9uVHVybkVycm9yW107XG4gICAgICB9O1xufTtcblxuZXhwb3J0IHR5cGUgTXV0YXRpb25TdHJlYW1pbmdSZXNwb25zZUlucHV0ID0ge1xuICBpbnB1dDogU3RyZWFtaW5nUmVzcG9uc2VDaHVuaztcbn07XG5cbi8qKlxuICogVGhpcyBjbGFzcyBpcyByZXNwb25zaWJsZSBmb3Igc2VuZGluZyBhIHJlc3BvbnNlIHByb2R1Y2VkIGJ5IEJlZHJvY2sgYmFjayB0byBBcHBTeW5jXG4gKiBpbiBhIGZvcm0gb2YgbXV0YXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBDb252ZXJzYXRpb25UdXJuUmVzcG9uc2VTZW5kZXIge1xuICAvKipcbiAgICogQ3JlYXRlcyBjb252ZXJzYXRpb24gdHVybiByZXNwb25zZSBzZW5kZXIuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGV2ZW50OiBDb252ZXJzYXRpb25UdXJuRXZlbnQsXG4gICAgcHJpdmF0ZSByZWFkb25seSBncmFwaHFsUmVxdWVzdEV4ZWN1dG9yID0gbmV3IEdyYXBocWxSZXF1ZXN0RXhlY3V0b3IoXG4gICAgICBldmVudC5ncmFwaHFsQXBpRW5kcG9pbnQsXG4gICAgICBldmVudC5yZXF1ZXN0LmhlYWRlcnMuYXV0aG9yaXphdGlvbixcbiAgICAgIGV2ZW50LnJlcXVlc3QuaGVhZGVyc1sneC1hbXotdXNlci1hZ2VudCddXG4gICAgKSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IGNvbnNvbGVcbiAgKSB7fVxuXG4gIHNlbmRSZXNwb25zZSA9IGFzeW5jIChyZXNwb25zZTogQ29udmVyc2F0aW9uVHVyblJlc3BvbnNlKSA9PiB7XG4gICAgY29uc3QgcmVzcG9uc2VNdXRhdGlvblJlcXVlc3QgPSB0aGlzLmNyZWF0ZU11dGF0aW9uUmVxdWVzdChyZXNwb25zZSk7XG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ1NlbmRpbmcgcmVzcG9uc2UgbXV0YXRpb246JywgcmVzcG9uc2VNdXRhdGlvblJlcXVlc3QpO1xuICAgIGF3YWl0IHRoaXMuZ3JhcGhxbFJlcXVlc3RFeGVjdXRvci5leGVjdXRlR3JhcGhxbDxcbiAgICAgIE11dGF0aW9uUmVzcG9uc2VJbnB1dCxcbiAgICAgIHZvaWRcbiAgICA+KHJlc3BvbnNlTXV0YXRpb25SZXF1ZXN0KTtcbiAgfTtcblxuICBzZW5kUmVzcG9uc2VDaHVuayA9IGFzeW5jIChjaHVuazogU3RyZWFtaW5nUmVzcG9uc2VDaHVuaykgPT4ge1xuICAgIGNvbnN0IHJlc3BvbnNlTXV0YXRpb25SZXF1ZXN0ID0gdGhpcy5jcmVhdGVTdHJlYW1pbmdNdXRhdGlvblJlcXVlc3QoY2h1bmspO1xuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdTZW5kaW5nIHJlc3BvbnNlIG11dGF0aW9uOicsIHJlc3BvbnNlTXV0YXRpb25SZXF1ZXN0KTtcbiAgICBhd2FpdCB0aGlzLmdyYXBocWxSZXF1ZXN0RXhlY3V0b3IuZXhlY3V0ZUdyYXBocWw8XG4gICAgICBNdXRhdGlvblN0cmVhbWluZ1Jlc3BvbnNlSW5wdXQsXG4gICAgICB2b2lkXG4gICAgPihyZXNwb25zZU11dGF0aW9uUmVxdWVzdCk7XG4gIH07XG5cbiAgcHJpdmF0ZSBjcmVhdGVNdXRhdGlvblJlcXVlc3QgPSAocmVzcG9uc2U6IENvbnZlcnNhdGlvblR1cm5SZXNwb25zZSkgPT4ge1xuICAgIGNvbnN0IHF1ZXJ5ID0gYFxuICAgICAgICBtdXRhdGlvbiBQdWJsaXNoTW9kZWxSZXNwb25zZSgkaW5wdXQ6ICR7dGhpcy5ldmVudC5yZXNwb25zZU11dGF0aW9uLmlucHV0VHlwZU5hbWV9ISkge1xuICAgICAgICAgICAgJHt0aGlzLmV2ZW50LnJlc3BvbnNlTXV0YXRpb24ubmFtZX0oaW5wdXQ6ICRpbnB1dCkge1xuICAgICAgICAgICAgICAgICR7dGhpcy5ldmVudC5yZXNwb25zZU11dGF0aW9uLnNlbGVjdGlvblNldH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIGA7XG4gICAgbGV0IHZhcmlhYmxlczogTXV0YXRpb25SZXNwb25zZUlucHV0O1xuICAgIGlmICh0eXBlb2YgcmVzcG9uc2UuY29udGVudCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHZhcmlhYmxlcyA9IHtcbiAgICAgICAgaW5wdXQ6IHtcbiAgICAgICAgICBjb252ZXJzYXRpb25JZDogdGhpcy5ldmVudC5jb252ZXJzYXRpb25JZCxcbiAgICAgICAgICBjb250ZW50OiB0aGlzLnNlcmlhbGl6ZUNvbnRlbnQocmVzcG9uc2UuY29udGVudCksXG4gICAgICAgICAgYXNzb2NpYXRlZFVzZXJNZXNzYWdlSWQ6IHRoaXMuZXZlbnQuY3VycmVudE1lc3NhZ2VJZCxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgcmVzcG9uc2UuZXJyb3JzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgdmFyaWFibGVzID0ge1xuICAgICAgICBpbnB1dDoge1xuICAgICAgICAgIGNvbnZlcnNhdGlvbklkOiB0aGlzLmV2ZW50LmNvbnZlcnNhdGlvbklkLFxuICAgICAgICAgIGVycm9yczogcmVzcG9uc2UuZXJyb3JzLFxuICAgICAgICAgIGFzc29jaWF0ZWRVc2VyTWVzc2FnZUlkOiB0aGlzLmV2ZW50LmN1cnJlbnRNZXNzYWdlSWQsXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Jlc3BvbnNlIGNvbnRhaW5zIG5laXRoZXIgY29udGVudCBub3IgZXJyb3InKTtcbiAgICB9XG4gICAgcmV0dXJuIHsgcXVlcnksIHZhcmlhYmxlcyB9O1xuICB9O1xuXG4gIHByaXZhdGUgY3JlYXRlU3RyZWFtaW5nTXV0YXRpb25SZXF1ZXN0ID0gKGNodW5rOiBTdHJlYW1pbmdSZXNwb25zZUNodW5rKSA9PiB7XG4gICAgY29uc3QgcXVlcnkgPSBgXG4gICAgICAgIG11dGF0aW9uIFB1Ymxpc2hNb2RlbFJlc3BvbnNlKCRpbnB1dDogJHt0aGlzLmV2ZW50LnJlc3BvbnNlTXV0YXRpb24uaW5wdXRUeXBlTmFtZX0hKSB7XG4gICAgICAgICAgICAke3RoaXMuZXZlbnQucmVzcG9uc2VNdXRhdGlvbi5uYW1lfShpbnB1dDogJGlucHV0KSB7XG4gICAgICAgICAgICAgICAgJHt0aGlzLmV2ZW50LnJlc3BvbnNlTXV0YXRpb24uc2VsZWN0aW9uU2V0fVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgYDtcbiAgICBjaHVuayA9IHtcbiAgICAgIC4uLmNodW5rLFxuICAgICAgYWNjdW11bGF0ZWRUdXJuQ29udGVudDogdGhpcy5zZXJpYWxpemVDb250ZW50KFxuICAgICAgICBjaHVuay5hY2N1bXVsYXRlZFR1cm5Db250ZW50XG4gICAgICApLFxuICAgIH07XG4gICAgY29uc3QgdmFyaWFibGVzOiBNdXRhdGlvblN0cmVhbWluZ1Jlc3BvbnNlSW5wdXQgPSB7XG4gICAgICBpbnB1dDogY2h1bmssXG4gICAgfTtcbiAgICByZXR1cm4geyBxdWVyeSwgdmFyaWFibGVzIH07XG4gIH07XG5cbiAgcHJpdmF0ZSBzZXJpYWxpemVDb250ZW50ID0gKGNvbnRlbnQ6IENvbnRlbnRCbG9ja1tdKSA9PiB7XG4gICAgcmV0dXJuIGNvbnRlbnQubWFwKChibG9jaykgPT4ge1xuICAgICAgaWYgKGJsb2NrLnRvb2xVc2UpIHtcbiAgICAgICAgLy8gVGhlIGBpbnB1dGAgZmllbGQgaXMgdHlwZWQgYXMgYEFXUyBKU09OYCBpbiB0aGUgR3JhcGhRTCBBUEkgYmVjYXVzZSBpdCBjYW4gcmVwcmVzZW50XG4gICAgICAgIC8vIGFyYml0cmFyeSBKU09OIHZhbHVlcy5cbiAgICAgICAgLy8gV2UgbmVlZCB0byBzdHJpbmdpZnkgaXQgYmVmb3JlIHNlbmRpbmcgaXQgdG8gQXBwU3luYyB0byBwcmV2ZW50IHR5cGUgZXJyb3JzLlxuICAgICAgICBjb25zdCBpbnB1dCA9IEpTT04uc3RyaW5naWZ5KGJsb2NrLnRvb2xVc2UuaW5wdXQpO1xuICAgICAgICByZXR1cm4geyB0b29sVXNlOiB7IC4uLmJsb2NrLnRvb2xVc2UsIGlucHV0IH0gfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBibG9jaztcbiAgICB9KTtcbiAgfTtcbn1cbiJdfQ==
|
package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/default_handler.d.ts
CHANGED
@@ -3,6 +3,6 @@
|
|
3
3
|
* This is an entry point for Amplify provided implementation.
|
4
4
|
*/
|
5
5
|
export declare const handler: (event: import("./types.js").ConversationTurnEvent, props?: {
|
6
|
-
tools?: import("./types.js").ExecutableTool[] | undefined;
|
6
|
+
tools?: import("./types.js").ExecutableTool<import("json-schema-to-ts").JSONSchema, any>[] | undefined;
|
7
7
|
} | undefined) => Promise<void>;
|
8
8
|
//# sourceMappingURL=default_handler.d.ts.map
|
@@ -22,11 +22,11 @@ class ConversationTurnEventToolsProvider {
|
|
22
22
|
const tools = (_a = toolsConfiguration.dataTools) === null || _a === void 0 ? void 0 : _a.map((tool) => {
|
23
23
|
const { name, description, inputSchema } = tool;
|
24
24
|
const query = this.graphQlQueryFactory.createQuery(tool);
|
25
|
-
return new graphql_tool_1.GraphQlTool(name, description, inputSchema, graphqlApiEndpoint, query, this.event.request.headers.authorization);
|
25
|
+
return new graphql_tool_1.GraphQlTool(name, description, inputSchema, graphqlApiEndpoint, query, this.event.request.headers.authorization, this.event.request.headers['x-amz-user-agent']);
|
26
26
|
});
|
27
27
|
return tools !== null && tools !== void 0 ? tools : [];
|
28
28
|
};
|
29
29
|
}
|
30
30
|
}
|
31
31
|
exports.ConversationTurnEventToolsProvider = ConversationTurnEventToolsProvider;
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRfdG9vbHNfcHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29udmVyc2F0aW9uL3J1bnRpbWUvZXZlbnQtdG9vbHMtcHJvdmlkZXIvZXZlbnRfdG9vbHNfcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsaURBQTZDO0FBQzdDLG1FQUE4RDtBQUU5RDs7R0FFRztBQUNILE1BQWEsa0NBQWtDO0lBQzdDOztPQUVHO0lBQ0gsWUFDbUIsS0FBNEIsRUFDNUIsc0JBQTJDLElBQUksMkNBQW1CLEVBQUU7UUFEcEUsVUFBSyxHQUFMLEtBQUssQ0FBdUI7UUFDNUIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFpRDtRQUd2RixrQkFBYSxHQUFHLEdBQTBCLEVBQUU7O1lBQzFDLE1BQU0sRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDOUQsSUFBSSxDQUFDLGtCQUFrQixJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxFQUFFO2dCQUN4RCxPQUFPLEVBQUUsQ0FBQzthQUNYO1lBQ0QsTUFBTSxLQUFLLEdBQUcsTUFBQSxrQkFBa0IsQ0FBQyxTQUFTLDBDQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUN2RCxNQUFNLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUM7Z0JBQ2hELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3pELE9BQU8sSUFBSSwwQkFBVyxDQUNwQixJQUFJLEVBQ0osV0FBVyxFQUNYLFdBQVcsRUFDWCxrQkFBa0IsRUFDbEIsS0FBSyxFQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQ3hDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUMvQyxDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQUM7WUFDSCxPQUFPLEtBQUssYUFBTCxLQUFLLGNBQUwsS0FBSyxHQUFJLEVBQUUsQ0FBQztRQUNyQixDQUFDLENBQUM7SUFyQkMsQ0FBQztDQXNCTDtBQTdCRCxnRkE2QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb252ZXJzYXRpb25UdXJuRXZlbnQsIEV4ZWN1dGFibGVUb29sIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgR3JhcGhRbFRvb2wgfSBmcm9tICcuL2dyYXBocWxfdG9vbCc7XG5pbXBvcnQgeyBHcmFwaFFsUXVlcnlGYWN0b3J5IH0gZnJvbSAnLi9ncmFwaHFsX3F1ZXJ5X2ZhY3RvcnknO1xuXG4vKipcbiAqIENyZWF0ZXMgZXhlY3V0YWJsZSB0b29scyBmcm9tIGRlZmluaXRpb25zIGluIGNvbnZlcnNhdGlvbiB0dXJuIGV2ZW50LlxuICovXG5leHBvcnQgY2xhc3MgQ29udmVyc2F0aW9uVHVybkV2ZW50VG9vbHNQcm92aWRlciB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGNvbnZlcnNhdGlvbiB0dXJuIGV2ZW50IHRvb2xzIHByb3ZpZGVyLlxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBldmVudDogQ29udmVyc2F0aW9uVHVybkV2ZW50LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZ3JhcGhRbFF1ZXJ5RmFjdG9yeTogR3JhcGhRbFF1ZXJ5RmFjdG9yeSA9IG5ldyBHcmFwaFFsUXVlcnlGYWN0b3J5KClcbiAgKSB7fVxuXG4gIGdldEV2ZW50VG9vbHMgPSAoKTogQXJyYXk8RXhlY3V0YWJsZVRvb2w+ID0+IHtcbiAgICBjb25zdCB7IHRvb2xzQ29uZmlndXJhdGlvbiwgZ3JhcGhxbEFwaUVuZHBvaW50IH0gPSB0aGlzLmV2ZW50O1xuICAgIGlmICghdG9vbHNDb25maWd1cmF0aW9uIHx8ICF0b29sc0NvbmZpZ3VyYXRpb24uZGF0YVRvb2xzKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICAgIGNvbnN0IHRvb2xzID0gdG9vbHNDb25maWd1cmF0aW9uLmRhdGFUb29scz8ubWFwKCh0b29sKSA9PiB7XG4gICAgICBjb25zdCB7IG5hbWUsIGRlc2NyaXB0aW9uLCBpbnB1dFNjaGVtYSB9ID0gdG9vbDtcbiAgICAgIGNvbnN0IHF1ZXJ5ID0gdGhpcy5ncmFwaFFsUXVlcnlGYWN0b3J5LmNyZWF0ZVF1ZXJ5KHRvb2wpO1xuICAgICAgcmV0dXJuIG5ldyBHcmFwaFFsVG9vbChcbiAgICAgICAgbmFtZSxcbiAgICAgICAgZGVzY3JpcHRpb24sXG4gICAgICAgIGlucHV0U2NoZW1hLFxuICAgICAgICBncmFwaHFsQXBpRW5kcG9pbnQsXG4gICAgICAgIHF1ZXJ5LFxuICAgICAgICB0aGlzLmV2ZW50LnJlcXVlc3QuaGVhZGVycy5hdXRob3JpemF0aW9uLFxuICAgICAgICB0aGlzLmV2ZW50LnJlcXVlc3QuaGVhZGVyc1sneC1hbXotdXNlci1hZ2VudCddXG4gICAgICApO1xuICAgIH0pO1xuICAgIHJldHVybiB0b29scyA/PyBbXTtcbiAgfTtcbn1cbiJdfQ==
|
@@ -1,22 +1,22 @@
|
|
1
|
-
import { ExecutableTool } from '../types';
|
2
|
-
import type {
|
3
|
-
import { DocumentType } from '@smithy/types';
|
1
|
+
import { ExecutableTool, JSONSchema, ToolInputSchema } from '../types';
|
2
|
+
import type { ToolResultContentBlock } from '@aws-sdk/client-bedrock-runtime';
|
4
3
|
import { GraphqlRequestExecutor } from '../graphql_request_executor';
|
5
4
|
/**
|
6
5
|
* A tool that use GraphQl queries.
|
7
6
|
*/
|
8
|
-
export declare class GraphQlTool implements ExecutableTool {
|
7
|
+
export declare class GraphQlTool implements ExecutableTool<JSONSchema, unknown> {
|
9
8
|
name: string;
|
10
9
|
description: string;
|
11
|
-
inputSchema: ToolInputSchema
|
10
|
+
inputSchema: ToolInputSchema<JSONSchema>;
|
12
11
|
readonly graphQlEndpoint: string;
|
13
12
|
private readonly query;
|
14
13
|
readonly accessToken: string;
|
14
|
+
readonly userAgent: string;
|
15
15
|
private readonly graphqlRequestExecutor;
|
16
16
|
/**
|
17
17
|
* Creates GraphQl Tool
|
18
18
|
*/
|
19
|
-
constructor(name: string, description: string, inputSchema: ToolInputSchema
|
20
|
-
execute: (input:
|
19
|
+
constructor(name: string, description: string, inputSchema: ToolInputSchema<JSONSchema>, graphQlEndpoint: string, query: string, accessToken: string, userAgent: string, graphqlRequestExecutor?: GraphqlRequestExecutor);
|
20
|
+
execute: (input: unknown | undefined) => Promise<ToolResultContentBlock>;
|
21
21
|
}
|
22
22
|
//# sourceMappingURL=graphql_tool.d.ts.map
|
@@ -9,13 +9,14 @@ class GraphQlTool {
|
|
9
9
|
/**
|
10
10
|
* Creates GraphQl Tool
|
11
11
|
*/
|
12
|
-
constructor(name, description, inputSchema, graphQlEndpoint, query, accessToken, graphqlRequestExecutor = new graphql_request_executor_1.GraphqlRequestExecutor(graphQlEndpoint, accessToken)) {
|
12
|
+
constructor(name, description, inputSchema, graphQlEndpoint, query, accessToken, userAgent, graphqlRequestExecutor = new graphql_request_executor_1.GraphqlRequestExecutor(graphQlEndpoint, accessToken, userAgent)) {
|
13
13
|
this.name = name;
|
14
14
|
this.description = description;
|
15
15
|
this.inputSchema = inputSchema;
|
16
16
|
this.graphQlEndpoint = graphQlEndpoint;
|
17
17
|
this.query = query;
|
18
18
|
this.accessToken = accessToken;
|
19
|
+
this.userAgent = userAgent;
|
19
20
|
this.graphqlRequestExecutor = graphqlRequestExecutor;
|
20
21
|
this.execute = async (input) => {
|
21
22
|
if (!input) {
|
@@ -30,4 +31,4 @@ class GraphQlTool {
|
|
30
31
|
}
|
31
32
|
}
|
32
33
|
exports.GraphQlTool = GraphQlTool;
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhxbF90b29sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbnZlcnNhdGlvbi9ydW50aW1lL2V2ZW50LXRvb2xzLXByb3ZpZGVyL2dyYXBocWxfdG9vbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFHQSwwRUFBcUU7QUFFckU7O0dBRUc7QUFDSCxNQUFhLFdBQVc7SUFDdEI7O09BRUc7SUFDSCxZQUNTLElBQVksRUFDWixXQUFtQixFQUNuQixXQUF3QyxFQUN0QyxlQUF1QixFQUNmLEtBQWEsRUFDckIsV0FBbUIsRUFDbkIsU0FBaUIsRUFDVCx5QkFBeUIsSUFBSSxpREFBc0IsQ0FDbEUsZUFBZSxFQUNmLFdBQVcsRUFDWCxTQUFTLENBQ1Y7UUFYTSxTQUFJLEdBQUosSUFBSSxDQUFRO1FBQ1osZ0JBQVcsR0FBWCxXQUFXLENBQVE7UUFDbkIsZ0JBQVcsR0FBWCxXQUFXLENBQTZCO1FBQ3RDLG9CQUFlLEdBQWYsZUFBZSxDQUFRO1FBQ2YsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNyQixnQkFBVyxHQUFYLFdBQVcsQ0FBUTtRQUNuQixjQUFTLEdBQVQsU0FBUyxDQUFRO1FBQ1QsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUl0QztRQUdILFlBQU8sR0FBRyxLQUFLLEVBQ2IsS0FBMEIsRUFDTyxFQUFFO1lBQ25DLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ1YsTUFBTSxLQUFLLENBQUMsaUJBQWlCLElBQUksQ0FBQyxJQUFJLDhCQUE4QixDQUFDLENBQUM7YUFDdkU7WUFFRCxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxjQUFjLENBRy9EO2dCQUNBLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztnQkFDakIsU0FBUyxFQUFFLEtBQUs7YUFDakIsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQztRQUM1QixDQUFDLENBQUM7SUFqQkMsQ0FBQztDQWtCTDtBQW5DRCxrQ0FtQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFeGVjdXRhYmxlVG9vbCwgSlNPTlNjaGVtYSwgVG9vbElucHV0U2NoZW1hIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHR5cGUgeyBUb29sUmVzdWx0Q29udGVudEJsb2NrIH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LWJlZHJvY2stcnVudGltZSc7XG5pbXBvcnQgeyBEb2N1bWVudFR5cGUgfSBmcm9tICdAc21pdGh5L3R5cGVzJztcbmltcG9ydCB7IEdyYXBocWxSZXF1ZXN0RXhlY3V0b3IgfSBmcm9tICcuLi9ncmFwaHFsX3JlcXVlc3RfZXhlY3V0b3InO1xuXG4vKipcbiAqIEEgdG9vbCB0aGF0IHVzZSBHcmFwaFFsIHF1ZXJpZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBHcmFwaFFsVG9vbCBpbXBsZW1lbnRzIEV4ZWN1dGFibGVUb29sPEpTT05TY2hlbWEsIHVua25vd24+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgR3JhcGhRbCBUb29sXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nLFxuICAgIHB1YmxpYyBkZXNjcmlwdGlvbjogc3RyaW5nLFxuICAgIHB1YmxpYyBpbnB1dFNjaGVtYTogVG9vbElucHV0U2NoZW1hPEpTT05TY2hlbWE+LFxuICAgIHJlYWRvbmx5IGdyYXBoUWxFbmRwb2ludDogc3RyaW5nLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcXVlcnk6IHN0cmluZyxcbiAgICByZWFkb25seSBhY2Nlc3NUb2tlbjogc3RyaW5nLFxuICAgIHJlYWRvbmx5IHVzZXJBZ2VudDogc3RyaW5nLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZ3JhcGhxbFJlcXVlc3RFeGVjdXRvciA9IG5ldyBHcmFwaHFsUmVxdWVzdEV4ZWN1dG9yKFxuICAgICAgZ3JhcGhRbEVuZHBvaW50LFxuICAgICAgYWNjZXNzVG9rZW4sXG4gICAgICB1c2VyQWdlbnRcbiAgICApXG4gICkge31cblxuICBleGVjdXRlID0gYXN5bmMgKFxuICAgIGlucHV0OiB1bmtub3duIHwgdW5kZWZpbmVkXG4gICk6IFByb21pc2U8VG9vbFJlc3VsdENvbnRlbnRCbG9jaz4gPT4ge1xuICAgIGlmICghaW5wdXQpIHtcbiAgICAgIHRocm93IEVycm9yKGBHcmFwaFFsIHRvb2wgJyR7dGhpcy5uYW1lfScgcmVxdWlyZXMgaW5wdXQgdG8gZXhlY3V0ZS5gKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuZ3JhcGhxbFJlcXVlc3RFeGVjdXRvci5leGVjdXRlR3JhcGhxbDxcbiAgICAgIHVua25vd24sXG4gICAgICBEb2N1bWVudFR5cGVcbiAgICA+KHtcbiAgICAgIHF1ZXJ5OiB0aGlzLnF1ZXJ5LFxuICAgICAgdmFyaWFibGVzOiBpbnB1dCxcbiAgICB9KTtcbiAgICByZXR1cm4geyBqc29uOiByZXNwb25zZSB9O1xuICB9O1xufVxuIl19
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { ExecutableTool, FromJSONSchema, JSONSchema, ToolInputSchema } from './types';
|
2
|
+
import * as bedrock from '@aws-sdk/client-bedrock-runtime';
|
3
|
+
/**
|
4
|
+
* Creates an executable tool.
|
5
|
+
*/
|
6
|
+
export declare const createExecutableTool: <TJSONSchema extends JSONSchema = JSONSchema, TToolInput = FromJSONSchema<TJSONSchema>>(name: string, description: string, inputSchema: ToolInputSchema<TJSONSchema>, handler: (input: TToolInput) => Promise<bedrock.ToolResultContentBlock>) => ExecutableTool<TJSONSchema, TToolInput>;
|
7
|
+
//# sourceMappingURL=executable_tool_factory.d.ts.map
|
package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/executable_tool_factory.js
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.createExecutableTool = void 0;
|
4
|
+
/**
|
5
|
+
* Creates an executable tool.
|
6
|
+
*/
|
7
|
+
const createExecutableTool = (name, description, inputSchema, handler) => {
|
8
|
+
return {
|
9
|
+
name,
|
10
|
+
description,
|
11
|
+
inputSchema,
|
12
|
+
execute: handler,
|
13
|
+
};
|
14
|
+
};
|
15
|
+
exports.createExecutableTool = createExecutableTool;
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0YWJsZV90b29sX2ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udmVyc2F0aW9uL3J1bnRpbWUvZXhlY3V0YWJsZV90b29sX2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBUUE7O0dBRUc7QUFDSSxNQUFNLG9CQUFvQixHQVFjLENBQzdDLElBQUksRUFDSixXQUFXLEVBQ1gsV0FBVyxFQUNYLE9BQU8sRUFDUCxFQUFFO0lBQ0YsT0FBTztRQUNMLElBQUk7UUFDSixXQUFXO1FBQ1gsV0FBVztRQUNYLE9BQU8sRUFBRSxPQUFPO0tBQ2pCLENBQUM7QUFDSixDQUFDLENBQUM7QUFwQlcsUUFBQSxvQkFBb0Isd0JBb0IvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEV4ZWN1dGFibGVUb29sLFxuICBGcm9tSlNPTlNjaGVtYSxcbiAgSlNPTlNjaGVtYSxcbiAgVG9vbElucHV0U2NoZW1hLFxufSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCAqIGFzIGJlZHJvY2sgZnJvbSAnQGF3cy1zZGsvY2xpZW50LWJlZHJvY2stcnVudGltZSc7XG5cbi8qKlxuICogQ3JlYXRlcyBhbiBleGVjdXRhYmxlIHRvb2wuXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVFeGVjdXRhYmxlVG9vbDogPFxuICBUSlNPTlNjaGVtYSBleHRlbmRzIEpTT05TY2hlbWEgPSBKU09OU2NoZW1hLFxuICBUVG9vbElucHV0ID0gRnJvbUpTT05TY2hlbWE8VEpTT05TY2hlbWE+XG4+KFxuICBuYW1lOiBzdHJpbmcsXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcsXG4gIGlucHV0U2NoZW1hOiBUb29sSW5wdXRTY2hlbWE8VEpTT05TY2hlbWE+LFxuICBoYW5kbGVyOiAoaW5wdXQ6IFRUb29sSW5wdXQpID0+IFByb21pc2U8YmVkcm9jay5Ub29sUmVzdWx0Q29udGVudEJsb2NrPlxuKSA9PiBFeGVjdXRhYmxlVG9vbDxUSlNPTlNjaGVtYSwgVFRvb2xJbnB1dD4gPSAoXG4gIG5hbWUsXG4gIGRlc2NyaXB0aW9uLFxuICBpbnB1dFNjaGVtYSxcbiAgaGFuZGxlclxuKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZSxcbiAgICBkZXNjcmlwdGlvbixcbiAgICBpbnB1dFNjaGVtYSxcbiAgICBleGVjdXRlOiBoYW5kbGVyLFxuICB9O1xufTtcbiJdfQ==
|
@@ -11,11 +11,12 @@ export type GraphqlRequest<TVariables> = {
|
|
11
11
|
export declare class GraphqlRequestExecutor {
|
12
12
|
private readonly graphQlEndpoint;
|
13
13
|
private readonly accessToken;
|
14
|
+
private readonly userAgent;
|
14
15
|
private readonly _fetch;
|
15
16
|
/**
|
16
17
|
* Creates GraphQL request executor.
|
17
18
|
*/
|
18
|
-
constructor(graphQlEndpoint: string, accessToken: string, _fetch?: typeof fetch);
|
19
|
+
constructor(graphQlEndpoint: string, accessToken: string, userAgent: string, _fetch?: typeof fetch);
|
19
20
|
executeGraphql: <TVariables, TReturn>(request: GraphqlRequest<TVariables>) => Promise<TReturn>;
|
20
21
|
}
|
21
22
|
//# sourceMappingURL=graphql_request_executor.d.ts.map
|
package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/graphql_request_executor.js
CHANGED
@@ -10,9 +10,10 @@ class GraphqlRequestExecutor {
|
|
10
10
|
/**
|
11
11
|
* Creates GraphQL request executor.
|
12
12
|
*/
|
13
|
-
constructor(graphQlEndpoint, accessToken, _fetch = fetch) {
|
13
|
+
constructor(graphQlEndpoint, accessToken, userAgent, _fetch = fetch) {
|
14
14
|
this.graphQlEndpoint = graphQlEndpoint;
|
15
15
|
this.accessToken = accessToken;
|
16
|
+
this.userAgent = userAgent;
|
16
17
|
this._fetch = _fetch;
|
17
18
|
this.executeGraphql = async (request) => {
|
18
19
|
const httpRequest = new Request(this.graphQlEndpoint, {
|
@@ -20,6 +21,7 @@ class GraphqlRequestExecutor {
|
|
20
21
|
headers: {
|
21
22
|
'Content-Type': 'application/graphql',
|
22
23
|
Authorization: this.accessToken,
|
24
|
+
'x-amz-user-agent': this.userAgent,
|
23
25
|
},
|
24
26
|
body: JSON.stringify({
|
25
27
|
query: request.query,
|
@@ -42,4 +44,4 @@ class GraphqlRequestExecutor {
|
|
42
44
|
}
|
43
45
|
}
|
44
46
|
exports.GraphqlRequestExecutor = GraphqlRequestExecutor;
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhxbF9yZXF1ZXN0X2V4ZWN1dG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnZlcnNhdGlvbi9ydW50aW1lL2dyYXBocWxfcmVxdWVzdF9leGVjdXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFLQTs7OztHQUlHO0FBQ0gsTUFBYSxzQkFBc0I7SUFDakM7O09BRUc7SUFDSCxZQUNtQixlQUF1QixFQUN2QixXQUFtQixFQUNuQixTQUFpQixFQUNqQixTQUFTLEtBQUs7UUFIZCxvQkFBZSxHQUFmLGVBQWUsQ0FBUTtRQUN2QixnQkFBVyxHQUFYLFdBQVcsQ0FBUTtRQUNuQixjQUFTLEdBQVQsU0FBUyxDQUFRO1FBQ2pCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFHakMsbUJBQWMsR0FBRyxLQUFLLEVBQ3BCLE9BQW1DLEVBQ2pCLEVBQUU7WUFDcEIsTUFBTSxXQUFXLEdBQUcsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRTtnQkFDcEQsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsT0FBTyxFQUFFO29CQUNQLGNBQWMsRUFBRSxxQkFBcUI7b0JBQ3JDLGFBQWEsRUFBRSxJQUFJLENBQUMsV0FBVztvQkFDL0Isa0JBQWtCLEVBQUUsSUFBSSxDQUFDLFNBQVM7aUJBQ25DO2dCQUNELElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDO29CQUNuQixLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUs7b0JBQ3BCLFNBQVMsRUFBRSxPQUFPLENBQUMsU0FBUztpQkFDN0IsQ0FBQzthQUNILENBQUMsQ0FBQztZQUVILE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUMzQyxNQUFNLGVBQWUsR0FBMkIsRUFBRSxDQUFDO1lBQ25ELEdBQUcsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNwRSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRTtnQkFDWCxNQUFNLElBQUksR0FBRyxNQUFNLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDOUIsTUFBTSxJQUFJLEtBQUssQ0FDYiw0Q0FBNEMsSUFBSSxDQUFDLFNBQVMsQ0FDeEQsZUFBZSxDQUNoQixVQUFVLElBQUksRUFBRSxDQUNsQixDQUFDO2FBQ0g7WUFDRCxNQUFNLElBQUksR0FBRyxNQUFNLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUM5QixJQUFJLElBQUksSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLElBQUksUUFBUSxJQUFJLElBQUksRUFBRTtnQkFDeEQsTUFBTSxJQUFJLEtBQUssQ0FDYiw0Q0FBNEMsSUFBSSxDQUFDLFNBQVMsQ0FDeEQsZUFBZSxDQUNoQixVQUFVLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FDbEMsQ0FBQzthQUNIO1lBQ0QsT0FBTyxJQUFlLENBQUM7UUFDekIsQ0FBQyxDQUFDO0lBdENDLENBQUM7Q0F1Q0w7QUFoREQsd0RBZ0RDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgR3JhcGhxbFJlcXVlc3Q8VFZhcmlhYmxlcz4gPSB7XG4gIHF1ZXJ5OiBzdHJpbmc7XG4gIHZhcmlhYmxlczogVFZhcmlhYmxlcztcbn07XG5cbi8qKlxuICogVGhpcyBjbGFzcyBpcyByZXNwb25zaWJsZSBmb3IgZXhlY3V0aW5nIEdyYXBoUUwgcmVxdWVzdHMuXG4gKiBTZXJpYWxpemluZyBxdWVyeSBhbmQgaXQncyBpbnB1dHMsIGFkZGluZyBhdXRob3JpemF0aW9uIGhlYWRlcnMsXG4gKiBpbnNwZWN0aW5nIHJlc3BvbnNlIGZvciBlcnJvcnMgYW5kIGRlLXNlcmlhbGl6aW5nIG91dHB1dC5cbiAqL1xuZXhwb3J0IGNsYXNzIEdyYXBocWxSZXF1ZXN0RXhlY3V0b3Ige1xuICAvKipcbiAgICogQ3JlYXRlcyBHcmFwaFFMIHJlcXVlc3QgZXhlY3V0b3IuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGdyYXBoUWxFbmRwb2ludDogc3RyaW5nLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYWNjZXNzVG9rZW46IHN0cmluZyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJBZ2VudDogc3RyaW5nLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2ZldGNoID0gZmV0Y2hcbiAgKSB7fVxuXG4gIGV4ZWN1dGVHcmFwaHFsID0gYXN5bmMgPFRWYXJpYWJsZXMsIFRSZXR1cm4+KFxuICAgIHJlcXVlc3Q6IEdyYXBocWxSZXF1ZXN0PFRWYXJpYWJsZXM+XG4gICk6IFByb21pc2U8VFJldHVybj4gPT4ge1xuICAgIGNvbnN0IGh0dHBSZXF1ZXN0ID0gbmV3IFJlcXVlc3QodGhpcy5ncmFwaFFsRW5kcG9pbnQsIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2dyYXBocWwnLFxuICAgICAgICBBdXRob3JpemF0aW9uOiB0aGlzLmFjY2Vzc1Rva2VuLFxuICAgICAgICAneC1hbXotdXNlci1hZ2VudCc6IHRoaXMudXNlckFnZW50LFxuICAgICAgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgcXVlcnk6IHJlcXVlc3QucXVlcnksXG4gICAgICAgIHZhcmlhYmxlczogcmVxdWVzdC52YXJpYWJsZXMsXG4gICAgICB9KSxcbiAgICB9KTtcblxuICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMuX2ZldGNoKGh0dHBSZXF1ZXN0KTtcbiAgICBjb25zdCByZXNwb25zZUhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgICByZXMuaGVhZGVycy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiAocmVzcG9uc2VIZWFkZXJzW2tleV0gPSB2YWx1ZSkpO1xuICAgIGlmICghcmVzLm9rKSB7XG4gICAgICBjb25zdCBib2R5ID0gYXdhaXQgcmVzLnRleHQoKTtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYEdyYXBoUUwgcmVxdWVzdCBmYWlsZWQsIHJlc3BvbnNlIGhlYWRlcnM9JHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAgICByZXNwb25zZUhlYWRlcnNcbiAgICAgICAgKX0sIGJvZHk9JHtib2R5fWBcbiAgICAgICk7XG4gICAgfVxuICAgIGNvbnN0IGJvZHkgPSBhd2FpdCByZXMuanNvbigpO1xuICAgIGlmIChib2R5ICYmIHR5cGVvZiBib2R5ID09PSAnb2JqZWN0JyAmJiAnZXJyb3JzJyBpbiBib2R5KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBHcmFwaFFMIHJlcXVlc3QgZmFpbGVkLCByZXNwb25zZSBoZWFkZXJzPSR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICAgICAgcmVzcG9uc2VIZWFkZXJzXG4gICAgICAgICl9LCBib2R5PSR7SlNPTi5zdHJpbmdpZnkoYm9keSl9YFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIGJvZHkgYXMgVFJldHVybjtcbiAgfTtcbn1cbiJdfQ==
|
@@ -1,4 +1,5 @@
|
|
1
|
-
import {
|
1
|
+
import { ConversationTurnEvent, ExecutableTool, FromJSONSchema, JSONSchema, ToolDefinition, ToolInputSchema, ToolResultContentBlock } from './types.js';
|
2
2
|
import { handleConversationTurnEvent } from './conversation_turn_executor.js';
|
3
|
-
|
3
|
+
import { createExecutableTool } from './executable_tool_factory.js';
|
4
|
+
export { ConversationTurnEvent, createExecutableTool, ExecutableTool, FromJSONSchema, JSONSchema, handleConversationTurnEvent, ToolDefinition, ToolInputSchema, ToolResultContentBlock, };
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
@@ -1,6 +1,8 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.handleConversationTurnEvent = void 0;
|
3
|
+
exports.handleConversationTurnEvent = exports.createExecutableTool = void 0;
|
4
4
|
const conversation_turn_executor_js_1 = require("./conversation_turn_executor.js");
|
5
5
|
Object.defineProperty(exports, "handleConversationTurnEvent", { enumerable: true, get: function () { return conversation_turn_executor_js_1.handleConversationTurnEvent; } });
|
6
|
-
|
6
|
+
const executable_tool_factory_js_1 = require("./executable_tool_factory.js");
|
7
|
+
Object.defineProperty(exports, "createExecutableTool", { enumerable: true, get: function () { return executable_tool_factory_js_1.createExecutableTool; } });
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udmVyc2F0aW9uL3J1bnRpbWUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBVUEsbUZBQThFO0FBUzVFLDRHQVRPLDJEQUEyQixPQVNQO0FBUjdCLDZFQUFvRTtBQUlsRSxxR0FKTyxpREFBb0IsT0FJUCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbnZlcnNhdGlvblR1cm5FdmVudCxcbiAgRXhlY3V0YWJsZVRvb2wsXG4gIEZyb21KU09OU2NoZW1hLFxuICBKU09OU2NoZW1hLFxuICBUb29sRGVmaW5pdGlvbixcbiAgVG9vbElucHV0U2NoZW1hLFxuICBUb29sUmVzdWx0Q29udGVudEJsb2NrLFxufSBmcm9tICcuL3R5cGVzLmpzJztcblxuaW1wb3J0IHsgaGFuZGxlQ29udmVyc2F0aW9uVHVybkV2ZW50IH0gZnJvbSAnLi9jb252ZXJzYXRpb25fdHVybl9leGVjdXRvci5qcyc7XG5pbXBvcnQgeyBjcmVhdGVFeGVjdXRhYmxlVG9vbCB9IGZyb20gJy4vZXhlY3V0YWJsZV90b29sX2ZhY3RvcnkuanMnO1xuXG5leHBvcnQge1xuICBDb252ZXJzYXRpb25UdXJuRXZlbnQsXG4gIGNyZWF0ZUV4ZWN1dGFibGVUb29sLFxuICBFeGVjdXRhYmxlVG9vbCxcbiAgRnJvbUpTT05TY2hlbWEsXG4gIEpTT05TY2hlbWEsXG4gIGhhbmRsZUNvbnZlcnNhdGlvblR1cm5FdmVudCxcbiAgVG9vbERlZmluaXRpb24sXG4gIFRvb2xJbnB1dFNjaGVtYSxcbiAgVG9vbFJlc3VsdENvbnRlbnRCbG9jayxcbn07XG4iXX0=
|