node-server-engine 1.1.4 → 1.1.6

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 (468) hide show
  1. package/.env.example +193 -193
  2. package/.mocharc.js +13 -13
  3. package/.nycrc +18 -18
  4. package/.prettierrc +7 -7
  5. package/Dockerfile +30 -30
  6. package/README.md +991 -991
  7. package/babel.config.json +34 -35
  8. package/dist/const/DebeziumEvent.js.map +1 -1
  9. package/dist/const/LogSeverity.js.map +1 -1
  10. package/dist/const/index.js.map +1 -1
  11. package/dist/const/metrics.js.map +1 -1
  12. package/dist/const/mime.js.map +1 -1
  13. package/dist/const/tokenIssuer.js.map +1 -1
  14. package/dist/db/migrations/20241030121500-create-sequelize-meta-table.js.map +1 -1
  15. package/dist/db/models/SequelizeMeta.js +1 -0
  16. package/dist/db/models/SequelizeMeta.js.map +1 -1
  17. package/dist/db/models/index.js.map +1 -1
  18. package/dist/entities/ElasticSearch/ElasticSearch.js +7 -7
  19. package/dist/entities/ElasticSearch/ElasticSearch.js.map +1 -1
  20. package/dist/entities/ElasticSearch/ElasticSearch.types.js.map +1 -1
  21. package/dist/entities/ElasticSearch/index.js.map +1 -1
  22. package/dist/entities/Endpoint/Endpoint.js +18 -17
  23. package/dist/entities/Endpoint/Endpoint.js.map +1 -1
  24. package/dist/entities/Endpoint/Endpoint.types.js.map +1 -1
  25. package/dist/entities/Endpoint/index.js.map +1 -1
  26. package/dist/entities/EngineError/EngineError.js +7 -6
  27. package/dist/entities/EngineError/EngineError.js.map +1 -1
  28. package/dist/entities/EngineError/EngineError.types.js.map +1 -1
  29. package/dist/entities/EngineError/index.js.map +1 -1
  30. package/dist/entities/KeySet/KeySet.js +10 -9
  31. package/dist/entities/KeySet/KeySet.js.map +1 -1
  32. package/dist/entities/KeySet/KeySet.types.js.map +1 -1
  33. package/dist/entities/KeySet/index.js.map +1 -1
  34. package/dist/entities/LifecycleController/LifecycleController.js.map +1 -1
  35. package/dist/entities/LifecycleController/LifecycleController.types.js.map +1 -1
  36. package/dist/entities/LifecycleController/index.js.map +1 -1
  37. package/dist/entities/Localizator/Localizator.js +7 -7
  38. package/dist/entities/Localizator/Localizator.js.map +1 -1
  39. package/dist/entities/Localizator/Localizator.types.js.map +1 -1
  40. package/dist/entities/Localizator/guessNamingConvention/guessNamingConvention.js.map +1 -1
  41. package/dist/entities/Localizator/guessNamingConvention/index.js.map +1 -1
  42. package/dist/entities/Localizator/index.js.map +1 -1
  43. package/dist/entities/MessageHandler/MessageHandler.js +7 -6
  44. package/dist/entities/MessageHandler/MessageHandler.js.map +1 -1
  45. package/dist/entities/MessageHandler/MessageHandler.types.js.map +1 -1
  46. package/dist/entities/MessageHandler/index.js.map +1 -1
  47. package/dist/entities/PubSub/PubSub.js +25 -25
  48. package/dist/entities/PubSub/PubSub.js.map +1 -1
  49. package/dist/entities/PubSub/PubSub.types.js.map +1 -1
  50. package/dist/entities/PubSub/handleMessage/handleMessage.js +6 -6
  51. package/dist/entities/PubSub/handleMessage/handleMessage.js.map +1 -1
  52. package/dist/entities/PubSub/handleMessage/index.js.map +1 -1
  53. package/dist/entities/PubSub/index.js.map +1 -1
  54. package/dist/entities/PushNotification/PushNotification.js +4 -4
  55. package/dist/entities/PushNotification/PushNotification.js.map +1 -1
  56. package/dist/entities/PushNotification/PushNotification.types.js.map +1 -1
  57. package/dist/entities/PushNotification/index.js.map +1 -1
  58. package/dist/entities/Redis/Redis.js +8 -8
  59. package/dist/entities/Redis/Redis.js.map +1 -1
  60. package/dist/entities/Redis/Redis.types.js.map +1 -1
  61. package/dist/entities/Redis/Redis.validate.js +2 -2
  62. package/dist/entities/Redis/Redis.validate.js.map +1 -1
  63. package/dist/entities/Redis/index.js.map +1 -1
  64. package/dist/entities/Sequelize/Sequelize.config.js.map +1 -1
  65. package/dist/entities/Sequelize/Sequelize.js +2 -2
  66. package/dist/entities/Sequelize/Sequelize.js.map +1 -1
  67. package/dist/entities/Sequelize/Sequelize.types.js.map +1 -1
  68. package/dist/entities/Sequelize/Sequelize.validate.js +2 -2
  69. package/dist/entities/Sequelize/Sequelize.validate.js.map +1 -1
  70. package/dist/entities/Sequelize/index.js.map +1 -1
  71. package/dist/entities/Server/Server.const.js.map +1 -1
  72. package/dist/entities/Server/Server.js +18 -17
  73. package/dist/entities/Server/Server.js.map +1 -1
  74. package/dist/entities/Server/Server.types.js.map +1 -1
  75. package/dist/entities/Server/index.js.map +1 -1
  76. package/dist/entities/SocketClient/SocketClient.js +33 -32
  77. package/dist/entities/SocketClient/SocketClient.js.map +1 -1
  78. package/dist/entities/SocketClient/SocketClient.types.js.map +1 -1
  79. package/dist/entities/SocketClient/index.js.map +1 -1
  80. package/dist/entities/SocketClient/parseMessage/index.js.map +1 -1
  81. package/dist/entities/SocketClient/parseMessage/parseMessage.js +2 -2
  82. package/dist/entities/SocketClient/parseMessage/parseMessage.js.map +1 -1
  83. package/dist/entities/Storage/Storage.js +20 -20
  84. package/dist/entities/Storage/Storage.js.map +1 -1
  85. package/dist/entities/Storage/Storage.types.js.map +1 -1
  86. package/dist/entities/Storage/index.js.map +1 -1
  87. package/dist/entities/ValidationError/ValidationError.js.map +1 -1
  88. package/dist/entities/ValidationError/index.js.map +1 -1
  89. package/dist/entities/WebError/WebError.js +7 -6
  90. package/dist/entities/WebError/WebError.js.map +1 -1
  91. package/dist/entities/WebError/WebError.types.js.map +1 -1
  92. package/dist/entities/WebError/index.js.map +1 -1
  93. package/dist/entities/index.js.map +1 -1
  94. package/dist/index.js.map +1 -1
  95. package/dist/metrics/debug.js.map +1 -1
  96. package/dist/metrics/index.js.map +1 -1
  97. package/dist/metrics/request.js.map +1 -1
  98. package/dist/middleware/authAdmin/authAdmin.js.map +1 -1
  99. package/dist/middleware/authAdmin/authAdmin.types.js.map +1 -1
  100. package/dist/middleware/authAdmin/index.js.map +1 -1
  101. package/dist/middleware/authHmac/authHmac.js.map +1 -1
  102. package/dist/middleware/authHmac/authHmac.types.js.map +1 -1
  103. package/dist/middleware/authHmac/index.js.map +1 -1
  104. package/dist/middleware/authJwt/authJwt.js.map +1 -1
  105. package/dist/middleware/authJwt/authJwt.types.js.map +1 -1
  106. package/dist/middleware/authJwt/index.js.map +1 -1
  107. package/dist/middleware/authStatic/authStatic.js +3 -3
  108. package/dist/middleware/authStatic/authStatic.js.map +1 -1
  109. package/dist/middleware/authStatic/index.js.map +1 -1
  110. package/dist/middleware/authTls/authTls.js +8 -8
  111. package/dist/middleware/authTls/authTls.js.map +1 -1
  112. package/dist/middleware/authTls/authTls.types.js.map +1 -1
  113. package/dist/middleware/authTls/index.js.map +1 -1
  114. package/dist/middleware/checkPermission/checkPermission.js.map +1 -1
  115. package/dist/middleware/error/error.js.map +1 -1
  116. package/dist/middleware/error/index.js.map +1 -1
  117. package/dist/middleware/fileUploader/compressAvatar/compressAvatar.js +2 -2
  118. package/dist/middleware/fileUploader/compressAvatar/compressAvatar.js.map +1 -1
  119. package/dist/middleware/fileUploader/compressAvatar/compressAvatar.types.js.map +1 -1
  120. package/dist/middleware/fileUploader/compressAvatar/index.js.map +1 -1
  121. package/dist/middleware/fileUploader/fileUploader.js +12 -12
  122. package/dist/middleware/fileUploader/fileUploader.js.map +1 -1
  123. package/dist/middleware/fileUploader/fileUploader.types.js.map +1 -1
  124. package/dist/middleware/fileUploader/index.js.map +1 -1
  125. package/dist/middleware/fileUploader/isMultiPart/index.js.map +1 -1
  126. package/dist/middleware/fileUploader/isMultiPart/isMultipart.js.map +1 -1
  127. package/dist/middleware/fileUploader/validate/index.js.map +1 -1
  128. package/dist/middleware/fileUploader/validate/validate.js.map +1 -1
  129. package/dist/middleware/fourOhFour/fourOhFour.js.map +1 -1
  130. package/dist/middleware/fourOhFour/index.js.map +1 -1
  131. package/dist/middleware/geminiFileUploader/geminiFileUploader.js.map +1 -1
  132. package/dist/middleware/geminiFileUploader/index.js.map +1 -1
  133. package/dist/middleware/healthCheck/healthCheck.js +2 -2
  134. package/dist/middleware/healthCheck/healthCheck.js.map +1 -1
  135. package/dist/middleware/healthCheck/index.js.map +1 -1
  136. package/dist/middleware/index.js.map +1 -1
  137. package/dist/middleware/metrics/index.js.map +1 -1
  138. package/dist/middleware/metrics/metrics.js.map +1 -1
  139. package/dist/middleware/requestMetrics/index.js.map +1 -1
  140. package/dist/middleware/requestMetrics/requestMetrics.js.map +1 -1
  141. package/dist/middleware/swaggerDocs/index.js.map +1 -1
  142. package/dist/middleware/swaggerDocs/swaggerDocs.js +7 -7
  143. package/dist/middleware/swaggerDocs/swaggerDocs.js.map +1 -1
  144. package/dist/middleware/swaggerDocs/swaggerDocs.types.js.map +1 -1
  145. package/dist/middleware/userResolver/index.js.map +1 -1
  146. package/dist/middleware/userResolver/userResolver.js.map +1 -1
  147. package/dist/middleware/validate/index.js.map +1 -1
  148. package/dist/middleware/validate/validate.js.map +1 -1
  149. package/dist/middleware/version/index.js.map +1 -1
  150. package/dist/middleware/version/version.js +3 -3
  151. package/dist/middleware/version/version.js.map +1 -1
  152. package/dist/utils/checkEnvironment/index.js +13 -13
  153. package/dist/utils/checkEnvironment/index.js.map +1 -1
  154. package/dist/utils/createHttpServer/createHttpServer.js.map +1 -1
  155. package/dist/utils/createHttpServer/createHttpServer.validate.js +2 -2
  156. package/dist/utils/createHttpServer/createHttpServer.validate.js.map +1 -1
  157. package/dist/utils/createHttpServer/index.js.map +1 -1
  158. package/dist/utils/createSortedObject/createSortedObject.js.map +1 -1
  159. package/dist/utils/createSortedObject/index.js.map +1 -1
  160. package/dist/utils/dbMigration/dbMigration.js +8 -8
  161. package/dist/utils/dbMigration/dbMigration.js.map +1 -1
  162. package/dist/utils/dbMigration/dbMigration.types.js.map +1 -1
  163. package/dist/utils/dbMigration/index.js.map +1 -1
  164. package/dist/utils/dbMigration/migrateMetadataTable/index.js.map +1 -1
  165. package/dist/utils/dbMigration/migrateMetadataTable/migrateMetadataTable.js +4 -4
  166. package/dist/utils/dbMigration/migrateMetadataTable/migrateMetadataTable.js.map +1 -1
  167. package/dist/utils/envAssert/envAssert.js +6 -6
  168. package/dist/utils/envAssert/envAssert.js.map +1 -1
  169. package/dist/utils/envAssert/index.js.map +1 -1
  170. package/dist/utils/envAssert/validators/hostList.js +2 -2
  171. package/dist/utils/envAssert/validators/hostList.js.map +1 -1
  172. package/dist/utils/envAssert/validators/index.js.map +1 -1
  173. package/dist/utils/envAssert/validators/ipList.js +2 -2
  174. package/dist/utils/envAssert/validators/ipList.js.map +1 -1
  175. package/dist/utils/envAssert/validators/path.js +2 -2
  176. package/dist/utils/envAssert/validators/path.js.map +1 -1
  177. package/dist/utils/envAssert/validators/string.js +2 -2
  178. package/dist/utils/envAssert/validators/string.js.map +1 -1
  179. package/dist/utils/envAssert/validators/stringList.js +3 -3
  180. package/dist/utils/envAssert/validators/stringList.js.map +1 -1
  181. package/dist/utils/filter/filter.js +4 -4
  182. package/dist/utils/filter/filter.js.map +1 -1
  183. package/dist/utils/filter/index.js.map +1 -1
  184. package/dist/utils/getDynamicLink/getDynamicLink.js.map +1 -1
  185. package/dist/utils/getDynamicLink/getDynamicLink.types.js.map +1 -1
  186. package/dist/utils/getDynamicLink/getDynamicLink.validate.js.map +1 -1
  187. package/dist/utils/getDynamicLink/index.js.map +1 -1
  188. package/dist/utils/hmac/checkEnv/checkEnv.js +2 -2
  189. package/dist/utils/hmac/checkEnv/checkEnv.js.map +1 -1
  190. package/dist/utils/hmac/checkEnv/index.js.map +1 -1
  191. package/dist/utils/hmac/createHmac/createHmac.js.map +1 -1
  192. package/dist/utils/hmac/createHmac/index.js.map +1 -1
  193. package/dist/utils/hmac/index.js.map +1 -1
  194. package/dist/utils/hmac/index.types.js.map +1 -1
  195. package/dist/utils/hmac/signPayload/index.js.map +1 -1
  196. package/dist/utils/hmac/signPayload/signPayload.js.map +1 -1
  197. package/dist/utils/hmac/verifySignature/index.js.map +1 -1
  198. package/dist/utils/hmac/verifySignature/verifySignature.js.map +1 -1
  199. package/dist/utils/index.js.map +1 -1
  200. package/dist/utils/jwt/index.js.map +1 -1
  201. package/dist/utils/jwt/jwt.js.map +1 -1
  202. package/dist/utils/jwt/jwt.types.js.map +1 -1
  203. package/dist/utils/report/index.js.map +1 -1
  204. package/dist/utils/report/output.js.map +1 -1
  205. package/dist/utils/report/output.types.js.map +1 -1
  206. package/dist/utils/report/report.js.map +1 -1
  207. package/dist/utils/report/report.types.js.map +1 -1
  208. package/dist/utils/request/index.js.map +1 -1
  209. package/dist/utils/request/request.js.map +1 -1
  210. package/dist/utils/semverCompare/index.js.map +1 -1
  211. package/dist/utils/semverCompare/semverCompare.js +5 -5
  212. package/dist/utils/semverCompare/semverCompare.js.map +1 -1
  213. package/dist/utils/sendEmail/index.js.map +1 -1
  214. package/dist/utils/sendEmail/sendEmail.js +8 -8
  215. package/dist/utils/sendEmail/sendEmail.js.map +1 -1
  216. package/dist/utils/sendEmail/sendEmail.types.js.map +1 -1
  217. package/dist/utils/sendPush/index.js.map +1 -1
  218. package/dist/utils/sendPush/sendPush.js +5 -5
  219. package/dist/utils/sendPush/sendPush.js.map +1 -1
  220. package/dist/utils/sendPush/sendPush.types.js.map +1 -1
  221. package/dist/utils/tlsConfig/index.js.map +1 -1
  222. package/dist/utils/tlsConfig/tlsConfig.js +2 -2
  223. package/dist/utils/tlsConfig/tlsConfig.js.map +1 -1
  224. package/dist/utils/tlsConfig/tlsConfig.types.js.map +1 -1
  225. package/dist/utils/tlsConfig/tlsConfig.validate.js +2 -2
  226. package/dist/utils/tlsConfig/tlsConfig.validate.js.map +1 -1
  227. package/dist/utils/tlsRequest/index.js.map +1 -1
  228. package/dist/utils/tlsRequest/tlsRequest.js.map +1 -1
  229. package/dist/utils/trimPathSlash/index.js.map +1 -1
  230. package/dist/utils/trimPathSlash/trimPathSlash.js +4 -4
  231. package/dist/utils/trimPathSlash/trimPathSlash.js.map +1 -1
  232. package/eslint.config.mjs +11 -11
  233. package/package.json +159 -164
  234. package/src/const/DebeziumEvent.ts +6 -6
  235. package/src/const/LogSeverity.ts +7 -7
  236. package/src/const/index.ts +5 -5
  237. package/src/const/metrics.ts +6 -6
  238. package/src/const/mime.ts +37 -37
  239. package/src/const/tokenIssuer.ts +9 -9
  240. package/src/db/migrations/20241030121500-create-sequelize-meta-table.ts +29 -29
  241. package/src/db/models/SequelizeMeta.ts +16 -16
  242. package/src/db/models/index.ts +2 -2
  243. package/src/entities/ElasticSearch/ElasticSearch.ts +103 -103
  244. package/src/entities/ElasticSearch/ElasticSearch.types.ts +7 -7
  245. package/src/entities/ElasticSearch/index.ts +2 -2
  246. package/src/entities/Endpoint/Endpoint.test.ts +337 -337
  247. package/src/entities/Endpoint/Endpoint.ts +202 -202
  248. package/src/entities/Endpoint/Endpoint.types.ts +205 -205
  249. package/src/entities/Endpoint/index.ts +2 -2
  250. package/src/entities/EngineError/EngineError.ts +28 -28
  251. package/src/entities/EngineError/EngineError.types.ts +15 -15
  252. package/src/entities/EngineError/index.ts +2 -2
  253. package/src/entities/KeySet/KeySet.test.ts +126 -126
  254. package/src/entities/KeySet/KeySet.ts +172 -172
  255. package/src/entities/KeySet/KeySet.types.ts +28 -28
  256. package/src/entities/KeySet/index.ts +2 -2
  257. package/src/entities/LifecycleController/LifecycleController.test.ts +48 -48
  258. package/src/entities/LifecycleController/LifecycleController.ts +24 -24
  259. package/src/entities/LifecycleController/LifecycleController.types.ts +5 -5
  260. package/src/entities/LifecycleController/index.ts +2 -2
  261. package/src/entities/Localizator/Localizator.ts +139 -139
  262. package/src/entities/Localizator/Localizator.types.ts +52 -52
  263. package/src/entities/Localizator/guessNamingConvention/guessNamingConvention.test.ts +165 -165
  264. package/src/entities/Localizator/guessNamingConvention/guessNamingConvention.ts +58 -58
  265. package/src/entities/Localizator/guessNamingConvention/index.ts +1 -1
  266. package/src/entities/Localizator/index.ts +2 -2
  267. package/src/entities/MessageHandler/MessageHandler.test.ts +130 -130
  268. package/src/entities/MessageHandler/MessageHandler.ts +72 -72
  269. package/src/entities/MessageHandler/MessageHandler.types.ts +15 -15
  270. package/src/entities/MessageHandler/index.ts +2 -2
  271. package/src/entities/PubSub/PubSub.test.ts +297 -297
  272. package/src/entities/PubSub/PubSub.ts +202 -202
  273. package/src/entities/PubSub/PubSub.types.ts +76 -76
  274. package/src/entities/PubSub/handleMessage/handleMessage.test.ts +102 -102
  275. package/src/entities/PubSub/handleMessage/handleMessage.ts +65 -65
  276. package/src/entities/PubSub/handleMessage/index.ts +1 -1
  277. package/src/entities/PubSub/index.ts +2 -2
  278. package/src/entities/PushNotification/PushNotification.test.ts +35 -35
  279. package/src/entities/PushNotification/PushNotification.ts +44 -44
  280. package/src/entities/PushNotification/PushNotification.types.ts +25 -25
  281. package/src/entities/PushNotification/index.ts +2 -2
  282. package/src/entities/Redis/Redis.ts +71 -71
  283. package/src/entities/Redis/Redis.types.ts +19 -19
  284. package/src/entities/Redis/Redis.validate.ts +17 -17
  285. package/src/entities/Redis/index.ts +2 -2
  286. package/src/entities/Sequelize/Sequelize.config.ts +59 -59
  287. package/src/entities/Sequelize/Sequelize.test.ts +21 -21
  288. package/src/entities/Sequelize/Sequelize.ts +75 -75
  289. package/src/entities/Sequelize/Sequelize.types.ts +10 -10
  290. package/src/entities/Sequelize/Sequelize.validate.ts +15 -15
  291. package/src/entities/Sequelize/index.ts +2 -2
  292. package/src/entities/Server/Server.const.ts +56 -56
  293. package/src/entities/Server/Server.test.ts +272 -272
  294. package/src/entities/Server/Server.ts +445 -445
  295. package/src/entities/Server/Server.types.ts +88 -88
  296. package/src/entities/Server/index.ts +2 -2
  297. package/src/entities/SocketClient/SocketClient.test.ts +392 -392
  298. package/src/entities/SocketClient/SocketClient.ts +401 -401
  299. package/src/entities/SocketClient/SocketClient.types.ts +62 -62
  300. package/src/entities/SocketClient/index.ts +2 -2
  301. package/src/entities/SocketClient/parseMessage/index.ts +1 -1
  302. package/src/entities/SocketClient/parseMessage/parseMessage.test.ts +20 -20
  303. package/src/entities/SocketClient/parseMessage/parseMessage.ts +26 -26
  304. package/src/entities/Storage/Storage.test.ts +58 -58
  305. package/src/entities/Storage/Storage.ts +219 -219
  306. package/src/entities/Storage/Storage.types.ts +57 -57
  307. package/src/entities/Storage/index.ts +2 -2
  308. package/src/entities/ValidationError/ValidationError.ts +34 -34
  309. package/src/entities/ValidationError/index.ts +1 -1
  310. package/src/entities/WebError/WebError.test.ts +18 -18
  311. package/src/entities/WebError/WebError.ts +23 -23
  312. package/src/entities/WebError/WebError.types.ts +9 -9
  313. package/src/entities/WebError/index.ts +2 -2
  314. package/src/entities/index.ts +16 -16
  315. package/src/index.ts +4 -4
  316. package/src/metrics/debug.ts +10 -10
  317. package/src/metrics/index.ts +2 -2
  318. package/src/metrics/request.ts +17 -17
  319. package/src/middleware/authAdmin/authAdmin.test.ts +199 -199
  320. package/src/middleware/authAdmin/authAdmin.ts +114 -114
  321. package/src/middleware/authAdmin/authAdmin.types.ts +19 -19
  322. package/src/middleware/authAdmin/index.ts +2 -2
  323. package/src/middleware/authHmac/authHmac.test.ts +86 -86
  324. package/src/middleware/authHmac/authHmac.ts +56 -56
  325. package/src/middleware/authHmac/authHmac.types.ts +7 -7
  326. package/src/middleware/authHmac/index.ts +2 -2
  327. package/src/middleware/authJwt/authJwt.test.ts +54 -54
  328. package/src/middleware/authJwt/authJwt.ts +55 -55
  329. package/src/middleware/authJwt/authJwt.types.ts +14 -14
  330. package/src/middleware/authJwt/index.ts +2 -2
  331. package/src/middleware/authStatic/authStatic.test.ts +36 -36
  332. package/src/middleware/authStatic/authStatic.ts +45 -45
  333. package/src/middleware/authStatic/index.ts +1 -1
  334. package/src/middleware/authTls/authTls.test.ts +138 -138
  335. package/src/middleware/authTls/authTls.ts +106 -106
  336. package/src/middleware/authTls/authTls.types.ts +13 -13
  337. package/src/middleware/authTls/index.ts +2 -2
  338. package/src/middleware/checkPermission/checkPermission.ts +32 -32
  339. package/src/middleware/error/error.test.ts +60 -60
  340. package/src/middleware/error/error.ts +25 -25
  341. package/src/middleware/error/index.ts +1 -1
  342. package/src/middleware/fileUploader/compressAvatar/compressAvatar.ts +25 -25
  343. package/src/middleware/fileUploader/compressAvatar/compressAvatar.types.ts +12 -12
  344. package/src/middleware/fileUploader/compressAvatar/index.ts +2 -2
  345. package/src/middleware/fileUploader/fileUploader.test.ts +310 -310
  346. package/src/middleware/fileUploader/fileUploader.ts +303 -303
  347. package/src/middleware/fileUploader/fileUploader.types.ts +52 -52
  348. package/src/middleware/fileUploader/index.ts +2 -2
  349. package/src/middleware/fileUploader/isMultiPart/index.ts +1 -1
  350. package/src/middleware/fileUploader/isMultiPart/isMultipart.ts +9 -9
  351. package/src/middleware/fileUploader/validate/index.ts +1 -1
  352. package/src/middleware/fileUploader/validate/validate.ts +27 -27
  353. package/src/middleware/fourOhFour/fourOhFour.test.ts +14 -14
  354. package/src/middleware/fourOhFour/fourOhFour.ts +13 -13
  355. package/src/middleware/fourOhFour/index.ts +1 -1
  356. package/src/middleware/geminiFileUploader/geminiFileUploader.ts +117 -117
  357. package/src/middleware/geminiFileUploader/index.ts +1 -1
  358. package/src/middleware/healthCheck/healthCheck.test.ts +12 -12
  359. package/src/middleware/healthCheck/healthCheck.ts +14 -14
  360. package/src/middleware/healthCheck/index.ts +1 -1
  361. package/src/middleware/index.ts +17 -17
  362. package/src/middleware/metrics/index.ts +1 -1
  363. package/src/middleware/metrics/metrics.test.ts +46 -46
  364. package/src/middleware/metrics/metrics.ts +24 -24
  365. package/src/middleware/requestMetrics/index.ts +1 -1
  366. package/src/middleware/requestMetrics/requestMetrics.test.ts +77 -77
  367. package/src/middleware/requestMetrics/requestMetrics.ts +20 -20
  368. package/src/middleware/swaggerDocs/index.ts +2 -2
  369. package/src/middleware/swaggerDocs/swaggerDocs.ts +114 -114
  370. package/src/middleware/swaggerDocs/swaggerDocs.types.ts +41 -41
  371. package/src/middleware/userResolver/index.ts +1 -1
  372. package/src/middleware/userResolver/userResolver.test.ts +35 -35
  373. package/src/middleware/userResolver/userResolver.ts +35 -35
  374. package/src/middleware/validate/index.ts +1 -1
  375. package/src/middleware/validate/validate.test.ts +43 -43
  376. package/src/middleware/validate/validate.ts +25 -25
  377. package/src/middleware/version/index.ts +1 -1
  378. package/src/middleware/version/version.test.ts +23 -23
  379. package/src/middleware/version/version.ts +12 -12
  380. package/src/utils/checkEnvironment/index.ts +49 -49
  381. package/src/utils/createHttpServer/createHttpServer.test.ts +24 -24
  382. package/src/utils/createHttpServer/createHttpServer.ts +34 -34
  383. package/src/utils/createHttpServer/createHttpServer.validate.ts +17 -17
  384. package/src/utils/createHttpServer/index.ts +1 -1
  385. package/src/utils/createSortedObject/createSortedObject.ts +20 -20
  386. package/src/utils/createSortedObject/createSortedObjet.test.ts +47 -47
  387. package/src/utils/createSortedObject/index.ts +1 -1
  388. package/src/utils/dbMigration/dbMigration.test.ts +209 -209
  389. package/src/utils/dbMigration/dbMigration.ts +199 -199
  390. package/src/utils/dbMigration/dbMigration.types.ts +11 -11
  391. package/src/utils/dbMigration/index.ts +2 -2
  392. package/src/utils/dbMigration/migrateMetadataTable/index.ts +1 -1
  393. package/src/utils/dbMigration/migrateMetadataTable/migrateMetadataTable.test.ts +59 -59
  394. package/src/utils/dbMigration/migrateMetadataTable/migrateMetadataTable.ts +102 -102
  395. package/src/utils/envAssert/envAssert.ts +31 -31
  396. package/src/utils/envAssert/index.ts +1 -1
  397. package/src/utils/envAssert/validators/hostList.ts +17 -17
  398. package/src/utils/envAssert/validators/index.ts +5 -5
  399. package/src/utils/envAssert/validators/ipList.ts +13 -13
  400. package/src/utils/envAssert/validators/path.ts +13 -13
  401. package/src/utils/envAssert/validators/string.ts +9 -9
  402. package/src/utils/envAssert/validators/stringList.ts +13 -13
  403. package/src/utils/filter/filter.ts +17 -17
  404. package/src/utils/filter/index.ts +1 -1
  405. package/src/utils/getDynamicLink/getDynamicLink.test.ts +51 -51
  406. package/src/utils/getDynamicLink/getDynamicLink.ts +28 -28
  407. package/src/utils/getDynamicLink/getDynamicLink.types.ts +11 -11
  408. package/src/utils/getDynamicLink/getDynamicLink.validate.ts +6 -6
  409. package/src/utils/getDynamicLink/index.ts +2 -2
  410. package/src/utils/hmac/checkEnv/checkEnv.test.ts +18 -18
  411. package/src/utils/hmac/checkEnv/checkEnv.ts +9 -9
  412. package/src/utils/hmac/checkEnv/index.ts +1 -1
  413. package/src/utils/hmac/createHmac/createHmac.ts +33 -33
  414. package/src/utils/hmac/createHmac/index.ts +1 -1
  415. package/src/utils/hmac/index.ts +4 -4
  416. package/src/utils/hmac/index.types.ts +13 -13
  417. package/src/utils/hmac/signPayload/index.ts +1 -1
  418. package/src/utils/hmac/signPayload/signPayload.ts +16 -16
  419. package/src/utils/hmac/verifySignature/index.ts +1 -1
  420. package/src/utils/hmac/verifySignature/verifySignature.ts +24 -24
  421. package/src/utils/index.ts +26 -26
  422. package/src/utils/jwt/index.ts +2 -2
  423. package/src/utils/jwt/jwt.test.ts +41 -41
  424. package/src/utils/jwt/jwt.ts +204 -204
  425. package/src/utils/jwt/jwt.types.ts +21 -21
  426. package/src/utils/report/index.ts +3 -3
  427. package/src/utils/report/output.ts +45 -45
  428. package/src/utils/report/output.types.ts +70 -70
  429. package/src/utils/report/report.test.ts +133 -133
  430. package/src/utils/report/report.ts +134 -134
  431. package/src/utils/report/report.types.ts +13 -13
  432. package/src/utils/request/index.ts +1 -1
  433. package/src/utils/request/request.test.ts +26 -26
  434. package/src/utils/request/request.ts +48 -48
  435. package/src/utils/semverCompare/index.ts +1 -1
  436. package/src/utils/semverCompare/semverCompare.test.ts +49 -49
  437. package/src/utils/semverCompare/semverCompare.ts +60 -60
  438. package/src/utils/sendEmail/index.ts +1 -1
  439. package/src/utils/sendEmail/sendEmail.ts +27 -27
  440. package/src/utils/sendEmail/sendEmail.types.ts +7 -7
  441. package/src/utils/sendPush/index.ts +2 -2
  442. package/src/utils/sendPush/sendPush.ts +20 -20
  443. package/src/utils/sendPush/sendPush.types.ts +25 -25
  444. package/src/utils/tlsConfig/index.ts +2 -2
  445. package/src/utils/tlsConfig/tlsConfig.test.ts +32 -32
  446. package/src/utils/tlsConfig/tlsConfig.ts +47 -47
  447. package/src/utils/tlsConfig/tlsConfig.types.ts +11 -11
  448. package/src/utils/tlsConfig/tlsConfig.validate.ts +25 -25
  449. package/src/utils/tlsRequest/index.ts +1 -1
  450. package/src/utils/tlsRequest/tlsRequest.test.ts +63 -63
  451. package/src/utils/tlsRequest/tlsRequest.ts +12 -12
  452. package/src/utils/trimPathSlash/index.ts +1 -1
  453. package/src/utils/trimPathSlash/trimPathSlash.test.ts +26 -26
  454. package/src/utils/trimPathSlash/trimPathSlash.ts +8 -8
  455. package/test/env.ts +56 -56
  456. package/test/factory/index.ts +8 -8
  457. package/test/factory/sequelizeMeta.ts +12 -12
  458. package/test/hooks.ts +37 -37
  459. package/test/index.ts +3 -3
  460. package/test/stub/index.ts +3 -3
  461. package/test/stub/stubLocales.ts +68 -68
  462. package/test/stub/stubPubSub.ts +7 -7
  463. package/test/stub/stubStorage.ts +77 -77
  464. package/test/stub/stubStorage.types.ts +11 -11
  465. package/test/utils/app.ts +31 -31
  466. package/test/utils/index.ts +1 -1
  467. package/tsconfig.build.json +5 -5
  468. package/tsconfig.json +32 -32
