@typetron/framework 0.4.0-rc1 → 0.4.0-rc13

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 (296) hide show
  1. package/.eslintrc-old.js +208 -0
  2. package/Database/Drivers/SQLite/SqliteDriver.d.ts.map +1 -1
  3. package/Database/Drivers/SQLite/SqliteDriver.js +4 -1
  4. package/Database/Drivers/SQLite/SqliteDriver.js.map +1 -1
  5. package/Database/Entity.d.ts +1 -1
  6. package/Database/Entity.d.ts.map +1 -1
  7. package/Database/Entity.js +1 -1
  8. package/Database/Entity.js.map +1 -1
  9. package/Database/List.d.ts +1 -1
  10. package/Database/index.d.ts.map +1 -1
  11. package/Encryption/index.js +1 -1
  12. package/Encryption/index.js.map +1 -1
  13. package/Framework/Application.d.ts +0 -1
  14. package/Framework/Application.d.ts.map +1 -1
  15. package/Framework/Application.js +1 -3
  16. package/Framework/Application.js.map +1 -1
  17. package/Framework/Auth/Auth.d.ts +1 -1
  18. package/Framework/Auth/Auth.d.ts.map +1 -1
  19. package/Framework/Auth/Auth.js +5 -1
  20. package/Framework/Auth/Auth.js.map +1 -1
  21. package/Framework/Auth/index.d.ts +1 -1
  22. package/Framework/Auth/index.d.ts.map +1 -1
  23. package/Framework/Auth/index.js +3 -9
  24. package/Framework/Auth/index.js.map +1 -1
  25. package/Framework/Config/AppConfig.d.ts +8 -2
  26. package/Framework/Config/AppConfig.d.ts.map +1 -1
  27. package/Framework/Config/AppConfig.js +5 -0
  28. package/Framework/Config/AppConfig.js.map +1 -1
  29. package/Framework/Middleware/AuthMiddleware.d.ts +3 -2
  30. package/Framework/Middleware/AuthMiddleware.d.ts.map +1 -1
  31. package/Framework/Middleware/AuthMiddleware.js.map +1 -1
  32. package/Framework/Middleware/CorsMiddleware.d.ts +3 -2
  33. package/Framework/Middleware/CorsMiddleware.d.ts.map +1 -1
  34. package/Framework/Middleware/CorsMiddleware.js +3 -2
  35. package/Framework/Middleware/CorsMiddleware.js.map +1 -1
  36. package/Framework/Middleware/StaticAssetsMiddleware.d.ts +3 -2
  37. package/Framework/Middleware/StaticAssetsMiddleware.d.ts.map +1 -1
  38. package/Framework/Middleware/StaticAssetsMiddleware.js +5 -2
  39. package/Framework/Middleware/StaticAssetsMiddleware.js.map +1 -1
  40. package/Framework/Providers/WebsocketsProvider.d.ts +1 -1
  41. package/Framework/Providers/WebsocketsProvider.d.ts.map +1 -1
  42. package/Framework/Providers/WebsocketsProvider.js +12 -8
  43. package/Framework/Providers/WebsocketsProvider.js.map +1 -1
  44. package/Framework/Resolvers/AuthResolver.d.ts.map +1 -1
  45. package/Framework/Resolvers/AuthResolver.js +5 -1
  46. package/Framework/Resolvers/AuthResolver.js.map +1 -1
  47. package/Framework/Resolvers/EntityResolver.js +2 -2
  48. package/Framework/Resolvers/EntityResolver.js.map +1 -1
  49. package/Framework/Resolvers/FormResolver.d.ts.map +1 -1
  50. package/Framework/Resolvers/FormResolver.js +2 -1
  51. package/Framework/Resolvers/FormResolver.js.map +1 -1
  52. package/Router/Decorators.d.ts +4 -7
  53. package/Router/Decorators.d.ts.map +1 -1
  54. package/Router/Decorators.js +45 -40
  55. package/Router/Decorators.js.map +1 -1
  56. package/Router/Http/Handler.d.ts +6 -3
  57. package/Router/Http/Handler.d.ts.map +1 -1
  58. package/Router/Http/Handler.js +45 -14
  59. package/Router/Http/Handler.js.map +1 -1
  60. package/Router/Http/HttpRoute.d.ts +25 -0
  61. package/Router/Http/HttpRoute.d.ts.map +1 -0
  62. package/Router/Http/HttpRoute.js +89 -0
  63. package/Router/Http/HttpRoute.js.map +1 -0
  64. package/Router/Http/Middleware.d.ts +7 -0
  65. package/Router/Http/Middleware.d.ts.map +1 -0
  66. package/Router/Http/Middleware.js +8 -0
  67. package/Router/Http/Middleware.js.map +1 -0
  68. package/Router/Http/Request.d.ts +21 -10
  69. package/Router/Http/Request.d.ts.map +1 -1
  70. package/Router/Http/Request.js +69 -59
  71. package/Router/Http/Request.js.map +1 -1
  72. package/Router/Http/Response.d.ts +1 -5
  73. package/Router/Http/Response.d.ts.map +1 -1
  74. package/Router/Http/Response.js +0 -15
  75. package/Router/Http/Response.js.map +1 -1
  76. package/Router/Metadata.d.ts +15 -6
  77. package/Router/Metadata.d.ts.map +1 -1
  78. package/Router/Metadata.js +12 -5
  79. package/Router/Metadata.js.map +1 -1
  80. package/Router/Middleware.d.ts +9 -2
  81. package/Router/Middleware.d.ts.map +1 -1
  82. package/Router/Middleware.js +4 -0
  83. package/Router/Middleware.js.map +1 -1
  84. package/Router/Request.d.ts +24 -0
  85. package/Router/Request.d.ts.map +1 -0
  86. package/Router/Request.js +43 -0
  87. package/Router/Request.js.map +1 -0
  88. package/Router/Route.d.ts +8 -19
  89. package/Router/Route.d.ts.map +1 -1
  90. package/Router/Route.js +3 -99
  91. package/Router/Route.js.map +1 -1
  92. package/Router/Router.d.ts +12 -6
  93. package/Router/Router.d.ts.map +1 -1
  94. package/Router/Router.js +6 -2
  95. package/Router/Router.js.map +1 -1
  96. package/Router/Servers/node.d.ts.map +1 -1
  97. package/Router/Servers/node.js +29 -2
  98. package/Router/Servers/node.js.map +1 -1
  99. package/Router/Servers/uNetworking.d.ts.map +1 -1
  100. package/Router/Servers/uNetworking.js +140 -14
  101. package/Router/Servers/uNetworking.js.map +1 -1
  102. package/Router/Websockets/Handler.d.ts +8 -6
  103. package/Router/Websockets/Handler.d.ts.map +1 -1
  104. package/Router/Websockets/Handler.js +19 -13
  105. package/Router/Websockets/Handler.js.map +1 -1
  106. package/Router/Websockets/Middleware.d.ts +7 -0
  107. package/Router/Websockets/Middleware.d.ts.map +1 -0
  108. package/Router/Websockets/Middleware.js +8 -0
  109. package/Router/Websockets/Middleware.js.map +1 -0
  110. package/Router/Websockets/Request.d.ts +4 -0
  111. package/Router/Websockets/Request.d.ts.map +1 -0
  112. package/Router/Websockets/Request.js +8 -0
  113. package/Router/Websockets/Request.js.map +1 -0
  114. package/Router/Websockets/WebsocketRoute.d.ts +7 -0
  115. package/Router/Websockets/WebsocketRoute.d.ts.map +1 -0
  116. package/Router/Websockets/{WebsocketEvent.js → WebsocketRoute.js} +8 -15
  117. package/Router/Websockets/WebsocketRoute.js.map +1 -0
  118. package/Router/Websockets/index.d.ts +3 -3
  119. package/Router/Websockets/index.d.ts.map +1 -1
  120. package/Router/Websockets/index.js +7 -7
  121. package/Router/Websockets/index.js.map +1 -1
  122. package/Router/Websockets/types.d.ts +6 -6
  123. package/Router/Websockets/types.d.ts.map +1 -1
  124. package/Storage/Storage.d.ts.map +1 -1
  125. package/Storage/Storage.js +4 -3
  126. package/Storage/Storage.js.map +1 -1
  127. package/Support/Array.js +2 -2
  128. package/Support/Array.js.map +1 -1
  129. package/Support/index.d.ts +1 -0
  130. package/Support/index.d.ts.map +1 -1
  131. package/Testing/TestCase.d.ts +5 -4
  132. package/Testing/TestCase.d.ts.map +1 -1
  133. package/Testing/TestCase.js +19 -11
  134. package/Testing/TestCase.js.map +1 -1
  135. package/Validation/RuleInterface.d.ts +1 -1
  136. package/Validation/RuleInterface.d.ts.map +1 -1
  137. package/Validation/Rules/FileExtension.js +2 -2
  138. package/Validation/Rules/FileExtension.js.map +1 -1
  139. package/Validation/Rules/Optional.js +1 -1
  140. package/Validation/Rules/Optional.js.map +1 -1
  141. package/Validation/index.d.ts +1 -0
  142. package/Validation/index.d.ts.map +1 -1
  143. package/Validation/index.js +1 -0
  144. package/Validation/index.js.map +1 -1
  145. package/benchmark-index.js +20 -0
  146. package/benchmark.ts +47 -0
  147. package/package.json +6 -6
  148. package/types.d.ts +8 -0
  149. package/Frontend/Angular/index.d.ts +0 -8
  150. package/Frontend/Angular/index.d.ts.map +0 -1
  151. package/Frontend/Angular/index.js +0 -20
  152. package/Frontend/Angular/index.js.map +0 -1
  153. package/Frontend/Websockets/index.js +0 -76
  154. package/Frontend/Websockets/index.js.map +0 -1
  155. package/Router/Websockets/WebsocketEvent.d.ts +0 -16
  156. package/Router/Websockets/WebsocketEvent.d.ts.map +0 -1
  157. package/Router/Websockets/WebsocketEvent.js.map +0 -1
  158. package/Router/micro.d.ts +0 -3
  159. package/Router/micro.d.ts.map +0 -1
  160. package/Router/micro.js +0 -44
  161. package/Router/micro.js.map +0 -1
  162. package/benchmark-index.js.map +0 -1
  163. package/benchmark.js.map +0 -1
  164. package/index.d.ts +0 -2
  165. package/index.d.ts.map +0 -1
  166. package/index.js +0 -41
  167. package/index.js.map +0 -1
  168. package/test.js.map +0 -1
  169. package/tests/Cache/DatabaseStoreTest.d.ts +0 -2
  170. package/tests/Cache/DatabaseStoreTest.d.ts.map +0 -1
  171. package/tests/Cache/DatabaseStoreTest.js +0 -137
  172. package/tests/Cache/DatabaseStoreTest.js.map +0 -1
  173. package/tests/Cache/FileStoreTest.d.ts +0 -2
  174. package/tests/Cache/FileStoreTest.d.ts.map +0 -1
  175. package/tests/Cache/FileStoreTest.js +0 -142
  176. package/tests/Cache/FileStoreTest.js.map +0 -1
  177. package/tests/Cache/MemoryStoreTest.d.ts +0 -2
  178. package/tests/Cache/MemoryStoreTest.d.ts.map +0 -1
  179. package/tests/Cache/MemoryStoreTest.js +0 -141
  180. package/tests/Cache/MemoryStoreTest.js.map +0 -1
  181. package/tests/Container/ContainerTest.d.ts +0 -2
  182. package/tests/Container/ContainerTest.d.ts.map +0 -1
  183. package/tests/Container/ContainerTest.js +0 -396
  184. package/tests/Container/ContainerTest.js.map +0 -1
  185. package/tests/Database/Drivers/MySQL/AlterTest.d.ts +0 -2
  186. package/tests/Database/Drivers/MySQL/AlterTest.d.ts.map +0 -1
  187. package/tests/Database/Drivers/MySQL/AlterTest.js +0 -144
  188. package/tests/Database/Drivers/MySQL/AlterTest.js.map +0 -1
  189. package/tests/Database/Drivers/MySQL/CreateTest.d.ts +0 -2
  190. package/tests/Database/Drivers/MySQL/CreateTest.d.ts.map +0 -1
  191. package/tests/Database/Drivers/MySQL/CreateTest.js +0 -64
  192. package/tests/Database/Drivers/MySQL/CreateTest.js.map +0 -1
  193. package/tests/Database/Drivers/MysqlDriverTest.d.ts +0 -2
  194. package/tests/Database/Drivers/MysqlDriverTest.d.ts.map +0 -1
  195. package/tests/Database/Drivers/MysqlDriverTest.js +0 -174
  196. package/tests/Database/Drivers/MysqlDriverTest.js.map +0 -1
  197. package/tests/Database/Drivers/SqliteDriverTest.d.ts +0 -2
  198. package/tests/Database/Drivers/SqliteDriverTest.d.ts.map +0 -1
  199. package/tests/Database/Drivers/SqliteDriverTest.js +0 -156
  200. package/tests/Database/Drivers/SqliteDriverTest.js.map +0 -1
  201. package/tests/Database/Entities/Article.d.ts +0 -11
  202. package/tests/Database/Entities/Article.d.ts.map +0 -1
  203. package/tests/Database/Entities/Article.js +0 -43
  204. package/tests/Database/Entities/Article.js.map +0 -1
  205. package/tests/Database/Entities/Profile.d.ts +0 -11
  206. package/tests/Database/Entities/Profile.d.ts.map +0 -1
  207. package/tests/Database/Entities/Profile.js +0 -39
  208. package/tests/Database/Entities/Profile.js.map +0 -1
  209. package/tests/Database/Entities/Role.d.ts +0 -9
  210. package/tests/Database/Entities/Role.d.ts.map +0 -1
  211. package/tests/Database/Entities/Role.js +0 -31
  212. package/tests/Database/Entities/Role.js.map +0 -1
  213. package/tests/Database/Entities/User.d.ts +0 -16
  214. package/tests/Database/Entities/User.d.ts.map +0 -1
  215. package/tests/Database/Entities/User.js +0 -58
  216. package/tests/Database/Entities/User.js.map +0 -1
  217. package/tests/Database/EntityRelationshipsTest.d.ts +0 -2
  218. package/tests/Database/EntityRelationshipsTest.d.ts.map +0 -1
  219. package/tests/Database/EntityRelationshipsTest.js +0 -548
  220. package/tests/Database/EntityRelationshipsTest.js.map +0 -1
  221. package/tests/Database/EntityTest.d.ts +0 -2
  222. package/tests/Database/EntityTest.d.ts.map +0 -1
  223. package/tests/Database/EntityTest.js +0 -234
  224. package/tests/Database/EntityTest.js.map +0 -1
  225. package/tests/Database/Migrations/RunnerTest.d.ts +0 -2
  226. package/tests/Database/Migrations/RunnerTest.d.ts.map +0 -1
  227. package/tests/Database/Migrations/RunnerTest.js +0 -112
  228. package/tests/Database/Migrations/RunnerTest.js.map +0 -1
  229. package/tests/Database/Migrations/migrations/1.createUserTable.d.ts +0 -6
  230. package/tests/Database/Migrations/migrations/1.createUserTable.d.ts.map +0 -1
  231. package/tests/Database/Migrations/migrations/1.createUserTable.js +0 -14
  232. package/tests/Database/Migrations/migrations/1.createUserTable.js.map +0 -1
  233. package/tests/Database/Migrations/migrations/2.createArticlesTable.d.ts +0 -6
  234. package/tests/Database/Migrations/migrations/2.createArticlesTable.d.ts.map +0 -1
  235. package/tests/Database/Migrations/migrations/2.createArticlesTable.js +0 -14
  236. package/tests/Database/Migrations/migrations/2.createArticlesTable.js.map +0 -1
  237. package/tests/Database/QueryTest.d.ts +0 -2
  238. package/tests/Database/QueryTest.d.ts.map +0 -1
  239. package/tests/Database/QueryTest.js +0 -623
  240. package/tests/Database/QueryTest.js.map +0 -1
  241. package/tests/Database/SchemaTest.d.ts +0 -2
  242. package/tests/Database/SchemaTest.d.ts.map +0 -1
  243. package/tests/Database/SchemaTest.js +0 -46
  244. package/tests/Database/SchemaTest.js.map +0 -1
  245. package/tests/Database/Seeders/RunnerTest.d.ts +0 -2
  246. package/tests/Database/Seeders/RunnerTest.d.ts.map +0 -1
  247. package/tests/Database/Seeders/RunnerTest.js +0 -44
  248. package/tests/Database/Seeders/RunnerTest.js.map +0 -1
  249. package/tests/Database/Seeders/seeders/RandomSeeder.d.ts +0 -5
  250. package/tests/Database/Seeders/seeders/RandomSeeder.d.ts.map +0 -1
  251. package/tests/Database/Seeders/seeders/RandomSeeder.js +0 -14
  252. package/tests/Database/Seeders/seeders/RandomSeeder.js.map +0 -1
  253. package/tests/Database/utils.d.ts +0 -6
  254. package/tests/Database/utils.d.ts.map +0 -1
  255. package/tests/Database/utils.js +0 -19
  256. package/tests/Database/utils.js.map +0 -1
  257. package/tests/Forms/FormsTest.d.ts +0 -2
  258. package/tests/Forms/FormsTest.d.ts.map +0 -1
  259. package/tests/Forms/FormsTest.js +0 -80
  260. package/tests/Forms/FormsTest.js.map +0 -1
  261. package/tests/Framework/Middleware/StaticAssetsMiddlewareTest.d.ts +0 -2
  262. package/tests/Framework/Middleware/StaticAssetsMiddlewareTest.d.ts.map +0 -1
  263. package/tests/Framework/Middleware/StaticAssetsMiddlewareTest.js +0 -166
  264. package/tests/Framework/Middleware/StaticAssetsMiddlewareTest.js.map +0 -1
  265. package/tests/Framework/Resolvers/EntityResolverTest.d.ts +0 -2
  266. package/tests/Framework/Resolvers/EntityResolverTest.d.ts.map +0 -1
  267. package/tests/Framework/Resolvers/EntityResolverTest.js +0 -60
  268. package/tests/Framework/Resolvers/EntityResolverTest.js.map +0 -1
  269. package/tests/Mail/MailerTest.d.ts +0 -2
  270. package/tests/Mail/MailerTest.d.ts.map +0 -1
  271. package/tests/Mail/MailerTest.js +0 -98
  272. package/tests/Mail/MailerTest.js.map +0 -1
  273. package/tests/Model/ModelTest.d.ts +0 -2
  274. package/tests/Model/ModelTest.d.ts.map +0 -1
  275. package/tests/Model/ModelTest.js +0 -234
  276. package/tests/Model/ModelTest.js.map +0 -1
  277. package/tests/Router/HttpHandlerTest.d.ts +0 -2
  278. package/tests/Router/HttpHandlerTest.d.ts.map +0 -1
  279. package/tests/Router/HttpHandlerTest.js +0 -37
  280. package/tests/Router/HttpHandlerTest.js.map +0 -1
  281. package/tests/Router/WebSocketsHandlerTest.d.ts +0 -2
  282. package/tests/Router/WebSocketsHandlerTest.d.ts.map +0 -1
  283. package/tests/Router/WebSocketsHandlerTest.js +0 -36
  284. package/tests/Router/WebSocketsHandlerTest.js.map +0 -1
  285. package/tests/Support/ArrayTest.d.ts +0 -2
  286. package/tests/Support/ArrayTest.d.ts.map +0 -1
  287. package/tests/Support/ArrayTest.js +0 -259
  288. package/tests/Support/ArrayTest.js.map +0 -1
  289. package/tests/Support/StringTest.d.ts +0 -2
  290. package/tests/Support/StringTest.d.ts.map +0 -1
  291. package/tests/Support/StringTest.js +0 -39
  292. package/tests/Support/StringTest.js.map +0 -1
  293. package/tests/Validation/RulesTest.d.ts +0 -2
  294. package/tests/Validation/RulesTest.d.ts.map +0 -1
  295. package/tests/Validation/RulesTest.js +0 -68
  296. package/tests/Validation/RulesTest.js.map +0 -1
