chatbot-nc 2.0.83 → 2.0.85

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 (187) hide show
  1. package/dist/cjs/aws/index.d.ts +179 -0
  2. package/dist/cjs/aws/index.js +52 -0
  3. package/dist/cjs/aws/index.js.map +1 -0
  4. package/dist/cjs/aws/services/AESEncryptionUsingKMS.d.ts +4 -0
  5. package/dist/cjs/aws/services/AESEncryptionUsingKMS.js +101 -0
  6. package/dist/cjs/aws/services/AESEncryptionUsingKMS.js.map +1 -0
  7. package/dist/cjs/aws/services/AWSChimeMeeting.d.ts +8 -0
  8. package/dist/cjs/aws/services/AWSChimeMeeting.js +99 -0
  9. package/dist/cjs/aws/services/AWSChimeMeeting.js.map +1 -0
  10. package/dist/cjs/aws/services/AWSCodepipeline.d.ts +16 -0
  11. package/dist/cjs/aws/services/AWSCodepipeline.js +43 -0
  12. package/dist/cjs/aws/services/AWSCodepipeline.js.map +1 -0
  13. package/dist/cjs/aws/services/AWSComprehend.d.ts +3 -0
  14. package/dist/cjs/aws/services/AWSComprehend.js +30 -0
  15. package/dist/cjs/aws/services/AWSComprehend.js.map +1 -0
  16. package/dist/cjs/aws/services/AWSConnect.d.ts +296 -0
  17. package/dist/cjs/aws/services/AWSConnect.js +865 -0
  18. package/dist/cjs/aws/services/AWSConnect.js.map +1 -0
  19. package/dist/cjs/aws/services/AWSConnectCases.d.ts +7 -0
  20. package/dist/cjs/aws/services/AWSConnectCases.js +81 -0
  21. package/dist/cjs/aws/services/AWSConnectCases.js.map +1 -0
  22. package/dist/cjs/aws/services/AWSConnectParticipant.d.ts +7 -0
  23. package/dist/cjs/aws/services/AWSConnectParticipant.js +87 -0
  24. package/dist/cjs/aws/services/AWSConnectParticipant.js.map +1 -0
  25. package/dist/cjs/aws/services/AWSCustomerProfiles.d.ts +5 -0
  26. package/dist/cjs/aws/services/AWSCustomerProfiles.js +45 -0
  27. package/dist/cjs/aws/services/AWSCustomerProfiles.js.map +1 -0
  28. package/dist/cjs/aws/services/AWSDynamoDb.d.ts +6 -0
  29. package/dist/cjs/aws/services/AWSDynamoDb.js +77 -0
  30. package/dist/cjs/aws/services/AWSDynamoDb.js.map +1 -0
  31. package/dist/cjs/aws/services/AWSGateway.d.ts +5 -0
  32. package/dist/cjs/aws/services/AWSGateway.js +45 -0
  33. package/dist/cjs/aws/services/AWSGateway.js.map +1 -0
  34. package/dist/cjs/aws/services/AWSGatewayManagement.d.ts +5 -0
  35. package/dist/cjs/aws/services/AWSGatewayManagement.js +49 -0
  36. package/dist/cjs/aws/services/AWSGatewayManagement.js.map +1 -0
  37. package/dist/cjs/aws/services/AWSLambda.d.ts +3 -0
  38. package/dist/cjs/aws/services/AWSLambda.js +25 -0
  39. package/dist/cjs/aws/services/AWSLambda.js.map +1 -0
  40. package/dist/cjs/aws/services/AWSLexModel.d.ts +24 -0
  41. package/dist/cjs/aws/services/AWSLexModel.js +387 -0
  42. package/dist/cjs/aws/services/AWSLexModel.js.map +1 -0
  43. package/dist/cjs/aws/services/AWSLexRuntime.d.ts +5 -0
  44. package/dist/cjs/aws/services/AWSLexRuntime.js +47 -0
  45. package/dist/cjs/aws/services/AWSLexRuntime.js.map +1 -0
  46. package/dist/cjs/aws/services/AWSPinpoint.d.ts +6 -0
  47. package/dist/cjs/aws/services/AWSPinpoint.js +65 -0
  48. package/dist/cjs/aws/services/AWSPinpoint.js.map +1 -0
  49. package/dist/cjs/aws/services/AWSPinpointSMSVoice.d.ts +9 -0
  50. package/dist/cjs/aws/services/AWSPinpointSMSVoice.js +111 -0
  51. package/dist/cjs/aws/services/AWSPinpointSMSVoice.js.map +1 -0
  52. package/dist/cjs/aws/services/AWSQConnect.d.ts +9 -0
  53. package/dist/cjs/aws/services/AWSQConnect.js +118 -0
  54. package/dist/cjs/aws/services/AWSQConnect.js.map +1 -0
  55. package/dist/cjs/aws/services/AWSS3.d.ts +11 -0
  56. package/dist/cjs/aws/services/AWSS3.js +186 -0
  57. package/dist/cjs/aws/services/AWSS3.js.map +1 -0
  58. package/dist/cjs/aws/services/AWSSES.d.ts +4 -0
  59. package/dist/cjs/aws/services/AWSSES.js +23 -0
  60. package/dist/cjs/aws/services/AWSSES.js.map +1 -0
  61. package/dist/cjs/aws/services/AWSSNS.d.ts +12 -0
  62. package/dist/cjs/aws/services/AWSSNS.js +73 -0
  63. package/dist/cjs/aws/services/AWSSNS.js.map +1 -0
  64. package/dist/cjs/aws/services/AWSSSM.d.ts +4 -0
  65. package/dist/cjs/aws/services/AWSSSM.js +82 -0
  66. package/dist/cjs/aws/services/AWSSSM.js.map +1 -0
  67. package/dist/cjs/aws/services/AWSSTS.d.ts +4 -0
  68. package/dist/cjs/aws/services/AWSSTS.js +28 -0
  69. package/dist/cjs/aws/services/AWSSTS.js.map +1 -0
  70. package/dist/cjs/aws/services/AWSTranslate.d.ts +4 -0
  71. package/dist/cjs/aws/services/AWSTranslate.js +27 -0
  72. package/dist/cjs/aws/services/AWSTranslate.js.map +1 -0
  73. package/dist/cjs/communication/communicationService.d.ts +20 -0
  74. package/dist/cjs/communication/communicationService.js +283 -0
  75. package/dist/cjs/communication/communicationService.js.map +1 -0
  76. package/dist/cjs/communication/index.d.ts +49 -0
  77. package/dist/cjs/communication/index.js +219 -0
  78. package/dist/cjs/communication/index.js.map +1 -0
  79. package/dist/cjs/config/SSMParameters.d.ts +26 -0
  80. package/dist/cjs/config/SSMParameters.js +34 -0
  81. package/dist/cjs/config/SSMParameters.js.map +1 -0
  82. package/dist/cjs/enum/index.d.ts +236 -0
  83. package/dist/cjs/enum/index.js +289 -0
  84. package/dist/cjs/enum/index.js.map +1 -0
  85. package/dist/cjs/hashing/idObfuscation.d.ts +20 -0
  86. package/dist/cjs/hashing/idObfuscation.js +56 -0
  87. package/dist/cjs/hashing/idObfuscation.js.map +1 -0
  88. package/dist/cjs/hashing/index.d.ts +33 -0
  89. package/dist/cjs/hashing/index.js +192 -0
  90. package/dist/cjs/hashing/index.js.map +1 -0
  91. package/dist/cjs/index.d.ts +12 -0
  92. package/dist/cjs/index.js +52 -0
  93. package/dist/cjs/index.js.map +1 -0
  94. package/dist/cjs/logger/index.d.ts +3 -0
  95. package/dist/cjs/logger/index.js +70 -0
  96. package/dist/cjs/logger/index.js.map +1 -0
  97. package/dist/cjs/logger/loggerTransports.d.ts +11 -0
  98. package/dist/cjs/logger/loggerTransports.js +72 -0
  99. package/dist/cjs/logger/loggerTransports.js.map +1 -0
  100. package/dist/cjs/repository/dynamodb.d.ts +121 -0
  101. package/dist/cjs/repository/dynamodb.js +696 -0
  102. package/dist/cjs/repository/dynamodb.js.map +1 -0
  103. package/dist/cjs/shortner/index.d.ts +4 -0
  104. package/dist/cjs/shortner/index.js +34 -0
  105. package/dist/cjs/shortner/index.js.map +1 -0
  106. package/dist/cjs/utils/common.d.ts +7 -0
  107. package/dist/cjs/utils/common.js +199 -0
  108. package/dist/cjs/utils/common.js.map +1 -0
  109. package/dist/cjs/utils/date-format.d.ts +16 -0
  110. package/dist/cjs/utils/date-format.js +282 -0
  111. package/dist/cjs/utils/date-format.js.map +1 -0
  112. package/dist/cjs/utils/index.d.ts +37 -0
  113. package/dist/cjs/utils/index.js +12 -0
  114. package/dist/cjs/utils/index.js.map +1 -0
  115. package/dist/cjs/utils/intent.d.ts +12 -0
  116. package/dist/cjs/utils/intent.js +205 -0
  117. package/dist/cjs/utils/intent.js.map +1 -0
  118. package/dist/cjs/webbookEvent/index.d.ts +22 -0
  119. package/dist/cjs/webbookEvent/index.js +151 -0
  120. package/dist/cjs/webbookEvent/index.js.map +1 -0
  121. package/dist/esm/aws/index.d.ts +1 -0
  122. package/dist/esm/aws/services/AESEncryptionUsingKMS.js +20 -11
  123. package/dist/esm/aws/services/AESEncryptionUsingKMS.js.map +1 -1
  124. package/dist/esm/aws/services/AWSChimeMeeting.js +24 -15
  125. package/dist/esm/aws/services/AWSChimeMeeting.js.map +1 -1
  126. package/dist/esm/aws/services/AWSCodepipeline.js +34 -21
  127. package/dist/esm/aws/services/AWSCodepipeline.js.map +1 -1
  128. package/dist/esm/aws/services/AWSComprehend.js +12 -3
  129. package/dist/esm/aws/services/AWSComprehend.js.map +1 -1
  130. package/dist/esm/aws/services/AWSConnect.js +144 -135
  131. package/dist/esm/aws/services/AWSConnect.js.map +1 -1
  132. package/dist/esm/aws/services/AWSConnectCases.js +21 -12
  133. package/dist/esm/aws/services/AWSConnectCases.js.map +1 -1
  134. package/dist/esm/aws/services/AWSConnectParticipant.js +21 -12
  135. package/dist/esm/aws/services/AWSConnectParticipant.js.map +1 -1
  136. package/dist/esm/aws/services/AWSCustomerProfiles.js +15 -6
  137. package/dist/esm/aws/services/AWSCustomerProfiles.js.map +1 -1
  138. package/dist/esm/aws/services/AWSDynamoDb.js +18 -9
  139. package/dist/esm/aws/services/AWSDynamoDb.js.map +1 -1
  140. package/dist/esm/aws/services/AWSGateway.js +15 -6
  141. package/dist/esm/aws/services/AWSGateway.js.map +1 -1
  142. package/dist/esm/aws/services/AWSGatewayManagement.js +15 -6
  143. package/dist/esm/aws/services/AWSGatewayManagement.js.map +1 -1
  144. package/dist/esm/aws/services/AWSLambda.js +13 -4
  145. package/dist/esm/aws/services/AWSLambda.js.map +1 -1
  146. package/dist/esm/aws/services/AWSLexModel.js +72 -63
  147. package/dist/esm/aws/services/AWSLexModel.js.map +1 -1
  148. package/dist/esm/aws/services/AWSLexRuntime.js +15 -6
  149. package/dist/esm/aws/services/AWSLexRuntime.js.map +1 -1
  150. package/dist/esm/aws/services/AWSPinpoint.js +18 -9
  151. package/dist/esm/aws/services/AWSPinpoint.js.map +1 -1
  152. package/dist/esm/aws/services/AWSPinpointSMSVoice.js +27 -18
  153. package/dist/esm/aws/services/AWSPinpointSMSVoice.js.map +1 -1
  154. package/dist/esm/aws/services/AWSQConnect.js +27 -18
  155. package/dist/esm/aws/services/AWSQConnect.js.map +1 -1
  156. package/dist/esm/aws/services/AWSS3.js +37 -28
  157. package/dist/esm/aws/services/AWSS3.js.map +1 -1
  158. package/dist/esm/aws/services/AWSSES.js +13 -4
  159. package/dist/esm/aws/services/AWSSES.js.map +1 -1
  160. package/dist/esm/aws/services/AWSSNS.js +20 -11
  161. package/dist/esm/aws/services/AWSSNS.js.map +1 -1
  162. package/dist/esm/aws/services/AWSSSM.d.ts +1 -0
  163. package/dist/esm/aws/services/AWSSSM.js +50 -3
  164. package/dist/esm/aws/services/AWSSSM.js.map +1 -1
  165. package/dist/esm/aws/services/AWSSTS.js +12 -3
  166. package/dist/esm/aws/services/AWSSTS.js.map +1 -1
  167. package/dist/esm/aws/services/AWSTranslate.js +12 -3
  168. package/dist/esm/aws/services/AWSTranslate.js.map +1 -1
  169. package/dist/esm/communication/communicationService.js +38 -29
  170. package/dist/esm/communication/communicationService.js.map +1 -1
  171. package/dist/esm/communication/index.js +148 -125
  172. package/dist/esm/communication/index.js.map +1 -1
  173. package/dist/esm/hashing/idObfuscation.js +44 -29
  174. package/dist/esm/hashing/idObfuscation.js.map +1 -1
  175. package/dist/esm/hashing/index.js +168 -141
  176. package/dist/esm/hashing/index.js.map +1 -1
  177. package/dist/esm/repository/dynamodb.js +398 -369
  178. package/dist/esm/repository/dynamodb.js.map +1 -1
  179. package/dist/esm/shortner/index.js +31 -20
  180. package/dist/esm/shortner/index.js.map +1 -1
  181. package/dist/esm/utils/common.js +11 -2
  182. package/dist/esm/utils/common.js.map +1 -1
  183. package/dist/esm/utils/intent.js +33 -24
  184. package/dist/esm/utils/intent.js.map +1 -1
  185. package/dist/esm/webbookEvent/index.js +128 -105
  186. package/dist/esm/webbookEvent/index.js.map +1 -1
  187. package/package.json +5 -4
