@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.
Files changed (127) hide show
  1. package/.github/workflows/npmpublish.yml +11 -19
  2. package/.github/workflows/prs.yml +13 -0
  3. package/jest.config.ts +39 -0
  4. package/package.json +15 -4
  5. package/src/API/Request.ts +120 -10
  6. package/src/API/Response.ts +236 -8
  7. package/src/API/Utils.ts +56 -1
  8. package/src/BaseEvent/EventProcessor.ts +84 -11
  9. package/src/BaseEvent/Process.ts +62 -1
  10. package/src/BaseEvent/Transaction.ts +5 -8
  11. package/src/Config/Configuration.ts +111 -5
  12. package/src/Config/EnvironmentVar.ts +90 -1
  13. package/src/Crypto/Crypto.ts +77 -18
  14. package/src/Crypto/JWT.ts +49 -3
  15. package/src/Globals.ts +141 -3
  16. package/src/Logger/Logger.ts +173 -19
  17. package/src/Mailer/Mailer.ts +95 -0
  18. package/src/Publisher/Publisher.ts +50 -4
  19. package/src/Server/RouteResolver.ts +142 -0
  20. package/src/Server/Router.ts +77 -0
  21. package/src/Server/lib/ContainerServer.ts +48 -1
  22. package/src/Server/lib/Server.ts +78 -38
  23. package/src/Server/lib/container/GenericHandler.ts +7 -5
  24. package/src/Server/lib/container/GenericHandlerEvent.ts +59 -17
  25. package/src/Server/lib/container/HealthHandler.ts +1 -1
  26. package/src/Server/lib/container/Proxy.ts +92 -11
  27. package/src/Server/lib/container/Utils.ts +16 -25
  28. package/src/Validation/Validator.ts +18 -2
  29. package/tests/API/Request.test.ts +263 -0
  30. package/tests/API/Response.test.ts +372 -0
  31. package/tests/API/Utils.test.ts +157 -0
  32. package/tests/BaseEvent/EventProcessor.test.ts +278 -0
  33. package/tests/BaseEvent/Process.test.ts +49 -0
  34. package/tests/BaseEvent/Transaction.test.ts +231 -0
  35. package/tests/Config/Config.test.ts +193 -0
  36. package/tests/Config/EnvironmentVar.test.ts +223 -0
  37. package/tests/Crypto/Crypto.test.ts +90 -0
  38. package/tests/Crypto/JWT.test.ts +92 -0
  39. package/tests/Logger/Logger.test.ts +108 -0
  40. package/tests/Mailer/Mailer.test.ts +67 -0
  41. package/tests/Publisher/Publisher.test.ts +60 -0
  42. package/tests/Server/RouteResolver.test.ts +106 -0
  43. package/tests/Server/Router.test.ts +38 -0
  44. package/tests/Server/lib/ContainerServer.test.ts +329 -0
  45. package/tests/Server/lib/Server.test.ts +12 -0
  46. package/tests/Server/lib/container/GenericHandler.test.ts +141 -0
  47. package/tests/Server/lib/container/GenericHandlerEvent.test.ts +103 -0
  48. package/tests/Server/lib/container/HealthHandler.test.ts +30 -0
  49. package/tests/Server/lib/container/Proxy.test.ts +278 -0
  50. package/tests/Server/lib/container/Utils.test.ts +48 -0
  51. package/tests/Test.utils.ts +95 -0
  52. package/tests/Validation/Validator.test.ts +88 -0
  53. package/tests/main.test.ts +15 -0
  54. package/tsconfig.json +1 -0
  55. package/dist/index.d.ts +0 -11
  56. package/dist/index.js +0 -24
  57. package/dist/index.js.map +0 -1
  58. package/dist/package.json +0 -53
  59. package/dist/src/API/Request.d.ts +0 -21
  60. package/dist/src/API/Request.js +0 -86
  61. package/dist/src/API/Request.js.map +0 -1
  62. package/dist/src/API/Response.d.ts +0 -39
  63. package/dist/src/API/Response.js +0 -232
  64. package/dist/src/API/Response.js.map +0 -1
  65. package/dist/src/API/Utils.d.ts +0 -8
  66. package/dist/src/API/Utils.js +0 -49
  67. package/dist/src/API/Utils.js.map +0 -1
  68. package/dist/src/BaseEvent/EventProcessor.d.ts +0 -13
  69. package/dist/src/BaseEvent/EventProcessor.js +0 -151
  70. package/dist/src/BaseEvent/EventProcessor.js.map +0 -1
  71. package/dist/src/BaseEvent/Process.d.ts +0 -12
  72. package/dist/src/BaseEvent/Process.js +0 -114
  73. package/dist/src/BaseEvent/Process.js.map +0 -1
  74. package/dist/src/BaseEvent/Transaction.d.ts +0 -29
  75. package/dist/src/BaseEvent/Transaction.js +0 -248
  76. package/dist/src/BaseEvent/Transaction.js.map +0 -1
  77. package/dist/src/Config/Configuration.d.ts +0 -34
  78. package/dist/src/Config/Configuration.js +0 -93
  79. package/dist/src/Config/Configuration.js.map +0 -1
  80. package/dist/src/Config/EnvironmentVar.d.ts +0 -17
  81. package/dist/src/Config/EnvironmentVar.js +0 -152
  82. package/dist/src/Config/EnvironmentVar.js.map +0 -1
  83. package/dist/src/Crypto/Crypto.d.ts +0 -8
  84. package/dist/src/Crypto/Crypto.js +0 -84
  85. package/dist/src/Crypto/Crypto.js.map +0 -1
  86. package/dist/src/Crypto/JWT.d.ts +0 -16
  87. package/dist/src/Crypto/JWT.js +0 -49
  88. package/dist/src/Crypto/JWT.js.map +0 -1
  89. package/dist/src/Globals.d.ts +0 -21
  90. package/dist/src/Globals.js +0 -35
  91. package/dist/src/Globals.js.map +0 -1
  92. package/dist/src/Logger/Logger.d.ts +0 -34
  93. package/dist/src/Logger/Logger.js +0 -345
  94. package/dist/src/Logger/Logger.js.map +0 -1
  95. package/dist/src/Mailer/Mailer.d.ts +0 -12
  96. package/dist/src/Mailer/Mailer.js +0 -234
  97. package/dist/src/Mailer/Mailer.js.map +0 -1
  98. package/dist/src/Publisher/Publisher.d.ts +0 -10
  99. package/dist/src/Publisher/Publisher.js +0 -109
  100. package/dist/src/Publisher/Publisher.js.map +0 -1
  101. package/dist/src/Server/Router.d.ts +0 -27
  102. package/dist/src/Server/Router.js +0 -22
  103. package/dist/src/Server/Router.js.map +0 -1
  104. package/dist/src/Server/lib/ContainerServer.d.ts +0 -11
  105. package/dist/src/Server/lib/ContainerServer.js +0 -103
  106. package/dist/src/Server/lib/ContainerServer.js.map +0 -1
  107. package/dist/src/Server/lib/Server.d.ts +0 -9
  108. package/dist/src/Server/lib/Server.js +0 -141
  109. package/dist/src/Server/lib/Server.js.map +0 -1
  110. package/dist/src/Server/lib/container/GenericHandler.d.ts +0 -4
  111. package/dist/src/Server/lib/container/GenericHandler.js +0 -136
  112. package/dist/src/Server/lib/container/GenericHandler.js.map +0 -1
  113. package/dist/src/Server/lib/container/GenericHandlerEvent.d.ts +0 -14
  114. package/dist/src/Server/lib/container/GenericHandlerEvent.js +0 -164
  115. package/dist/src/Server/lib/container/GenericHandlerEvent.js.map +0 -1
  116. package/dist/src/Server/lib/container/HealthHandler.d.ts +0 -3
  117. package/dist/src/Server/lib/container/HealthHandler.js +0 -44
  118. package/dist/src/Server/lib/container/HealthHandler.js.map +0 -1
  119. package/dist/src/Server/lib/container/Proxy.d.ts +0 -15
  120. package/dist/src/Server/lib/container/Proxy.js +0 -157
  121. package/dist/src/Server/lib/container/Proxy.js.map +0 -1
  122. package/dist/src/Server/lib/container/Utils.d.ts +0 -6
  123. package/dist/src/Server/lib/container/Utils.js +0 -109
  124. package/dist/src/Server/lib/container/Utils.js.map +0 -1
  125. package/dist/src/Validation/Validator.d.ts +0 -5
  126. package/dist/src/Validation/Validator.js +0 -31
  127. 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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2BAA4B;AAE5B,qCAAsC;AAEtC,iCAKgB;AAChB,4CAAsC;AAItC,EAAE;AACF;IAGE,6BACE,OAAgB,EAChB,iBAAkD;QAElD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAA;IAC5C,CAAC;IACY,oCAAM,GAAnB;;;;gBACE,qDAAqD;gBACrD,sBAAO,IAAI,OAAO,CAAC,UAAO,OAAO,EAAE,MAAM;;;;;;oCAG/B,UAAQ,IAAI,CAAC,UAAU,EAAE,CAAA;oCACzB,OAAO,GAAG,IAAI,CAAC,YAAY,CAC/B,OAAK,EACL,UAAC,GAAoB,EAAE,IAAU;wCAC/B,OAAO,CAAC,EAAE,GAAG,KAAA,EAAE,IAAI,MAAA,EAAE,CAAC,CAAA;oCACxB,CAAC,CACF,CAAA;oCACD,SAAS;oCACT,qBAAM,IAAI,CAAC,iBAAiB,CAAC,OAAK,EAAE,OAAO,CAAC,EAAA;;oCAD5C,SAAS;oCACT,SAA4C,CAAA;;;;oCAE5C,MAAM,CAAC,GAAC,CAAC,CAAA,CAAC,oBAAoB;;;;;yBAEjC,CAAC,EAAA;;;KACH;IACD,aAAa;IACL,wCAAU,GAAlB;;QACE,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI;YAC/B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;YACvE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;gBAC7B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE;gBACnC,CAAC,CAAC,IAAI;YACR,eAAe,EAAE,KAAK;YACtB,iBAAiB,EAAE,IAAA,8BAAsB,EACvC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CACvD;YACD,+BAA+B,EAAE,IAAA,4CAAoC,EACnE,IAAI,CAAC,OAAO,CAAC,GAAG,CACjB;YACD,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;YACvB,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;gBACjC,CAAC,CAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;gBAClC,CAAC,CAAC,IAAI;YACR,qBAAqB,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;gBACvC,CAAC,CAAC,IAAA,kCAA0B,EAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;gBAChD,CAAC,CAAC,IAAI;YACR,cAAc,EAAE;gBACd,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,IAAI;gBAC7C,KAAK,EAAE,IAAI;gBACX,UAAU,EAAE,IAAI;gBAChB,UAAU,EAAE,IAAI;gBAChB,YAAY,EAAE,IAAI;gBAClB,iBAAiB,EAAE,IAAI,EAAE;gBACzB,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;oBAC7B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE;oBACnC,CAAC,CAAC,IAAI;gBACR,QAAQ,EAAE;oBACR,SAAS,EAAE,IAAI;oBACf,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,IAAI;oBAC7C,MAAM,EAAE,IAAI;oBACZ,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,IAAI;oBACd,UAAU,EAAE,IAAI;oBAChB,6BAA6B,EAAE,IAAI;oBACnC,yBAAyB,EAAE,IAAI;oBAC/B,iBAAiB,EAAE,IAAI;oBACvB,qBAAqB,EAAE,IAAI;oBAC3B,cAAc,EAAE,IAAI;oBACpB,QAAQ,EACN,CAAQ,MAAA,IAAI,CAAC,OAAO,CAAC,OAAO,0CAAG,iBAAiB,CAAC;wBACjD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa;oBACnC,IAAI,EAAE,IAAI;oBACV,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;wBAC7B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;wBACpC,CAAC,CAAC,IAAI;oBACR,OAAO,EAAE,IAAI;iBACd;gBACD,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;gBACvB,QAAQ,EAAE,UAAU;gBACpB,SAAS,EAAE,UAAG,IAAI,EAAE,cAAI,IAAI,EAAE,CAAE;gBAChC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACrC,gBAAgB,EAAE,IAAI,CAAC,GAAG,EAAE;gBAC5B,UAAU,EAAE,IAAI;gBAChB,YAAY,EAAE,iBAAO,CAAC,wBAAwB;gBAC9C,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK;aACzB;YACD,QAAQ,EAAE,iBAAO,CAAC,wBAAwB;YAC1C,cAAc,EAAE,IAAI;SACrB,CAAA;IACH,CAAC;IACO,0CAAY,GAApB,UACE,KAA2B,EAC3B,QAAoD;QAEpD,OAAO;YACL,YAAY,EAAE,KAAK,CAAC,cAAc,CAAC,SAAS;YAC5C,8BAA8B,EAAE,IAAI;YACpC,wBAAwB,EAAE;gBACxB,OAAO,CAAC,CAAA;YACV,CAAC;YACD,IAAI,EAAE,UAAC,GAAG,EAAE,IAAI,IAAK,OAAA,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,EAAnB,CAAmB;YACxC,IAAI,EAAE,UAAC,GAAG,IAAK,OAAA,QAAQ,CAAC,GAAG,CAAC,EAAb,CAAa;YAC5B,OAAO,EAAE,UAAC,GAAG,IAAK,OAAA,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,EAAnB,CAAmB;YACrC,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,QAAQ;YACzB,kBAAkB,EAAE,IAAI;YACxB,eAAe,EAAE,IAAI;YACrB,YAAY,EAAE,IAAI;YAClB,aAAa,EAAE,IAAI;SACpB,CAAA;IACH,CAAC;IACH,0BAAC;AAAD,CAAC,AApHD,IAoHC"}
@@ -1,3 +0,0 @@
1
- import { Request, Response } from "express";
2
- declare const _default: (_request: Request, res: Response) => Promise<Response<any, Record<string, any>>>;
3
- export default _default;
@@ -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,5 +0,0 @@
1
- import { z } from "zod";
2
- import Response, { ResponseErrorType } from "../API/Response";
3
- export default class Validator {
4
- static validateSchema(data: any, schema: z.ZodObject<any>): boolean | Response<ResponseErrorType>;
5
- }
@@ -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"}