@@ -1,33 +1,159 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
2
24
  Object.defineProperty(exports, "__esModule", { value: true });
3
25
  exports.uNetworkingServer = void 0;
4
26
  const uWebSockets_js_1 = require("uWebSockets.js");
5
27
  const Http_1 = require("@Typetron/Router/Http");
28
+ const buffer_1 = require("buffer");
29
+ const console = __importStar(require("console"));
30
+ const busboy_1 = __importDefault(require("busboy"));
31
+ const Storage_1 = require("@Typetron/Storage");
32
+ const os_1 = __importDefault(require("os"));
33
+ const fs_1 = __importDefault(require("fs"));
34
+ async function handleRequest(serverResponse, serverRequest, handler) {
35
+ serverResponse.onAborted(() => {
36
+ console.log('uNetworking response aborted ->', serverResponse);
37
+ });
38
+ try {
39
+ const request = new Http_1.Request(serverRequest.getUrl(), serverRequest.getMethod(), serverRequest.getQuery());
40
+ const headers = {};
41
+ serverRequest.forEach((name, value) => headers[name] = value);
42
+ request.setHeadersLoader(() => headers);
43
+ request.getHeader = (name) => {
44
+ return serverRequest.getHeader(name.toString());
45
+ };
46
+ if (request.method.toLowerCase() !== Http_1.Http.Method.GET.toLowerCase()) {
47
+ if (request.isMultipartRequest()) {
48
+ [request.body, request.files] = await readForm(serverResponse, headers);
49
+ }
50
+ else {
51
+ request.body = await readJson(serverResponse, headers['content-type']);
52
+ }
53
+ // const overwrittenMethod = (request.body as Record<string, string | undefined>)[Request.methodField] || ''
54
+ // request.method = Http.Method[overwrittenMethod.toUpperCase() as Http.Method] || request.method
55
+ }
56
+ const response = await handler(request);
57
+ let content = response.body;
58
+ serverResponse.writeStatus(response.status.toString());
59
+ if (!(content instanceof buffer_1.Buffer)) {
60
+ if (content instanceof Object) {
61
+ content = JSON.stringify(content);
62
+ serverResponse.writeHeader('Content-Type', 'application/json');
63
+ }
64
+ content = String(content ?? '');
65
+ }
66
+ Object.keys(response.headers).forEach(header => {
67
+ const headerValue = response.headers[header];
68
+ if (headerValue) {
69
+ serverResponse.writeHeader(header, String(headerValue));
70
+ }
71
+ });
72
+ serverResponse.end(content);
73
+ }
74
+ catch (error) {
75
+ console.log('error ->', error);
76
+ }
77
+ }
6
78
  function uNetworkingServer(port, handler) {
7
- const app = uWebSockets_js_1.SSLApp({
79
+ const app = uWebSockets_js_1.App({ // or maybe SSLApp?
8
80
  // key_file_name: 'misc/key.pem',
9
81
  // cert_file_name: 'misc/cert.pem',
10
82
  // passphrase: '1234'
11
83
  })
12
84
  .any('*', async (response, request) => {
13
- const appRequest = new Http_1.Request(request.getUrl(), request.getMethod(), {});
14
- const appResponse = await handler(appRequest);
15
- Object.keys(appResponse.headers).forEach(header => {
16
- const headerValue = appResponse.headers[header];
17
- if (headerValue) {
18
- response.writeHeader(header, String(headerValue));
19
- }
20
- });
21
- response.writeStatus(appResponse.status.toString()).end(String(appResponse.body));
85
+ await handleRequest(response, request, handler);
86
+ })
87
+ .any('/*', async (response, request) => {
88
+ await handleRequest(response, request, handler);
22
89
  })
23
90
  .listen(port, (token) => {
24
- if (token) {
25
- console.log('Listening to port ' + port);
26
- }
27
- else {
91
+ if (!token) {
28
92
  console.log('Failed to listen to port ' + port);
29
93
  }
30
94
  });
31
95
  }
32
96
  exports.uNetworkingServer = uNetworkingServer;
97
+ /* Helper function for reading a posted JSON body */
98
+ function readJson(response, contentType) {
99
+ let buffer;
100
+ return new Promise((resolve, reject) => {
101
+ response.onData((ab, isLast) => {
102
+ const chunk = buffer_1.Buffer.from(ab);
103
+ if (!isLast) {
104
+ buffer = buffer_1.Buffer.concat(buffer ? [buffer, chunk] : [chunk]);
105
+ return;
106
+ }
107
+ const content = (buffer ? buffer_1.Buffer.concat([buffer, chunk]) : chunk);
108
+ if (contentType === 'application/json') {
109
+ try {
110
+ const json = JSON.parse(content.toString());
111
+ resolve(json);
112
+ }
113
+ catch (e) {
114
+ resolve({});
115
+ }
116
+ }
117
+ else {
118
+ resolve(content);
119
+ }
120
+ });
121
+ });
122
+ }
123
+ function readForm(response, headers) {
124
+ return new Promise((resolve, reject) => {
125
+ const formDataParser = busboy_1.default({ headers });
126
+ const files = {};
127
+ const content = {};
128
+ formDataParser.on('file', function (fieldName, file, { filename, encoding, mimeType }) {
129
+ const extension = filename.split('.').pop();
130
+ const fileInstance = new Storage_1.File(`upload_${new Date().getTime().toString()}_${String.randomAlphaNum(9)}.${extension}`);
131
+ fileInstance.originalName = filename;
132
+ fileInstance.directory = os_1.default.tmpdir();
133
+ fileInstance.saved = true;
134
+ const stream = fs_1.default.createWriteStream(fileInstance.path);
135
+ stream.on('error', reject);
136
+ file.on('data', function (data) {
137
+ stream.write(data);
138
+ });
139
+ file.on('end', function () {
140
+ stream.end();
141
+ const field = files[fieldName];
142
+ files[fieldName] = field instanceof Array ? [...field, fileInstance] : field ? [field, fileInstance] : fileInstance;
143
+ });
144
+ });
145
+ formDataParser.on('field', function (fieldName, value) {
146
+ content[fieldName] = value;
147
+ });
148
+ formDataParser.on('finish', function () {
149
+ resolve([content, files]);
150
+ });
151
+ response.onData((ab, isLast) => {
152
+ formDataParser.write(buffer_1.Buffer.from(ab.slice(0)));
153
+ if (isLast) {
154
+ formDataParser.end();
155
+ }
156
+ });
157
+ });
158
+ }
33
159
  //# sourceMappingURL=uNetworking.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"uNetworking.js","sourceRoot":"","sources":["../../../Router/Servers/uNetworking.ts"],"names":[],"mappings":";;;AAAA,mDAAuC;AACvC,gDAA+D;AAE/D,SAAgB,iBAAiB,CAAC,IAAY,EAAE,OAAgD;IAC5F,MAAM,GAAG,GAAG,uBAAM,CAAC;IACf,iCAAiC;IACjC,mCAAmC;IACnC,qBAAqB;KACxB,CAAC;SACG,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;QAClC,MAAM,UAAU,GAAG,IAAI,cAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,SAAS,EAAiB,EAAE,EAAE,CAAC,CAAA;QACxF,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,CAAA;QAC7C,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC9C,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YAC/C,IAAI,WAAW,EAAE;gBACb,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAA;aACpD;QACL,CAAC,CAAC,CAAA;QACF,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAA;IACrF,CAAC,CAAC;SACD,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;QACpB,IAAI,KAAK,EAAE;YACP,OAAO,CAAC,GAAG,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAAA;SAC3C;aAAM;YACH,OAAO,CAAC,GAAG,CAAC,2BAA2B,GAAG,IAAI,CAAC,CAAA;SAClD;IACL,CAAC,CAAC,CAAA;AACV,CAAC;AAxBD,8CAwBC"}
1
+ {"version":3,"file":"uNetworking.js","sourceRoot":"","sources":["../../../Router/Servers/uNetworking.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,15 @@
1
1
  import { Container } from '../../Container';
2
- import { MiddlewareInterface, Router } from '../../Router';
3
- import { Request, Response } from '../Http';
2
+ import { Router } from '../../Router';
3
+ import { Response } from '../Http';
4
4
  import { Abstract, Constructor, Type } from '../../Support';
5
- import { WebsocketEvent } from './WebsocketEvent';
5
+ import { WebsocketRoute } from './WebsocketRoute';
6
+ import { Request } from '@Typetron/Router/Websockets/Request';
7
+ import { WebsocketMiddleware } from '@Typetron/Router/Websockets/Middleware';
6
8
  export declare class Handler {
7
9
  router: Router;
8
- onOpen?: WebsocketEvent;
9
- onClose?: WebsocketEvent;
10
- addEvent(name: string, controller: Constructor, action: string, parametersTypes?: (Type<Function> | FunctionConstructor)[], middleware?: Abstract<MiddlewareInterface>[]): WebsocketEvent;
10
+ onOpen?: WebsocketRoute;
11
+ onClose?: WebsocketRoute;
12
+ addAction(name: string, controller: Constructor, actionName: string, parametersTypes?: (Type<(...args: any[]) => any> | FunctionConstructor)[], middleware?: Abstract<WebsocketMiddleware>[]): WebsocketRoute;
11
13
  handle<T = unknown>(container: Container, request: Request): Promise<Response<T>>;
12
14
  }
13
15
  //# sourceMappingURL=Handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Handler.d.ts","sourceRoot":"","sources":["../../../Router/Websockets/Handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,mBAAmB,EAAkB,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1E,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,qBAAa,OAAO;IAEhB,MAAM,EAAE,MAAM,CAAA;IAEd,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB,OAAO,CAAC,EAAE,cAAc,CAAA;IAExB,QAAQ,CACJ,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,WAAW,EACvB,MAAM,EAAE,MAAM,EACd,eAAe,GAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,mBAAmB,CAAC,EAAO,EAC9D,UAAU,GAAE,QAAQ,CAAC,mBAAmB,CAAC,EAAO;IAgB9C,MAAM,CAAC,CAAC,GAAG,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;CAwC1F"}
1
+ {"version":3,"file":"Handler.d.ts","sourceRoot":"","sources":["../../../Router/Websockets/Handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAkB,MAAM,EAAE,MAAM,cAAc,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAElC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,qCAAqC,CAAA;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAA;AAE5E,qBAAa,OAAO;IAEhB,MAAM,EAAE,MAAM,CAAA;IAEd,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB,OAAO,CAAC,EAAE,cAAc,CAAA;IAExB,SAAS,CACL,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,WAAW,EACvB,UAAU,EAAE,MAAM,EAClB,eAAe,GAAE,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,GAAG,mBAAmB,CAAC,EAAO,EAC7E,UAAU,GAAE,QAAQ,CAAC,mBAAmB,CAAC,EAAO;IAgB9C,MAAM,CAAC,CAAC,GAAG,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;CA4C1F"}
@@ -13,25 +13,27 @@ exports.Handler = void 0;
13
13
  const Container_1 = require("../../Container");
14
14
  const Router_1 = require("../../Router");
15
15
  const Http_1 = require("../Http");
16
- const WebsocketEvent_1 = require("./WebsocketEvent");
16
+ const Request_1 = require("../Request");
17
+ const WebsocketRoute_1 = require("./WebsocketRoute");
18
+ const Request_2 = require("@Typetron/Router/Websockets/Request");
17
19
  class Handler {
18
- addEvent(name, controller, action, parametersTypes = [], middleware = []) {
19
- const event = new WebsocketEvent_1.WebsocketEvent(name, controller, action, parametersTypes, middleware);
20
- if (this.router.events.has(name)) {
21
- throw new Error(`There is already an event with the same name: '${name}'`);
20
+ addAction(name, controller, actionName, parametersTypes = [], middleware = []) {
21
+ const action = new WebsocketRoute_1.WebsocketRoute(name, controller, actionName, parametersTypes, middleware);
22
+ if (this.router.actions.has(name)) {
23
+ throw new Error(`There is already an action with the same name: '${name}'`);
22
24
  }
23
- this.router.events.set(name, event);
24
- return event;
25
+ this.router.actions.set(name, action);
26
+ return action;
25
27
  }
26
28
  async handle(container, request) {
27
- container.set(Http_1.Request, request);
29
+ container.set(Request_1.Request, request);
30
+ container.set(Request_2.Request, request);
28
31
  let stack = async () => {
29
- const route = this.router.events.get(request.uri);
32
+ const route = this.router.actions.get(request.name);
30
33
  if (!route) {
31
- throw new Error(`Event '${request.uri}' not found`);
34
+ throw new Error(`Action '${request.name}' not found`);
32
35
  }
33
- // TODO - add the Websocket route in the container
34
- // container.set(Route, route)
36
+ container.set(WebsocketRoute_1.WebsocketRoute, route);
35
37
  let routeStack = async () => {
36
38
  const content = await route.run(container, request.parameters);
37
39
  if (content instanceof Http_1.Response) {
@@ -45,7 +47,11 @@ class Handler {
45
47
  });
46
48
  return await routeStack(request);
47
49
  };
48
- this.router.middleware.forEach(middlewareClass => {
50
+ this.router.middleware.global?.forEach(middlewareClass => {
51
+ const middleware = container.get(middlewareClass);
52
+ stack = middleware.handle.bind(middleware, request, stack);
53
+ });
54
+ this.router.middleware.websocket?.forEach(middlewareClass => {
49
55
  const middleware = container.get(middlewareClass);
50
56
  stack = middleware.handle.bind(middleware, request, stack);
51
57
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Handler.js","sourceRoot":"","sources":["../../../Router/Websockets/Handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAAmD;AACnD,yCAA0E;AAC1E,kCAA2C;AAE3C,qDAAiD;AAEjD,MAAa,OAAO;IAOhB,QAAQ,CACJ,IAAY,EACZ,UAAuB,EACvB,MAAc,EACd,kBAA4D,EAAE,EAC9D,aAA8C,EAAE;QAEhD,MAAM,KAAK,GAAG,IAAI,+BAAc,CAC5B,IAAI,EACJ,UAAU,EACV,MAAM,EACN,eAAe,EACf,UAAU,CACb,CAAA;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,kDAAkD,IAAI,GAAG,CAAC,CAAA;SAC7E;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACnC,OAAO,KAAK,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,MAAM,CAAc,SAAoB,EAAE,OAAgB;QAE5D,SAAS,CAAC,GAAG,CAAC,cAAO,EAAE,OAAO,CAAC,CAAA;QAE/B,IAAI,KAAK,GAAmB,KAAK,IAAI,EAAE;YACnC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAEjD,IAAI,CAAC,KAAK,EAAE;gBACR,MAAM,IAAI,KAAK,CAAC,UAAU,OAAO,CAAC,GAAG,aAAa,CAAC,CAAA;aACtD;YAED,kDAAkD;YAClD,8BAA8B;YAE9B,IAAI,UAAU,GAAmB,KAAK,IAAI,EAAE;gBACxC,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;gBAE9D,IAAI,OAAO,YAAY,eAAQ,EAAE;oBAC7B,OAAO,OAAO,CAAA;iBACjB;gBAED,OAAO,eAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;YAC/B,CAAC,CAAA;YAED,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;gBACvC,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;gBACjD,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;YACxE,CAAC,CAAC,CAAA;YAEF,OAAO,MAAM,UAAU,CAAC,OAAO,CAAC,CAAA;QACpC,CAAC,CAAA;QAED,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;YAC7C,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;YACjD,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;QAC9D,CAAC,CAAC,CAAA;QAEF,OAAO,MAAM,KAAK,CAAC,OAAO,CAAgB,CAAA;IAC9C,CAAC;CAEJ;AAlEG;IADC,kBAAM,EAAE;8BACD,eAAM;uCAAA;AAFlB,0BAoEC"}
1
+ {"version":3,"file":"Handler.js","sourceRoot":"","sources":["../../../Router/Websockets/Handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAAmD;AACnD,yCAAqD;AACrD,kCAAkC;AAClC,wCAAmD;AAEnD,qDAAiD;AACjD,iEAA6D;AAG7D,MAAa,OAAO;IAOhB,SAAS,CACL,IAAY,EACZ,UAAuB,EACvB,UAAkB,EAClB,kBAA2E,EAAE,EAC7E,aAA8C,EAAE;QAEhD,MAAM,MAAM,GAAG,IAAI,+BAAc,CAC7B,IAAI,EACJ,UAAU,EACV,UAAU,EACV,eAAe,EACf,UAAU,CACb,CAAA;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,mDAAmD,IAAI,GAAG,CAAC,CAAA;SAC9E;QACD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QACrC,OAAO,MAAM,CAAA;IACjB,CAAC;IAED,KAAK,CAAC,MAAM,CAAc,SAAoB,EAAE,OAAgB;QAE5D,SAAS,CAAC,GAAG,CAAC,iBAAW,EAAE,OAAO,CAAC,CAAA;QACnC,SAAS,CAAC,GAAG,CAAC,iBAAO,EAAE,OAAO,CAAC,CAAA;QAE/B,IAAI,KAAK,GAAmB,KAAK,IAAI,EAAE;YACnC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YAEnD,IAAI,CAAC,KAAK,EAAE;gBACR,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,CAAC,IAAI,aAAa,CAAC,CAAA;aACxD;YAED,SAAS,CAAC,GAAG,CAAC,+BAAc,EAAE,KAAK,CAAC,CAAA;YAEpC,IAAI,UAAU,GAAmB,KAAK,IAAI,EAAE;gBACxC,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;gBAE9D,IAAI,OAAO,YAAY,eAAQ,EAAE;oBAC7B,OAAO,OAAO,CAAA;iBACjB;gBAED,OAAO,eAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;YAC/B,CAAC,CAAA;YAED,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;gBACvC,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;gBACjD,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;YACxE,CAAC,CAAC,CAAA;YAEF,OAAO,MAAM,UAAU,CAAC,OAAO,CAAC,CAAA;QACpC,CAAC,CAAA;QAED,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,EAAE;YACrD,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;YACjD,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;QAC9D,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,eAAe,CAAC,EAAE;YACxD,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;YACjD,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;QAC9D,CAAC,CAAC,CAAA;QAEF,OAAO,MAAM,KAAK,CAAC,OAAO,CAAgB,CAAA;IAC9C,CAAC;CACJ;AAtEG;IADC,kBAAM,EAAE;8BACD,eAAM;uCAAA;AAFlB,0BAwEC"}
@@ -0,0 +1,7 @@
1
+ import { Request } from '@Typetron/Router/Websockets/Request';
2
+ import { GlobalMiddleware, RequestHandler } from '@Typetron/Router';
3
+ import { Response } from '@Typetron/Router/Http';
4
+ export declare abstract class WebsocketMiddleware extends GlobalMiddleware {
5
+ abstract handle(request: Request, next: RequestHandler): Promise<Response>;
6
+ }
7
+ //# sourceMappingURL=Middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Middleware.d.ts","sourceRoot":"","sources":["../../../Router/Websockets/Middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qCAAqC,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAEhD,8BAAsB,mBAAoB,SAAQ,gBAAgB;IAC9D,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;CAC7E"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WebsocketMiddleware = void 0;
4
+ const Router_1 = require("@Typetron/Router");
5
+ class WebsocketMiddleware extends Router_1.GlobalMiddleware {
6
+ }
7
+ exports.WebsocketMiddleware = WebsocketMiddleware;
8
+ //# sourceMappingURL=Middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Middleware.js","sourceRoot":"","sources":["../../../Router/Websockets/Middleware.ts"],"names":[],"mappings":";;;AACA,6CAAmE;AAGnE,MAAsB,mBAAoB,SAAQ,yBAAgB;CAEjE;AAFD,kDAEC"}
@@ -0,0 +1,4 @@
1
+ import { Request as BaseRequest } from '@Typetron/Router/Request';
2
+ export declare class Request extends BaseRequest {
3
+ }
4
+ //# sourceMappingURL=Request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Request.d.ts","sourceRoot":"","sources":["../../../Router/Websockets/Request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAEjE,qBAAa,OAAQ,SAAQ,WAAW;CAAG"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Request = void 0;
4
+ const Request_1 = require("@Typetron/Router/Request");
5
+ class Request extends Request_1.Request {
6
+ }
7
+ exports.Request = Request;
8
+ //# sourceMappingURL=Request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Request.js","sourceRoot":"","sources":["../../../Router/Websockets/Request.ts"],"names":[],"mappings":";;;AAAA,sDAAiE;AAEjE,MAAa,OAAQ,SAAQ,iBAAW;CAAG;AAA3C,0BAA2C"}
@@ -0,0 +1,7 @@
1
+ import { Container } from '../../Container';
2
+ import { Route } from '@Typetron/Router';
3
+ export declare class WebsocketRoute extends Route {
4
+ run(container: Container, requestParameters: Record<string, unknown>): Promise<object | string>;
5
+ private resolveParameters;
6
+ }
7
+ //# sourceMappingURL=WebsocketRoute.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebsocketRoute.d.ts","sourceRoot":"","sources":["../../../Router/Websockets/WebsocketRoute.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAG3C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAExC,qBAAa,cAAe,SAAQ,KAAK;IAE/B,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;YA0BvF,iBAAiB;CAyBlC"}
@@ -1,20 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WebsocketEvent = void 0;
3
+ exports.WebsocketRoute = void 0;
4
4
  const Metadata_1 = require("../Metadata");
5
- class WebsocketEvent {
6
- constructor(name = '', controller, action, parametersTypes = [], middleware = []) {
7
- this.name = name;
8
- this.controller = controller;
9
- this.action = action;
10
- this.parametersTypes = parametersTypes;
11
- this.middleware = middleware;
12
- this.guards = [];
13
- }
5
+ const Router_1 = require("@Typetron/Router");
6
+ class WebsocketRoute extends Router_1.Route {
14
7
  async run(container, requestParameters) {
15
8
  const controller = await container.get(this.controller);
16
9
  try {
17
- const metadata = Metadata_1.ControllerMetadata.get(this.controller).events[this.action];
10
+ const metadata = Metadata_1.ControllerMetadata.get(this.controller).actions[this.controllerMethod];
18
11
  const parameters = await this.resolveParameters(requestParameters, this.parametersTypes, metadata?.parametersOverrides ?? [], container);
19
12
  for await (const guardClass of this.guards) {
20
13
  const guard = container.get(guardClass);
@@ -22,10 +15,10 @@ class WebsocketEvent {
22
15
  guard.onFail();
23
16
  }
24
17
  }
25
- return controller[this.action].apply(controller, parameters);
18
+ return controller[this.controllerMethod].apply(controller, parameters);
26
19
  }
27
20
  catch (error) {
28
- error.stack = `Controller: ${controller.constructor.name}.${this.action} \n at ` + error.stack;
21
+ error.stack = `Controller: ${controller.constructor.name}.${this.controllerMethod} \n at ` + error.stack;
29
22
  throw error;
30
23
  }
31
24
  }
@@ -49,5 +42,5 @@ class WebsocketEvent {
49
42
  });
50
43
  }
51
44
  }
52
- exports.WebsocketEvent = WebsocketEvent;
53
- //# sourceMappingURL=WebsocketEvent.js.map
45
+ exports.WebsocketRoute = WebsocketRoute;
46
+ //# sourceMappingURL=WebsocketRoute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebsocketRoute.js","sourceRoot":"","sources":["../../../Router/Websockets/WebsocketRoute.ts"],"names":[],"mappings":";;;AAEA,0CAAgE;AAChE,6CAAwC;AAExC,MAAa,cAAe,SAAQ,cAAK;IAErC,KAAK,CAAC,GAAG,CAAC,SAAoB,EAAE,iBAA0C;QACtE,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAEvD,IAAI;YACA,MAAM,QAAQ,GAA+B,6BAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YACnH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC3C,iBAAiB,EACjB,IAAI,CAAC,eAAe,EACpB,QAAQ,EAAE,mBAAmB,IAAI,EAAE,EACnC,SAAS,CACZ,CAAA;YAED,IAAI,KAAK,EAAE,MAAM,UAAU,IAAI,IAAI,CAAC,MAAM,EAAE;gBACxC,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;gBACvC,IAAI,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC,EAAE;oBACvC,KAAK,CAAC,MAAM,EAAE,CAAA;iBACjB;aACJ;YAED,OAAQ,UAAU,CAAC,IAAI,CAAC,gBAAqC,CAAiB,CAAC,KAAK,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;SAC/G;QAAC,OAAO,KAAK,EAAE;YACZ,KAAK,CAAC,KAAK,GAAG,eAAe,UAAU,CAAC,WAAW,CAAC,IAAI,IAAI,IAAI,CAAC,gBAAgB,SAAS,GAAG,KAAK,CAAC,KAAK,CAAA;YACxG,MAAM,KAAK,CAAA;SACd;IACL,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC3B,iBAA0C,EAC1C,eAA4D,EAC5D,SAAwB,EACxB,SAAoB;QAEpB,IAAI,cAAc,GAAG,CAAC,CAAA;QACtB,kCAAkC;QAClC,MAAM,eAAe,GAAU,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAA;QAC/D,OAAO,eAAe,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE;YACvD,MAAM,gBAAgB,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;YACzC,IAAI,gBAAgB,EAAE;gBAClB,OAAO,MAAM,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;aAC3D;YACD,IAAI,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC7B,OAAO,eAAe,CAAC,cAAc,EAAE,CAAC,CAAA;aAC3C;YACD,IAAI,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC7B,MAAM,KAAK,GAAG,eAAe,CAAC,cAAc,EAAE,CAAC,CAAA;gBAC/C,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAClF;YACD,OAAO,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,eAAe,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,CAAA;QACxE,CAAC,CAAC,CAAA;IACN,CAAC;CAEJ;AArDD,wCAqDC"}
@@ -10,8 +10,8 @@ export declare class WebSocket {
10
10
  subscribe(topic: string): void;
11
11
  unsubscribe(topic: string): void;
12
12
  reset(container?: Container): void;
13
- publish(topic: string, event: string, body?: unknown): void;
14
- publishAndSend(topic: string, event: string, body?: unknown): void;
15
- send(event: string, body?: unknown): void;
13
+ publish(topic: string, action: string, body?: unknown): void;
14
+ publishAndSend(topic: string, action: string, body?: unknown): void;
15
+ send(action: string, body?: unknown): void;
16
16
  }
17
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../Router/Websockets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE/C,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AAEvB,qBAAa,SAAS;IAIC,UAAU,EAAE,UAAU;IAAS,SAAS,EAAE,SAAS;IAFtE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;gBAED,UAAU,EAAE,UAAU,EAAS,SAAS,EAAE,SAAS;IAItE,SAAS,CAAC,KAAK,EAAE,MAAM;IAIvB,WAAW,CAAC,KAAK,EAAE,MAAM;IAIzB,KAAK,CAAC,SAAS,CAAC,EAAE,SAAS;IAM3B,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;IAUpD,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;IAM3D,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;CAQrC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../Router/Websockets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE/C,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AAEvB,qBAAa,SAAS;IAIC,UAAU,EAAE,UAAU;IAAS,SAAS,EAAE,SAAS;IAFtE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;gBAED,UAAU,EAAE,UAAU,EAAS,SAAS,EAAE,SAAS;IAItE,SAAS,CAAC,KAAK,EAAE,MAAM;IAIvB,WAAW,CAAC,KAAK,EAAE,MAAM;IAIzB,KAAK,CAAC,SAAS,CAAC,EAAE,SAAS;IAM3B,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;IAUrD,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;IAM5D,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;CAQtC"}
@@ -31,23 +31,23 @@ class WebSocket {
31
31
  this.connection.container.set(WebSocket, this);
32
32
  }
33
33
  // tslint:disable-next-line:no-any
34
- publish(topic, event, body) {
34
+ publish(topic, action, body) {
35
35
  const sentResponse = {
36
- event,
36
+ action,
37
37
  message: body,
38
38
  status: types_1.WebsocketMessageStatus.OK,
39
39
  };
40
40
  this.connection.publish(topic, JSON.stringify(sentResponse), false, true);
41
41
  }
42
42
  // tslint:disable-next-line:no-any
43
- publishAndSend(topic, event, body) {
44
- this.publish(topic, event, body);
45
- this.send(event, body);
43
+ publishAndSend(topic, action, body) {
44
+ this.publish(topic, action, body);
45
+ this.send(action, body);
46
46
  }
47
47
  // tslint:disable-next-line:no-any
48
- send(event, body) {
48
+ send(action, body) {
49
49
  const sentResponse = {
50
- event,
50
+ action,
51
51
  message: body,
52
52
  status: types_1.WebsocketMessageStatus.OK,
53
53
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../Router/Websockets/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AACA,mCAA+D;AAG/D,4CAAyB;AACzB,0CAAuB;AAEvB,MAAa,SAAS;IAIlB,YAAmB,UAAsB,EAAS,SAAoB;QAAnD,eAAU,GAAV,UAAU,CAAY;QAAS,cAAS,GAAT,SAAS,CAAW;QAClE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACzB,CAAC;IAED,SAAS,CAAC,KAAa;QACnB,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IACpC,CAAC;IAED,WAAW,CAAC,KAAa;QACrB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IACtC,CAAC;IAED,KAAK,CAAC,SAAqB;QACvB,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAA;QAChG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAClD,CAAC;IAED,kCAAkC;IAClC,OAAO,CAAC,KAAa,EAAE,KAAa,EAAE,IAAc;QAChD,MAAM,YAAY,GAA2B;YACzC,KAAK;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,8BAAsB,CAAC,EAAE;SACpC,CAAA;QACD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IAC7E,CAAC;IAED,kCAAkC;IAClC,cAAc,CAAC,KAAa,EAAE,KAAa,EAAE,IAAc;QACvD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QAChC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAC1B,CAAC;IAED,kCAAkC;IAClC,IAAI,CAAC,KAAa,EAAE,IAAc;QAC9B,MAAM,YAAY,GAA2B;YACzC,KAAK;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,8BAAsB,CAAC,EAAE;SACpC,CAAA;QACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IACnE,CAAC;CACJ;AA9CD,8BA8CC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../Router/Websockets/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AACA,mCAAgE;AAGhE,4CAAyB;AACzB,0CAAuB;AAEvB,MAAa,SAAS;IAIlB,YAAmB,UAAsB,EAAS,SAAoB;QAAnD,eAAU,GAAV,UAAU,CAAY;QAAS,cAAS,GAAT,SAAS,CAAW;QAClE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACzB,CAAC;IAED,SAAS,CAAC,KAAa;QACnB,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IACpC,CAAC;IAED,WAAW,CAAC,KAAa;QACrB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IACtC,CAAC;IAED,KAAK,CAAC,SAAqB;QACvB,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAA;QAChG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAClD,CAAC;IAED,kCAAkC;IAClC,OAAO,CAAC,KAAa,EAAE,MAAc,EAAE,IAAc;QACjD,MAAM,YAAY,GAA4B;YAC1C,MAAM;YACN,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,8BAAsB,CAAC,EAAE;SACpC,CAAA;QACD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IAC7E,CAAC;IAED,kCAAkC;IAClC,cAAc,CAAC,KAAa,EAAE,MAAc,EAAE,IAAc;QACxD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QACjC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC3B,CAAC;IAED,kCAAkC;IAClC,IAAI,CAAC,MAAc,EAAE,IAAc;QAC/B,MAAM,YAAY,GAA4B;YAC1C,MAAM;YACN,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,8BAAsB,CAAC,EAAE;SACpC,CAAA;QACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IACnE,CAAC;CACJ;AA9CD,8BA8CC"}
@@ -2,19 +2,19 @@ export declare enum WebsocketMessageStatus {
2
2
  OK = "OK",
3
3
  Error = "Error"
4
4
  }
5
- export interface Event<T> {
6
- event: string;
5
+ export interface Action<T> {
6
+ action: string;
7
7
  message?: T;
8
8
  }
9
- export interface EventRequestMessage {
9
+ export interface ActionRequestMessage {
10
10
  parameters?: (string | number)[];
11
11
  body?: any;
12
12
  }
13
- export declare type EventRequest = Event<EventRequestMessage>;
14
- export interface EventResponse<T> extends Event<T> {
13
+ export declare type ActionRequest = Action<ActionRequestMessage>;
14
+ export interface ActionResponse<T> extends Action<T> {
15
15
  status: WebsocketMessageStatus;
16
16
  }
17
- export declare type EventErrorResponse<T extends string = string> = EventResponse<{
17
+ export declare type ActionErrorResponse<T extends string = string> = ActionResponse<{
18
18
  message: T;
19
19
  stack: string;
20
20
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../Router/Websockets/types.ts"],"names":[],"mappings":"AAAA,oBAAY,sBAAsB;IAC9B,EAAE,OAAO;IACT,KAAK,UAAU;CAClB;AAED,MAAM,WAAW,KAAK,CAAC,CAAC;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,CAAC,CAAA;CACd;AAED,MAAM,WAAW,mBAAmB;IAChC,UAAU,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;IAEhC,IAAI,CAAC,EAAE,GAAG,CAAA;CACb;AAED,oBAAY,YAAY,GAAG,KAAK,CAAC,mBAAmB,CAAC,CAAA;AAErD,MAAM,WAAW,aAAa,CAAC,CAAC,CAAE,SAAQ,KAAK,CAAC,CAAC,CAAC;IAC9C,MAAM,EAAE,sBAAsB,CAAA;CACjC;AAED,oBAAY,kBAAkB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI,aAAa,CAAC;IAAC,OAAO,EAAE,CAAC,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../Router/Websockets/types.ts"],"names":[],"mappings":"AAAA,oBAAY,sBAAsB;IAC9B,EAAE,OAAO;IACT,KAAK,UAAU;CAClB;AAED,MAAM,WAAW,MAAM,CAAC,CAAC;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,CAAC,CAAA;CACd;AAED,MAAM,WAAW,oBAAoB;IACjC,UAAU,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;IAEhC,IAAI,CAAC,EAAE,GAAG,CAAA;CACb;AAED,oBAAY,aAAa,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAA;AAExD,MAAM,WAAW,cAAc,CAAC,CAAC,CAAE,SAAQ,MAAM,CAAC,CAAC,CAAC;IAChD,MAAM,EAAE,sBAAsB,CAAA;CACjC;AAED,oBAAY,mBAAmB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI,cAAc,CAAC;IAAC,OAAO,EAAE,CAAC,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Storage.d.ts","sourceRoot":"","sources":["../../Storage/Storage.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAI7B,qBAAa,OAAO;IAChB,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,UAAQ,GAAG,IAAI,EAAE;IAmB/C,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIvC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS1C,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,GAAE,MAAW,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB/E,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAY7E,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMjD,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO7C,OAAO,CAAC,sBAAsB;CAOjC"}
1
+ {"version":3,"file":"Storage.d.ts","sourceRoot":"","sources":["../../Storage/Storage.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAI7B,qBAAa,OAAO;IAChB,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,UAAQ,GAAG,IAAI,EAAE;IAmB/C,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIvC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS1C,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,GAAE,MAAW,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB/E,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAY7E,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMjD,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY7C,OAAO,CAAC,sBAAsB;CAOjC"}
@@ -67,9 +67,7 @@ class Storage {
67
67
  .createReadStream(file.path)
68
68
  .on('error', reject)
69
69
  .pipe(fileSystemDeprecated.createWriteStream(newPath))
70
- .on('finish', () => {
71
- resolve(file);
72
- })
70
+ .on('finish', () => resolve(file))
73
71
  .on('error', reject);
74
72
  });
75
73
  }
@@ -94,6 +92,9 @@ class Storage {
94
92
  if (!(await this.exists(filePath))) {
95
93
  return;
96
94
  }
95
+ if ((await fileSystem.stat(filePath)).isDirectory()) {
96
+ throw new Error('Can not delete because this path leads to a directory and not a file.');
97
+ }
97
98
  await fileSystem.unlink(filePath);
98
99
  }
99
100
  generateRandomFileName() {
@@ -1 +1 @@
1
- {"version":3,"file":"Storage.js","sourceRoot":"","sources":["../../Storage/Storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Storage.js","sourceRoot":"","sources":["../../Storage/Storage.ts"],"names":[],"mappings":"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"}
package/Support/Array.js CHANGED
@@ -26,10 +26,10 @@ Array.prototype.remove = function (...items) {
26
26
  });
27
27
  };
28
28
  Array.prototype.where = function (property, value) {
29
- return this.filter(item => value ? item[property] === value : item[property]);
29
+ return this.filter(item => value !== undefined ? item[property] === value : item[property]);
30
30
  };
31
31
  Array.prototype.whereNot = function (property, value) {
32
- return this.filter(item => value ? item[property] !== value : !item[property]);
32
+ return this.filter(item => value !== undefined ? item[property] !== value : !item[property]);
33
33
  };
34
34
  Array.prototype.whereIn = function (property, values) {
35
35
  return this.filter(item => values.includes(item[property]));
@@ -1 +1 @@
1
- {"version":3,"file":"Array.js","sourceRoot":"","sources":["../../Support/Array.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Array.js","sourceRoot":"","sources":["../../Support/Array.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ export declare type KeysOfType<T, Condition> = {
8
8
  export declare type ChildKeys<Child, Parent> = Exclude<keyof Child, keyof Parent>;
9
9
  export declare type ChildObject<Child, Parent> = Omit<Child, keyof Parent>;
10
10
  export declare type Type<T> = new (...args: any[]) => T;
11
+ export declare type AnyFunction<T = any> = (...args: any[]) => T;
11
12
  export interface Abstract<T> {
12
13
  prototype: T;
13
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../Support/index.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,CAAA;AAChB,OAAO,UAAU,CAAA;AACjB,OAAO,QAAQ,CAAA;AACf,OAAO,SAAS,CAAA;AAEhB,oBAAY,UAAU,CAAC,CAAC,EAAE,SAAS,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,SAAS,GAAG,CAAC,GAAG,KAAK;CAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AACvG,oBAAY,SAAS,CAAC,KAAK,EAAE,MAAM,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,MAAM,MAAM,CAAC,CAAC;AAC1E,oBAAY,WAAW,CAAC,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,MAAM,CAAC,CAAC;AAGnE,oBAAY,IAAI,CAAC,CAAC,IAAI,KAAI,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAE/C,MAAM,WAAW,QAAQ,CAAC,CAAC;IACvB,SAAS,EAAE,CAAC,CAAC;CAChB;AAGD,oBAAY,WAAW,CAAC,CAAC,GAAG,MAAM,IAAI,KAAI,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../Support/index.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,CAAA;AAChB,OAAO,UAAU,CAAA;AACjB,OAAO,QAAQ,CAAA;AACf,OAAO,SAAS,CAAA;AAEhB,oBAAY,UAAU,CAAC,CAAC,EAAE,SAAS,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,SAAS,GAAG,CAAC,GAAG,KAAK;CAAE,CAAC,MAAM,CAAC,CAAC,CAAA;AACtG,oBAAY,SAAS,CAAC,KAAK,EAAE,MAAM,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,MAAM,MAAM,CAAC,CAAA;AACzE,oBAAY,WAAW,CAAC,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,MAAM,CAAC,CAAA;AAGlE,oBAAY,IAAI,CAAC,CAAC,IAAI,KAAI,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;AAC9C,oBAAY,WAAW,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;AAExD,MAAM,WAAW,QAAQ,CAAC,CAAC;IACvB,SAAS,EAAE,CAAC,CAAC;CAChB;AAGD,oBAAY,WAAW,CAAC,CAAC,GAAG,MAAM,IAAI,KAAI,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA"}