@aws-amplify/interactions 6.0.21 → 6.0.22-unstable.bd1fefd.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/dist/cjs/lex-v1/AWSLexProvider.js +5 -3
  2. package/dist/cjs/lex-v1/AWSLexProvider.js.map +1 -1
  3. package/dist/cjs/lex-v2/AWSLexV2Provider.js +11 -9
  4. package/dist/cjs/lex-v2/AWSLexV2Provider.js.map +1 -1
  5. package/dist/cjs/utils/commonUtils.js +1 -1
  6. package/dist/cjs/utils/commonUtils.js.map +1 -1
  7. package/dist/cjs/utils/utils.js +2 -2
  8. package/dist/cjs/utils/utils.js.map +1 -1
  9. package/dist/cjs/utils/utils.native.js +4 -4
  10. package/dist/cjs/utils/utils.native.js.map +1 -1
  11. package/dist/esm/lex-v1/AWSLexProvider.d.ts +1 -1
  12. package/dist/esm/lex-v1/AWSLexProvider.mjs +5 -3
  13. package/dist/esm/lex-v1/AWSLexProvider.mjs.map +1 -1
  14. package/dist/esm/lex-v1/apis/onComplete.mjs.map +1 -1
  15. package/dist/esm/lex-v1/apis/send.mjs.map +1 -1
  16. package/dist/esm/lex-v1/index.mjs.map +1 -1
  17. package/dist/esm/lex-v1/types/AWSLexProviderOption.d.ts +1 -1
  18. package/dist/esm/lex-v1/types/inputs.d.ts +1 -1
  19. package/dist/esm/lex-v2/AWSLexV2Provider.d.ts +1 -1
  20. package/dist/esm/lex-v2/AWSLexV2Provider.mjs +11 -9
  21. package/dist/esm/lex-v2/AWSLexV2Provider.mjs.map +1 -1
  22. package/dist/esm/lex-v2/apis/onComplete.mjs.map +1 -1
  23. package/dist/esm/lex-v2/apis/send.mjs.map +1 -1
  24. package/dist/esm/lex-v2/index.mjs.map +1 -1
  25. package/dist/esm/lex-v2/types/AWSLexV2ProviderOption.d.ts +1 -1
  26. package/dist/esm/lex-v2/types/inputs.d.ts +1 -1
  27. package/dist/esm/types/Interactions.d.ts +5 -7
  28. package/dist/esm/types/inputs.d.ts +4 -4
  29. package/dist/esm/utils/commonUtils.mjs +1 -1
  30. package/dist/esm/utils/commonUtils.mjs.map +1 -1
  31. package/dist/esm/utils/utils.mjs +2 -2
  32. package/dist/esm/utils/utils.mjs.map +1 -1
  33. package/dist/esm/utils/utils.native.mjs +4 -4
  34. package/dist/esm/utils/utils.native.mjs.map +1 -1
  35. package/package.json +5 -4
  36. package/src/lex-v1/AWSLexProvider.ts +12 -8
  37. package/src/lex-v1/apis/onComplete.ts +1 -1
  38. package/src/lex-v1/apis/send.ts +2 -1
  39. package/src/lex-v1/index.ts +1 -1
  40. package/src/lex-v1/types/AWSLexProviderOption.ts +1 -1
  41. package/src/lex-v1/types/inputs.ts +1 -1
  42. package/src/lex-v1/utils/resolveBotConfig.ts +2 -1
  43. package/src/lex-v2/AWSLexV2Provider.ts +22 -16
  44. package/src/lex-v2/apis/onComplete.ts +1 -1
  45. package/src/lex-v2/apis/send.ts +2 -1
  46. package/src/lex-v2/index.ts +1 -1
  47. package/src/lex-v2/types/AWSLexV2ProviderOption.ts +1 -1
  48. package/src/lex-v2/types/inputs.ts +1 -1
  49. package/src/lex-v2/utils/resolveBotConfig.ts +2 -1
  50. package/src/types/Interactions.ts +5 -7
  51. package/src/types/inputs.ts +4 -4
  52. package/src/utils/commonUtils.ts +3 -1
  53. package/src/utils/utils.native.ts +5 -4
  54. package/src/utils/utils.ts +2 -2
@@ -2,6 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.lexProvider = void 0;
5
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
6
+ // SPDX-License-Identifier: Apache-2.0
5
7
  const client_lex_runtime_service_1 = require("@aws-sdk/client-lex-runtime-service");
6
8
  const utils_1 = require("@aws-amplify/core/internals/utils");
7
9
  const core_1 = require("@aws-amplify/core");
@@ -40,7 +42,7 @@ class AWSLexProvider {
40
42
  session = await (0, core_1.fetchAuthSession)();
41
43
  }
42
44
  catch (error) {
43
- return Promise.reject('No credentials');
45
+ return Promise.reject(new Error('No credentials'));
44
46
  }
45
47
  const { name, region, alias } = botConfig;
