@dereekb/nestjs 13.2.2 → 13.3.1
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/discord/index.cjs.js +1171 -207
- package/discord/index.esm.js +1173 -209
- package/discord/package.json +5 -5
- package/index.cjs.js +918 -144
- package/index.esm.js +914 -146
- package/mailgun/index.cjs.js +797 -315
- package/mailgun/index.esm.js +797 -315
- package/mailgun/package.json +8 -8
- package/openai/index.cjs.js +867 -154
- package/openai/index.esm.js +867 -154
- package/openai/package.json +8 -8
- package/package.json +4 -4
- package/src/lib/decorators/local.decorator.d.ts +1 -1
- package/src/lib/decorators/rawbody.d.ts +73 -0
- package/src/lib/index.d.ts +1 -0
- package/src/lib/middlewares/json.middleware.d.ts +10 -0
- package/src/lib/middlewares/webhook.d.ts +1 -1
- package/src/lib/module/client/client.config.d.ts +16 -0
- package/src/lib/module/env/env.config.d.ts +6 -0
- package/src/lib/module/env/env.service.d.ts +1 -0
- package/src/lib/util/encryption/index.d.ts +1 -0
- package/src/lib/util/encryption/json.encrypt.d.ts +130 -0
- package/src/lib/util/index.d.ts +1 -0
- package/stripe/index.cjs.js +625 -114
- package/stripe/index.esm.js +625 -114
- package/stripe/package.json +8 -8
- package/typeform/index.cjs.js +930 -173
- package/typeform/index.esm.js +930 -173
- package/typeform/package.json +8 -8
- package/vapiai/index.cjs.js +876 -151
- package/vapiai/index.esm.js +876 -151
- package/vapiai/package.json +8 -8
package/openai/index.cjs.js
CHANGED
|
@@ -6,22 +6,69 @@ var common = require('@nestjs/common');
|
|
|
6
6
|
var openai = require('openai');
|
|
7
7
|
var config = require('@nestjs/config');
|
|
8
8
|
|
|
9
|
+
function _define_property$5(obj, key, value) {
|
|
10
|
+
if (key in obj) {
|
|
11
|
+
Object.defineProperty(obj, key, {
|
|
12
|
+
value: value,
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
writable: true
|
|
16
|
+
});
|
|
17
|
+
} else {
|
|
18
|
+
obj[key] = value;
|
|
19
|
+
}
|
|
20
|
+
return obj;
|
|
21
|
+
}
|
|
22
|
+
function _object_spread(target) {
|
|
23
|
+
for(var i = 1; i < arguments.length; i++){
|
|
24
|
+
var source = arguments[i] != null ? arguments[i] : {};
|
|
25
|
+
var ownKeys = Object.keys(source);
|
|
26
|
+
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
27
|
+
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
28
|
+
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
ownKeys.forEach(function(key) {
|
|
32
|
+
_define_property$5(target, key, source[key]);
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
return target;
|
|
36
|
+
}
|
|
37
|
+
function ownKeys(object, enumerableOnly) {
|
|
38
|
+
var keys = Object.keys(object);
|
|
39
|
+
if (Object.getOwnPropertySymbols) {
|
|
40
|
+
var symbols = Object.getOwnPropertySymbols(object);
|
|
41
|
+
keys.push.apply(keys, symbols);
|
|
42
|
+
}
|
|
43
|
+
return keys;
|
|
44
|
+
}
|
|
45
|
+
function _object_spread_props(target, source) {
|
|
46
|
+
source = source != null ? source : {};
|
|
47
|
+
if (Object.getOwnPropertyDescriptors) {
|
|
48
|
+
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
49
|
+
} else {
|
|
50
|
+
ownKeys(Object(source)).forEach(function(key) {
|
|
51
|
+
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
return target;
|
|
55
|
+
}
|
|
9
56
|
/**
|
|
10
57
|
* Creates a OpenAIWebhookEvent and treats the data as the input type.
|
|
11
58
|
*
|
|
12
59
|
* @param event
|
|
13
60
|
* @returns
|
|
14
|
-
*/
|
|
15
|
-
function openAIWebhookEvent(event) {
|
|
61
|
+
*/ function openAIWebhookEvent(event) {
|
|
16
62
|
return event;
|
|
17
63
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
64
|
+
var openaiEventHandlerFactory = util.handlerFactory(function(x) {
|
|
65
|
+
return x.type;
|
|
66
|
+
});
|
|
67
|
+
var openaiEventHandlerConfigurerFactory = util.handlerConfigurerFactory({
|
|
68
|
+
configurerForAccessor: function configurerForAccessor(accessor) {
|
|
21
69
|
// eslint-disable-next-line
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
...accessor,
|
|
70
|
+
var fnWithKey = util.handlerMappedSetFunctionFactory(accessor, openAIWebhookEvent);
|
|
71
|
+
var configurer = _object_spread_props(_object_spread({}, accessor), {
|
|
25
72
|
handleBatchCancelled: fnWithKey('batch.cancelled'),
|
|
26
73
|
handleBatchCompleted: fnWithKey('batch.completed'),
|
|
27
74
|
handleBatchExpired: fnWithKey('batch.expired'),
|
|
@@ -36,174 +83,811 @@ const openaiEventHandlerConfigurerFactory = util.handlerConfigurerFactory({
|
|
|
36
83
|
handleResponseCompleted: fnWithKey('response.completed'),
|
|
37
84
|
handleResponseFailed: fnWithKey('response.failed'),
|
|
38
85
|
handleResponseIncomplete: fnWithKey('response.incomplete')
|
|
39
|
-
};
|
|
86
|
+
});
|
|
40
87
|
return configurer;
|
|
41
88
|
}
|
|
42
89
|
});
|
|
43
90
|
|
|
44
|
-
|
|
91
|
+
function _class_call_check$6(instance, Constructor) {
|
|
92
|
+
if (!(instance instanceof Constructor)) {
|
|
93
|
+
throw new TypeError("Cannot call a class as a function");
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
function _defineProperties$3(target, props) {
|
|
97
|
+
for(var i = 0; i < props.length; i++){
|
|
98
|
+
var descriptor = props[i];
|
|
99
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
100
|
+
descriptor.configurable = true;
|
|
101
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
102
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
function _create_class$3(Constructor, protoProps, staticProps) {
|
|
106
|
+
if (staticProps) _defineProperties$3(Constructor, staticProps);
|
|
107
|
+
return Constructor;
|
|
108
|
+
}
|
|
109
|
+
function _define_property$4(obj, key, value) {
|
|
110
|
+
if (key in obj) {
|
|
111
|
+
Object.defineProperty(obj, key, {
|
|
112
|
+
value: value,
|
|
113
|
+
enumerable: true,
|
|
114
|
+
configurable: true,
|
|
115
|
+
writable: true
|
|
116
|
+
});
|
|
117
|
+
} else {
|
|
118
|
+
obj[key] = value;
|
|
119
|
+
}
|
|
120
|
+
return obj;
|
|
121
|
+
}
|
|
122
|
+
var OPENAI_WEBHOOK_SECRET_TOKEN_ENV_VAR = 'OPENAI_WEBHOOK_SECRET_TOKEN';
|
|
45
123
|
/**
|
|
46
124
|
* Configuration for OpenAIService
|
|
47
|
-
*/
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
if (!config.openaiWebhook.webhookSecret) {
|
|
52
|
-
throw new Error('No OpenAI webhook secret specified.');
|
|
53
|
-
}
|
|
125
|
+
*/ var OpenAIWebhookServiceConfig = /*#__PURE__*/ function() {
|
|
126
|
+
function OpenAIWebhookServiceConfig() {
|
|
127
|
+
_class_call_check$6(this, OpenAIWebhookServiceConfig);
|
|
128
|
+
_define_property$4(this, "openaiWebhook", void 0);
|
|
54
129
|
}
|
|
55
|
-
|
|
130
|
+
_create_class$3(OpenAIWebhookServiceConfig, null, [
|
|
131
|
+
{
|
|
132
|
+
key: "assertValidConfig",
|
|
133
|
+
value: function assertValidConfig(config) {
|
|
134
|
+
if (!config.openaiWebhook.webhookSecret) {
|
|
135
|
+
throw new Error('No OpenAI webhook secret specified.');
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
]);
|
|
140
|
+
return OpenAIWebhookServiceConfig;
|
|
141
|
+
}
|
|
142
|
+
();
|
|
56
143
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
76
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
77
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
78
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
function __param(paramIndex, decorator) {
|
|
82
|
-
return function (target, key) { decorator(target, key, paramIndex); }
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
86
|
-
var e = new Error(message);
|
|
87
|
-
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
144
|
+
function _type_of(obj) {
|
|
145
|
+
"@swc/helpers - typeof";
|
|
146
|
+
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
147
|
+
}
|
|
148
|
+
function __decorate(decorators, target, key, desc) {
|
|
149
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
150
|
+
if ((typeof Reflect === "undefined" ? "undefined" : _type_of(Reflect)) === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
151
|
+
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
152
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
153
|
+
}
|
|
154
|
+
function __param(paramIndex, decorator) {
|
|
155
|
+
return function(target, key) {
|
|
156
|
+
decorator(target, key, paramIndex);
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
|
|
160
|
+
var e = new Error(message);
|
|
161
|
+
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
88
162
|
};
|
|
89
163
|
|
|
164
|
+
function _class_call_check$5(instance, Constructor) {
|
|
165
|
+
if (!(instance instanceof Constructor)) {
|
|
166
|
+
throw new TypeError("Cannot call a class as a function");
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
function _defineProperties$2(target, props) {
|
|
170
|
+
for(var i = 0; i < props.length; i++){
|
|
171
|
+
var descriptor = props[i];
|
|
172
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
173
|
+
descriptor.configurable = true;
|
|
174
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
175
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
function _create_class$2(Constructor, protoProps, staticProps) {
|
|
179
|
+
if (staticProps) _defineProperties$2(Constructor, staticProps);
|
|
180
|
+
return Constructor;
|
|
181
|
+
}
|
|
182
|
+
function _define_property$3(obj, key, value) {
|
|
183
|
+
if (key in obj) {
|
|
184
|
+
Object.defineProperty(obj, key, {
|
|
185
|
+
value: value,
|
|
186
|
+
enumerable: true,
|
|
187
|
+
configurable: true,
|
|
188
|
+
writable: true
|
|
189
|
+
});
|
|
190
|
+
} else {
|
|
191
|
+
obj[key] = value;
|
|
192
|
+
}
|
|
193
|
+
return obj;
|
|
194
|
+
}
|
|
90
195
|
/**
|
|
91
196
|
* Default environment variable for the OpenAI API key.
|
|
92
|
-
*/
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
const OPENAI_PROJECT_ID_ENV_VAR = 'OPENAI_PROJECT_ID';
|
|
197
|
+
*/ var OPENAI_API_KEY_ENV_VAR = 'OPENAI_API_KEY';
|
|
198
|
+
var OPENAI_BASE_URL_ENV_VAR = 'OPENAI_BASE_URL';
|
|
199
|
+
var OPENAI_ORGANIZATION_ID_ENV_VAR = 'OPENAI_ORG_ID';
|
|
200
|
+
var OPENAI_PROJECT_ID_ENV_VAR = 'OPENAI_PROJECT_ID';
|
|
97
201
|
/**
|
|
98
202
|
* Configuration for OpenAIService
|
|
99
|
-
*/
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
203
|
+
*/ var OpenAIServiceConfig = /*#__PURE__*/ function() {
|
|
204
|
+
function OpenAIServiceConfig() {
|
|
205
|
+
_class_call_check$5(this, OpenAIServiceConfig);
|
|
206
|
+
_define_property$3(this, "openai", void 0);
|
|
207
|
+
}
|
|
208
|
+
_create_class$2(OpenAIServiceConfig, null, [
|
|
209
|
+
{
|
|
210
|
+
key: "assertValidConfig",
|
|
211
|
+
value: function assertValidConfig(config) {
|
|
212
|
+
if (!config.openai.config.apiKey) {
|
|
213
|
+
throw new Error('No OpenAI API key specified.');
|
|
214
|
+
} else if (!config.openai.config.organization) {
|
|
215
|
+
throw new Error('No OpenAI organization specified.');
|
|
216
|
+
} else if (!config.openai.config.project) {
|
|
217
|
+
throw new Error('No OpenAI project specified.');
|
|
218
|
+
}
|
|
219
|
+
}
|
|
111
220
|
}
|
|
221
|
+
]);
|
|
222
|
+
return OpenAIServiceConfig;
|
|
223
|
+
}
|
|
224
|
+
();
|
|
225
|
+
|
|
226
|
+
function _class_call_check$4(instance, Constructor) {
|
|
227
|
+
if (!(instance instanceof Constructor)) {
|
|
228
|
+
throw new TypeError("Cannot call a class as a function");
|
|
112
229
|
}
|
|
113
230
|
}
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
231
|
+
function _define_property$2(obj, key, value) {
|
|
232
|
+
if (key in obj) {
|
|
233
|
+
Object.defineProperty(obj, key, {
|
|
234
|
+
value: value,
|
|
235
|
+
enumerable: true,
|
|
236
|
+
configurable: true,
|
|
237
|
+
writable: true
|
|
238
|
+
});
|
|
239
|
+
} else {
|
|
240
|
+
obj[key] = value;
|
|
121
241
|
}
|
|
242
|
+
return obj;
|
|
243
|
+
}
|
|
244
|
+
exports.OpenAIApi = function OpenAIApi(config) {
|
|
245
|
+
_class_call_check$4(this, OpenAIApi);
|
|
246
|
+
_define_property$2(this, "config", void 0);
|
|
247
|
+
_define_property$2(this, "openAIClient", void 0);
|
|
248
|
+
this.config = config;
|
|
249
|
+
this.openAIClient = new openai.OpenAI(config.openai.config);
|
|
122
250
|
};
|
|
123
251
|
exports.OpenAIApi = __decorate([
|
|
124
252
|
common.Injectable(),
|
|
125
253
|
__param(0, common.Inject(OpenAIServiceConfig))
|
|
126
254
|
], exports.OpenAIApi);
|
|
127
255
|
|
|
256
|
+
function asyncGeneratorStep$2(gen, resolve, reject, _next, _throw, key, arg) {
|
|
257
|
+
try {
|
|
258
|
+
var info = gen[key](arg);
|
|
259
|
+
var value = info.value;
|
|
260
|
+
} catch (error) {
|
|
261
|
+
reject(error);
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
264
|
+
if (info.done) {
|
|
265
|
+
resolve(value);
|
|
266
|
+
} else {
|
|
267
|
+
Promise.resolve(value).then(_next, _throw);
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
function _async_to_generator$2(fn) {
|
|
271
|
+
return function() {
|
|
272
|
+
var self = this, args = arguments;
|
|
273
|
+
return new Promise(function(resolve, reject) {
|
|
274
|
+
var gen = fn.apply(self, args);
|
|
275
|
+
function _next(value) {
|
|
276
|
+
asyncGeneratorStep$2(gen, resolve, reject, _next, _throw, "next", value);
|
|
277
|
+
}
|
|
278
|
+
function _throw(err) {
|
|
279
|
+
asyncGeneratorStep$2(gen, resolve, reject, _next, _throw, "throw", err);
|
|
280
|
+
}
|
|
281
|
+
_next(undefined);
|
|
282
|
+
});
|
|
283
|
+
};
|
|
284
|
+
}
|
|
285
|
+
function _instanceof(left, right) {
|
|
286
|
+
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
287
|
+
return !!right[Symbol.hasInstance](left);
|
|
288
|
+
} else {
|
|
289
|
+
return left instanceof right;
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
function _ts_generator$2(thisArg, body) {
|
|
293
|
+
var f, y, t, _ = {
|
|
294
|
+
label: 0,
|
|
295
|
+
sent: function() {
|
|
296
|
+
if (t[0] & 1) throw t[1];
|
|
297
|
+
return t[1];
|
|
298
|
+
},
|
|
299
|
+
trys: [],
|
|
300
|
+
ops: []
|
|
301
|
+
}, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype), d = Object.defineProperty;
|
|
302
|
+
return d(g, "next", {
|
|
303
|
+
value: verb(0)
|
|
304
|
+
}), d(g, "throw", {
|
|
305
|
+
value: verb(1)
|
|
306
|
+
}), d(g, "return", {
|
|
307
|
+
value: verb(2)
|
|
308
|
+
}), typeof Symbol === "function" && d(g, Symbol.iterator, {
|
|
309
|
+
value: function() {
|
|
310
|
+
return this;
|
|
311
|
+
}
|
|
312
|
+
}), g;
|
|
313
|
+
function verb(n) {
|
|
314
|
+
return function(v) {
|
|
315
|
+
return step([
|
|
316
|
+
n,
|
|
317
|
+
v
|
|
318
|
+
]);
|
|
319
|
+
};
|
|
320
|
+
}
|
|
321
|
+
function step(op) {
|
|
322
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
323
|
+
while(g && (g = 0, op[0] && (_ = 0)), _)try {
|
|
324
|
+
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;
|
|
325
|
+
if (y = 0, t) op = [
|
|
326
|
+
op[0] & 2,
|
|
327
|
+
t.value
|
|
328
|
+
];
|
|
329
|
+
switch(op[0]){
|
|
330
|
+
case 0:
|
|
331
|
+
case 1:
|
|
332
|
+
t = op;
|
|
333
|
+
break;
|
|
334
|
+
case 4:
|
|
335
|
+
_.label++;
|
|
336
|
+
return {
|
|
337
|
+
value: op[1],
|
|
338
|
+
done: false
|
|
339
|
+
};
|
|
340
|
+
case 5:
|
|
341
|
+
_.label++;
|
|
342
|
+
y = op[1];
|
|
343
|
+
op = [
|
|
344
|
+
0
|
|
345
|
+
];
|
|
346
|
+
continue;
|
|
347
|
+
case 7:
|
|
348
|
+
op = _.ops.pop();
|
|
349
|
+
_.trys.pop();
|
|
350
|
+
continue;
|
|
351
|
+
default:
|
|
352
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
353
|
+
_ = 0;
|
|
354
|
+
continue;
|
|
355
|
+
}
|
|
356
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
357
|
+
_.label = op[1];
|
|
358
|
+
break;
|
|
359
|
+
}
|
|
360
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
361
|
+
_.label = t[1];
|
|
362
|
+
t = op;
|
|
363
|
+
break;
|
|
364
|
+
}
|
|
365
|
+
if (t && _.label < t[2]) {
|
|
366
|
+
_.label = t[2];
|
|
367
|
+
_.ops.push(op);
|
|
368
|
+
break;
|
|
369
|
+
}
|
|
370
|
+
if (t[2]) _.ops.pop();
|
|
371
|
+
_.trys.pop();
|
|
372
|
+
continue;
|
|
373
|
+
}
|
|
374
|
+
op = body.call(thisArg, _);
|
|
375
|
+
} catch (e) {
|
|
376
|
+
op = [
|
|
377
|
+
6,
|
|
378
|
+
e
|
|
379
|
+
];
|
|
380
|
+
y = 0;
|
|
381
|
+
} finally{
|
|
382
|
+
f = t = 0;
|
|
383
|
+
}
|
|
384
|
+
if (op[0] & 5) throw op[1];
|
|
385
|
+
return {
|
|
386
|
+
value: op[0] ? op[1] : void 0,
|
|
387
|
+
done: true
|
|
388
|
+
};
|
|
389
|
+
}
|
|
390
|
+
}
|
|
128
391
|
/**
|
|
129
392
|
* Verifies a OpenAI webhook event header.
|
|
130
393
|
*
|
|
131
394
|
* @param vapiSecretTokenGetter The OpenAI secret token. The Vapi client allows for using an AsyncGetterOrValue type, so the verifier supports that as well.
|
|
132
395
|
* @returns A function that verifies a OpenAI webhook event.
|
|
133
|
-
*/
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
396
|
+
*/ function openAIWebhookEventVerifier(config) {
|
|
397
|
+
var secret = config.secret, client = config.client;
|
|
398
|
+
return function(request, rawBody) {
|
|
399
|
+
return _async_to_generator$2(function() {
|
|
400
|
+
var headers, requestBodyString, event, valid, e, result;
|
|
401
|
+
return _ts_generator$2(this, function(_state) {
|
|
402
|
+
switch(_state.label){
|
|
403
|
+
case 0:
|
|
404
|
+
headers = request.headers;
|
|
405
|
+
requestBodyString = String(request.body);
|
|
406
|
+
valid = false;
|
|
407
|
+
_state.label = 1;
|
|
408
|
+
case 1:
|
|
409
|
+
_state.trys.push([
|
|
410
|
+
1,
|
|
411
|
+
3,
|
|
412
|
+
,
|
|
413
|
+
4
|
|
414
|
+
]);
|
|
415
|
+
return [
|
|
416
|
+
4,
|
|
417
|
+
client.webhooks.unwrap(requestBodyString, headers, secret)
|
|
418
|
+
];
|
|
419
|
+
case 2:
|
|
420
|
+
event = _state.sent();
|
|
421
|
+
valid = true;
|
|
422
|
+
return [
|
|
423
|
+
3,
|
|
424
|
+
4
|
|
425
|
+
];
|
|
426
|
+
case 3:
|
|
427
|
+
e = _state.sent();
|
|
428
|
+
if (_instanceof(e, openai.InvalidWebhookSignatureError)) {
|
|
429
|
+
valid = false;
|
|
430
|
+
} else {
|
|
431
|
+
throw e;
|
|
432
|
+
}
|
|
433
|
+
return [
|
|
434
|
+
3,
|
|
435
|
+
4
|
|
436
|
+
];
|
|
437
|
+
case 4:
|
|
438
|
+
result = {
|
|
439
|
+
valid: valid,
|
|
440
|
+
event: event
|
|
441
|
+
};
|
|
442
|
+
return [
|
|
443
|
+
2,
|
|
444
|
+
result
|
|
445
|
+
];
|
|
446
|
+
}
|
|
447
|
+
});
|
|
448
|
+
})();
|
|
449
|
+
};
|
|
450
|
+
}
|
|
451
|
+
|
|
452
|
+
function asyncGeneratorStep$1(gen, resolve, reject, _next, _throw, key, arg) {
|
|
453
|
+
try {
|
|
454
|
+
var info = gen[key](arg);
|
|
455
|
+
var value = info.value;
|
|
456
|
+
} catch (error) {
|
|
457
|
+
reject(error);
|
|
458
|
+
return;
|
|
459
|
+
}
|
|
460
|
+
if (info.done) {
|
|
461
|
+
resolve(value);
|
|
462
|
+
} else {
|
|
463
|
+
Promise.resolve(value).then(_next, _throw);
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
function _async_to_generator$1(fn) {
|
|
467
|
+
return function() {
|
|
468
|
+
var self = this, args = arguments;
|
|
469
|
+
return new Promise(function(resolve, reject) {
|
|
470
|
+
var gen = fn.apply(self, args);
|
|
471
|
+
function _next(value) {
|
|
472
|
+
asyncGeneratorStep$1(gen, resolve, reject, _next, _throw, "next", value);
|
|
148
473
|
}
|
|
149
|
-
|
|
150
|
-
throw
|
|
474
|
+
function _throw(err) {
|
|
475
|
+
asyncGeneratorStep$1(gen, resolve, reject, _next, _throw, "throw", err);
|
|
151
476
|
}
|
|
477
|
+
_next(undefined);
|
|
478
|
+
});
|
|
479
|
+
};
|
|
480
|
+
}
|
|
481
|
+
function _class_call_check$3(instance, Constructor) {
|
|
482
|
+
if (!(instance instanceof Constructor)) {
|
|
483
|
+
throw new TypeError("Cannot call a class as a function");
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
function _defineProperties$1(target, props) {
|
|
487
|
+
for(var i = 0; i < props.length; i++){
|
|
488
|
+
var descriptor = props[i];
|
|
489
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
490
|
+
descriptor.configurable = true;
|
|
491
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
492
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
493
|
+
}
|
|
494
|
+
}
|
|
495
|
+
function _create_class$1(Constructor, protoProps, staticProps) {
|
|
496
|
+
if (protoProps) _defineProperties$1(Constructor.prototype, protoProps);
|
|
497
|
+
return Constructor;
|
|
498
|
+
}
|
|
499
|
+
function _define_property$1(obj, key, value) {
|
|
500
|
+
if (key in obj) {
|
|
501
|
+
Object.defineProperty(obj, key, {
|
|
502
|
+
value: value,
|
|
503
|
+
enumerable: true,
|
|
504
|
+
configurable: true,
|
|
505
|
+
writable: true
|
|
506
|
+
});
|
|
507
|
+
} else {
|
|
508
|
+
obj[key] = value;
|
|
509
|
+
}
|
|
510
|
+
return obj;
|
|
511
|
+
}
|
|
512
|
+
function _ts_generator$1(thisArg, body) {
|
|
513
|
+
var f, y, t, _ = {
|
|
514
|
+
label: 0,
|
|
515
|
+
sent: function() {
|
|
516
|
+
if (t[0] & 1) throw t[1];
|
|
517
|
+
return t[1];
|
|
518
|
+
},
|
|
519
|
+
trys: [],
|
|
520
|
+
ops: []
|
|
521
|
+
}, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype), d = Object.defineProperty;
|
|
522
|
+
return d(g, "next", {
|
|
523
|
+
value: verb(0)
|
|
524
|
+
}), d(g, "throw", {
|
|
525
|
+
value: verb(1)
|
|
526
|
+
}), d(g, "return", {
|
|
527
|
+
value: verb(2)
|
|
528
|
+
}), typeof Symbol === "function" && d(g, Symbol.iterator, {
|
|
529
|
+
value: function() {
|
|
530
|
+
return this;
|
|
152
531
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
532
|
+
}), g;
|
|
533
|
+
function verb(n) {
|
|
534
|
+
return function(v) {
|
|
535
|
+
return step([
|
|
536
|
+
n,
|
|
537
|
+
v
|
|
538
|
+
]);
|
|
156
539
|
};
|
|
157
|
-
|
|
158
|
-
|
|
540
|
+
}
|
|
541
|
+
function step(op) {
|
|
542
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
543
|
+
while(g && (g = 0, op[0] && (_ = 0)), _)try {
|
|
544
|
+
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;
|
|
545
|
+
if (y = 0, t) op = [
|
|
546
|
+
op[0] & 2,
|
|
547
|
+
t.value
|
|
548
|
+
];
|
|
549
|
+
switch(op[0]){
|
|
550
|
+
case 0:
|
|
551
|
+
case 1:
|
|
552
|
+
t = op;
|
|
553
|
+
break;
|
|
554
|
+
case 4:
|
|
555
|
+
_.label++;
|
|
556
|
+
return {
|
|
557
|
+
value: op[1],
|
|
558
|
+
done: false
|
|
559
|
+
};
|
|
560
|
+
case 5:
|
|
561
|
+
_.label++;
|
|
562
|
+
y = op[1];
|
|
563
|
+
op = [
|
|
564
|
+
0
|
|
565
|
+
];
|
|
566
|
+
continue;
|
|
567
|
+
case 7:
|
|
568
|
+
op = _.ops.pop();
|
|
569
|
+
_.trys.pop();
|
|
570
|
+
continue;
|
|
571
|
+
default:
|
|
572
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
573
|
+
_ = 0;
|
|
574
|
+
continue;
|
|
575
|
+
}
|
|
576
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
577
|
+
_.label = op[1];
|
|
578
|
+
break;
|
|
579
|
+
}
|
|
580
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
581
|
+
_.label = t[1];
|
|
582
|
+
t = op;
|
|
583
|
+
break;
|
|
584
|
+
}
|
|
585
|
+
if (t && _.label < t[2]) {
|
|
586
|
+
_.label = t[2];
|
|
587
|
+
_.ops.push(op);
|
|
588
|
+
break;
|
|
589
|
+
}
|
|
590
|
+
if (t[2]) _.ops.pop();
|
|
591
|
+
_.trys.pop();
|
|
592
|
+
continue;
|
|
593
|
+
}
|
|
594
|
+
op = body.call(thisArg, _);
|
|
595
|
+
} catch (e) {
|
|
596
|
+
op = [
|
|
597
|
+
6,
|
|
598
|
+
e
|
|
599
|
+
];
|
|
600
|
+
y = 0;
|
|
601
|
+
} finally{
|
|
602
|
+
f = t = 0;
|
|
603
|
+
}
|
|
604
|
+
if (op[0] & 5) throw op[1];
|
|
605
|
+
return {
|
|
606
|
+
value: op[0] ? op[1] : void 0,
|
|
607
|
+
done: true
|
|
608
|
+
};
|
|
609
|
+
}
|
|
159
610
|
}
|
|
160
|
-
|
|
161
611
|
/**
|
|
162
612
|
* Service that makes system changes based on OpenAI webhook events.
|
|
163
|
-
*/
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
613
|
+
*/ exports.OpenAIWebhookService = /*#__PURE__*/ function() {
|
|
614
|
+
function OpenAIWebhookService(openAiApi, openAIWebhookServiceConfig) {
|
|
615
|
+
_class_call_check$3(this, OpenAIWebhookService);
|
|
616
|
+
_define_property$1(this, "logger", new common.Logger('OpenAIWebhookService'));
|
|
617
|
+
_define_property$1(this, "_verifier", void 0);
|
|
618
|
+
_define_property$1(this, "handler", openaiEventHandlerFactory());
|
|
619
|
+
_define_property$1(this, "configure", openaiEventHandlerConfigurerFactory(this.handler));
|
|
620
|
+
var webhookSecret = openAIWebhookServiceConfig.openaiWebhook.webhookSecret;
|
|
171
621
|
this._verifier = openAIWebhookEventVerifier({
|
|
172
622
|
secret: webhookSecret,
|
|
173
623
|
client: openAiApi.openAIClient
|
|
174
624
|
});
|
|
175
625
|
}
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
626
|
+
_create_class$1(OpenAIWebhookService, [
|
|
627
|
+
{
|
|
628
|
+
key: "updateForWebhook",
|
|
629
|
+
value: function updateForWebhook(req, rawBody) {
|
|
630
|
+
return _async_to_generator$1(function() {
|
|
631
|
+
var result;
|
|
632
|
+
return _ts_generator$1(this, function(_state) {
|
|
633
|
+
switch(_state.label){
|
|
634
|
+
case 0:
|
|
635
|
+
return [
|
|
636
|
+
4,
|
|
637
|
+
this._verifier(req, rawBody)
|
|
638
|
+
];
|
|
639
|
+
case 1:
|
|
640
|
+
result = _state.sent();
|
|
641
|
+
if (!!result.valid) return [
|
|
642
|
+
3,
|
|
643
|
+
2
|
|
644
|
+
];
|
|
645
|
+
this.logger.warn('Received invalid OpenAI event.', req);
|
|
646
|
+
return [
|
|
647
|
+
3,
|
|
648
|
+
4
|
|
649
|
+
];
|
|
650
|
+
case 2:
|
|
651
|
+
return [
|
|
652
|
+
4,
|
|
653
|
+
this.updateForOpenAIEvent(result.event)
|
|
654
|
+
];
|
|
655
|
+
case 3:
|
|
656
|
+
_state.sent();
|
|
657
|
+
_state.label = 4;
|
|
658
|
+
case 4:
|
|
659
|
+
return [
|
|
660
|
+
2
|
|
661
|
+
];
|
|
662
|
+
}
|
|
663
|
+
});
|
|
664
|
+
}).call(this);
|
|
665
|
+
}
|
|
666
|
+
},
|
|
667
|
+
{
|
|
668
|
+
key: "updateForOpenAIEvent",
|
|
669
|
+
value: function updateForOpenAIEvent(event) {
|
|
670
|
+
return _async_to_generator$1(function() {
|
|
671
|
+
var result;
|
|
672
|
+
return _ts_generator$1(this, function(_state) {
|
|
673
|
+
switch(_state.label){
|
|
674
|
+
case 0:
|
|
675
|
+
return [
|
|
676
|
+
4,
|
|
677
|
+
this.handler(event)
|
|
678
|
+
];
|
|
679
|
+
case 1:
|
|
680
|
+
result = _state.sent();
|
|
681
|
+
if (!result) {
|
|
682
|
+
this.logger.warn('Received unexpected/unhandled OpenAI event.', event);
|
|
683
|
+
}
|
|
684
|
+
return [
|
|
685
|
+
2
|
|
686
|
+
];
|
|
687
|
+
}
|
|
688
|
+
});
|
|
689
|
+
}).call(this);
|
|
690
|
+
}
|
|
189
691
|
}
|
|
190
|
-
|
|
191
|
-
|
|
692
|
+
]);
|
|
693
|
+
return OpenAIWebhookService;
|
|
694
|
+
}();
|
|
192
695
|
exports.OpenAIWebhookService = __decorate([
|
|
193
696
|
common.Injectable(),
|
|
194
697
|
__param(0, common.Inject(exports.OpenAIApi)),
|
|
195
698
|
__param(1, common.Inject(OpenAIWebhookServiceConfig))
|
|
196
699
|
], exports.OpenAIWebhookService);
|
|
197
700
|
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
701
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
702
|
+
try {
|
|
703
|
+
var info = gen[key](arg);
|
|
704
|
+
var value = info.value;
|
|
705
|
+
} catch (error) {
|
|
706
|
+
reject(error);
|
|
707
|
+
return;
|
|
202
708
|
}
|
|
203
|
-
|
|
204
|
-
|
|
709
|
+
if (info.done) {
|
|
710
|
+
resolve(value);
|
|
711
|
+
} else {
|
|
712
|
+
Promise.resolve(value).then(_next, _throw);
|
|
205
713
|
}
|
|
206
|
-
}
|
|
714
|
+
}
|
|
715
|
+
function _async_to_generator(fn) {
|
|
716
|
+
return function() {
|
|
717
|
+
var self = this, args = arguments;
|
|
718
|
+
return new Promise(function(resolve, reject) {
|
|
719
|
+
var gen = fn.apply(self, args);
|
|
720
|
+
function _next(value) {
|
|
721
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
722
|
+
}
|
|
723
|
+
function _throw(err) {
|
|
724
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
725
|
+
}
|
|
726
|
+
_next(undefined);
|
|
727
|
+
});
|
|
728
|
+
};
|
|
729
|
+
}
|
|
730
|
+
function _class_call_check$2(instance, Constructor) {
|
|
731
|
+
if (!(instance instanceof Constructor)) {
|
|
732
|
+
throw new TypeError("Cannot call a class as a function");
|
|
733
|
+
}
|
|
734
|
+
}
|
|
735
|
+
function _defineProperties(target, props) {
|
|
736
|
+
for(var i = 0; i < props.length; i++){
|
|
737
|
+
var descriptor = props[i];
|
|
738
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
739
|
+
descriptor.configurable = true;
|
|
740
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
741
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
742
|
+
}
|
|
743
|
+
}
|
|
744
|
+
function _create_class(Constructor, protoProps, staticProps) {
|
|
745
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
746
|
+
return Constructor;
|
|
747
|
+
}
|
|
748
|
+
function _define_property(obj, key, value) {
|
|
749
|
+
if (key in obj) {
|
|
750
|
+
Object.defineProperty(obj, key, {
|
|
751
|
+
value: value,
|
|
752
|
+
enumerable: true,
|
|
753
|
+
configurable: true,
|
|
754
|
+
writable: true
|
|
755
|
+
});
|
|
756
|
+
} else {
|
|
757
|
+
obj[key] = value;
|
|
758
|
+
}
|
|
759
|
+
return obj;
|
|
760
|
+
}
|
|
761
|
+
function _ts_generator(thisArg, body) {
|
|
762
|
+
var f, y, t, _ = {
|
|
763
|
+
label: 0,
|
|
764
|
+
sent: function() {
|
|
765
|
+
if (t[0] & 1) throw t[1];
|
|
766
|
+
return t[1];
|
|
767
|
+
},
|
|
768
|
+
trys: [],
|
|
769
|
+
ops: []
|
|
770
|
+
}, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype), d = Object.defineProperty;
|
|
771
|
+
return d(g, "next", {
|
|
772
|
+
value: verb(0)
|
|
773
|
+
}), d(g, "throw", {
|
|
774
|
+
value: verb(1)
|
|
775
|
+
}), d(g, "return", {
|
|
776
|
+
value: verb(2)
|
|
777
|
+
}), typeof Symbol === "function" && d(g, Symbol.iterator, {
|
|
778
|
+
value: function() {
|
|
779
|
+
return this;
|
|
780
|
+
}
|
|
781
|
+
}), g;
|
|
782
|
+
function verb(n) {
|
|
783
|
+
return function(v) {
|
|
784
|
+
return step([
|
|
785
|
+
n,
|
|
786
|
+
v
|
|
787
|
+
]);
|
|
788
|
+
};
|
|
789
|
+
}
|
|
790
|
+
function step(op) {
|
|
791
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
792
|
+
while(g && (g = 0, op[0] && (_ = 0)), _)try {
|
|
793
|
+
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;
|
|
794
|
+
if (y = 0, t) op = [
|
|
795
|
+
op[0] & 2,
|
|
796
|
+
t.value
|
|
797
|
+
];
|
|
798
|
+
switch(op[0]){
|
|
799
|
+
case 0:
|
|
800
|
+
case 1:
|
|
801
|
+
t = op;
|
|
802
|
+
break;
|
|
803
|
+
case 4:
|
|
804
|
+
_.label++;
|
|
805
|
+
return {
|
|
806
|
+
value: op[1],
|
|
807
|
+
done: false
|
|
808
|
+
};
|
|
809
|
+
case 5:
|
|
810
|
+
_.label++;
|
|
811
|
+
y = op[1];
|
|
812
|
+
op = [
|
|
813
|
+
0
|
|
814
|
+
];
|
|
815
|
+
continue;
|
|
816
|
+
case 7:
|
|
817
|
+
op = _.ops.pop();
|
|
818
|
+
_.trys.pop();
|
|
819
|
+
continue;
|
|
820
|
+
default:
|
|
821
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
822
|
+
_ = 0;
|
|
823
|
+
continue;
|
|
824
|
+
}
|
|
825
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
826
|
+
_.label = op[1];
|
|
827
|
+
break;
|
|
828
|
+
}
|
|
829
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
830
|
+
_.label = t[1];
|
|
831
|
+
t = op;
|
|
832
|
+
break;
|
|
833
|
+
}
|
|
834
|
+
if (t && _.label < t[2]) {
|
|
835
|
+
_.label = t[2];
|
|
836
|
+
_.ops.push(op);
|
|
837
|
+
break;
|
|
838
|
+
}
|
|
839
|
+
if (t[2]) _.ops.pop();
|
|
840
|
+
_.trys.pop();
|
|
841
|
+
continue;
|
|
842
|
+
}
|
|
843
|
+
op = body.call(thisArg, _);
|
|
844
|
+
} catch (e) {
|
|
845
|
+
op = [
|
|
846
|
+
6,
|
|
847
|
+
e
|
|
848
|
+
];
|
|
849
|
+
y = 0;
|
|
850
|
+
} finally{
|
|
851
|
+
f = t = 0;
|
|
852
|
+
}
|
|
853
|
+
if (op[0] & 5) throw op[1];
|
|
854
|
+
return {
|
|
855
|
+
value: op[0] ? op[1] : void 0,
|
|
856
|
+
done: true
|
|
857
|
+
};
|
|
858
|
+
}
|
|
859
|
+
}
|
|
860
|
+
exports.OpenAIWebhookController = /*#__PURE__*/ function() {
|
|
861
|
+
function OpenAIWebhookController(openaiWebhookService) {
|
|
862
|
+
_class_call_check$2(this, OpenAIWebhookController);
|
|
863
|
+
_define_property(this, "_openaiWebhookService", void 0);
|
|
864
|
+
this._openaiWebhookService = openaiWebhookService;
|
|
865
|
+
}
|
|
866
|
+
_create_class(OpenAIWebhookController, [
|
|
867
|
+
{
|
|
868
|
+
key: "handleOpenAIWebhook",
|
|
869
|
+
value: function handleOpenAIWebhook(req, rawBody) {
|
|
870
|
+
return _async_to_generator(function() {
|
|
871
|
+
return _ts_generator(this, function(_state) {
|
|
872
|
+
switch(_state.label){
|
|
873
|
+
case 0:
|
|
874
|
+
return [
|
|
875
|
+
4,
|
|
876
|
+
this._openaiWebhookService.updateForWebhook(req, rawBody)
|
|
877
|
+
];
|
|
878
|
+
case 1:
|
|
879
|
+
_state.sent();
|
|
880
|
+
return [
|
|
881
|
+
2
|
|
882
|
+
];
|
|
883
|
+
}
|
|
884
|
+
});
|
|
885
|
+
}).call(this);
|
|
886
|
+
}
|
|
887
|
+
}
|
|
888
|
+
]);
|
|
889
|
+
return OpenAIWebhookController;
|
|
890
|
+
}();
|
|
207
891
|
__decorate([
|
|
208
892
|
common.Post(),
|
|
209
893
|
__param(0, common.Req()),
|
|
@@ -214,12 +898,18 @@ exports.OpenAIWebhookController = __decorate([
|
|
|
214
898
|
__param(0, common.Inject(exports.OpenAIWebhookService))
|
|
215
899
|
], exports.OpenAIWebhookController);
|
|
216
900
|
|
|
901
|
+
function _class_call_check$1(instance, Constructor) {
|
|
902
|
+
if (!(instance instanceof Constructor)) {
|
|
903
|
+
throw new TypeError("Cannot call a class as a function");
|
|
904
|
+
}
|
|
905
|
+
}
|
|
217
906
|
function openAIServiceConfigFactory(configService) {
|
|
218
|
-
|
|
907
|
+
var _configService_get;
|
|
908
|
+
var config = {
|
|
219
909
|
openai: {
|
|
220
910
|
config: {
|
|
221
911
|
apiKey: configService.get(OPENAI_API_KEY_ENV_VAR),
|
|
222
|
-
baseURL: configService.get(OPENAI_BASE_URL_ENV_VAR)
|
|
912
|
+
baseURL: (_configService_get = configService.get(OPENAI_BASE_URL_ENV_VAR)) !== null && _configService_get !== void 0 ? _configService_get : undefined,
|
|
223
913
|
organization: configService.get(OPENAI_ORGANIZATION_ID_ENV_VAR),
|
|
224
914
|
project: configService.get(OPENAI_PROJECT_ID_ENV_VAR)
|
|
225
915
|
}
|
|
@@ -228,25 +918,37 @@ function openAIServiceConfigFactory(configService) {
|
|
|
228
918
|
OpenAIServiceConfig.assertValidConfig(config);
|
|
229
919
|
return config;
|
|
230
920
|
}
|
|
231
|
-
exports.OpenAIModule =
|
|
921
|
+
exports.OpenAIModule = function OpenAIModule() {
|
|
922
|
+
_class_call_check$1(this, OpenAIModule);
|
|
232
923
|
};
|
|
233
924
|
exports.OpenAIModule = __decorate([
|
|
234
925
|
common.Module({
|
|
235
|
-
imports: [
|
|
926
|
+
imports: [
|
|
927
|
+
config.ConfigModule
|
|
928
|
+
],
|
|
236
929
|
providers: [
|
|
237
930
|
{
|
|
238
931
|
provide: OpenAIServiceConfig,
|
|
239
|
-
inject: [
|
|
932
|
+
inject: [
|
|
933
|
+
config.ConfigService
|
|
934
|
+
],
|
|
240
935
|
useFactory: openAIServiceConfigFactory
|
|
241
936
|
},
|
|
242
937
|
exports.OpenAIApi
|
|
243
938
|
],
|
|
244
|
-
exports: [
|
|
939
|
+
exports: [
|
|
940
|
+
exports.OpenAIApi
|
|
941
|
+
]
|
|
245
942
|
})
|
|
246
943
|
], exports.OpenAIModule);
|
|
247
944
|
|
|
945
|
+
function _class_call_check(instance, Constructor) {
|
|
946
|
+
if (!(instance instanceof Constructor)) {
|
|
947
|
+
throw new TypeError("Cannot call a class as a function");
|
|
948
|
+
}
|
|
949
|
+
}
|
|
248
950
|
function openAIWebhookServiceConfigFactory(configService) {
|
|
249
|
-
|
|
951
|
+
var config = {
|
|
250
952
|
openaiWebhook: {
|
|
251
953
|
webhookSecret: configService.get(OPENAI_WEBHOOK_SECRET_TOKEN_ENV_VAR)
|
|
252
954
|
}
|
|
@@ -254,21 +956,31 @@ function openAIWebhookServiceConfigFactory(configService) {
|
|
|
254
956
|
OpenAIWebhookServiceConfig.assertValidConfig(config);
|
|
255
957
|
return config;
|
|
256
958
|
}
|
|
257
|
-
exports.OpenAIWebhookModule =
|
|
959
|
+
exports.OpenAIWebhookModule = function OpenAIWebhookModule() {
|
|
960
|
+
_class_call_check(this, OpenAIWebhookModule);
|
|
258
961
|
};
|
|
259
962
|
exports.OpenAIWebhookModule = __decorate([
|
|
260
963
|
common.Module({
|
|
261
|
-
imports: [
|
|
262
|
-
|
|
964
|
+
imports: [
|
|
965
|
+
config.ConfigModule,
|
|
966
|
+
exports.OpenAIModule
|
|
967
|
+
],
|
|
968
|
+
controllers: [
|
|
969
|
+
exports.OpenAIWebhookController
|
|
970
|
+
],
|
|
263
971
|
providers: [
|
|
264
972
|
{
|
|
265
973
|
provide: OpenAIWebhookServiceConfig,
|
|
266
|
-
inject: [
|
|
974
|
+
inject: [
|
|
975
|
+
config.ConfigService
|
|
976
|
+
],
|
|
267
977
|
useFactory: openAIWebhookServiceConfigFactory
|
|
268
978
|
},
|
|
269
979
|
exports.OpenAIWebhookService
|
|
270
980
|
],
|
|
271
|
-
exports: [
|
|
981
|
+
exports: [
|
|
982
|
+
exports.OpenAIWebhookService
|
|
983
|
+
]
|
|
272
984
|
})
|
|
273
985
|
], exports.OpenAIWebhookModule);
|
|
274
986
|
|
|
@@ -277,8 +989,7 @@ exports.OpenAIWebhookModule = __decorate([
|
|
|
277
989
|
*
|
|
278
990
|
* @param response
|
|
279
991
|
* @returns
|
|
280
|
-
*/
|
|
281
|
-
function isParsedOpenAIJsonResponseWithJson(response) {
|
|
992
|
+
*/ function isParsedOpenAIJsonResponseWithJson(response) {
|
|
282
993
|
return response.isJsonResponse && Boolean(response.jsonResponse) && Boolean(response.jsonResponseFieldMap);
|
|
283
994
|
}
|
|
284
995
|
/**
|
|
@@ -286,23 +997,21 @@ function isParsedOpenAIJsonResponseWithJson(response) {
|
|
|
286
997
|
*
|
|
287
998
|
* @param response The OpenAI response to parse.
|
|
288
999
|
* @returns The parsed OpenAI response.
|
|
289
|
-
*/
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
let jsonResponseFieldMap = undefined;
|
|
1000
|
+
*/ function parseOpenAIJsonResponse(response) {
|
|
1001
|
+
var output_text = typeof response === 'string' ? response : response.output_text;
|
|
1002
|
+
var jsonResponse = undefined;
|
|
1003
|
+
var jsonResponseFieldMap = undefined;
|
|
294
1004
|
try {
|
|
295
1005
|
jsonResponse = JSON.parse(output_text);
|
|
296
1006
|
jsonResponseFieldMap = openAIJsonResponseFieldsMap(jsonResponse);
|
|
297
|
-
}
|
|
298
|
-
|
|
299
|
-
// ignore
|
|
1007
|
+
} catch (e) {
|
|
1008
|
+
// ignore
|
|
300
1009
|
}
|
|
301
1010
|
return {
|
|
302
|
-
output_text,
|
|
1011
|
+
output_text: output_text,
|
|
303
1012
|
isJsonResponse: Boolean(jsonResponse),
|
|
304
|
-
jsonResponse,
|
|
305
|
-
jsonResponseFieldMap
|
|
1013
|
+
jsonResponse: jsonResponse,
|
|
1014
|
+
jsonResponseFieldMap: jsonResponseFieldMap
|
|
306
1015
|
};
|
|
307
1016
|
}
|
|
308
1017
|
/**
|
|
@@ -310,9 +1019,13 @@ function parseOpenAIJsonResponse(response) {
|
|
|
310
1019
|
*
|
|
311
1020
|
* @param response The OpenAI json response to create a map from.
|
|
312
1021
|
* @returns The map of the OpenAI json response fields.
|
|
313
|
-
*/
|
|
314
|
-
|
|
315
|
-
|
|
1022
|
+
*/ function openAIJsonResponseFieldsMap(response) {
|
|
1023
|
+
return new Map(response.fields.map(function(x) {
|
|
1024
|
+
return [
|
|
1025
|
+
x.field_name,
|
|
1026
|
+
x.field_value
|
|
1027
|
+
];
|
|
1028
|
+
}));
|
|
316
1029
|
}
|
|
317
1030
|
|
|
318
1031
|
exports.OPENAI_API_KEY_ENV_VAR = OPENAI_API_KEY_ENV_VAR;
|