@aws-amplify/interactions 4.0.48 → 4.0.49-next.20
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.
- package/CHANGELOG.md +78 -0
- package/dist/aws-amplify-interactions.js +30438 -8762
- package/dist/aws-amplify-interactions.js.map +1 -1
- package/dist/aws-amplify-interactions.min.js +166 -5
- package/dist/aws-amplify-interactions.min.js.map +1 -1
- package/lib/Interactions.d.ts +2 -2
- package/lib/Interactions.js +41 -68
- package/lib/Interactions.js.map +1 -1
- package/lib/Providers/AWSLexProvider.d.ts +16 -3
- package/lib/Providers/AWSLexProvider.js +106 -119
- package/lib/Providers/AWSLexProvider.js.map +1 -1
- package/lib/Providers/AWSLexProviderHelper/commonUtils.d.ts +1 -0
- package/lib/Providers/AWSLexProviderHelper/commonUtils.js +39 -0
- package/lib/Providers/AWSLexProviderHelper/commonUtils.js.map +1 -0
- package/lib/Providers/AWSLexProviderHelper/utils.d.ts +3 -0
- package/lib/Providers/AWSLexProviderHelper/utils.js +48 -0
- package/lib/Providers/AWSLexProviderHelper/utils.js.map +1 -0
- package/lib/Providers/AWSLexProviderHelper/utils.native.d.ts +3 -0
- package/lib/Providers/AWSLexProviderHelper/utils.native.js +65 -0
- package/lib/Providers/AWSLexProviderHelper/utils.native.js.map +1 -0
- package/lib/Providers/AWSLexV2Provider.d.ts +58 -0
- package/lib/Providers/AWSLexV2Provider.js +292 -0
- package/lib/Providers/AWSLexV2Provider.js.map +1 -0
- package/lib/Providers/InteractionsProvider.js +3 -13
- package/lib/Providers/InteractionsProvider.js.map +1 -1
- package/lib/Providers/index.d.ts +1 -0
- package/lib/Providers/index.js +4 -5
- package/lib/Providers/index.js.map +1 -1
- package/lib/index.d.ts +2 -0
- package/lib/index.js +4 -4
- package/lib/index.js.map +1 -1
- package/lib/types/Provider.d.ts +2 -1
- package/lib/types/Providers/AWSLexProvider.d.ts +10 -0
- package/lib/types/Providers/AWSLexProvider.js +3 -0
- package/lib/types/Providers/AWSLexProvider.js.map +1 -0
- package/lib/types/Providers/AWSLexV2Provider.d.ts +12 -0
- package/lib/types/Providers/AWSLexV2Provider.js +3 -0
- package/lib/types/Providers/AWSLexV2Provider.js.map +1 -0
- package/lib/types/index.d.ts +2 -0
- package/lib-esm/Interactions.d.ts +2 -2
- package/lib-esm/Interactions.js +38 -65
- package/lib-esm/Interactions.js.map +1 -1
- package/lib-esm/Providers/AWSLexProvider.d.ts +16 -3
- package/lib-esm/Providers/AWSLexProvider.js +102 -115
- package/lib-esm/Providers/AWSLexProvider.js.map +1 -1
- package/lib-esm/Providers/AWSLexProviderHelper/commonUtils.d.ts +1 -0
- package/lib-esm/Providers/AWSLexProviderHelper/commonUtils.js +37 -0
- package/lib-esm/Providers/AWSLexProviderHelper/commonUtils.js.map +1 -0
- package/lib-esm/Providers/AWSLexProviderHelper/utils.d.ts +3 -0
- package/lib-esm/Providers/AWSLexProviderHelper/utils.js +46 -0
- package/lib-esm/Providers/AWSLexProviderHelper/utils.js.map +1 -0
- package/lib-esm/Providers/AWSLexProviderHelper/utils.native.d.ts +3 -0
- package/lib-esm/Providers/AWSLexProviderHelper/utils.native.js +63 -0
- package/lib-esm/Providers/AWSLexProviderHelper/utils.native.js.map +1 -0
- package/lib-esm/Providers/AWSLexV2Provider.d.ts +58 -0
- package/lib-esm/Providers/AWSLexV2Provider.js +290 -0
- package/lib-esm/Providers/AWSLexV2Provider.js.map +1 -0
- package/lib-esm/Providers/InteractionsProvider.js +1 -11
- package/lib-esm/Providers/InteractionsProvider.js.map +1 -1
- package/lib-esm/Providers/index.d.ts +1 -0
- package/lib-esm/Providers/index.js +1 -0
- package/lib-esm/Providers/index.js.map +1 -1
- package/lib-esm/index.d.ts +2 -0
- package/lib-esm/index.js +2 -0
- package/lib-esm/index.js.map +1 -1
- package/lib-esm/types/Provider.d.ts +2 -1
- package/lib-esm/types/Providers/AWSLexProvider.d.ts +10 -0
- package/lib-esm/types/Providers/AWSLexProvider.js +1 -0
- package/lib-esm/types/Providers/AWSLexProvider.js.map +1 -0
- package/lib-esm/types/Providers/AWSLexV2Provider.d.ts +12 -0
- package/lib-esm/types/Providers/AWSLexV2Provider.js +1 -0
- package/lib-esm/types/Providers/AWSLexV2Provider.js.map +1 -0
- package/lib-esm/types/index.d.ts +2 -0
- package/package.json +9 -4
- package/src/Interactions.ts +43 -21
- package/src/Providers/AWSLexProvider.ts +70 -23
- package/src/Providers/AWSLexProviderHelper/commonUtils.ts +27 -0
- package/src/Providers/AWSLexProviderHelper/utils.native.ts +56 -0
- package/src/Providers/AWSLexProviderHelper/utils.ts +39 -0
- package/src/Providers/AWSLexV2Provider.ts +343 -0
- package/src/Providers/index.ts +1 -0
- package/src/index.ts +2 -0
- package/src/types/Provider.ts +1 -1
- package/src/types/Providers/AWSLexProvider.ts +23 -0
- package/src/types/Providers/AWSLexV2Provider.ts +25 -0
- package/src/types/index.ts +2 -0
- package/lib/Providers/AWSLexProviderHelper/convert.d.ts +0 -3
- package/lib/Providers/AWSLexProviderHelper/convert.js +0 -13
- package/lib/Providers/AWSLexProviderHelper/convert.js.map +0 -1
- package/lib/Providers/AWSLexProviderHelper/convert.native.d.ts +0 -1
- package/lib/Providers/AWSLexProviderHelper/convert.native.js +0 -56
- package/lib/Providers/AWSLexProviderHelper/convert.native.js.map +0 -1
- package/lib-esm/Providers/AWSLexProviderHelper/convert.d.ts +0 -3
- package/lib-esm/Providers/AWSLexProviderHelper/convert.js +0 -11
- package/lib-esm/Providers/AWSLexProviderHelper/convert.js.map +0 -1
- package/lib-esm/Providers/AWSLexProviderHelper/convert.native.d.ts +0 -1
- package/lib-esm/Providers/AWSLexProviderHelper/convert.native.js +0 -54
- package/lib-esm/Providers/AWSLexProviderHelper/convert.native.js.map +0 -1
- package/src/Providers/AWSLexProviderHelper/convert.native.ts +0 -13
- package/src/Providers/AWSLexProviderHelper/convert.ts +0 -12
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AWSLexV2Provider.js","sourceRoot":"","sources":["../../../src/types/Providers/AWSLexV2Provider.ts"],"names":[],"mappings":""}
|
package/lib/types/index.d.ts
CHANGED
|
@@ -7,12 +7,12 @@ export declare class InteractionsClass {
|
|
|
7
7
|
*
|
|
8
8
|
* @param {InteractionsOptions} options - Configuration object for Interactions
|
|
9
9
|
*/
|
|
10
|
-
constructor(options
|
|
10
|
+
constructor(options?: InteractionsOptions);
|
|
11
11
|
getModuleName(): string;
|
|
12
12
|
/**
|
|
13
13
|
*
|
|
14
14
|
* @param {InteractionsOptions} options - Configuration object for Interactions
|
|
15
|
-
* @return {
|
|
15
|
+
* @return {InteractionsOptions} - The current configuration
|
|
16
16
|
*/
|
|
17
17
|
configure(options: InteractionsOptions): InteractionsOptions;
|
|
18
18
|
addPluggable(pluggable: InteractionsProvider): void;
|
package/lib-esm/Interactions.js
CHANGED
|
@@ -1,50 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
__assign = Object.assign || function(t) {
|
|
3
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
-
s = arguments[i];
|
|
5
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
-
t[p] = s[p];
|
|
7
|
-
}
|
|
8
|
-
return t;
|
|
9
|
-
};
|
|
10
|
-
return __assign.apply(this, arguments);
|
|
11
|
-
};
|
|
12
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
13
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
14
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
15
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
16
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
17
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
18
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
19
|
-
});
|
|
20
|
-
};
|
|
21
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
22
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
23
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
24
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
25
|
-
function step(op) {
|
|
26
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
27
|
-
while (_) try {
|
|
28
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
29
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
30
|
-
switch (op[0]) {
|
|
31
|
-
case 0: case 1: t = op; break;
|
|
32
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
33
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
34
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
35
|
-
default:
|
|
36
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
37
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
38
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
39
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
40
|
-
if (t[2]) _.ops.pop();
|
|
41
|
-
_.trys.pop(); continue;
|
|
42
|
-
}
|
|
43
|
-
op = body.call(thisArg, _);
|
|
44
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
45
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
46
|
-
}
|
|
47
|
-
};
|
|
1
|
+
import { __assign, __awaiter, __generator } from "tslib";
|
|
48
2
|
import { Amplify, ConsoleLogger as Logger } from '@aws-amplify/core';
|
|
49
3
|
import { AWSLexProvider } from './Providers';
|
|
50
4
|
var logger = new Logger('Interactions');
|
|
@@ -55,6 +9,7 @@ var InteractionsClass = /** @class */ (function () {
|
|
|
55
9
|
* @param {InteractionsOptions} options - Configuration object for Interactions
|
|
56
10
|
*/
|
|
57
11
|
function InteractionsClass(options) {
|
|
12
|
+
if (options === void 0) { options = {}; }
|
|
58
13
|
this._options = options;
|
|
59
14
|
logger.debug('Interactions Options', this._options);
|
|
60
15
|
this._pluggables = {};
|
|
@@ -65,7 +20,7 @@ var InteractionsClass = /** @class */ (function () {
|
|
|
65
20
|
/**
|
|
66
21
|
*
|
|
67
22
|
* @param {InteractionsOptions} options - Configuration object for Interactions
|
|
68
|
-
* @return {
|
|
23
|
+
* @return {InteractionsOptions} - The current configuration
|
|
69
24
|
*/
|
|
70
25
|
InteractionsClass.prototype.configure = function (options) {
|
|
71
26
|
var _this = this;
|
|
@@ -82,28 +37,46 @@ var InteractionsClass = /** @class */ (function () {
|
|
|
82
37
|
});
|
|
83
38
|
}
|
|
84
39
|
}
|
|
85
|
-
//
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
40
|
+
// configure bots to their specific providers
|
|
41
|
+
Object.keys(bots_config).forEach(function (botKey) {
|
|
42
|
+
var _a;
|
|
43
|
+
var bot = bots_config[botKey];
|
|
44
|
+
var providerName = bot.providerName || 'AWSLexProvider';
|
|
45
|
+
// add default provider if required
|
|
46
|
+
if (!_this._pluggables.AWSLexProvider &&
|
|
47
|
+
providerName === 'AWSLexProvider') {
|
|
48
|
+
_this._pluggables.AWSLexProvider = new AWSLexProvider();
|
|
49
|
+
}
|
|
50
|
+
// configure bot with it's respective provider
|
|
51
|
+
if (_this._pluggables[providerName]) {
|
|
52
|
+
_this._pluggables[providerName].configure((_a = {}, _a[bot.name] = bot, _a));
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
logger.debug("bot " + bot.name + " was not configured as " + providerName + " provider was not found");
|
|
56
|
+
}
|
|
95
57
|
});
|
|
96
58
|
return this._options;
|
|
97
59
|
};
|
|
98
60
|
InteractionsClass.prototype.addPluggable = function (pluggable) {
|
|
61
|
+
var _this = this;
|
|
99
62
|
if (pluggable && pluggable.getCategory() === 'Interactions') {
|
|
100
63
|
if (!this._pluggables[pluggable.getProviderName()]) {
|
|
101
|
-
|
|
64
|
+
// configure bots for the new plugin
|
|
65
|
+
Object.keys(this._options.bots)
|
|
66
|
+
.filter(function (botKey) {
|
|
67
|
+
return _this._options.bots[botKey].providerName ===
|
|
68
|
+
pluggable.getProviderName();
|
|
69
|
+
})
|
|
70
|
+
.forEach(function (botKey) {
|
|
71
|
+
var _a;
|
|
72
|
+
var bot = _this._options.bots[botKey];
|
|
73
|
+
pluggable.configure((_a = {}, _a[bot.name] = bot, _a));
|
|
74
|
+
});
|
|
102
75
|
this._pluggables[pluggable.getProviderName()] = pluggable;
|
|
103
76
|
return;
|
|
104
77
|
}
|
|
105
78
|
else {
|
|
106
|
-
throw new Error('
|
|
79
|
+
throw new Error('Pluggable ' + pluggable.getProviderName() + ' already plugged');
|
|
107
80
|
}
|
|
108
81
|
}
|
|
109
82
|
};
|
|
@@ -114,13 +87,13 @@ var InteractionsClass = /** @class */ (function () {
|
|
|
114
87
|
switch (_a.label) {
|
|
115
88
|
case 0:
|
|
116
89
|
if (!this._options.bots || !this._options.bots[botname]) {
|
|
117
|
-
|
|
90
|
+
return [2 /*return*/, Promise.reject('Bot ' + botname + ' does not exist')];
|
|
118
91
|
}
|
|
119
92
|
botProvider = this._options.bots[botname].providerName || 'AWSLexProvider';
|
|
120
93
|
if (!this._pluggables[botProvider]) {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
94
|
+
return [2 /*return*/, Promise.reject('Bot ' +
|
|
95
|
+
botProvider +
|
|
96
|
+
' does not have valid pluggin did you try addPluggable first?')];
|
|
124
97
|
}
|
|
125
98
|
return [4 /*yield*/, this._pluggables[botProvider].sendMessage(botname, message)];
|
|
126
99
|
case 1: return [2 /*return*/, _a.sent()];
|
|
@@ -143,6 +116,6 @@ var InteractionsClass = /** @class */ (function () {
|
|
|
143
116
|
return InteractionsClass;
|
|
144
117
|
}());
|
|
145
118
|
export { InteractionsClass };
|
|
146
|
-
export var Interactions = new InteractionsClass(
|
|
119
|
+
export var Interactions = new InteractionsClass();
|
|
147
120
|
Amplify.register(Interactions);
|
|
148
121
|
//# sourceMappingURL=Interactions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Interactions.js","sourceRoot":"","sources":["../src/Interactions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Interactions.js","sourceRoot":"","sources":["../src/Interactions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,24 @@
|
|
|
1
1
|
import { AbstractInteractionsProvider } from './InteractionsProvider';
|
|
2
|
-
import { InteractionsOptions, InteractionsResponse, InteractionsMessage } from '../types';
|
|
2
|
+
import { InteractionsOptions, AWSLexProviderOptions, InteractionsResponse, InteractionsMessage } from '../types';
|
|
3
|
+
import { PostTextCommandOutput, PostContentCommandOutput } from '@aws-sdk/client-lex-runtime-service';
|
|
4
|
+
interface PostContentCommandOutputFormatted extends Omit<PostContentCommandOutput, 'audioStream'> {
|
|
5
|
+
audioStream?: Uint8Array;
|
|
6
|
+
}
|
|
7
|
+
declare type AWSLexProviderSendResponse = PostTextCommandOutput | PostContentCommandOutputFormatted;
|
|
3
8
|
export declare class AWSLexProvider extends AbstractInteractionsProvider {
|
|
4
9
|
private lexRuntimeServiceClient;
|
|
5
10
|
private _botsCompleteCallback;
|
|
6
11
|
constructor(options?: InteractionsOptions);
|
|
7
12
|
getProviderName(): string;
|
|
8
|
-
|
|
13
|
+
configure(config?: AWSLexProviderOptions): AWSLexProviderOptions;
|
|
14
|
+
/**
|
|
15
|
+
* @private
|
|
16
|
+
* @deprecated
|
|
17
|
+
* This is used internally by 'sendMessage' to call onComplete callback
|
|
18
|
+
* for a bot if configured
|
|
19
|
+
*/
|
|
20
|
+
reportBotStatus(data: AWSLexProviderSendResponse, botname: string): void;
|
|
9
21
|
sendMessage(botname: string, message: string | InteractionsMessage): Promise<InteractionsResponse>;
|
|
10
|
-
onComplete(botname: string, callback: any): void;
|
|
22
|
+
onComplete(botname: string, callback: (err: any, confirmation: any) => void): void;
|
|
11
23
|
}
|
|
24
|
+
export {};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { __assign, __awaiter, __extends, __generator } from "tslib";
|
|
1
2
|
/*
|
|
2
3
|
* Copyright 2017-2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
4
|
*
|
|
@@ -10,70 +11,10 @@
|
|
|
10
11
|
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
|
|
11
12
|
* and limitations under the License.
|
|
12
13
|
*/
|
|
13
|
-
var __extends = (this && this.__extends) || (function () {
|
|
14
|
-
var extendStatics = function (d, b) {
|
|
15
|
-
extendStatics = Object.setPrototypeOf ||
|
|
16
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
17
|
-
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
|
18
|
-
return extendStatics(d, b);
|
|
19
|
-
};
|
|
20
|
-
return function (d, b) {
|
|
21
|
-
extendStatics(d, b);
|
|
22
|
-
function __() { this.constructor = d; }
|
|
23
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
24
|
-
};
|
|
25
|
-
})();
|
|
26
|
-
var __assign = (this && this.__assign) || function () {
|
|
27
|
-
__assign = Object.assign || function(t) {
|
|
28
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
29
|
-
s = arguments[i];
|
|
30
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
31
|
-
t[p] = s[p];
|
|
32
|
-
}
|
|
33
|
-
return t;
|
|
34
|
-
};
|
|
35
|
-
return __assign.apply(this, arguments);
|
|
36
|
-
};
|
|
37
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
38
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
39
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
40
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
41
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
42
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
43
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
44
|
-
});
|
|
45
|
-
};
|
|
46
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
47
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
48
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
49
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
50
|
-
function step(op) {
|
|
51
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
52
|
-
while (_) try {
|
|
53
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
54
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
55
|
-
switch (op[0]) {
|
|
56
|
-
case 0: case 1: t = op; break;
|
|
57
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
58
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
59
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
60
|
-
default:
|
|
61
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
62
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
63
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
64
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
65
|
-
if (t[2]) _.ops.pop();
|
|
66
|
-
_.trys.pop(); continue;
|
|
67
|
-
}
|
|
68
|
-
op = body.call(thisArg, _);
|
|
69
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
70
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
14
|
import { AbstractInteractionsProvider } from './InteractionsProvider';
|
|
74
15
|
import { LexRuntimeServiceClient, PostTextCommand, PostContentCommand, } from '@aws-sdk/client-lex-runtime-service';
|
|
75
16
|
import { ConsoleLogger as Logger, Credentials, getAmplifyUserAgent, } from '@aws-amplify/core';
|
|
76
|
-
import { convert } from './AWSLexProviderHelper/
|
|
17
|
+
import { convert } from './AWSLexProviderHelper/utils';
|
|
77
18
|
var logger = new Logger('AWSLexProvider');
|
|
78
19
|
var AWSLexProvider = /** @class */ (function (_super) {
|
|
79
20
|
__extends(AWSLexProvider, _super);
|
|
@@ -86,6 +27,24 @@ var AWSLexProvider = /** @class */ (function (_super) {
|
|
|
86
27
|
AWSLexProvider.prototype.getProviderName = function () {
|
|
87
28
|
return 'AWSLexProvider';
|
|
88
29
|
};
|
|
30
|
+
AWSLexProvider.prototype.configure = function (config) {
|
|
31
|
+
if (config === void 0) { config = {}; }
|
|
32
|
+
var propertiesToTest = ['name', 'alias', 'region'];
|
|
33
|
+
Object.keys(config).forEach(function (botKey) {
|
|
34
|
+
var botConfig = config[botKey];
|
|
35
|
+
// is bot config correct
|
|
36
|
+
if (!propertiesToTest.every(function (x) { return x in botConfig; })) {
|
|
37
|
+
throw new Error('invalid bot configuration');
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
return _super.prototype.configure.call(this, config);
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* @private
|
|
44
|
+
* @deprecated
|
|
45
|
+
* This is used internally by 'sendMessage' to call onComplete callback
|
|
46
|
+
* for a bot if configured
|
|
47
|
+
*/
|
|
89
48
|
AWSLexProvider.prototype.reportBotStatus = function (data, botname) {
|
|
90
49
|
var _this = this;
|
|
91
50
|
// Check if state is fulfilled to resolve onFullfilment promise
|
|
@@ -93,13 +52,11 @@ var AWSLexProvider = /** @class */ (function (_super) {
|
|
|
93
52
|
if (data.dialogState === 'ReadyForFulfillment' ||
|
|
94
53
|
data.dialogState === 'Fulfilled') {
|
|
95
54
|
if (typeof this._botsCompleteCallback[botname] === 'function') {
|
|
96
|
-
setTimeout(function () {
|
|
97
|
-
return _this._botsCompleteCallback[botname](null, { slots: data.slots });
|
|
98
|
-
}, 0);
|
|
55
|
+
setTimeout(function () { return _this._botsCompleteCallback[botname](null, data); }, 0);
|
|
99
56
|
}
|
|
100
57
|
if (this._config &&
|
|
101
58
|
typeof this._config[botname].onComplete === 'function') {
|
|
102
|
-
setTimeout(function () { return _this._config[botname].onComplete(null,
|
|
59
|
+
setTimeout(function () { return _this._config[botname].onComplete(null, data); }, 0);
|
|
103
60
|
}
|
|
104
61
|
}
|
|
105
62
|
if (data.dialogState === 'Failed') {
|
|
@@ -114,25 +71,31 @@ var AWSLexProvider = /** @class */ (function (_super) {
|
|
|
114
71
|
};
|
|
115
72
|
AWSLexProvider.prototype.sendMessage = function (botname, message) {
|
|
116
73
|
return __awaiter(this, void 0, void 0, function () {
|
|
117
|
-
var credentials, params, postTextCommand, data, err_1, content, messageType, postContentCommand, data, audioArray, err_2;
|
|
118
|
-
return __generator(this, function (
|
|
119
|
-
switch (
|
|
74
|
+
var credentials, error_1, params, postTextCommand, data, err_1, content, messageType, inputStream, _a, postContentCommand, data, audioArray, _b, response, err_2;
|
|
75
|
+
return __generator(this, function (_c) {
|
|
76
|
+
switch (_c.label) {
|
|
120
77
|
case 0:
|
|
78
|
+
// check if bot exists
|
|
121
79
|
if (!this._config[botname]) {
|
|
122
80
|
return [2 /*return*/, Promise.reject('Bot ' + botname + ' does not exist')];
|
|
123
81
|
}
|
|
124
|
-
|
|
82
|
+
_c.label = 1;
|
|
125
83
|
case 1:
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
84
|
+
_c.trys.push([1, 3, , 4]);
|
|
85
|
+
return [4 /*yield*/, Credentials.get()];
|
|
86
|
+
case 2:
|
|
87
|
+
credentials = _c.sent();
|
|
88
|
+
return [3 /*break*/, 4];
|
|
89
|
+
case 3:
|
|
90
|
+
error_1 = _c.sent();
|
|
91
|
+
return [2 /*return*/, Promise.reject('No credentials')];
|
|
92
|
+
case 4:
|
|
130
93
|
this.lexRuntimeServiceClient = new LexRuntimeServiceClient({
|
|
131
94
|
region: this._config[botname].region,
|
|
132
95
|
credentials: credentials,
|
|
133
96
|
customUserAgent: getAmplifyUserAgent(),
|
|
134
97
|
});
|
|
135
|
-
if (!(typeof message === 'string')) return [3 /*break*/,
|
|
98
|
+
if (!(typeof message === 'string')) return [3 /*break*/, 9];
|
|
136
99
|
params = {
|
|
137
100
|
botAlias: this._config[botname].alias,
|
|
138
101
|
botName: botname,
|
|
@@ -140,65 +103,89 @@ var AWSLexProvider = /** @class */ (function (_super) {
|
|
|
140
103
|
userId: credentials.identityId,
|
|
141
104
|
};
|
|
142
105
|
logger.debug('postText to lex', message);
|
|
143
|
-
|
|
144
|
-
case
|
|
145
|
-
|
|
106
|
+
_c.label = 5;
|
|
107
|
+
case 5:
|
|
108
|
+
_c.trys.push([5, 7, , 8]);
|
|
146
109
|
postTextCommand = new PostTextCommand(params);
|
|
147
110
|
return [4 /*yield*/, this.lexRuntimeServiceClient.send(postTextCommand)];
|
|
148
|
-
case
|
|
149
|
-
data =
|
|
111
|
+
case 6:
|
|
112
|
+
data = _c.sent();
|
|
150
113
|
this.reportBotStatus(data, botname);
|
|
151
114
|
return [2 /*return*/, data];
|
|
152
|
-
case
|
|
153
|
-
err_1 =
|
|
115
|
+
case 7:
|
|
116
|
+
err_1 = _c.sent();
|
|
154
117
|
return [2 /*return*/, Promise.reject(err_1)];
|
|
155
|
-
case
|
|
156
|
-
case
|
|
118
|
+
case 8: return [3 /*break*/, 21];
|
|
119
|
+
case 9:
|
|
157
120
|
content = message.content, messageType = message.options.messageType;
|
|
158
|
-
if (messageType === 'voice')
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
botName: botname,
|
|
162
|
-
contentType: 'audio/x-l16; sample-rate=16000',
|
|
163
|
-
inputStream: content,
|
|
164
|
-
userId: credentials.identityId,
|
|
165
|
-
accept: 'audio/mpeg',
|
|
166
|
-
};
|
|
167
|
-
}
|
|
168
|
-
else {
|
|
169
|
-
params = {
|
|
170
|
-
botAlias: this._config[botname].alias,
|
|
171
|
-
botName: botname,
|
|
172
|
-
contentType: 'text/plain; charset=utf-8',
|
|
173
|
-
inputStream: content,
|
|
174
|
-
userId: credentials.identityId,
|
|
175
|
-
accept: 'audio/mpeg',
|
|
176
|
-
};
|
|
121
|
+
if (!(messageType === 'voice')) return [3 /*break*/, 13];
|
|
122
|
+
if (typeof content !== 'object') {
|
|
123
|
+
return [2 /*return*/, Promise.reject('invalid content type')];
|
|
177
124
|
}
|
|
125
|
+
if (!(content instanceof Uint8Array)) return [3 /*break*/, 10];
|
|
126
|
+
_a = content;
|
|
127
|
+
return [3 /*break*/, 12];
|
|
128
|
+
case 10: return [4 /*yield*/, convert(content)];
|
|
129
|
+
case 11:
|
|
130
|
+
_a = _c.sent();
|
|
131
|
+
_c.label = 12;
|
|
132
|
+
case 12:
|
|
133
|
+
inputStream = _a;
|
|
134
|
+
params = {
|
|
135
|
+
botAlias: this._config[botname].alias,
|
|
136
|
+
botName: botname,
|
|
137
|
+
contentType: 'audio/x-l16; sample-rate=16000; channel-count=1',
|
|
138
|
+
userId: credentials.identityId,
|
|
139
|
+
accept: 'audio/mpeg',
|
|
140
|
+
inputStream: inputStream,
|
|
141
|
+
};
|
|
142
|
+
return [3 /*break*/, 14];
|
|
143
|
+
case 13:
|
|
144
|
+
if (typeof content !== 'string')
|
|
145
|
+
return [2 /*return*/, Promise.reject('invalid content type')];
|
|
146
|
+
params = {
|
|
147
|
+
botAlias: this._config[botname].alias,
|
|
148
|
+
botName: botname,
|
|
149
|
+
contentType: 'text/plain; charset=utf-8',
|
|
150
|
+
inputStream: content,
|
|
151
|
+
userId: credentials.identityId,
|
|
152
|
+
accept: 'audio/mpeg',
|
|
153
|
+
};
|
|
154
|
+
_c.label = 14;
|
|
155
|
+
case 14:
|
|
178
156
|
logger.debug('postContent to lex', message);
|
|
179
|
-
|
|
180
|
-
case
|
|
181
|
-
|
|
157
|
+
_c.label = 15;
|
|
158
|
+
case 15:
|
|
159
|
+
_c.trys.push([15, 20, , 21]);
|
|
182
160
|
postContentCommand = new PostContentCommand(params);
|
|
183
161
|
return [4 /*yield*/, this.lexRuntimeServiceClient.send(postContentCommand)];
|
|
184
|
-
case
|
|
185
|
-
data =
|
|
162
|
+
case 16:
|
|
163
|
+
data = _c.sent();
|
|
164
|
+
if (!data.audioStream) return [3 /*break*/, 18];
|
|
186
165
|
return [4 /*yield*/, convert(data.audioStream)];
|
|
187
|
-
case
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
166
|
+
case 17:
|
|
167
|
+
_b = _c.sent();
|
|
168
|
+
return [3 /*break*/, 19];
|
|
169
|
+
case 18:
|
|
170
|
+
_b = undefined;
|
|
171
|
+
_c.label = 19;
|
|
172
|
+
case 19:
|
|
173
|
+
audioArray = _b;
|
|
174
|
+
response = __assign(__assign({}, data), { audioStream: audioArray });
|
|
175
|
+
this.reportBotStatus(response, botname);
|
|
176
|
+
return [2 /*return*/, response];
|
|
177
|
+
case 20:
|
|
178
|
+
err_2 = _c.sent();
|
|
193
179
|
return [2 /*return*/, Promise.reject(err_2)];
|
|
194
|
-
case
|
|
180
|
+
case 21: return [2 /*return*/];
|
|
195
181
|
}
|
|
196
182
|
});
|
|
197
183
|
});
|
|
198
184
|
};
|
|
199
185
|
AWSLexProvider.prototype.onComplete = function (botname, callback) {
|
|
186
|
+
// does bot exist
|
|
200
187
|
if (!this._config[botname]) {
|
|
201
|
-
throw new
|
|
188
|
+
throw new Error('Bot ' + botname + ' does not exist');
|
|
202
189
|
}
|
|
203
190
|
this._botsCompleteCallback[botname] = callback;
|
|
204
191
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AWSLexProvider.js","sourceRoot":"","sources":["../../src/Providers/AWSLexProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG
|
|
1
|
+
{"version":3,"file":"AWSLexProvider.js","sourceRoot":"","sources":["../../src/Providers/AWSLexProvider.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AAOtE,OAAO,EACN,uBAAuB,EACvB,eAAe,EAGf,kBAAkB,GAGlB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACN,aAAa,IAAI,MAAM,EACvB,WAAW,EACX,mBAAmB,GACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAEvD,IAAM,MAAM,GAAG,IAAI,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAW5C;IAAoC,kCAA4B;IAI/D,wBAAY,OAAiC;QAAjC,wBAAA,EAAA,YAAiC;QAA7C,YACC,kBAAM,OAAO,CAAC,SAEd;QADA,KAAI,CAAC,qBAAqB,GAAG,EAAE,CAAC;;IACjC,CAAC;IAED,wCAAe,GAAf;QACC,OAAO,gBAAgB,CAAC;IACzB,CAAC;IAED,kCAAS,GAAT,UAAU,MAAkC;QAAlC,uBAAA,EAAA,WAAkC;QAC3C,IAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAErD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAA,MAAM;YACjC,IAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YAEjC,wBAAwB;YACxB,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,IAAI,SAAS,EAAd,CAAc,CAAC,EAAE;gBACjD,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;aAC7C;QACF,CAAC,CAAC,CAAC;QACH,OAAO,iBAAM,SAAS,YAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,wCAAe,GAAf,UAAgB,IAAgC,EAAE,OAAe;QAAjE,iBAqCC;QApCA,+DAA+D;QAC/D,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACpD,IACC,IAAI,CAAC,WAAW,KAAK,qBAAqB;YAC1C,IAAI,CAAC,WAAW,KAAK,WAAW,EAC/B;YACD,IAAI,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,UAAU,EAAE;gBAC9D,UAAU,CAAC,cAAM,OAAA,KAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAA/C,CAA+C,EAAE,CAAC,CAAC,CAAC;aACrE;YAED,IACC,IAAI,CAAC,OAAO;gBACZ,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,KAAK,UAAU,EACrD;gBACD,UAAU,CAAC,cAAM,OAAA,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,EAA5C,CAA4C,EAAE,CAAC,CAAC,CAAC;aAClE;SACD;QAED,IAAI,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE;YAClC,IAAI,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,UAAU,EAAE;gBAC9D,UAAU,CACT,cAAM,OAAA,KAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,yBAAyB,CAAC,EAA9D,CAA8D,EACpE,CAAC,CACD,CAAC;aACF;YAED,IACC,IAAI,CAAC,OAAO;gBACZ,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,KAAK,UAAU,EACrD;gBACD,UAAU,CACT,cAAM,OAAA,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAA3D,CAA2D,EACjE,CAAC,CACD,CAAC;aACF;SACD;IACF,CAAC;IAEK,oCAAW,GAAjB,UACC,OAAe,EACf,OAAqC;;;;;;wBAErC,sBAAsB;wBACtB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;4BAC3B,sBAAO,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,iBAAiB,CAAC,EAAC;yBAC5D;;;;wBAKc,qBAAM,WAAW,CAAC,GAAG,EAAE,EAAA;;wBAArC,WAAW,GAAG,SAAuB,CAAC;;;;wBAEtC,sBAAO,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAC;;wBAGzC,IAAI,CAAC,uBAAuB,GAAG,IAAI,uBAAuB,CAAC;4BAC1D,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM;4BACpC,WAAW,aAAA;4BACX,eAAe,EAAE,mBAAmB,EAAE;yBACtC,CAAC,CAAC;6BAGC,CAAA,OAAO,OAAO,KAAK,QAAQ,CAAA,EAA3B,wBAA2B;wBAC9B,MAAM,GAAG;4BACR,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK;4BACrC,OAAO,EAAE,OAAO;4BAChB,SAAS,EAAE,OAAO;4BAClB,MAAM,EAAE,WAAW,CAAC,UAAU;yBAC9B,CAAC;wBAEF,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;;;;wBAElC,eAAe,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;wBACvC,qBAAM,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,eAAe,CAAC,EAAA;;wBAA/D,IAAI,GAAG,SAAwD;wBAErE,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;wBACpC,sBAAO,IAAI,EAAC;;;wBAEZ,sBAAO,OAAO,CAAC,MAAM,CAAC,KAAG,CAAC,EAAC;;;wBAI3B,OAAO,GAEJ,OAAO,QAFH,EACI,WAAW,GACnB,OAAO,oBADY,CACX;6BACR,CAAA,WAAW,KAAK,OAAO,CAAA,EAAvB,yBAAuB;wBAC1B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;4BAChC,sBAAO,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,EAAC;yBAC9C;6BAEA,CAAA,OAAO,YAAY,UAAU,CAAA,EAA7B,yBAA6B;wBAAG,KAAA,OAAO,CAAA;;6BAAG,qBAAM,OAAO,CAAC,OAAO,CAAC,EAAA;;wBAAtB,KAAA,SAAsB,CAAA;;;wBAD3D,WAAW,KACgD;wBAEjE,MAAM,GAAG;4BACR,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK;4BACrC,OAAO,EAAE,OAAO;4BAChB,WAAW,EAAE,iDAAiD;4BAC9D,MAAM,EAAE,WAAW,CAAC,UAAU;4BAC9B,MAAM,EAAE,YAAY;4BACpB,WAAW,aAAA;yBACX,CAAC;;;wBAEF,IAAI,OAAO,OAAO,KAAK,QAAQ;4BAC9B,sBAAO,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,EAAC;wBAE/C,MAAM,GAAG;4BACR,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK;4BACrC,OAAO,EAAE,OAAO;4BAChB,WAAW,EAAE,2BAA2B;4BACxC,WAAW,EAAE,OAAO;4BACpB,MAAM,EAAE,WAAW,CAAC,UAAU;4BAC9B,MAAM,EAAE,YAAY;yBACpB,CAAC;;;wBAEH,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;;;;wBAErC,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC;wBAC7C,qBAAM,IAAI,CAAC,uBAAuB,CAAC,IAAI,CACnD,kBAAkB,CAClB,EAAA;;wBAFK,IAAI,GAAG,SAEZ;6BAEkB,IAAI,CAAC,WAAW,EAAhB,yBAAgB;wBAChC,qBAAM,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAA;;wBAA/B,KAAA,SAA+B,CAAA;;;wBAC/B,KAAA,SAAS,CAAA;;;wBAFN,UAAU,KAEJ;wBAEN,QAAQ,yBAAQ,IAAI,GAAK,EAAE,WAAW,EAAE,UAAU,EAAE,CAAE,CAAC;wBAE7D,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;wBACxC,sBAAO,QAAQ,EAAC;;;wBAEhB,sBAAO,OAAO,CAAC,MAAM,CAAC,KAAG,CAAC,EAAC;;;;;KAG7B;IAED,mCAAU,GAAV,UAAW,OAAe,EAAE,QAAqC;QAChE,iBAAiB;QACjB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,MAAM,GAAG,OAAO,GAAG,iBAAiB,CAAC,CAAC;SACtD;QACD,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC;IAChD,CAAC;IACF,qBAAC;AAAD,CAAC,AA/KD,CAAoC,4BAA4B,GA+K/D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const unGzipBase64AsJson: (gzipBase64: string) => Promise<any>;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { __awaiter, __generator } from "tslib";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2017-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
|
|
6
|
+
* the License. A copy of the License is located at
|
|
7
|
+
*
|
|
8
|
+
* http://aws.amazon.com/apache2.0/
|
|
9
|
+
*
|
|
10
|
+
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
|
11
|
+
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
|
|
12
|
+
* and limitations under the License.
|
|
13
|
+
*/
|
|
14
|
+
import { base64ToArrayBuffer, gzipDecompressToString } from './utils';
|
|
15
|
+
export var unGzipBase64AsJson = function (gzipBase64) { return __awaiter(void 0, void 0, void 0, function () {
|
|
16
|
+
var decodedArrayBuffer, objString, error_1;
|
|
17
|
+
return __generator(this, function (_a) {
|
|
18
|
+
switch (_a.label) {
|
|
19
|
+
case 0:
|
|
20
|
+
if (typeof gzipBase64 === 'undefined')
|
|
21
|
+
return [2 /*return*/, undefined];
|
|
22
|
+
_a.label = 1;
|
|
23
|
+
case 1:
|
|
24
|
+
_a.trys.push([1, 3, , 4]);
|
|
25
|
+
decodedArrayBuffer = base64ToArrayBuffer(gzipBase64);
|
|
26
|
+
return [4 /*yield*/, gzipDecompressToString(decodedArrayBuffer)];
|
|
27
|
+
case 2:
|
|
28
|
+
objString = _a.sent();
|
|
29
|
+
return [2 /*return*/, JSON.parse(objString)];
|
|
30
|
+
case 3:
|
|
31
|
+
error_1 = _a.sent();
|
|
32
|
+
return [2 /*return*/, Promise.reject('unable to decode and decompress ' + error_1)];
|
|
33
|
+
case 4: return [2 /*return*/];
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
}); };
|
|
37
|
+
//# sourceMappingURL=commonUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commonUtils.js","sourceRoot":"","sources":["../../../src/Providers/AWSLexProviderHelper/commonUtils.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtE,MAAM,CAAC,IAAM,kBAAkB,GAAG,UAAO,UAA8B;;;;;gBACtE,IAAI,OAAO,UAAU,KAAK,WAAW;oBAAE,sBAAO,SAAS,EAAC;;;;gBAGjD,kBAAkB,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;gBAEjC,qBAAM,sBAAsB,CAAC,kBAAkB,CAAC,EAAA;;gBAApE,SAAS,GAAW,SAAgD;gBAE1E,sBAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAC;;;gBAE7B,sBAAO,OAAO,CAAC,MAAM,CAAC,kCAAkC,GAAG,OAAK,CAAC,EAAC;;;;KAEnE,CAAC"}
|