@typetron/framework 0.3.16 → 0.3.18

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 (428) hide show
  1. package/Cache/Cache.d.ts +9 -0
  2. package/Cache/Cache.d.ts.map +1 -0
  3. package/Cache/Cache.js +7 -0
  4. package/Cache/Cache.js.map +1 -0
  5. package/Cache/CacheLoader.d.ts +8 -0
  6. package/Cache/CacheLoader.d.ts.map +1 -0
  7. package/Cache/CacheLoader.js +55 -0
  8. package/Cache/CacheLoader.js.map +1 -0
  9. package/Cache/Consumers/Cache.d.ts +18 -0
  10. package/Cache/Consumers/Cache.d.ts.map +1 -0
  11. package/Cache/Consumers/Cache.js +99 -0
  12. package/Cache/Consumers/Cache.js.map +1 -0
  13. package/Cache/Contracts/CacheInterface.d.ts +14 -0
  14. package/Cache/Contracts/CacheInterface.d.ts.map +1 -0
  15. package/Cache/Contracts/CacheInterface.js +3 -0
  16. package/Cache/Contracts/CacheInterface.js.map +1 -0
  17. package/Cache/Contracts/EngineInterface.d.ts +8 -0
  18. package/Cache/Contracts/EngineInterface.d.ts.map +1 -0
  19. package/Cache/Contracts/EngineInterface.js +3 -0
  20. package/Cache/Contracts/EngineInterface.js.map +1 -0
  21. package/Cache/Contracts/ServiceInterface.d.ts +8 -0
  22. package/Cache/Contracts/ServiceInterface.d.ts.map +1 -0
  23. package/Cache/Contracts/ServiceInterface.js +3 -0
  24. package/Cache/Contracts/ServiceInterface.js.map +1 -0
  25. package/Cache/Engines/DatabaseCache.d.ts +11 -0
  26. package/Cache/Engines/DatabaseCache.d.ts.map +1 -0
  27. package/Cache/Engines/DatabaseCache.js +40 -0
  28. package/Cache/Engines/DatabaseCache.js.map +1 -0
  29. package/Cache/Engines/FileCache.d.ts +22 -0
  30. package/Cache/Engines/FileCache.d.ts.map +1 -0
  31. package/Cache/Engines/FileCache.js +107 -0
  32. package/Cache/Engines/FileCache.js.map +1 -0
  33. package/Cache/Services/DatabaseCacheService.d.ts +13 -0
  34. package/Cache/Services/DatabaseCacheService.d.ts.map +1 -0
  35. package/Cache/Services/DatabaseCacheService.js +74 -0
  36. package/Cache/Services/DatabaseCacheService.js.map +1 -0
  37. package/Cache/Services/FileCacheService.d.ts +13 -0
  38. package/Cache/Services/FileCacheService.d.ts.map +1 -0
  39. package/Cache/Services/FileCacheService.js +60 -0
  40. package/Cache/Services/FileCacheService.js.map +1 -0
  41. package/Cache/Stores/DatabaseStore.d.ts +16 -0
  42. package/Cache/Stores/DatabaseStore.d.ts.map +1 -0
  43. package/Cache/Stores/DatabaseStore.js +208 -0
  44. package/Cache/Stores/DatabaseStore.js.map +1 -0
  45. package/Cache/Stores/FileStore.d.ts +16 -0
  46. package/Cache/Stores/FileStore.d.ts.map +1 -0
  47. package/Cache/Stores/FileStore.js +63 -0
  48. package/Cache/Stores/FileStore.js.map +1 -0
  49. package/Cache/Stores/MemoryStore.d.ts +13 -0
  50. package/Cache/Stores/MemoryStore.d.ts.map +1 -0
  51. package/Cache/Stores/MemoryStore.js +60 -0
  52. package/Cache/Stores/MemoryStore.js.map +1 -0
  53. package/Cache/index.d.ts +6 -0
  54. package/Cache/index.d.ts.map +1 -0
  55. package/Cache/index.js +18 -0
  56. package/Cache/index.js.map +1 -0
  57. package/Cache/types.d.ts +5 -0
  58. package/Cache/types.d.ts.map +1 -0
  59. package/Cache/types.js +3 -0
  60. package/Cache/types.js.map +1 -0
  61. package/Container/ClassResolver.d.ts +8 -8
  62. package/Container/ClassResolver.d.ts.map +1 -1
  63. package/Container/ClassResolver.js +89 -87
  64. package/Container/ClassResolver.js.map +1 -1
  65. package/Container/Container.d.ts +24 -24
  66. package/Container/Container.d.ts.map +1 -1
  67. package/Container/Container.js +118 -118
  68. package/Container/Container.js.map +1 -1
  69. package/Container/Contracts.d.ts +2 -2
  70. package/Container/Contracts.js +2 -2
  71. package/Container/Decorators.d.ts +4 -4
  72. package/Container/Decorators.js +21 -21
  73. package/Container/Metadata.d.ts +20 -20
  74. package/Container/Metadata.js +18 -18
  75. package/Container/Resolver.d.ts +18 -18
  76. package/Container/Resolver.js +15 -15
  77. package/Container/index.d.ts +5 -5
  78. package/Container/index.js +17 -17
  79. package/Database/Clauses/Where.js +1 -1
  80. package/Database/Connection.d.ts +20 -20
  81. package/Database/Connection.js +42 -42
  82. package/Database/Decorators.d.ts +36 -36
  83. package/Database/Decorators.js +116 -116
  84. package/Database/Drivers/DatabaseDriver.d.ts +28 -28
  85. package/Database/Drivers/DatabaseDriver.js +6 -6
  86. package/Database/Drivers/MySQL/Alter/index.d.ts +33 -33
  87. package/Database/Drivers/MySQL/Alter/index.js +61 -61
  88. package/Database/Drivers/MySQL/ColumnDefinition.d.ts +6 -6
  89. package/Database/Drivers/MySQL/ColumnDefinition.js +17 -17
  90. package/Database/Drivers/MySQL/Create.d.ts +9 -9
  91. package/Database/Drivers/MySQL/Create.js +37 -37
  92. package/Database/Drivers/MySQL/MysqlDriver.d.ts +41 -41
  93. package/Database/Drivers/MySQL/MysqlDriver.js +76 -76
  94. package/Database/Drivers/MySQL/Schema.d.ts +15 -15
  95. package/Database/Drivers/MySQL/Schema.js +65 -65
  96. package/Database/Drivers/MySQL/index.d.ts +1 -1
  97. package/Database/Drivers/MySQL/index.js +15 -15
  98. package/Database/Drivers/SQL/Schema.d.ts +6 -6
  99. package/Database/Drivers/SQL/Schema.js +57 -57
  100. package/Database/Drivers/SQL/Statements/Alter.d.ts +7 -7
  101. package/Database/Drivers/SQL/Statements/Alter.js +17 -17
  102. package/Database/Drivers/SQL/Statements/BaseStatement.d.ts +12 -12
  103. package/Database/Drivers/SQL/Statements/BaseStatement.js +46 -46
  104. package/Database/Drivers/SQL/Statements/Delete.d.ts +5 -5
  105. package/Database/Drivers/SQL/Statements/Delete.js +16 -16
  106. package/Database/Drivers/SQL/Statements/Insert.d.ts +6 -6
  107. package/Database/Drivers/SQL/Statements/Insert.js +23 -23
  108. package/Database/Drivers/SQL/Statements/Select.d.ts +7 -7
  109. package/Database/Drivers/SQL/Statements/Select.js +44 -44
  110. package/Database/Drivers/SQL/Statements/Update.d.ts +6 -6
  111. package/Database/Drivers/SQL/Statements/Update.js +27 -27
  112. package/Database/Drivers/SQL/index.d.ts +8 -8
  113. package/Database/Drivers/SQL/index.js +2 -2
  114. package/Database/Drivers/SQLite/Create.d.ts +9 -9
  115. package/Database/Drivers/SQLite/Create.js +36 -36
  116. package/Database/Drivers/SQLite/Schema.d.ts +15 -15
  117. package/Database/Drivers/SQLite/Schema.js +44 -44
  118. package/Database/Drivers/SQLite/SqliteDriver.d.ts +42 -42
  119. package/Database/Drivers/SQLite/SqliteDriver.d.ts.map +1 -1
  120. package/Database/Drivers/SQLite/SqliteDriver.js +102 -102
  121. package/Database/Drivers/SQLite/SqliteDriver.js.map +1 -1
  122. package/Database/Drivers/SQLite/index.d.ts +2 -2
  123. package/Database/Drivers/SQLite/index.js +26 -26
  124. package/Database/Drivers/SchemaContract.d.ts +8 -8
  125. package/Database/Drivers/SchemaContract.js +9 -9
  126. package/Database/Drivers/Statement.d.ts +9 -9
  127. package/Database/Drivers/Statement.js +15 -15
  128. package/Database/Drivers/index.d.ts +4 -4
  129. package/Database/Drivers/index.js +16 -16
  130. package/Database/Entity.d.ts +64 -64
  131. package/Database/Entity.d.ts.map +1 -1
  132. package/Database/Entity.js +252 -252
  133. package/Database/Entity.js.map +1 -1
  134. package/Database/EntityNotFoundError.d.ts +5 -5
  135. package/Database/EntityNotFoundError.js +10 -10
  136. package/Database/EntityProxyHandler.d.ts +5 -5
  137. package/Database/EntityProxyHandler.js +30 -30
  138. package/Database/EntityQuery.d.ts +28 -28
  139. package/Database/EntityQuery.js +156 -156
  140. package/Database/Expression.d.ts +3 -3
  141. package/Database/Expression.js +6 -6
  142. package/Database/Fields.d.ts +155 -155
  143. package/Database/Fields.js +548 -548
  144. package/Database/Helpers.d.ts +1 -1
  145. package/Database/Helpers.js +16 -16
  146. package/Database/List.d.ts +24 -24
  147. package/Database/List.d.ts.map +1 -1
  148. package/Database/List.js +49 -49
  149. package/Database/List.js.map +1 -1
  150. package/Database/Migrations/Migration.d.ts +7 -7
  151. package/Database/Migrations/Migration.js +9 -9
  152. package/Database/Migrations/MigrationHistory.d.ts +8 -8
  153. package/Database/Migrations/MigrationHistory.js +38 -38
  154. package/Database/Migrations/Migrator.d.ts +20 -20
  155. package/Database/Migrations/Migrator.js +118 -118
  156. package/Database/Migrations/index.d.ts +3 -3
  157. package/Database/Migrations/index.js +15 -15
  158. package/Database/ORM/BaseRelationship.d.ts +7 -7
  159. package/Database/ORM/BaseRelationship.js +10 -10
  160. package/Database/Query.d.ts +62 -62
  161. package/Database/Query.d.ts.map +1 -1
  162. package/Database/Query.js +265 -264
  163. package/Database/Query.js.map +1 -1
  164. package/Database/Seeders/Seeder.d.ts +3 -3
  165. package/Database/Seeders/Seeder.js +6 -6
  166. package/Database/Seeders/SeederManager.d.ts +8 -8
  167. package/Database/Seeders/SeederManager.js +24 -24
  168. package/Database/Seeders/index.d.ts +2 -2
  169. package/Database/Seeders/index.js +14 -14
  170. package/Database/StringExpression.d.ts +6 -6
  171. package/Database/StringExpression.js +14 -14
  172. package/Database/Types.d.ts +117 -117
  173. package/Database/Types.d.ts.map +1 -1
  174. package/Database/Types.js +94 -94
  175. package/Database/Types.js.map +1 -1
  176. package/Database/index.d.ts +20 -20
  177. package/Database/index.js +20 -20
  178. package/Encryption/index.d.ts +15 -15
  179. package/Encryption/index.js +53 -53
  180. package/Forms/Decorators.d.ts +6 -6
  181. package/Forms/Decorators.js +28 -28
  182. package/Forms/Form.d.ts +17 -17
  183. package/Forms/Form.js +69 -69
  184. package/Forms/FormFields.d.ts +9 -9
  185. package/Forms/FormFields.js +35 -35
  186. package/Forms/index.d.ts +3 -3
  187. package/Forms/index.js +15 -15
  188. package/Framework/App.d.ts +6 -6
  189. package/Framework/App.js +9 -9
  190. package/Framework/Application.d.ts +17 -17
  191. package/Framework/Application.d.ts.map +1 -1
  192. package/Framework/Application.js +94 -93
  193. package/Framework/Application.js.map +1 -1
  194. package/Framework/Auth/Auth.d.ts +24 -24
  195. package/Framework/Auth/Auth.js +108 -108
  196. package/Framework/Auth/Authenticatable.d.ts +6 -6
  197. package/Framework/Auth/Authenticatable.js +2 -2
  198. package/Framework/Auth/User.d.ts +10 -10
  199. package/Framework/Auth/User.js +37 -37
  200. package/Framework/Auth/index.d.ts +5 -5
  201. package/Framework/Auth/index.d.ts.map +1 -1
  202. package/Framework/Auth/index.js +45 -45
  203. package/Framework/Auth/index.js.map +1 -1
  204. package/Framework/Config/AppConfig.d.ts +18 -18
  205. package/Framework/Config/AppConfig.js +11 -11
  206. package/Framework/Config/AuthConfig.d.ts +8 -8
  207. package/Framework/Config/AuthConfig.js +7 -7
  208. package/Framework/Config/BaseConfig.d.ts +6 -6
  209. package/Framework/Config/BaseConfig.js +12 -12
  210. package/Framework/Config/CacheConfig.d.ts +16 -0
  211. package/Framework/Config/CacheConfig.d.ts.map +1 -0
  212. package/Framework/Config/CacheConfig.js +23 -0
  213. package/Framework/Config/CacheConfig.js.map +1 -0
  214. package/Framework/Config/DatabaseConfig.d.ts +10 -10
  215. package/Framework/Config/DatabaseConfig.js +25 -25
  216. package/Framework/Config/index.d.ts +5 -4
  217. package/Framework/Config/index.d.ts.map +1 -1
  218. package/Framework/Config/index.js +17 -16
  219. package/Framework/Config/index.js.map +1 -1
  220. package/Framework/Middleware/AuthMiddleware.d.ts +7 -7
  221. package/Framework/Middleware/AuthMiddleware.js +63 -63
  222. package/Framework/Middleware/CorsMiddleware.d.ts +6 -6
  223. package/Framework/Middleware/CorsMiddleware.js +43 -43
  224. package/Framework/Middleware/StaticAssetsMiddleware.d.ts +14 -14
  225. package/Framework/Middleware/StaticAssetsMiddleware.js +104 -104
  226. package/Framework/Middleware/index.d.ts +2 -2
  227. package/Framework/Middleware/index.js +14 -14
  228. package/Framework/Provider.d.ts +5 -5
  229. package/Framework/Provider.js +20 -20
  230. package/Framework/Providers/CacheProvider.d.ts +7 -0
  231. package/Framework/Providers/CacheProvider.d.ts.map +1 -0
  232. package/Framework/Providers/CacheProvider.js +39 -0
  233. package/Framework/Providers/CacheProvider.js.map +1 -0
  234. package/Framework/Providers/DatabaseProvider.d.ts +9 -9
  235. package/Framework/Providers/DatabaseProvider.js +63 -63
  236. package/Framework/Providers/WebsocketsProvider.d.ts +12 -12
  237. package/Framework/Providers/WebsocketsProvider.js +122 -122
  238. package/Framework/Resolvers/AuthResolver.d.ts +5 -5
  239. package/Framework/Resolvers/AuthResolver.js +14 -14
  240. package/Framework/Resolvers/EntityResolver.d.ts +9 -9
  241. package/Framework/Resolvers/EntityResolver.js +40 -40
  242. package/Framework/Resolvers/FormResolver.d.ts +9 -9
  243. package/Framework/Resolvers/FormResolver.js +32 -32
  244. package/Framework/RootDir.d.ts +2 -2
  245. package/Framework/RootDir.js +6 -6
  246. package/Framework/index.d.ts +7 -6
  247. package/Framework/index.d.ts.map +1 -1
  248. package/Framework/index.js +19 -18
  249. package/Framework/index.js.map +1 -1
  250. package/Models/Model.d.ts +9 -9
  251. package/Models/Model.js +35 -35
  252. package/Models/index.d.ts +21 -21
  253. package/Models/index.d.ts.map +1 -1
  254. package/Models/index.js +58 -58
  255. package/Models/index.js.map +1 -1
  256. package/Router/BaseController.d.ts +4 -4
  257. package/Router/BaseController.js +20 -20
  258. package/Router/Decorators.d.ts +21 -21
  259. package/Router/Decorators.js +170 -170
  260. package/Router/Guard.d.ts +4 -4
  261. package/Router/Guard.js +10 -10
  262. package/Router/Http/Contracts.d.ts +3 -3
  263. package/Router/Http/Contracts.js +2 -2
  264. package/Router/Http/ErrorHandler.d.ts +9 -9
  265. package/Router/Http/ErrorHandler.js +51 -51
  266. package/Router/Http/ErrorHandlerInterface.d.ts +5 -5
  267. package/Router/Http/ErrorHandlerInterface.js +6 -6
  268. package/Router/Http/Errors/HttpError.d.ts +7 -7
  269. package/Router/Http/Errors/HttpError.js +15 -15
  270. package/Router/Http/Handler.d.ts +15 -15
  271. package/Router/Http/Handler.js +131 -131
  272. package/Router/Http/Request.d.ts +22 -22
  273. package/Router/Http/Request.js +151 -151
  274. package/Router/Http/Response.d.ts +17 -17
  275. package/Router/Http/Response.js +51 -51
  276. package/Router/Http/index.d.ts +83 -83
  277. package/Router/Http/index.js +99 -99
  278. package/Router/Metadata.d.ts +31 -31
  279. package/Router/Metadata.js +25 -25
  280. package/Router/Middleware.d.ts +5 -5
  281. package/Router/Middleware.js +2 -2
  282. package/Router/Route.d.ts +23 -23
  283. package/Router/Route.js +110 -110
  284. package/Router/RouteNotFoundError.d.ts +3 -3
  285. package/Router/RouteNotFoundError.js +9 -9
  286. package/Router/Router.d.ts +12 -12
  287. package/Router/Router.js +32 -32
  288. package/Router/Websockets/Handler.d.ts +12 -12
  289. package/Router/Websockets/Handler.js +59 -59
  290. package/Router/Websockets/WebsocketEvent.d.ts +15 -15
  291. package/Router/Websockets/WebsocketEvent.js +53 -53
  292. package/Router/Websockets/index.d.ts +16 -16
  293. package/Router/Websockets/index.d.ts.map +1 -1
  294. package/Router/Websockets/index.js +57 -57
  295. package/Router/Websockets/index.js.map +1 -1
  296. package/Router/Websockets/types.d.ts +20 -20
  297. package/Router/Websockets/types.js +8 -8
  298. package/Router/index.d.ts +6 -6
  299. package/Router/index.js +18 -18
  300. package/Storage/File.d.ts +11 -11
  301. package/Storage/File.js +46 -46
  302. package/Storage/Image.d.ts +3 -3
  303. package/Storage/Image.js +7 -7
  304. package/Storage/InvalidImage.d.ts +3 -3
  305. package/Storage/InvalidImage.js +7 -7
  306. package/Storage/Storage.d.ts +13 -12
  307. package/Storage/Storage.d.ts.map +1 -1
  308. package/Storage/Storage.js +104 -110
  309. package/Storage/Storage.js.map +1 -1
  310. package/Storage/index.d.ts +4 -4
  311. package/Storage/index.js +16 -16
  312. package/Storage/utils.d.ts +5 -5
  313. package/Storage/utils.js +20 -20
  314. package/Support/Array.d.ts +28 -28
  315. package/Support/Array.d.ts.map +1 -1
  316. package/Support/Array.js +108 -108
  317. package/Support/Array.js.map +1 -1
  318. package/Support/Math.d.ts +6 -6
  319. package/Support/Math.js +7 -7
  320. package/Support/Metadata.d.ts +14 -14
  321. package/Support/Metadata.js +20 -20
  322. package/Support/String.d.ts +11 -11
  323. package/Support/String.js +23 -23
  324. package/Support/index.d.ts +14 -13
  325. package/Support/index.d.ts.map +1 -1
  326. package/Support/index.js +6 -5
  327. package/Support/index.js.map +1 -1
  328. package/Support/utils.d.ts +2 -0
  329. package/Support/utils.d.ts.map +1 -0
  330. package/Support/utils.js +13 -0
  331. package/Support/utils.js.map +1 -0
  332. package/Testing/TestCase.d.ts +32 -32
  333. package/Testing/TestCase.js +130 -130
  334. package/Validation/Rule.d.ts +6 -6
  335. package/Validation/Rule.js +6 -6
  336. package/Validation/RuleInterface.d.ts +6 -6
  337. package/Validation/RuleInterface.js +2 -2
  338. package/Validation/Rules/Email.d.ts +3 -3
  339. package/Validation/Rules/Email.js +20 -20
  340. package/Validation/Rules/FileExtension.d.ts +3 -3
  341. package/Validation/Rules/FileExtension.js +22 -22
  342. package/Validation/Rules/MaxLength.d.ts +3 -3
  343. package/Validation/Rules/MaxLength.js +19 -19
  344. package/Validation/Rules/MinLength.d.ts +3 -3
  345. package/Validation/Rules/MinLength.js +19 -19
  346. package/Validation/Rules/Optional.d.ts +3 -3
  347. package/Validation/Rules/Optional.js +19 -19
  348. package/Validation/Rules/Required.d.ts +3 -3
  349. package/Validation/Rules/Required.js +26 -26
  350. package/Validation/Validator.d.ts +11 -11
  351. package/Validation/Validator.js +10 -10
  352. package/Validation/index.d.ts +9 -9
  353. package/Validation/index.js +21 -21
  354. package/package.json +8 -5
  355. package/tests/Cache/DatabaseStoreTest.d.ts +2 -0
  356. package/tests/Cache/DatabaseStoreTest.d.ts.map +1 -0
  357. package/tests/Cache/DatabaseStoreTest.js +138 -0
  358. package/tests/Cache/DatabaseStoreTest.js.map +1 -0
  359. package/tests/Cache/FileStoreTest.d.ts +2 -0
  360. package/tests/Cache/FileStoreTest.d.ts.map +1 -0
  361. package/tests/Cache/FileStoreTest.js +142 -0
  362. package/tests/Cache/FileStoreTest.js.map +1 -0
  363. package/tests/Cache/MemoryStoreTest.d.ts +2 -0
  364. package/tests/Cache/MemoryStoreTest.d.ts.map +1 -0
  365. package/tests/Cache/MemoryStoreTest.js +141 -0
  366. package/tests/Cache/MemoryStoreTest.js.map +1 -0
  367. package/tests/Container/ContainerTest.d.ts +1 -1
  368. package/tests/Container/ContainerTest.js +395 -395
  369. package/tests/Database/Drivers/MySQL/AlterTest.d.ts +1 -1
  370. package/tests/Database/Drivers/MySQL/AlterTest.js +135 -135
  371. package/tests/Database/Drivers/MySQL/CreateTest.d.ts +1 -1
  372. package/tests/Database/Drivers/MySQL/CreateTest.js +57 -57
  373. package/tests/Database/Drivers/MysqlDriverTest.d.ts +1 -1
  374. package/tests/Database/Drivers/MysqlDriverTest.js +149 -149
  375. package/tests/Database/Drivers/SqliteDriverTest.d.ts +1 -1
  376. package/tests/Database/Drivers/SqliteDriverTest.js +135 -135
  377. package/tests/Database/Entities/Article.d.ts +10 -10
  378. package/tests/Database/Entities/Article.js +42 -42
  379. package/tests/Database/Entities/Profile.d.ts +10 -10
  380. package/tests/Database/Entities/Profile.js +38 -38
  381. package/tests/Database/Entities/Role.d.ts +8 -8
  382. package/tests/Database/Entities/Role.js +30 -30
  383. package/tests/Database/Entities/User.d.ts +15 -15
  384. package/tests/Database/Entities/User.js +57 -57
  385. package/tests/Database/EntityRelationshipsTest.d.ts +1 -1
  386. package/tests/Database/EntityRelationshipsTest.js +552 -552
  387. package/tests/Database/EntityTest.d.ts +1 -1
  388. package/tests/Database/EntityTest.js +233 -233
  389. package/tests/Database/Migrations/RunnerTest.d.ts +1 -1
  390. package/tests/Database/Migrations/RunnerTest.js +111 -111
  391. package/tests/Database/Migrations/migrations/1.createUserTable.d.ts +5 -5
  392. package/tests/Database/Migrations/migrations/1.createUserTable.js +13 -13
  393. package/tests/Database/Migrations/migrations/2.createArticlesTable.d.ts +5 -5
  394. package/tests/Database/Migrations/migrations/2.createArticlesTable.js +13 -13
  395. package/tests/Database/QueryTest.d.ts +1 -1
  396. package/tests/Database/QueryTest.js +622 -622
  397. package/tests/Database/SchemaTest.d.ts +1 -1
  398. package/tests/Database/SchemaTest.js +45 -45
  399. package/tests/Database/Seeders/RunnerTest.d.ts +1 -1
  400. package/tests/Database/Seeders/RunnerTest.js +43 -43
  401. package/tests/Database/Seeders/seeders/RandomSeeder.d.ts +4 -4
  402. package/tests/Database/Seeders/seeders/RandomSeeder.js +13 -13
  403. package/tests/Database/utils.d.ts +5 -5
  404. package/tests/Database/utils.js +18 -18
  405. package/tests/Forms/FormsTest.d.ts +1 -1
  406. package/tests/Forms/FormsTest.js +79 -79
  407. package/tests/Framework/Middleware/StaticAssetsMiddlewareTest.d.ts +1 -1
  408. package/tests/Framework/Middleware/StaticAssetsMiddlewareTest.js +165 -165
  409. package/tests/Framework/Resolvers/EntityResolverTest.d.ts +1 -1
  410. package/tests/Framework/Resolvers/EntityResolverTest.js +59 -59
  411. package/tests/Model/ModelTest.d.ts +1 -1
  412. package/tests/Model/ModelTest.js +233 -233
  413. package/tests/Router/HttpHandlerTest.d.ts +1 -1
  414. package/tests/Router/HttpHandlerTest.js +36 -36
  415. package/tests/Router/WebSocketsHandlerTest.d.ts +1 -1
  416. package/tests/Router/WebSocketsHandlerTest.js +35 -35
  417. package/tests/Support/ArrayTest.d.ts +1 -1
  418. package/tests/Support/ArrayTest.js +258 -258
  419. package/tests/Support/StringTest.d.ts +1 -1
  420. package/tests/Support/StringTest.js +38 -38
  421. package/tests/Validation/RulesTest.d.ts +1 -1
  422. package/tests/Validation/RulesTest.js +67 -67
  423. package/Database/Drivers/SQL/Statements/Create.d.ts +0 -7
  424. package/Database/Drivers/SQL/Statements/Create.d.ts.map +0 -1
  425. package/Database/Drivers/SQL/Statements/Create.js +0 -22
  426. package/Database/Drivers/SQL/Statements/Create.js.map +0 -1
  427. package/LICENSE.md +0 -21
  428. package/Readme.md +0 -123
