@creator.co/wapi 1.2.1-beta6 → 1.2.2
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/.github/workflows/npmpublish.yml +11 -19
- package/.github/workflows/prs.yml +13 -0
- package/jest.config.ts +39 -0
- package/package.json +15 -4
- package/src/API/Request.ts +120 -10
- package/src/API/Response.ts +236 -8
- package/src/API/Utils.ts +56 -1
- package/src/BaseEvent/EventProcessor.ts +84 -11
- package/src/BaseEvent/Process.ts +62 -1
- package/src/BaseEvent/Transaction.ts +5 -8
- package/src/Config/Configuration.ts +111 -5
- package/src/Config/EnvironmentVar.ts +90 -1
- package/src/Crypto/Crypto.ts +77 -18
- package/src/Crypto/JWT.ts +49 -3
- package/src/Globals.ts +141 -3
- package/src/Logger/Logger.ts +173 -19
- package/src/Mailer/Mailer.ts +95 -0
- package/src/Publisher/Publisher.ts +50 -4
- package/src/Server/RouteResolver.ts +142 -0
- package/src/Server/Router.ts +77 -0
- package/src/Server/lib/ContainerServer.ts +48 -1
- package/src/Server/lib/Server.ts +78 -38
- package/src/Server/lib/container/GenericHandler.ts +7 -5
- package/src/Server/lib/container/GenericHandlerEvent.ts +59 -17
- package/src/Server/lib/container/HealthHandler.ts +1 -1
- package/src/Server/lib/container/Proxy.ts +92 -11
- package/src/Server/lib/container/Utils.ts +16 -25
- package/src/Validation/Validator.ts +18 -2
- package/tests/API/Request.test.ts +263 -0
- package/tests/API/Response.test.ts +372 -0
- package/tests/API/Utils.test.ts +157 -0
- package/tests/BaseEvent/EventProcessor.test.ts +278 -0
- package/tests/BaseEvent/Process.test.ts +49 -0
- package/tests/BaseEvent/Transaction.test.ts +231 -0
- package/tests/Config/Config.test.ts +193 -0
- package/tests/Config/EnvironmentVar.test.ts +223 -0
- package/tests/Crypto/Crypto.test.ts +90 -0
- package/tests/Crypto/JWT.test.ts +92 -0
- package/tests/Logger/Logger.test.ts +108 -0
- package/tests/Mailer/Mailer.test.ts +67 -0
- package/tests/Publisher/Publisher.test.ts +60 -0
- package/tests/Server/RouteResolver.test.ts +106 -0
- package/tests/Server/Router.test.ts +38 -0
- package/tests/Server/lib/ContainerServer.test.ts +329 -0
- package/tests/Server/lib/Server.test.ts +12 -0
- package/tests/Server/lib/container/GenericHandler.test.ts +141 -0
- package/tests/Server/lib/container/GenericHandlerEvent.test.ts +103 -0
- package/tests/Server/lib/container/HealthHandler.test.ts +30 -0
- package/tests/Server/lib/container/Proxy.test.ts +278 -0
- package/tests/Server/lib/container/Utils.test.ts +48 -0
- package/tests/Test.utils.ts +95 -0
- package/tests/Validation/Validator.test.ts +88 -0
- package/tests/main.test.ts +15 -0
- package/tsconfig.json +1 -0
- package/dist/index.d.ts +0 -11
- package/dist/index.js +0 -24
- package/dist/index.js.map +0 -1
- package/dist/package.json +0 -53
- package/dist/src/API/Request.d.ts +0 -21
- package/dist/src/API/Request.js +0 -86
- package/dist/src/API/Request.js.map +0 -1
- package/dist/src/API/Response.d.ts +0 -39
- package/dist/src/API/Response.js +0 -232
- package/dist/src/API/Response.js.map +0 -1
- package/dist/src/API/Utils.d.ts +0 -8
- package/dist/src/API/Utils.js +0 -49
- package/dist/src/API/Utils.js.map +0 -1
- package/dist/src/BaseEvent/EventProcessor.d.ts +0 -13
- package/dist/src/BaseEvent/EventProcessor.js +0 -151
- package/dist/src/BaseEvent/EventProcessor.js.map +0 -1
- package/dist/src/BaseEvent/Process.d.ts +0 -12
- package/dist/src/BaseEvent/Process.js +0 -114
- package/dist/src/BaseEvent/Process.js.map +0 -1
- package/dist/src/BaseEvent/Transaction.d.ts +0 -29
- package/dist/src/BaseEvent/Transaction.js +0 -248
- package/dist/src/BaseEvent/Transaction.js.map +0 -1
- package/dist/src/Config/Configuration.d.ts +0 -34
- package/dist/src/Config/Configuration.js +0 -93
- package/dist/src/Config/Configuration.js.map +0 -1
- package/dist/src/Config/EnvironmentVar.d.ts +0 -17
- package/dist/src/Config/EnvironmentVar.js +0 -152
- package/dist/src/Config/EnvironmentVar.js.map +0 -1
- package/dist/src/Crypto/Crypto.d.ts +0 -8
- package/dist/src/Crypto/Crypto.js +0 -84
- package/dist/src/Crypto/Crypto.js.map +0 -1
- package/dist/src/Crypto/JWT.d.ts +0 -16
- package/dist/src/Crypto/JWT.js +0 -49
- package/dist/src/Crypto/JWT.js.map +0 -1
- package/dist/src/Globals.d.ts +0 -21
- package/dist/src/Globals.js +0 -35
- package/dist/src/Globals.js.map +0 -1
- package/dist/src/Logger/Logger.d.ts +0 -34
- package/dist/src/Logger/Logger.js +0 -345
- package/dist/src/Logger/Logger.js.map +0 -1
- package/dist/src/Mailer/Mailer.d.ts +0 -12
- package/dist/src/Mailer/Mailer.js +0 -234
- package/dist/src/Mailer/Mailer.js.map +0 -1
- package/dist/src/Publisher/Publisher.d.ts +0 -10
- package/dist/src/Publisher/Publisher.js +0 -109
- package/dist/src/Publisher/Publisher.js.map +0 -1
- package/dist/src/Server/Router.d.ts +0 -27
- package/dist/src/Server/Router.js +0 -22
- package/dist/src/Server/Router.js.map +0 -1
- package/dist/src/Server/lib/ContainerServer.d.ts +0 -11
- package/dist/src/Server/lib/ContainerServer.js +0 -103
- package/dist/src/Server/lib/ContainerServer.js.map +0 -1
- package/dist/src/Server/lib/Server.d.ts +0 -9
- package/dist/src/Server/lib/Server.js +0 -141
- package/dist/src/Server/lib/Server.js.map +0 -1
- package/dist/src/Server/lib/container/GenericHandler.d.ts +0 -4
- package/dist/src/Server/lib/container/GenericHandler.js +0 -136
- package/dist/src/Server/lib/container/GenericHandler.js.map +0 -1
- package/dist/src/Server/lib/container/GenericHandlerEvent.d.ts +0 -14
- package/dist/src/Server/lib/container/GenericHandlerEvent.js +0 -164
- package/dist/src/Server/lib/container/GenericHandlerEvent.js.map +0 -1
- package/dist/src/Server/lib/container/HealthHandler.d.ts +0 -3
- package/dist/src/Server/lib/container/HealthHandler.js +0 -44
- package/dist/src/Server/lib/container/HealthHandler.js.map +0 -1
- package/dist/src/Server/lib/container/Proxy.d.ts +0 -15
- package/dist/src/Server/lib/container/Proxy.js +0 -157
- package/dist/src/Server/lib/container/Proxy.js.map +0 -1
- package/dist/src/Server/lib/container/Utils.d.ts +0 -6
- package/dist/src/Server/lib/container/Utils.js +0 -109
- package/dist/src/Server/lib/container/Utils.js.map +0 -1
- package/dist/src/Validation/Validator.d.ts +0 -5
- package/dist/src/Validation/Validator.js +0 -31
- package/dist/src/Validation/Validator.js.map +0 -1
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
-
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;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
var cuid = require("cuid");
|
|
40
|
-
var unflatten = require("unflatten");
|
|
41
|
-
var Utils_1 = require("./Utils");
|
|
42
|
-
var Globals_1 = require("../../../Globals");
|
|
43
|
-
//
|
|
44
|
-
var GenericHandlerEvent = /** @class */ (function () {
|
|
45
|
-
function GenericHandlerEvent(request, serverlessHandler) {
|
|
46
|
-
this.request = request;
|
|
47
|
-
this.serverlessHandler = serverlessHandler;
|
|
48
|
-
}
|
|
49
|
-
GenericHandlerEvent.prototype.invoke = function () {
|
|
50
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
51
|
-
var _this = this;
|
|
52
|
-
return __generator(this, function (_a) {
|
|
53
|
-
// eslint-disable-next-line no-async-promise-executor
|
|
54
|
-
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
55
|
-
var event_1, context, e_1;
|
|
56
|
-
return __generator(this, function (_a) {
|
|
57
|
-
switch (_a.label) {
|
|
58
|
-
case 0:
|
|
59
|
-
_a.trys.push([0, 2, , 3]);
|
|
60
|
-
event_1 = this.buildEvent();
|
|
61
|
-
context = this.buildContext(event_1, function (err, data) {
|
|
62
|
-
resolve({ err: err, data: data });
|
|
63
|
-
});
|
|
64
|
-
// Invoke
|
|
65
|
-
return [4 /*yield*/, this.serverlessHandler(event_1, context)];
|
|
66
|
-
case 1:
|
|
67
|
-
// Invoke
|
|
68
|
-
_a.sent();
|
|
69
|
-
return [3 /*break*/, 3];
|
|
70
|
-
case 2:
|
|
71
|
-
e_1 = _a.sent();
|
|
72
|
-
reject(e_1); // forward rejection
|
|
73
|
-
return [3 /*break*/, 3];
|
|
74
|
-
case 3: return [2 /*return*/];
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
}); })];
|
|
78
|
-
});
|
|
79
|
-
});
|
|
80
|
-
};
|
|
81
|
-
/* private */
|
|
82
|
-
GenericHandlerEvent.prototype.buildEvent = function () {
|
|
83
|
-
var _a;
|
|
84
|
-
return {
|
|
85
|
-
body: this.request.body || null,
|
|
86
|
-
headers: this.request.headers ? unflatten(this.request.headers, 2) : [],
|
|
87
|
-
httpMethod: this.request.method
|
|
88
|
-
? this.request.method.toUpperCase()
|
|
89
|
-
: null,
|
|
90
|
-
isBase64Encoded: false,
|
|
91
|
-
multiValueHeaders: (0, Utils_1.parseMultiValueHeaders)(this.request.headers ? this.request.headers || [] : []),
|
|
92
|
-
multiValueQueryStringParameters: (0, Utils_1.parseMultiValueQueryStringParameters)(this.request.url),
|
|
93
|
-
path: this.request.path,
|
|
94
|
-
pathParameters: this.request.params
|
|
95
|
-
? (0, Utils_1.nullIfEmpty)(this.request.params)
|
|
96
|
-
: null,
|
|
97
|
-
queryStringParameters: this.request.query
|
|
98
|
-
? (0, Utils_1.parseQueryStringParameters)(this.request.query)
|
|
99
|
-
: null,
|
|
100
|
-
requestContext: {
|
|
101
|
-
accountId: process.env.AWS_ACCOUNT_ID || null,
|
|
102
|
-
apiId: null,
|
|
103
|
-
authorizer: null,
|
|
104
|
-
domainName: null,
|
|
105
|
-
domainPrefix: null,
|
|
106
|
-
extendedRequestId: cuid(),
|
|
107
|
-
httpMethod: this.request.method
|
|
108
|
-
? this.request.method.toUpperCase()
|
|
109
|
-
: null,
|
|
110
|
-
identity: {
|
|
111
|
-
accessKey: null,
|
|
112
|
-
accountId: process.env.AWS_ACCOUNT_ID || null,
|
|
113
|
-
caller: null,
|
|
114
|
-
apiKey: null,
|
|
115
|
-
apiKeyId: null,
|
|
116
|
-
clientCert: null,
|
|
117
|
-
cognitoAuthenticationProvider: null,
|
|
118
|
-
cognitoAuthenticationType: null,
|
|
119
|
-
cognitoIdentityId: null,
|
|
120
|
-
cognitoIdentityPoolId: null,
|
|
121
|
-
principalOrgId: null,
|
|
122
|
-
sourceIp: ((_a = this.request.headers) === null || _a === void 0 ? void 0 : _a["x-forwarded-for"]) ||
|
|
123
|
-
this.request.socket.remoteAddress,
|
|
124
|
-
user: null,
|
|
125
|
-
userAgent: this.request.headers
|
|
126
|
-
? this.request.headers["user-agent"]
|
|
127
|
-
: null,
|
|
128
|
-
userArn: null,
|
|
129
|
-
},
|
|
130
|
-
path: this.request.path,
|
|
131
|
-
protocol: "HTTP/1.1",
|
|
132
|
-
requestId: "".concat(cuid(), "-").concat(cuid()),
|
|
133
|
-
requestTime: new Date().toISOString(),
|
|
134
|
-
requestTimeEpoch: Date.now(),
|
|
135
|
-
resourceId: null,
|
|
136
|
-
resourcePath: Globals_1.default.Listener_HTTP_ProxyRoute,
|
|
137
|
-
stage: process.env.STAGE,
|
|
138
|
-
},
|
|
139
|
-
resource: Globals_1.default.Listener_HTTP_ProxyRoute,
|
|
140
|
-
stageVariables: null,
|
|
141
|
-
};
|
|
142
|
-
};
|
|
143
|
-
GenericHandlerEvent.prototype.buildContext = function (event, callback) {
|
|
144
|
-
return {
|
|
145
|
-
awsRequestId: event.requestContext.requestId,
|
|
146
|
-
callbackWaitsForEmptyEventLoop: true,
|
|
147
|
-
getRemainingTimeInMillis: function () {
|
|
148
|
-
return 0;
|
|
149
|
-
},
|
|
150
|
-
done: function (err, data) { return callback(err, data); },
|
|
151
|
-
fail: function (err) { return callback(err); },
|
|
152
|
-
succeed: function (res) { return callback(null, res); },
|
|
153
|
-
functionName: null,
|
|
154
|
-
functionVersion: "LATEST",
|
|
155
|
-
invokedFunctionArn: null,
|
|
156
|
-
memoryLimitInMB: "-1",
|
|
157
|
-
logGroupName: null,
|
|
158
|
-
logStreamName: null,
|
|
159
|
-
};
|
|
160
|
-
};
|
|
161
|
-
return GenericHandlerEvent;
|
|
162
|
-
}());
|
|
163
|
-
exports.default = GenericHandlerEvent;
|
|
164
|
-
//# sourceMappingURL=GenericHandlerEvent.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GenericHandlerEvent.js","sourceRoot":"","sources":["../../../../../src/Server/lib/container/GenericHandlerEvent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
-
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;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.default = (function (_request, res) { return __awaiter(void 0, void 0, void 0, function () {
|
|
40
|
-
return __generator(this, function (_a) {
|
|
41
|
-
return [2 /*return*/, res.send("Healthy!")];
|
|
42
|
-
});
|
|
43
|
-
}); });
|
|
44
|
-
//# sourceMappingURL=HealthHandler.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HealthHandler.js","sourceRoot":"","sources":["../../../../../src/Server/lib/container/HealthHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,mBAAe,UAAO,QAAiB,EAAE,GAAa;;QACpD,sBAAO,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,EAAA;;KAC5B,EAAA"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import Server from "./../Server";
|
|
2
|
-
import { RouterConfig } from "../../Router";
|
|
3
|
-
export default class Proxy {
|
|
4
|
-
private stopping;
|
|
5
|
-
private readonly config;
|
|
6
|
-
private readonly app;
|
|
7
|
-
private readonly serverlessHandler;
|
|
8
|
-
private listener;
|
|
9
|
-
constructor(config: RouterConfig, serverlessHandler: Server["handleServerlessEvent"]);
|
|
10
|
-
load(): Promise<void>;
|
|
11
|
-
unload(err: any): Promise<void>;
|
|
12
|
-
private startListeners;
|
|
13
|
-
private stopListeners;
|
|
14
|
-
private installRoutes;
|
|
15
|
-
}
|
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
-
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;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
var http_1 = require("http");
|
|
40
|
-
var cors = require("cors");
|
|
41
|
-
var express = require("express");
|
|
42
|
-
var GenericHandler_1 = require("./GenericHandler");
|
|
43
|
-
var HealthHandler_1 = require("./HealthHandler");
|
|
44
|
-
var package_json_1 = require("../../../../package.json");
|
|
45
|
-
var Utils_1 = require("../../../API/Utils");
|
|
46
|
-
var Globals_1 = require("../../../Globals");
|
|
47
|
-
var Proxy = /** @class */ (function () {
|
|
48
|
-
function Proxy(config, serverlessHandler) {
|
|
49
|
-
this.stopping = false;
|
|
50
|
-
this.config = config;
|
|
51
|
-
this.serverlessHandler = serverlessHandler;
|
|
52
|
-
this.app = express();
|
|
53
|
-
/* Opinionated Express configs */
|
|
54
|
-
this.app.use(express.json());
|
|
55
|
-
// apply cors config
|
|
56
|
-
var corsConfig = this.config.cors || Utils_1.default.parseObjectNullIfEmpty(process.env.CORS);
|
|
57
|
-
this.app.use(cors(corsConfig
|
|
58
|
-
? {
|
|
59
|
-
options: {
|
|
60
|
-
origin: corsConfig === null || corsConfig === void 0 ? void 0 : corsConfig.origin,
|
|
61
|
-
allowedHeaders: corsConfig === null || corsConfig === void 0 ? void 0 : corsConfig.headers,
|
|
62
|
-
credentials: !!(corsConfig === null || corsConfig === void 0 ? void 0 : corsConfig.allowCredentials),
|
|
63
|
-
},
|
|
64
|
-
}
|
|
65
|
-
: {}));
|
|
66
|
-
// //This supposedly fix some 502 codes where nodejs socket would hang during
|
|
67
|
-
// //a request and if behind ALB, it would cause 502 codes. Had experiencied this
|
|
68
|
-
// //and 502 codes reduced dramastically, but still some appearances. Maybe this
|
|
69
|
-
// //is just a palliative work-around for the real issue; TODO: need to investigate
|
|
70
|
-
// //in the future.
|
|
71
|
-
// this.listener.listener.keepAliveTimeout = 120e3
|
|
72
|
-
// this.listener.listener.headersTimeout = 120e3
|
|
73
|
-
}
|
|
74
|
-
Proxy.prototype.load = function () {
|
|
75
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
76
|
-
return __generator(this, function (_a) {
|
|
77
|
-
switch (_a.label) {
|
|
78
|
-
case 0: return [4 /*yield*/, this.startListeners()];
|
|
79
|
-
case 1:
|
|
80
|
-
_a.sent();
|
|
81
|
-
this.installRoutes();
|
|
82
|
-
return [2 /*return*/];
|
|
83
|
-
}
|
|
84
|
-
});
|
|
85
|
-
});
|
|
86
|
-
};
|
|
87
|
-
Proxy.prototype.unload = function (err) {
|
|
88
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
89
|
-
return __generator(this, function (_a) {
|
|
90
|
-
switch (_a.label) {
|
|
91
|
-
case 0: return [4 /*yield*/, this.stopListeners(err)];
|
|
92
|
-
case 1:
|
|
93
|
-
_a.sent();
|
|
94
|
-
return [2 /*return*/];
|
|
95
|
-
}
|
|
96
|
-
});
|
|
97
|
-
});
|
|
98
|
-
};
|
|
99
|
-
/* lifecycle */
|
|
100
|
-
Proxy.prototype.startListeners = function () {
|
|
101
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
102
|
-
var _this = this;
|
|
103
|
-
return __generator(this, function (_a) {
|
|
104
|
-
return [2 /*return*/, new Promise(function (resolve) {
|
|
105
|
-
var port = _this.config.port || Globals_1.default.Listener_HTTP_DefaultPort;
|
|
106
|
-
console.log("[Proxy] - [STARTING] - v.".concat(package_json_1.version, " - :").concat(port));
|
|
107
|
-
// Create Server
|
|
108
|
-
_this.listener = (0, http_1.createServer)(_this.app);
|
|
109
|
-
// Set defaults
|
|
110
|
-
_this.listener.setTimeout(_this.config.timeout || Globals_1.default.Listener_HTTP_DefaultTimeout);
|
|
111
|
-
// Start Server
|
|
112
|
-
_this.listener.listen(port, function () {
|
|
113
|
-
console.log("[Proxy] - [STARTED]");
|
|
114
|
-
resolve();
|
|
115
|
-
});
|
|
116
|
-
})];
|
|
117
|
-
});
|
|
118
|
-
});
|
|
119
|
-
};
|
|
120
|
-
Proxy.prototype.stopListeners = function (err) {
|
|
121
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
122
|
-
return __generator(this, function (_a) {
|
|
123
|
-
if (this.stopping)
|
|
124
|
-
return [2 /*return*/];
|
|
125
|
-
this.stopping = true;
|
|
126
|
-
console.debug("[Proxy] - [STOPPING]");
|
|
127
|
-
this.listener.close(function (_err) {
|
|
128
|
-
if (err || _err)
|
|
129
|
-
console.log("[Proxy] - exit output:", err || _err);
|
|
130
|
-
console.log("[Proxy] - [STOPPED]");
|
|
131
|
-
process.exit(err || _err ? 1 : 0);
|
|
132
|
-
});
|
|
133
|
-
return [2 /*return*/];
|
|
134
|
-
});
|
|
135
|
-
});
|
|
136
|
-
};
|
|
137
|
-
/* routing */
|
|
138
|
-
Proxy.prototype.installRoutes = function () {
|
|
139
|
-
//Health check route -- This is a bypass route to only check if
|
|
140
|
-
//runtime proxy is working and responding to calls.
|
|
141
|
-
console.log("[Proxy] - [HEALTH-ROUTE] - ".concat(this.config.healthCheckRoute ||
|
|
142
|
-
Globals_1.default.Listener_HTTP_DefaultHealthCheckRoute));
|
|
143
|
-
this.app
|
|
144
|
-
.route(this.config.healthCheckRoute ||
|
|
145
|
-
Globals_1.default.Listener_HTTP_DefaultHealthCheckRoute)
|
|
146
|
-
.get(HealthHandler_1.default);
|
|
147
|
-
//Main route -- We use a wildcard route because is not the job of the runtime and neither
|
|
148
|
-
//the task to deny/constrain routes that invoked this task; all the job is done by the
|
|
149
|
-
//load balancer and we just foward everything we have to the function.
|
|
150
|
-
this.app
|
|
151
|
-
.route(Globals_1.default.Listener_HTTP_ProxyRoute)
|
|
152
|
-
.all((0, GenericHandler_1.default)(this.serverlessHandler));
|
|
153
|
-
};
|
|
154
|
-
return Proxy;
|
|
155
|
-
}());
|
|
156
|
-
exports.default = Proxy;
|
|
157
|
-
//# sourceMappingURL=Proxy.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Proxy.js","sourceRoot":"","sources":["../../../../../src/Server/lib/container/Proxy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export declare function parseMultiValueHeaders(rawHeaders: any): any;
|
|
2
|
-
export declare function parseMultiValueQueryStringParameters(url: any): any;
|
|
3
|
-
export declare function parseQueryStringParameters(url: any): {
|
|
4
|
-
[k: string]: string;
|
|
5
|
-
};
|
|
6
|
-
export declare function nullIfEmpty(obj: any): any;
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __values = (this && this.__values) || function(o) {
|
|
3
|
-
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
4
|
-
if (m) return m.call(o);
|
|
5
|
-
if (o && typeof o.length === "number") return {
|
|
6
|
-
next: function () {
|
|
7
|
-
if (o && i >= o.length) o = void 0;
|
|
8
|
-
return { value: o && o[i++], done: !o };
|
|
9
|
-
}
|
|
10
|
-
};
|
|
11
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
12
|
-
};
|
|
13
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
14
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
15
|
-
if (!m) return o;
|
|
16
|
-
var i = m.call(o), r, ar = [], e;
|
|
17
|
-
try {
|
|
18
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
19
|
-
}
|
|
20
|
-
catch (error) { e = { error: error }; }
|
|
21
|
-
finally {
|
|
22
|
-
try {
|
|
23
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
24
|
-
}
|
|
25
|
-
finally { if (e) throw e.error; }
|
|
26
|
-
}
|
|
27
|
-
return ar;
|
|
28
|
-
};
|
|
29
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
-
exports.nullIfEmpty = exports.parseQueryStringParameters = exports.parseMultiValueQueryStringParameters = exports.parseMultiValueHeaders = void 0;
|
|
31
|
-
var unflatten = require("unflatten");
|
|
32
|
-
// https://aws.amazon.com/blogs/compute/support-for-multi-value-parameters-in-amazon-api-gateway/
|
|
33
|
-
// (rawHeaders: Array<string>): { [string]: Array<string> }
|
|
34
|
-
function parseMultiValueHeaders(rawHeaders) {
|
|
35
|
-
var e_1, _a;
|
|
36
|
-
if (rawHeaders.length === 0)
|
|
37
|
-
return null;
|
|
38
|
-
//
|
|
39
|
-
var map = new Map();
|
|
40
|
-
var unflattened = unflatten(rawHeaders, 2);
|
|
41
|
-
try {
|
|
42
|
-
// eslint-disable-next-line no-restricted-syntax
|
|
43
|
-
for (var _b = __values(Object.keys(unflattened)), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
44
|
-
var key = _c.value;
|
|
45
|
-
var item = map.get(key);
|
|
46
|
-
if (item)
|
|
47
|
-
item.push(unflattened[key]);
|
|
48
|
-
else
|
|
49
|
-
map.set(key, [unflattened[key]]);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
53
|
-
finally {
|
|
54
|
-
try {
|
|
55
|
-
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
56
|
-
}
|
|
57
|
-
finally { if (e_1) throw e_1.error; }
|
|
58
|
-
}
|
|
59
|
-
return Object.fromEntries(map);
|
|
60
|
-
}
|
|
61
|
-
exports.parseMultiValueHeaders = parseMultiValueHeaders;
|
|
62
|
-
// https://aws.amazon.com/blogs/compute/support-for-multi-value-parameters-in-amazon-api-gateway/
|
|
63
|
-
// [ [ 'petType', 'dog' ], [ 'petType', 'fish' ] ]
|
|
64
|
-
// => { petType: [ 'dog', 'fish' ] },
|
|
65
|
-
function parseMultiValueQueryStringParameters(url) {
|
|
66
|
-
var e_2, _a;
|
|
67
|
-
// dummy placeholder url for the WHATWG URL constructor
|
|
68
|
-
// https://github.com/nodejs/node/issues/12682
|
|
69
|
-
var searchParams = new URL(url, "http://example").searchParams;
|
|
70
|
-
//
|
|
71
|
-
if (Array.from(searchParams).length === 0)
|
|
72
|
-
return null;
|
|
73
|
-
var map = new Map();
|
|
74
|
-
try {
|
|
75
|
-
// eslint-disable-next-line no-restricted-syntax
|
|
76
|
-
for (var searchParams_1 = __values(searchParams), searchParams_1_1 = searchParams_1.next(); !searchParams_1_1.done; searchParams_1_1 = searchParams_1.next()) {
|
|
77
|
-
var _b = __read(searchParams_1_1.value, 2), key = _b[0], value = _b[1];
|
|
78
|
-
var item = map.get(key);
|
|
79
|
-
if (item)
|
|
80
|
-
item.push(value);
|
|
81
|
-
else
|
|
82
|
-
map.set(key, [value]);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
86
|
-
finally {
|
|
87
|
-
try {
|
|
88
|
-
if (searchParams_1_1 && !searchParams_1_1.done && (_a = searchParams_1.return)) _a.call(searchParams_1);
|
|
89
|
-
}
|
|
90
|
-
finally { if (e_2) throw e_2.error; }
|
|
91
|
-
}
|
|
92
|
-
return Object.fromEntries(map);
|
|
93
|
-
}
|
|
94
|
-
exports.parseMultiValueQueryStringParameters = parseMultiValueQueryStringParameters;
|
|
95
|
-
function parseQueryStringParameters(url) {
|
|
96
|
-
// dummy placeholder url for the WHATWG URL constructor
|
|
97
|
-
// https://github.com/nodejs/node/issues/12682
|
|
98
|
-
var searchParams = new URL(url, "http://example").searchParams;
|
|
99
|
-
if (Array.from(searchParams).length === 0)
|
|
100
|
-
return null;
|
|
101
|
-
return Object.fromEntries(searchParams);
|
|
102
|
-
}
|
|
103
|
-
exports.parseQueryStringParameters = parseQueryStringParameters;
|
|
104
|
-
//
|
|
105
|
-
function nullIfEmpty(obj) {
|
|
106
|
-
return obj && (Object.keys(obj).length > 0 ? obj : null);
|
|
107
|
-
}
|
|
108
|
-
exports.nullIfEmpty = nullIfEmpty;
|
|
109
|
-
//# sourceMappingURL=Utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../../../src/Server/lib/container/Utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAsC;AACtC,iGAAiG;AACjG,2DAA2D;AAC3D,SAAgB,sBAAsB,CAAC,UAAU;;IAC/C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACxC,EAAE;IACF,IAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAA;IACrB,IAAM,WAAW,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;;QAC5C,gDAAgD;QAChD,KAAkB,IAAA,KAAA,SAAA,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA,gBAAA,4BAAE;YAAvC,IAAM,GAAG,WAAA;YACZ,IAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACzB,IAAI,IAAI;gBAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAA;;gBAChC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;SACtC;;;;;;;;;IACD,OAAO,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;AAChC,CAAC;AAZD,wDAYC;AACD,iGAAiG;AACjG,kDAAkD;AAClD,qCAAqC;AACrC,SAAgB,oCAAoC,CAAC,GAAG;;IACtD,uDAAuD;IACvD,8CAA8C;IACtC,IAAA,YAAY,GAAK,IAAI,GAAG,CAAC,GAAG,EAAE,gBAAgB,CAAC,aAAnC,CAAmC;IACvD,EAAE;IACF,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACtD,IAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAA;;QACrB,gDAAgD;QAChD,KAA2B,IAAA,iBAAA,SAAA,YAAY,CAAA,0CAAA,oEAAE;YAA9B,IAAA,KAAA,iCAAY,EAAX,GAAG,QAAA,EAAE,KAAK,QAAA;YACpB,IAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACzB,IAAI,IAAI;gBAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;;gBACrB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;SAC3B;;;;;;;;;IACD,OAAO,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;AAChC,CAAC;AAdD,oFAcC;AACD,SAAgB,0BAA0B,CAAC,GAAG;IAC5C,uDAAuD;IACvD,8CAA8C;IACtC,IAAA,YAAY,GAAK,IAAI,GAAG,CAAC,GAAG,EAAE,gBAAgB,CAAC,aAAnC,CAAmC;IACvD,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACtD,OAAO,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAA;AACzC,CAAC;AAND,gEAMC;AACD,EAAE;AACF,SAAgB,WAAW,CAAC,GAAG;IAC7B,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;AAC1D,CAAC;AAFD,kCAEC"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var Response_1 = require("../API/Response");
|
|
4
|
-
var Globals_1 = require("../Globals");
|
|
5
|
-
var Validator = /** @class */ (function () {
|
|
6
|
-
function Validator() {
|
|
7
|
-
}
|
|
8
|
-
Validator.validateSchema = function (data, schema) {
|
|
9
|
-
var error, validatedInput;
|
|
10
|
-
// Validate body against known zod schema
|
|
11
|
-
try {
|
|
12
|
-
validatedInput = schema.parse(data);
|
|
13
|
-
}
|
|
14
|
-
catch (err) {
|
|
15
|
-
if (err.message)
|
|
16
|
-
error = err.message;
|
|
17
|
-
else
|
|
18
|
-
error = "Unknown validation error!";
|
|
19
|
-
}
|
|
20
|
-
// Error validation
|
|
21
|
-
if (!validatedInput || error) {
|
|
22
|
-
return Response_1.default.BadRequestResponse(Globals_1.default.ErrorResponseValidationFail, Globals_1.default.ErrorCode_InvalidInput, { validationFailure: error });
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
return true;
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
return Validator;
|
|
29
|
-
}());
|
|
30
|
-
exports.default = Validator;
|
|
31
|
-
//# sourceMappingURL=Validator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Validator.js","sourceRoot":"","sources":["../../../src/Validation/Validator.ts"],"names":[],"mappings":";;AAEA,4CAA6D;AAC7D,sCAAgC;AAEhC;IAAA;IAwBA,CAAC;IAvBe,wBAAc,GAA5B,UACE,IAAS,EACT,MAAwB;QAExB,IAAI,KAAK,EAAE,cAAc,CAAA;QACzB,yCAAyC;QACzC,IAAI;YACF,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAkB,CAAA;SACrD;QAAC,OAAO,GAAqB,EAAE;YAC9B,IAAI,GAAG,CAAC,OAAO;gBAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CAAA;;gBAC/B,KAAK,GAAG,2BAA2B,CAAA;SACzC;QACD,mBAAmB;QACnB,IAAI,CAAC,cAAc,IAAI,KAAK,EAAE;YAC5B,OAAO,kBAAQ,CAAC,kBAAkB,CAChC,iBAAO,CAAC,2BAA2B,EACnC,iBAAO,CAAC,sBAAsB,EAC9B,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAA;SACF;aAAM;YACL,OAAO,IAAI,CAAA;SACZ;IACH,CAAC;IACH,gBAAC;AAAD,CAAC,AAxBD,IAwBC"}
|