@@ -0,0 +1,37 @@
1
+ export declare const Utils: {
2
+ Intents: {
3
+ getSessionAttributes: (intentRequest: any) => Promise<any>;
4
+ getSessionAttributeValue: (intentRequest: any, name: string) => Promise<any>;
5
+ getSlots: (intentRequest: any) => Promise<any>;
6
+ getSlotValue: (intentRequest: any, slotName: string) => Promise<any>;
7
+ getConfidenceScore: (intentRequest: any) => Promise<any>;
8
+ getDateSlotValue: (intentRequest: any, slotName: string) => Promise<string>;
9
+ getTimeSlotValue: (intentRequest: any, slotName: string) => Promise<string | null>;
10
+ getProposedSlot: (intentRequest: any) => Promise<any>;
11
+ getRequestAttributes: (intentRequest: any) => Promise<any>;
12
+ getOrginalSlotValue: (intentRequest: any, slotName: string) => Promise<any>;
13
+ };
14
+ Common: {
15
+ parseText: (stringWithPlaceholders: any, replacements: any) => Promise<any>;
16
+ maskData: (text: any) => any;
17
+ groupBy: (array: any, key: any) => any;
18
+ isInputDateTime: (inputDate: any) => boolean;
19
+ isInputDate: (inputDate: any) => boolean;
20
+ };
21
+ DateFormat: {
22
+ getMerchantOffset: (timeZone: string) => string;
23
+ getFromTo: (timeZone: string, durationType: string, from?: string | undefined, to?: string | undefined) => {
24
+ from: number;
25
+ to: number;
26
+ };
27
+ getEndTime: (timeZone?: string) => number;
28
+ getStartTime: (timeZone?: string) => number;
29
+ getMonthforTimeZone: (epochTime: number, type: "long" | "short" | "narrow" | "numeric" | "2-digit", timeZone?: string) => string;
30
+ getDayforTimeZone: (epochTime: number, timeZone?: string) => string;
31
+ getDateforTimeZone: (epochTime: number, timeZone?: string) => string;
32
+ getTimeforTimeZone: (epochTime: number, timeZone?: string) => string;
33
+ getTimeZoneOffset: (timeZone?: string) => number;
34
+ getWeekDayforTimeZone: (epochTime: number, timeZone?: string) => string;
35
+ formatUSDate: (date: Date) => string;
36
+ };
37
+ };
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Utils = void 0;
4
+ const common_1 = require("./common");
5
+ const intent_1 = require("./intent");
6
+ const date_format_1 = require("./date-format");
7
+ exports.Utils = {
8
+ Intents: intent_1.Intents,
9
+ Common: common_1.Common,
10
+ DateFormat: date_format_1.DateFormat
11
+ };
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../utils/index.ts"],"names":[],"mappings":";;;AACA,qCAAkC;AAClC,qCAAmC;AACnC,+CAA2C;AAE9B,QAAA,KAAK,GAAG;IACjB,OAAO,EAAP,gBAAO;IACP,MAAM,EAAN,eAAM;IACN,UAAU,EAAV,wBAAU;CACb,CAAA"}
@@ -0,0 +1,12 @@
1
+ export declare const Intents: {
2
+ getSessionAttributes: (intentRequest: any) => Promise<any>;
3
+ getSessionAttributeValue: (intentRequest: any, name: string) => Promise<any>;
4
+ getSlots: (intentRequest: any) => Promise<any>;
5
+ getSlotValue: (intentRequest: any, slotName: string) => Promise<any>;
6
+ getConfidenceScore: (intentRequest: any) => Promise<any>;
7
+ getDateSlotValue: (intentRequest: any, slotName: string) => Promise<string>;
8
+ getTimeSlotValue: (intentRequest: any, slotName: string) => Promise<string | null>;
9
+ getProposedSlot: (intentRequest: any) => Promise<any>;
10
+ getRequestAttributes: (intentRequest: any) => Promise<any>;
11
+ getOrginalSlotValue: (intentRequest: any, slotName: string) => Promise<any>;
12
+ };
@@ -0,0 +1,205 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Intents = void 0;
4
+ /**
5
+ *
6
+ * @param intentRequest lex event Request
7
+ * @returns list of slots
8
+ */
9
+ const getSlots = async (intentRequest) => {
10
+ try {
11
+ return intentRequest['sessionState']['intent']['slots'];
12
+ }
13
+ catch (error) {
14
+ console.log("Error in Get Slots", error);
15
+ throw error;
16
+ }
17
+ };
18
+ /**
19
+ *
20
+ * @param intentRequest lex event request
21
+ * @param slotName slot name
22
+ * @returns slot resolved value
23
+ */
24
+ const getSlotValue = async (intentRequest, slotName) => {
25
+ try {
26
+ let slots;
27
+ slots = await getSlots(intentRequest);
28
+ if (slots != null && slots[slotName] != null) {
29
+ return slots[slotName]['value']['interpretedValue'] || slots[slotName]['value']['resolvedValues'][0] || null;
30
+ }
31
+ else {
32
+ return null;
33
+ }
34
+ }
35
+ catch (error) {
36
+ console.log("Error in Get Slot Value", error);
37
+ throw error;
38
+ }
39
+ };
40
+ /**
41
+ *
42
+ * @param intentRequest lex event request
43
+ * @param slotName slot name
44
+ * @returns slot original value
45
+ */
46
+ const getOrginalSlotValue = async (intentRequest, slotName) => {
47
+ try {
48
+ let slots;
49
+ slots = await getSlots(intentRequest);
50
+ if (slots != null && slots[slotName] != null) {
51
+ return slots[slotName]['value']['originalValue'] || slots[slotName]['value']['originalValue'] || null;
52
+ }
53
+ else {
54
+ return null;
55
+ }
56
+ }
57
+ catch (error) {
58
+ console.log("Error in Get Slot Value", error);
59
+ throw error;
60
+ }
61
+ };
62
+ /**
63
+ *
64
+ * @param intentRequest lex event
65
+ * @returns session attributes object
66
+ */
67
+ const getSessionAttributes = async (intentRequest) => {
68
+ try {
69
+ if (intentRequest['sessionState']['sessionAttributes'] != null) {
70
+ return intentRequest['sessionState']['sessionAttributes'];
71
+ }
72
+ return {};
73
+ }
74
+ catch (error) {
75
+ console.log("Error in Get Session Attributes", error);
76
+ throw error;
77
+ }
78
+ };
79
+ /**
80
+ *
81
+ * @param intentRequest lex event
82
+ * @param name attribute name
83
+ * @returns session attribute value
84
+ */
85
+ const getSessionAttributeValue = async (intentRequest, name) => {
86
+ try {
87
+ let sessionState;
88
+ sessionState = intentRequest['sessionState'];
89
+ if (sessionState['sessionAttributes'] != null) {
90
+ let sessionAttributeValue = sessionState['sessionAttributes'][name];
91
+ if (sessionAttributeValue)
92
+ return sessionAttributeValue;
93
+ return null;
94
+ }
95
+ return null;
96
+ }
97
+ catch (error) {
98
+ console.log("Error in Get Session Attribute Value", error);
99
+ throw error;
100
+ }
101
+ };
102
+ /**
103
+ *
104
+ * @param intentRequest
105
+ * @param slotName
106
+ * @returns
107
+ */
108
+ const getDateSlotValue = async (intentRequest, slotName) => {
109
+ try {
110
+ let selectDate = null, date = await getSlotValue(intentRequest, slotName);
111
+ let month = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
112
+ try {
113
+ selectDate = month[date.split('-')[1] - 1] + ' ' + date.split('-')[2];
114
+ return selectDate;
115
+ }
116
+ catch (err) {
117
+ return '';
118
+ }
119
+ }
120
+ catch (error) {
121
+ console.log("Error in Get Date Slot Value", error);
122
+ throw error;
123
+ }
124
+ };
125
+ /**
126
+ *
127
+ * @param intentRequest
128
+ * @param slotName
129
+ * @returns
130
+ */
131
+ const getTimeSlotValue = async (intentRequest, slotName) => {
132
+ try {
133
+ let selectTime = null, time = await getSlotValue(intentRequest, slotName);
134
+ try {
135
+ if (Number(time.split(':')[0]) < 12) {
136
+ selectTime = time + ' AM';
137
+ }
138
+ else {
139
+ selectTime = Number(time.split(':')[0]) - 12 + ':' + time.split(':')[1] + ' PM';
140
+ }
141
+ return selectTime !== null ? selectTime : null;
142
+ }
143
+ catch (err) {
144
+ return '';
145
+ }
146
+ }
147
+ catch (error) {
148
+ console.log("Error in Get Date Slot Value", error);
149
+ throw error;
150
+ }
151
+ };
152
+ /**
153
+ *
154
+ * @param intentRequest
155
+ * @returns
156
+ */
157
+ const getProposedSlot = async (intentRequest) => {
158
+ try {
159
+ if (intentRequest.proposedNextState) {
160
+ return intentRequest.proposedNextState.dialogAction.slotToElicit;
161
+ }
162
+ else {
163
+ return null;
164
+ }
165
+ }
166
+ catch (error) {
167
+ console.log("Error in Get Proposed Slot", error);
168
+ throw error;
169
+ }
170
+ };
171
+ /**
172
+ *
173
+ * @param intentRequest
174
+ * @returns
175
+ */
176
+ const getRequestAttributes = async (intentRequest) => {
177
+ try {
178
+ if (intentRequest.requestAttributes) {
179
+ return intentRequest.requestAttributes;
180
+ }
181
+ else {
182
+ return null;
183
+ }
184
+ }
185
+ catch (error) {
186
+ console.log("Error in Get Requested Attributes", error);
187
+ throw error;
188
+ }
189
+ };
190
+ /**
191
+ *
192
+ * @param intentRequest
193
+ * @returns
194
+ */
195
+ const getConfidenceScore = async (intentRequest) => {
196
+ try {
197
+ return intentRequest['interpretations'][0]['nluConfidence'];
198
+ }
199
+ catch (error) {
200
+ console.log("Error in Get Confidence Score", error);
201
+ throw error;
202
+ }
203
+ };
204
+ exports.Intents = { getSessionAttributes, getSessionAttributeValue, getSlots, getSlotValue, getConfidenceScore, getDateSlotValue, getTimeSlotValue, getProposedSlot, getRequestAttributes, getOrginalSlotValue };
205
+ //# sourceMappingURL=intent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intent.js","sourceRoot":"","sources":["../../../utils/intent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { AuthType, ContentType, HttpMethod } from "../enum";
2
+ export default class WebHookEvent {
3
+ constructor();
4
+ /**
5
+ *
6
+ * @param data
7
+ * @param url
8
+ * @param httpMethod
9
+ * @param contentType
10
+ * @param authType
11
+ * @param headers
12
+ * @param authValue
13
+ * @returns
14
+ */
15
+ processResponse(data: object | Array<any>, url: string, httpMethod: HttpMethod, contentType: ContentType, authType: AuthType, headers: string, authValue: string): Promise<import("axios").AxiosResponse<any, any> | undefined>;
16
+ private AttachHeader;
17
+ private AttachClientHeaders;
18
+ private GetApiKey;
19
+ private GetAuthInfo;
20
+ private GetBearerToken;
21
+ private GetContentType;
22
+ }
@@ -0,0 +1,151 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const axios_1 = __importDefault(require("axios"));
7
+ const enum_1 = require("../enum");
8
+ class WebHookEvent {
9
+ constructor() {
10
+ }
11
+ /**
12
+ *
13
+ * @param data
14
+ * @param url
15
+ * @param httpMethod
16
+ * @param contentType
17
+ * @param authType
18
+ * @param headers
19
+ * @param authValue
20
+ * @returns
21
+ */
22
+ async processResponse(data, url, httpMethod, contentType, authType, headers, authValue) {
23
+ try {
24
+ let strContentType = await this.GetContentType(contentType);
25
+ let config = {
26
+ headers: { "Content-Type": strContentType }
27
+ };
28
+ config = await this.AttachHeader(headers, authType, authValue, config);
29
+ let result;
30
+ if (httpMethod == enum_1.HttpMethod.HttpGet) {
31
+ result = await axios_1.default.get(url, config);
32
+ }
33
+ else if (httpMethod == enum_1.HttpMethod.HttpPost) {
34
+ result = await axios_1.default.post(url, data, config);
35
+ }
36
+ else if (httpMethod == enum_1.HttpMethod.HttpPut) {
37
+ result = await axios_1.default.put(url, data, config);
38
+ }
39
+ else if (httpMethod == enum_1.HttpMethod.HttpDelete) {
40
+ result = await axios_1.default.delete(url, config);
41
+ }
42
+ return result;
43
+ }
44
+ catch (error) {
45
+ console.error("Error in Process the Webhook Event");
46
+ console.error(error);
47
+ throw error;
48
+ }
49
+ }
50
+ async AttachHeader(headers, authType, authValue, config) {
51
+ {
52
+ try {
53
+ config = await this.AttachClientHeaders(headers, config);
54
+ switch (authType) {
55
+ case enum_1.AuthType.NoAuth:
56
+ break;
57
+ case enum_1.AuthType.ApiKey:
58
+ var apikeyInfo = await this.GetApiKey(authType, authValue);
59
+ config.headers[apikeyInfo === null || apikeyInfo === void 0 ? void 0 : apikeyInfo.Key] = apikeyInfo === null || apikeyInfo === void 0 ? void 0 : apikeyInfo.Value;
60
+ break;
61
+ case enum_1.AuthType.BearerToken:
62
+ var token = await this.GetBearerToken(authType, authValue);
63
+ config.headers.Authorization = `Bearer ${token}`;
64
+ break;
65
+ case enum_1.AuthType.BasicAuth:
66
+ var authInfo = await this.GetAuthInfo(authType, authValue);
67
+ config.auth.username = authInfo.userName;
68
+ config.auth.password = authInfo.password;
69
+ break;
70
+ }
71
+ return config;
72
+ }
73
+ catch (error) {
74
+ console.error("Error in Attach the Header");
75
+ console.error(error);
76
+ throw error;
77
+ }
78
+ }
79
+ }
80
+ async AttachClientHeaders(headers, config) {
81
+ try {
82
+ let defaultHeader = headers && headers != undefined && headers != null ? JSON.parse(headers) : null;
83
+ if (defaultHeader && defaultHeader.length) {
84
+ defaultHeader.forEach((header) => {
85
+ config.headers[header === null || header === void 0 ? void 0 : header.Key] = header === null || header === void 0 ? void 0 : header.Value;
86
+ });
87
+ }
88
+ return config;
89
+ }
90
+ catch (error) {
91
+ console.error("Error in Attaching the Client Header for Webhook Event");
92
+ console.error(error);
93
+ throw error;
94
+ }
95
+ }
96
+ async GetApiKey(authType, authValue) {
97
+ var provisionList = authValue ? JSON.parse(authValue) : null;
98
+ if (provisionList != null) {
99
+ let Key = provisionList.find((x) => x.Key == 'AuthApiHeader').Value;
100
+ let Value = provisionList.find((x) => x.Key == 'AuthApiValue').Value;
101
+ return { Key, Value };
102
+ }
103
+ return null;
104
+ }
105
+ async GetAuthInfo(authType, authValue) {
106
+ var _a, _b;
107
+ let data = Object.assign({});
108
+ var provisionList = authValue ? JSON.parse(authValue) : null;
109
+ if (provisionList != null) {
110
+ let userName = (_a = provisionList.find((x) => x.Key == 'AuthBasicUsername')) === null || _a === void 0 ? void 0 : _a.Value;
111
+ let password = (_b = provisionList.find((x) => x.Key == 'AuthBasicPassword')) === null || _b === void 0 ? void 0 : _b.Value;
112
+ data = { userName, password };
113
+ }
114
+ return data;
115
+ }
116
+ async GetBearerToken(authType, authValue) {
117
+ var _a, _b, _c, _d;
118
+ let token = "";
119
+ var provisionList = authValue ? JSON.parse(authValue) : null;
120
+ if (provisionList != null) {
121
+ let userName = (_a = provisionList.find((x) => x.Key == 'AuthBearerUsername')) === null || _a === void 0 ? void 0 : _a.Value;
122
+ let password = (_b = provisionList.find((x) => x.Key == 'AuthBearerPassword')) === null || _b === void 0 ? void 0 : _b.Value;
123
+ let payload = { userName, username: userName, password };
124
+ let strContentType = await this.GetContentType(enum_1.ContentType.applicationJson);
125
+ let url = (_c = provisionList.find((x) => x.Key == 'AuthBearerURL')) === null || _c === void 0 ? void 0 : _c.Value;
126
+ let config = {
127
+ headers: {
128
+ "Content-Type": strContentType
129
+ }
130
+ };
131
+ let response = await axios_1.default.post(url, payload, config);
132
+ if (response.status == 200) {
133
+ let tokenName = (_d = provisionList.find((x) => x.Key == 'AuthBearerToken')) === null || _d === void 0 ? void 0 : _d.Value;
134
+ let provisionData = response.data;
135
+ token = provisionData[tokenName];
136
+ }
137
+ }
138
+ return token;
139
+ }
140
+ async GetContentType(contentType) {
141
+ let responeValue = "";
142
+ switch (contentType) {
143
+ case enum_1.ContentType.applicationJson:
144
+ responeValue = "application/json";
145
+ break;
146
+ }
147
+ return responeValue;
148
+ }
149
+ }
150
+ exports.default = WebHookEvent;
151
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../webbookEvent/index.ts"],"names":[],"mappings":"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"}
@@ -58,6 +58,7 @@ export declare const AWS: {
58
58
  };