@@ -1,13 +1,13 @@
1
- import { Provider } from '../Provider';
2
- import { AppConfig } from '../Config';
3
- import { ErrorHandlerInterface } from '../../Router/Http';
4
- import { Handler, WebSocket } from '../../Router/Websockets';
5
- export declare class WebsocketsProvider extends Provider {
6
- appConfig: AppConfig;
7
- handler: Handler;
8
- errorHandler: ErrorHandlerInterface;
9
- sockets: Map<string | number, WebSocket>;
10
- register(): void | Promise<void>;
11
- private handleEvent;
12
- }
1
+ import { Provider } from '../Provider';
2
+ import { AppConfig } from '../Config';
3
+ import { ErrorHandlerInterface } from '../../Router/Http';
4
+ import { Handler, WebSocket } from '../../Router/Websockets';
5
+ export declare class WebsocketsProvider extends Provider {
6
+ appConfig: AppConfig;
7
+ handler: Handler;
8
+ errorHandler: ErrorHandlerInterface;
9
+ sockets: Map<string | number, WebSocket>;
10
+ register(): void | Promise<void>;
11
+ private handleEvent;
12
+ }
13
13
  //# sourceMappingURL=WebsocketsProvider.d.ts.map
@@ -1,123 +1,123 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.WebsocketsProvider = void 0;
13
- const Provider_1 = require("../Provider");
14
- const Container_1 = require("../../Container");
15
- const Config_1 = require("../Config");
16
- const uWebSockets_js_1 = require("uWebSockets.js");
17
- const util_1 = require("util");
18
- const Http_1 = require("../../Router/Http");
19
- const Websockets_1 = require("../../Router/Websockets");
20
- var WebsocketMessageStatus;
21
- (function (WebsocketMessageStatus) {
22
- WebsocketMessageStatus["OK"] = "OK";
23
- WebsocketMessageStatus["Error"] = "Error";
24
- })(WebsocketMessageStatus || (WebsocketMessageStatus = {}));
25
- class WebsocketsProvider extends Provider_1.Provider {
26
- constructor() {
27
- super(...arguments);
28
- this.sockets = new Map();
29
- }
30
- register() {
31
- const port = this.appConfig.websocketsPort;
32
- if (!port) {
33
- throw new Error('Please define a port for the Websockets server.');
34
- }
35
- const stringDecoder = new util_1.TextDecoder();
36
- const app = uWebSockets_js_1.App().ws('/', {
37
- /* There are many common helper features */
38
- idleTimeout: 40,
39
- maxBackpressure: 1024,
40
- maxPayloadLength: 1024 * 1000 * 5,
41
- compression: uWebSockets_js_1.DEDICATED_COMPRESSOR_3KB,
42
- open: (socket) => {
43
- var _a;
44
- const socketWrapper = new Websockets_1.WebSocket(socket, this.app.createChildContainer());
45
- (_a = this.handler.onOpen) === null || _a === void 0 ? void 0 : _a.run(socketWrapper.connection.container, {});
46
- },
47
- close: async (socket) => {
48
- var _a;
49
- await ((_a = this.handler.onClose) === null || _a === void 0 ? void 0 : _a.run(socket.container, {}));
50
- },
51
- /* For brevity we skip the other events (upgrade, open, ping, pong, close) */
52
- message: async (socket, message, isBinary) => {
53
- var _a;
54
- const jsonData = stringDecoder.decode(message);
55
- let data;
56
- try {
57
- data = JSON.parse(jsonData);
58
- }
59
- catch (_b) {
60
- throw new Error(`Invalid Websocket message sent: ${jsonData}`);
61
- }
62
- try {
63
- const response = await this.handleEvent(socket.container, data);
64
- const event = data.event;
65
- const sentResponse = {
66
- event,
67
- message: response.body,
68
- status: WebsocketMessageStatus.OK,
69
- };
70
- if (response.status >= 200 && response.status <= 399) {
71
- sentResponse.status = WebsocketMessageStatus.OK;
72
- }
73
- else {
74
- sentResponse.status = WebsocketMessageStatus.Error;
75
- }
76
- socket.send(JSON.stringify(sentResponse), isBinary, true);
77
- }
78
- catch (error) {
79
- const errorMessage = {
80
- message: {
81
- message: (_a = error.content) !== null && _a !== void 0 ? _a : error.message,
82
- stack: error.stack.split('\n')
83
- },
84
- event: data.event,
85
- status: WebsocketMessageStatus.Error
86
- };
87
- if (errorMessage.message) {
88
- const response = await this.errorHandler.handle(error);
89
- errorMessage.message.message = response.body.message;
90
- }
91
- socket.send(JSON.stringify(errorMessage), isBinary, true);
92
- }
93
- }
94
- }).listen(port, (listenSocket) => {
95
- if (listenSocket) {
96
- console.log(`Websocket server started on port ${port}`);
97
- }
98
- });
99
- }
100
- async handleEvent(container, { event, message }) {
101
- var _a, _b;
102
- const request = new Http_1.Request(event, Http_1.Http.Method.GET, {}, {}, {}, (_a = message === null || message === void 0 ? void 0 : message.body) !== null && _a !== void 0 ? _a : {});
103
- // TODO find a way to save parameters so they can be retrieved easily in the Resolvers (check routeEntity resolver for example)
104
- (_b = message === null || message === void 0 ? void 0 : message.parameters) === null || _b === void 0 ? void 0 : _b.forEach(parameter => {
105
- request.parameters[String.random(15)] = parameter;
106
- });
107
- return this.handler.handle(container, request);
108
- }
109
- }
110
- __decorate([
111
- Container_1.Inject(),
112
- __metadata("design:type", Config_1.AppConfig)
113
- ], WebsocketsProvider.prototype, "appConfig", void 0);
114
- __decorate([
115
- Container_1.Inject(),
116
- __metadata("design:type", Websockets_1.Handler)
117
- ], WebsocketsProvider.prototype, "handler", void 0);
118
- __decorate([
119
- Container_1.Inject(),
120
- __metadata("design:type", Http_1.ErrorHandlerInterface)
121
- ], WebsocketsProvider.prototype, "errorHandler", void 0);
122
- exports.WebsocketsProvider = WebsocketsProvider;
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.WebsocketsProvider = void 0;
13
+ const Provider_1 = require("../Provider");
14
+ const Container_1 = require("../../Container");
15
+ const Config_1 = require("../Config");
16
+ const uWebSockets_js_1 = require("uWebSockets.js");
17
+ const util_1 = require("util");
18
+ const Http_1 = require("../../Router/Http");
19
+ const Websockets_1 = require("../../Router/Websockets");
20
+ var WebsocketMessageStatus;
21
+ (function (WebsocketMessageStatus) {
22
+ WebsocketMessageStatus["OK"] = "OK";
23
+ WebsocketMessageStatus["Error"] = "Error";
24
+ })(WebsocketMessageStatus || (WebsocketMessageStatus = {}));
25
+ class WebsocketsProvider extends Provider_1.Provider {
26
+ constructor() {
27
+ super(...arguments);
28
+ this.sockets = new Map();
29
+ }
30
+ register() {
31
+ const port = this.appConfig.websocketsPort;
32
+ if (!port) {
33
+ throw new Error('Please define a port for the Websockets server.');
34
+ }
35
+ const stringDecoder = new util_1.TextDecoder();
36
+ const app = uWebSockets_js_1.App().ws('/', {
37
+ /* There are many common helper features */
38
+ idleTimeout: 40,
39
+ maxBackpressure: 1024,
40
+ maxPayloadLength: 1024 * 1000 * 5,
41
+ compression: uWebSockets_js_1.DEDICATED_COMPRESSOR_3KB,
42
+ open: (socket) => {
43
+ var _a;
44
+ const socketWrapper = new Websockets_1.WebSocket(socket, this.app.createChildContainer());
45
+ (_a = this.handler.onOpen) === null || _a === void 0 ? void 0 : _a.run(socketWrapper.connection.container, {});
46
+ },
47
+ close: async (socket) => {
48
+ var _a;
49
+ await ((_a = this.handler.onClose) === null || _a === void 0 ? void 0 : _a.run(socket.container, {}));
50
+ },
51
+ /* For brevity we skip the other events (upgrade, open, ping, pong, close) */
52
+ message: async (socket, message, isBinary) => {
53
+ var _a;
54
+ const jsonData = stringDecoder.decode(message);
55
+ let data;
56
+ try {
57
+ data = JSON.parse(jsonData);
58
+ }
59
+ catch (_b) {
60
+ throw new Error(`Invalid Websocket message sent: ${jsonData}`);
61
+ }
62
+ try {
63
+ const response = await this.handleEvent(socket.container, data);
64
+ const event = data.event;
65
+ const sentResponse = {
66
+ event,
67
+ message: response.body,
68
+ status: WebsocketMessageStatus.OK,
69
+ };
70
+ if (response.status >= 200 && response.status <= 399) {
71
+ sentResponse.status = WebsocketMessageStatus.OK;
72
+ }
73
+ else {
74
+ sentResponse.status = WebsocketMessageStatus.Error;
75
+ }
76
+ socket.send(JSON.stringify(sentResponse), isBinary, true);
77
+ }
78
+ catch (error) {
79
+ const errorMessage = {
80
+ message: {
81
+ message: (_a = error.content) !== null && _a !== void 0 ? _a : error.message,
82
+ stack: error.stack.split('\n')
83
+ },
84
+ event: data.event,
85
+ status: WebsocketMessageStatus.Error
86
+ };
87
+ if (errorMessage.message) {
88
+ const response = await this.errorHandler.handle(error);
89
+ errorMessage.message.message = response.body.message;
90
+ }
91
+ socket.send(JSON.stringify(errorMessage), isBinary, true);
92
+ }
93
+ }
94
+ }).listen(port, (listenSocket) => {
95
+ if (listenSocket) {
96
+ console.log(`Websocket server started on port ${port}`);
97
+ }
98
+ });
99
+ }
100
+ async handleEvent(container, { event, message }) {
101
+ var _a, _b;
102
+ const request = new Http_1.Request(event, Http_1.Http.Method.GET, {}, {}, {}, (_a = message === null || message === void 0 ? void 0 : message.body) !== null && _a !== void 0 ? _a : {});
103
+ // TODO find a way to save parameters so they can be retrieved easily in the Resolvers (check routeEntity resolver for example)
104
+ (_b = message === null || message === void 0 ? void 0 : message.parameters) === null || _b === void 0 ? void 0 : _b.forEach(parameter => {
105
+ request.parameters[String.random(15)] = parameter;
106
+ });
107
+ return this.handler.handle(container, request);
108
+ }
109
+ }
110
+ __decorate([
111
+ Container_1.Inject(),
112
+ __metadata("design:type", Config_1.AppConfig)
113
+ ], WebsocketsProvider.prototype, "appConfig", void 0);
114
+ __decorate([
115
+ Container_1.Inject(),
116
+ __metadata("design:type", Websockets_1.Handler)
117
+ ], WebsocketsProvider.prototype, "handler", void 0);
118
+ __decorate([
119
+ Container_1.Inject(),
120
+ __metadata("design:type", Http_1.ErrorHandlerInterface)
121
+ ], WebsocketsProvider.prototype, "errorHandler", void 0);
122
+ exports.WebsocketsProvider = WebsocketsProvider;
123
123
  //# sourceMappingURL=WebsocketsProvider.js.map