46
48
  const client = new client_lex_runtime_service_1.LexRuntimeServiceClient({
@@ -71,7 +73,7 @@ class AWSLexProvider {
71
73
  const { content, options: { messageType }, } = message;
72
74
  if (messageType === 'voice') {
73
75
  if (typeof content !== 'object') {
74
- return Promise.reject('invalid content type');
76
+ return Promise.reject(new Error('invalid content type'));
75
77
  }
76
78
  const inputStream = content instanceof Uint8Array ? content : await (0, utils_2.convert)(content);
77
79
  params = {
@@ -85,7 +87,7 @@ class AWSLexProvider {
85
87
  }
86
88
  else {
87
89
  if (typeof content !== 'string')
88
- return Promise.reject('invalid content type');
90
+ return Promise.reject(new Error('invalid content type'));
89
91
  params = {
90
92
  botAlias: alias,
91
93
  botName: name,
@@ -1 +1 @@
1
- {"version":3,"file":"AWSLexProvider.js","sources":["../../../src/lex-v1/AWSLexProvider.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.lexProvider = void 0;\nconst client_lex_runtime_service_1 = require(\"@aws-sdk/client-lex-runtime-service\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_2 = require(\"../utils\");\nconst logger = new core_1.ConsoleLogger('AWSLexProvider');\nclass AWSLexProvider {\n constructor() {\n this._botsCompleteCallback = {};\n }\n /**\n * @deprecated\n * This is used internally by 'sendMessage' to call onComplete callback\n * for a bot if configured\n */\n reportBotStatus(data, { name }) {\n const callback = this._botsCompleteCallback[name];\n if (!callback) {\n return;\n }\n // Check if state is fulfilled to resolve onFullfilment promise\n logger.debug('postContent state', data.dialogState);\n switch (data.dialogState) {\n case client_lex_runtime_service_1.DialogState.READY_FOR_FULFILLMENT:\n case client_lex_runtime_service_1.DialogState.FULFILLED:\n callback(undefined, data);\n break;\n case client_lex_runtime_service_1.DialogState.FAILED:\n callback(new Error('Bot conversation failed'));\n break;\n default:\n break;\n }\n }\n async sendMessage(botConfig, message) {\n // check if credentials are present\n let session;\n try {\n session = await (0, core_1.fetchAuthSession)();\n }\n catch (error) {\n return Promise.reject('No credentials');\n }\n const { name, region, alias } = botConfig;\n const client = new client_lex_runtime_service_1.LexRuntimeServiceClient({\n region,\n credentials: session.credentials,\n customUserAgent: (0, utils_1.getAmplifyUserAgentObject)(),\n });\n let params;\n if (typeof message === 'string') {\n params = {\n botAlias: alias,\n botName: name,\n inputText: message,\n userId: session.identityId,\n };\n logger.debug('postText to lex', message);\n try {\n const postTextCommand = new client_lex_runtime_service_1.PostTextCommand(params);\n const data = await client.send(postTextCommand);\n this.reportBotStatus(data, botConfig);\n return data;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n else {\n const { content, options: { messageType }, } = message;\n if (messageType === 'voice') {\n if (typeof content !== 'object') {\n return Promise.reject('invalid content type');\n }\n const inputStream = content instanceof Uint8Array ? content : await (0, utils_2.convert)(content);\n params = {\n botAlias: alias,\n botName: name,\n contentType: 'audio/x-l16; sample-rate=16000; channel-count=1',\n userId: session.identityId,\n accept: 'audio/mpeg',\n inputStream,\n };\n }\n else {\n if (typeof content !== 'string')\n return Promise.reject('invalid content type');\n params = {\n botAlias: alias,\n botName: name,\n contentType: 'text/plain; charset=utf-8',\n inputStream: content,\n userId: session.identityId,\n accept: 'audio/mpeg',\n };\n }\n logger.debug('postContent to lex', message);\n try {\n const postContentCommand = new client_lex_runtime_service_1.PostContentCommand(params);\n const data = await client.send(postContentCommand);\n const audioArray = data.audioStream\n ? await (0, utils_2.convert)(data.audioStream)\n : undefined;\n const response = { ...data, ...{ audioStream: audioArray } };\n this.reportBotStatus(response, botConfig);\n return response;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n }\n onComplete({ name }, callback) {\n this._botsCompleteCallback[name] = callback;\n }\n}\nexports.lexProvider = new AWSLexProvider();\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AWSLexProvider.js","sources":["../../../src/lex-v1/AWSLexProvider.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.lexProvider = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst client_lex_runtime_service_1 = require(\"@aws-sdk/client-lex-runtime-service\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_2 = require(\"../utils\");\nconst logger = new core_1.ConsoleLogger('AWSLexProvider');\nclass AWSLexProvider {\n constructor() {\n this._botsCompleteCallback = {};\n }\n /**\n * @deprecated\n * This is used internally by 'sendMessage' to call onComplete callback\n * for a bot if configured\n */\n reportBotStatus(data, { name }) {\n const callback = this._botsCompleteCallback[name];\n if (!callback) {\n return;\n }\n // Check if state is fulfilled to resolve onFullfilment promise\n logger.debug('postContent state', data.dialogState);\n switch (data.dialogState) {\n case client_lex_runtime_service_1.DialogState.READY_FOR_FULFILLMENT:\n case client_lex_runtime_service_1.DialogState.FULFILLED:\n callback(undefined, data);\n break;\n case client_lex_runtime_service_1.DialogState.FAILED:\n callback(new Error('Bot conversation failed'));\n break;\n default:\n break;\n }\n }\n async sendMessage(botConfig, message) {\n // check if credentials are present\n let session;\n try {\n session = await (0, core_1.fetchAuthSession)();\n }\n catch (error) {\n return Promise.reject(new Error('No credentials'));\n }\n const { name, region, alias } = botConfig;\n const client = new client_lex_runtime_service_1.LexRuntimeServiceClient({\n region,\n credentials: session.credentials,\n customUserAgent: (0, utils_1.getAmplifyUserAgentObject)(),\n });\n let params;\n if (typeof message === 'string') {\n params = {\n botAlias: alias,\n botName: name,\n inputText: message,\n userId: session.identityId,\n };\n logger.debug('postText to lex', message);\n try {\n const postTextCommand = new client_lex_runtime_service_1.PostTextCommand(params);\n const data = await client.send(postTextCommand);\n this.reportBotStatus(data, botConfig);\n return data;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n else {\n const { content, options: { messageType }, } = message;\n if (messageType === 'voice') {\n if (typeof content !== 'object') {\n return Promise.reject(new Error('invalid content type'));\n }\n const inputStream = content instanceof Uint8Array ? content : await (0, utils_2.convert)(content);\n params = {\n botAlias: alias,\n botName: name,\n contentType: 'audio/x-l16; sample-rate=16000; channel-count=1',\n userId: session.identityId,\n accept: 'audio/mpeg',\n inputStream,\n };\n }\n else {\n if (typeof content !== 'string')\n return Promise.reject(new Error('invalid content type'));\n params = {\n botAlias: alias,\n botName: name,\n contentType: 'text/plain; charset=utf-8',\n inputStream: content,\n userId: session.identityId,\n accept: 'audio/mpeg',\n };\n }\n logger.debug('postContent to lex', message);\n try {\n const postContentCommand = new client_lex_runtime_service_1.PostContentCommand(params);\n const data = await client.send(postContentCommand);\n const audioArray = data.audioStream\n ? await (0, utils_2.convert)(data.audioStream)\n : undefined;\n const response = { ...data, ...{ audioStream: audioArray } };\n this.reportBotStatus(response, botConfig);\n return response;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n }\n onComplete({ name }, callback) {\n this._botsCompleteCallback[name] = callback;\n }\n}\nexports.lexProvider = new AWSLexProvider();\n"],"names":[],"mappings":"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"}
@@ -2,11 +2,13 @@
2
2
 
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.lexProvider = void 0;
5
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
6
+ // SPDX-License-Identifier: Apache-2.0
5
7
  const client_lex_runtime_v2_1 = require("@aws-sdk/client-lex-runtime-v2");
6
8
  const utils_1 = require("@aws-amplify/core/internals/utils");
7
9
  const core_1 = require("@aws-amplify/core");
8
- const utils_2 = require("../utils");
9
10
  const uuid_1 = require("uuid");
11
+ const utils_2 = require("../utils");
10
12
  const logger = new core_1.ConsoleLogger('AWSLexV2Provider');
11
13
  class AWSLexV2Provider {
12
14
  constructor() {
@@ -27,7 +29,7 @@ class AWSLexV2Provider {
27
29
  session = await (0, core_1.fetchAuthSession)();
28
30
  }
29
31
  catch (error) {
30
- return Promise.reject('No credentials');
32
+ return Promise.reject(new Error('No credentials'));
31
33
  }
32
34
  const { region, aliasId, localeId, botId } = botConfig;
33
35
  const client = new client_lex_runtime_v2_1.LexRuntimeV2Client({
@@ -111,9 +113,9 @@ class AWSLexV2Provider {
111
113
  };
112
114
  try {
113
115
  const recognizeTextCommand = new client_lex_runtime_v2_1.RecognizeTextCommand(params);
114
- const data = await client.send(recognizeTextCommand);
115
- this._reportBotStatus(data, botConfig);
116
- return data;
116
+ const resultData = await client.send(recognizeTextCommand);
117
+ this._reportBotStatus(resultData, botConfig);
118
+ return resultData;
117
119
  }
118
120
  catch (err) {
119
121
  return Promise.reject(err);
@@ -130,7 +132,7 @@ class AWSLexV2Provider {
130
132
  // prepare params
131
133
  if (messageType === 'voice') {
132
134
  if (typeof content !== 'object') {
133
- return Promise.reject('invalid content type');
135
+ return Promise.reject(new Error('invalid content type'));
134
136
  }
135
137
  const inputStream = content instanceof Uint8Array ? content : await (0, utils_2.convert)(content);
136
138
  params = {
@@ -142,7 +144,7 @@ class AWSLexV2Provider {
142
144
  else {
143
145
  // text input
144
146
  if (typeof content !== 'string')
145
- return Promise.reject('invalid content type');
147
+ return Promise.reject(new Error('invalid content type'));
146
148
  params = {
147
149
  ...baseParams,
148
150
  requestContentType: 'text/plain; charset=utf-8',
@@ -152,8 +154,8 @@ class AWSLexV2Provider {
152
154
  // make API call to lex
153
155
  try {
154
156
  const recognizeUtteranceCommand = new client_lex_runtime_v2_1.RecognizeUtteranceCommand(params);
155
- const data = await client.send(recognizeUtteranceCommand);
156
- const response = await this._formatUtteranceCommandOutput(data);
157
+ const resultData = await client.send(recognizeUtteranceCommand);
158
+ const response = await this._formatUtteranceCommandOutput(resultData);
157
159
  this._reportBotStatus(response, botConfig);
158
160
  return response;
159
161
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AWSLexV2Provider.js","sources":["../../../src/lex-v2/AWSLexV2Provider.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.lexProvider = void 0;\nconst client_lex_runtime_v2_1 = require(\"@aws-sdk/client-lex-runtime-v2\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_2 = require(\"../utils\");\nconst uuid_1 = require(\"uuid\");\nconst logger = new core_1.ConsoleLogger('AWSLexV2Provider');\nclass AWSLexV2Provider {\n constructor() {\n this._botsCompleteCallback = {};\n this.defaultSessionId = (0, uuid_1.v4)();\n }\n /**\n * Send a message to a bot\n * @async\n * @param {AWSLexV2ProviderOption} botConfig - Bot configuration for sending the message\n * @param {string | InteractionsMessage} message - message to send to the bot\n * @return {Promise<InteractionsResponse>} A promise resolves to the response from the bot\n */\n async sendMessage(botConfig, message) {\n // check if credentials are present\n let session;\n try {\n session = await (0, core_1.fetchAuthSession)();\n }\n catch (error) {\n return Promise.reject('No credentials');\n }\n const { region, aliasId, localeId, botId } = botConfig;\n const client = new client_lex_runtime_v2_1.LexRuntimeV2Client({\n region,\n credentials: session.credentials,\n customUserAgent: (0, utils_1.getAmplifyUserAgentObject)(),\n });\n let response;\n // common base params for all requests\n const reqBaseParams = {\n botAliasId: aliasId,\n botId,\n localeId,\n sessionId: session.identityId ?? this.defaultSessionId,\n };\n if (typeof message === 'string') {\n response = await this._handleRecognizeTextCommand(botConfig, message, reqBaseParams, client);\n }\n else {\n response = await this._handleRecognizeUtteranceCommand(botConfig, message, reqBaseParams, client);\n }\n return response;\n }\n /**\n * Attach a onComplete callback function to a bot.\n * The callback is called once the bot's intent is fulfilled\n * @param {AWSLexV2ProviderOption} botConfig - Bot configuration to attach the onComplete callback\n * @param {InteractionsOnCompleteCallback} callback - called when Intent Fulfilled\n */\n onComplete({ name }, callback) {\n this._botsCompleteCallback[name] = callback;\n }\n /**\n * call onComplete callback for a bot if configured\n */\n _reportBotStatus(data, { name }) {\n const sessionState = data?.sessionState;\n // Check if state is fulfilled to resolve onFullfilment promise\n logger.debug('postContent state', sessionState?.intent?.state);\n const callback = this._botsCompleteCallback[name];\n if (!callback) {\n return;\n }\n switch (sessionState?.intent?.state) {\n case client_lex_runtime_v2_1.IntentState.READY_FOR_FULFILLMENT:\n case client_lex_runtime_v2_1.IntentState.FULFILLED:\n callback(undefined, data);\n break;\n case client_lex_runtime_v2_1.IntentState.FAILED:\n callback(new Error('Bot conversation failed'));\n break;\n default:\n break;\n }\n }\n /**\n * Format UtteranceCommandOutput's response\n * decompress attributes\n * update audioStream format\n */\n async _formatUtteranceCommandOutput(data) {\n return {\n ...data,\n messages: await (0, utils_2.unGzipBase64AsJson)(data.messages),\n sessionState: await (0, utils_2.unGzipBase64AsJson)(data.sessionState),\n interpretations: await (0, utils_2.unGzipBase64AsJson)(data.interpretations),\n requestAttributes: await (0, utils_2.unGzipBase64AsJson)(data.requestAttributes),\n inputTranscript: await (0, utils_2.unGzipBase64AsJson)(data.inputTranscript),\n audioStream: data.audioStream\n ? await (0, utils_2.convert)(data.audioStream)\n : undefined,\n };\n }\n /**\n * handle client's `RecognizeTextCommand`\n * used for sending simple text message\n */\n async _handleRecognizeTextCommand(botConfig, data, baseParams, client) {\n logger.debug('postText to lex2', data);\n const params = {\n ...baseParams,\n text: data,\n };\n try {\n const recognizeTextCommand = new client_lex_runtime_v2_1.RecognizeTextCommand(params);\n const data = await client.send(recognizeTextCommand);\n this._reportBotStatus(data, botConfig);\n return data;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n /**\n * handle client's `RecognizeUtteranceCommand`\n * used for obj text or obj voice message\n */\n async _handleRecognizeUtteranceCommand(botConfig, data, baseParams, client) {\n const { content, options: { messageType }, } = data;\n logger.debug('postContent to lex2', data);\n let params;\n // prepare params\n if (messageType === 'voice') {\n if (typeof content !== 'object') {\n return Promise.reject('invalid content type');\n }\n const inputStream = content instanceof Uint8Array ? content : await (0, utils_2.convert)(content);\n params = {\n ...baseParams,\n requestContentType: 'audio/x-l16; sample-rate=16000; channel-count=1',\n inputStream,\n };\n }\n else {\n // text input\n if (typeof content !== 'string')\n return Promise.reject('invalid content type');\n params = {\n ...baseParams,\n requestContentType: 'text/plain; charset=utf-8',\n inputStream: content,\n };\n }\n // make API call to lex\n try {\n const recognizeUtteranceCommand = new client_lex_runtime_v2_1.RecognizeUtteranceCommand(params);\n const data = await client.send(recognizeUtteranceCommand);\n const response = await this._formatUtteranceCommandOutput(data);\n this._reportBotStatus(response, botConfig);\n return response;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n}\nexports.lexProvider = new AWSLexV2Provider();\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AWSLexV2Provider.js","sources":["../../../src/lex-v2/AWSLexV2Provider.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.lexProvider = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst client_lex_runtime_v2_1 = require(\"@aws-sdk/client-lex-runtime-v2\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst core_1 = require(\"@aws-amplify/core\");\nconst uuid_1 = require(\"uuid\");\nconst utils_2 = require(\"../utils\");\nconst logger = new core_1.ConsoleLogger('AWSLexV2Provider');\nclass AWSLexV2Provider {\n constructor() {\n this._botsCompleteCallback = {};\n this.defaultSessionId = (0, uuid_1.v4)();\n }\n /**\n * Send a message to a bot\n * @async\n * @param {AWSLexV2ProviderOption} botConfig - Bot configuration for sending the message\n * @param {string | InteractionsMessage} message - message to send to the bot\n * @return {Promise<InteractionsResponse>} A promise resolves to the response from the bot\n */\n async sendMessage(botConfig, message) {\n // check if credentials are present\n let session;\n try {\n session = await (0, core_1.fetchAuthSession)();\n }\n catch (error) {\n return Promise.reject(new Error('No credentials'));\n }\n const { region, aliasId, localeId, botId } = botConfig;\n const client = new client_lex_runtime_v2_1.LexRuntimeV2Client({\n region,\n credentials: session.credentials,\n customUserAgent: (0, utils_1.getAmplifyUserAgentObject)(),\n });\n let response;\n // common base params for all requests\n const reqBaseParams = {\n botAliasId: aliasId,\n botId,\n localeId,\n sessionId: session.identityId ?? this.defaultSessionId,\n };\n if (typeof message === 'string') {\n response = await this._handleRecognizeTextCommand(botConfig, message, reqBaseParams, client);\n }\n else {\n response = await this._handleRecognizeUtteranceCommand(botConfig, message, reqBaseParams, client);\n }\n return response;\n }\n /**\n * Attach a onComplete callback function to a bot.\n * The callback is called once the bot's intent is fulfilled\n * @param {AWSLexV2ProviderOption} botConfig - Bot configuration to attach the onComplete callback\n * @param {InteractionsOnCompleteCallback} callback - called when Intent Fulfilled\n */\n onComplete({ name }, callback) {\n this._botsCompleteCallback[name] = callback;\n }\n /**\n * call onComplete callback for a bot if configured\n */\n _reportBotStatus(data, { name }) {\n const sessionState = data?.sessionState;\n // Check if state is fulfilled to resolve onFullfilment promise\n logger.debug('postContent state', sessionState?.intent?.state);\n const callback = this._botsCompleteCallback[name];\n if (!callback) {\n return;\n }\n switch (sessionState?.intent?.state) {\n case client_lex_runtime_v2_1.IntentState.READY_FOR_FULFILLMENT:\n case client_lex_runtime_v2_1.IntentState.FULFILLED:\n callback(undefined, data);\n break;\n case client_lex_runtime_v2_1.IntentState.FAILED:\n callback(new Error('Bot conversation failed'));\n break;\n default:\n break;\n }\n }\n /**\n * Format UtteranceCommandOutput's response\n * decompress attributes\n * update audioStream format\n */\n async _formatUtteranceCommandOutput(data) {\n return {\n ...data,\n messages: await (0, utils_2.unGzipBase64AsJson)(data.messages),\n sessionState: await (0, utils_2.unGzipBase64AsJson)(data.sessionState),\n interpretations: await (0, utils_2.unGzipBase64AsJson)(data.interpretations),\n requestAttributes: await (0, utils_2.unGzipBase64AsJson)(data.requestAttributes),\n inputTranscript: await (0, utils_2.unGzipBase64AsJson)(data.inputTranscript),\n audioStream: data.audioStream\n ? await (0, utils_2.convert)(data.audioStream)\n : undefined,\n };\n }\n /**\n * handle client's `RecognizeTextCommand`\n * used for sending simple text message\n */\n async _handleRecognizeTextCommand(botConfig, data, baseParams, client) {\n logger.debug('postText to lex2', data);\n const params = {\n ...baseParams,\n text: data,\n };\n try {\n const recognizeTextCommand = new client_lex_runtime_v2_1.RecognizeTextCommand(params);\n const resultData = await client.send(recognizeTextCommand);\n this._reportBotStatus(resultData, botConfig);\n return resultData;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n /**\n * handle client's `RecognizeUtteranceCommand`\n * used for obj text or obj voice message\n */\n async _handleRecognizeUtteranceCommand(botConfig, data, baseParams, client) {\n const { content, options: { messageType }, } = data;\n logger.debug('postContent to lex2', data);\n let params;\n // prepare params\n if (messageType === 'voice') {\n if (typeof content !== 'object') {\n return Promise.reject(new Error('invalid content type'));\n }\n const inputStream = content instanceof Uint8Array ? content : await (0, utils_2.convert)(content);\n params = {\n ...baseParams,\n requestContentType: 'audio/x-l16; sample-rate=16000; channel-count=1',\n inputStream,\n };\n }\n else {\n // text input\n if (typeof content !== 'string')\n return Promise.reject(new Error('invalid content type'));\n params = {\n ...baseParams,\n requestContentType: 'text/plain; charset=utf-8',\n inputStream: content,\n };\n }\n // make API call to lex\n try {\n const recognizeUtteranceCommand = new client_lex_runtime_v2_1.RecognizeUtteranceCommand(params);\n const resultData = await client.send(recognizeUtteranceCommand);\n const response = await this._formatUtteranceCommandOutput(resultData);\n this._reportBotStatus(response, botConfig);\n return response;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n}\nexports.lexProvider = new AWSLexV2Provider();\n"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ const unGzipBase64AsJson = async (gzipBase64) => {
14
14
  return JSON.parse(objString);
15
15
  }
16
16
  catch (error) {
17
- return Promise.reject('unable to decode and decompress ' + error);
17
+ return Promise.reject(new Error('unable to decode and decompress ' + error));
18
18
  }
19
19
  };
20
20
  exports.unGzipBase64AsJson = unGzipBase64AsJson;
@@ -1 +1 @@
1
- {"version":3,"file":"commonUtils.js","sources":["../../../src/utils/commonUtils.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.unGzipBase64AsJson = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst utils_1 = require(\"./utils\");\nconst unGzipBase64AsJson = async (gzipBase64) => {\n if (typeof gzipBase64 === 'undefined')\n return undefined;\n try {\n const decodedArrayBuffer = (0, utils_1.base64ToArrayBuffer)(gzipBase64);\n const objString = await (0, utils_1.gzipDecompressToString)(decodedArrayBuffer);\n return JSON.parse(objString);\n }\n catch (error) {\n return Promise.reject('unable to decode and decompress ' + error);\n }\n};\nexports.unGzipBase64AsJson = unGzipBase64AsJson;\n"],"names":[],"mappings":";;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,kBAAkB,GAAG,KAAK,CAAC,CAAC;AACpC;AACA;AACA,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AACnC,MAAM,kBAAkB,GAAG,OAAO,UAAU,KAAK;AACjD,IAAI,IAAI,OAAO,UAAU,KAAK,WAAW;AACzC,QAAQ,OAAO,SAAS,CAAC;AACzB,IAAI,IAAI;AACR,QAAQ,MAAM,kBAAkB,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;AAChF,QAAQ,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,sBAAsB,EAAE,kBAAkB,CAAC,CAAC;AACxF,QAAQ,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AACrC,KAAK;AACL,IAAI,OAAO,KAAK,EAAE;AAClB,QAAQ,OAAO,OAAO,CAAC,MAAM,CAAC,kCAAkC,GAAG,KAAK,CAAC,CAAC;AAC1E,KAAK;AACL,CAAC,CAAC;AACF,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;;"}
1
+ {"version":3,"file":"commonUtils.js","sources":["../../../src/utils/commonUtils.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.unGzipBase64AsJson = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst utils_1 = require(\"./utils\");\nconst unGzipBase64AsJson = async (gzipBase64) => {\n if (typeof gzipBase64 === 'undefined')\n return undefined;\n try {\n const decodedArrayBuffer = (0, utils_1.base64ToArrayBuffer)(gzipBase64);\n const objString = await (0, utils_1.gzipDecompressToString)(decodedArrayBuffer);\n return JSON.parse(objString);\n }\n catch (error) {\n return Promise.reject(new Error('unable to decode and decompress ' + error));\n }\n};\nexports.unGzipBase64AsJson = unGzipBase64AsJson;\n"],"names":[],"mappings":";;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,kBAAkB,GAAG,KAAK,CAAC,CAAC;AACpC;AACA;AACA,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AACnC,MAAM,kBAAkB,GAAG,OAAO,UAAU,KAAK;AACjD,IAAI,IAAI,OAAO,UAAU,KAAK,WAAW;AACzC,QAAQ,OAAO,SAAS,CAAC;AACzB,IAAI,IAAI;AACR,QAAQ,MAAM,kBAAkB,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;AAChF,QAAQ,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,sBAAsB,EAAE,kBAAkB,CAAC,CAAC;AACxF,QAAQ,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AACrC,KAAK;AACL,IAAI,OAAO,KAAK,EAAE;AAClB,QAAQ,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,kCAAkC,GAAG,KAAK,CAAC,CAAC,CAAC;AACrF,KAAK;AACL,CAAC,CAAC;AACF,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;;"}
@@ -12,7 +12,7 @@ const convert = async (stream) => {
12
12
  .then(buffer => new Uint8Array(buffer));
13
13
  }
14
14
  else {
15
- return Promise.reject('Invalid content type');
15
+ return Promise.reject(new Error('Invalid content type'));
16
16
  }
17
17
  };
18
18
  exports.convert = convert;
@@ -21,7 +21,7 @@ const base64ToArrayBuffer = (base64) => {
21
21
  };
22
22
  exports.base64ToArrayBuffer = base64ToArrayBuffer;
23
23
  const gzipDecompressToString = async (data) => {
24
- return await new Promise((resolve, reject) => {
24
+ return new Promise((resolve, reject) => {
25
25
  (0, fflate_1.gunzip)(data, (err, resp) => {
26
26
  if (err)
27
27
  reject(err);
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../src/utils/utils.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.gzipDecompressToString = exports.base64ToArrayBuffer = exports.convert = void 0;\nconst fflate_1 = require(\"fflate\");\nconst convert = async (stream) => {\n if (stream instanceof Blob || stream instanceof ReadableStream) {\n return new Response(stream)\n .arrayBuffer()\n .then(buffer => new Uint8Array(buffer));\n }\n else {\n return Promise.reject('Invalid content type');\n }\n};\nexports.convert = convert;\nconst base64ToArrayBuffer = (base64) => {\n return Uint8Array.from(window.atob(base64), c => c.charCodeAt(0));\n};\nexports.base64ToArrayBuffer = base64ToArrayBuffer;\nconst gzipDecompressToString = async (data) => {\n return await new Promise((resolve, reject) => {\n (0, fflate_1.gunzip)(data, (err, resp) => {\n if (err)\n reject(err);\n else\n resolve((0, fflate_1.strFromU8)(resp));\n });\n });\n};\nexports.gzipDecompressToString = gzipDecompressToString;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,sBAAsB,GAAG,OAAO,CAAC,mBAAmB,GAAG,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC;AACxF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AACnC,MAAM,OAAO,GAAG,OAAO,MAAM,KAAK;AAClC,IAAI,IAAI,MAAM,YAAY,IAAI,IAAI,MAAM,YAAY,cAAc,EAAE;AACpE,QAAQ,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC;AACnC,aAAa,WAAW,EAAE;AAC1B,aAAa,IAAI,CAAC,MAAM,IAAI,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;AACpD,KAAK;AACL,SAAS;AACT,QAAQ,OAAO,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;AACtD,KAAK;AACL,CAAC,CAAC;AACF,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;AAC1B,MAAM,mBAAmB,GAAG,CAAC,MAAM,KAAK;AACxC,IAAI,OAAO,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AACtE,CAAC,CAAC;AACF,OAAO,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;AAClD,MAAM,sBAAsB,GAAG,OAAO,IAAI,KAAK;AAC/C,IAAI,OAAO,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK;AAClD,QAAQ,IAAI,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK;AAClD,YAAY,IAAI,GAAG;AACnB,gBAAgB,MAAM,CAAC,GAAG,CAAC,CAAC;AAC5B;AACA,gBAAgB,OAAO,CAAC,IAAI,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;AACvD,SAAS,CAAC,CAAC;AACX,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,sBAAsB,GAAG,sBAAsB;;"}
1
+ {"version":3,"file":"utils.js","sources":["../../../src/utils/utils.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.gzipDecompressToString = exports.base64ToArrayBuffer = exports.convert = void 0;\nconst fflate_1 = require(\"fflate\");\nconst convert = async (stream) => {\n if (stream instanceof Blob || stream instanceof ReadableStream) {\n return new Response(stream)\n .arrayBuffer()\n .then(buffer => new Uint8Array(buffer));\n }\n else {\n return Promise.reject(new Error('Invalid content type'));\n }\n};\nexports.convert = convert;\nconst base64ToArrayBuffer = (base64) => {\n return Uint8Array.from(window.atob(base64), c => c.charCodeAt(0));\n};\nexports.base64ToArrayBuffer = base64ToArrayBuffer;\nconst gzipDecompressToString = async (data) => {\n return new Promise((resolve, reject) => {\n (0, fflate_1.gunzip)(data, (err, resp) => {\n if (err)\n reject(err);\n else\n resolve((0, fflate_1.strFromU8)(resp));\n });\n });\n};\nexports.gzipDecompressToString = gzipDecompressToString;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,sBAAsB,GAAG,OAAO,CAAC,mBAAmB,GAAG,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC;AACxF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AACnC,MAAM,OAAO,GAAG,OAAO,MAAM,KAAK;AAClC,IAAI,IAAI,MAAM,YAAY,IAAI,IAAI,MAAM,YAAY,cAAc,EAAE;AACpE,QAAQ,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC;AACnC,aAAa,WAAW,EAAE;AAC1B,aAAa,IAAI,CAAC,MAAM,IAAI,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;AACpD,KAAK;AACL,SAAS;AACT,QAAQ,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;AACjE,KAAK;AACL,CAAC,CAAC;AACF,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;AAC1B,MAAM,mBAAmB,GAAG,CAAC,MAAM,KAAK;AACxC,IAAI,OAAO,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AACtE,CAAC,CAAC;AACF,OAAO,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;AAClD,MAAM,sBAAsB,GAAG,OAAO,IAAI,KAAK;AAC/C,IAAI,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK;AAC5C,QAAQ,IAAI,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK;AAClD,YAAY,IAAI,GAAG;AACnB,gBAAgB,MAAM,CAAC,GAAG,CAAC,CAAC;AAC5B;AACA,gBAAgB,OAAO,CAAC,IAAI,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;AACvD,SAAS,CAAC,CAAC;AACX,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,sBAAsB,GAAG,sBAAsB;;"}
@@ -8,9 +8,9 @@ const base_64_1 = require("base-64");
8
8
  const pako_1 = require("pako");
9
9
  const convert = async (stream) => {
10
10
  if (!(stream instanceof Blob)) {
11
- return Promise.reject('Invalid content type');
11
+ return Promise.reject(new Error('Invalid content type'));
12
12
  }
13
- return new Promise(async (resolve, reject) => {
13
+ return new Promise((resolve, reject) => {
14
14
  try {
15
15
  const fileReaderInstance = new FileReader();
16
16
  fileReaderInstance.readAsDataURL(stream);
@@ -22,7 +22,7 @@ const convert = async (stream) => {
22
22
  };
23
23
  }
24
24
  catch (error) {
25
- reject('unable to convert blob to arrayBuffer: ' + error);
25
+ reject(new Error('unable to convert blob to arrayBuffer: ' + error));
26
26
  }
27
27
  });
28
28
  };
@@ -39,7 +39,7 @@ const gzipDecompressToString = async (data) => {
39
39
  resolve(result);
40
40
  }
41
41
  catch (error) {
42
- reject('unable to decompress' + error);
42
+ reject(new Error('unable to decompress' + error));
43
43
  }
44
44
  });
45
45
  };
@@ -1 +1 @@
1
- {"version":3,"file":"utils.native.js","sources":["../../../src/utils/utils.native.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.gzipDecompressToString = exports.base64ToArrayBuffer = exports.convert = void 0;\nconst base_64_1 = require(\"base-64\");\nconst pako_1 = require(\"pako\");\nconst convert = async (stream) => {\n if (!(stream instanceof Blob)) {\n return Promise.reject('Invalid content type');\n }\n return new Promise(async (resolve, reject) => {\n try {\n const fileReaderInstance = new FileReader();\n fileReaderInstance.readAsDataURL(stream);\n fileReaderInstance.onload = async () => {\n const blobURL = fileReaderInstance.result;\n const base64Blob = blobURL.split(/,(.*)/s)[1];\n const decodedArrayBuffer = (0, exports.base64ToArrayBuffer)(base64Blob);\n resolve(decodedArrayBuffer);\n };\n }\n catch (error) {\n reject('unable to convert blob to arrayBuffer: ' + error);\n }\n });\n};\nexports.convert = convert;\nconst base64ToArrayBuffer = (base64) => {\n const binaryString = (0, base_64_1.decode)(base64);\n return Uint8Array.from(binaryString, c => c.charCodeAt(0));\n};\nexports.base64ToArrayBuffer = base64ToArrayBuffer;\nconst gzipDecompressToString = async (data) => {\n return new Promise((resolve, reject) => {\n try {\n const result = (0, pako_1.ungzip)(data, { to: 'string' });\n resolve(result);\n }\n catch (error) {\n reject('unable to decompress' + error);\n }\n });\n};\nexports.gzipDecompressToString = gzipDecompressToString;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,sBAAsB,GAAG,OAAO,CAAC,mBAAmB,GAAG,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC;AACxF,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AACrC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAC/B,MAAM,OAAO,GAAG,OAAO,MAAM,KAAK;AAClC,IAAI,IAAI,EAAE,MAAM,YAAY,IAAI,CAAC,EAAE;AACnC,QAAQ,OAAO,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;AACtD,KAAK;AACL,IAAI,OAAO,IAAI,OAAO,CAAC,OAAO,OAAO,EAAE,MAAM,KAAK;AAClD,QAAQ,IAAI;AACZ,YAAY,MAAM,kBAAkB,GAAG,IAAI,UAAU,EAAE,CAAC;AACxD,YAAY,kBAAkB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;AACrD,YAAY,kBAAkB,CAAC,MAAM,GAAG,YAAY;AACpD,gBAAgB,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC;AAC1D,gBAAgB,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9D,gBAAgB,MAAM,kBAAkB,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;AACxF,gBAAgB,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAC5C,aAAa,CAAC;AACd,SAAS;AACT,QAAQ,OAAO,KAAK,EAAE;AACtB,YAAY,MAAM,CAAC,yCAAyC,GAAG,KAAK,CAAC,CAAC;AACtE,SAAS;AACT,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;AAC1B,MAAM,mBAAmB,GAAG,CAAC,MAAM,KAAK;AACxC,IAAI,MAAM,YAAY,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACvD,IAAI,OAAO,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC;AACF,OAAO,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;AAClD,MAAM,sBAAsB,GAAG,OAAO,IAAI,KAAK;AAC/C,IAAI,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK;AAC5C,QAAQ,IAAI;AACZ,YAAY,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;AACtE,YAAY,OAAO,CAAC,MAAM,CAAC,CAAC;AAC5B,SAAS;AACT,QAAQ,OAAO,KAAK,EAAE;AACtB,YAAY,MAAM,CAAC,sBAAsB,GAAG,KAAK,CAAC,CAAC;AACnD,SAAS;AACT,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,sBAAsB,GAAG,sBAAsB;;"}
1
+ {"version":3,"file":"utils.native.js","sources":["../../../src/utils/utils.native.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.gzipDecompressToString = exports.base64ToArrayBuffer = exports.convert = void 0;\nconst base_64_1 = require(\"base-64\");\nconst pako_1 = require(\"pako\");\nconst convert = async (stream) => {\n if (!(stream instanceof Blob)) {\n return Promise.reject(new Error('Invalid content type'));\n }\n return new Promise((resolve, reject) => {\n try {\n const fileReaderInstance = new FileReader();\n fileReaderInstance.readAsDataURL(stream);\n fileReaderInstance.onload = async () => {\n const blobURL = fileReaderInstance.result;\n const base64Blob = blobURL.split(/,(.*)/s)[1];\n const decodedArrayBuffer = (0, exports.base64ToArrayBuffer)(base64Blob);\n resolve(decodedArrayBuffer);\n };\n }\n catch (error) {\n reject(new Error('unable to convert blob to arrayBuffer: ' + error));\n }\n });\n};\nexports.convert = convert;\nconst base64ToArrayBuffer = (base64) => {\n const binaryString = (0, base_64_1.decode)(base64);\n return Uint8Array.from(binaryString, c => c.charCodeAt(0));\n};\nexports.base64ToArrayBuffer = base64ToArrayBuffer;\nconst gzipDecompressToString = async (data) => {\n return new Promise((resolve, reject) => {\n try {\n const result = (0, pako_1.ungzip)(data, { to: 'string' });\n resolve(result);\n }\n catch (error) {\n reject(new Error('unable to decompress' + error));\n }\n });\n};\nexports.gzipDecompressToString = gzipDecompressToString;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,sBAAsB,GAAG,OAAO,CAAC,mBAAmB,GAAG,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC;AACxF,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AACrC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAC/B,MAAM,OAAO,GAAG,OAAO,MAAM,KAAK;AAClC,IAAI,IAAI,EAAE,MAAM,YAAY,IAAI,CAAC,EAAE;AACnC,QAAQ,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;AACjE,KAAK;AACL,IAAI,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK;AAC5C,QAAQ,IAAI;AACZ,YAAY,MAAM,kBAAkB,GAAG,IAAI,UAAU,EAAE,CAAC;AACxD,YAAY,kBAAkB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;AACrD,YAAY,kBAAkB,CAAC,MAAM,GAAG,YAAY;AACpD,gBAAgB,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC;AAC1D,gBAAgB,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9D,gBAAgB,MAAM,kBAAkB,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;AACxF,gBAAgB,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAC5C,aAAa,CAAC;AACd,SAAS;AACT,QAAQ,OAAO,KAAK,EAAE;AACtB,YAAY,MAAM,CAAC,IAAI,KAAK,CAAC,yCAAyC,GAAG,KAAK,CAAC,CAAC,CAAC;AACjF,SAAS;AACT,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;AAC1B,MAAM,mBAAmB,GAAG,CAAC,MAAM,KAAK;AACxC,IAAI,MAAM,YAAY,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACvD,IAAI,OAAO,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC;AACF,OAAO,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;AAClD,MAAM,sBAAsB,GAAG,OAAO,IAAI,KAAK;AAC/C,IAAI,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK;AAC5C,QAAQ,IAAI;AACZ,YAAY,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;AACtE,YAAY,OAAO,CAAC,MAAM,CAAC,CAAC;AAC5B,SAAS;AACT,QAAQ,OAAO,KAAK,EAAE;AACtB,YAAY,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,GAAG,KAAK,CAAC,CAAC,CAAC;AAC9D,SAAS;AACT,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,sBAAsB,GAAG,sBAAsB;;"}
@@ -1,5 +1,5 @@
1
- import { InteractionsOnCompleteCallback, InteractionsMessage, InteractionsResponse } from '../types/Interactions';
2
1
  import { PostContentCommandOutput, PostTextCommandOutput } from '@aws-sdk/client-lex-runtime-service';
2
+ import { InteractionsMessage, InteractionsOnCompleteCallback, InteractionsResponse } from '../types/Interactions';
3
3
  import { AWSLexProviderOption } from './types';
4
4
  interface PostContentCommandOutputFormatted extends Omit<PostContentCommandOutput, 'audioStream'> {
5
5
  audioStream?: Uint8Array;
@@ -3,6 +3,8 @@ import { getAmplifyUserAgentObject } from '@aws-amplify/core/internals/utils';
3
3
  import { ConsoleLogger, fetchAuthSession } from '@aws-amplify/core';
4
4
  import { convert } from '../utils/utils.mjs';
5
5
 
6
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
7
+ // SPDX-License-Identifier: Apache-2.0
6
8
  const logger = new ConsoleLogger('AWSLexProvider');
7
9
  class AWSLexProvider {
8
10
  constructor() {
@@ -37,7 +39,7 @@ class AWSLexProvider {
37
39
  session = await fetchAuthSession();
38
40
  }
39
41
  catch (error) {
40
- return Promise.reject('No credentials');
42
+ return Promise.reject(new Error('No credentials'));
41
43
  }
42
44
  const { name, region, alias } = botConfig;
43
45
  const client = new LexRuntimeServiceClient({
@@ -68,7 +70,7 @@ class AWSLexProvider {
68
70
  const { content, options: { messageType }, } = message;
69
71
  if (messageType === 'voice') {
70
72
  if (typeof content !== 'object') {
71
- return Promise.reject('invalid content type');
73
+ return Promise.reject(new Error('invalid content type'));
72
74
  }
73
75
  const inputStream = content instanceof Uint8Array ? content : await convert(content);
74
76
  params = {
@@ -82,7 +84,7 @@ class AWSLexProvider {
82
84
  }
83
85
  else {
84
86
  if (typeof content !== 'string')
85
- return Promise.reject('invalid content type');
87
+ return Promise.reject(new Error('invalid content type'));
86
88
  params = {
87
89
  botAlias: alias,
88
90
  botName: name,
@@ -1 +1 @@
1
- {"version":3,"file":"AWSLexProvider.mjs","sources":["../../../src/lex-v1/AWSLexProvider.ts"],"sourcesContent":["import { DialogState, LexRuntimeServiceClient, PostContentCommand, PostTextCommand, } from '@aws-sdk/client-lex-runtime-service';\nimport { getAmplifyUserAgentObject } from '@aws-amplify/core/internals/utils';\nimport { ConsoleLogger, fetchAuthSession } from '@aws-amplify/core';\nimport { convert } from '../utils';\nconst logger = new ConsoleLogger('AWSLexProvider');\nclass AWSLexProvider {\n constructor() {\n this._botsCompleteCallback = {};\n }\n /**\n * @deprecated\n * This is used internally by 'sendMessage' to call onComplete callback\n * for a bot if configured\n */\n reportBotStatus(data, { name }) {\n const callback = this._botsCompleteCallback[name];\n if (!callback) {\n return;\n }\n // Check if state is fulfilled to resolve onFullfilment promise\n logger.debug('postContent state', data.dialogState);\n switch (data.dialogState) {\n case DialogState.READY_FOR_FULFILLMENT:\n case DialogState.FULFILLED:\n callback(undefined, data);\n break;\n case DialogState.FAILED:\n callback(new Error('Bot conversation failed'));\n break;\n default:\n break;\n }\n }\n async sendMessage(botConfig, message) {\n // check if credentials are present\n let session;\n try {\n session = await fetchAuthSession();\n }\n catch (error) {\n return Promise.reject('No credentials');\n }\n const { name, region, alias } = botConfig;\n const client = new LexRuntimeServiceClient({\n region,\n credentials: session.credentials,\n customUserAgent: getAmplifyUserAgentObject(),\n });\n let params;\n if (typeof message === 'string') {\n params = {\n botAlias: alias,\n botName: name,\n inputText: message,\n userId: session.identityId,\n };\n logger.debug('postText to lex', message);\n try {\n const postTextCommand = new PostTextCommand(params);\n const data = await client.send(postTextCommand);\n this.reportBotStatus(data, botConfig);\n return data;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n else {\n const { content, options: { messageType }, } = message;\n if (messageType === 'voice') {\n if (typeof content !== 'object') {\n return Promise.reject('invalid content type');\n }\n const inputStream = content instanceof Uint8Array ? content : await convert(content);\n params = {\n botAlias: alias,\n botName: name,\n contentType: 'audio/x-l16; sample-rate=16000; channel-count=1',\n userId: session.identityId,\n accept: 'audio/mpeg',\n inputStream,\n };\n }\n else {\n if (typeof content !== 'string')\n return Promise.reject('invalid content type');\n params = {\n botAlias: alias,\n botName: name,\n contentType: 'text/plain; charset=utf-8',\n inputStream: content,\n userId: session.identityId,\n accept: 'audio/mpeg',\n };\n }\n logger.debug('postContent to lex', message);\n try {\n const postContentCommand = new PostContentCommand(params);\n const data = await client.send(postContentCommand);\n const audioArray = data.audioStream\n ? await convert(data.audioStream)\n : undefined;\n const response = { ...data, ...{ audioStream: audioArray } };\n this.reportBotStatus(response, botConfig);\n return response;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n }\n onComplete({ name }, callback) {\n this._botsCompleteCallback[name] = callback;\n }\n}\nexport const lexProvider = new AWSLexProvider();\n"],"names":[],"mappings":";;;;;AAIA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,gBAAgB,CAAC,CAAC;AACnD,MAAM,cAAc,CAAC;AACrB,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,qBAAqB,GAAG,EAAE,CAAC;AACxC,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,IAAI,eAAe,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE;AACpC,QAAQ,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;AAC1D,QAAQ,IAAI,CAAC,QAAQ,EAAE;AACvB,YAAY,OAAO;AACnB,SAAS;AACT;AACA,QAAQ,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;AAC5D,QAAQ,QAAQ,IAAI,CAAC,WAAW;AAChC,YAAY,KAAK,WAAW,CAAC,qBAAqB,CAAC;AACnD,YAAY,KAAK,WAAW,CAAC,SAAS;AACtC,gBAAgB,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAC1C,gBAAgB,MAAM;AACtB,YAAY,KAAK,WAAW,CAAC,MAAM;AACnC,gBAAgB,QAAQ,CAAC,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC;AAC/D,gBAAgB,MAAM;AAGtB,SAAS;AACT,KAAK;AACL,IAAI,MAAM,WAAW,CAAC,SAAS,EAAE,OAAO,EAAE;AAC1C;AACA,QAAQ,IAAI,OAAO,CAAC;AACpB,QAAQ,IAAI;AACZ,YAAY,OAAO,GAAG,MAAM,gBAAgB,EAAE,CAAC;AAC/C,SAAS;AACT,QAAQ,OAAO,KAAK,EAAE;AACtB,YAAY,OAAO,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AACpD,SAAS;AACT,QAAQ,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC;AAClD,QAAQ,MAAM,MAAM,GAAG,IAAI,uBAAuB,CAAC;AACnD,YAAY,MAAM;AAClB,YAAY,WAAW,EAAE,OAAO,CAAC,WAAW;AAC5C,YAAY,eAAe,EAAE,yBAAyB,EAAE;AACxD,SAAS,CAAC,CAAC;AACX,QAAQ,IAAI,MAAM,CAAC;AACnB,QAAQ,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;AACzC,YAAY,MAAM,GAAG;AACrB,gBAAgB,QAAQ,EAAE,KAAK;AAC/B,gBAAgB,OAAO,EAAE,IAAI;AAC7B,gBAAgB,SAAS,EAAE,OAAO;AAClC,gBAAgB,MAAM,EAAE,OAAO,CAAC,UAAU;AAC1C,aAAa,CAAC;AACd,YAAY,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;AACrD,YAAY,IAAI;AAChB,gBAAgB,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;AACpE,gBAAgB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAChE,gBAAgB,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AACtD,gBAAgB,OAAO,IAAI,CAAC;AAC5B,aAAa;AACb,YAAY,OAAO,GAAG,EAAE;AACxB,gBAAgB,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC3C,aAAa;AACb,SAAS;AACT,aAAa;AACb,YAAY,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,GAAG,GAAG,OAAO,CAAC;AACnE,YAAY,IAAI,WAAW,KAAK,OAAO,EAAE;AACzC,gBAAgB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;AACjD,oBAAoB,OAAO,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAClE,iBAAiB;AACjB,gBAAgB,MAAM,WAAW,GAAG,OAAO,YAAY,UAAU,GAAG,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;AACrG,gBAAgB,MAAM,GAAG;AACzB,oBAAoB,QAAQ,EAAE,KAAK;AACnC,oBAAoB,OAAO,EAAE,IAAI;AACjC,oBAAoB,WAAW,EAAE,iDAAiD;AAClF,oBAAoB,MAAM,EAAE,OAAO,CAAC,UAAU;AAC9C,oBAAoB,MAAM,EAAE,YAAY;AACxC,oBAAoB,WAAW;AAC/B,iBAAiB,CAAC;AAClB,aAAa;AACb,iBAAiB;AACjB,gBAAgB,IAAI,OAAO,OAAO,KAAK,QAAQ;AAC/C,oBAAoB,OAAO,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAClE,gBAAgB,MAAM,GAAG;AACzB,oBAAoB,QAAQ,EAAE,KAAK;AACnC,oBAAoB,OAAO,EAAE,IAAI;AACjC,oBAAoB,WAAW,EAAE,2BAA2B;AAC5D,oBAAoB,WAAW,EAAE,OAAO;AACxC,oBAAoB,MAAM,EAAE,OAAO,CAAC,UAAU;AAC9C,oBAAoB,MAAM,EAAE,YAAY;AACxC,iBAAiB,CAAC;AAClB,aAAa;AACb,YAAY,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;AACxD,YAAY,IAAI;AAChB,gBAAgB,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC1E,gBAAgB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;AACnE,gBAAgB,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW;AACnD,sBAAsB,MAAM,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;AACrD,sBAAsB,SAAS,CAAC;AAChC,gBAAgB,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,CAAC;AAC7E,gBAAgB,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAC1D,gBAAgB,OAAO,QAAQ,CAAC;AAChC,aAAa;AACb,YAAY,OAAO,GAAG,EAAE;AACxB,gBAAgB,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC3C,aAAa;AACb,SAAS;AACT,KAAK;AACL,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE;AACnC,QAAQ,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;AACpD,KAAK;AACL,CAAC;AACW,MAAC,WAAW,GAAG,IAAI,cAAc;;;;"}
1
+ {"version":3,"file":"AWSLexProvider.mjs","sources":["../../../src/lex-v1/AWSLexProvider.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { DialogState, LexRuntimeServiceClient, PostContentCommand, PostTextCommand, } from '@aws-sdk/client-lex-runtime-service';\nimport { getAmplifyUserAgentObject } from '@aws-amplify/core/internals/utils';\nimport { ConsoleLogger, fetchAuthSession } from '@aws-amplify/core';\nimport { convert } from '../utils';\nconst logger = new ConsoleLogger('AWSLexProvider');\nclass AWSLexProvider {\n constructor() {\n this._botsCompleteCallback = {};\n }\n /**\n * @deprecated\n * This is used internally by 'sendMessage' to call onComplete callback\n * for a bot if configured\n */\n reportBotStatus(data, { name }) {\n const callback = this._botsCompleteCallback[name];\n if (!callback) {\n return;\n }\n // Check if state is fulfilled to resolve onFullfilment promise\n logger.debug('postContent state', data.dialogState);\n switch (data.dialogState) {\n case DialogState.READY_FOR_FULFILLMENT:\n case DialogState.FULFILLED:\n callback(undefined, data);\n break;\n case DialogState.FAILED:\n callback(new Error('Bot conversation failed'));\n break;\n default:\n break;\n }\n }\n async sendMessage(botConfig, message) {\n // check if credentials are present\n let session;\n try {\n session = await fetchAuthSession();\n }\n catch (error) {\n return Promise.reject(new Error('No credentials'));\n }\n const { name, region, alias } = botConfig;\n const client = new LexRuntimeServiceClient({\n region,\n credentials: session.credentials,\n customUserAgent: getAmplifyUserAgentObject(),\n });\n let params;\n if (typeof message === 'string') {\n params = {\n botAlias: alias,\n botName: name,\n inputText: message,\n userId: session.identityId,\n };\n logger.debug('postText to lex', message);\n try {\n const postTextCommand = new PostTextCommand(params);\n const data = await client.send(postTextCommand);\n this.reportBotStatus(data, botConfig);\n return data;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n else {\n const { content, options: { messageType }, } = message;\n if (messageType === 'voice') {\n if (typeof content !== 'object') {\n return Promise.reject(new Error('invalid content type'));\n }\n const inputStream = content instanceof Uint8Array ? content : await convert(content);\n params = {\n botAlias: alias,\n botName: name,\n contentType: 'audio/x-l16; sample-rate=16000; channel-count=1',\n userId: session.identityId,\n accept: 'audio/mpeg',\n inputStream,\n };\n }\n else {\n if (typeof content !== 'string')\n return Promise.reject(new Error('invalid content type'));\n params = {\n botAlias: alias,\n botName: name,\n contentType: 'text/plain; charset=utf-8',\n inputStream: content,\n userId: session.identityId,\n accept: 'audio/mpeg',\n };\n }\n logger.debug('postContent to lex', message);\n try {\n const postContentCommand = new PostContentCommand(params);\n const data = await client.send(postContentCommand);\n const audioArray = data.audioStream\n ? await convert(data.audioStream)\n : undefined;\n const response = { ...data, ...{ audioStream: audioArray } };\n this.reportBotStatus(response, botConfig);\n return response;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n }\n onComplete({ name }, callback) {\n this._botsCompleteCallback[name] = callback;\n }\n}\nexport const lexProvider = new AWSLexProvider();\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"onComplete.mjs","sources":["../../../../src/lex-v1/apis/onComplete.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { resolveBotConfig } from '../utils';\nimport { lexProvider } from '../AWSLexProvider';\nimport { assertValidationError, InteractionsValidationErrorCode, } from '../../errors';\nexport const onComplete = (input) => {\n const { botName, callback } = input;\n const botConfig = resolveBotConfig(botName);\n assertValidationError(!!botConfig, InteractionsValidationErrorCode.NoBotConfig, `Bot ${botName} does not exist.`);\n lexProvider.onComplete(botConfig, callback);\n};\n"],"names":[],"mappings":";;;;;AAAA;AACA;AAIY,MAAC,UAAU,GAAG,CAAC,KAAK,KAAK;AACrC,IAAI,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;AACxC,IAAI,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAChD,IAAI,qBAAqB,CAAC,CAAC,CAAC,SAAS,EAAE,+BAA+B,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACtH,IAAI,WAAW,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AAChD;;;;"}
1
+ {"version":3,"file":"onComplete.mjs","sources":["../../../../src/lex-v1/apis/onComplete.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { resolveBotConfig } from '../utils';\nimport { lexProvider } from '../AWSLexProvider';\nimport { InteractionsValidationErrorCode, assertValidationError, } from '../../errors';\nexport const onComplete = (input) => {\n const { botName, callback } = input;\n const botConfig = resolveBotConfig(botName);\n assertValidationError(!!botConfig, InteractionsValidationErrorCode.NoBotConfig, `Bot ${botName} does not exist.`);\n lexProvider.onComplete(botConfig, callback);\n};\n"],"names":[],"mappings":";;;;;AAAA;AACA;AAIY,MAAC,UAAU,GAAG,CAAC,KAAK,KAAK;AACrC,IAAI,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;AACxC,IAAI,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAChD,IAAI,qBAAqB,CAAC,CAAC,CAAC,SAAS,EAAE,+BAA+B,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACtH,IAAI,WAAW,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AAChD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"send.mjs","sources":["../../../../src/lex-v1/apis/send.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { resolveBotConfig } from '../utils';\nimport { lexProvider } from '../AWSLexProvider';\nimport { assertValidationError, InteractionsValidationErrorCode, } from '../../errors';\nexport const send = async (input) => {\n const { botName, message } = input;\n const botConfig = resolveBotConfig(botName);\n assertValidationError(!!botConfig, InteractionsValidationErrorCode.NoBotConfig, `Bot ${botName} does not exist.`);\n return lexProvider.sendMessage(botConfig, message);\n};\n"],"names":[],"mappings":";;;;;AAAA;AACA;AAIY,MAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AACrC,IAAI,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;AACvC,IAAI,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAChD,IAAI,qBAAqB,CAAC,CAAC,CAAC,SAAS,EAAE,+BAA+B,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACtH,IAAI,OAAO,WAAW,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AACvD;;;;"}
1
+ {"version":3,"file":"send.mjs","sources":["../../../../src/lex-v1/apis/send.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { resolveBotConfig } from '../utils';\nimport { lexProvider } from '../AWSLexProvider';\nimport { InteractionsValidationErrorCode, assertValidationError, } from '../../errors';\nexport const send = async (input) => {\n const { botName, message } = input;\n const botConfig = resolveBotConfig(botName);\n assertValidationError(!!botConfig, InteractionsValidationErrorCode.NoBotConfig, `Bot ${botName} does not exist.`);\n return lexProvider.sendMessage(botConfig, message);\n};\n"],"names":[],"mappings":";;;;;AAAA;AACA;AAIY,MAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AACrC,IAAI,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;AACvC,IAAI,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAChD,IAAI,qBAAqB,CAAC,CAAC,CAAC,SAAS,EAAE,+BAA+B,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACtH,IAAI,OAAO,WAAW,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AACvD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/lex-v1/index.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { send, onComplete } from './apis';\n/**\n * @deprecated recommend to migrate to AWS Lex V2 instead\n * */\nexport const Interactions = {\n send,\n onComplete,\n};\n"],"names":[],"mappings":";;;AAAA;AACA;AAEA;AACA;AACA;AACY,MAAC,YAAY,GAAG;AAC5B,IAAI,IAAI;AACR,IAAI,UAAU;AACd;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/lex-v1/index.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { onComplete, send } from './apis';\n/**\n * @deprecated recommend to migrate to AWS Lex V2 instead\n * */\nexport const Interactions = {\n send,\n onComplete,\n};\n"],"names":[],"mappings":";;;AAAA;AACA;AAEA;AACA;AACA;AACY,MAAC,YAAY,GAAG;AAC5B,IAAI,IAAI;AACR,IAAI,UAAU;AACd;;;;"}
@@ -1,4 +1,4 @@
1
- import { SendInput, OnCompleteInput } from './inputs';
1
+ import { OnCompleteInput, SendInput } from './inputs';
2
2
  import { SendOutput } from './outputs';
3
3
  export interface AWSLexProviderOption {
4
4
  name: string;
@@ -1,4 +1,4 @@
1
- import { InteractionsSendInput, InteractionsOnCompleteInput } from '../../types';
1
+ import { InteractionsOnCompleteInput, InteractionsSendInput } from '../../types';
2
2
  /**
3
3
  * Input type for LexV1 send API.
4
4
  */
@@ -1,5 +1,5 @@
1
- import { InteractionsOnCompleteCallback, InteractionsMessage, InteractionsResponse } from '../types/Interactions';
2
1
  import { RecognizeTextCommandOutput, RecognizeUtteranceCommandOutput } from '@aws-sdk/client-lex-runtime-v2';
2
+ import { InteractionsMessage, InteractionsOnCompleteCallback, InteractionsResponse } from '../types/Interactions';
3
3
  import { AWSLexV2ProviderOption } from './types';
4
4
  interface RecognizeUtteranceCommandOutputFormatted extends Omit<RecognizeUtteranceCommandOutput, 'messages' | 'interpretations' | 'sessionState' | 'requestAttributes' | 'audioStream'> {
5
5
  messages?: RecognizeTextCommandOutput['messages'];
@@ -1,10 +1,12 @@
1
1
  import { LexRuntimeV2Client, IntentState, RecognizeTextCommand, RecognizeUtteranceCommand } from '@aws-sdk/client-lex-runtime-v2';
2
2
  import { getAmplifyUserAgentObject } from '@aws-amplify/core/internals/utils';
3
3
  import { ConsoleLogger, fetchAuthSession } from '@aws-amplify/core';
4
+ import { v4 } from 'uuid';
4
5
  import { convert } from '../utils/utils.mjs';
5
6
  import { unGzipBase64AsJson } from '../utils/commonUtils.mjs';
6
- import { v4 } from 'uuid';
7
7
 
8
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
9
+ // SPDX-License-Identifier: Apache-2.0
8
10
  const logger = new ConsoleLogger('AWSLexV2Provider');
9
11
  class AWSLexV2Provider {
10
12
  constructor() {
@@ -25,7 +27,7 @@ class AWSLexV2Provider {
25
27
  session = await fetchAuthSession();
26
28
  }
27
29
  catch (error) {
28
- return Promise.reject('No credentials');
30
+ return Promise.reject(new Error('No credentials'));
29
31
  }
30
32
  const { region, aliasId, localeId, botId } = botConfig;
31
33
  const client = new LexRuntimeV2Client({
@@ -109,9 +111,9 @@ class AWSLexV2Provider {
109
111
  };
110
112
  try {
111
113
  const recognizeTextCommand = new RecognizeTextCommand(params);
112
- const data = await client.send(recognizeTextCommand);
113
- this._reportBotStatus(data, botConfig);
114
- return data;
114
+ const resultData = await client.send(recognizeTextCommand);
115
+ this._reportBotStatus(resultData, botConfig);
116
+ return resultData;
115
117
  }
116
118
  catch (err) {
117
119
  return Promise.reject(err);
@@ -128,7 +130,7 @@ class AWSLexV2Provider {
128
130
  // prepare params
129
131
  if (messageType === 'voice') {
130
132
  if (typeof content !== 'object') {
131
- return Promise.reject('invalid content type');
133
+ return Promise.reject(new Error('invalid content type'));
132
134
  }
133
135
  const inputStream = content instanceof Uint8Array ? content : await convert(content);
134
136
  params = {
@@ -140,7 +142,7 @@ class AWSLexV2Provider {
140
142
  else {
141
143
  // text input
142
144
  if (typeof content !== 'string')
143
- return Promise.reject('invalid content type');
145
+ return Promise.reject(new Error('invalid content type'));
144
146
  params = {
145
147
  ...baseParams,
146
148
  requestContentType: 'text/plain; charset=utf-8',
@@ -150,8 +152,8 @@ class AWSLexV2Provider {
150
152
  // make API call to lex
151
153
  try {
152
154
  const recognizeUtteranceCommand = new RecognizeUtteranceCommand(params);
153
- const data = await client.send(recognizeUtteranceCommand);
154
- const response = await this._formatUtteranceCommandOutput(data);
155
+ const resultData = await client.send(recognizeUtteranceCommand);
156
+ const response = await this._formatUtteranceCommandOutput(resultData);
155
157
  this._reportBotStatus(response, botConfig);
156
158
  return response;
157
159
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AWSLexV2Provider.mjs","sources":["../../../src/lex-v2/AWSLexV2Provider.ts"],"sourcesContent":["import { IntentState, LexRuntimeV2Client, RecognizeTextCommand, RecognizeUtteranceCommand, } from '@aws-sdk/client-lex-runtime-v2';\nimport { getAmplifyUserAgentObject } from '@aws-amplify/core/internals/utils';\nimport { ConsoleLogger, fetchAuthSession } from '@aws-amplify/core';\nimport { convert, unGzipBase64AsJson } from '../utils';\nimport { v4 as uuid } from 'uuid';\nconst logger = new ConsoleLogger('AWSLexV2Provider');\nclass AWSLexV2Provider {\n constructor() {\n this._botsCompleteCallback = {};\n this.defaultSessionId = uuid();\n }\n /**\n * Send a message to a bot\n * @async\n * @param {AWSLexV2ProviderOption} botConfig - Bot configuration for sending the message\n * @param {string | InteractionsMessage} message - message to send to the bot\n * @return {Promise<InteractionsResponse>} A promise resolves to the response from the bot\n */\n async sendMessage(botConfig, message) {\n // check if credentials are present\n let session;\n try {\n session = await fetchAuthSession();\n }\n catch (error) {\n return Promise.reject('No credentials');\n }\n const { region, aliasId, localeId, botId } = botConfig;\n const client = new LexRuntimeV2Client({\n region,\n credentials: session.credentials,\n customUserAgent: getAmplifyUserAgentObject(),\n });\n let response;\n // common base params for all requests\n const reqBaseParams = {\n botAliasId: aliasId,\n botId,\n localeId,\n sessionId: session.identityId ?? this.defaultSessionId,\n };\n if (typeof message === 'string') {\n response = await this._handleRecognizeTextCommand(botConfig, message, reqBaseParams, client);\n }\n else {\n response = await this._handleRecognizeUtteranceCommand(botConfig, message, reqBaseParams, client);\n }\n return response;\n }\n /**\n * Attach a onComplete callback function to a bot.\n * The callback is called once the bot's intent is fulfilled\n * @param {AWSLexV2ProviderOption} botConfig - Bot configuration to attach the onComplete callback\n * @param {InteractionsOnCompleteCallback} callback - called when Intent Fulfilled\n */\n onComplete({ name }, callback) {\n this._botsCompleteCallback[name] = callback;\n }\n /**\n * call onComplete callback for a bot if configured\n */\n _reportBotStatus(data, { name }) {\n const sessionState = data?.sessionState;\n // Check if state is fulfilled to resolve onFullfilment promise\n logger.debug('postContent state', sessionState?.intent?.state);\n const callback = this._botsCompleteCallback[name];\n if (!callback) {\n return;\n }\n switch (sessionState?.intent?.state) {\n case IntentState.READY_FOR_FULFILLMENT:\n case IntentState.FULFILLED:\n callback(undefined, data);\n break;\n case IntentState.FAILED:\n callback(new Error('Bot conversation failed'));\n break;\n default:\n break;\n }\n }\n /**\n * Format UtteranceCommandOutput's response\n * decompress attributes\n * update audioStream format\n */\n async _formatUtteranceCommandOutput(data) {\n return {\n ...data,\n messages: await unGzipBase64AsJson(data.messages),\n sessionState: await unGzipBase64AsJson(data.sessionState),\n interpretations: await unGzipBase64AsJson(data.interpretations),\n requestAttributes: await unGzipBase64AsJson(data.requestAttributes),\n inputTranscript: await unGzipBase64AsJson(data.inputTranscript),\n audioStream: data.audioStream\n ? await convert(data.audioStream)\n : undefined,\n };\n }\n /**\n * handle client's `RecognizeTextCommand`\n * used for sending simple text message\n */\n async _handleRecognizeTextCommand(botConfig, data, baseParams, client) {\n logger.debug('postText to lex2', data);\n const params = {\n ...baseParams,\n text: data,\n };\n try {\n const recognizeTextCommand = new RecognizeTextCommand(params);\n const data = await client.send(recognizeTextCommand);\n this._reportBotStatus(data, botConfig);\n return data;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n /**\n * handle client's `RecognizeUtteranceCommand`\n * used for obj text or obj voice message\n */\n async _handleRecognizeUtteranceCommand(botConfig, data, baseParams, client) {\n const { content, options: { messageType }, } = data;\n logger.debug('postContent to lex2', data);\n let params;\n // prepare params\n if (messageType === 'voice') {\n if (typeof content !== 'object') {\n return Promise.reject('invalid content type');\n }\n const inputStream = content instanceof Uint8Array ? content : await convert(content);\n params = {\n ...baseParams,\n requestContentType: 'audio/x-l16; sample-rate=16000; channel-count=1',\n inputStream,\n };\n }\n else {\n // text input\n if (typeof content !== 'string')\n return Promise.reject('invalid content type');\n params = {\n ...baseParams,\n requestContentType: 'text/plain; charset=utf-8',\n inputStream: content,\n };\n }\n // make API call to lex\n try {\n const recognizeUtteranceCommand = new RecognizeUtteranceCommand(params);\n const data = await client.send(recognizeUtteranceCommand);\n const response = await this._formatUtteranceCommandOutput(data);\n this._reportBotStatus(response, botConfig);\n return response;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n}\nexport const lexProvider = new AWSLexV2Provider();\n"],"names":["uuid"],"mappings":"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"}
1
+ {"version":3,"file":"AWSLexV2Provider.mjs","sources":["../../../src/lex-v2/AWSLexV2Provider.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { IntentState, LexRuntimeV2Client, RecognizeTextCommand, RecognizeUtteranceCommand, } from '@aws-sdk/client-lex-runtime-v2';\nimport { getAmplifyUserAgentObject } from '@aws-amplify/core/internals/utils';\nimport { ConsoleLogger, fetchAuthSession } from '@aws-amplify/core';\nimport { v4 as uuid } from 'uuid';\nimport { convert, unGzipBase64AsJson } from '../utils';\nconst logger = new ConsoleLogger('AWSLexV2Provider');\nclass AWSLexV2Provider {\n constructor() {\n this._botsCompleteCallback = {};\n this.defaultSessionId = uuid();\n }\n /**\n * Send a message to a bot\n * @async\n * @param {AWSLexV2ProviderOption} botConfig - Bot configuration for sending the message\n * @param {string | InteractionsMessage} message - message to send to the bot\n * @return {Promise<InteractionsResponse>} A promise resolves to the response from the bot\n */\n async sendMessage(botConfig, message) {\n // check if credentials are present\n let session;\n try {\n session = await fetchAuthSession();\n }\n catch (error) {\n return Promise.reject(new Error('No credentials'));\n }\n const { region, aliasId, localeId, botId } = botConfig;\n const client = new LexRuntimeV2Client({\n region,\n credentials: session.credentials,\n customUserAgent: getAmplifyUserAgentObject(),\n });\n let response;\n // common base params for all requests\n const reqBaseParams = {\n botAliasId: aliasId,\n botId,\n localeId,\n sessionId: session.identityId ?? this.defaultSessionId,\n };\n if (typeof message === 'string') {\n response = await this._handleRecognizeTextCommand(botConfig, message, reqBaseParams, client);\n }\n else {\n response = await this._handleRecognizeUtteranceCommand(botConfig, message, reqBaseParams, client);\n }\n return response;\n }\n /**\n * Attach a onComplete callback function to a bot.\n * The callback is called once the bot's intent is fulfilled\n * @param {AWSLexV2ProviderOption} botConfig - Bot configuration to attach the onComplete callback\n * @param {InteractionsOnCompleteCallback} callback - called when Intent Fulfilled\n */\n onComplete({ name }, callback) {\n this._botsCompleteCallback[name] = callback;\n }\n /**\n * call onComplete callback for a bot if configured\n */\n _reportBotStatus(data, { name }) {\n const sessionState = data?.sessionState;\n // Check if state is fulfilled to resolve onFullfilment promise\n logger.debug('postContent state', sessionState?.intent?.state);\n const callback = this._botsCompleteCallback[name];\n if (!callback) {\n return;\n }\n switch (sessionState?.intent?.state) {\n case IntentState.READY_FOR_FULFILLMENT:\n case IntentState.FULFILLED:\n callback(undefined, data);\n break;\n case IntentState.FAILED:\n callback(new Error('Bot conversation failed'));\n break;\n default:\n break;\n }\n }\n /**\n * Format UtteranceCommandOutput's response\n * decompress attributes\n * update audioStream format\n */\n async _formatUtteranceCommandOutput(data) {\n return {\n ...data,\n messages: await unGzipBase64AsJson(data.messages),\n sessionState: await unGzipBase64AsJson(data.sessionState),\n interpretations: await unGzipBase64AsJson(data.interpretations),\n requestAttributes: await unGzipBase64AsJson(data.requestAttributes),\n inputTranscript: await unGzipBase64AsJson(data.inputTranscript),\n audioStream: data.audioStream\n ? await convert(data.audioStream)\n : undefined,\n };\n }\n /**\n * handle client's `RecognizeTextCommand`\n * used for sending simple text message\n */\n async _handleRecognizeTextCommand(botConfig, data, baseParams, client) {\n logger.debug('postText to lex2', data);\n const params = {\n ...baseParams,\n text: data,\n };\n try {\n const recognizeTextCommand = new RecognizeTextCommand(params);\n const resultData = await client.send(recognizeTextCommand);\n this._reportBotStatus(resultData, botConfig);\n return resultData;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n /**\n * handle client's `RecognizeUtteranceCommand`\n * used for obj text or obj voice message\n */\n async _handleRecognizeUtteranceCommand(botConfig, data, baseParams, client) {\n const { content, options: { messageType }, } = data;\n logger.debug('postContent to lex2', data);\n let params;\n // prepare params\n if (messageType === 'voice') {\n if (typeof content !== 'object') {\n return Promise.reject(new Error('invalid content type'));\n }\n const inputStream = content instanceof Uint8Array ? content : await convert(content);\n params = {\n ...baseParams,\n requestContentType: 'audio/x-l16; sample-rate=16000; channel-count=1',\n inputStream,\n };\n }\n else {\n // text input\n if (typeof content !== 'string')\n return Promise.reject(new Error('invalid content type'));\n params = {\n ...baseParams,\n requestContentType: 'text/plain; charset=utf-8',\n inputStream: content,\n };\n }\n // make API call to lex\n try {\n const recognizeUtteranceCommand = new RecognizeUtteranceCommand(params);\n const resultData = await client.send(recognizeUtteranceCommand);\n const response = await this._formatUtteranceCommandOutput(resultData);\n this._reportBotStatus(response, botConfig);\n return response;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n}\nexport const lexProvider = new AWSLexV2Provider();\n"],"names":["uuid"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"onComplete.mjs","sources":["../../../../src/lex-v2/apis/onComplete.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { resolveBotConfig } from '../utils';\nimport { lexProvider } from '../AWSLexV2Provider';\nimport { assertValidationError, InteractionsValidationErrorCode, } from '../../errors';\nexport const onComplete = (input) => {\n const { botName, callback } = input;\n const botConfig = resolveBotConfig(botName);\n assertValidationError(!!botConfig, InteractionsValidationErrorCode.NoBotConfig, `Bot ${botName} does not exist.`);\n lexProvider.onComplete(botConfig, callback);\n};\n"],"names":[],"mappings":";;;;;AAAA;AACA;AAIY,MAAC,UAAU,GAAG,CAAC,KAAK,KAAK;AACrC,IAAI,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;AACxC,IAAI,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAChD,IAAI,qBAAqB,CAAC,CAAC,CAAC,SAAS,EAAE,+BAA+B,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACtH,IAAI,WAAW,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AAChD;;;;"}
1
+ {"version":3,"file":"onComplete.mjs","sources":["../../../../src/lex-v2/apis/onComplete.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { resolveBotConfig } from '../utils';\nimport { lexProvider } from '../AWSLexV2Provider';\nimport { InteractionsValidationErrorCode, assertValidationError, } from '../../errors';\nexport const onComplete = (input) => {\n const { botName, callback } = input;\n const botConfig = resolveBotConfig(botName);\n assertValidationError(!!botConfig, InteractionsValidationErrorCode.NoBotConfig, `Bot ${botName} does not exist.`);\n lexProvider.onComplete(botConfig, callback);\n};\n"],"names":[],"mappings":";;;;;AAAA;AACA;AAIY,MAAC,UAAU,GAAG,CAAC,KAAK,KAAK;AACrC,IAAI,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;AACxC,IAAI,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAChD,IAAI,qBAAqB,CAAC,CAAC,CAAC,SAAS,EAAE,+BAA+B,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACtH,IAAI,WAAW,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AAChD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"send.mjs","sources":["../../../../src/lex-v2/apis/send.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { lexProvider } from '../AWSLexV2Provider';\nimport { resolveBotConfig } from '../utils';\nimport { assertValidationError, InteractionsValidationErrorCode, } from '../../errors';\nexport const send = async (input) => {\n const { botName, message } = input;\n const botConfig = resolveBotConfig(botName);\n assertValidationError(!!botConfig, InteractionsValidationErrorCode.NoBotConfig, `Bot ${botName} does not exist.`);\n return lexProvider.sendMessage(botConfig, message);\n};\n"],"names":[],"mappings":";;;;;AAAA;AACA;AAIY,MAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AACrC,IAAI,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;AACvC,IAAI,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAChD,IAAI,qBAAqB,CAAC,CAAC,CAAC,SAAS,EAAE,+BAA+B,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACtH,IAAI,OAAO,WAAW,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AACvD;;;;"}
1
+ {"version":3,"file":"send.mjs","sources":["../../../../src/lex-v2/apis/send.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { lexProvider } from '../AWSLexV2Provider';\nimport { resolveBotConfig } from '../utils';\nimport { InteractionsValidationErrorCode, assertValidationError, } from '../../errors';\nexport const send = async (input) => {\n const { botName, message } = input;\n const botConfig = resolveBotConfig(botName);\n assertValidationError(!!botConfig, InteractionsValidationErrorCode.NoBotConfig, `Bot ${botName} does not exist.`);\n return lexProvider.sendMessage(botConfig, message);\n};\n"],"names":[],"mappings":";;;;;AAAA;AACA;AAIY,MAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AACrC,IAAI,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;AACvC,IAAI,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAChD,IAAI,qBAAqB,CAAC,CAAC,CAAC,SAAS,EAAE,+BAA+B,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACtH,IAAI,OAAO,WAAW,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AACvD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/lex-v2/index.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { send, onComplete } from './apis';\nexport const Interactions = {\n send,\n onComplete,\n};\n"],"names":[],"mappings":";;;AAAA;AACA;AAEY,MAAC,YAAY,GAAG;AAC5B,IAAI,IAAI;AACR,IAAI,UAAU;AACd;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/lex-v2/index.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { onComplete, send } from './apis';\nexport const Interactions = {\n send,\n onComplete,\n};\n"],"names":[],"mappings":";;;AAAA;AACA;AAEY,MAAC,YAAY,GAAG;AAC5B,IAAI,IAAI;AACR,IAAI,UAAU;AACd;;;;"}
@@ -1,4 +1,4 @@
1
- import { SendInput, OnCompleteInput } from './inputs';
1
+ import { OnCompleteInput, SendInput } from './inputs';
2
2
  import { SendOutput } from './outputs';
3
3
  export interface AWSLexV2ProviderOption {
4
4
  name: string;
@@ -1,4 +1,4 @@
1
- import { InteractionsSendInput, InteractionsOnCompleteInput } from '../../types';
1
+ import { InteractionsOnCompleteInput, InteractionsSendInput } from '../../types';
2
2
  /**
3
3
  * Input type for LexV2 send API.
4
4
  */