@breautek/storm 3.3.0 → 4.0.0

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 (303) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/docs/README.md +153 -62
  3. package/docs/classes/{Application.Application-1.md → Application.md} +110 -112
  4. package/docs/classes/{BackendAuthenticationMiddleware.BackendAuthenticationMiddleware-1.md → BackendAuthenticationMiddleware.md} +6 -8
  5. package/docs/classes/CORSMiddleware.md +143 -0
  6. package/docs/classes/{ConfigLoader.ConfigLoader-1.md → ConfigLoader.md} +5 -7
  7. package/docs/classes/{Database.Database-1.md → Database.md} +30 -32
  8. package/docs/classes/{DatabaseConnection.DatabaseConnection-1.md → DatabaseConnection.md} +57 -59
  9. package/docs/classes/DatabaseQueryError.md +307 -0
  10. package/docs/classes/DiskSpaceError.md +301 -0
  11. package/docs/classes/DropTemporaryTableQuery.md +201 -0
  12. package/docs/classes/DumpStream.md +23 -0
  13. package/docs/classes/DuplicateEntryError.md +303 -0
  14. package/docs/classes/EntityNotFoundError.md +301 -0
  15. package/docs/classes/ExpiredTokenError.md +301 -0
  16. package/docs/classes/Handler.md +323 -0
  17. package/docs/classes/InternalError.md +301 -0
  18. package/docs/classes/InvalidCredentialsError.md +301 -0
  19. package/docs/classes/InvalidValueError.md +309 -0
  20. package/docs/classes/ManagedDatabaseConnection.md +397 -0
  21. package/docs/classes/Middleware.md +72 -0
  22. package/docs/classes/MissingConfigError.md +301 -0
  23. package/docs/classes/MissingParameterError.md +301 -0
  24. package/docs/classes/{MySQLConnection.MySQLConnection-1.md → MySQLConnection.md} +63 -65
  25. package/docs/classes/MySQLDatabase.md +314 -0
  26. package/docs/classes/{Query.Query-1.md → Query.md} +38 -32
  27. package/docs/classes/{RawQuery.RawQuery-1.md → RawQuery.md} +36 -32
  28. package/docs/classes/Request.md +321 -0
  29. package/docs/classes/Response.md +242 -0
  30. package/docs/classes/{ResponseData.ResponseData-1.md → ResponseData.md} +18 -20
  31. package/docs/classes/{ServiceProvider.ServiceProvider-1.md → ServiceProvider.md} +52 -54
  32. package/docs/classes/{ServiceResponse.ServiceResponse-1.md → ServiceResponse.md} +9 -11
  33. package/docs/classes/SetSessionVariableQuery.md +201 -0
  34. package/docs/classes/StormError.md +307 -0
  35. package/docs/classes/TemporaryTableQuery.md +207 -0
  36. package/docs/classes/{Token.Token-1.md → Token.md} +5 -7
  37. package/docs/classes/{TokenManager.TokenManager-1.md → TokenManager.md} +16 -18
  38. package/docs/classes/UnauthorizedAccessError.md +301 -0
  39. package/docs/enums/ErrorCode.md +107 -0
  40. package/docs/enums/ExitCode.md +30 -0
  41. package/docs/enums/HTTPMethod.md +52 -0
  42. package/docs/enums/JWTError.md +30 -0
  43. package/docs/enums/StatusCode.md +536 -0
  44. package/docs/interfaces/IAdditionalErrorDetails.md +7 -0
  45. package/docs/interfaces/{IAuthTokenData.IAuthTokenData-1.md → IAuthTokenData.md} +4 -6
  46. package/docs/interfaces/IConfig.md +112 -0
  47. package/docs/interfaces/{IDatabaseConfig.IDatabaseConfig-1.md → IDatabaseConfig.md} +13 -15
  48. package/docs/interfaces/{IDatabaseConnection.IDatabaseConnection-1.md → IDatabaseConnection.md} +33 -35
  49. package/docs/interfaces/IErrorResponse.md +52 -0
  50. package/docs/interfaces/IFormData.md +30 -0
  51. package/docs/interfaces/{IHandler.IHandler-1.md → IHandler.md} +4 -6
  52. package/docs/interfaces/IInsertQueryResult.md +41 -0
  53. package/docs/interfaces/IJWTVerifyOptions.md +19 -0
  54. package/docs/interfaces/IParameterMap.md +7 -0
  55. package/docs/interfaces/IRequestResponse.md +37 -0
  56. package/docs/interfaces/IServiceHeaders.md +7 -0
  57. package/docs/interfaces/ISetSessionVariableQueryInput.md +30 -0
  58. package/docs/interfaces/ITemporaryTableQueryInput.md +30 -0
  59. package/docs/interfaces/IUpdateQueryResult.md +30 -0
  60. package/docs/interfaces/{api.formidable.EmitData.md → formidable.EmitData.md} +7 -7
  61. package/docs/interfaces/{api.formidable.EventData.md → formidable.EventData.md} +10 -10
  62. package/docs/interfaces/formidable.Fields.md +9 -0
  63. package/docs/interfaces/{api.formidable.File.md → formidable.File.md} +12 -12
  64. package/docs/interfaces/{api.formidable.FileJSON.md → formidable.FileJSON.md} +12 -12
  65. package/docs/interfaces/formidable.Files.md +9 -0
  66. package/docs/interfaces/{api.formidable.Options.md → formidable.Options.md} +17 -15
  67. package/docs/interfaces/{api.formidable.Part.md → formidable.Part.md} +41 -41
  68. package/docs/modules/{api.formidable.md → formidable.md} +23 -25
  69. package/lib/Application.js +1 -1
  70. package/lib/Application.js.map +1 -1
  71. package/lib/BackendAuthenticationMiddleware.js +2 -2
  72. package/lib/BackendAuthenticationMiddleware.js.map +1 -1
  73. package/lib/CORSMiddleware.js +1 -1
  74. package/lib/CORSMiddleware.js.map +1 -1
  75. package/lib/ConfigLoader.js +1 -1
  76. package/lib/ConfigLoader.js.map +1 -1
  77. package/lib/Database.js +1 -1
  78. package/lib/Database.js.map +1 -1
  79. package/lib/DatabaseConnection.js +4 -4
  80. package/lib/DatabaseConnection.js.map +1 -1
  81. package/lib/Handler.js +2 -2
  82. package/lib/Handler.js.map +1 -1
  83. package/lib/ManagedDatabaseConnection.js +4 -4
  84. package/lib/ManagedDatabaseConnection.js.map +1 -1
  85. package/lib/MySQLConnection.js +7 -7
  86. package/lib/MySQLConnection.js.map +1 -1
  87. package/lib/MySQLDatabase.js +4 -4
  88. package/lib/MySQLDatabase.js.map +1 -1
  89. package/lib/Query.d.ts +2 -2
  90. package/lib/Query.js +2 -2
  91. package/lib/Query.js.map +1 -1
  92. package/lib/Request.js +2 -2
  93. package/lib/Request.js.map +1 -1
  94. package/lib/Response.js +1 -1
  95. package/lib/Response.js.map +1 -1
  96. package/lib/SetSessionVariableQuery.d.ts +10 -0
  97. package/lib/SetSessionVariableQuery.js +20 -0
  98. package/lib/SetSessionVariableQuery.js.map +1 -0
  99. package/lib/StormError.js +1 -1
  100. package/lib/StormError.js.map +1 -1
  101. package/lib/TemporaryTableQuery.d.ts +2 -1
  102. package/lib/TemporaryTableQuery.js +2 -2
  103. package/lib/TemporaryTableQuery.js.map +1 -1
  104. package/lib/TokenManager.js +1 -1
  105. package/lib/TokenManager.js.map +1 -1
  106. package/lib/api.d.ts +1 -0
  107. package/lib/api.js +3 -1
  108. package/lib/api.js.map +1 -1
  109. package/package.json +20 -20
  110. package/src/DatabaseConnection.ts +2 -2
  111. package/src/Query.ts +3 -3
  112. package/src/SetSessionVariableQuery.ts +29 -0
  113. package/src/TemporaryTableQuery.ts +3 -2
  114. package/src/api.ts +1 -0
  115. package/.nyc_output/01d7f3ed-ada5-4fbf-bf72-17458de5eda1.json +0 -1
  116. package/.nyc_output/07a372ea-5f20-411a-8f9b-5cfd38c9f7cf.json +0 -1
  117. package/.nyc_output/1a03fe29-15f4-4d36-a6f1-061f95c919d2.json +0 -1
  118. package/.nyc_output/1be973a3-2986-4e51-9bef-ffa834a81029.json +0 -1
  119. package/.nyc_output/1fa3f196-6284-4422-b186-8fb97ac299b1.json +0 -1
  120. package/.nyc_output/21b4136c-a3f4-465a-ab85-cdfa70dda252.json +0 -1
  121. package/.nyc_output/279ce3fa-118b-4b21-bbd4-a0dbabb3cf28.json +0 -1
  122. package/.nyc_output/370daf16-8792-4296-a491-4b0ff8c5c03d.json +0 -1
  123. package/.nyc_output/44cabfc1-f759-4ff5-9502-0967bba28c3b.json +0 -1
  124. package/.nyc_output/52cc8740-cb58-4b4e-b952-bedee8b2a4b9.json +0 -1
  125. package/.nyc_output/5359ad53-153e-4a68-9158-095880ce3682.json +0 -1
  126. package/.nyc_output/54476a59-73ed-43c2-b90f-46bad1fd2b24.json +0 -1
  127. package/.nyc_output/5e815b47-2082-47aa-8d02-548d8f0175a6.json +0 -1
  128. package/.nyc_output/6300a22c-16ee-4f46-a5bc-ac392153ef39.json +0 -1
  129. package/.nyc_output/6331ec83-1ccd-4980-8cdb-55f87f01b6a0.json +0 -1
  130. package/.nyc_output/6a819ad4-b691-45b3-b693-98f812bd3249.json +0 -1
  131. package/.nyc_output/77e0e45c-5d9f-4848-96a1-cc36e5373078.json +0 -1
  132. package/.nyc_output/790a50c9-e677-48ed-9d87-3ca0d173f7b0.json +0 -1
  133. package/.nyc_output/7dad65fb-92f5-4d0a-a576-e071c1ab73e5.json +0 -1
  134. package/.nyc_output/7ee3638f-2a2d-4d5a-9970-254a86884c40.json +0 -1
  135. package/.nyc_output/883b8a83-3a1e-4153-a987-3a2f5455a627.json +0 -1
  136. package/.nyc_output/8dc3a0b6-b04e-45f5-85ec-99efabb63499.json +0 -1
  137. package/.nyc_output/8e03b522-9fef-4fae-82c0-f51611fab55a.json +0 -1
  138. package/.nyc_output/946bad92-6c4b-4ac1-b508-83983322629c.json +0 -1
  139. package/.nyc_output/95d30443-c776-4f68-ab14-34ecdccdaee4.json +0 -1
  140. package/.nyc_output/abc21188-b3dc-4cce-bc20-f0680a4dde62.json +0 -1
  141. package/.nyc_output/ac7ebac2-d226-41f9-b271-25b0ad449de0.json +0 -1
  142. package/.nyc_output/ae1048af-74db-41a3-b4d7-e511f60259ef.json +0 -1
  143. package/.nyc_output/b121ce1e-5d6b-4b6d-93a7-21b315098afc.json +0 -1
  144. package/.nyc_output/bb6d14e4-2e75-45bd-a1f0-67c21781bcf6.json +0 -1
  145. package/.nyc_output/c5d84f76-682f-429c-9b0d-241c81a72907.json +0 -1
  146. package/.nyc_output/d14c616f-ca9b-402d-879d-c7e91ecc6b89.json +0 -1
  147. package/.nyc_output/d3096a06-29ef-4de7-b565-b7b1ca58471a.json +0 -1
  148. package/.nyc_output/d6313ced-0715-41aa-a0bb-22eeae3cccc1.json +0 -1
  149. package/.nyc_output/e7143b16-9cb3-4900-9498-05c40f90af46.json +0 -1
  150. package/.nyc_output/eb21b824-fc88-4f0c-9e72-bd691a141b75.json +0 -1
  151. package/.nyc_output/ee09e08d-c0f5-4fba-9fa1-849b0f32f347.json +0 -1
  152. package/.nyc_output/ee8b9792-e4fc-4950-8532-733858a2a7f2.json +0 -1
  153. package/.nyc_output/f4344c1d-e947-4c51-abe0-e3600b4e721d.json +0 -1
  154. package/.nyc_output/f7d0a4d2-62db-494d-bb67-78e3f93ae05b.json +0 -1
  155. package/.nyc_output/processinfo/01d7f3ed-ada5-4fbf-bf72-17458de5eda1.json +0 -1
  156. package/.nyc_output/processinfo/07a372ea-5f20-411a-8f9b-5cfd38c9f7cf.json +0 -1
  157. package/.nyc_output/processinfo/1a03fe29-15f4-4d36-a6f1-061f95c919d2.json +0 -1
  158. package/.nyc_output/processinfo/1be973a3-2986-4e51-9bef-ffa834a81029.json +0 -1
  159. package/.nyc_output/processinfo/1fa3f196-6284-4422-b186-8fb97ac299b1.json +0 -1
  160. package/.nyc_output/processinfo/21b4136c-a3f4-465a-ab85-cdfa70dda252.json +0 -1
  161. package/.nyc_output/processinfo/279ce3fa-118b-4b21-bbd4-a0dbabb3cf28.json +0 -1
  162. package/.nyc_output/processinfo/370daf16-8792-4296-a491-4b0ff8c5c03d.json +0 -1
  163. package/.nyc_output/processinfo/44cabfc1-f759-4ff5-9502-0967bba28c3b.json +0 -1
  164. package/.nyc_output/processinfo/52cc8740-cb58-4b4e-b952-bedee8b2a4b9.json +0 -1
  165. package/.nyc_output/processinfo/5359ad53-153e-4a68-9158-095880ce3682.json +0 -1
  166. package/.nyc_output/processinfo/54476a59-73ed-43c2-b90f-46bad1fd2b24.json +0 -1
  167. package/.nyc_output/processinfo/5e815b47-2082-47aa-8d02-548d8f0175a6.json +0 -1
  168. package/.nyc_output/processinfo/6300a22c-16ee-4f46-a5bc-ac392153ef39.json +0 -1
  169. package/.nyc_output/processinfo/6331ec83-1ccd-4980-8cdb-55f87f01b6a0.json +0 -1
  170. package/.nyc_output/processinfo/6a819ad4-b691-45b3-b693-98f812bd3249.json +0 -1
  171. package/.nyc_output/processinfo/77e0e45c-5d9f-4848-96a1-cc36e5373078.json +0 -1
  172. package/.nyc_output/processinfo/790a50c9-e677-48ed-9d87-3ca0d173f7b0.json +0 -1
  173. package/.nyc_output/processinfo/7dad65fb-92f5-4d0a-a576-e071c1ab73e5.json +0 -1
  174. package/.nyc_output/processinfo/7ee3638f-2a2d-4d5a-9970-254a86884c40.json +0 -1
  175. package/.nyc_output/processinfo/883b8a83-3a1e-4153-a987-3a2f5455a627.json +0 -1
  176. package/.nyc_output/processinfo/8dc3a0b6-b04e-45f5-85ec-99efabb63499.json +0 -1
  177. package/.nyc_output/processinfo/8e03b522-9fef-4fae-82c0-f51611fab55a.json +0 -1
  178. package/.nyc_output/processinfo/946bad92-6c4b-4ac1-b508-83983322629c.json +0 -1
  179. package/.nyc_output/processinfo/95d30443-c776-4f68-ab14-34ecdccdaee4.json +0 -1
  180. package/.nyc_output/processinfo/abc21188-b3dc-4cce-bc20-f0680a4dde62.json +0 -1
  181. package/.nyc_output/processinfo/ac7ebac2-d226-41f9-b271-25b0ad449de0.json +0 -1
  182. package/.nyc_output/processinfo/ae1048af-74db-41a3-b4d7-e511f60259ef.json +0 -1
  183. package/.nyc_output/processinfo/b121ce1e-5d6b-4b6d-93a7-21b315098afc.json +0 -1
  184. package/.nyc_output/processinfo/bb6d14e4-2e75-45bd-a1f0-67c21781bcf6.json +0 -1
  185. package/.nyc_output/processinfo/c5d84f76-682f-429c-9b0d-241c81a72907.json +0 -1
  186. package/.nyc_output/processinfo/d14c616f-ca9b-402d-879d-c7e91ecc6b89.json +0 -1
  187. package/.nyc_output/processinfo/d3096a06-29ef-4de7-b565-b7b1ca58471a.json +0 -1
  188. package/.nyc_output/processinfo/d6313ced-0715-41aa-a0bb-22eeae3cccc1.json +0 -1
  189. package/.nyc_output/processinfo/e7143b16-9cb3-4900-9498-05c40f90af46.json +0 -1
  190. package/.nyc_output/processinfo/eb21b824-fc88-4f0c-9e72-bd691a141b75.json +0 -1
  191. package/.nyc_output/processinfo/ee09e08d-c0f5-4fba-9fa1-849b0f32f347.json +0 -1
  192. package/.nyc_output/processinfo/ee8b9792-e4fc-4950-8532-733858a2a7f2.json +0 -1
  193. package/.nyc_output/processinfo/f4344c1d-e947-4c51-abe0-e3600b4e721d.json +0 -1
  194. package/.nyc_output/processinfo/f7d0a4d2-62db-494d-bb67-78e3f93ae05b.json +0 -1
  195. package/.nyc_output/processinfo/index.json +0 -1
  196. package/docs/classes/CORSMiddleware.CORSMiddleware-1.md +0 -145
  197. package/docs/classes/DatabaseQueryError.DatabaseQueryError-1.md +0 -309
  198. package/docs/classes/DiskSpaceError.DiskSpaceError-1.md +0 -303
  199. package/docs/classes/DropTemporaryTableQuery.DropTemporaryTableQuery-1.md +0 -197
  200. package/docs/classes/DumpStream.DumpStream-1.md +0 -25
  201. package/docs/classes/DuplicateEntryError.DuplicateEntryError-1.md +0 -305
  202. package/docs/classes/EntityNotFoundError.EntityNotFoundError-1.md +0 -303
  203. package/docs/classes/ExpiredTokenError.ExpiredTokenError-1.md +0 -303
  204. package/docs/classes/Handler.Handler-1.md +0 -325
  205. package/docs/classes/InternalError.InternalError-1.md +0 -303
  206. package/docs/classes/InvalidConfigError.InvalidConfigError-1.md +0 -316
  207. package/docs/classes/InvalidCredentialsError.InvalidCredentialsError-1.md +0 -303
  208. package/docs/classes/InvalidValueError.InvalidValueError-1.md +0 -311
  209. package/docs/classes/JWTVerifyOptionsParser.JWTVerifyOptionsParser-1.md +0 -45
  210. package/docs/classes/ManagedDatabaseConnection.ManagedDatabaseConnection-1.md +0 -399
  211. package/docs/classes/Middleware.Middleware-1.md +0 -74
  212. package/docs/classes/MissingConfigError.MissingConfigError-1.md +0 -303
  213. package/docs/classes/MissingParameterError.MissingParameterError-1.md +0 -303
  214. package/docs/classes/MySQLDatabase.MySQLDatabase-1.md +0 -316
  215. package/docs/classes/Request.Request-1.md +0 -323
  216. package/docs/classes/Response.Response-1.md +0 -244
  217. package/docs/classes/StormError.StormError-1.md +0 -309
  218. package/docs/classes/TemporaryTableQuery.TemporaryTableQuery-1.md +0 -197
  219. package/docs/classes/UnauthorizedAccessError.UnauthorizedAccessError-1.md +0 -301
  220. package/docs/classes/private_CommitQuery.CommitQuery.md +0 -197
  221. package/docs/classes/private_RollbackQuery.RollbackQuery.md +0 -197
  222. package/docs/classes/private_StartTransactionQuery.StartTransactionQuery.md +0 -197
  223. package/docs/enums/ApplicationEvent.ApplicationEvent-1.md +0 -21
  224. package/docs/enums/ErrorCode.ErrorCode-1.md +0 -109
  225. package/docs/enums/ExitCode.ExitCode-1.md +0 -32
  226. package/docs/enums/HTTPMethod.HTTPMethod-1.md +0 -54
  227. package/docs/enums/JWTError.JWTError-1.md +0 -32
  228. package/docs/enums/StatusCode.StatusCode-1.md +0 -538
  229. package/docs/interfaces/DropTemporaryTableQuery.IDropTemporaryTableQueryInput.md +0 -21
  230. package/docs/interfaces/IConfig.IConfig-1.md +0 -114
  231. package/docs/interfaces/IFormData.IFormData-1.md +0 -32
  232. package/docs/interfaces/IInsertQueryResult.IInsertQueryResult-1.md +0 -43
  233. package/docs/interfaces/IJWTVerifyOptions.IJWTVerifyOptions-1.md +0 -21
  234. package/docs/interfaces/IRequestResponse.IRequestResponse-1.md +0 -39
  235. package/docs/interfaces/IServiceHeaders.IServiceHeaders-1.md +0 -9
  236. package/docs/interfaces/IUpdateQueryResult.IUpdateQueryResult-1.md +0 -32
  237. package/docs/interfaces/Request.IParameterMap.md +0 -9
  238. package/docs/interfaces/Response.IHeaderKeyValuePair.md +0 -9
  239. package/docs/interfaces/StormError.IAdditionalErrorDetails.md +0 -9
  240. package/docs/interfaces/StormError.IErrorResponse.md +0 -54
  241. package/docs/interfaces/TemporaryTableQuery.ITemporaryTableQueryInput.md +0 -32
  242. package/docs/interfaces/api.formidable.Fields.md +0 -9
  243. package/docs/interfaces/api.formidable.Files.md +0 -9
  244. package/docs/modules/Application.md +0 -9
  245. package/docs/modules/ApplicationEvent.md +0 -9
  246. package/docs/modules/BackendAuthenticationMiddleware.md +0 -9
  247. package/docs/modules/CORSMiddleware.md +0 -9
  248. package/docs/modules/ConfigLoader.md +0 -9
  249. package/docs/modules/Database.md +0 -9
  250. package/docs/modules/DatabaseConnection.md +0 -34
  251. package/docs/modules/DatabaseQueryError.md +0 -9
  252. package/docs/modules/DiskSpaceError.md +0 -9
  253. package/docs/modules/DropTemporaryTableQuery.md +0 -13
  254. package/docs/modules/DumpStream.md +0 -9
  255. package/docs/modules/DuplicateEntryError.md +0 -9
  256. package/docs/modules/EntityNotFoundError.md +0 -9
  257. package/docs/modules/ErrorCode.md +0 -9
  258. package/docs/modules/ExitCode.md +0 -9
  259. package/docs/modules/ExpiredTokenError.md +0 -9
  260. package/docs/modules/HTTPMethod.md +0 -9
  261. package/docs/modules/Handler.md +0 -50
  262. package/docs/modules/IAuthTokenData.md +0 -9
  263. package/docs/modules/IConfig.md +0 -9
  264. package/docs/modules/IDatabaseConfig.md +0 -9
  265. package/docs/modules/IDatabaseConnection.md +0 -9
  266. package/docs/modules/IDeleteQueryResult.md +0 -19
  267. package/docs/modules/IFormData.md +0 -9
  268. package/docs/modules/IHandler.md +0 -9
  269. package/docs/modules/IInsertQueryResult.md +0 -9
  270. package/docs/modules/IJWTVerifyOptions.md +0 -9
  271. package/docs/modules/IRequestResponse.md +0 -9
  272. package/docs/modules/IServiceHeaders.md +0 -9
  273. package/docs/modules/IUpdateQueryResult.md +0 -9
  274. package/docs/modules/InternalError.md +0 -9
  275. package/docs/modules/InvalidConfigError.md +0 -9
  276. package/docs/modules/InvalidCredentialsError.md +0 -9
  277. package/docs/modules/InvalidValueError.md +0 -9
  278. package/docs/modules/JWTError.md +0 -9
  279. package/docs/modules/JWTVerifyOptionsParser.md +0 -9
  280. package/docs/modules/ManagedDatabaseConnection.md +0 -9
  281. package/docs/modules/Middleware.md +0 -9
  282. package/docs/modules/MissingConfigError.md +0 -9
  283. package/docs/modules/MissingParameterError.md +0 -9
  284. package/docs/modules/MySQLConnection.md +0 -9
  285. package/docs/modules/MySQLDatabase.md +0 -9
  286. package/docs/modules/Query.md +0 -9
  287. package/docs/modules/RawQuery.md +0 -9
  288. package/docs/modules/Request.md +0 -13
  289. package/docs/modules/Response.md +0 -27
  290. package/docs/modules/ResponseData.md +0 -9
  291. package/docs/modules/ServiceProvider.md +0 -9
  292. package/docs/modules/ServiceResponse.md +0 -9
  293. package/docs/modules/StatusCode.md +0 -9
  294. package/docs/modules/StormError.md +0 -14
  295. package/docs/modules/TemporaryTableQuery.md +0 -13
  296. package/docs/modules/Token.md +0 -9
  297. package/docs/modules/TokenManager.md +0 -9
  298. package/docs/modules/UnauthorizedAccessError.md +0 -9
  299. package/docs/modules/api.md +0 -439
  300. package/docs/modules/instance.md +0 -44
  301. package/docs/modules/private_CommitQuery.md +0 -9
  302. package/docs/modules/private_RollbackQuery.md +0 -9
  303. package/docs/modules/private_StartTransactionQuery.md +0 -9