@@ -1,6 +1,6 @@
1
- import { BaseResolver } from '../../Container';
2
- export declare class AuthResolver extends BaseResolver {
3
- resolve<T>(abstract: Symbol, parameters: object[]): Promise<T>;
4
- canResolve<T>(abstract: Symbol): boolean;
5
- }
1
+ import { BaseResolver } from '../../Container';
2
+ export declare class AuthResolver extends BaseResolver {
3
+ resolve<T>(abstract: symbol, parameters: object[]): Promise<T>;
4
+ canResolve<T>(abstract: symbol): boolean;
5
+ }
6
6
  //# sourceMappingURL=AuthResolver.d.ts.map
@@ -1,15 +1,15 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AuthResolver = void 0;
4
- const Container_1 = require("../../Container");
5
- const Auth_1 = require("../Auth");
6
- class AuthResolver extends Container_1.BaseResolver {
7
- async resolve(abstract, parameters) {
8
- return await this.container.get(Auth_1.Auth).user();
9
- }
10
- canResolve(abstract) {
11
- return abstract === Auth_1.AuthUserIdentifier;
12
- }
13
- }
14
- exports.AuthResolver = AuthResolver;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AuthResolver = void 0;
4
+ const Container_1 = require("../../Container");
5
+ const Auth_1 = require("../Auth");
6
+ class AuthResolver extends Container_1.BaseResolver {
7
+ async resolve(abstract, parameters) {
8
+ return await this.container.get(Auth_1.Auth).user();
9
+ }
10
+ canResolve(abstract) {
11
+ return abstract === Auth_1.AuthUserIdentifier;
12
+ }
13
+ }
14
+ exports.AuthResolver = AuthResolver;
15
15
  //# sourceMappingURL=AuthResolver.js.map
