@aws-amplify/interactions 5.2.12-api-v6-models.b3abc9b.0 → 6.0.1-api-v6-models.572a7b5.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 (227) hide show
  1. package/README.md +3 -0
  2. package/lex-v1/package.json +7 -0
  3. package/lex-v2/package.json +7 -0
  4. package/lib/errors/InteractionsError.d.ts +4 -0
  5. package/lib/errors/InteractionsError.js +20 -0
  6. package/lib/errors/assertValidationError.d.ts +2 -0
  7. package/lib/errors/assertValidationError.js +18 -0
  8. package/lib/errors/index.d.ts +2 -0
  9. package/lib/errors/index.js +9 -0
  10. package/lib/errors/validation.d.ts +5 -0
  11. package/lib/errors/validation.js +15 -0
  12. package/lib/index.d.ts +2 -5
  13. package/lib/index.js +3 -9
  14. package/lib/lex-v1/AWSLexProvider.d.ts +20 -0
  15. package/lib/lex-v1/AWSLexProvider.js +153 -0
  16. package/lib/lex-v1/apis/index.d.ts +2 -0
  17. package/lib/lex-v1/apis/index.js +9 -0
  18. package/lib/lex-v1/apis/onComplete.d.ts +2 -0
  19. package/lib/lex-v1/apis/onComplete.js +14 -0
  20. package/lib/lex-v1/apis/send.d.ts +2 -0
  21. package/lib/lex-v1/apis/send.js +18 -0
  22. package/lib/lex-v1/index.d.ts +5 -0
  23. package/lib/lex-v1/index.js +13 -0
  24. package/lib/lex-v1/types/AWSLexProviderOption.d.ts +5 -0
  25. package/lib/lex-v1/types/AWSLexProviderOption.js +4 -0
  26. package/lib/lex-v1/types/index.d.ts +1 -0
  27. package/lib/lex-v1/types/index.js +4 -0
  28. package/lib/lex-v1/utils/index.d.ts +1 -0
  29. package/lib/lex-v1/utils/index.js +7 -0
  30. package/lib/lex-v1/utils/resolveBotConfig.d.ts +2 -0
  31. package/lib/lex-v1/utils/resolveBotConfig.js +15 -0
  32. package/lib/lex-v2/AWSLexV2Provider.d.ts +52 -0
  33. package/lib/lex-v2/AWSLexV2Provider.js +225 -0
  34. package/lib/lex-v2/apis/index.d.ts +2 -0
  35. package/lib/lex-v2/apis/index.js +9 -0
  36. package/lib/lex-v2/apis/onComplete.d.ts +2 -0
  37. package/lib/lex-v2/apis/onComplete.js +14 -0
  38. package/lib/lex-v2/apis/send.d.ts +2 -0
  39. package/lib/lex-v2/apis/send.js +18 -0
  40. package/lib/lex-v2/index.d.ts +2 -0
  41. package/lib/lex-v2/index.js +10 -0
  42. package/lib/lex-v2/types/AWSLexV2ProviderOption.d.ts +7 -0
  43. package/lib/lex-v2/types/AWSLexV2ProviderOption.js +4 -0
  44. package/lib/lex-v2/types/index.d.ts +1 -0
  45. package/lib/lex-v2/types/index.js +4 -0
  46. package/lib/lex-v2/utils/index.d.ts +1 -0
  47. package/lib/lex-v2/utils/index.js +7 -0
  48. package/lib/lex-v2/utils/resolveBotConfig.d.ts +2 -0
  49. package/lib/lex-v2/utils/resolveBotConfig.js +15 -0
  50. package/lib/tsconfig.tsbuildinfo +1 -0
  51. package/lib/types/Interactions.d.ts +8 -6
  52. package/lib/types/Interactions.js +2 -1
  53. package/lib/types/Response.d.ts +2 -1
  54. package/lib/types/Response.js +0 -1
  55. package/lib/types/index.d.ts +2 -5
  56. package/lib/types/index.js +0 -1
  57. package/lib/utils/commonUtils.d.ts +1 -0
  58. package/lib/{Providers/AWSLexProviderHelper → utils}/commonUtils.js +5 -4
  59. package/lib/utils/index.d.ts +2 -0
  60. package/lib/utils/index.js +11 -0
  61. package/lib/{Providers/AWSLexProviderHelper → utils}/utils.js +9 -6
  62. package/lib/{Providers/AWSLexProviderHelper → utils}/utils.native.js +10 -7
  63. package/lib-esm/errors/InteractionsError.d.ts +4 -0
  64. package/lib-esm/errors/InteractionsError.js +17 -0
  65. package/lib-esm/errors/assertValidationError.d.ts +2 -0
  66. package/lib-esm/errors/assertValidationError.js +14 -0
  67. package/lib-esm/errors/index.d.ts +2 -0
  68. package/lib-esm/errors/index.js +4 -0
  69. package/lib-esm/errors/validation.d.ts +5 -0
  70. package/lib-esm/errors/validation.js +12 -0
  71. package/lib-esm/index.d.ts +2 -5
  72. package/lib-esm/index.js +1 -5
  73. package/lib-esm/lex-v1/AWSLexProvider.d.ts +20 -0
  74. package/lib-esm/lex-v1/AWSLexProvider.js +150 -0
  75. package/lib-esm/lex-v1/apis/index.d.ts +2 -0
  76. package/lib-esm/lex-v1/apis/index.js +4 -0
  77. package/lib-esm/lex-v1/apis/onComplete.d.ts +2 -0
  78. package/lib-esm/lex-v1/apis/onComplete.js +10 -0
  79. package/lib-esm/lex-v1/apis/send.d.ts +2 -0
  80. package/lib-esm/lex-v1/apis/send.js +14 -0
  81. package/lib-esm/lex-v1/index.d.ts +5 -0
  82. package/lib-esm/lex-v1/index.js +10 -0
  83. package/lib-esm/lex-v1/types/AWSLexProviderOption.d.ts +5 -0
  84. package/lib-esm/lex-v1/types/AWSLexProviderOption.js +3 -0
  85. package/lib-esm/lex-v1/types/index.d.ts +1 -0
  86. package/lib-esm/lex-v1/types/index.js +3 -0
  87. package/lib-esm/lex-v1/utils/index.d.ts +1 -0
  88. package/lib-esm/lex-v1/utils/index.js +3 -0
  89. package/lib-esm/lex-v1/utils/resolveBotConfig.d.ts +2 -0
  90. package/lib-esm/lex-v1/utils/resolveBotConfig.js +11 -0
  91. package/lib-esm/lex-v2/AWSLexV2Provider.d.ts +52 -0
  92. package/lib-esm/lex-v2/AWSLexV2Provider.js +222 -0
  93. package/lib-esm/lex-v2/apis/index.d.ts +2 -0
  94. package/lib-esm/lex-v2/apis/index.js +4 -0
  95. package/lib-esm/lex-v2/apis/onComplete.d.ts +2 -0
  96. package/lib-esm/lex-v2/apis/onComplete.js +10 -0
  97. package/lib-esm/lex-v2/apis/send.d.ts +2 -0
  98. package/lib-esm/lex-v2/apis/send.js +14 -0
  99. package/lib-esm/lex-v2/index.d.ts +2 -0
  100. package/lib-esm/lex-v2/index.js +7 -0
  101. package/lib-esm/lex-v2/types/AWSLexV2ProviderOption.d.ts +7 -0
  102. package/lib-esm/lex-v2/types/AWSLexV2ProviderOption.js +3 -0
  103. package/lib-esm/lex-v2/types/index.d.ts +1 -0
  104. package/lib-esm/lex-v2/types/index.js +3 -0
  105. package/lib-esm/lex-v2/utils/index.d.ts +1 -0
  106. package/lib-esm/lex-v2/utils/index.js +3 -0
  107. package/lib-esm/lex-v2/utils/resolveBotConfig.d.ts +2 -0
  108. package/lib-esm/lex-v2/utils/resolveBotConfig.js +11 -0
  109. package/lib-esm/tsconfig.tsbuildinfo +1 -0
  110. package/lib-esm/types/Interactions.d.ts +8 -6
  111. package/lib-esm/types/Interactions.js +3 -1
  112. package/lib-esm/types/Response.d.ts +2 -1
  113. package/lib-esm/types/Response.js +1 -1
  114. package/lib-esm/types/index.d.ts +2 -5
  115. package/lib-esm/types/index.js +1 -1
  116. package/lib-esm/utils/commonUtils.d.ts +1 -0
  117. package/lib-esm/{Providers/AWSLexProviderHelper → utils}/commonUtils.js +0 -1
  118. package/lib-esm/utils/index.d.ts +2 -0
  119. package/lib-esm/utils/index.js +4 -0
  120. package/lib-esm/{Providers/AWSLexProviderHelper → utils}/utils.js +0 -1
  121. package/lib-esm/{Providers/AWSLexProviderHelper → utils}/utils.native.js +0 -1
  122. package/package.json +70 -28
  123. package/src/errors/InteractionsError.ts +18 -0
  124. package/src/errors/assertValidationError.ts +24 -0
  125. package/src/errors/index.ts +5 -0
  126. package/src/errors/validation.ts +15 -0
  127. package/src/index.ts +8 -5
  128. package/src/lex-v1/AWSLexProvider.ts +162 -0
  129. package/src/lex-v1/apis/index.ts +5 -0
  130. package/src/lex-v1/apis/onComplete.ts +23 -0
  131. package/src/lex-v1/apis/send.ts +23 -0
  132. package/src/lex-v1/index.ts +13 -0
  133. package/src/{types/Providers/AWSLexProvider.ts → lex-v1/types/AWSLexProviderOption.ts} +1 -6
  134. package/src/lex-v1/types/index.ts +4 -0
  135. package/src/lex-v1/utils/index.ts +4 -0
  136. package/src/lex-v1/utils/resolveBotConfig.ts +15 -0
  137. package/src/{Providers → lex-v2}/AWSLexV2Provider.ts +64 -136
  138. package/src/lex-v2/apis/index.ts +5 -0
  139. package/src/lex-v2/apis/onComplete.ts +23 -0
  140. package/src/lex-v2/apis/send.ts +23 -0
  141. package/src/lex-v2/index.ts +10 -0
  142. package/src/{types/Providers/AWSLexV2Provider.ts → lex-v2/types/AWSLexV2ProviderOption.ts} +1 -6
  143. package/src/lex-v2/types/index.ts +4 -0
  144. package/src/lex-v2/utils/index.ts +4 -0
  145. package/src/lex-v2/utils/resolveBotConfig.ts +15 -0
  146. package/src/types/Interactions.ts +10 -3
  147. package/src/types/Response.ts +5 -0
  148. package/src/types/index.ts +6 -5
  149. package/src/utils/index.ts +5 -0
  150. package/lib/.tsbuildinfo +0 -3
  151. package/lib/Interactions.d.ts +0 -24
  152. package/lib/Interactions.js +0 -123
  153. package/lib/Interactions.js.map +0 -1
  154. package/lib/Providers/AWSLexProvider.d.ts +0 -24
  155. package/lib/Providers/AWSLexProvider.js +0 -187
  156. package/lib/Providers/AWSLexProvider.js.map +0 -1
  157. package/lib/Providers/AWSLexProviderHelper/commonUtils.d.ts +0 -1
  158. package/lib/Providers/AWSLexProviderHelper/commonUtils.js.map +0 -1
  159. package/lib/Providers/AWSLexProviderHelper/utils.js.map +0 -1
  160. package/lib/Providers/AWSLexProviderHelper/utils.native.js.map +0 -1
  161. package/lib/Providers/AWSLexV2Provider.d.ts +0 -58
  162. package/lib/Providers/AWSLexV2Provider.js +0 -282
  163. package/lib/Providers/AWSLexV2Provider.js.map +0 -1
  164. package/lib/Providers/InteractionsProvider.d.ts +0 -11
  165. package/lib/Providers/InteractionsProvider.js +0 -32
  166. package/lib/Providers/InteractionsProvider.js.map +0 -1
  167. package/lib/Providers/index.d.ts +0 -3
  168. package/lib/Providers/index.js +0 -11
  169. package/lib/Providers/index.js.map +0 -1
  170. package/lib/index.js.map +0 -1
  171. package/lib/types/Interactions.js.map +0 -1
  172. package/lib/types/Provider.d.ts +0 -12
  173. package/lib/types/Provider.js +0 -3
  174. package/lib/types/Provider.js.map +0 -1
  175. package/lib/types/Providers/AWSLexProvider.d.ts +0 -10
  176. package/lib/types/Providers/AWSLexProvider.js +0 -3
  177. package/lib/types/Providers/AWSLexProvider.js.map +0 -1
  178. package/lib/types/Providers/AWSLexV2Provider.d.ts +0 -12
  179. package/lib/types/Providers/AWSLexV2Provider.js +0 -3
  180. package/lib/types/Providers/AWSLexV2Provider.js.map +0 -1
  181. package/lib/types/Response.js.map +0 -1
  182. package/lib/types/index.js.map +0 -1
  183. package/lib-esm/.tsbuildinfo +0 -3
  184. package/lib-esm/Interactions.d.ts +0 -24
  185. package/lib-esm/Interactions.js +0 -121
  186. package/lib-esm/Interactions.js.map +0 -1
  187. package/lib-esm/Providers/AWSLexProvider.d.ts +0 -24
  188. package/lib-esm/Providers/AWSLexProvider.js +0 -185
  189. package/lib-esm/Providers/AWSLexProvider.js.map +0 -1
  190. package/lib-esm/Providers/AWSLexProviderHelper/commonUtils.d.ts +0 -1
  191. package/lib-esm/Providers/AWSLexProviderHelper/commonUtils.js.map +0 -1
  192. package/lib-esm/Providers/AWSLexProviderHelper/utils.js.map +0 -1
  193. package/lib-esm/Providers/AWSLexProviderHelper/utils.native.js.map +0 -1
  194. package/lib-esm/Providers/AWSLexV2Provider.d.ts +0 -58
  195. package/lib-esm/Providers/AWSLexV2Provider.js +0 -280
  196. package/lib-esm/Providers/AWSLexV2Provider.js.map +0 -1
  197. package/lib-esm/Providers/InteractionsProvider.d.ts +0 -11
  198. package/lib-esm/Providers/InteractionsProvider.js +0 -30
  199. package/lib-esm/Providers/InteractionsProvider.js.map +0 -1
  200. package/lib-esm/Providers/index.d.ts +0 -3
  201. package/lib-esm/Providers/index.js +0 -6
  202. package/lib-esm/Providers/index.js.map +0 -1
  203. package/lib-esm/index.js.map +0 -1
  204. package/lib-esm/types/Interactions.js.map +0 -1
  205. package/lib-esm/types/Provider.d.ts +0 -12
  206. package/lib-esm/types/Provider.js +0 -1
  207. package/lib-esm/types/Provider.js.map +0 -1
  208. package/lib-esm/types/Providers/AWSLexProvider.d.ts +0 -10
  209. package/lib-esm/types/Providers/AWSLexProvider.js +0 -1
  210. package/lib-esm/types/Providers/AWSLexProvider.js.map +0 -1
  211. package/lib-esm/types/Providers/AWSLexV2Provider.d.ts +0 -12
  212. package/lib-esm/types/Providers/AWSLexV2Provider.js +0 -1
  213. package/lib-esm/types/Providers/AWSLexV2Provider.js.map +0 -1
  214. package/lib-esm/types/Response.js.map +0 -1
  215. package/lib-esm/types/index.js.map +0 -1
  216. package/src/Interactions.ts +0 -162
  217. package/src/Providers/AWSLexProvider.ts +0 -212
  218. package/src/Providers/InteractionsProvider.ts +0 -49
  219. package/src/Providers/index.ts +0 -5
  220. package/src/types/Provider.ts +0 -26
  221. /package/lib/{Providers/AWSLexProviderHelper → utils}/utils.d.ts +0 -0
  222. /package/lib/{Providers/AWSLexProviderHelper → utils}/utils.native.d.ts +0 -0
  223. /package/lib-esm/{Providers/AWSLexProviderHelper → utils}/utils.d.ts +0 -0
  224. /package/lib-esm/{Providers/AWSLexProviderHelper → utils}/utils.native.d.ts +0 -0
  225. /package/src/{Providers/AWSLexProviderHelper → utils}/commonUtils.ts +0 -0
  226. /package/src/{Providers/AWSLexProviderHelper → utils}/utils.native.ts +0 -0
  227. /package/src/{Providers/AWSLexProviderHelper → utils}/utils.ts +0 -0