@@ -1,68 +1,68 @@
1
- import { randomBytes } from 'crypto';
2
- import { faker } from '@faker-js/faker';
3
- import sinon, { SinonStub } from 'sinon';
4
- import { Storage } from 'entities/Storage/Storage';
5
- import { StorageUploadedFile } from 'entities/Storage/Storage.types';
6
-
7
- /**
8
- * Locales server stubbing
9
- * Will return fake content based on paths
10
- */
11
- export function stubLocales(): SinonStub {
12
- return sinon
13
- .stub(Storage, 'get')
14
- .callsFake(async (bucket: string, path: string) => {
15
- let content;
16
-
17
- switch (path) {
18
- case 'locales.json':
19
- content = { 'en-US': 'English' };
20
- break;
21
- case 'index.json':
22
- content = ['emails.json'];
23
- break;
24
- case 'localeData.json':
25
- content = {
26
- 'en-US': {
27
- enabled: true,
28
- display: 'English',
29
- names: {
30
- firstNameFirst: true,
31
- spacing: true
32
- }
33
- }
34
- };
35
- break;
36
- case 'scripts.json':
37
- content = {};
38
- break;
39
- case 'en-US/emails.json':
40
- content = {
41
- welcome: {
42
- subject: '🎊 {USER_FIRST_NAME} your account is ready!',
43
- header: '{USER_FIRST_NAME}, your account is ready!',
44
- body: 'Congratulations {USER_FIRST_NAME}!\n\nYou have successfully created an account with {USER_EMAIL}\n\nPlease return to the screen where you signed up, and you will be signed in.',
45
- footer:
46
- 'This email was sent to {USER_EMAIL}.\nYou received this email because you successfully signed up.'
47
- }
48
- };
49
- break;
50
- default:
51
- throw new Error(`No match for path '${path}' on locales server`);
52
- }
53
-
54
- const metadata: StorageUploadedFile = {
55
- bucket,
56
- name: path,
57
- contentType: faker.system.mimeType(),
58
- size: `${faker.number.int()}`,
59
- timeCreated: new Date().toISOString(),
60
- updated: new Date().toISOString(),
61
- md5Hash: randomBytes(32).toString('base64'),
62
- crc32c: randomBytes(32).toString('base64'),
63
- storageClass: 'normal'
64
- };
65
-
66
- return { data: Buffer.from(JSON.stringify(content), 'utf-8'), metadata };
67
- });
68
- }
1
+ import { randomBytes } from 'crypto';
2
+ import { faker } from '@faker-js/faker';
3
+ import sinon, { SinonStub } from 'sinon';
4
+ import { Storage } from 'entities/Storage/Storage';
5
+ import { StorageUploadedFile } from 'entities/Storage/Storage.types';
6
+
7
+ /**
8
+ * Locales server stubbing
9
+ * Will return fake content based on paths
10
+ */
11
+ export function stubLocales(): SinonStub {
12
+ return sinon
13
+ .stub(Storage, 'get')
14
+ .callsFake(async (bucket: string, path: string) => {
15
+ let content;
16
+
17
+ switch (path) {
18
+ case 'locales.json':
19
+ content = { 'en-US': 'English' };
20
+ break;
21
+ case 'index.json':
22
+ content = ['emails.json'];
23
+ break;
24
+ case 'localeData.json':
25
+ content = {
26
+ 'en-US': {
27
+ enabled: true,
28
+ display: 'English',
29
+ names: {
30
+ firstNameFirst: true,
31
+ spacing: true
32
+ }
33
+ }
34
+ };
35
+ break;
36
+ case 'scripts.json':
37
+ content = {};
38
+ break;
39
+ case 'en-US/emails.json':
40
+ content = {
41
+ welcome: {
42
+ subject: '🎊 {USER_FIRST_NAME} your account is ready!',
43
+ header: '{USER_FIRST_NAME}, your account is ready!',
44
+ body: 'Congratulations {USER_FIRST_NAME}!\n\nYou have successfully created an account with {USER_EMAIL}\n\nPlease return to the screen where you signed up, and you will be signed in.',
45
+ footer:
46
+ 'This email was sent to {USER_EMAIL}.\nYou received this email because you successfully signed up.'
47
+ }
48
+ };
49
+ break;
50
+ default:
51
+ throw new Error(`No match for path '${path}' on locales server`);
52
+ }
53
+
54
+ const metadata: StorageUploadedFile = {
55
+ bucket,
56
+ name: path,
57
+ contentType: faker.system.mimeType(),
58
+ size: `${faker.number.int()}`,
59
+ timeCreated: new Date().toISOString(),
60
+ updated: new Date().toISOString(),
61
+ md5Hash: randomBytes(32).toString('base64'),
62
+ crc32c: randomBytes(32).toString('base64'),
63
+ storageClass: 'normal'
64
+ };
65
+
66
+ return { data: Buffer.from(JSON.stringify(content), 'utf-8'), metadata };
67
+ });
68
+ }
@@ -1,7 +1,7 @@
1
- import { stub } from 'sinon';
2
- import { PubSub } from 'entities/PubSub';
3
-
4
- /** Create a stub for Pub/Sub entity */
5
- export function stubPubSub(): void {
6
- stub(PubSub, 'init').resolves();
7
- }
1
+ import { stub } from 'sinon';
2
+ import { PubSub } from 'entities/PubSub';
3
+
4
+ /** Create a stub for Pub/Sub entity */
5
+ export function stubPubSub(): void {
6
+ stub(PubSub, 'init').resolves();
7
+ }
@@ -1,77 +1,77 @@
1
- import { randomUUID, randomBytes } from 'crypto';
2
- import { Readable } from 'stream';
3
- import { CreateWriteStreamOptions } from '@google-cloud/storage';
4
- import { faker } from '@faker-js/faker';
5
- import { stub } from 'sinon';
6
- import { StubbedStorage } from './stubStorage.types';
7
- import { Storage } from 'entities/Storage/Storage';
8
- import {
9
- UploadDestinationOptions,
10
- StorageUploadedFile
11
- } from 'entities/Storage/Storage.types';
12
-
13
- /** Create a stub for the Storage entity */
14
- export function stubStorage(
15
- uploadOverride: Partial<StorageUploadedFile> = {}
16
- ): StubbedStorage {
17
- const upload = stub(Storage, 'upload').callsFake(
18
- async (
19
- readStream: Readable,
20
- bucket: string,
21
- destinationOptions: UploadDestinationOptions = {},
22
- storageOptions: CreateWriteStreamOptions = {}
23
- ) => {
24
- readStream.resume(); // Pause the stream
25
- const path = Storage.generateFileDestination(destinationOptions);
26
- return {
27
- kind: 'storage#object',
28
- id: `${bucket}/${path}/${randomUUID()}`,
29
- selfLink: `https://www.googleapis.com/storage/v1/b/${bucket}/o/${encodeURIComponent(path)}`,
30
- mediaLink: `https://storage.googleapis.com/download/storage/v1/b/${bucket}/o/${encodeURIComponent(
31
- path
32
- )}?generation=1610116408152540&alt=media`,
33
- name: path,
34
- bucket,
35
- generation: randomUUID(),
36
- metageneration: '1',
37
- contentType: (
38
- storageOptions.metadata as {
39
- /** file type */
40
- fileType: string;
41
- }
42
- )?.fileType,
43
- storageClass: 'STANDARD',
44
- size: '4',
45
- md5Hash: 'CY9rzUYh03PK3k6DJie09g==',
46
- crc32c: 'hqBywA==',
47
- etag: 'CNyjuITHjO4CEAE=',
48
- timeCreated: new Date().toISOString(),
49
- updated: new Date().toISOString(),
50
- timeStorageClassUpdated: new Date().toISOString(),
51
- ...uploadOverride
52
- };
53
- }
54
- );
55
- const remove = stub(Storage, 'delete').resolves();
56
-
57
- const download = stub(Storage, 'download').callsFake(
58
- async (bucket: string, path: string) => {
59
- const stream = new Readable();
60
- stream.push(faker.lorem.paragraph());
61
- stream.push(null); // EOF
62
- const metadata: StorageUploadedFile = {
63
- bucket,
64
- name: path,
65
- contentType: faker.system.mimeType(),
66
- size: `${faker.number.int()}`,
67
- timeCreated: new Date().toISOString(),
68
- updated: new Date().toISOString(),
69
- md5Hash: randomBytes(32).toString('base64'),
70
- crc32c: randomBytes(32).toString('base64'),
71
- storageClass: 'normal'
72
- };
73
- return { stream, metadata };
74
- }
75
- );
76
- return { upload, remove, download };
77
- }
1
+ import { randomUUID, randomBytes } from 'crypto';
2
+ import { Readable } from 'stream';
3
+ import { CreateWriteStreamOptions } from '@google-cloud/storage';
4
+ import { faker } from '@faker-js/faker';
5
+ import { stub } from 'sinon';
6
+ import { StubbedStorage } from './stubStorage.types';
7
+ import { Storage } from 'entities/Storage/Storage';
8
+ import {
9
+ UploadDestinationOptions,
10
+ StorageUploadedFile
11
+ } from 'entities/Storage/Storage.types';
12
+
13
+ /** Create a stub for the Storage entity */
14
+ export function stubStorage(
15
+ uploadOverride: Partial<StorageUploadedFile> = {}
16
+ ): StubbedStorage {
17
+ const upload = stub(Storage, 'upload').callsFake(
18
+ async (
19
+ readStream: Readable,
20
+ bucket: string,
21
+ destinationOptions: UploadDestinationOptions = {},
22
+ storageOptions: CreateWriteStreamOptions = {}
23
+ ) => {
24
+ readStream.resume(); // Pause the stream
25
+ const path = Storage.generateFileDestination(destinationOptions);
26
+ return {
27
+ kind: 'storage#object',
28
+ id: `${bucket}/${path}/${randomUUID()}`,
29
+ selfLink: `https://www.googleapis.com/storage/v1/b/${bucket}/o/${encodeURIComponent(path)}`,
30
+ mediaLink: `https://storage.googleapis.com/download/storage/v1/b/${bucket}/o/${encodeURIComponent(
31
+ path
32
+ )}?generation=1610116408152540&alt=media`,
33
+ name: path,
34
+ bucket,
35
+ generation: randomUUID(),
36
+ metageneration: '1',
37
+ contentType: (
38
+ storageOptions.metadata as {
39
+ /** file type */
40
+ fileType: string;
41
+ }
42
+ )?.fileType,
43
+ storageClass: 'STANDARD',
44
+ size: '4',
45
+ md5Hash: 'CY9rzUYh03PK3k6DJie09g==',
46
+ crc32c: 'hqBywA==',
47
+ etag: 'CNyjuITHjO4CEAE=',
48
+ timeCreated: new Date().toISOString(),
49
+ updated: new Date().toISOString(),
50
+ timeStorageClassUpdated: new Date().toISOString(),
51
+ ...uploadOverride
52
+ };
53
+ }
54
+ );
55
+ const remove = stub(Storage, 'delete').resolves();
56
+
57
+ const download = stub(Storage, 'download').callsFake(
58
+ async (bucket: string, path: string) => {
59
+ const stream = new Readable();
60
+ stream.push(faker.lorem.paragraph());
61
+ stream.push(null); // EOF
62
+ const metadata: StorageUploadedFile = {
63
+ bucket,
64
+ name: path,
65
+ contentType: faker.system.mimeType(),
66
+ size: `${faker.number.int()}`,
67
+ timeCreated: new Date().toISOString(),
68
+ updated: new Date().toISOString(),
69
+ md5Hash: randomBytes(32).toString('base64'),
70
+ crc32c: randomBytes(32).toString('base64'),
71
+ storageClass: 'normal'
72
+ };
73
+ return { stream, metadata };
74
+ }
75
+ );
76
+ return { upload, remove, download };
77
+ }
@@ -1,11 +1,11 @@
1
- import { SinonStub } from 'sinon';
2
-
3
- /** Stubbed Storage module */
4
- export interface StubbedStorage {
5
- /** upload stub */
6
- upload: SinonStub;
7
- /** remove stub */
8
- remove: SinonStub;
9
- /** download stub */
10
- download: SinonStub;
11
- }
1
+ import { SinonStub } from 'sinon';
2
+
3
+ /** Stubbed Storage module */
4
+ export interface StubbedStorage {
5
+ /** upload stub */
6
+ upload: SinonStub;
7
+ /** remove stub */
8
+ remove: SinonStub;
9
+ /** download stub */
10
+ download: SinonStub;
11
+ }
package/test/utils/app.ts CHANGED
@@ -1,31 +1,31 @@
1
- import express, { Application, Request, Response } from 'express';
2
- import {
3
- Endpoint,
4
- EndpointMethod,
5
- EndpointOptions,
6
- EndpointAuthType
7
- } from 'entities/Endpoint';
8
- import { error } from 'middleware';
9
-
10
- /**
11
- * Create a test application with the given endpoint and error handling
12
- */
13
-
14
- export function createTestApp(
15
- config: Partial<EndpointOptions<EndpointAuthType.NONE>>
16
- ): Application {
17
- const app = express();
18
- const endpoint = new Endpoint({
19
- path: '/test',
20
- method: EndpointMethod.POST,
21
- handler: (req: Request, res: Response): void => {
22
- res.sendStatus(200);
23
- },
24
- authType: EndpointAuthType.NONE,
25
- validator: {},
26
- ...config
27
- });
28
- endpoint.register(app);
29
- app.use(error);
30
- return app;
31
- }
1
+ import express, { Application, Request, Response } from 'express';
2
+ import {
3
+ Endpoint,
4
+ EndpointMethod,
5
+ EndpointOptions,
6
+ EndpointAuthType
7
+ } from 'entities/Endpoint';
8
+ import { error } from 'middleware';
9
+
10
+ /**
11
+ * Create a test application with the given endpoint and error handling
12
+ */
13
+
14
+ export function createTestApp(
15
+ config: Partial<EndpointOptions<EndpointAuthType.NONE>>
16
+ ): Application {
17
+ const app = express();
18
+ const endpoint = new Endpoint({
19
+ path: '/test',
20
+ method: EndpointMethod.POST,
21
+ handler: (req: Request, res: Response): void => {
22
+ res.sendStatus(200);
23
+ },
24
+ authType: EndpointAuthType.NONE,
25
+ validator: {},
26
+ ...config
27
+ });
28
+ endpoint.register(app);
29
+ app.use(error);
30
+ return app;
31
+ }
@@ -1 +1 @@
1
- export * from './app';
1
+ export * from './app';
@@ -1,5 +1,5 @@
1
- {
2
- "extends": "./tsconfig.json",
3
- "include": ["src"],
4
- "exclude": ["**/*.test.ts"]
5
- }
1
+ {
2
+ "extends": "./tsconfig.json",
3
+ "include": ["src"],
4
+ "exclude": ["**/*.test.ts"]
5
+ }
package/tsconfig.json CHANGED
@@ -1,32 +1,32 @@
1
- {
2
- "compilerOptions": {
3
- "baseUrl": "src",
4
- "paths": {
5
- "test": ["../test"],
6
- "test/*": ["../test/*"]
7
- },
8
- "target": "ES6",
9
- "lib": ["ES2023"],
10
- "module": "commonjs",
11
- "moduleResolution": "node",
12
- "outDir": "./dist",
13
- "noImplicitAny": true,
14
- "noImplicitThis": true,
15
- "strictNullChecks": true,
16
- "allowJs": true,
17
- "skipLibCheck": true,
18
- "esModuleInterop": true,
19
- "allowSyntheticDefaultImports": true,
20
- "strict": true,
21
- "forceConsistentCasingInFileNames": true,
22
- "noFallthroughCasesInSwitch": true,
23
- "sourceMap": true,
24
- "resolveJsonModule": true,
25
- "isolatedModules": true,
26
- "declaration": true,
27
- "emitDeclarationOnly": true,
28
- "experimentalDecorators": true,
29
- "emitDecoratorMetadata": true
30
- },
31
- "include": ["src", "test"]
32
- }
1
+ {
2
+ "compilerOptions": {
3
+ "baseUrl": "src",
4
+ "paths": {
5
+ "test": ["../test"],
6
+ "test/*": ["../test/*"]
7
+ },
8
+ "target": "ES6",
9
+ "lib": ["ES2023"],
10
+ "module": "commonjs",
11
+ "moduleResolution": "node",
12
+ "outDir": "./dist",
13
+ "noImplicitAny": true,
14
+ "noImplicitThis": true,
15
+ "strictNullChecks": true,
16
+ "allowJs": true,
17
+ "skipLibCheck": true,
18
+ "esModuleInterop": true,
19
+ "allowSyntheticDefaultImports": true,
20
+ "strict": true,
21
+ "forceConsistentCasingInFileNames": true,
22
+ "noFallthroughCasesInSwitch": true,
23
+ "sourceMap": true,
24
+ "resolveJsonModule": true,
25
+ "isolatedModules": true,
26
+ "declaration": true,
27
+ "emitDeclarationOnly": true,
28
+ "experimentalDecorators": true,
29
+ "emitDecoratorMetadata": true
30
+ },
31
+ "include": ["src", "test"]
32
+ }