@@ -1,10 +1,10 @@
1
- import { Constructor } from '../../Support';
2
- import { Entity, EntityConstructor } from '../../Database';
3
- import { BaseResolver, Container } from '../../Container';
4
- export declare class EntityResolver extends BaseResolver {
5
- constructor(container: Container);
6
- resolve<T>(abstract: EntityConstructor<Entity> & typeof Entity, parametersValues: object[]): Promise<T>;
7
- canResolve<T>(abstract: Constructor<T>): boolean;
8
- private setEntityScopeToRequest;
9
- }
1
+ import { Constructor } from '../../Support';
2
+ import { Entity, EntityConstructor } from '../../Database';
3
+ import { BaseResolver, Container } from '../../Container';
4
+ export declare class EntityResolver extends BaseResolver {
5
+ constructor(container: Container);
6
+ resolve<T>(abstract: EntityConstructor<Entity> & typeof Entity, parametersValues: object[]): Promise<T>;
7
+ canResolve<T>(abstract: Constructor<T>): boolean;
8
+ private setEntityScopeToRequest;
9
+ }
10
10
  //# sourceMappingURL=EntityResolver.d.ts.map
@@ -1,41 +1,41 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EntityResolver = void 0;
4
- const Database_1 = require("../../Database");
5
- const Http_1 = require("../../Router/Http");
6
- const Container_1 = require("../../Container");
7
- const EntityNotFoundError_1 = require("../../Database/EntityNotFoundError");
8
- class EntityResolver extends Container_1.BaseResolver {
9
- constructor(container) {
10
- super(container);
11
- this.setEntityScopeToRequest();
12
- }
13
- async resolve(abstract, parametersValues) {
14
- var _a;
15
- let entity;
16
- const request = this.container.get(Http_1.Request);
17
- const requestParameterName = abstract.name;
18
- const parameter = (_a = request.parameters[requestParameterName]) !== null && _a !== void 0 ? _a : Number(parametersValues[0]);
19
- if (parameter) {
20
- entity = await abstract.find(parameter);
21
- if (!entity) {
22
- throw new EntityNotFoundError_1.EntityNotFoundError(abstract, `Entity '${requestParameterName}' with ${abstract.getPrimaryKey()} '${parameter}' not found`);
23
- }
24
- }
25
- else {
26
- throw new Error(`No parameter found that can be used as an entity identifier for the '${requestParameterName}' entity. Did you forget to add the '{${requestParameterName}}' parameter on the route?`);
27
- }
28
- // @ts-ignore
29
- return entity;
30
- }
31
- canResolve(abstract) {
32
- return abstract.prototype instanceof Database_1.Entity;
33
- }
34
- setEntityScopeToRequest() {
35
- const metadata = Container_1.InjectableMetadata.get(Database_1.Entity);
36
- metadata.scope = Container_1.Scope.TRANSIENT;
37
- Container_1.InjectableMetadata.set(metadata, Database_1.Entity);
38
- }
39
- }
40
- exports.EntityResolver = EntityResolver;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EntityResolver = void 0;
4
+ const Database_1 = require("../../Database");
5
+ const Http_1 = require("../../Router/Http");
6
+ const Container_1 = require("../../Container");
7
+ const EntityNotFoundError_1 = require("../../Database/EntityNotFoundError");
8
+ class EntityResolver extends Container_1.BaseResolver {
9
+ constructor(container) {
10
+ super(container);
11
+ this.setEntityScopeToRequest();
12
+ }
13
+ async resolve(abstract, parametersValues) {
14
+ var _a;
15
+ let entity;
16
+ const request = this.container.get(Http_1.Request);
17
+ const requestParameterName = abstract.name;
18
+ const parameter = (_a = request.parameters[requestParameterName]) !== null && _a !== void 0 ? _a : Number(parametersValues[0]);
19
+ if (parameter) {
20
+ entity = await abstract.find(parameter);
21
+ if (!entity) {
22
+ throw new EntityNotFoundError_1.EntityNotFoundError(abstract, `Entity '${requestParameterName}' with ${abstract.getPrimaryKey()} '${parameter}' not found`);
23
+ }
24
+ }
25
+ else {
26
+ throw new Error(`No parameter found that can be used as an entity identifier for the '${requestParameterName}' entity. Did you forget to add the '{${requestParameterName}}' parameter on the route?`);
27
+ }
28
+ // @ts-ignore
29
+ return entity;
30
+ }
31
+ canResolve(abstract) {
32
+ return abstract.prototype instanceof Database_1.Entity;
33
+ }
34
+ setEntityScopeToRequest() {
35
+ const metadata = Container_1.InjectableMetadata.get(Database_1.Entity);
36
+ metadata.scope = Container_1.Scope.TRANSIENT;
37
+ Container_1.InjectableMetadata.set(metadata, Database_1.Entity);
38
+ }
39
+ }
40
+ exports.EntityResolver = EntityResolver;
41
41
  //# sourceMappingURL=EntityResolver.js.map
