@antelopejs/api 0.0.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/LICENSE +190 -0
- package/README.md +77 -0
- package/dist/implementations/api/beta.d.ts +21 -0
- package/dist/implementations/api/beta.js +54 -0
- package/dist/implementations/api/beta.js.map +1 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.js +82 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces/api/beta/index.d.ts +115 -0
- package/dist/interfaces/api/beta/index.js +294 -0
- package/dist/interfaces/api/beta/index.js.map +1 -0
- package/dist/middlewares/cors.d.ts +6 -0
- package/dist/middlewares/cors.js +74 -0
- package/dist/middlewares/cors.js.map +1 -0
- package/dist/server.d.ts +21 -0
- package/dist/server.js +291 -0
- package/dist/server.js.map +1 -0
- package/dist/test/interface/api.d.ts +69 -0
- package/dist/test/interface/api.js +739 -0
- package/dist/test/interface/api.js.map +1 -0
- package/package.json +72 -0
package/dist/server.js
ADDED
|
@@ -0,0 +1,291 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.registerHandler = registerHandler;
|
|
4
|
+
exports.unregisterHandler = unregisterHandler;
|
|
5
|
+
exports.requestListener = requestListener;
|
|
6
|
+
exports.upgradeListener = upgradeListener;
|
|
7
|
+
const beta_1 = require("@ajs.local/api/beta");
|
|
8
|
+
const http_1 = require("http");
|
|
9
|
+
const ws_1 = require("ws");
|
|
10
|
+
class RouteLevel {
|
|
11
|
+
handlers = [];
|
|
12
|
+
staticRoutes = {};
|
|
13
|
+
dynamicRoutes = {};
|
|
14
|
+
}
|
|
15
|
+
const roots = {
|
|
16
|
+
handler: {},
|
|
17
|
+
prefix: {},
|
|
18
|
+
postfix: {},
|
|
19
|
+
websocket: {},
|
|
20
|
+
};
|
|
21
|
+
function findHandlers(path, depth, level, result, parameters, multi = false) {
|
|
22
|
+
if (multi) {
|
|
23
|
+
result.push(...level.handlers.map((handler) => ({ handler: handler.callback, parameters, priority: handler.priority })));
|
|
24
|
+
}
|
|
25
|
+
if (depth >= path.length) {
|
|
26
|
+
if (!multi && level.handlers.length > 0) {
|
|
27
|
+
result.push({ handler: level.handlers[0].callback, parameters, priority: level.handlers[0].priority });
|
|
28
|
+
}
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
const part = path[depth];
|
|
32
|
+
if (part in level.staticRoutes) {
|
|
33
|
+
findHandlers(path, depth + 1, level.staticRoutes[part], result, parameters, multi);
|
|
34
|
+
if (result.length > 0 && !multi) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
for (const { match, sub, mapping } of Object.values(level.dynamicRoutes)) {
|
|
39
|
+
const res = match.exec(part);
|
|
40
|
+
if (res) {
|
|
41
|
+
const newParameters = { ...parameters };
|
|
42
|
+
for (let i = 0; i < mapping.length; ++i) {
|
|
43
|
+
newParameters[mapping[i]] = res[i + 1];
|
|
44
|
+
}
|
|
45
|
+
findHandlers(path, depth + 1, sub, result, newParameters, multi);
|
|
46
|
+
if (result.length > 0 && !multi) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
function getHandler(method, path, source, multi = false) {
|
|
53
|
+
const result = [];
|
|
54
|
+
if (method in source) {
|
|
55
|
+
findHandlers(path, 0, source[method], result, {}, multi);
|
|
56
|
+
if (result.length > 0 && !multi) {
|
|
57
|
+
return result[0];
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
if ('any' in source) {
|
|
61
|
+
findHandlers(path, 0, source.any, result, {}, multi);
|
|
62
|
+
if (result.length > 0 && !multi) {
|
|
63
|
+
return result[0];
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return multi ? result : undefined;
|
|
67
|
+
}
|
|
68
|
+
function removeHandler(id, source) {
|
|
69
|
+
for (const level of Object.values(source)) {
|
|
70
|
+
const handlerLength = level.handlers.length;
|
|
71
|
+
level.handlers = level.handlers.filter((handler) => handler.id !== id);
|
|
72
|
+
if (handlerLength !== level.handlers.length) {
|
|
73
|
+
return true;
|
|
74
|
+
}
|
|
75
|
+
if (removeHandler(id, level.staticRoutes)) {
|
|
76
|
+
return true;
|
|
77
|
+
}
|
|
78
|
+
if (removeHandler(id, Object.keys(level.dynamicRoutes).reduce((acc, key) => ({ ...acc, [key]: level.dynamicRoutes[key].sub }), {}))) {
|
|
79
|
+
return true;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
const special = {
|
|
85
|
+
$: true,
|
|
86
|
+
'-': true,
|
|
87
|
+
_: true,
|
|
88
|
+
'.': true,
|
|
89
|
+
'+': true,
|
|
90
|
+
'!': true,
|
|
91
|
+
' ': true,
|
|
92
|
+
'*': true,
|
|
93
|
+
"'": true,
|
|
94
|
+
'(': true,
|
|
95
|
+
')': true,
|
|
96
|
+
',': true,
|
|
97
|
+
};
|
|
98
|
+
function registerHandler(id, mode, method, location, handler, priority = beta_1.HandlerPriority.NORMAL) {
|
|
99
|
+
const parts = location.split('/').filter((part) => part);
|
|
100
|
+
const source = roots[mode];
|
|
101
|
+
let level = source[method?.toLowerCase() || 'any'];
|
|
102
|
+
if (!level) {
|
|
103
|
+
level = new RouteLevel();
|
|
104
|
+
source[method?.toLowerCase() || 'any'] = level;
|
|
105
|
+
}
|
|
106
|
+
for (const part of parts) {
|
|
107
|
+
if (part.indexOf(':') >= 0) {
|
|
108
|
+
if (!(part in level.dynamicRoutes)) {
|
|
109
|
+
const mapping = [];
|
|
110
|
+
const match = ['^'];
|
|
111
|
+
let word = undefined;
|
|
112
|
+
for (const char of part) {
|
|
113
|
+
if (char in special) {
|
|
114
|
+
if (word) {
|
|
115
|
+
mapping.push(word.join(''));
|
|
116
|
+
match.push(`([^\\${char}]*)`);
|
|
117
|
+
word = undefined;
|
|
118
|
+
}
|
|
119
|
+
match.push('\\' + char);
|
|
120
|
+
}
|
|
121
|
+
else if (char === ':') {
|
|
122
|
+
if (word) {
|
|
123
|
+
throw new Error('Invalid URL parameter');
|
|
124
|
+
}
|
|
125
|
+
word = [];
|
|
126
|
+
}
|
|
127
|
+
else if (char.match(/[a-zA-Z0-9]/)) {
|
|
128
|
+
if (word) {
|
|
129
|
+
word.push(char);
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
match.push(char);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
throw new Error('Invalid character in URL');
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
if (word) {
|
|
140
|
+
mapping.push(word.join(''));
|
|
141
|
+
match.push(`(.*)`);
|
|
142
|
+
}
|
|
143
|
+
match.push('$');
|
|
144
|
+
level.dynamicRoutes[part] = {
|
|
145
|
+
match: new RegExp(match.join('')),
|
|
146
|
+
sub: new RouteLevel(),
|
|
147
|
+
mapping,
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
level = level.dynamicRoutes[part].sub;
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
if (!(part in level.staticRoutes)) {
|
|
154
|
+
level.staticRoutes[part] = new RouteLevel();
|
|
155
|
+
}
|
|
156
|
+
level = level.staticRoutes[part];
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
level.handlers.push({ id, callback: handler, priority });
|
|
160
|
+
}
|
|
161
|
+
function unregisterHandler(id) {
|
|
162
|
+
for (const source of Object.values(roots)) {
|
|
163
|
+
if (removeHandler(id, source)) {
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
function handleResult(isHeadRequest, response, res) {
|
|
169
|
+
if (isHeadRequest) {
|
|
170
|
+
response.sendHeadResponse(res);
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
173
|
+
response.sendResponse(res);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
async function requestListener(req, res, protocol) {
|
|
177
|
+
const url = new URL(req.url || '', `${protocol}://${req.headers.host || 'localhost'}`);
|
|
178
|
+
const requestContext = {
|
|
179
|
+
rawRequest: req,
|
|
180
|
+
rawResponse: res,
|
|
181
|
+
url,
|
|
182
|
+
routeParameters: {},
|
|
183
|
+
response: new beta_1.HTTPResult(404, 'Not Found'),
|
|
184
|
+
};
|
|
185
|
+
const path = url.pathname.split('/').filter((part) => part);
|
|
186
|
+
const method = req.method?.toLowerCase() || 'get';
|
|
187
|
+
const isHeadRequest = method === 'head';
|
|
188
|
+
try {
|
|
189
|
+
let handler = getHandler(method, path, roots.handler, false);
|
|
190
|
+
if (!handler && method === 'head') {
|
|
191
|
+
handler = getHandler('get', path, roots.handler, false);
|
|
192
|
+
}
|
|
193
|
+
if (!handler && method !== 'options') {
|
|
194
|
+
handleResult(isHeadRequest, requestContext.response, res);
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
197
|
+
const prefixHandler = getHandler(method, path, roots.prefix, true);
|
|
198
|
+
if (prefixHandler && Array.isArray(prefixHandler)) {
|
|
199
|
+
prefixHandler.sort((a, b) => a.priority - b.priority);
|
|
200
|
+
for (const { handler, parameters } of prefixHandler) {
|
|
201
|
+
requestContext.routeParameters = parameters;
|
|
202
|
+
const result = await handler(requestContext);
|
|
203
|
+
if (result) {
|
|
204
|
+
handleResult(isHeadRequest, beta_1.HTTPResult.withHeaders(result, requestContext.response.getHeaders(), 200), res);
|
|
205
|
+
return;
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
if (!handler && method === 'options') {
|
|
210
|
+
handleResult(isHeadRequest, requestContext.response, res);
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
if (handler && !Array.isArray(handler)) {
|
|
214
|
+
requestContext.routeParameters = handler.parameters;
|
|
215
|
+
const result = await handler.handler(requestContext);
|
|
216
|
+
if (!requestContext.response.isStream()) {
|
|
217
|
+
if (result) {
|
|
218
|
+
requestContext.response = beta_1.HTTPResult.withHeaders(result, requestContext.response.getHeaders(), 200);
|
|
219
|
+
}
|
|
220
|
+
else {
|
|
221
|
+
requestContext.response = beta_1.HTTPResult.withHeaders('', requestContext.response.getHeaders(), 200);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
const postfixHandler = getHandler(method, path, roots.postfix, true);
|
|
226
|
+
if (postfixHandler && Array.isArray(postfixHandler)) {
|
|
227
|
+
postfixHandler.sort((a, b) => a.priority - b.priority);
|
|
228
|
+
for (const { handler, parameters } of postfixHandler) {
|
|
229
|
+
requestContext.routeParameters = parameters;
|
|
230
|
+
const result = await handler(requestContext);
|
|
231
|
+
if (result) {
|
|
232
|
+
handleResult(isHeadRequest, beta_1.HTTPResult.withHeaders(result, requestContext.response.getHeaders(), 200), res);
|
|
233
|
+
return;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
handleResult(isHeadRequest, requestContext.response, res);
|
|
238
|
+
}
|
|
239
|
+
catch (err) {
|
|
240
|
+
handleResult(isHeadRequest, beta_1.HTTPResult.withHeaders(err.message || err, requestContext.response.getHeaders(), 500), res);
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
const wss = new ws_1.WebSocketServer({ noServer: true });
|
|
244
|
+
const upgrader = (req, socket, head) => new Promise((resolve) => wss.handleUpgrade(req, socket, head, resolve));
|
|
245
|
+
async function upgradeListener(req, socket, head, protocol) {
|
|
246
|
+
const res = new http_1.ServerResponse(req);
|
|
247
|
+
const url = new URL(req.url || '', `${protocol}://${req.headers.host || 'localhost'}`);
|
|
248
|
+
const requestContext = {
|
|
249
|
+
rawRequest: req,
|
|
250
|
+
rawResponse: res,
|
|
251
|
+
url,
|
|
252
|
+
routeParameters: {},
|
|
253
|
+
response: new beta_1.HTTPResult(404, 'Not Found'),
|
|
254
|
+
};
|
|
255
|
+
const path = url.pathname.split('/').filter((part) => part);
|
|
256
|
+
const method = req.method?.toLowerCase() || 'get';
|
|
257
|
+
try {
|
|
258
|
+
const handler = getHandler(method, path, roots.websocket, false);
|
|
259
|
+
if (!handler) {
|
|
260
|
+
handleResult(false, requestContext.response, res);
|
|
261
|
+
socket.destroy();
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
264
|
+
const prefixHandler = getHandler(method, path, roots.prefix, true);
|
|
265
|
+
if (prefixHandler && Array.isArray(prefixHandler)) {
|
|
266
|
+
prefixHandler.sort((a, b) => a.priority - b.priority);
|
|
267
|
+
for (const { handler, parameters } of prefixHandler) {
|
|
268
|
+
requestContext.routeParameters = parameters;
|
|
269
|
+
const result = await handler(requestContext);
|
|
270
|
+
if (result) {
|
|
271
|
+
handleResult(false, beta_1.HTTPResult.withHeaders(result, requestContext.response.getHeaders(), 200), res);
|
|
272
|
+
socket.destroy();
|
|
273
|
+
return;
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
if (handler && !Array.isArray(handler)) {
|
|
278
|
+
requestContext.connection = await upgrader(req, socket, head);
|
|
279
|
+
requestContext.routeParameters = handler.parameters;
|
|
280
|
+
await handler.handler(requestContext);
|
|
281
|
+
}
|
|
282
|
+
else {
|
|
283
|
+
socket.destroy();
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
catch (err) {
|
|
287
|
+
handleResult(false, beta_1.HTTPResult.withHeaders(err, requestContext.response.getHeaders(), 500), res);
|
|
288
|
+
socket.destroy();
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
//# sourceMappingURL=server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";;AA0IA,0CAgEC;AAED,8CAMC;AAUD,0CA2EC;AAMD,0CAoDC;AAjWD,8CAAkE;AAClE,+BAAuD;AAEvD,2BAAgD;AAkBhD,MAAM,UAAU;IACd,QAAQ,GAAgC,EAAE,CAAC;IAC3C,YAAY,GAA+B,EAAE,CAAC;IAC9C,aAAa,GAA0E,EAAE,CAAC;CAC3F;AAED,MAAM,KAAK,GAA+C;IACxD,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE;CACd,CAAC;AAGF,SAAS,YAAY,CACnB,IAAc,EACd,KAAa,EACb,KAAiB,EACjB,MAA4B,EAC5B,UAAkC,EAClC,KAAK,GAAG,KAAK;IAEb,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,CAAC,IAAI,CACT,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAC5G,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzG,CAAC;QACD,OAAO;IACT,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;IACzB,IAAI,IAAI,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QAC/B,YAAY,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;QACnF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChC,OAAO;QACT,CAAC;IACH,CAAC;IACD,KAAK,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;QACzE,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,aAAa,GAAG,EAAE,GAAG,UAAU,EAAE,CAAC;YACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;gBACxC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACzC,CAAC;YACD,YAAY,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;YACjE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBAChC,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,MAAc,EAAE,IAAc,EAAE,MAAkC,EAAE,KAAK,GAAG,KAAK;IACnG,MAAM,MAAM,GAAyB,EAAE,CAAC;IAExC,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;QACrB,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QACzD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;QACpB,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QACrD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACpC,CAAC;AAED,SAAS,aAAa,CAAC,EAAU,EAAE,MAAkC;IACnE,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1C,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC5C,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAEvE,IAAI,aAAa,KAAK,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IACE,aAAa,CACX,EAAE,EACF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,MAAM,CACrC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAC/D,EAAgC,CACjC,CACF,EACD,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,OAAO,GAAG;IACd,CAAC,EAAE,IAAI;IACP,GAAG,EAAE,IAAI;IACT,CAAC,EAAE,IAAI;IACP,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,IAAI;CACV,CAAC;AACF,SAAgB,eAAe,CAC7B,EAAU,EACV,IAAoD,EACpD,MAA0B,EAC1B,QAAgB,EAChB,OAAsB,EACtB,QAAQ,GAAG,sBAAe,CAAC,MAAM;IAEjC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,KAAK,CAAC,CAAC;IACnD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,KAAK,GAAG,IAAI,UAAU,EAAE,CAAC;QACzB,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,KAAK,CAAC,GAAG,KAAK,CAAC;IACjD,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;gBACnC,MAAM,OAAO,GAAG,EAAE,CAAC;gBACnB,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;gBACpB,IAAI,IAAI,GAAyB,SAAS,CAAC;gBAC3C,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;oBACxB,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC;wBACpB,IAAI,IAAI,EAAE,CAAC;4BACT,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;4BAC5B,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC;4BAC9B,IAAI,GAAG,SAAS,CAAC;wBACnB,CAAC;wBACD,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;oBAC1B,CAAC;yBAAM,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;wBACxB,IAAI,IAAI,EAAE,CAAC;4BACT,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;wBAC3C,CAAC;wBACD,IAAI,GAAG,EAAE,CAAC;oBACZ,CAAC;yBAAM,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;wBACrC,IAAI,IAAI,EAAE,CAAC;4BACT,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAClB,CAAC;6BAAM,CAAC;4BACN,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACnB,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;oBAC9C,CAAC;gBACH,CAAC;gBACD,IAAI,IAAI,EAAE,CAAC;oBACT,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC5B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrB,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAChB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG;oBAC1B,KAAK,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACjC,GAAG,EAAE,IAAI,UAAU,EAAE;oBACrB,OAAO;iBACR,CAAC;YACJ,CAAC;YACD,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,UAAU,EAAE,CAAC;YAC9C,CAAC;YACD,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IACD,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,SAAgB,iBAAiB,CAAC,EAAU;IAC1C,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1C,IAAI,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,aAAsB,EAAE,QAAoB,EAAE,GAAmB;IACrF,IAAI,aAAa,EAAE,CAAC;QAClB,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,eAAe,CAAC,GAAoB,EAAE,GAAmB,EAAE,QAA0B;IACzG,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,QAAQ,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC,CAAC;IACvF,MAAM,cAAc,GAAmB;QACrC,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,GAAG;QAChB,GAAG;QACH,eAAe,EAAE,EAAE;QACnB,QAAQ,EAAE,IAAI,iBAAU,CAAC,GAAG,EAAE,WAAW,CAAC;KAC3C,CAAC;IAEF,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,KAAK,CAAC;IAClD,MAAM,aAAa,GAAG,MAAM,KAAK,MAAM,CAAC;IAExC,IAAI,CAAC;QACH,IAAI,OAAO,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,OAAO,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YAClC,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,CAAC,OAAO,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACrC,YAAY,CAAC,aAAa,EAAE,cAAc,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAC1D,OAAO;QACT,CAAC;QAED,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACnE,IAAI,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YAClD,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;YACtD,KAAK,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,aAAa,EAAE,CAAC;gBACpD,cAAc,CAAC,eAAe,GAAG,UAAU,CAAC;gBAC5C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;gBAC7C,IAAI,MAAM,EAAE,CAAC;oBACX,YAAY,CAAC,aAAa,EAAE,iBAAU,CAAC,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;oBAC5G,OAAO;gBACT,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,OAAO,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACrC,YAAY,CAAC,aAAa,EAAE,cAAc,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAC1D,OAAO;QACT,CAAC;QAED,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,cAAc,CAAC,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;YACpD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YACrD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACxC,IAAI,MAAM,EAAE,CAAC;oBACX,cAAc,CAAC,QAAQ,GAAG,iBAAU,CAAC,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,CAAC;gBACtG,CAAC;qBAAM,CAAC;oBACN,cAAc,CAAC,QAAQ,GAAG,iBAAU,CAAC,WAAW,CAAC,EAAE,EAAE,cAAc,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,CAAC;gBAClG,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACrE,IAAI,cAAc,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YACpD,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;YACvD,KAAK,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,cAAc,EAAE,CAAC;gBACrD,cAAc,CAAC,eAAe,GAAG,UAAU,CAAC;gBAC5C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;gBAC7C,IAAI,MAAM,EAAE,CAAC;oBACX,YAAY,CAAC,aAAa,EAAE,iBAAU,CAAC,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;oBAC5G,OAAO;gBACT,CAAC;YACH,CAAC;QACH,CAAC;QAED,YAAY,CAAC,aAAa,EAAE,cAAc,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC5D,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,YAAY,CACV,aAAa,EACb,iBAAU,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,EAAE,cAAc,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,EACrF,GAAG,CACJ,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,GAAG,GAAG,IAAI,oBAAe,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AACpD,MAAM,QAAQ,GAAG,CAAC,GAAoB,EAAE,MAAqB,EAAE,IAAY,EAAE,EAAE,CAC7E,IAAI,OAAO,CAAY,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;AAE9E,KAAK,UAAU,eAAe,CACnC,GAAoB,EACpB,MAAqB,EACrB,IAAY,EACZ,QAAsB;IAEtB,MAAM,GAAG,GAAG,IAAI,qBAAc,CAAC,GAAG,CAAC,CAAC;IACpC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,QAAQ,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC,CAAC;IACvF,MAAM,cAAc,GAAmB;QACrC,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,GAAG;QAChB,GAAG;QACH,eAAe,EAAE,EAAE;QACnB,QAAQ,EAAE,IAAI,iBAAU,CAAC,GAAG,EAAE,WAAW,CAAC;KAC3C,CAAC;IAEF,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,KAAK,CAAC;IAElD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACjE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,YAAY,CAAC,KAAK,EAAE,cAAc,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAClD,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACnE,IAAI,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YAClD,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;YACtD,KAAK,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,aAAa,EAAE,CAAC;gBACpD,cAAc,CAAC,eAAe,GAAG,UAAU,CAAC;gBAC5C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;gBAC7C,IAAI,MAAM,EAAE,CAAC;oBACX,YAAY,CAAC,KAAK,EAAE,iBAAU,CAAC,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;oBACpG,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjB,OAAO;gBACT,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,cAAc,CAAC,UAAU,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;YAC9D,cAAc,CAAC,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;YACpD,MAAM,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,YAAY,CAAC,KAAK,EAAE,iBAAU,CAAC,WAAW,CAAC,GAAG,EAAE,cAAc,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;QACjG,MAAM,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { HTTPResult, RequestContext } from '@ajs/api/beta';
|
|
2
|
+
import { PassThrough } from 'stream';
|
|
3
|
+
import WebSocket from 'ws';
|
|
4
|
+
declare const TestRoutingController0_base: import("@ajs/api/beta").ControllerClass<object>;
|
|
5
|
+
export declare class TestRoutingController0 extends TestRoutingController0_base {
|
|
6
|
+
test(): void;
|
|
7
|
+
testPrefixHigh(): void;
|
|
8
|
+
testPrefixLow(): void;
|
|
9
|
+
testPriority(): void;
|
|
10
|
+
testPostfixHigh(): void;
|
|
11
|
+
testPostfixLow(): void;
|
|
12
|
+
testPrefixEarlyReturn(): string;
|
|
13
|
+
testEarlyReturn(): string;
|
|
14
|
+
testOverride(): string;
|
|
15
|
+
testPostfixOverride(): string;
|
|
16
|
+
}
|
|
17
|
+
declare const TestRoutingController1_base: import("@ajs/api/beta").ControllerClass<object>;
|
|
18
|
+
export declare class TestRoutingController1 extends TestRoutingController1_base {
|
|
19
|
+
test(): string;
|
|
20
|
+
testPost(): string;
|
|
21
|
+
testPut(): string;
|
|
22
|
+
testDelete(): string;
|
|
23
|
+
testCustom(): string;
|
|
24
|
+
}
|
|
25
|
+
declare const TestRoutingController2_base: typeof TestRoutingController1;
|
|
26
|
+
export declare class TestRoutingController2 extends TestRoutingController2_base {
|
|
27
|
+
test(): string;
|
|
28
|
+
}
|
|
29
|
+
declare const TestRoutingController3_base: import("@ajs/api/beta").ControllerClass<object>;
|
|
30
|
+
export declare class TestRoutingController3 extends TestRoutingController3_base {
|
|
31
|
+
test(): void;
|
|
32
|
+
}
|
|
33
|
+
declare const TestExecutionController1_base: import("@ajs/api/beta").ControllerClass<object>;
|
|
34
|
+
export declare class TestExecutionController1 extends TestExecutionController1_base {
|
|
35
|
+
prop: string;
|
|
36
|
+
testProperty(): string;
|
|
37
|
+
testParameter(param: string): string;
|
|
38
|
+
}
|
|
39
|
+
declare const TestExecutionController2_base: import("@ajs/api/beta").ControllerClass<object>;
|
|
40
|
+
export declare class TestExecutionController2 extends TestExecutionController2_base {
|
|
41
|
+
testProviderContext(_ctx: RequestContext): void;
|
|
42
|
+
testProviderRawBody(_body: Buffer): void;
|
|
43
|
+
testProviderParameterParam(_param: string): void;
|
|
44
|
+
testProviderParameterHeader(_param: string): void;
|
|
45
|
+
testProviderParameterQuery(_param: string): void;
|
|
46
|
+
testProviderMultiParameterHeader(_params: string[]): void;
|
|
47
|
+
testProviderMultiParameterQuery(_params: string[]): void;
|
|
48
|
+
testProviderWriteStream(param: PassThrough): void;
|
|
49
|
+
testProviderResult(): string;
|
|
50
|
+
testProviderResultPostfix(_res: string): void;
|
|
51
|
+
testModifierTransform(_param: string): void;
|
|
52
|
+
}
|
|
53
|
+
declare const TestExecutionController3_base: import("@ajs/api/beta").ControllerClass<object>;
|
|
54
|
+
export declare class TestExecutionController3 extends TestExecutionController3_base {
|
|
55
|
+
test(): HTTPResult;
|
|
56
|
+
testThrow(): void;
|
|
57
|
+
testStatus(): HTTPResult;
|
|
58
|
+
testHeader(): HTTPResult;
|
|
59
|
+
testBody(): HTTPResult;
|
|
60
|
+
testConsistencyPrefix(res: HTTPResult): void;
|
|
61
|
+
testConsistency(res: HTTPResult): HTTPResult;
|
|
62
|
+
testConsistencyPostfix(res: HTTPResult): void;
|
|
63
|
+
testControllerInstance(ctx: RequestContext): Promise<string>;
|
|
64
|
+
}
|
|
65
|
+
declare const TestWebsocketController1_base: import("@ajs/api/beta").ControllerClass<object>;
|
|
66
|
+
export declare class TestWebsocketController1 extends TestWebsocketController1_base {
|
|
67
|
+
test(connection: WebSocket): void;
|
|
68
|
+
}
|
|
69
|
+
export {};
|