package/README.md ADDED
@@ -0,0 +1,3 @@
1
+ > INTERNAL USE ONLY
2
+
3
+ This package contains the AWS Amplify Interactions category and is intended for internal use only. To integrate Amplify into your app, please use [aws-amplify](https://www.npmjs.com/package/aws-amplify).
@@ -0,0 +1,7 @@
1
+ {
2
+ "name": "@aws-amplify/interactions/lex-v1",
3
+ "main": "../lib/lex-v1/index.js",
4
+ "browser": "../lib-esm/lex-v1/index.js",
5
+ "module": "../lib-esm/lex-v1/index.js",
6
+ "typings": "../lib-esm/lex-v1/index.d.ts"
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "name": "@aws-amplify/interactions/lex-v2",
3
+ "main": "../lib/lex-v2/index.js",
4
+ "browser": "../lib-esm/lex-v2/index.js",
5
+ "module": "../lib-esm/lex-v2/index.js",
6
+ "typings": "../lib-esm/lex-v2/index.d.ts"
7
+ }
@@ -0,0 +1,4 @@
1
+ import { AmplifyError, AmplifyErrorParams } from '@aws-amplify/core/internals/utils';
2
+ export declare class InteractionsError extends AmplifyError {
3
+ constructor(params: AmplifyErrorParams);
4
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.InteractionsError = void 0;
6
+ var tslib_1 = require("tslib");
7
+ var utils_1 = require("@aws-amplify/core/internals/utils");
8
+ var InteractionsError = /** @class */ (function (_super) {
9
+ tslib_1.__extends(InteractionsError, _super);
10
+ function InteractionsError(params) {
11
+ var _this = _super.call(this, params) || this;
12
+ // Hack for making the custom error class work when transpiled to es5
13
+ // TODO: Delete the following 2 lines after we change the build target to >= es2015
14
+ _this.constructor = InteractionsError;
15
+ Object.setPrototypeOf(_this, InteractionsError.prototype);
16
+ return _this;
17
+ }
18
+ return InteractionsError;
19
+ }(utils_1.AmplifyError));
20
+ exports.InteractionsError = InteractionsError;
@@ -0,0 +1,2 @@
1
+ import { InteractionsValidationErrorCode } from './validation';
2
+ export declare function assertValidationError(assertion: boolean, name: InteractionsValidationErrorCode, message?: string): asserts assertion;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.assertValidationError = void 0;
6
+ var validation_1 = require("./validation");
7
+ var InteractionsError_1 = require("./InteractionsError");
8
+ function assertValidationError(assertion, name, message) {
9
+ if (!assertion) {
10
+ var _a = validation_1.validationErrorMap[name], defaultMessage = _a.message, recoverySuggestion = _a.recoverySuggestion;
11
+ throw new InteractionsError_1.InteractionsError({
12
+ name: name,
13
+ message: message !== null && message !== void 0 ? message : defaultMessage,
14
+ recoverySuggestion: recoverySuggestion,
15
+ });
16
+ }
17
+ }
18
+ exports.assertValidationError = assertValidationError;
@@ -0,0 +1,2 @@
1
+ export { assertValidationError } from './assertValidationError';
2
+ export { InteractionsValidationErrorCode } from './validation';
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.InteractionsValidationErrorCode = exports.assertValidationError = void 0;
6
+ var assertValidationError_1 = require("./assertValidationError");
7
+ Object.defineProperty(exports, "assertValidationError", { enumerable: true, get: function () { return assertValidationError_1.assertValidationError; } });
8
+ var validation_1 = require("./validation");
9
+ Object.defineProperty(exports, "InteractionsValidationErrorCode", { enumerable: true, get: function () { return validation_1.InteractionsValidationErrorCode; } });
@@ -0,0 +1,5 @@
1
+ import { AmplifyErrorMap } from '@aws-amplify/core/internals/utils';
2
+ export declare enum InteractionsValidationErrorCode {
3
+ NoBotConfig = "NoBotConfig"
4
+ }
5
+ export declare const validationErrorMap: AmplifyErrorMap<InteractionsValidationErrorCode>;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ var _a;
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.validationErrorMap = exports.InteractionsValidationErrorCode = void 0;
7
+ var InteractionsValidationErrorCode;
8
+ (function (InteractionsValidationErrorCode) {
9
+ InteractionsValidationErrorCode["NoBotConfig"] = "NoBotConfig";
10
+ })(InteractionsValidationErrorCode || (exports.InteractionsValidationErrorCode = InteractionsValidationErrorCode = {}));
11
+ exports.validationErrorMap = (_a = {},
12
+ _a[InteractionsValidationErrorCode.NoBotConfig] = {
13
+ message: 'Missing configuration for the bot',
14
+ },
15
+ _a);
package/lib/index.d.ts CHANGED
@@ -1,5 +1,2 @@
1
- export { Interactions } from './Interactions';
2
- export * from './types';
3
- export { AbstractInteractionsProvider } from './Providers/InteractionsProvider';
4
- export { AWSLexProvider } from './Providers/AWSLexProvider';
5
- export { AWSLexV2Provider } from './Providers/AWSLexV2Provider';
1
+ export { InteractionsMessage, InteractionsResponse, InteractionsVoiceMessage, InteractionsTextMessage, CompletionCallback, } from './types';
2
+ export { Interactions } from './lex-v2';
package/lib/index.js CHANGED
@@ -2,12 +2,6 @@
2
2
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  // SPDX-License-Identifier: Apache-2.0
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- var Interactions_1 = require("./Interactions");
6
- exports.Interactions = Interactions_1.Interactions;
7
- var InteractionsProvider_1 = require("./Providers/InteractionsProvider");
8
- exports.AbstractInteractionsProvider = InteractionsProvider_1.AbstractInteractionsProvider;
9
- var AWSLexProvider_1 = require("./Providers/AWSLexProvider");
10
- exports.AWSLexProvider = AWSLexProvider_1.AWSLexProvider;
11
- var AWSLexV2Provider_1 = require("./Providers/AWSLexV2Provider");
12
- exports.AWSLexV2Provider = AWSLexV2Provider_1.AWSLexV2Provider;
13
- //# sourceMappingURL=index.js.map
5
+ exports.Interactions = void 0;
6
+ var lex_v2_1 = require("./lex-v2");
7
+ Object.defineProperty(exports, "Interactions", { enumerable: true, get: function () { return lex_v2_1.Interactions; } });
@@ -0,0 +1,20 @@
1
+ import { CompletionCallback, InteractionsMessage, InteractionsResponse } from '../types';
2
+ import { PostContentCommandOutput, PostTextCommandOutput } from '@aws-sdk/client-lex-runtime-service';
3
+ import { AWSLexProviderOption } from './types';
4
+ interface PostContentCommandOutputFormatted extends Omit<PostContentCommandOutput, 'audioStream'> {
5
+ audioStream?: Uint8Array;
6
+ }
7
+ type AWSLexProviderSendResponse = PostTextCommandOutput | PostContentCommandOutputFormatted;
8
+ declare class AWSLexProvider {
9
+ private readonly _botsCompleteCallback;
10
+ /**
11
+ * @deprecated
12
+ * This is used internally by 'sendMessage' to call onComplete callback
13
+ * for a bot if configured
14
+ */
15
+ reportBotStatus(data: AWSLexProviderSendResponse, { name }: AWSLexProviderOption): void;
16
+ sendMessage(botConfig: AWSLexProviderOption, message: string | InteractionsMessage): Promise<InteractionsResponse>;
17
+ onComplete({ name }: AWSLexProviderOption, callback: CompletionCallback): void;
18
+ }
19
+ export declare const lexProvider: AWSLexProvider;
20
+ export {};
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.lexProvider = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var client_lex_runtime_service_1 = require("@aws-sdk/client-lex-runtime-service");
6
+ var utils_1 = require("@aws-amplify/core/internals/utils");
7
+ var core_1 = require("@aws-amplify/core");
8
+ var utils_2 = require("../utils");
9
+ var logger = new core_1.ConsoleLogger('AWSLexProvider');
10
+ var AWSLexProvider = /** @class */ (function () {
11
+ function AWSLexProvider() {
12
+ this._botsCompleteCallback = {};
13
+ }
14
+ /**
15
+ * @deprecated
16
+ * This is used internally by 'sendMessage' to call onComplete callback
17
+ * for a bot if configured
18
+ */
19
+ AWSLexProvider.prototype.reportBotStatus = function (data, _a) {
20
+ var name = _a.name;
21
+ var callback = this._botsCompleteCallback[name];
22
+ if (!callback) {
23
+ return;
24
+ }
25
+ // Check if state is fulfilled to resolve onFullfilment promise
26
+ logger.debug('postContent state', data.dialogState);
27
+ switch (data.dialogState) {
28
+ case client_lex_runtime_service_1.DialogState.READY_FOR_FULFILLMENT:
29
+ case client_lex_runtime_service_1.DialogState.FULFILLED:
30
+ callback(undefined, data);
31
+ break;
32
+ case client_lex_runtime_service_1.DialogState.FAILED:
33
+ callback(new Error('Bot conversation failed'));
34
+ break;
35
+ default:
36
+ break;
37
+ }
38
+ };
39
+ AWSLexProvider.prototype.sendMessage = function (botConfig, message) {
40
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
41
+ var session, error_1, name, region, alias, client, params, postTextCommand, data, err_1, content, messageType, inputStream, _a, postContentCommand, data, audioArray, _b, response, err_2;
42
+ return tslib_1.__generator(this, function (_c) {
43
+ switch (_c.label) {
44
+ case 0:
45
+ _c.trys.push([0, 2, , 3]);
46
+ return [4 /*yield*/, (0, core_1.fetchAuthSession)()];
47
+ case 1:
48
+ session = _c.sent();
49
+ return [3 /*break*/, 3];
50
+ case 2:
51
+ error_1 = _c.sent();
52
+ return [2 /*return*/, Promise.reject('No credentials')];
53
+ case 3:
54
+ name = botConfig.name, region = botConfig.region, alias = botConfig.alias;
55
+ client = new client_lex_runtime_service_1.LexRuntimeServiceClient({
56
+ region: region,
57
+ credentials: session.credentials,
58
+ customUserAgent: (0, utils_1.getAmplifyUserAgentObject)(),
59
+ });
60
+ if (!(typeof message === 'string')) return [3 /*break*/, 8];
61
+ params = {
62
+ botAlias: alias,
63
+ botName: name,
64
+ inputText: message,
65
+ userId: session.identityId,
66
+ };
67
+ logger.debug('postText to lex', message);
68
+ _c.label = 4;
69
+ case 4:
70
+ _c.trys.push([4, 6, , 7]);
71
+ postTextCommand = new client_lex_runtime_service_1.PostTextCommand(params);
72
+ return [4 /*yield*/, client.send(postTextCommand)];
73
+ case 5:
74
+ data = _c.sent();
75
+ this.reportBotStatus(data, botConfig);
76
+ return [2 /*return*/, data];
77
+ case 6:
78
+ err_1 = _c.sent();
79
+ return [2 /*return*/, Promise.reject(err_1)];
80
+ case 7: return [3 /*break*/, 20];
81
+ case 8:
82
+ content = message.content, messageType = message.options.messageType;
83
+ if (!(messageType === 'voice')) return [3 /*break*/, 12];
84
+ if (typeof content !== 'object') {
85
+ return [2 /*return*/, Promise.reject('invalid content type')];
86
+ }
87
+ if (!(content instanceof Uint8Array)) return [3 /*break*/, 9];
88
+ _a = content;
89
+ return [3 /*break*/, 11];
90
+ case 9: return [4 /*yield*/, (0, utils_2.convert)(content)];
91
+ case 10:
92
+ _a = _c.sent();
93
+ _c.label = 11;
94
+ case 11:
95
+ inputStream = _a;
96
+ params = {
97
+ botAlias: alias,
98
+ botName: name,
99
+ contentType: 'audio/x-l16; sample-rate=16000; channel-count=1',
100
+ userId: session.identityId,
101
+ accept: 'audio/mpeg',
102
+ inputStream: inputStream,
103
+ };
104
+ return [3 /*break*/, 13];
105
+ case 12:
106
+ if (typeof content !== 'string')
107
+ return [2 /*return*/, Promise.reject('invalid content type')];
108
+ params = {
109
+ botAlias: alias,
110
+ botName: name,
111
+ contentType: 'text/plain; charset=utf-8',
112
+ inputStream: content,
113
+ userId: session.identityId,
114
+ accept: 'audio/mpeg',
115
+ };
116
+ _c.label = 13;
117
+ case 13:
118
+ logger.debug('postContent to lex', message);
119
+ _c.label = 14;
120
+ case 14:
121
+ _c.trys.push([14, 19, , 20]);
122
+ postContentCommand = new client_lex_runtime_service_1.PostContentCommand(params);
123
+ return [4 /*yield*/, client.send(postContentCommand)];
124
+ case 15:
125
+ data = _c.sent();
126
+ if (!data.audioStream) return [3 /*break*/, 17];
127
+ return [4 /*yield*/, (0, utils_2.convert)(data.audioStream)];
128
+ case 16:
129
+ _b = _c.sent();
130
+ return [3 /*break*/, 18];
131
+ case 17:
132
+ _b = undefined;
133
+ _c.label = 18;
134
+ case 18:
135
+ audioArray = _b;
136
+ response = tslib_1.__assign(tslib_1.__assign({}, data), { audioStream: audioArray });
137
+ this.reportBotStatus(response, botConfig);
138
+ return [2 /*return*/, response];
139
+ case 19:
140
+ err_2 = _c.sent();
141
+ return [2 /*return*/, Promise.reject(err_2)];
142
+ case 20: return [2 /*return*/];
143
+ }
144
+ });
145
+ });
146
+ };
147
+ AWSLexProvider.prototype.onComplete = function (_a, callback) {
148
+ var name = _a.name;
149
+ this._botsCompleteCallback[name] = callback;
150
+ };
151
+ return AWSLexProvider;
152
+ }());
153
+ exports.lexProvider = new AWSLexProvider();
@@ -0,0 +1,2 @@
1
+ export { send } from './send';
2
+ export { onComplete } from './onComplete';
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.onComplete = exports.send = void 0;
6
+ var send_1 = require("./send");
7
+ Object.defineProperty(exports, "send", { enumerable: true, get: function () { return send_1.send; } });
8
+ var onComplete_1 = require("./onComplete");
9
+ Object.defineProperty(exports, "onComplete", { enumerable: true, get: function () { return onComplete_1.onComplete; } });
@@ -0,0 +1,2 @@
1
+ import { CompletionCallback } from '../../types';
2
+ export declare const onComplete: (botName: string, callback: CompletionCallback) => void;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.onComplete = void 0;
6
+ var utils_1 = require("../utils");
7
+ var AWSLexProvider_1 = require("../AWSLexProvider");
8
+ var errors_1 = require("../../errors");
9
+ var onComplete = function (botName, callback) {
10
+ var botConfig = (0, utils_1.resolveBotConfig)(botName);
11
+ (0, errors_1.assertValidationError)(!!botConfig, errors_1.InteractionsValidationErrorCode.NoBotConfig, "Bot ".concat(botName, " does not exist."));
12
+ AWSLexProvider_1.lexProvider.onComplete(botConfig, callback);
13
+ };
14
+ exports.onComplete = onComplete;
@@ -0,0 +1,2 @@
1
+ import { InteractionsMessage, InteractionsResponse } from '../../types';
2
+ export declare const send: (botName: string, message: string | InteractionsMessage) => Promise<InteractionsResponse>;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.send = void 0;
6
+ var tslib_1 = require("tslib");
7
+ var utils_1 = require("../utils");
8
+ var AWSLexProvider_1 = require("../AWSLexProvider");
9
+ var errors_1 = require("../../errors");
10
+ var send = function (botName, message) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
11
+ var botConfig;
12
+ return tslib_1.__generator(this, function (_a) {
13
+ botConfig = (0, utils_1.resolveBotConfig)(botName);
14
+ (0, errors_1.assertValidationError)(!!botConfig, errors_1.InteractionsValidationErrorCode.NoBotConfig, "Bot ".concat(botName, " does not exist."));
15
+ return [2 /*return*/, AWSLexProvider_1.lexProvider.sendMessage(botConfig, message)];
16
+ });
17
+ }); };
18
+ exports.send = send;
@@ -0,0 +1,5 @@
1
+ import { IInteractions } from '../types/Interactions';
2
+ /**
3
+ * @deprecated recommend to migrate to AWS Lex V2 instead
4
+ * */
5
+ export declare const Interactions: IInteractions;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.Interactions = void 0;
6
+ var apis_1 = require("./apis");
7
+ /**
8
+ * @deprecated recommend to migrate to AWS Lex V2 instead
9
+ * */
10
+ exports.Interactions = {
11
+ send: apis_1.send,
12
+ onComplete: apis_1.onComplete,
13
+ };
@@ -0,0 +1,5 @@
1
+ export interface AWSLexProviderOption {
2
+ name: string;
3
+ alias: string;
4
+ region: string;
5
+ }
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1 @@
1
+ export { AWSLexProviderOption } from './AWSLexProviderOption';
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1 @@
1
+ export { resolveBotConfig } from './resolveBotConfig';
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.resolveBotConfig = void 0;
6
+ var resolveBotConfig_1 = require("./resolveBotConfig");
7
+ Object.defineProperty(exports, "resolveBotConfig", { enumerable: true, get: function () { return resolveBotConfig_1.resolveBotConfig; } });
@@ -0,0 +1,2 @@
1
+ import { AWSLexProviderOption } from '../types';
2
+ export declare const resolveBotConfig: (botName: string) => AWSLexProviderOption | undefined;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.resolveBotConfig = void 0;
6
+ var tslib_1 = require("tslib");
7
+ var core_1 = require("@aws-amplify/core");
8
+ var resolveBotConfig = function (botName) {
9
+ var _a, _b;
10
+ var _c = (_b = (_a = core_1.Amplify.getConfig().Interactions) === null || _a === void 0 ? void 0 : _a.LexV1) !== null && _b !== void 0 ? _b : {}, _d = botName, _e = _c[_d], botConfig = _e === void 0 ? undefined : _e;
11
+ if (botConfig !== undefined) {
12
+ return tslib_1.__assign(tslib_1.__assign({}, botConfig), { name: botName });
13
+ }
14
+ };
15
+ exports.resolveBotConfig = resolveBotConfig;
@@ -0,0 +1,52 @@
1
+ import { CompletionCallback, InteractionsMessage, InteractionsResponse } from '../types';
2
+ import { RecognizeTextCommandOutput, RecognizeUtteranceCommandOutput } from '@aws-sdk/client-lex-runtime-v2';
3
+ import { AWSLexV2ProviderOption } from './types';
4
+ interface RecognizeUtteranceCommandOutputFormatted extends Omit<RecognizeUtteranceCommandOutput, 'messages' | 'interpretations' | 'sessionState' | 'requestAttributes' | 'audioStream'> {
5
+ messages?: RecognizeTextCommandOutput['messages'];
6
+ sessionState?: RecognizeTextCommandOutput['sessionState'];
7
+ interpretations?: RecognizeTextCommandOutput['interpretations'];
8
+ requestAttributes?: RecognizeTextCommandOutput['requestAttributes'];
9
+ audioStream?: Uint8Array;
10
+ }
11
+ type AWSLexV2ProviderSendResponse = RecognizeTextCommandOutput | RecognizeUtteranceCommandOutputFormatted;
12
+ declare class AWSLexV2Provider {
13
+ private readonly _botsCompleteCallback;
14
+ private defaultSessionId;
15
+ /**
16
+ * Send a message to a bot
17
+ * @async
18
+ * @param {AWSLexV2ProviderOption} botConfig - Bot configuration for sending the message
19
+ * @param {string | InteractionsMessage} message - message to send to the bot
20
+ * @return {Promise<InteractionsResponse>} A promise resolves to the response from the bot
21
+ */
22
+ sendMessage(botConfig: AWSLexV2ProviderOption, message: string | InteractionsMessage): Promise<InteractionsResponse>;
23
+ /**
24
+ * Attach a onComplete callback function to a bot.
25
+ * The callback is called once the bot's intent is fulfilled
26
+ * @param {AWSLexV2ProviderOption} botConfig - Bot configuration to attach the onComplete callback
27
+ * @param {CompletionCallback} callback - called when Intent Fulfilled
28
+ */
29
+ onComplete({ name }: AWSLexV2ProviderOption, callback: CompletionCallback): void;
30
+ /**
31
+ * call onComplete callback for a bot if configured
32
+ */
33
+ _reportBotStatus(data: AWSLexV2ProviderSendResponse, { name }: AWSLexV2ProviderOption): void;
34
+ /**
35
+ * Format UtteranceCommandOutput's response
36
+ * decompress attributes
37
+ * update audioStream format
38
+ */
39
+ private _formatUtteranceCommandOutput;
40
+ /**
41
+ * handle client's `RecognizeTextCommand`
42
+ * used for sending simple text message
43
+ */
44
+ private _handleRecognizeTextCommand;
45
+ /**
46
+ * handle client's `RecognizeUtteranceCommand`
47
+ * used for obj text or obj voice message
48
+ */
49
+ private _handleRecognizeUtteranceCommand;
50
+ }
51
+ export declare const lexProvider: AWSLexV2Provider;
52
+ export {};