@@ -1,10 +1,10 @@
1
- import { BaseResolver, Container } from '../../Container';
2
- import { Constructor } from '../../Support';
3
- import { Form } from '../../Forms';
4
- export declare class FormResolver extends BaseResolver {
5
- constructor(container: Container);
6
- resolve<T>(abstract: Constructor<T & Form>, parameters: object[]): Promise<T & Form>;
7
- canResolve<T>(abstract: Constructor<T>): boolean;
8
- private setFormScopeToRequest;
9
- }
1
+ import { BaseResolver, Container } from '../../Container';
2
+ import { Constructor } from '../../Support';
3
+ import { Form } from '../../Forms';
4
+ export declare class FormResolver extends BaseResolver {
5
+ constructor(container: Container);
6
+ resolve<T>(abstract: Constructor<T & Form>, parameters: object[]): Promise<T & Form>;
7
+ canResolve<T>(abstract: Constructor<T>): boolean;
8
+ private setFormScopeToRequest;
9
+ }
10
10
  //# sourceMappingURL=FormResolver.d.ts.map
@@ -1,33 +1,33 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FormResolver = void 0;
4
- const Container_1 = require("../../Container");
5
- const Forms_1 = require("../../Forms");
6
- const Http_1 = require("../../Router/Http");
7
- class FormResolver extends Container_1.BaseResolver {
8
- constructor(container) {
9
- super(container);
10
- this.setFormScopeToRequest();
11
- }
12
- async resolve(abstract, parameters) {
13
- const request = this.container.get(Http_1.Request);
14
- const classResolver = new Container_1.ClassResolver(this.container);
15
- const form = await classResolver.resolve(abstract, parameters);
16
- form.fill({ ...request.body, ...request.files });
17
- if (!form.valid()) {
18
- throw new Http_1.HttpError(form.errors, Http_1.Http.Status.UNPROCESSABLE_ENTITY);
19
- }
20
- return form;
21
- }
22
- canResolve(abstract) {
23
- return abstract.prototype instanceof Forms_1.Form;
24
- }
25
- setFormScopeToRequest() {
26
- // const metadata = InjectableMetadata.get(Form)
27
- //
28
- // metadata.scope = Scope.TRANSIENT
29
- // InjectableMetadata.set(metadata, Form)
30
- }
31
- }
32
- exports.FormResolver = FormResolver;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FormResolver = void 0;
4
+ const Container_1 = require("../../Container");
5
+ const Forms_1 = require("../../Forms");
6
+ const Http_1 = require("../../Router/Http");
7
+ class FormResolver extends Container_1.BaseResolver {
8
+ constructor(container) {
9
+ super(container);
10
+ this.setFormScopeToRequest();
11
+ }
12
+ async resolve(abstract, parameters) {
13
+ const request = this.container.get(Http_1.Request);
14
+ const classResolver = new Container_1.ClassResolver(this.container);
15
+ const form = await classResolver.resolve(abstract, parameters);
16
+ form.fill({ ...request.body, ...request.files });
17
+ if (!form.valid()) {
18
+ throw new Http_1.HttpError(form.errors, Http_1.Http.Status.UNPROCESSABLE_ENTITY);
19
+ }
20
+ return form;
21
+ }
22
+ canResolve(abstract) {
23
+ return abstract.prototype instanceof Forms_1.Form;
24
+ }
25
+ setFormScopeToRequest() {
26
+ // const metadata = InjectableMetadata.get(Form)
27
+ //
28
+ // metadata.scope = Scope.TRANSIENT
29
+ // InjectableMetadata.set(metadata, Form)
30
+ }
31
+ }
32
+ exports.FormResolver = FormResolver;
33
33
  //# sourceMappingURL=FormResolver.js.map