@@ -1 +0,0 @@
1
- {"/development/breautek/storm/src/Application.ts":{"path":"/development/breautek/storm/src/Application.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":29}},"2":{"start":{"line":4,"column":17},"end":{"line":4,"column":34}},"3":{"start":{"line":5,"column":19},"end":{"line":5,"column":40}},"4":{"start":{"line":6,"column":27},"end":{"line":6,"column":56}},"5":{"start":{"line":7,"column":18},"end":{"line":7,"column":38}},"6":{"start":{"line":8,"column":19},"end":{"line":8,"column":40}},"7":{"start":{"line":9,"column":23},"end":{"line":9,"column":48}},"8":{"start":{"line":10,"column":18},"end":{"line":10,"column":38}},"9":{"start":{"line":11,"column":16},"end":{"line":11,"column":34}},"10":{"start":{"line":12,"column":19},"end":{"line":12,"column":41}},"11":{"start":{"line":13,"column":13},"end":{"line":13,"column":28}},"12":{"start":{"line":14,"column":17},"end":{"line":14,"column":42}},"13":{"start":{"line":15,"column":12},"end":{"line":15,"column":25}},"14":{"start":{"line":18,"column":8},"end":{"line":18,"column":16}},"15":{"start":{"line":19,"column":8},"end":{"line":19,"column":37}},"16":{"start":{"line":20,"column":8},"end":{"line":20,"column":32}},"17":{"start":{"line":21,"column":8},"end":{"line":21,"column":42}},"18":{"start":{"line":22,"column":8},"end":{"line":22,"column":26}},"19":{"start":{"line":23,"column":8},"end":{"line":25,"column":11}},"20":{"start":{"line":24,"column":12},"end":{"line":24,"column":48}},"21":{"start":{"line":26,"column":8},"end":{"line":26,"column":55}},"22":{"start":{"line":27,"column":21},"end":{"line":27,"column":49}},"23":{"start":{"line":28,"column":8},"end":{"line":28,"column":54}},"24":{"start":{"line":29,"column":8},"end":{"line":29,"column":53}},"25":{"start":{"line":30,"column":8},"end":{"line":30,"column":21}},"26":{"start":{"line":33,"column":8},"end":{"line":97,"column":11}},"27":{"start":{"line":34,"column":12},"end":{"line":34,"column":34}},"28":{"start":{"line":35,"column":12},"end":{"line":35,"column":52}},"29":{"start":{"line":36,"column":12},"end":{"line":36,"column":66}},"30":{"start":{"line":37,"column":12},"end":{"line":37,"column":73}},"31":{"start":{"line":38,"column":12},"end":{"line":38,"column":44}},"32":{"start":{"line":39,"column":12},"end":{"line":39,"column":37}},"33":{"start":{"line":41,"column":12},"end":{"line":41,"column":63}},"34":{"start":{"line":42,"column":12},"end":{"line":42,"column":49}},"35":{"start":{"line":44,"column":12},"end":{"line":49,"column":13}},"36":{"start":{"line":45,"column":16},"end":{"line":45,"column":64}},"37":{"start":{"line":48,"column":16},"end":{"line":48,"column":71}},"38":{"start":{"line":50,"column":12},"end":{"line":50,"column":26}},"39":{"start":{"line":51,"column":12},"end":{"line":51,"column":37}},"40":{"start":{"line":53,"column":12},"end":{"line":53,"column":63}},"41":{"start":{"line":54,"column":12},"end":{"line":54,"column":37}},"42":{"start":{"line":55,"column":12},"end":{"line":58,"column":16}},"43":{"start":{"line":59,"column":12},"end":{"line":62,"column":16}},"44":{"start":{"line":63,"column":12},"end":{"line":63,"column":37}},"45":{"start":{"line":65,"column":12},"end":{"line":65,"column":66}},"46":{"start":{"line":66,"column":12},"end":{"line":66,"column":41}},"47":{"start":{"line":68,"column":12},"end":{"line":68,"column":33}},"48":{"start":{"line":69,"column":12},"end":{"line":89,"column":15}},"49":{"start":{"line":70,"column":32},"end":{"line":70,"column":53}},"50":{"start":{"line":71,"column":27},"end":{"line":71,"column":48}},"51":{"start":{"line":72,"column":16},"end":{"line":88,"column":17}},"52":{"start":{"line":73,"column":20},"end":{"line":83,"column":21}},"53":{"start":{"line":74,"column":24},"end":{"line":74,"column":71}},"54":{"start":{"line":75,"column":24},"end":{"line":78,"column":27}},"55":{"start":{"line":76,"column":28},"end":{"line":76,"column":109}},"56":{"start":{"line":77,"column":28},"end":{"line":77,"column":38}},"57":{"start":{"line":81,"column":24},"end":{"line":81,"column":115}},"58":{"start":{"line":82,"column":24},"end":{"line":82,"column":34}},"59":{"start":{"line":86,"column":20},"end":{"line":86,"column":141}},"60":{"start":{"line":87,"column":20},"end":{"line":87,"column":30}},"61":{"start":{"line":91,"column":12},"end":{"line":91,"column":54}},"62":{"start":{"line":93,"column":12},"end":{"line":93,"column":27}},"63":{"start":{"line":94,"column":12},"end":{"line":94,"column":31}},"64":{"start":{"line":96,"column":12},"end":{"line":96,"column":48}},"65":{"start":{"line":100,"column":8},"end":{"line":100,"column":33}},"66":{"start":{"line":103,"column":8},"end":{"line":103,"column":93}},"67":{"start":{"line":106,"column":8},"end":{"line":106,"column":28}},"68":{"start":{"line":109,"column":19},"end":{"line":109,"column":23}},"69":{"start":{"line":110,"column":8},"end":{"line":115,"column":9}},"70":{"start":{"line":111,"column":26},"end":{"line":111,"column":48}},"71":{"start":{"line":112,"column":12},"end":{"line":114,"column":13}},"72":{"start":{"line":113,"column":16},"end":{"line":113,"column":36}},"73":{"start":{"line":116,"column":8},"end":{"line":116,"column":20}},"74":{"start":{"line":119,"column":8},"end":{"line":119,"column":34}},"75":{"start":{"line":120,"column":18},"end":{"line":120,"column":44}},"76":{"start":{"line":121,"column":8},"end":{"line":121,"column":60}},"77":{"start":{"line":122,"column":8},"end":{"line":122,"column":77}},"78":{"start":{"line":123,"column":8},"end":{"line":123,"column":75}},"79":{"start":{"line":124,"column":8},"end":{"line":124,"column":112}},"80":{"start":{"line":125,"column":8},"end":{"line":125,"column":45}},"81":{"start":{"line":129,"column":8},"end":{"line":129,"column":29}},"82":{"start":{"line":132,"column":8},"end":{"line":132,"column":51}},"83":{"start":{"line":135,"column":22},"end":{"line":135,"column":44}},"84":{"start":{"line":136,"column":8},"end":{"line":139,"column":11}},"85":{"start":{"line":137,"column":20},"end":{"line":137,"column":50}},"86":{"start":{"line":138,"column":12},"end":{"line":138,"column":74}},"87":{"start":{"line":140,"column":8},"end":{"line":143,"column":11}},"88":{"start":{"line":141,"column":20},"end":{"line":141,"column":50}},"89":{"start":{"line":142,"column":12},"end":{"line":142,"column":75}},"90":{"start":{"line":144,"column":8},"end":{"line":147,"column":11}},"91":{"start":{"line":145,"column":20},"end":{"line":145,"column":50}},"92":{"start":{"line":146,"column":12},"end":{"line":146,"column":74}},"93":{"start":{"line":148,"column":8},"end":{"line":151,"column":11}},"94":{"start":{"line":149,"column":20},"end":{"line":149,"column":50}},"95":{"start":{"line":150,"column":12},"end":{"line":150,"column":77}},"96":{"start":{"line":154,"column":8},"end":{"line":163,"column":11}},"97":{"start":{"line":155,"column":12},"end":{"line":162,"column":13}},"98":{"start":{"line":156,"column":16},"end":{"line":158,"column":19}},"99":{"start":{"line":157,"column":20},"end":{"line":157,"column":30}},"100":{"start":{"line":161,"column":16},"end":{"line":161,"column":26}},"101":{"start":{"line":166,"column":8},"end":{"line":172,"column":11}},"102":{"start":{"line":167,"column":12},"end":{"line":171,"column":15}},"103":{"start":{"line":168,"column":16},"end":{"line":168,"column":32}},"104":{"start":{"line":170,"column":16},"end":{"line":170,"column":39}},"105":{"start":{"line":175,"column":8},"end":{"line":175,"column":26}},"106":{"start":{"line":178,"column":8},"end":{"line":178,"column":28}},"107":{"start":{"line":181,"column":8},"end":{"line":181,"column":28}},"108":{"start":{"line":184,"column":8},"end":{"line":184,"column":20}},"109":{"start":{"line":188,"column":8},"end":{"line":188,"column":42}},"110":{"start":{"line":191,"column":8},"end":{"line":191,"column":34}},"111":{"start":{"line":194,"column":8},"end":{"line":194,"column":24}},"112":{"start":{"line":197,"column":22},"end":{"line":197,"column":35}},"113":{"start":{"line":198,"column":16},"end":{"line":198,"column":18}},"114":{"start":{"line":199,"column":19},"end":{"line":199,"column":33}},"115":{"start":{"line":200,"column":8},"end":{"line":202,"column":9}},"116":{"start":{"line":201,"column":12},"end":{"line":201,"column":21}},"117":{"start":{"line":203,"column":8},"end":{"line":205,"column":9}},"118":{"start":{"line":204,"column":12},"end":{"line":204,"column":31}},"119":{"start":{"line":206,"column":8},"end":{"line":208,"column":9}},"120":{"start":{"line":207,"column":12},"end":{"line":207,"column":31}},"121":{"start":{"line":209,"column":8},"end":{"line":211,"column":9}},"122":{"start":{"line":210,"column":12},"end":{"line":210,"column":65}},"123":{"start":{"line":212,"column":8},"end":{"line":212,"column":17}},"124":{"start":{"line":215,"column":8},"end":{"line":215,"column":37}},"125":{"start":{"line":220,"column":0},"end":{"line":220,"column":34}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":17,"column":4},"end":{"line":17,"column":5}},"loc":{"start":{"line":17,"column":34},"end":{"line":31,"column":5}},"line":17},"1":{"name":"(anonymous_1)","decl":{"start":{"line":23,"column":41},"end":{"line":23,"column":42}},"loc":{"start":{"line":23,"column":52},"end":{"line":25,"column":9}},"line":23},"2":{"name":"(anonymous_2)","decl":{"start":{"line":32,"column":4},"end":{"line":32,"column":5}},"loc":{"start":{"line":32,"column":12},"end":{"line":98,"column":5}},"line":32},"3":{"name":"(anonymous_3)","decl":{"start":{"line":33,"column":47},"end":{"line":33,"column":48}},"loc":{"start":{"line":33,"column":59},"end":{"line":40,"column":9}},"line":33},"4":{"name":"(anonymous_4)","decl":{"start":{"line":40,"column":16},"end":{"line":40,"column":17}},"loc":{"start":{"line":40,"column":22},"end":{"line":43,"column":9}},"line":40},"5":{"name":"(anonymous_5)","decl":{"start":{"line":43,"column":16},"end":{"line":43,"column":17}},"loc":{"start":{"line":43,"column":24},"end":{"line":52,"column":9}},"line":43},"6":{"name":"(anonymous_6)","decl":{"start":{"line":52,"column":16},"end":{"line":52,"column":17}},"loc":{"start":{"line":52,"column":22},"end":{"line":64,"column":9}},"line":52},"7":{"name":"(anonymous_7)","decl":{"start":{"line":64,"column":16},"end":{"line":64,"column":17}},"loc":{"start":{"line":64,"column":22},"end":{"line":67,"column":9}},"line":64},"8":{"name":"(anonymous_8)","decl":{"start":{"line":67,"column":16},"end":{"line":67,"column":17}},"loc":{"start":{"line":67,"column":22},"end":{"line":90,"column":9}},"line":67},"9":{"name":"(anonymous_9)","decl":{"start":{"line":69,"column":31},"end":{"line":69,"column":32}},"loc":{"start":{"line":69,"column":52},"end":{"line":89,"column":13}},"line":69},"10":{"name":"(anonymous_10)","decl":{"start":{"line":75,"column":61},"end":{"line":75,"column":62}},"loc":{"start":{"line":75,"column":67},"end":{"line":78,"column":25}},"line":75},"11":{"name":"(anonymous_11)","decl":{"start":{"line":90,"column":16},"end":{"line":90,"column":17}},"loc":{"start":{"line":90,"column":22},"end":{"line":92,"column":9}},"line":90},"12":{"name":"(anonymous_12)","decl":{"start":{"line":92,"column":16},"end":{"line":92,"column":17}},"loc":{"start":{"line":92,"column":22},"end":{"line":95,"column":9}},"line":92},"13":{"name":"(anonymous_13)","decl":{"start":{"line":95,"column":17},"end":{"line":95,"column":18}},"loc":{"start":{"line":95,"column":28},"end":{"line":97,"column":9}},"line":95},"14":{"name":"(anonymous_14)","decl":{"start":{"line":99,"column":4},"end":{"line":99,"column":5}},"loc":{"start":{"line":99,"column":24},"end":{"line":101,"column":5}},"line":99},"15":{"name":"(anonymous_15)","decl":{"start":{"line":102,"column":4},"end":{"line":102,"column":5}},"loc":{"start":{"line":102,"column":24},"end":{"line":104,"column":5}},"line":102},"16":{"name":"(anonymous_16)","decl":{"start":{"line":105,"column":4},"end":{"line":105,"column":5}},"loc":{"start":{"line":105,"column":16},"end":{"line":107,"column":5}},"line":105},"17":{"name":"(anonymous_17)","decl":{"start":{"line":108,"column":4},"end":{"line":108,"column":5}},"loc":{"start":{"line":108,"column":14},"end":{"line":117,"column":5}},"line":108},"18":{"name":"(anonymous_18)","decl":{"start":{"line":118,"column":4},"end":{"line":118,"column":5}},"loc":{"start":{"line":118,"column":23},"end":{"line":126,"column":5}},"line":118},"19":{"name":"(anonymous_19)","decl":{"start":{"line":127,"column":4},"end":{"line":127,"column":5}},"loc":{"start":{"line":127,"column":30},"end":{"line":127,"column":33}},"line":127},"20":{"name":"(anonymous_20)","decl":{"start":{"line":128,"column":4},"end":{"line":128,"column":5}},"loc":{"start":{"line":128,"column":17},"end":{"line":130,"column":5}},"line":128},"21":{"name":"(anonymous_21)","decl":{"start":{"line":131,"column":4},"end":{"line":131,"column":5}},"loc":{"start":{"line":131,"column":26},"end":{"line":133,"column":5}},"line":131},"22":{"name":"(anonymous_22)","decl":{"start":{"line":134,"column":4},"end":{"line":134,"column":5}},"loc":{"start":{"line":134,"column":38},"end":{"line":152,"column":5}},"line":134},"23":{"name":"(anonymous_23)","decl":{"start":{"line":136,"column":31},"end":{"line":136,"column":32}},"loc":{"start":{"line":136,"column":54},"end":{"line":139,"column":9}},"line":136},"24":{"name":"(anonymous_24)","decl":{"start":{"line":140,"column":32},"end":{"line":140,"column":33}},"loc":{"start":{"line":140,"column":55},"end":{"line":143,"column":9}},"line":140},"25":{"name":"(anonymous_25)","decl":{"start":{"line":144,"column":31},"end":{"line":144,"column":32}},"loc":{"start":{"line":144,"column":54},"end":{"line":147,"column":9}},"line":144},"26":{"name":"(anonymous_26)","decl":{"start":{"line":148,"column":34},"end":{"line":148,"column":35}},"loc":{"start":{"line":148,"column":57},"end":{"line":151,"column":9}},"line":148},"27":{"name":"(anonymous_27)","decl":{"start":{"line":153,"column":4},"end":{"line":153,"column":5}},"loc":{"start":{"line":153,"column":12},"end":{"line":164,"column":5}},"line":153},"28":{"name":"(anonymous_28)","decl":{"start":{"line":154,"column":27},"end":{"line":154,"column":28}},"loc":{"start":{"line":154,"column":48},"end":{"line":163,"column":9}},"line":154},"29":{"name":"(anonymous_29)","decl":{"start":{"line":156,"column":35},"end":{"line":156,"column":36}},"loc":{"start":{"line":156,"column":41},"end":{"line":158,"column":17}},"line":156},"30":{"name":"(anonymous_30)","decl":{"start":{"line":165,"column":4},"end":{"line":165,"column":5}},"loc":{"start":{"line":165,"column":21},"end":{"line":173,"column":5}},"line":165},"31":{"name":"(anonymous_31)","decl":{"start":{"line":166,"column":27},"end":{"line":166,"column":28}},"loc":{"start":{"line":166,"column":48},"end":{"line":172,"column":9}},"line":166},"32":{"name":"(anonymous_32)","decl":{"start":{"line":167,"column":56},"end":{"line":167,"column":57}},"loc":{"start":{"line":167,"column":68},"end":{"line":169,"column":13}},"line":167},"33":{"name":"(anonymous_33)","decl":{"start":{"line":169,"column":21},"end":{"line":169,"column":22}},"loc":{"start":{"line":169,"column":35},"end":{"line":171,"column":13}},"line":169},"34":{"name":"(anonymous_34)","decl":{"start":{"line":174,"column":4},"end":{"line":174,"column":5}},"loc":{"start":{"line":174,"column":14},"end":{"line":176,"column":5}},"line":174},"35":{"name":"(anonymous_35)","decl":{"start":{"line":177,"column":4},"end":{"line":177,"column":5}},"loc":{"start":{"line":177,"column":17},"end":{"line":179,"column":5}},"line":177},"36":{"name":"(anonymous_36)","decl":{"start":{"line":180,"column":4},"end":{"line":180,"column":5}},"loc":{"start":{"line":180,"column":16},"end":{"line":182,"column":5}},"line":180},"37":{"name":"(anonymous_37)","decl":{"start":{"line":183,"column":4},"end":{"line":183,"column":5}},"loc":{"start":{"line":183,"column":19},"end":{"line":185,"column":5}},"line":183},"38":{"name":"(anonymous_38)","decl":{"start":{"line":186,"column":4},"end":{"line":186,"column":5}},"loc":{"start":{"line":186,"column":25},"end":{"line":186,"column":28}},"line":186},"39":{"name":"(anonymous_39)","decl":{"start":{"line":187,"column":4},"end":{"line":187,"column":5}},"loc":{"start":{"line":187,"column":34},"end":{"line":189,"column":5}},"line":187},"40":{"name":"(anonymous_40)","decl":{"start":{"line":190,"column":4},"end":{"line":190,"column":5}},"loc":{"start":{"line":190,"column":22},"end":{"line":192,"column":5}},"line":190},"41":{"name":"(anonymous_41)","decl":{"start":{"line":193,"column":4},"end":{"line":193,"column":5}},"loc":{"start":{"line":193,"column":12},"end":{"line":195,"column":5}},"line":193},"42":{"name":"(anonymous_42)","decl":{"start":{"line":196,"column":4},"end":{"line":196,"column":5}},"loc":{"start":{"line":196,"column":21},"end":{"line":213,"column":5}},"line":196},"43":{"name":"(anonymous_43)","decl":{"start":{"line":214,"column":4},"end":{"line":214,"column":5}},"loc":{"start":{"line":214,"column":19},"end":{"line":216,"column":5}},"line":214},"44":{"name":"(anonymous_44)","decl":{"start":{"line":217,"column":4},"end":{"line":217,"column":5}},"loc":{"start":{"line":217,"column":20},"end":{"line":217,"column":23}},"line":217},"45":{"name":"(anonymous_45)","decl":{"start":{"line":218,"column":4},"end":{"line":218,"column":5}},"loc":{"start":{"line":218,"column":14},"end":{"line":218,"column":17}},"line":218}},"branchMap":{"0":{"loc":{"start":{"line":26,"column":27},"end":{"line":26,"column":54}},"type":"binary-expr","locations":[{"start":{"line":26,"column":27},"end":{"line":26,"column":37}},{"start":{"line":26,"column":41},"end":{"line":26,"column":54}}],"line":26},"1":{"loc":{"start":{"line":44,"column":12},"end":{"line":49,"column":13}},"type":"if","locations":[{"start":{"line":44,"column":12},"end":{"line":49,"column":13}},{"start":{"line":44,"column":12},"end":{"line":49,"column":13}}],"line":44},"2":{"loc":{"start":{"line":72,"column":16},"end":{"line":88,"column":17}},"type":"if","locations":[{"start":{"line":72,"column":16},"end":{"line":88,"column":17}},{"start":{"line":72,"column":16},"end":{"line":88,"column":17}}],"line":72},"3":{"loc":{"start":{"line":72,"column":20},"end":{"line":72,"column":62}},"type":"binary-expr","locations":[{"start":{"line":72,"column":20},"end":{"line":72,"column":38}},{"start":{"line":72,"column":42},"end":{"line":72,"column":62}}],"line":72},"4":{"loc":{"start":{"line":73,"column":20},"end":{"line":83,"column":21}},"type":"if","locations":[{"start":{"line":73,"column":20},"end":{"line":83,"column":21}},{"start":{"line":73,"column":20},"end":{"line":83,"column":21}}],"line":73},"5":{"loc":{"start":{"line":110,"column":8},"end":{"line":115,"column":9}},"type":"if","locations":[{"start":{"line":110,"column":8},"end":{"line":115,"column":9}},{"start":{"line":110,"column":8},"end":{"line":115,"column":9}}],"line":110},"6":{"loc":{"start":{"line":110,"column":12},"end":{"line":110,"column":50}},"type":"binary-expr","locations":[{"start":{"line":110,"column":12},"end":{"line":110,"column":24}},{"start":{"line":110,"column":28},"end":{"line":110,"column":50}}],"line":110},"7":{"loc":{"start":{"line":112,"column":12},"end":{"line":114,"column":13}},"type":"if","locations":[{"start":{"line":112,"column":12},"end":{"line":114,"column":13}},{"start":{"line":112,"column":12},"end":{"line":114,"column":13}}],"line":112},"8":{"loc":{"start":{"line":155,"column":12},"end":{"line":162,"column":13}},"type":"if","locations":[{"start":{"line":155,"column":12},"end":{"line":162,"column":13}},{"start":{"line":155,"column":12},"end":{"line":162,"column":13}}],"line":155},"9":{"loc":{"start":{"line":155,"column":16},"end":{"line":155,"column":54}},"type":"binary-expr","locations":[{"start":{"line":155,"column":16},"end":{"line":155,"column":28}},{"start":{"line":155,"column":32},"end":{"line":155,"column":54}}],"line":155},"10":{"loc":{"start":{"line":200,"column":8},"end":{"line":202,"column":9}},"type":"if","locations":[{"start":{"line":200,"column":8},"end":{"line":202,"column":9}},{"start":{"line":200,"column":8},"end":{"line":202,"column":9}}],"line":200},"11":{"loc":{"start":{"line":203,"column":8},"end":{"line":205,"column":9}},"type":"if","locations":[{"start":{"line":203,"column":8},"end":{"line":205,"column":9}},{"start":{"line":203,"column":8},"end":{"line":205,"column":9}}],"line":203},"12":{"loc":{"start":{"line":206,"column":8},"end":{"line":208,"column":9}},"type":"if","locations":[{"start":{"line":206,"column":8},"end":{"line":208,"column":9}},{"start":{"line":206,"column":8},"end":{"line":208,"column":9}}],"line":206},"13":{"loc":{"start":{"line":209,"column":8},"end":{"line":211,"column":9}},"type":"if","locations":[{"start":{"line":209,"column":8},"end":{"line":211,"column":9}},{"start":{"line":209,"column":8},"end":{"line":211,"column":9}}],"line":209}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":0,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":0,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":0,"58":0,"59":0,"60":0,"61":1,"62":1,"63":0,"64":0,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":0,"82":2,"83":0,"84":0,"85":0,"86":0,"87":0,"88":0,"89":0,"90":0,"91":0,"92":0,"93":0,"94":0,"95":0,"96":0,"97":0,"98":0,"99":0,"100":0,"101":1,"102":1,"103":1,"104":0,"105":1,"106":6,"107":6,"108":1,"109":0,"110":0,"111":0,"112":2,"113":2,"114":2,"115":2,"116":0,"117":2,"118":0,"119":2,"120":2,"121":2,"122":0,"123":2,"124":1,"125":1},"f":{"0":1,"1":0,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":0,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":0,"21":2,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":1,"31":1,"32":1,"33":0,"34":1,"35":6,"36":6,"37":1,"38":1,"39":0,"40":0,"41":0,"42":2,"43":1,"44":1,"45":0},"b":{"0":[1,0],"1":[0,1],"2":[1,0],"3":[1,1],"4":[1,0],"5":[1,0],"6":[1,1],"7":[1,0],"8":[0,0],"9":[0,0],"10":[0,2],"11":[0,2],"12":[2,0],"13":[0,2]},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/Application.ts","sources":["/development/breautek/storm/src/Application.ts"],"names":[],"mappings":"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","sourcesContent":["/*\r\n Copyright 2017-2021 Norman Breau\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n*/\r\n\r\nimport {EventEmitter} from 'events';\r\nimport {setInstance} from './instance';\r\nimport {TokenManager} from './TokenManager';\r\nimport {ApplicationEvent} from './ApplicationEvent';\r\nimport {ExitCode} from './ExitCode';\r\nimport {Database} from './Database';\r\nimport {Handler} from './Handler';\r\nimport {IHandler} from './IHandler';\r\nimport {Request} from './Request';\r\nimport {Response} from './Response';\r\nimport {ConfigLoader} from './ConfigLoader';\r\nimport {IConfig} from './IConfig';\r\nimport Commander = require('commander');\r\nimport * as Express from 'express';\r\nimport * as BodyParser from 'body-parser';\r\nimport * as http from 'http';\r\nimport { IAuthTokenData } from '@arashi/token';\r\nimport { Logger } from '@arashi/logger';\r\n\r\nconst TAG: string = 'Application';\r\n\r\n/**\r\n * Main entry point for the Application. Should be extended and have the abstract methods implemented.\r\n */\r\nexport abstract class Application\r\n <\r\n TConfig extends IConfig = IConfig,\r\n TAuthToken extends IAuthTokenData = IAuthTokenData,\r\n TDBConfig = any,\r\n TDBConnectionAPI = any\r\n >\r\n extends EventEmitter {\r\n private _logger: Logger;\r\n private _name: string;\r\n private _configPath: string;\r\n private _config: TConfig;\r\n private _tokenManager: TokenManager<TAuthToken>;\r\n private _server: Express.Application;\r\n private _db: Database<TDBConfig, TDBConnectionAPI>;\r\n private _socket: http.Server;\r\n private _program: Commander.CommanderStatic;\r\n\r\n /**\r\n * \r\n * @param name The application name\r\n * @param configPath The directory where bt-config.json and bt-local-config.json can be found. Defaults to current working directory.\r\n */\r\n public constructor(name: string, configPath: string) {\r\n super();\r\n\r\n setInstance(this);\r\n \r\n this.$buildArgOptions();\r\n \r\n this._program.parse(process.argv);\r\n\r\n this._name = name;\r\n\r\n process.on('unhandledRejection', (error: any) => {\r\n this._getLogger().error(TAG, error);\r\n });\r\n\r\n this._configPath = configPath || process.cwd();\r\n\r\n let logger: Logger = new Logger('Storm');\r\n\r\n logger.info(TAG, 'Application is booting...');\r\n logger.info(TAG, 'Loading Configuration...');\r\n\r\n this._load();\r\n }\r\n\r\n private _load(): void {\r\n this.loadConfig(this._configPath).then((config: TConfig) => {\r\n this._config = config;\r\n this._logger = this._initLogger(config);\r\n this._getLogger().trace(TAG, 'Configuration loaded.');\r\n this.emit(ApplicationEvent.CONFIG_LOADED);\r\n this.onConfigLoad(this._config);\r\n return Promise.resolve();\r\n }).then(() => {\r\n this._getLogger().trace(TAG, 'Initializing DB...');\r\n return this.initDB(this.getConfig());\r\n }).then((db: Database<TDBConfig, TDBConnectionAPI>) => {\r\n if (db) {\r\n this._getLogger().trace(TAG, 'DB Initialized.');\r\n }\r\n else {\r\n this._getLogger().trace(TAG, 'DB is not initialized.');\r\n }\r\n this._db = db;\r\n\r\n return Promise.resolve();\r\n }).then(() => {\r\n this._getLogger().trace(TAG, 'Starting server...');\r\n this._server = Express();\r\n this._server.use(BodyParser.json({\r\n type : 'application/json',\r\n limit : this.getRequestSizeLimit()\r\n }));\r\n this._server.use(BodyParser.text({\r\n type : 'text/*',\r\n limit : this.getRequestSizeLimit()\r\n }));\r\n\r\n return Promise.resolve();\r\n }).then(() => {\r\n this._getLogger().trace(TAG, 'Attaching handlers...');\r\n return this.attachHandlers();\r\n }).then(() => {\r\n this.onBeforeReady();\r\n\r\n return new Promise<void>((resolve, reject) => {\r\n let bindingIP: string = this.getConfig().bind;\r\n let port: number = this.getConfig().port;\r\n\r\n if (bindingIP !== null && bindingIP !== 'null') {\r\n if (this.shouldListen()) {\r\n this._socket = http.createServer(this._server);\r\n this._socket.listen(port, bindingIP, () => {\r\n this._getLogger().trace(TAG, `Server started on ${bindingIP}:${this.getPort()}`);\r\n resolve();\r\n });\r\n }\r\n else {\r\n this._getLogger().trace(TAG, 'Server did not bind because shouldListen() returned false.');\r\n resolve();\r\n }\r\n }\r\n else {\r\n this._getLogger().info(TAG, `Server does not have a bounding IP set. The server will not be listening for connections.`);\r\n resolve();\r\n }\r\n });\r\n }).then(() => {\r\n return this._initialize(this.getConfig());\r\n }).then(() => {\r\n this.onReady();\r\n this.emit('ready');\r\n }).catch((error) => {\r\n this._getLogger().error(TAG, error);\r\n });\r\n }\r\n\r\n protected _initialize(config: TConfig): Promise<void> {\r\n return Promise.resolve();\r\n }\r\n \r\n protected _initLogger(config: TConfig): Logger {\r\n return new Logger(this.getName(), config.log?.level, config.log?.directory);\r\n }\r\n\r\n public getLogger(): Logger {\r\n return this._logger;\r\n }\r\n\r\n public getPort(): number {\r\n let port: number = null;\r\n if (this._socket && this._socket.listening) {\r\n let address = this._socket.address();\r\n if (typeof address !== 'string') {\r\n port = address.port;\r\n }\r\n }\r\n return port;\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/naming-convention\r\n private $buildArgOptions() {\r\n this._program = Commander;\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-var-requires\r\n let pkg: any = require('../package.json');\r\n \r\n this._program.version(pkg.version, '-v, --version');\r\n this._program.option('--port <port>', 'The running port to consume');\r\n this._program.option('--bind <ip>', 'The binding IP to listen on');\r\n this._program.option('--authentication_header <header>', 'The header name of the authentication token');\r\n\r\n this._buildArgOptions(this._program);\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-empty-function\r\n protected _buildArgOptions(program: Commander.CommanderStatic): void {}\r\n\r\n public getProgram(): Commander.CommanderStatic {\r\n return this._program;\r\n }\r\n\r\n /**\r\n * The maximum size limit for incoming requests that this service needs to handle.\r\n */\r\n public getRequestSizeLimit(): number {\r\n return this.getConfig().request_size_limit;\r\n }\r\n\r\n /**\r\n * \r\n * @param path The URL API path. E.g. /api/myService/myCommand/\r\n * @param HandlerClass The concrete class (not the instance) of Handler to be used for this API.\r\n */\r\n // eslint-disable-next-line @typescript-eslint/naming-convention\r\n public attachHandler(path: string, HandlerClass: IHandler): void {\r\n let handler: Handler = new HandlerClass(this);\r\n this._server.get(path, (request: Express.Request, response: Express.Response) => {\r\n let r: Request = new Request(request);\r\n handler.get(r, new Response(response, r.getURL()));\r\n });\r\n this._server.post(path, (request: Express.Request, response: Express.Response) => {\r\n let r: Request = new Request(request);\r\n handler.post(r, new Response(response, r.getURL()));\r\n });\r\n this._server.put(path, (request: Express.Request, response: Express.Response) => {\r\n let r: Request = new Request(request);\r\n handler.put(r, new Response(response, r.getURL()));\r\n });\r\n this._server.delete(path, (request: Express.Request, response: Express.Response) => {\r\n let r: Request = new Request(request);\r\n handler.delete(r, new Response(response, r.getURL()));\r\n });\r\n }\r\n\r\n public close(): Promise<void> {\r\n return new Promise<void>((resolve, reject) => {\r\n if (this._socket && this._socket.listening) {\r\n this._socket.close(() => {\r\n resolve();\r\n });\r\n }\r\n else {\r\n resolve();\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Subclasses are expected to attach the API handlers for their service. This will be invoked during application startup.\r\n * @returns Promise<void>\r\n */\r\n protected abstract attachHandlers(): Promise<void>;\r\n\r\n /**\r\n * \r\n * @param path The directory path that contains bt-config.json and bt-local-config.json\r\n */\r\n public loadConfig(path: string): Promise<TConfig> {\r\n return new Promise<TConfig>((resolve, reject) => {\r\n ConfigLoader.load(path).then((config: TConfig) => {\r\n resolve(config);\r\n }).catch((exitCode: ExitCode) => {\r\n process.exit(exitCode);\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * @returns the application name\r\n */\r\n public getName(): string {\r\n return this._name;\r\n }\r\n\r\n private _getLogger(): Logger {\r\n return this._logger;\r\n }\r\n\r\n /**\r\n * @returns the config object.\r\n */\r\n public getConfig(): TConfig {\r\n return this._config;\r\n }\r\n\r\n /**\r\n * @returns true if the Application should bind to an IP address\r\n */\r\n public shouldListen(): boolean {\r\n return true;\r\n }\r\n\r\n /**\r\n * Invoked once the config has been loaded and ready to be used.\r\n * \r\n * @param config The config object (as defined in bt-config.json/bt-local-config.json)\r\n */\r\n protected onConfigLoad(config: TConfig): void {}\r\n\r\n /**\r\n * Sets the TokenManager to be used for authentication.\r\n * @param tokenManager \r\n */\r\n public setTokenManager(tokenManager: TokenManager<TAuthToken>): void {\r\n this._tokenManager = tokenManager;\r\n }\r\n\r\n /**\r\n * @returns the token manager\r\n */\r\n public getTokenManager(): TokenManager<TAuthToken> {\r\n return this._tokenManager;\r\n }\r\n\r\n /**\r\n * @returns the database pool. This will need to be casted based on your preferred database dialect.\r\n */\r\n public getDB(): Database<TDBConfig, TDBConnectionAPI> {\r\n return this._db;\r\n }\r\n\r\n /**\r\n * @returns command line arguments\r\n */\r\n public getCmdLineArgs(): TConfig {\r\n let program: Commander.CommanderStatic = this._program;\r\n let o: any = {};\r\n\r\n let opts: any = program.opts();\r\n\r\n if (!program) {\r\n return o;\r\n }\r\n\r\n if (opts.bind !== undefined) {\r\n o.bind = opts.bind;\r\n }\r\n\r\n if (opts.port !== undefined) {\r\n o.port = opts.port;\r\n }\r\n\r\n if (opts.authentication_header !== undefined) {\r\n o.authentication_header = opts.authentication_header;\r\n }\r\n\r\n return o;\r\n }\r\n\r\n /**\r\n * Subclasses are expected to override this to configure their database setup, if the service uses a database.\r\n * @param config The bt-config object\r\n */\r\n protected initDB(config: TConfig): Promise<Database<TDBConfig, TDBConnectionAPI>> {\r\n return Promise.resolve(null);\r\n }\r\n\r\n protected onBeforeReady(): void {}\r\n\r\n /**\r\n * Invoked when the application is considered ready for operation.\r\n */\r\n protected onReady(): void {}\r\n}\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"d1b57e562c4b48b8151b1ac8e6f9488958b31b90","contentHash":"4f617343079675e8a68b5f4363e62a46f761099adc54ba3d87a24f5f052c8c81"},"/development/breautek/storm/src/instance.ts":{"path":"/development/breautek/storm/src/instance.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":51}},"2":{"start":{"line":5,"column":18},"end":{"line":10,"column":1}},"3":{"start":{"line":6,"column":4},"end":{"line":8,"column":5}},"4":{"start":{"line":7,"column":8},"end":{"line":7,"column":98}},"5":{"start":{"line":9,"column":4},"end":{"line":9,"column":19}},"6":{"start":{"line":11,"column":0},"end":{"line":11,"column":34}},"7":{"start":{"line":12,"column":18},"end":{"line":14,"column":1}},"8":{"start":{"line":13,"column":4},"end":{"line":13,"column":20}},"9":{"start":{"line":15,"column":0},"end":{"line":15,"column":34}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":5,"column":18},"end":{"line":5,"column":19}},"loc":{"start":{"line":5,"column":27},"end":{"line":10,"column":1}},"line":5},"1":{"name":"(anonymous_1)","decl":{"start":{"line":12,"column":18},"end":{"line":12,"column":19}},"loc":{"start":{"line":12,"column":24},"end":{"line":14,"column":1}},"line":12}},"branchMap":{"0":{"loc":{"start":{"line":6,"column":4},"end":{"line":8,"column":5}},"type":"if","locations":[{"start":{"line":6,"column":4},"end":{"line":8,"column":5}},{"start":{"line":6,"column":4},"end":{"line":8,"column":5}}],"line":6}},"s":{"0":1,"1":1,"2":1,"3":1,"4":0,"5":1,"6":1,"7":1,"8":2,"9":1},"f":{"0":1,"1":2},"b":{"0":[0,1]},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/instance.ts","sources":["/development/breautek/storm/src/instance.ts"],"names":[],"mappings":";;;AAkBA,IAAI,QAAqB,CAAC;AAE1B,IAAI,WAAW,GAAG,CAAC,GAAgB,EAAQ,EAAE;IACzC,IAAI,QAAQ,EAAE;QACV,QAAQ,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,qBAAqB,EAAE,uCAAuC,CAAC,CAAC;KAC7F;IACD,QAAQ,GAAG,GAAG,CAAC;AACnB,CAAC,CAAC;AAOE,kCAAW;AALf,IAAI,WAAW,GAAG,GAAgB,EAAE;IAChC,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AAIE,kCAAW","sourcesContent":["/*\r\n Copyright 2017-2021 Norman Breau\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n*/\r\n\r\nimport {Application} from './Application';\r\n\r\nlet instance: Application;\r\n\r\nlet setInstance = (app: Application): void => {\r\n if (instance) {\r\n instance.getLogger().warn('ApplicationInstance', 'Storm application already initialized');\r\n }\r\n instance = app;\r\n};\r\n\r\nlet getInstance = (): Application => {\r\n return instance;\r\n};\r\n\r\nexport {\r\n setInstance,\r\n getInstance\r\n};\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"293cef1e59e52fdf6436822c424d1f2e6c44d8f4","contentHash":"5ec2a23e6786939cf8d08712275f5144052ce995bd4d21623c1b6cb99fc187ab"},"/development/breautek/storm/src/ApplicationEvent.ts":{"path":"/development/breautek/storm/src/ApplicationEvent.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":34}},"2":{"start":{"line":5,"column":0},"end":{"line":7,"column":83}},"3":{"start":{"line":6,"column":4},"end":{"line":6,"column":56}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":5,"column":1},"end":{"line":5,"column":2}},"loc":{"start":{"line":5,"column":29},"end":{"line":7,"column":1}},"line":5}},"branchMap":{"0":{"loc":{"start":{"line":7,"column":22},"end":{"line":7,"column":81}},"type":"binary-expr","locations":[{"start":{"line":7,"column":22},"end":{"line":7,"column":46}},{"start":{"line":7,"column":51},"end":{"line":7,"column":80}}],"line":7}},"s":{"0":1,"1":1,"2":1,"3":1},"f":{"0":1},"b":{"0":[1,1]},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/ApplicationEvent.ts","sources":["/development/breautek/storm/src/ApplicationEvent.ts"],"names":[],"mappings":";;;AAgBA,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IACxB,mDAA+B,CAAA;AACnC,CAAC,EAFW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAE3B","sourcesContent":["/*\r\n Copyright 2017-2021 Norman Breau\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n*/\r\n\r\nexport enum ApplicationEvent {\r\n CONFIG_LOADED = 'config_loaded'\r\n}\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"11a84a67f8cc2a931997fa91c4e9e5849ad43b13","contentHash":"017a259bd54c00b6831849af6dadbf4438d88cb2777afadcbed6f02d060251b3"},"/development/breautek/storm/src/Request.ts":{"path":"/development/breautek/storm/src/Request.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":25}},"2":{"start":{"line":4,"column":19},"end":{"line":4,"column":40}},"3":{"start":{"line":5,"column":19},"end":{"line":5,"column":40}},"4":{"start":{"line":6,"column":16},"end":{"line":6,"column":34}},"5":{"start":{"line":7,"column":19},"end":{"line":7,"column":40}},"6":{"start":{"line":8,"column":23},"end":{"line":8,"column":48}},"7":{"start":{"line":9,"column":21},"end":{"line":9,"column":44}},"8":{"start":{"line":10,"column":24},"end":{"line":10,"column":50}},"9":{"start":{"line":13,"column":8},"end":{"line":13,"column":32}},"10":{"start":{"line":16,"column":8},"end":{"line":16,"column":34}},"11":{"start":{"line":19,"column":8},"end":{"line":32,"column":11}},"12":{"start":{"line":20,"column":20},"end":{"line":20,"column":43}},"13":{"start":{"line":21,"column":23},"end":{"line":21,"column":52}},"14":{"start":{"line":22,"column":12},"end":{"line":22,"column":30}},"15":{"start":{"line":23,"column":12},"end":{"line":31,"column":15}},"16":{"start":{"line":24,"column":16},"end":{"line":26,"column":17}},"17":{"start":{"line":25,"column":20},"end":{"line":25,"column":41}},"18":{"start":{"line":27,"column":16},"end":{"line":30,"column":19}},"19":{"start":{"line":35,"column":8},"end":{"line":35,"column":37}},"20":{"start":{"line":38,"column":20},"end":{"line":38,"column":61}},"21":{"start":{"line":39,"column":8},"end":{"line":44,"column":9}},"22":{"start":{"line":40,"column":12},"end":{"line":40,"column":25}},"23":{"start":{"line":43,"column":12},"end":{"line":43,"column":55}},"24":{"start":{"line":47,"column":8},"end":{"line":47,"column":35}},"25":{"start":{"line":50,"column":8},"end":{"line":50,"column":36}},"26":{"start":{"line":53,"column":8},"end":{"line":53,"column":42}},"27":{"start":{"line":56,"column":8},"end":{"line":56,"column":32}},"28":{"start":{"line":59,"column":8},"end":{"line":59,"column":49}},"29":{"start":{"line":62,"column":8},"end":{"line":62,"column":38}},"30":{"start":{"line":65,"column":8},"end":{"line":65,"column":36}},"31":{"start":{"line":68,"column":8},"end":{"line":68,"column":41}},"32":{"start":{"line":71,"column":8},"end":{"line":71,"column":36}},"33":{"start":{"line":74,"column":8},"end":{"line":74,"column":47}},"34":{"start":{"line":77,"column":8},"end":{"line":77,"column":37}},"35":{"start":{"line":80,"column":8},"end":{"line":80,"column":29}},"36":{"start":{"line":83,"column":25},"end":{"line":83,"column":83}},"37":{"start":{"line":84,"column":20},"end":{"line":84,"column":24}},"38":{"start":{"line":85,"column":8},"end":{"line":114,"column":9}},"39":{"start":{"line":86,"column":12},"end":{"line":86,"column":125}},"40":{"start":{"line":89,"column":24},"end":{"line":89,"column":28}},"41":{"start":{"line":90,"column":12},"end":{"line":105,"column":13}},"42":{"start":{"line":91,"column":16},"end":{"line":104,"column":17}},"43":{"start":{"line":93,"column":24},"end":{"line":96,"column":27}},"44":{"start":{"line":97,"column":24},"end":{"line":97,"column":30}},"45":{"start":{"line":99,"column":24},"end":{"line":102,"column":27}},"46":{"start":{"line":103,"column":24},"end":{"line":103,"column":30}},"47":{"start":{"line":106,"column":12},"end":{"line":112,"column":13}},"48":{"start":{"line":107,"column":25},"end":{"line":107,"column":62}},"49":{"start":{"line":108,"column":16},"end":{"line":111,"column":19}},"50":{"start":{"line":113,"column":12},"end":{"line":113,"column":24}},"51":{"start":{"line":115,"column":8},"end":{"line":115,"column":21}},"52":{"start":{"line":118,"column":0},"end":{"line":118,"column":26}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":12,"column":4},"end":{"line":12,"column":5}},"loc":{"start":{"line":12,"column":25},"end":{"line":14,"column":5}},"line":12},"1":{"name":"(anonymous_1)","decl":{"start":{"line":15,"column":4},"end":{"line":15,"column":5}},"loc":{"start":{"line":15,"column":14},"end":{"line":17,"column":5}},"line":15},"2":{"name":"(anonymous_2)","decl":{"start":{"line":18,"column":4},"end":{"line":18,"column":5}},"loc":{"start":{"line":18,"column":14},"end":{"line":33,"column":5}},"line":18},"3":{"name":"(anonymous_3)","decl":{"start":{"line":19,"column":27},"end":{"line":19,"column":28}},"loc":{"start":{"line":19,"column":48},"end":{"line":32,"column":9}},"line":19},"4":{"name":"(anonymous_4)","decl":{"start":{"line":23,"column":26},"end":{"line":23,"column":27}},"loc":{"start":{"line":23,"column":52},"end":{"line":31,"column":13}},"line":23},"5":{"name":"(anonymous_5)","decl":{"start":{"line":34,"column":4},"end":{"line":34,"column":5}},"loc":{"start":{"line":34,"column":17},"end":{"line":36,"column":5}},"line":34},"6":{"name":"(anonymous_6)","decl":{"start":{"line":37,"column":4},"end":{"line":37,"column":5}},"loc":{"start":{"line":37,"column":20},"end":{"line":45,"column":5}},"line":37},"7":{"name":"(anonymous_7)","decl":{"start":{"line":46,"column":4},"end":{"line":46,"column":5}},"loc":{"start":{"line":46,"column":24},"end":{"line":48,"column":5}},"line":46},"8":{"name":"(anonymous_8)","decl":{"start":{"line":49,"column":4},"end":{"line":49,"column":5}},"loc":{"start":{"line":49,"column":16},"end":{"line":51,"column":5}},"line":49},"9":{"name":"(anonymous_9)","decl":{"start":{"line":52,"column":4},"end":{"line":52,"column":5}},"loc":{"start":{"line":52,"column":19},"end":{"line":54,"column":5}},"line":52},"10":{"name":"(anonymous_10)","decl":{"start":{"line":55,"column":4},"end":{"line":55,"column":5}},"loc":{"start":{"line":55,"column":12},"end":{"line":57,"column":5}},"line":55},"11":{"name":"(anonymous_11)","decl":{"start":{"line":58,"column":4},"end":{"line":58,"column":5}},"loc":{"start":{"line":58,"column":21},"end":{"line":60,"column":5}},"line":58},"12":{"name":"(anonymous_12)","decl":{"start":{"line":61,"column":4},"end":{"line":61,"column":5}},"loc":{"start":{"line":61,"column":18},"end":{"line":63,"column":5}},"line":61},"13":{"name":"(anonymous_13)","decl":{"start":{"line":64,"column":4},"end":{"line":64,"column":5}},"loc":{"start":{"line":64,"column":16},"end":{"line":66,"column":5}},"line":64},"14":{"name":"(anonymous_14)","decl":{"start":{"line":67,"column":4},"end":{"line":67,"column":5}},"loc":{"start":{"line":67,"column":13},"end":{"line":69,"column":5}},"line":67},"15":{"name":"(anonymous_15)","decl":{"start":{"line":70,"column":4},"end":{"line":70,"column":5}},"loc":{"start":{"line":70,"column":15},"end":{"line":72,"column":5}},"line":70},"16":{"name":"(anonymous_16)","decl":{"start":{"line":73,"column":4},"end":{"line":73,"column":5}},"loc":{"start":{"line":73,"column":22},"end":{"line":75,"column":5}},"line":73},"17":{"name":"(anonymous_17)","decl":{"start":{"line":76,"column":4},"end":{"line":76,"column":5}},"loc":{"start":{"line":76,"column":19},"end":{"line":78,"column":5}},"line":76},"18":{"name":"(anonymous_18)","decl":{"start":{"line":79,"column":4},"end":{"line":79,"column":5}},"loc":{"start":{"line":79,"column":23},"end":{"line":81,"column":5}},"line":79},"19":{"name":"(anonymous_19)","decl":{"start":{"line":82,"column":4},"end":{"line":82,"column":5}},"loc":{"start":{"line":82,"column":35},"end":{"line":116,"column":5}},"line":82}},"branchMap":{"0":{"loc":{"start":{"line":24,"column":16},"end":{"line":26,"column":17}},"type":"if","locations":[{"start":{"line":24,"column":16},"end":{"line":26,"column":17}},{"start":{"line":24,"column":16},"end":{"line":26,"column":17}}],"line":24},"1":{"loc":{"start":{"line":39,"column":8},"end":{"line":44,"column":9}},"type":"if","locations":[{"start":{"line":39,"column":8},"end":{"line":44,"column":9}},{"start":{"line":39,"column":8},"end":{"line":44,"column":9}}],"line":39},"2":{"loc":{"start":{"line":43,"column":19},"end":{"line":43,"column":54}},"type":"cond-expr","locations":[{"start":{"line":43,"column":39},"end":{"line":43,"column":47}},{"start":{"line":43,"column":50},"end":{"line":43,"column":54}}],"line":43},"3":{"loc":{"start":{"line":43,"column":19},"end":{"line":43,"column":36}},"type":"binary-expr","locations":[{"start":{"line":43,"column":19},"end":{"line":43,"column":24}},{"start":{"line":43,"column":28},"end":{"line":43,"column":36}}],"line":43},"4":{"loc":{"start":{"line":90,"column":12},"end":{"line":105,"column":13}},"type":"if","locations":[{"start":{"line":90,"column":12},"end":{"line":105,"column":13}},{"start":{"line":90,"column":12},"end":{"line":105,"column":13}}],"line":90},"5":{"loc":{"start":{"line":90,"column":16},"end":{"line":90,"column":29}},"type":"binary-expr","locations":[{"start":{"line":90,"column":16},"end":{"line":90,"column":18}},{"start":{"line":90,"column":22},"end":{"line":90,"column":29}}],"line":90},"6":{"loc":{"start":{"line":91,"column":16},"end":{"line":104,"column":17}},"type":"switch","locations":[{"start":{"line":92,"column":20},"end":{"line":97,"column":30}},{"start":{"line":98,"column":20},"end":{"line":103,"column":30}}],"line":91},"7":{"loc":{"start":{"line":106,"column":12},"end":{"line":112,"column":13}},"type":"if","locations":[{"start":{"line":106,"column":12},"end":{"line":112,"column":13}},{"start":{"line":106,"column":12},"end":{"line":112,"column":13}}],"line":106}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":1},"f":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0},"b":{"0":[0,0],"1":[0,0],"2":[0,0],"3":[0,0],"4":[0,0],"5":[0,0],"6":[0,0],"7":[0,0]},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/Request.ts","sources":["/development/breautek/storm/src/Request.ts"],"names":[],"mappings":"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","sourcesContent":["/*\r\n Copyright 2017-2021 Norman Breau\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n*/\r\n\r\nimport * as express from 'express';\r\nimport { IncomingHttpHeaders } from 'http';\r\nimport {Writable} from 'stream';\r\nimport * as formidable from 'formidable';\r\nimport {IFormData} from './IFormData';\r\nimport { IAuthTokenData } from './IAuthTokenData';\r\nimport { getInstance } from './instance';\r\nimport { Token } from './Token';\r\nimport { JWTError } from './JWTError';\r\nimport { ResponseData } from './ResponseData';\r\nimport {StatusCode} from './StatusCode';\r\nimport { InternalError } from './InternalError';\r\n\r\nexport interface IParameterMap {\r\n [key: string]: string;\r\n}\r\n\r\nexport class Request<TBody = any, TAuthToken extends IAuthTokenData = IAuthTokenData> {\r\n private _request: express.Request;\r\n\r\n public constructor(request: express.Request) {\r\n this._request = request;\r\n }\r\n\r\n public getBody(): TBody {\r\n return this._request.body;\r\n }\r\n\r\n public getForm(): Promise<IFormData> {\r\n return new Promise<IFormData>((resolve, reject) => {\r\n let r: express.Request = this.getRequestSource();\r\n let form: formidable.IncomingForm = new formidable.IncomingForm();\r\n form.hash = 'md5';\r\n\r\n form.parse(r, (error: any, fields: formidable.Fields, files: formidable.Files): any => {\r\n if (error) {\r\n return reject(error);\r\n }\r\n\r\n return resolve({\r\n fields,\r\n files: files\r\n });\r\n });\r\n });\r\n }\r\n\r\n public getHeaders(): IncomingHttpHeaders {\r\n return this._request.headers;\r\n }\r\n\r\n public getHeader(name: string): string {\r\n let value: string | Array<string> = this._request.headers[name.toLowerCase()];\r\n if (typeof value === 'string') {\r\n return value;\r\n }\r\n else {\r\n return value && value[0] ? value[0] : null;\r\n }\r\n }\r\n\r\n public getQueryVariables(): any {\r\n return this._request.query;\r\n }\r\n\r\n public getParams(): IParameterMap {\r\n return this._request.params;\r\n }\r\n\r\n public getParam(name: string): string {\r\n return this._request.params[name];\r\n }\r\n\r\n public getIP(): string {\r\n return this._request.ip;\r\n }\r\n\r\n public getForwardedIP(): string {\r\n return this.getHeader('X-Forwarded-For');\r\n }\r\n\r\n public getHostname(): string {\r\n return this._request.hostname;\r\n }\r\n\r\n public getMethod(): string {\r\n return this._request.method;\r\n }\r\n\r\n public getURL(): string {\r\n return this._request.originalUrl;\r\n }\r\n\r\n public isSecure(): boolean {\r\n return this._request.secure;\r\n }\r\n\r\n public pipe(destination: Writable): any {\r\n return this._request.pipe(destination);\r\n }\r\n\r\n public unpipe(source: Writable): void {\r\n this._request.unpipe(source);\r\n }\r\n\r\n public getRequestSource(): express.Request {\r\n return this._request;\r\n }\r\n\r\n public async getAuthenticationToken(): Promise<TAuthToken> {\r\n let authHeader: string = getInstance().getConfig().authentication_header;\r\n let tdata: TAuthToken = null;\r\n try {\r\n tdata = <TAuthToken>(await getInstance().getTokenManager().verify(new Token(this.getHeader(authHeader))));\r\n }\r\n catch (ex) {\r\n let error: ResponseData = null;\r\n if (ex && ex.name) {\r\n switch (ex.name) {\r\n case JWTError.ERR_EXPIRED:\r\n error = new ResponseData(StatusCode.ERR_UNAUTHORIZED, {\r\n code: ex.name,\r\n reason: ex.message\r\n });\r\n break;\r\n case JWTError.ERR_GENERIC:\r\n error = new ResponseData(StatusCode.ERR_UNAUTHORIZED, {\r\n code: ex.name,\r\n reason : ex.message\r\n });\r\n break;\r\n }\r\n }\r\n\r\n if (error === null) {\r\n let ie: InternalError = new InternalError(ex);\r\n error = new ResponseData(ie.getHTTPCode(), {\r\n code: ie.getCode(),\r\n reason: ie.getMessage()\r\n });\r\n }\r\n\r\n throw error;\r\n }\r\n\r\n return tdata;\r\n }\r\n}\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"f4d1088f8152d4e05603f5130f5d715c63a62292","contentHash":"d49acaa420c7e325f36f2d082fe1702d462922ce6bc955a6c7c6c65a06e72ff3"},"/development/breautek/storm/src/Token.ts":{"path":"/development/breautek/storm/src/Token.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":23}},"2":{"start":{"line":6,"column":8},"end":{"line":6,"column":36}},"3":{"start":{"line":9,"column":8},"end":{"line":9,"column":31}},"4":{"start":{"line":12,"column":0},"end":{"line":12,"column":22}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":5,"column":4},"end":{"line":5,"column":5}},"loc":{"start":{"line":5,"column":27},"end":{"line":7,"column":5}},"line":5},"1":{"name":"(anonymous_1)","decl":{"start":{"line":8,"column":4},"end":{"line":8,"column":5}},"loc":{"start":{"line":8,"column":19},"end":{"line":10,"column":5}},"line":8}},"branchMap":{},"s":{"0":1,"1":1,"2":0,"3":0,"4":1},"f":{"0":0,"1":0},"b":{},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/Token.ts","sources":["/development/breautek/storm/src/Token.ts"],"names":[],"mappings":";;;AAgBA,MAAa,KAAK;IAGd,YAAY,SAAiB;QACzB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAChC,CAAC;IAEM,YAAY;QACf,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;CACJ;AAVD,sBAUC","sourcesContent":["/*\r\n Copyright 2017-2021 Norman Breau\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n*/\r\n\r\nexport class Token {\r\n private _signature: string;\r\n\r\n constructor(signature: string) {\r\n this._signature = signature;\r\n }\r\n\r\n public getSignature(): string {\r\n return this._signature;\r\n }\r\n}\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"58ce526d990100b0a47bcabad073543b26e442bf","contentHash":"2c76f9641dc1ce755e16a12519f4ed5ab3c209ea93323dbaf883992f23ba0a9f"},"/development/breautek/storm/src/JWTError.ts":{"path":"/development/breautek/storm/src/JWTError.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":26}},"2":{"start":{"line":5,"column":0},"end":{"line":8,"column":59}},"3":{"start":{"line":6,"column":4},"end":{"line":6,"column":50}},"4":{"start":{"line":7,"column":4},"end":{"line":7,"column":50}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":5,"column":1},"end":{"line":5,"column":2}},"loc":{"start":{"line":5,"column":21},"end":{"line":8,"column":1}},"line":5}},"branchMap":{"0":{"loc":{"start":{"line":8,"column":14},"end":{"line":8,"column":57}},"type":"binary-expr","locations":[{"start":{"line":8,"column":14},"end":{"line":8,"column":30}},{"start":{"line":8,"column":35},"end":{"line":8,"column":56}}],"line":8}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1},"f":{"0":1},"b":{"0":[1,1]},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/JWTError.ts","sources":["/development/breautek/storm/src/JWTError.ts"],"names":[],"mappings":";;;AAgBA,IAAY,QAGX;AAHD,WAAY,QAAQ;IAChB,6CAAiC,CAAA;IACjC,6CAAiC,CAAA;AACrC,CAAC,EAHW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAGnB","sourcesContent":["/*\n Copyright 2017-2021 Norman Breau\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\n\nexport enum JWTError {\n ERR_EXPIRED = 'TokenExpiredError',\n ERR_GENERIC = 'JsonWebTokenError'\n}\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"52baf598a2739474a8d378762a5da217317705d8","contentHash":"5853738e8d975d6c625d8376206b07928c785923b58fd2241861d66d3619c108"},"/development/breautek/storm/src/ResponseData.ts":{"path":"/development/breautek/storm/src/ResponseData.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":30}},"2":{"start":{"line":6,"column":8},"end":{"line":6,"column":30}},"3":{"start":{"line":7,"column":8},"end":{"line":7,"column":26}},"4":{"start":{"line":10,"column":8},"end":{"line":10,"column":28}},"5":{"start":{"line":13,"column":8},"end":{"line":13,"column":26}},"6":{"start":{"line":16,"column":0},"end":{"line":16,"column":36}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":5,"column":4},"end":{"line":5,"column":5}},"loc":{"start":{"line":5,"column":30},"end":{"line":8,"column":5}},"line":5},"1":{"name":"(anonymous_1)","decl":{"start":{"line":9,"column":4},"end":{"line":9,"column":5}},"loc":{"start":{"line":9,"column":16},"end":{"line":11,"column":5}},"line":9},"2":{"name":"(anonymous_2)","decl":{"start":{"line":12,"column":4},"end":{"line":12,"column":5}},"loc":{"start":{"line":12,"column":14},"end":{"line":14,"column":5}},"line":12}},"branchMap":{},"s":{"0":1,"1":1,"2":0,"3":0,"4":0,"5":0,"6":1},"f":{"0":0,"1":0,"2":0},"b":{},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/ResponseData.ts","sources":["/development/breautek/storm/src/ResponseData.ts"],"names":[],"mappings":";;;AAkBA,MAAa,YAAY;IAIrB,YAAmB,MAAkB,EAAE,IAAY;QAC/C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACtB,CAAC;IAEM,SAAS;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAEM,OAAO;QACV,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;CACJ;AAhBD,oCAgBC","sourcesContent":["/*\r\n Copyright 2017-2021 Norman Breau\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n*/\r\n\r\nimport {StatusCode} from './StatusCode';\r\n\r\nexport class ResponseData<TData = any> {\r\n private _status: StatusCode;\r\n private _data: TData;\r\n\r\n public constructor(status: StatusCode, data?: TData) {\r\n this._status = status;\r\n this._data = data;\r\n }\r\n\r\n public getStatus(): StatusCode {\r\n return this._status;\r\n }\r\n\r\n public getData(): TData {\r\n return this._data;\r\n }\r\n}\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"ff09ff67e2e67c83ff906496324aad488b4b1ff1","contentHash":"e9bc7b41cac98fcb0af0e09827a8e23ec94aacacd6945fe43cc22f123a7f5546"},"/development/breautek/storm/src/StatusCode.ts":{"path":"/development/breautek/storm/src/StatusCode.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":28}},"2":{"start":{"line":5,"column":0},"end":{"line":54,"column":65}},"3":{"start":{"line":6,"column":4},"end":{"line":6,"column":68}},"4":{"start":{"line":7,"column":4},"end":{"line":7,"column":90}},"5":{"start":{"line":8,"column":4},"end":{"line":8,"column":72}},"6":{"start":{"line":9,"column":4},"end":{"line":9,"column":46}},"7":{"start":{"line":10,"column":4},"end":{"line":10,"column":62}},"8":{"start":{"line":11,"column":4},"end":{"line":11,"column":64}},"9":{"start":{"line":12,"column":4},"end":{"line":12,"column":74}},"10":{"start":{"line":13,"column":4},"end":{"line":13,"column":68}},"11":{"start":{"line":14,"column":4},"end":{"line":14,"column":74}},"12":{"start":{"line":15,"column":4},"end":{"line":15,"column":78}},"13":{"start":{"line":16,"column":4},"end":{"line":16,"column":72}},"14":{"start":{"line":17,"column":4},"end":{"line":17,"column":80}},"15":{"start":{"line":18,"column":4},"end":{"line":18,"column":84}},"16":{"start":{"line":19,"column":4},"end":{"line":19,"column":88}},"17":{"start":{"line":20,"column":4},"end":{"line":20,"column":64}},"18":{"start":{"line":21,"column":4},"end":{"line":21,"column":72}},"19":{"start":{"line":22,"column":4},"end":{"line":22,"column":78}},"20":{"start":{"line":23,"column":4},"end":{"line":23,"column":72}},"21":{"start":{"line":24,"column":4},"end":{"line":24,"column":62}},"22":{"start":{"line":25,"column":4},"end":{"line":25,"column":72}},"23":{"start":{"line":26,"column":4},"end":{"line":26,"column":74}},"24":{"start":{"line":27,"column":4},"end":{"line":27,"column":82}},"25":{"start":{"line":28,"column":4},"end":{"line":28,"column":68}},"26":{"start":{"line":29,"column":4},"end":{"line":29,"column":68}},"27":{"start":{"line":30,"column":4},"end":{"line":30,"column":72}},"28":{"start":{"line":31,"column":4},"end":{"line":31,"column":78}},"29":{"start":{"line":32,"column":4},"end":{"line":32,"column":88}},"30":{"start":{"line":33,"column":4},"end":{"line":33,"column":80}},"31":{"start":{"line":34,"column":4},"end":{"line":34,"column":66}},"32":{"start":{"line":35,"column":4},"end":{"line":35,"column":58}},"33":{"start":{"line":36,"column":4},"end":{"line":36,"column":80}},"34":{"start":{"line":37,"column":4},"end":{"line":37,"column":88}},"35":{"start":{"line":38,"column":4},"end":{"line":38,"column":84}},"36":{"start":{"line":39,"column":4},"end":{"line":39,"column":90}},"37":{"start":{"line":40,"column":4},"end":{"line":40,"column":94}},"38":{"start":{"line":41,"column":4},"end":{"line":41,"column":108}},"39":{"start":{"line":42,"column":4},"end":{"line":42,"column":86}},"40":{"start":{"line":43,"column":4},"end":{"line":43,"column":62}},"41":{"start":{"line":44,"column":4},"end":{"line":44,"column":82}},"42":{"start":{"line":45,"column":4},"end":{"line":45,"column":92}},"43":{"start":{"line":46,"column":4},"end":{"line":46,"column":84}},"44":{"start":{"line":47,"column":4},"end":{"line":47,"column":100}},"45":{"start":{"line":48,"column":4},"end":{"line":48,"column":60}},"46":{"start":{"line":49,"column":4},"end":{"line":49,"column":70}},"47":{"start":{"line":50,"column":4},"end":{"line":50,"column":90}},"48":{"start":{"line":51,"column":4},"end":{"line":51,"column":82}},"49":{"start":{"line":52,"column":4},"end":{"line":52,"column":98}},"50":{"start":{"line":53,"column":4},"end":{"line":53,"column":74}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":5,"column":1},"end":{"line":5,"column":2}},"loc":{"start":{"line":5,"column":23},"end":{"line":54,"column":1}},"line":5}},"branchMap":{"0":{"loc":{"start":{"line":54,"column":16},"end":{"line":54,"column":63}},"type":"binary-expr","locations":[{"start":{"line":54,"column":16},"end":{"line":54,"column":34}},{"start":{"line":54,"column":39},"end":{"line":54,"column":62}}],"line":54}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1},"f":{"0":1},"b":{"0":[1,1]},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/StatusCode.ts","sources":["/development/breautek/storm/src/StatusCode.ts"],"names":[],"mappings":";;;AAgBA,IAAY,UAqDX;AArDD,WAAY,UAAU;IAClB,+DAAmB,CAAA;IACnB,qFAA8B,CAAA;IAC9B,mEAAqB,CAAA;IAErB,yCAAQ,CAAA;IACR,yDAAgB,CAAA;IAChB,2DAAiB,CAAA;IACjB,qEAAsB,CAAA;IACtB,+DAAmB,CAAA;IACnB,qEAAsB,CAAA;IACtB,yEAAwB,CAAA;IACxB,mEAAqB,CAAA;IACrB,2EAAyB,CAAA;IAEzB,+EAA2B,CAAA;IAC3B,mFAA6B,CAAA;IAC7B,2DAAiB,CAAA;IACjB,mEAAqB,CAAA;IACrB,yEAAwB,CAAA;IACxB,mEAAqB,CAAA;IACrB,yDAAgB,CAAA;IAEhB,mEAAqB,CAAA;IACrB,qEAAsB,CAAA;IACtB,6EAA0B,CAAA;IAC1B,+DAAmB,CAAA;IACnB,+DAAmB,CAAA;IACnB,mEAAqB,CAAA;IACrB,yEAAwB,CAAA;IACxB,mFAA6B,CAAA;IAC7B,2EAAyB,CAAA;IACzB,6DAAiB,CAAA;IACjB,qDAAc,CAAA;IACd,2EAAyB,CAAA;IACzB,mFAA6B,CAAA;IAC7B,+EAA2B,CAAA;IAC3B,qFAA8B,CAAA;IAC9B,yFAAgC,CAAA;IAChC,uGAAuC,CAAA;IACvC,iFAA4B,CAAA;IAC5B,yDAAgB,CAAA;IAChB,6EAA0B,CAAA;IAC1B,uFAA+B,CAAA;IAC/B,+EAA2B,CAAA;IAC3B,+FAAmC,CAAA;IACnC,uDAAe,CAAA;IAEf,iEAAoB,CAAA;IACpB,qFAA8B,CAAA;IAC9B,6EAA0B,CAAA;IAC1B,6FAAkC,CAAA;IAClC,qEAAsB,CAAA;AAC1B,CAAC,EArDW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAqDrB","sourcesContent":["/*\r\n Copyright 2017-2021 Norman Breau\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n*/\r\n\r\nexport enum StatusCode {\r\n INFO_CONTINUE = 100,\r\n INFO_SWITCHING_PROTOCOLS = 101,\r\n INFO_PROCESSING = 102,\r\n\r\n OK = 200,\r\n OK_CREATED = 201,\r\n OK_ACCEPTED = 202,\r\n OK_NON_AUTH_INFO = 203,\r\n OK_NO_CONTENT = 204,\r\n OK_RESET_CONTENT = 205,\r\n OK_PARTIAL_CONTENT = 206,\r\n OK_MULTI_STATUS = 207,\r\n OK_ALREADY_REPORTED = 208,\r\n\r\n REDIR_MULTIPLE_CHOICE = 300,\r\n REDIR_MOVED_PERMANENTLY = 301,\r\n REDIR_FOUND = 301,\r\n REDIR_SEE_OTHER = 303,\r\n REDIR_NOT_MODIFIED = 304,\r\n REDIR_USE_PROXY = 305,\r\n REDIR_TEMP = 307,\r\n\r\n ERR_BAD_REQUEST = 400,\r\n ERR_UNAUTHORIZED = 401,\t\t// Used when the user needs to authorize.\r\n ERR_PAYMENT_REQUIRED = 402,\r\n ERR_FORBIDDEN = 403,\t\t// USed when the user is authorized but is not allowed access.\r\n ERR_NOT_FOUND = 404,\r\n ERR_NOT_ALLOWED = 405,\r\n ERR_NOT_ACCEPTABLE = 406,\r\n ERR_PROXY_AUTH_REQUIRED = 407,\r\n ERR_REQUEST_TIMEOUT = 408,\r\n ERR_CONFLICT= 409,\r\n ERR_GONE = 410,\r\n ERR_LENGTH_REQUIRED = 411,\r\n ERR_PRECONDITION_FAILED = 412,\r\n ERR_REQUEST_TOO_LARGE = 413,\r\n ERR_REQUEST_URI_TOO_LONG = 414,\r\n ERR_UNSUPPORTED_MEDIA_TYPE = 415,\r\n ERR_REQUEST_RANGE_NOT_SATISFIABLE = 416,\r\n ERR_EXPECTATION_FAILED = 417,\r\n ERR_TEAPOT = 418,\r\n ERR_UPGRADE_REQUIRED = 426,\r\n ERR_PRECONDITION_REQUIRED = 428,\r\n ERR_TOO_MANY_REQUESTS = 429,\r\n ERR_REQUEST_HEADERS_TOO_LARGE = 431,\r\n ERR_LEGAL = 451,\r\n\r\n INTERNAL_ERROR = 500,\r\n INTERNAL_NOT_IMPLEMENTED = 501,\r\n INTERNAL_BAD_GATEWAY = 502,\r\n INTERNAL_SERVICE_UNAVAILABLE = 503,\r\n INTERNAL_TIMEOUT = 504\r\n}\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"d6ad336df6dc19448baa9a62978f0e2672b304dc","contentHash":"58a89acac443def46cd91bbb69ae1b0f72fd0615dd0daac4d26ada58e84f366b"},"/development/breautek/storm/src/InternalError.ts":{"path":"/development/breautek/storm/src/InternalError.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":31}},"2":{"start":{"line":4,"column":21},"end":{"line":4,"column":44}},"3":{"start":{"line":5,"column":20},"end":{"line":5,"column":42}},"4":{"start":{"line":6,"column":21},"end":{"line":6,"column":44}},"5":{"start":{"line":9,"column":8},"end":{"line":9,"column":23}},"6":{"start":{"line":12,"column":8},"end":{"line":12,"column":73}},"7":{"start":{"line":15,"column":8},"end":{"line":15,"column":46}},"8":{"start":{"line":18,"column":8},"end":{"line":18,"column":54}},"9":{"start":{"line":21,"column":0},"end":{"line":21,"column":38}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":8,"column":4},"end":{"line":8,"column":5}},"loc":{"start":{"line":8,"column":25},"end":{"line":10,"column":5}},"line":8},"1":{"name":"(anonymous_1)","decl":{"start":{"line":11,"column":4},"end":{"line":11,"column":5}},"loc":{"start":{"line":11,"column":17},"end":{"line":13,"column":5}},"line":11},"2":{"name":"(anonymous_2)","decl":{"start":{"line":14,"column":4},"end":{"line":14,"column":5}},"loc":{"start":{"line":14,"column":14},"end":{"line":16,"column":5}},"line":14},"3":{"name":"(anonymous_3)","decl":{"start":{"line":17,"column":4},"end":{"line":17,"column":5}},"loc":{"start":{"line":17,"column":18},"end":{"line":19,"column":5}},"line":17}},"branchMap":{},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":0,"6":0,"7":0,"8":0,"9":1},"f":{"0":0,"1":0,"2":0,"3":0},"b":{},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/InternalError.ts","sources":["/development/breautek/storm/src/InternalError.ts"],"names":[],"mappings":";;;AAgBA,6CAAwC;AACxC,2CAAsC;AACtC,6CAAwC;AAExC,MAAa,aAAc,SAAQ,uBAAe;IAE9C,YAAmB,OAAa;QAC5B,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;IAEM,UAAU;QACb,OAAO,yDAAyD,CAAC;IACrE,CAAC;IAEM,OAAO;QACV,OAAO,qBAAS,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAEM,WAAW;QACd,OAAO,uBAAU,CAAC,cAAc,CAAC;IACrC,CAAC;CACJ;AAjBD,sCAiBC","sourcesContent":["/*\r\n Copyright 2017-2021 Norman Breau\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n*/\r\n\r\nimport {StormError} from './StormError';\r\nimport {ErrorCode} from './ErrorCode';\r\nimport {StatusCode} from './StatusCode';\r\n\r\nexport class InternalError extends StormError<any> {\r\n // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\r\n public constructor(details?: any) {\r\n super(details);\r\n }\r\n\r\n public getMessage(): string {\r\n return `An internal server error has occured. Please try again.`;\r\n }\r\n\r\n public getCode(): ErrorCode {\r\n return ErrorCode.INTERNAL;\r\n }\r\n\r\n public getHTTPCode(): StatusCode {\r\n return StatusCode.INTERNAL_ERROR;\r\n }\r\n}\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"3005450d266674eebc9c0f670677b5f78a33140b","contentHash":"54e9d2a49a5e9b2a4caf7b003f523915f03e5f541340d9f5c1de3d4101968e98"},"/development/breautek/storm/src/StormError.ts":{"path":"/development/breautek/storm/src/StormError.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":28}},"2":{"start":{"line":4,"column":19},"end":{"line":4,"column":40}},"3":{"start":{"line":5,"column":21},"end":{"line":5,"column":44}},"4":{"start":{"line":6,"column":12},"end":{"line":6,"column":24}},"5":{"start":{"line":9,"column":8},"end":{"line":9,"column":16}},"6":{"start":{"line":10,"column":8},"end":{"line":10,"column":32}},"7":{"start":{"line":11,"column":21},"end":{"line":11,"column":57}},"8":{"start":{"line":12,"column":8},"end":{"line":12,"column":72}},"9":{"start":{"line":13,"column":8},"end":{"line":13,"column":51}},"10":{"start":{"line":16,"column":8},"end":{"line":16,"column":18}},"11":{"start":{"line":19,"column":8},"end":{"line":19,"column":29}},"12":{"start":{"line":22,"column":8},"end":{"line":22,"column":54}},"13":{"start":{"line":25,"column":8},"end":{"line":30,"column":10}},"14":{"start":{"line":33,"column":0},"end":{"line":33,"column":32}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":8,"column":4},"end":{"line":8,"column":5}},"loc":{"start":{"line":8,"column":25},"end":{"line":14,"column":5}},"line":8},"1":{"name":"(anonymous_1)","decl":{"start":{"line":15,"column":4},"end":{"line":15,"column":5}},"loc":{"start":{"line":15,"column":23},"end":{"line":17,"column":5}},"line":15},"2":{"name":"(anonymous_2)","decl":{"start":{"line":18,"column":4},"end":{"line":18,"column":5}},"loc":{"start":{"line":18,"column":24},"end":{"line":20,"column":5}},"line":18},"3":{"name":"(anonymous_3)","decl":{"start":{"line":21,"column":4},"end":{"line":21,"column":5}},"loc":{"start":{"line":21,"column":18},"end":{"line":23,"column":5}},"line":21},"4":{"name":"(anonymous_4)","decl":{"start":{"line":24,"column":4},"end":{"line":24,"column":5}},"loc":{"start":{"line":24,"column":23},"end":{"line":31,"column":5}},"line":24}},"branchMap":{},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":0,"10":0,"11":0,"12":0,"13":0,"14":1},"f":{"0":1,"1":0,"2":0,"3":0,"4":0},"b":{},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/StormError.ts","sources":["/development/breautek/storm/src/StormError.ts"],"names":[],"mappings":";;;AAgBA,yCAAuC;AAEvC,6CAAwC;AAExC,MAAM,GAAG,GAAW,YAAY,CAAC;AAajC,MAAsB,UAAgC,SAAQ,KAAK;IAG/D,YAAmB,OAAuB;QACtC,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAExB,IAAI,MAAM,GAAW,sBAAW,EAAE,CAAC,SAAS,EAAE,CAAC;QAC/C,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,wBAAwB,CAAC,CAAC;QAChE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAC/C,CAAC;IAaM,gBAAgB;QACnB,OAAO,EAAE,CAAC;IACd,CAAC;IAMM,iBAAiB;QACpB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAEM,WAAW;QACd,OAAO,uBAAU,CAAC,cAAc,CAAC;IACrC,CAAC;IAEM,gBAAgB;QACnB,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;YAC3B,OAAO,EAAG,IAAI,CAAC,UAAU,EAAE;YAC3B,IAAI,EAAG,IAAI,CAAC,OAAO,EAAE;YACrB,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE;SACnC,CAAC;IACN,CAAC;CACJ;AAhDD,gCAgDC","sourcesContent":["/*\r\n Copyright 2017-2021 Norman Breau\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n*/\r\n\r\nimport {getInstance} from './instance';\r\nimport {Logger} from '@arashi/logger';\r\nimport {StatusCode} from './StatusCode';\r\n\r\nconst TAG: string = 'StormError';\r\n\r\nexport interface IAdditionalErrorDetails {\r\n [key: string]: any;\r\n}\r\n\r\nexport interface IErrorResponse {\r\n name: string;\r\n message: string;\r\n code: number;\r\n details: IAdditionalErrorDetails;\r\n}\r\n\r\nexport abstract class StormError<TErrorDetails = any> extends Error {\r\n private _details: TErrorDetails;\r\n\r\n public constructor(details?: TErrorDetails) {\r\n super();\r\n\r\n this._details = details;\r\n\r\n let logger: Logger = getInstance().getLogger();\r\n logger.error(TAG, `${this.getMessage()}... See details below:`);\r\n logger.info(TAG, this.getPrivateDetails());\r\n }\r\n\r\n public abstract getMessage(): string;\r\n public abstract getCode(): number;\r\n\r\n // public getDetails(): any {\r\n // getInstance().getLogger().deprecate('getPrivateDetails()');\r\n // return this.getPrivateDetails();\r\n // }\r\n\r\n /**\r\n * Sends details to the client.\r\n */\r\n public getPublicDetails(): IAdditionalErrorDetails {\r\n return {};\r\n }\r\n\r\n /**\r\n * Private details are only logged to the server log.\r\n * They are kept secret from the client.\r\n */\r\n public getPrivateDetails(): TErrorDetails {\r\n return this._details;\r\n }\r\n\r\n public getHTTPCode(): StatusCode {\r\n return StatusCode.INTERNAL_ERROR;\r\n }\r\n\r\n public getErrorResponse(): IErrorResponse {\r\n return {\r\n name: this.constructor.name,\r\n message : this.getMessage(),\r\n code : this.getCode(),\r\n details: this.getPublicDetails()\r\n };\r\n }\r\n}\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"3ff3db76a6ab74e2b9290c71fbf8d0da0bb6cf6e","contentHash":"83f1b00863a09dd0e6134c974d4e89715466a49ffeef7909019d81d88ee43d46"},"/development/breautek/storm/src/ErrorCode.ts":{"path":"/development/breautek/storm/src/ErrorCode.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":27}},"2":{"start":{"line":5,"column":0},"end":{"line":14,"column":62}},"3":{"start":{"line":6,"column":4},"end":{"line":6,"column":54}},"4":{"start":{"line":7,"column":4},"end":{"line":7,"column":72}},"5":{"start":{"line":8,"column":4},"end":{"line":8,"column":64}},"6":{"start":{"line":9,"column":4},"end":{"line":9,"column":76}},"7":{"start":{"line":10,"column":4},"end":{"line":10,"column":64}},"8":{"start":{"line":11,"column":4},"end":{"line":11,"column":68}},"9":{"start":{"line":12,"column":4},"end":{"line":12,"column":76}},"10":{"start":{"line":13,"column":4},"end":{"line":13,"column":84}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":5,"column":1},"end":{"line":5,"column":2}},"loc":{"start":{"line":5,"column":22},"end":{"line":14,"column":1}},"line":5}},"branchMap":{"0":{"loc":{"start":{"line":14,"column":15},"end":{"line":14,"column":60}},"type":"binary-expr","locations":[{"start":{"line":14,"column":15},"end":{"line":14,"column":32}},{"start":{"line":14,"column":37},"end":{"line":14,"column":59}}],"line":14}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1},"f":{"0":1},"b":{"0":[1,1]},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/ErrorCode.ts","sources":["/development/breautek/storm/src/ErrorCode.ts"],"names":[],"mappings":";;;AAgBA,IAAY,SASX;AATD,WAAY,SAAS;IACjB,iDAAQ,CAAA;IACR,mEAAiB,CAAA;IACjB,2DAAa,CAAA;IACb,uEAAmB,CAAA;IACnB,2DAAa,CAAA;IACb,+DAAe,CAAA;IACf,uEAAmB,CAAA;IACnB,+EAAuB,CAAA;AAC3B,CAAC,EATW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QASpB","sourcesContent":["/*\r\n Copyright 2017-2021 Norman Breau\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n*/\r\n\r\nexport enum ErrorCode {\r\n INTERNAL,\r\n MISSING_PARAMETER,\r\n EXPIRED_TOKEN,\r\n INVALID_CREDENTIALS,\r\n INVALID_VALUE,\r\n DUPLICATE_ENTRY,\r\n UNAUTHORIZED_ACCESS,\r\n INSUFFICIENT_DISK_SPACE\r\n}\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"6f059622cf8bf1326df8d96a3f5471d55c44a2de","contentHash":"521b7184df860f70e1e1271d499bfd79d26c0c938b120d290d651ed047a19dd8"},"/development/breautek/storm/src/Response.ts":{"path":"/development/breautek/storm/src/Response.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":26}},"2":{"start":{"line":4,"column":21},"end":{"line":4,"column":44}},"3":{"start":{"line":5,"column":23},"end":{"line":5,"column":48}},"4":{"start":{"line":6,"column":21},"end":{"line":6,"column":44}},"5":{"start":{"line":7,"column":24},"end":{"line":7,"column":50}},"6":{"start":{"line":8,"column":19},"end":{"line":8,"column":40}},"7":{"start":{"line":9,"column":12},"end":{"line":9,"column":22}},"8":{"start":{"line":12,"column":8},"end":{"line":12,"column":34}},"9":{"start":{"line":13,"column":8},"end":{"line":13,"column":35}},"10":{"start":{"line":14,"column":8},"end":{"line":14,"column":38}},"11":{"start":{"line":17,"column":8},"end":{"line":17,"column":38}},"12":{"start":{"line":18,"column":8},"end":{"line":18,"column":20}},"13":{"start":{"line":21,"column":8},"end":{"line":21,"column":41}},"14":{"start":{"line":24,"column":8},"end":{"line":24,"column":37}},"15":{"start":{"line":27,"column":8},"end":{"line":35,"column":9}},"16":{"start":{"line":28,"column":12},"end":{"line":28,"column":66}},"17":{"start":{"line":30,"column":13},"end":{"line":35,"column":9}},"18":{"start":{"line":31,"column":12},"end":{"line":31,"column":77}},"19":{"start":{"line":34,"column":12},"end":{"line":34,"column":38}},"20":{"start":{"line":36,"column":8},"end":{"line":36,"column":169}},"21":{"start":{"line":39,"column":8},"end":{"line":41,"column":11}},"22":{"start":{"line":40,"column":12},"end":{"line":40,"column":42}},"23":{"start":{"line":42,"column":8},"end":{"line":42,"column":36}},"24":{"start":{"line":45,"column":8},"end":{"line":50,"column":9}},"25":{"start":{"line":46,"column":12},"end":{"line":46,"column":66}},"26":{"start":{"line":49,"column":12},"end":{"line":49,"column":55}},"27":{"start":{"line":51,"column":8},"end":{"line":51,"column":24}},"28":{"start":{"line":54,"column":8},"end":{"line":54,"column":39}},"29":{"start":{"line":57,"column":8},"end":{"line":57,"column":41}},"30":{"start":{"line":60,"column":8},"end":{"line":60,"column":42}},"31":{"start":{"line":63,"column":8},"end":{"line":76,"column":9}},"32":{"start":{"line":64,"column":12},"end":{"line":72,"column":13}},"33":{"start":{"line":65,"column":16},"end":{"line":65,"column":33}},"34":{"start":{"line":67,"column":17},"end":{"line":72,"column":13}},"35":{"start":{"line":68,"column":16},"end":{"line":68,"column":33}},"36":{"start":{"line":71,"column":16},"end":{"line":71,"column":68}},"37":{"start":{"line":75,"column":12},"end":{"line":75,"column":64}},"38":{"start":{"line":79,"column":0},"end":{"line":79,"column":28}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":11,"column":4},"end":{"line":11,"column":5}},"loc":{"start":{"line":11,"column":38},"end":{"line":15,"column":5}},"line":11},"1":{"name":"(anonymous_1)","decl":{"start":{"line":16,"column":4},"end":{"line":16,"column":5}},"loc":{"start":{"line":16,"column":22},"end":{"line":19,"column":5}},"line":16},"2":{"name":"(anonymous_2)","decl":{"start":{"line":20,"column":4},"end":{"line":20,"column":5}},"loc":{"start":{"line":20,"column":16},"end":{"line":22,"column":5}},"line":20},"3":{"name":"(anonymous_3)","decl":{"start":{"line":23,"column":4},"end":{"line":23,"column":5}},"loc":{"start":{"line":23,"column":18},"end":{"line":25,"column":5}},"line":23},"4":{"name":"(anonymous_4)","decl":{"start":{"line":26,"column":4},"end":{"line":26,"column":5}},"loc":{"start":{"line":26,"column":15},"end":{"line":37,"column":5}},"line":26},"5":{"name":"(anonymous_5)","decl":{"start":{"line":38,"column":4},"end":{"line":38,"column":5}},"loc":{"start":{"line":38,"column":17},"end":{"line":43,"column":5}},"line":38},"6":{"name":"(anonymous_6)","decl":{"start":{"line":39,"column":25},"end":{"line":39,"column":26}},"loc":{"start":{"line":39,"column":31},"end":{"line":41,"column":9}},"line":39},"7":{"name":"(anonymous_7)","decl":{"start":{"line":44,"column":4},"end":{"line":44,"column":5}},"loc":{"start":{"line":44,"column":18},"end":{"line":52,"column":5}},"line":44},"8":{"name":"(anonymous_8)","decl":{"start":{"line":53,"column":4},"end":{"line":53,"column":5}},"loc":{"start":{"line":53,"column":26},"end":{"line":55,"column":5}},"line":53},"9":{"name":"(anonymous_9)","decl":{"start":{"line":56,"column":4},"end":{"line":56,"column":5}},"loc":{"start":{"line":56,"column":29},"end":{"line":58,"column":5}},"line":56},"10":{"name":"(anonymous_10)","decl":{"start":{"line":59,"column":4},"end":{"line":59,"column":5}},"loc":{"start":{"line":59,"column":20},"end":{"line":61,"column":5}},"line":59},"11":{"name":"(anonymous_11)","decl":{"start":{"line":62,"column":4},"end":{"line":62,"column":5}},"loc":{"start":{"line":62,"column":17},"end":{"line":77,"column":5}},"line":62}},"branchMap":{"0":{"loc":{"start":{"line":27,"column":8},"end":{"line":35,"column":9}},"type":"if","locations":[{"start":{"line":27,"column":8},"end":{"line":35,"column":9}},{"start":{"line":27,"column":8},"end":{"line":35,"column":9}}],"line":27},"1":{"loc":{"start":{"line":30,"column":13},"end":{"line":35,"column":9}},"type":"if","locations":[{"start":{"line":30,"column":13},"end":{"line":35,"column":9}},{"start":{"line":30,"column":13},"end":{"line":35,"column":9}}],"line":30},"2":{"loc":{"start":{"line":45,"column":8},"end":{"line":50,"column":9}},"type":"if","locations":[{"start":{"line":45,"column":8},"end":{"line":50,"column":9}},{"start":{"line":45,"column":8},"end":{"line":50,"column":9}}],"line":45},"3":{"loc":{"start":{"line":63,"column":8},"end":{"line":76,"column":9}},"type":"if","locations":[{"start":{"line":63,"column":8},"end":{"line":76,"column":9}},{"start":{"line":63,"column":8},"end":{"line":76,"column":9}}],"line":63},"4":{"loc":{"start":{"line":64,"column":12},"end":{"line":72,"column":13}},"type":"if","locations":[{"start":{"line":64,"column":12},"end":{"line":72,"column":13}},{"start":{"line":64,"column":12},"end":{"line":72,"column":13}}],"line":64},"5":{"loc":{"start":{"line":67,"column":17},"end":{"line":72,"column":13}},"type":"if","locations":[{"start":{"line":67,"column":17},"end":{"line":72,"column":13}},{"start":{"line":67,"column":17},"end":{"line":72,"column":13}}],"line":67}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":1},"f":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0},"b":{"0":[0,0],"1":[0,0],"2":[0,0],"3":[0,0],"4":[0,0],"5":[0,0]},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/Response.ts","sources":["/development/breautek/storm/src/Response.ts"],"names":[],"mappings":"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","sourcesContent":["/*\r\n Copyright 2017-2021 Norman Breau\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n*/\r\n\r\nimport {StatusCode} from './StatusCode';\r\nimport {ResponseData} from './ResponseData';\r\nimport {StormError, IErrorResponse} from './StormError';\r\nimport * as express from 'express';\r\nimport { InternalError } from './InternalError';\r\nimport { getInstance } from './instance';\r\n\r\nconst TAG: string = 'Response';\r\n\r\nexport type SendableData = ResponseData | Error | IErrorResponse | any;\r\n\r\nexport interface IHeaderKeyValuePair {\r\n [key: string]: string;\r\n}\r\n\r\nexport class Response<TResponse = SendableData, TErrorResponse = Error | IErrorResponse | string> {\r\n private _response: express.Response;\r\n private _created: Date;\r\n private _requestURL: string;\r\n\r\n public constructor(response: express.Response, requestURL: string) {\r\n this._response = response;\r\n this._created = new Date();\r\n this._requestURL = requestURL;\r\n }\r\n\r\n public setStatus(status: StatusCode): Response<TResponse, TErrorResponse> {\r\n this._response.status(status);\r\n return this;\r\n }\r\n\r\n public getStatus(): StatusCode {\r\n return this._response.statusCode;\r\n }\r\n\r\n public redirect(url: string): void {\r\n this._response.redirect(url);\r\n }\r\n\r\n public send(data?: TResponse | TErrorResponse | StormError | IErrorResponse): void {\r\n if (data instanceof ResponseData) {\r\n this.setStatus(data.getStatus()).send(data.getData());\r\n }\r\n else if (data instanceof StormError) {\r\n this.setStatus(data.getHTTPCode()).send(data.getErrorResponse());\r\n }\r\n else {\r\n this._response.send(data);\r\n }\r\n \r\n getInstance().getLogger().info(TAG, `API ${this._requestURL} (${this.getStatus()}) responded in ${new Date().getTime() - this._created.getTime()}ms`);\r\n }\r\n\r\n public pipe(stream: NodeJS.ReadableStream): void {\r\n stream.on('end', () => {\r\n stream.unpipe(this._response);\r\n });\r\n \r\n stream.pipe(this._response);\r\n }\r\n\r\n public success(data?: TResponse): void {\r\n if (data === undefined) {\r\n this.setStatus(StatusCode.OK_NO_CONTENT);\r\n }\r\n else {\r\n this.setStatus(StatusCode.OK);\r\n }\r\n\r\n this.send(data);\r\n }\r\n\r\n public setHeader(key: string, value: string): void {\r\n this._response.set(key, value);\r\n }\r\n\r\n public setHeaders(keyValuePair: IHeaderKeyValuePair): void {\r\n this._response.set(keyValuePair);\r\n }\r\n\r\n public isHeadersSent(): boolean {\r\n return this._response.headersSent;\r\n }\r\n\r\n public error(error?: TErrorResponse | ResponseData<TErrorResponse>): void {\r\n if (error) {\r\n if (error instanceof StormError) {\r\n this.send(error);\r\n }\r\n else if (error instanceof ResponseData) {\r\n // If it was not ResponseData<TResponse> then\r\n // the method signature should have caught it\r\n this.send((<TErrorResponse><unknown>error));\r\n }\r\n else {\r\n this.send(new InternalError(error));\r\n }\r\n }\r\n else {\r\n this.send(new InternalError(error));\r\n }\r\n }\r\n}\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"a27b32ef5e6c34e02212756cc14d52897394adc0","contentHash":"6af4db8dc5ba962a6f9d6402b65486226770e7a1db2498634a95dc939721d0ac"},"/development/breautek/storm/src/ConfigLoader.ts":{"path":"/development/breautek/storm/src/ConfigLoader.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":30}},"2":{"start":{"line":4,"column":19},"end":{"line":4,"column":40}},"3":{"start":{"line":5,"column":17},"end":{"line":5,"column":42}},"4":{"start":{"line":6,"column":13},"end":{"line":6,"column":28}},"5":{"start":{"line":7,"column":19},"end":{"line":7,"column":40}},"6":{"start":{"line":8,"column":14},"end":{"line":8,"column":28}},"7":{"start":{"line":9,"column":20},"end":{"line":9,"column":43}},"8":{"start":{"line":10,"column":29},"end":{"line":10,"column":60}},"9":{"start":{"line":11,"column":12},"end":{"line":11,"column":26}},"10":{"start":{"line":15,"column":21},"end":{"line":15,"column":46}},"11":{"start":{"line":16,"column":8},"end":{"line":61,"column":11}},"12":{"start":{"line":17,"column":12},"end":{"line":17,"column":55}},"13":{"start":{"line":18,"column":25},"end":{"line":18,"column":27}},"14":{"start":{"line":19,"column":24},"end":{"line":19,"column":60}},"15":{"start":{"line":20,"column":24},"end":{"line":20,"column":66}},"16":{"start":{"line":24,"column":12},"end":{"line":24,"column":62}},"17":{"start":{"line":25,"column":12},"end":{"line":25,"column":63}},"18":{"start":{"line":26,"column":12},"end":{"line":26,"column":65}},"19":{"start":{"line":27,"column":12},"end":{"line":27,"column":86}},"20":{"start":{"line":28,"column":12},"end":{"line":28,"column":57}},"21":{"start":{"line":29,"column":12},"end":{"line":39,"column":13}},"22":{"start":{"line":30,"column":16},"end":{"line":30,"column":35}},"23":{"start":{"line":31,"column":16},"end":{"line":31,"column":57}},"24":{"start":{"line":34,"column":16},"end":{"line":34,"column":55}},"25":{"start":{"line":35,"column":16},"end":{"line":37,"column":19}},"26":{"start":{"line":36,"column":20},"end":{"line":36,"column":63}},"27":{"start":{"line":38,"column":16},"end":{"line":38,"column":23}},"28":{"start":{"line":40,"column":12},"end":{"line":40,"column":64}},"29":{"start":{"line":41,"column":12},"end":{"line":48,"column":13}},"30":{"start":{"line":42,"column":16},"end":{"line":42,"column":35}},"31":{"start":{"line":43,"column":16},"end":{"line":43,"column":58}},"32":{"start":{"line":46,"column":16},"end":{"line":46,"column":71}},"33":{"start":{"line":47,"column":16},"end":{"line":47,"column":38}},"34":{"start":{"line":49,"column":12},"end":{"line":54,"column":13}},"35":{"start":{"line":50,"column":16},"end":{"line":50,"column":59}},"36":{"start":{"line":53,"column":16},"end":{"line":53,"column":56}},"37":{"start":{"line":55,"column":12},"end":{"line":55,"column":67}},"38":{"start":{"line":56,"column":12},"end":{"line":56,"column":79}},"39":{"start":{"line":57,"column":12},"end":{"line":57,"column":56}},"40":{"start":{"line":58,"column":12},"end":{"line":58,"column":38}},"41":{"start":{"line":59,"column":12},"end":{"line":59,"column":49}},"42":{"start":{"line":60,"column":12},"end":{"line":60,"column":28}},"43":{"start":{"line":64,"column":18},"end":{"line":66,"column":10}},"44":{"start":{"line":67,"column":23},"end":{"line":129,"column":10}},"45":{"start":{"line":130,"column":22},"end":{"line":130,"column":38}},"46":{"start":{"line":131,"column":8},"end":{"line":133,"column":9}},"47":{"start":{"line":132,"column":12},"end":{"line":132,"column":87}},"48":{"start":{"line":136,"column":18},"end":{"line":136,"column":42}},"49":{"start":{"line":137,"column":8},"end":{"line":139,"column":9}},"50":{"start":{"line":138,"column":12},"end":{"line":138,"column":22}},"51":{"start":{"line":140,"column":8},"end":{"line":140,"column":36}},"52":{"start":{"line":144,"column":8},"end":{"line":146,"column":9}},"53":{"start":{"line":145,"column":12},"end":{"line":145,"column":57}},"54":{"start":{"line":147,"column":8},"end":{"line":147,"column":22}},"55":{"start":{"line":150,"column":0},"end":{"line":150,"column":36}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":13,"column":4},"end":{"line":13,"column":5}},"loc":{"start":{"line":13,"column":18},"end":{"line":13,"column":21}},"line":13},"1":{"name":"(anonymous_1)","decl":{"start":{"line":14,"column":4},"end":{"line":14,"column":5}},"loc":{"start":{"line":14,"column":22},"end":{"line":62,"column":5}},"line":14},"2":{"name":"(anonymous_2)","decl":{"start":{"line":16,"column":27},"end":{"line":16,"column":28}},"loc":{"start":{"line":16,"column":48},"end":{"line":61,"column":9}},"line":16},"3":{"name":"(anonymous_3)","decl":{"start":{"line":35,"column":33},"end":{"line":35,"column":34}},"loc":{"start":{"line":35,"column":39},"end":{"line":37,"column":17}},"line":35},"4":{"name":"(anonymous_4)","decl":{"start":{"line":63,"column":4},"end":{"line":63,"column":5}},"loc":{"start":{"line":63,"column":41},"end":{"line":134,"column":5}},"line":63},"5":{"name":"(anonymous_5)","decl":{"start":{"line":135,"column":4},"end":{"line":135,"column":5}},"loc":{"start":{"line":135,"column":29},"end":{"line":141,"column":5}},"line":135},"6":{"name":"(anonymous_6)","decl":{"start":{"line":142,"column":4},"end":{"line":142,"column":5}},"loc":{"start":{"line":142,"column":24},"end":{"line":148,"column":5}},"line":142}},"branchMap":{"0":{"loc":{"start":{"line":49,"column":12},"end":{"line":54,"column":13}},"type":"if","locations":[{"start":{"line":49,"column":12},"end":{"line":54,"column":13}},{"start":{"line":49,"column":12},"end":{"line":54,"column":13}}],"line":49},"1":{"loc":{"start":{"line":131,"column":8},"end":{"line":133,"column":9}},"type":"if","locations":[{"start":{"line":131,"column":8},"end":{"line":133,"column":9}},{"start":{"line":131,"column":8},"end":{"line":133,"column":9}}],"line":131},"2":{"loc":{"start":{"line":137,"column":8},"end":{"line":139,"column":9}},"type":"if","locations":[{"start":{"line":137,"column":8},"end":{"line":139,"column":9}},{"start":{"line":137,"column":8},"end":{"line":139,"column":9}}],"line":137},"3":{"loc":{"start":{"line":144,"column":8},"end":{"line":146,"column":9}},"type":"if","locations":[{"start":{"line":144,"column":8},"end":{"line":146,"column":9}},{"start":{"line":144,"column":8},"end":{"line":146,"column":9}}],"line":144}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":0,"25":0,"26":0,"27":0,"28":1,"29":1,"30":1,"31":1,"32":0,"33":0,"34":1,"35":1,"36":0,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":0,"51":1,"52":1,"53":1,"54":1,"55":1},"f":{"0":0,"1":1,"2":1,"3":0,"4":1,"5":1,"6":1},"b":{"0":[1,0],"1":[1,0],"2":[0,1],"3":[1,0]},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/ConfigLoader.ts","sources":["/development/breautek/storm/src/ConfigLoader.ts"],"names":[],"mappings":"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","sourcesContent":["/// <reference path=\"./defs/merge-change.d.ts\" />\r\n\r\n/*\r\n Copyright 2017-2021 Norman Breau\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n*/\r\n\r\nimport {getInstance} from './instance';\r\nimport {Logger} from '@arashi/logger';\r\nimport * as Path from 'path';\r\nimport {Application} from './Application';\r\nimport {ExitCode} from './ExitCode';\r\nimport {IConfig} from './IConfig';\r\nimport Ajv from 'ajv';\r\nimport * as MergeChange from 'merge-change';\r\nimport { InvalidConfigError } from './InvalidConfigError';\r\n\r\nconst TAG: string = 'ConfigLoader';\r\n\r\nexport class ConfigLoader {\r\n private constructor() {}\r\n\r\n public static load(path: string): Promise<IConfig> {\r\n let logger: Logger = ConfigLoader._getLogger();\r\n\r\n return new Promise<IConfig>((resolve, reject) => {\r\n logger.trace(TAG, 'Configuration loaded.');\r\n \r\n let config: any = {};\r\n\r\n let cPath: string = Path.resolve(path, 'bt-config.json');\r\n let lPath: string = Path.resolve(path, 'bt-local-config.json');\r\n \r\n let c: any;\r\n let l: any;\r\n let defaults: any;\r\n\r\n logger.trace(TAG, `Main Config Path:\\t ${cPath}`);\r\n logger.trace(TAG, `Local Config Path:\\t ${lPath}`);\r\n \r\n logger.trace(TAG, 'Loading configuration defaults.');\r\n defaults = require(Path.resolve(__dirname, '../bt-config-defaults.json'));\r\n\r\n logger.trace(TAG, 'Loading main confing...');\r\n try {\r\n c = require(cPath);\r\n logger.trace(TAG, 'Main config loaded.');\r\n }\r\n catch (ex) {\r\n logger.error(TAG, `Missing ${cPath}.`);\r\n process.nextTick(() => {\r\n reject(ExitCode.MISSING_CONFIG);\r\n });\r\n return;\r\n }\r\n\r\n logger.trace(TAG, 'Loading optional local config.');\r\n try {\r\n l = require(lPath);\r\n logger.trace(TAG, 'Local config loaded.');\r\n }\r\n catch (ex) {\r\n logger.trace(TAG, 'Local config could not be loaded.');\r\n logger.trace(TAG, ex);\r\n }\r\n\r\n if (l) {\r\n config = MergeChange.merge(defaults, c, l);\r\n }\r\n else {\r\n config = MergeChange.merge(defaults, c);\r\n }\r\n\r\n logger.trace(TAG, 'Reading command line arguments...');\r\n config = MergeChange.merge(config, ConfigLoader._getCmdLineArgs());\r\n\r\n logger.trace(TAG, 'Configurations merged.');\r\n logger.trace(TAG, config);\r\n\r\n ConfigLoader._validateSchema(config);\r\n\r\n resolve(<IConfig>config);\r\n });\r\n }\r\n\r\n private static async _validateSchema(config: IConfig): Promise<void> {\r\n // return;\r\n let ajv: Ajv = new Ajv({\r\n allErrors: true\r\n });\r\n\r\n let validate = ajv.compile({\r\n type: 'object',\r\n additionalProperties: false,\r\n properties: {\r\n bind: { type: [ 'string', 'null' ] },\r\n port: { type: [ 'number', 'null' ] },\r\n authentication_header: { type: [ 'string', 'null' ] },\r\n backend_authentication_header: { type: [ 'string', 'null' ] },\r\n backend_authentication_secret: { type: [ 'string', 'null' ] },\r\n request_size_limit: { type: [ 'number', 'null' ] },\r\n log: {\r\n type: [ 'object', 'null' ],\r\n additionalProperties: false,\r\n properties: {\r\n level: { type: [ 'string', 'null' ] },\r\n directory: { type: [ 'string', 'null' ] },\r\n filters: {\r\n type: [ 'array', 'null' ],\r\n items: { type: 'string' }\r\n }\r\n }\r\n },\r\n database: {\r\n type: [ 'object', 'null' ],\r\n additionalProperties: false,\r\n properties: {\r\n query_timeout: { type: [ 'integer', 'null' ], minimum: 0 },\r\n main: {\r\n type: [ 'object', 'null' ],\r\n additionalProperties: false,\r\n properties: {\r\n name: { type: 'string', const: \"MASTER\" },\r\n host: { type: 'string' },\r\n port: { type: 'integer', minimum: 0 },\r\n schema: { type: 'string' },\r\n user: { type: 'string' },\r\n password: { type: 'string' }\r\n }\r\n },\r\n replicationNodes: {\r\n type: [ 'array', 'null' ],\r\n items: {\r\n type: 'object',\r\n additionalProperties: false,\r\n properties: {\r\n name: { type: 'string' },\r\n host: { type: 'string' },\r\n port: { type: 'integer', minimum: 0 },\r\n schema: { type: 'string' },\r\n user: { type: 'string' },\r\n password: { type: 'string' }\r\n }\r\n }\r\n }\r\n }\r\n },\r\n customConfig: {\r\n type: 'object',\r\n additionalProperties: true,\r\n properties: {}\r\n }\r\n }\r\n });\r\n\r\n let isValid: boolean = validate(config);\r\n if (!isValid) {\r\n throw new InvalidConfigError(config, validate.errors);\r\n }\r\n }\r\n\r\n private static _getCmdLineArgs(): any {\r\n let app: Application = getInstance();\r\n if (!app) {\r\n return {};\r\n }\r\n\r\n return app.getCmdLineArgs();\r\n }\r\n\r\n private static _getLogger(): Logger {\r\n let logger: Logger;\r\n \r\n if (!logger) {\r\n logger = new Logger('ConfigLoader');\r\n }\r\n\r\n return logger;\r\n }\r\n}\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"e6592c29f6746924df3132dae5cb782121bbab36","contentHash":"389ad2df03e1cdadb522dd26c4fae68157e7ebc37f5f1fb4807fa4b87975a186"},"/development/breautek/storm/src/ExitCode.ts":{"path":"/development/breautek/storm/src/ExitCode.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":26}},"2":{"start":{"line":5,"column":0},"end":{"line":7,"column":59}},"3":{"start":{"line":6,"column":4},"end":{"line":6,"column":64}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":5,"column":1},"end":{"line":5,"column":2}},"loc":{"start":{"line":5,"column":21},"end":{"line":7,"column":1}},"line":5}},"branchMap":{"0":{"loc":{"start":{"line":7,"column":14},"end":{"line":7,"column":57}},"type":"binary-expr","locations":[{"start":{"line":7,"column":14},"end":{"line":7,"column":30}},{"start":{"line":7,"column":35},"end":{"line":7,"column":56}}],"line":7}},"s":{"0":1,"1":1,"2":1,"3":1},"f":{"0":1},"b":{"0":[1,1]},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/ExitCode.ts","sources":["/development/breautek/storm/src/ExitCode.ts"],"names":[],"mappings":";;;AAgBA,IAAY,QAEX;AAFD,WAAY,QAAQ;IAChB,2DAAkB,CAAA;AACtB,CAAC,EAFW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAEnB","sourcesContent":["/*\r\n Copyright 2017-2021 Norman Breau\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n*/\r\n\r\nexport enum ExitCode {\r\n MISSING_CONFIG = 1\r\n}\r\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"f1465f10337891785fce11f384c7e0fc5f095a8f","contentHash":"c2aad1e4e18a41e500e57548d8275bfc6d8a72d69fdfa49d9272f9e54a6381e3"},"/development/breautek/storm/src/InvalidConfigError.ts":{"path":"/development/breautek/storm/src/InvalidConfigError.ts","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":2,"column":62}},"1":{"start":{"line":3,"column":0},"end":{"line":3,"column":36}},"2":{"start":{"line":4,"column":21},"end":{"line":4,"column":44}},"3":{"start":{"line":5,"column":20},"end":{"line":5,"column":42}},"4":{"start":{"line":6,"column":21},"end":{"line":6,"column":44}},"5":{"start":{"line":9,"column":8},"end":{"line":12,"column":11}},"6":{"start":{"line":15,"column":8},"end":{"line":16,"column":44}},"7":{"start":{"line":19,"column":8},"end":{"line":19,"column":57}},"8":{"start":{"line":22,"column":8},"end":{"line":22,"column":56}},"9":{"start":{"line":25,"column":0},"end":{"line":25,"column":48}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":8,"column":4},"end":{"line":8,"column":5}},"loc":{"start":{"line":8,"column":32},"end":{"line":13,"column":5}},"line":8},"1":{"name":"(anonymous_1)","decl":{"start":{"line":14,"column":4},"end":{"line":14,"column":5}},"loc":{"start":{"line":14,"column":17},"end":{"line":17,"column":5}},"line":14},"2":{"name":"(anonymous_2)","decl":{"start":{"line":18,"column":4},"end":{"line":18,"column":5}},"loc":{"start":{"line":18,"column":14},"end":{"line":20,"column":5}},"line":18},"3":{"name":"(anonymous_3)","decl":{"start":{"line":21,"column":4},"end":{"line":21,"column":5}},"loc":{"start":{"line":21,"column":18},"end":{"line":23,"column":5}},"line":21}},"branchMap":{},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":0,"7":0,"8":0,"9":1},"f":{"0":1,"1":0,"2":0,"3":0},"b":{},"inputSourceMap":{"version":3,"file":"/development/breautek/storm/src/InvalidConfigError.ts","sources":["/development/breautek/storm/src/InvalidConfigError.ts"],"names":[],"mappings":";;;AAgBA,6CAAwC;AACxC,2CAAsC;AACtC,6CAAwC;AASxC,MAAa,kBAA4C,SAAQ,uBAA+C;IAC5G,YAAmB,MAAe,EAAE,MAA0B;QAC1D,KAAK,CAAC;YACF,MAAM;YACN,MAAM;SACT,CAAC,CAAC;IACP,CAAC;IAEM,UAAU;QACb,OAAO,4BAA4B;YAC3B,IAAI,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC;IAC5C,CAAC;IAEM,OAAO;QACV,OAAO,qBAAS,CAAC,mBAAmB,CAAC;IACzC,CAAC;IAEM,WAAW;QACd,OAAO,uBAAU,CAAC,gBAAgB,CAAC;IACvC,CAAC;CACJ;AApBD,gDAoBC","sourcesContent":["/*\n Copyright 2017-2021 Norman Breau\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\n\nimport {StormError} from './StormError';\nimport {ErrorCode} from './ErrorCode';\nimport {StatusCode} from './StatusCode';\nimport { IConfig } from './IConfig';\nimport { ErrorObject } from 'ajv';\n\ninterface IInvalidConfigErrorDetails<TConfig extends IConfig> {\n config: TConfig;\n errors: Array<ErrorObject>;\n}\n\nexport class InvalidConfigError<TConfig extends IConfig> extends StormError<IInvalidConfigErrorDetails<TConfig>> {\n public constructor(config: TConfig, errors: Array<ErrorObject>) {\n super({\n config,\n errors\n });\n }\n\n public getMessage(): string {\n return `Storm config has issues:\\n` +\n this.getPrivateDetails().errors;\n }\n\n public getCode(): ErrorCode {\n return ErrorCode.INVALID_CREDENTIALS;\n }\n\n public getHTTPCode(): StatusCode {\n return StatusCode.ERR_UNAUTHORIZED;\n }\n}\n"]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"8a981e9c6936925b03205b5efdf7129d5d5478d7","contentHash":"af629eeb94ec70c47420b96f6ae9a8d2130fabbef7a8b2b5dded030faf44bee4"}}