59
59
  SSM: {
60
60
  getSSMParameter: (ssmParameters: any) => Promise<any>;
61
+ getSSM: (ssmParameters: any) => any;
61
62
  };
62
63
  SES: {
63
64
  sendEmail: (param: import("@aws-sdk/client-sesv2").SendEmailCommandInput) => Promise<void>;
@@ -1,3 +1,12 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
1
10
  import { GenerateDataKeyCommand, DecryptCommand, KMSClient } from "@aws-sdk/client-kms"; // ES Modules import
2
11
  const crypto = require('crypto');
3
12
  const awsRegion = process.env.AWS_DEFAULT_REGION || 'us-east-1';
@@ -10,25 +19,25 @@ const algorithm = 'AES-256-CBC';
10
19
  * @param keyInfo
11
20
  * @returns
12
21
  */
13
- const encrypt = async (initVector, plainText, keyInfo) => {
22
+ const encrypt = (initVector, plainText, keyInfo) => __awaiter(void 0, void 0, void 0, function* () {
14
23
  try {
15
24
  const masterKey = extractMasterKey(keyInfo, 'keyid');
16
25
  const params = {
17
26
  KeyId: masterKey,
18
27
  KeySpec: 'AES_256' // Specifies the type of data key to return.
19
28
  };
20
- var command = await new GenerateDataKeyCommand(params);
21
- const dataKey = await client.send(command);
29
+ var command = yield new GenerateDataKeyCommand(params);
30
+ const dataKey = yield client.send(command);
22
31
  let buff = '0x' + dataKey.CiphertextBlob.length.toString(16);
23
32
  // Copy the length of the CiphertextBlob as first byte and concatenate the CiphertextBlob to it
24
33
  var length = Buffer.from([buff]);
25
34
  var str = Buffer.concat([length, dataKey.CiphertextBlob]);
26
35
  // Get a random IV
27
- const iv = await crypto.randomBytes(16);
36
+ const iv = yield crypto.randomBytes(16);
28
37
  // Concatenate the iv to the buffer
29
38
  str = Buffer.concat([str, iv]);
30
39
  // Create aes encryptor with KMS plain key
31
- var encryptor = await crypto.createCipheriv(algorithm, dataKey.Plaintext, iv);
40
+ var encryptor = yield crypto.createCipheriv(algorithm, dataKey.Plaintext, iv);
32
41
  // Encrypt the data
33
42
  encryptor.write(plainText);
34
43
  encryptor.end();
@@ -40,13 +49,13 @@ const encrypt = async (initVector, plainText, keyInfo) => {
40
49
  console.log(`error occured while encrypting ${plainText}`);
41
50
  console.log(error);
42
51
  }
43
- };
52
+ });
44
53
  /**
45
54
  *
46
55
  * @param text
47
56
  * @returns
48
57
  */
49
- const decrypt = async (text) => {
58
+ const decrypt = (text) => __awaiter(void 0, void 0, void 0, function* () {
50
59
  try {
51
60
  // Convert the base64 string to buffer
52
61
  var buf = Buffer.from(text, 'base64');
@@ -60,10 +69,10 @@ const decrypt = async (text) => {
60
69
  CiphertextBlob: cipherBlob
61
70
  };
62
71
  // Decrypt the CiphertextBlob and get the plaintext key
63
- var command = await new DecryptCommand(params);
64
- const dataKey = await client.send(command);
72
+ var command = yield new DecryptCommand(params);
73
+ const dataKey = yield client.send(command);
65
74
  // Create aes decryptor and decrypt the text
66
- var decryptor = await crypto.createDecipheriv(algorithm, dataKey.Plaintext, iv);
75
+ var decryptor = yield crypto.createDecipheriv(algorithm, dataKey.Plaintext, iv);
67
76
  decryptor.write(encText);
68
77
  decryptor.end();
69
78
  return decryptor.read().toString();
@@ -72,7 +81,7 @@ const decrypt = async (text) => {
72
81
  console.log(`error occured while decrypting ${text}`);
73
82
  console.log(error);
74
83
  }
75
- };
84
+ });
76
85
  /**
77
86
  *
78
87
  * @param keyInfo
@@ -1 +1 @@
1
- {"version":3,"file":"AESEncryptionUsingKMS.js","sourceRoot":"","sources":["../../../../aws/services/AESEncryptionUsingKMS.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AESEncryptionUsingKMS.js","sourceRoot":"","sources":["../../../../aws/services/AESEncryptionUsingKMS.ts"],"names":[],"mappings":"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"}