@@ -1,3 +1,3 @@
1
- export declare class RootDir extends String {
2
- }
1
+ export declare class RootDir extends String {
2
+ }
3
3
  //# sourceMappingURL=RootDir.d.ts.map
@@ -1,7 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RootDir = void 0;
4
- class RootDir extends String {
5
- }
6
- exports.RootDir = RootDir;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RootDir = void 0;
4
+ class RootDir extends String {
5
+ }
6
+ exports.RootDir = RootDir;
7
7
  //# sourceMappingURL=RootDir.js.map
@@ -1,7 +1,8 @@
1
- export * from './Application';
2
- export * from './Provider';
3
- export * from './App';
4
- export * from './RootDir';
5
- export * from './Config';
6
- export * from './Providers/DatabaseProvider';
1
+ export * from './Application';
2
+ export * from './Provider';
3
+ export * from './App';
4
+ export * from './RootDir';
5
+ export * from './Config';
6
+ export * from './Providers/DatabaseProvider';
7
+ export * from './Providers/CacheProvider';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../Framework/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,OAAO,CAAA;AACrB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,8BAA8B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../Framework/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,OAAO,CAAA;AACrB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,8BAA8B,CAAA;AAC5C,cAAc,2BAA2B,CAAA"}
@@ -1,19 +1,20 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
10
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
- };
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- __exportStar(require("./Application"), exports);
14
- __exportStar(require("./Provider"), exports);
15
- __exportStar(require("./App"), exports);
16
- __exportStar(require("./RootDir"), exports);
17
- __exportStar(require("./Config"), exports);
18
- __exportStar(require("./Providers/DatabaseProvider"), exports);
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./Application"), exports);
14
+ __exportStar(require("./Provider"), exports);
15
+ __exportStar(require("./App"), exports);
16
+ __exportStar(require("./RootDir"), exports);
17
+ __exportStar(require("./Config"), exports);
18
+ __exportStar(require("./Providers/DatabaseProvider"), exports);
19
+ __exportStar(require("./Providers/CacheProvider"), exports);
19
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../Framework/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAA6B;AAC7B,6CAA0B;AAC1B,wCAAqB;AACrB,4CAAyB;AACzB,2CAAwB;AACxB,+DAA4C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../Framework/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAA6B;AAC7B,6CAA0B;AAC1B,wCAAqB;AACrB,4CAAyB;AACzB,2CAAwB;AACxB,+DAA4C;AAC5C,4DAAyC"}
package/Models/Model.d.ts CHANGED
@@ -1,10 +1,10 @@
1
- import { Constructor } from '../Support';
2
- import { ModelField } from './index';
3
- export declare class Model {
4
- static from<T extends Model, Q extends object>(this: Constructor<T> & typeof Model, entity: Promise<Iterable<Q>>): Promise<T[]>;
5
- static from<T extends Model, Q extends object>(this: Constructor<T> & typeof Model, entity: Promise<Q>): Promise<T>;
6
- static from<T extends Model, Q extends object>(this: Constructor<T> & typeof Model, entity: Iterable<Q>): T[];
7
- static from<T extends Model, Q extends object>(this: Constructor<T> & typeof Model, entity: Q): T;
8
- protected static transform<T, Q extends object>(fields: Record<string, ModelField>, entity: Q): T;
9
- }
1
+ import { Constructor } from '../Support';
2
+ import { ModelField } from './index';
3
+ export declare class Model {
4
+ static from<T extends Model, Q extends object>(this: Constructor<T> & typeof Model, entity: Promise<Iterable<Q>>): Promise<T[]>;
5
+ static from<T extends Model, Q extends object>(this: Constructor<T> & typeof Model, entity: Promise<Q>): Promise<T>;
6
+ static from<T extends Model, Q extends object>(this: Constructor<T> & typeof Model, entity: Iterable<Q>): T[];
7
+ static from<T extends Model, Q extends object>(this: Constructor<T> & typeof Model, entity: Q): T;
8
+ protected static transform<T, Q extends object>(fields: Record<string, ModelField>, entity: Q): T;
9
+ }
10
10
  //# sourceMappingURL=Model.d.ts.map