@signageos/lib 23.8.1 → 23.8.2-master.4405

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 (631) hide show
  1. package/dist/AMQP/CQRS/ICommand.d.ts +38 -0
  2. package/dist/AMQP/CQRS/ICommand.js +3 -0
  3. package/dist/AMQP/CQRS/ICommand.js.map +1 -0
  4. package/dist/AMQP/CQRS/ICommandError.d.ts +4 -0
  5. package/dist/AMQP/CQRS/ICommandError.js +3 -0
  6. package/dist/AMQP/CQRS/ICommandError.js.map +1 -0
  7. package/dist/AMQP/CQRS/commandQueue.d.ts +59 -0
  8. package/dist/AMQP/CQRS/commandQueue.js +313 -0
  9. package/dist/AMQP/CQRS/commandQueue.js.map +1 -0
  10. package/dist/AMQP/CQRS/commandResponseHelper.d.ts +3 -0
  11. package/dist/AMQP/CQRS/commandResponseHelper.js +8 -0
  12. package/dist/AMQP/CQRS/commandResponseHelper.js.map +1 -0
  13. package/dist/AMQP/CQRS/storedCommandQueue.d.ts +27 -0
  14. package/dist/AMQP/CQRS/storedCommandQueue.js +301 -0
  15. package/dist/AMQP/CQRS/storedCommandQueue.js.map +1 -0
  16. package/dist/AMQP/ChannelProvider.d.ts +37 -0
  17. package/dist/AMQP/ChannelProvider.js +886 -0
  18. package/dist/AMQP/ChannelProvider.js.map +1 -0
  19. package/dist/AMQP/DeviceActions/Bridge/deviceActionBridgeFactory.d.ts +39 -0
  20. package/dist/AMQP/DeviceActions/Bridge/deviceActionBridgeFactory.js +292 -0
  21. package/dist/AMQP/DeviceActions/Bridge/deviceActionBridgeFactory.js.map +1 -0
  22. package/dist/AMQP/DeviceActions/IDeviceAction.d.ts +4 -0
  23. package/dist/AMQP/DeviceActions/IDeviceAction.js +3 -0
  24. package/dist/AMQP/DeviceActions/IDeviceAction.js.map +1 -0
  25. package/dist/AMQP/DeviceActions/deviceActionsQueue.d.ts +83 -0
  26. package/dist/AMQP/DeviceActions/deviceActionsQueue.js +538 -0
  27. package/dist/AMQP/DeviceActions/deviceActionsQueue.js.map +1 -0
  28. package/dist/AMQP/EventSourcing/EventConsumer/AmqpEventConsumer.d.ts +47 -0
  29. package/dist/AMQP/EventSourcing/EventConsumer/AmqpEventConsumer.js +218 -0
  30. package/dist/AMQP/EventSourcing/EventConsumer/AmqpEventConsumer.js.map +1 -0
  31. package/dist/AMQP/EventSourcing/EventConsumer/IEventConsumer.d.ts +13 -0
  32. package/dist/AMQP/EventSourcing/EventConsumer/IEventConsumer.js +3 -0
  33. package/dist/AMQP/EventSourcing/EventConsumer/IEventConsumer.js.map +1 -0
  34. package/dist/AMQP/EventSourcing/EventConsumer/InMemoryEventConsumer.d.ts +15 -0
  35. package/dist/AMQP/EventSourcing/EventConsumer/InMemoryEventConsumer.js +76 -0
  36. package/dist/AMQP/EventSourcing/EventConsumer/InMemoryEventConsumer.js.map +1 -0
  37. package/dist/AMQP/EventSourcing/IEvent.d.ts +72 -0
  38. package/dist/AMQP/EventSourcing/IEvent.js +3 -0
  39. package/dist/AMQP/EventSourcing/IEvent.js.map +1 -0
  40. package/dist/AMQP/EventSourcing/Locked/deferredState.d.ts +21 -0
  41. package/dist/AMQP/EventSourcing/Locked/deferredState.js +72 -0
  42. package/dist/AMQP/EventSourcing/Locked/deferredState.js.map +1 -0
  43. package/dist/AMQP/EventSourcing/Locked/lockedEventConsumer.d.ts +63 -0
  44. package/dist/AMQP/EventSourcing/Locked/lockedEventConsumer.js +261 -0
  45. package/dist/AMQP/EventSourcing/Locked/lockedEventConsumer.js.map +1 -0
  46. package/dist/AMQP/EventSourcing/Locked/rejectedTimestamps.d.ts +24 -0
  47. package/dist/AMQP/EventSourcing/Locked/rejectedTimestamps.js +64 -0
  48. package/dist/AMQP/EventSourcing/Locked/rejectedTimestamps.js.map +1 -0
  49. package/dist/AMQP/EventSourcing/Locked/withLock.d.ts +42 -0
  50. package/dist/AMQP/EventSourcing/Locked/withLock.js +141 -0
  51. package/dist/AMQP/EventSourcing/Locked/withLock.js.map +1 -0
  52. package/dist/AMQP/EventSourcing/eventQueue.d.ts +87 -0
  53. package/dist/AMQP/EventSourcing/eventQueue.js +139 -0
  54. package/dist/AMQP/EventSourcing/eventQueue.js.map +1 -0
  55. package/dist/AMQP/EventSourcing/eventQueue.utils.d.ts +73 -0
  56. package/dist/AMQP/EventSourcing/eventQueue.utils.js +157 -0
  57. package/dist/AMQP/EventSourcing/eventQueue.utils.js.map +1 -0
  58. package/dist/AMQP/EventSourcing/eventQueueDetached.d.ts +49 -0
  59. package/dist/AMQP/EventSourcing/eventQueueDetached.js +428 -0
  60. package/dist/AMQP/EventSourcing/eventQueueDetached.js.map +1 -0
  61. package/dist/AMQP/EventSourcing/eventQueueDomain.d.ts +42 -0
  62. package/dist/AMQP/EventSourcing/eventQueueDomain.js +371 -0
  63. package/dist/AMQP/EventSourcing/eventQueueDomain.js.map +1 -0
  64. package/dist/AMQP/EventSourcing/eventQueuePublish.d.ts +19 -0
  65. package/dist/AMQP/EventSourcing/eventQueuePublish.js +209 -0
  66. package/dist/AMQP/EventSourcing/eventQueuePublish.js.map +1 -0
  67. package/dist/AMQP/EventSourcing/synchronization.d.ts +39 -0
  68. package/dist/AMQP/EventSourcing/synchronization.js +12 -0
  69. package/dist/AMQP/EventSourcing/synchronization.js.map +1 -0
  70. package/dist/AMQP/Exchange.d.ts +1 -0
  71. package/dist/AMQP/Exchange.js +3 -0
  72. package/dist/AMQP/Exchange.js.map +1 -0
  73. package/dist/AMQP/IAMQPPool.d.ts +5 -0
  74. package/dist/AMQP/IAMQPPool.js +3 -0
  75. package/dist/AMQP/IAMQPPool.js.map +1 -0
  76. package/dist/AMQP/IAsyncGotMessage.d.ts +15 -0
  77. package/dist/AMQP/IAsyncGotMessage.js +3 -0
  78. package/dist/AMQP/IAsyncGotMessage.js.map +1 -0
  79. package/dist/AMQP/IChannel.d.ts +43 -0
  80. package/dist/AMQP/IChannel.js +3 -0
  81. package/dist/AMQP/IChannel.js.map +1 -0
  82. package/dist/AMQP/IConsumeOptions.d.ts +106 -0
  83. package/dist/AMQP/IConsumeOptions.js +3 -0
  84. package/dist/AMQP/IConsumeOptions.js.map +1 -0
  85. package/dist/AMQP/IMessageOptions.d.ts +6 -0
  86. package/dist/AMQP/IMessageOptions.js +3 -0
  87. package/dist/AMQP/IMessageOptions.js.map +1 -0
  88. package/dist/AMQP/INackOptions.d.ts +4 -0
  89. package/dist/AMQP/INackOptions.js +3 -0
  90. package/dist/AMQP/INackOptions.js.map +1 -0
  91. package/dist/AMQP/IQueueOptions.d.ts +8 -0
  92. package/dist/AMQP/IQueueOptions.js +3 -0
  93. package/dist/AMQP/IQueueOptions.js.map +1 -0
  94. package/dist/AMQP/Logging/IDeviceLog.d.ts +15 -0
  95. package/dist/AMQP/Logging/IDeviceLog.js +10 -0
  96. package/dist/AMQP/Logging/IDeviceLog.js.map +1 -0
  97. package/dist/AMQP/Logging/logDeviceQueue.d.ts +12 -0
  98. package/dist/AMQP/Logging/logDeviceQueue.js +107 -0
  99. package/dist/AMQP/Logging/logDeviceQueue.js.map +1 -0
  100. package/dist/AMQP/QueueFetcher.d.ts +13 -0
  101. package/dist/AMQP/QueueFetcher.js +166 -0
  102. package/dist/AMQP/QueueFetcher.js.map +1 -0
  103. package/dist/AMQP/QueuePublisher.d.ts +7 -0
  104. package/dist/AMQP/QueuePublisher.js +135 -0
  105. package/dist/AMQP/QueuePublisher.js.map +1 -0
  106. package/dist/AMQP/QueueRepeatableSubscription.d.ts +14 -0
  107. package/dist/AMQP/QueueRepeatableSubscription.js +162 -0
  108. package/dist/AMQP/QueueRepeatableSubscription.js.map +1 -0
  109. package/dist/AMQP/QueueSubscriber.d.ts +11 -0
  110. package/dist/AMQP/QueueSubscriber.js +163 -0
  111. package/dist/AMQP/QueueSubscriber.js.map +1 -0
  112. package/dist/AMQP/ResponseProvider.d.ts +20 -0
  113. package/dist/AMQP/ResponseProvider.js +193 -0
  114. package/dist/AMQP/ResponseProvider.js.map +1 -0
  115. package/dist/AMQP/Static/filesQueue.d.ts +12 -0
  116. package/dist/AMQP/Static/filesQueue.js +220 -0
  117. package/dist/AMQP/Static/filesQueue.js.map +1 -0
  118. package/dist/AMQP/amqpConnectionFactory.d.ts +27 -0
  119. package/dist/AMQP/amqpConnectionFactory.js +236 -0
  120. package/dist/AMQP/amqpConnectionFactory.js.map +1 -0
  121. package/dist/AMQP/amqpErrors.d.ts +5 -0
  122. package/dist/AMQP/amqpErrors.js +30 -0
  123. package/dist/AMQP/amqpErrors.js.map +1 -0
  124. package/dist/AMQP/errors.d.ts +3 -0
  125. package/dist/AMQP/errors.js +30 -0
  126. package/dist/AMQP/errors.js.map +1 -0
  127. package/dist/AMQP/fetchNextMessage.d.ts +14 -0
  128. package/dist/AMQP/fetchNextMessage.js +118 -0
  129. package/dist/AMQP/fetchNextMessage.js.map +1 -0
  130. package/dist/AMQP/queueConfigurator.d.ts +5 -0
  131. package/dist/AMQP/queueConfigurator.js +78 -0
  132. package/dist/AMQP/queueConfigurator.js.map +1 -0
  133. package/dist/AWS/S3.d.ts +95 -0
  134. package/dist/AWS/S3.js +448 -0
  135. package/dist/AWS/S3.js.map +1 -0
  136. package/dist/AWS/S3Types.d.ts +113 -0
  137. package/dist/AWS/S3Types.js +3 -0
  138. package/dist/AWS/S3Types.js.map +1 -0
  139. package/dist/AWS/config.d.ts +2 -0
  140. package/dist/AWS/config.js +23 -0
  141. package/dist/AWS/config.js.map +1 -0
  142. package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.d.ts +30 -0
  143. package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.js +81 -0
  144. package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.js.map +1 -0
  145. package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.utils.d.ts +5 -0
  146. package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.utils.js +33 -0
  147. package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.utils.js.map +1 -0
  148. package/dist/Auth0/ManagementClient/Auth0ManagementClient.d.ts +41 -0
  149. package/dist/Auth0/ManagementClient/Auth0ManagementClient.js +137 -0
  150. package/dist/Auth0/ManagementClient/Auth0ManagementClient.js.map +1 -0
  151. package/dist/Auth0/ManagementClient/auth0ManagementClient.utils.d.ts +8 -0
  152. package/dist/Auth0/ManagementClient/auth0ManagementClient.utils.js +37 -0
  153. package/dist/Auth0/ManagementClient/auth0ManagementClient.utils.js.map +1 -0
  154. package/dist/Auth0/UserInfoClient/Auth0UserInfoClient.d.ts +14 -0
  155. package/dist/Auth0/UserInfoClient/Auth0UserInfoClient.js +58 -0
  156. package/dist/Auth0/UserInfoClient/Auth0UserInfoClient.js.map +1 -0
  157. package/dist/Auth0/auth0.types.d.ts +4 -0
  158. package/dist/Auth0/auth0.types.js +10 -0
  159. package/dist/Auth0/auth0.types.js.map +1 -0
  160. package/dist/Cache/lruCache.d.ts +22 -0
  161. package/dist/Cache/lruCache.js +42 -0
  162. package/dist/Cache/lruCache.js.map +1 -0
  163. package/dist/Cache/memoryCache.d.ts +7 -0
  164. package/dist/Cache/memoryCache.js +80 -0
  165. package/dist/Cache/memoryCache.js.map +1 -0
  166. package/dist/Config/config.d.ts +81 -0
  167. package/dist/Config/config.js +119 -0
  168. package/dist/Config/config.js.map +1 -0
  169. package/dist/Config/environment.d.ts +8 -0
  170. package/dist/Config/environment.js +13 -0
  171. package/dist/Config/environment.js.map +1 -0
  172. package/dist/Config/validation.d.ts +61 -0
  173. package/dist/Config/validation.js +56 -0
  174. package/dist/Config/validation.js.map +1 -0
  175. package/dist/DateTime/dateMonkeyPatch.d.ts +15 -0
  176. package/dist/DateTime/dateMonkeyPatch.js +149 -0
  177. package/dist/DateTime/dateMonkeyPatch.js.map +1 -0
  178. package/dist/DateTime/dateTimeFactory.d.ts +4 -0
  179. package/dist/DateTime/dateTimeFactory.js +22 -0
  180. package/dist/DateTime/dateTimeFactory.js.map +1 -0
  181. package/dist/DateTime/millisecondConstants.d.ts +7 -0
  182. package/dist/DateTime/millisecondConstants.js +11 -0
  183. package/dist/DateTime/millisecondConstants.js.map +1 -0
  184. package/dist/DateTime/posixTimezone.d.ts +1 -0
  185. package/dist/DateTime/posixTimezone.js +54 -0
  186. package/dist/DateTime/posixTimezone.js.map +1 -0
  187. package/dist/DateTime/statistics.d.ts +6 -0
  188. package/dist/DateTime/statistics.js +30 -0
  189. package/dist/DateTime/statistics.js.map +1 -0
  190. package/dist/DateTime/timeConverter.d.ts +1 -0
  191. package/dist/DateTime/timeConverter.js +11 -0
  192. package/dist/DateTime/timeConverter.js.map +1 -0
  193. package/dist/DateTime/timer.d.ts +10 -0
  194. package/dist/DateTime/timer.js +18 -0
  195. package/dist/DateTime/timer.js.map +1 -0
  196. package/dist/DateTime/timestamp.d.ts +2 -0
  197. package/dist/DateTime/timestamp.js +16 -0
  198. package/dist/DateTime/timestamp.js.map +1 -0
  199. package/dist/DateTime/waitUntil.d.ts +20 -0
  200. package/dist/DateTime/waitUntil.js +148 -0
  201. package/dist/DateTime/waitUntil.js.map +1 -0
  202. package/dist/Debug/debugClassDecorator.d.ts +13 -0
  203. package/dist/Debug/debugClassDecorator.js +63 -0
  204. package/dist/Debug/debugClassDecorator.js.map +1 -0
  205. package/dist/Debug/debugDecorator.d.ts +24 -0
  206. package/dist/Debug/debugDecorator.js +107 -0
  207. package/dist/Debug/debugDecorator.js.map +1 -0
  208. package/dist/Encryption/passwordEncryption.d.ts +4 -0
  209. package/dist/Encryption/passwordEncryption.js +29 -0
  210. package/dist/Encryption/passwordEncryption.js.map +1 -0
  211. package/dist/Encryption/tokenEncryption.d.ts +14 -0
  212. package/dist/Encryption/tokenEncryption.js +32 -0
  213. package/dist/Encryption/tokenEncryption.js.map +1 -0
  214. package/dist/Events/AsyncEventEmitter.d.ts +31 -0
  215. package/dist/Events/AsyncEventEmitter.js +125 -0
  216. package/dist/Events/AsyncEventEmitter.js.map +1 -0
  217. package/dist/Events/eventsHelpers.d.ts +3 -0
  218. package/dist/Events/eventsHelpers.js +24 -0
  219. package/dist/Events/eventsHelpers.js.map +1 -0
  220. package/dist/Events/genericGracefulExit.d.ts +11 -0
  221. package/dist/Events/genericGracefulExit.js +90 -0
  222. package/dist/Events/genericGracefulExit.js.map +1 -0
  223. package/dist/FileSystem/moduleDiscoverer.d.ts +7 -0
  224. package/dist/FileSystem/moduleDiscoverer.js +88 -0
  225. package/dist/FileSystem/moduleDiscoverer.js.map +1 -0
  226. package/dist/FileSystem/tmpDir.d.ts +9 -0
  227. package/dist/FileSystem/tmpDir.js +64 -0
  228. package/dist/FileSystem/tmpDir.js.map +1 -0
  229. package/dist/Functional/compose.d.ts +22 -0
  230. package/dist/Functional/compose.js +44 -0
  231. package/dist/Functional/compose.js.map +1 -0
  232. package/dist/GenericPool/options.d.ts +63 -0
  233. package/dist/GenericPool/options.js +3 -0
  234. package/dist/GenericPool/options.js.map +1 -0
  235. package/dist/Hash/checksum.d.ts +5 -0
  236. package/dist/Hash/checksum.js +20 -0
  237. package/dist/Hash/checksum.js.map +1 -0
  238. package/dist/Hash/checksumFile.d.ts +4 -0
  239. package/dist/Hash/checksumFile.js +82 -0
  240. package/dist/Hash/checksumFile.js.map +1 -0
  241. package/dist/Hash/generator.d.ts +2 -0
  242. package/dist/Hash/generator.js +15 -0
  243. package/dist/Hash/generator.js.map +1 -0
  244. package/dist/Http/download.d.ts +1 -0
  245. package/dist/Http/download.js +91 -0
  246. package/dist/Http/download.js.map +1 -0
  247. package/dist/HttpStatus/checks/amqpStatusCheck.d.ts +3 -0
  248. package/dist/HttpStatus/checks/amqpStatusCheck.js +98 -0
  249. package/dist/HttpStatus/checks/amqpStatusCheck.js.map +1 -0
  250. package/dist/HttpStatus/checks/mongoDBStatusCheck.d.ts +3 -0
  251. package/dist/HttpStatus/checks/mongoDBStatusCheck.js +60 -0
  252. package/dist/HttpStatus/checks/mongoDBStatusCheck.js.map +1 -0
  253. package/dist/HttpStatus/checks/redisStatusCheck.d.ts +3 -0
  254. package/dist/HttpStatus/checks/redisStatusCheck.js +94 -0
  255. package/dist/HttpStatus/checks/redisStatusCheck.js.map +1 -0
  256. package/dist/HttpStatus/createHttpStatusMiddleware.d.ts +9 -0
  257. package/dist/HttpStatus/createHttpStatusMiddleware.js +109 -0
  258. package/dist/HttpStatus/createHttpStatusMiddleware.js.map +1 -0
  259. package/dist/HttpStatus/enrichHttpServerWithStatus.d.ts +15 -0
  260. package/dist/HttpStatus/enrichHttpServerWithStatus.js +114 -0
  261. package/dist/HttpStatus/enrichHttpServerWithStatus.js.map +1 -0
  262. package/dist/HttpStatus/sendStatusResponse.d.ts +5 -0
  263. package/dist/HttpStatus/sendStatusResponse.js +71 -0
  264. package/dist/HttpStatus/sendStatusResponse.js.map +1 -0
  265. package/dist/HttpStatus/status.d.ts +19 -0
  266. package/dist/HttpStatus/status.js +132 -0
  267. package/dist/HttpStatus/status.js.map +1 -0
  268. package/dist/HttpStatus/statuses/amqpStatus.d.ts +3 -0
  269. package/dist/HttpStatus/statuses/amqpStatus.js +35 -0
  270. package/dist/HttpStatus/statuses/amqpStatus.js.map +1 -0
  271. package/dist/HttpStatus/statuses/mongoStatus.d.ts +3 -0
  272. package/dist/HttpStatus/statuses/mongoStatus.js +35 -0
  273. package/dist/HttpStatus/statuses/mongoStatus.js.map +1 -0
  274. package/dist/HttpStatus/statuses/redisStatus.d.ts +3 -0
  275. package/dist/HttpStatus/statuses/redisStatus.js +35 -0
  276. package/dist/HttpStatus/statuses/redisStatus.js.map +1 -0
  277. package/dist/InfluxDB/IInfluxDB.d.ts +5 -0
  278. package/dist/InfluxDB/IInfluxDB.js +3 -0
  279. package/dist/InfluxDB/IInfluxDB.js.map +1 -0
  280. package/dist/InfluxDB/influxDBConnectionFactory.d.ts +9 -0
  281. package/dist/InfluxDB/influxDBConnectionFactory.js +83 -0
  282. package/dist/InfluxDB/influxDBConnectionFactory.js.map +1 -0
  283. package/dist/JSON/jsonHelper.d.ts +4 -0
  284. package/dist/JSON/jsonHelper.js +21 -0
  285. package/dist/JSON/jsonHelper.js.map +1 -0
  286. package/dist/Lib/Redis/connection.utils.d.ts +22 -0
  287. package/dist/Lib/Redis/connection.utils.js +95 -0
  288. package/dist/Lib/Redis/connection.utils.js.map +1 -0
  289. package/dist/Lib/String/string.d.ts +1 -0
  290. package/dist/Lib/String/string.js +6 -0
  291. package/dist/Lib/String/string.js.map +1 -0
  292. package/dist/Lock/lockedDecorator.d.ts +12 -0
  293. package/dist/Lock/lockedDecorator.js +150 -0
  294. package/dist/Lock/lockedDecorator.js.map +1 -0
  295. package/dist/Logging/console.d.ts +8 -0
  296. package/dist/Logging/console.js +50 -0
  297. package/dist/Logging/console.js.map +1 -0
  298. package/dist/Logging/debug.d.ts +10 -0
  299. package/dist/Logging/debug.js +61 -0
  300. package/dist/Logging/debug.js.map +1 -0
  301. package/dist/Logging/format.d.ts +10 -0
  302. package/dist/Logging/format.js +79 -0
  303. package/dist/Logging/format.js.map +1 -0
  304. package/dist/Logging/logger.d.ts +53 -0
  305. package/dist/Logging/logger.js +63 -0
  306. package/dist/Logging/logger.js.map +1 -0
  307. package/dist/Logging/logging.d.ts +12 -0
  308. package/dist/Logging/logging.js +113 -0
  309. package/dist/Logging/logging.js.map +1 -0
  310. package/dist/Metrics/MetricsClient.d.ts +46 -0
  311. package/dist/Metrics/MetricsClient.js +101 -0
  312. package/dist/Metrics/MetricsClient.js.map +1 -0
  313. package/dist/Metrics/deviceConsumerMetrics.d.ts +6 -0
  314. package/dist/Metrics/deviceConsumerMetrics.js +59 -0
  315. package/dist/Metrics/deviceConsumerMetrics.js.map +1 -0
  316. package/dist/Metrics/eventConsumerMetrics.d.ts +19 -0
  317. package/dist/Metrics/eventConsumerMetrics.js +52 -0
  318. package/dist/Metrics/eventConsumerMetrics.js.map +1 -0
  319. package/dist/Metrics/eventQueueMetrics.d.ts +7 -0
  320. package/dist/Metrics/eventQueueMetrics.js +19 -0
  321. package/dist/Metrics/eventQueueMetrics.js.map +1 -0
  322. package/dist/Metrics/logMetrics.d.ts +4 -0
  323. package/dist/Metrics/logMetrics.js +20 -0
  324. package/dist/Metrics/logMetrics.js.map +1 -0
  325. package/dist/Metrics/metrics.d.ts +84 -0
  326. package/dist/Metrics/metrics.js +255 -0
  327. package/dist/Metrics/metrics.js.map +1 -0
  328. package/dist/Metrics/mongoDBMetrics.d.ts +35 -0
  329. package/dist/Metrics/mongoDBMetrics.js +162 -0
  330. package/dist/Metrics/mongoDBMetrics.js.map +1 -0
  331. package/dist/Metrics/processSocketsMetrics.d.ts +10 -0
  332. package/dist/Metrics/processSocketsMetrics.js +92 -0
  333. package/dist/Metrics/processSocketsMetrics.js.map +1 -0
  334. package/dist/Metrics/redisMetrics.d.ts +13 -0
  335. package/dist/Metrics/redisMetrics.js +60 -0
  336. package/dist/Metrics/redisMetrics.js.map +1 -0
  337. package/dist/MongoDB/MongoDBConnection.d.ts +19 -0
  338. package/dist/MongoDB/MongoDBConnection.js +185 -0
  339. package/dist/MongoDB/MongoDBConnection.js.map +1 -0
  340. package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/dynamicPriority.d.ts +2 -0
  341. package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/dynamicPriority.js +106 -0
  342. package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/dynamicPriority.js.map +1 -0
  343. package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/lowReadLatency.d.ts +2 -0
  344. package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/lowReadLatency.js +94 -0
  345. package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/lowReadLatency.js.map +1 -0
  346. package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/ordinary.d.ts +2 -0
  347. package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/ordinary.js +80 -0
  348. package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/ordinary.js.map +1 -0
  349. package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/random.d.ts +2 -0
  350. package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/random.js +51 -0
  351. package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/random.js.map +1 -0
  352. package/dist/MongoDB/ProprietaryCluster/helper.d.ts +13 -0
  353. package/dist/MongoDB/ProprietaryCluster/helper.js +147 -0
  354. package/dist/MongoDB/ProprietaryCluster/helper.js.map +1 -0
  355. package/dist/MongoDB/cursorIterator.d.ts +5 -0
  356. package/dist/MongoDB/cursorIterator.js +63 -0
  357. package/dist/MongoDB/cursorIterator.js.map +1 -0
  358. package/dist/MongoDB/escape.d.ts +4 -0
  359. package/dist/MongoDB/escape.js +54 -0
  360. package/dist/MongoDB/escape.js.map +1 -0
  361. package/dist/MongoDB/mongoDBConnectionFactory.d.ts +13 -0
  362. package/dist/MongoDB/mongoDBConnectionFactory.js +11 -0
  363. package/dist/MongoDB/mongoDBConnectionFactory.js.map +1 -0
  364. package/dist/MongoDB/proprietaryCluster.d.ts +1 -0
  365. package/dist/MongoDB/proprietaryCluster.js +76 -0
  366. package/dist/MongoDB/proprietaryCluster.js.map +1 -0
  367. package/dist/Npm/INpmClient.d.ts +25 -0
  368. package/dist/Npm/INpmClient.js +3 -0
  369. package/dist/Npm/INpmClient.js.map +1 -0
  370. package/dist/Npm/MockNpmClient.d.ts +17 -0
  371. package/dist/Npm/MockNpmClient.js +124 -0
  372. package/dist/Npm/MockNpmClient.js.map +1 -0
  373. package/dist/Npm/NpmClient.d.ts +14 -0
  374. package/dist/Npm/NpmClient.js +212 -0
  375. package/dist/Npm/NpmClient.js.map +1 -0
  376. package/dist/Npm/NpmCredentialsProvider.d.ts +18 -0
  377. package/dist/Npm/NpmCredentialsProvider.js +111 -0
  378. package/dist/Npm/NpmCredentialsProvider.js.map +1 -0
  379. package/dist/Observable/helpers.d.ts +3 -0
  380. package/dist/Observable/helpers.js +117 -0
  381. package/dist/Observable/helpers.js.map +1 -0
  382. package/dist/Parsers/parsers.d.ts +1 -0
  383. package/dist/Parsers/parsers.js +17 -0
  384. package/dist/Parsers/parsers.js.map +1 -0
  385. package/dist/Path/detector.d.ts +9 -0
  386. package/dist/Path/detector.js +78 -0
  387. package/dist/Path/detector.js.map +1 -0
  388. package/dist/Pool/IBasePool.d.ts +6 -0
  389. package/dist/Pool/IBasePool.js +3 -0
  390. package/dist/Pool/IBasePool.js.map +1 -0
  391. package/dist/Promise/cancelable.d.ts +4 -0
  392. package/dist/Promise/cancelable.js +21 -0
  393. package/dist/Promise/cancelable.js.map +1 -0
  394. package/dist/Promise/deferred.d.ts +4 -0
  395. package/dist/Promise/deferred.js +21 -0
  396. package/dist/Promise/deferred.js.map +1 -0
  397. package/dist/Promise/deferredStream.d.ts +4 -0
  398. package/dist/Promise/deferredStream.js +21 -0
  399. package/dist/Promise/deferredStream.js.map +1 -0
  400. package/dist/Promise/lock.d.ts +4 -0
  401. package/dist/Promise/lock.js +21 -0
  402. package/dist/Promise/lock.js.map +1 -0
  403. package/dist/Promise/timeoutable.d.ts +4 -0
  404. package/dist/Promise/timeoutable.js +21 -0
  405. package/dist/Promise/timeoutable.js.map +1 -0
  406. package/dist/Redis/DeviceActions/PostponedAction.d.ts +4 -0
  407. package/dist/Redis/DeviceActions/PostponedAction.js +3 -0
  408. package/dist/Redis/DeviceActions/PostponedAction.js.map +1 -0
  409. package/dist/Redis/DeviceActions/postponedDeviceActions.d.ts +8 -0
  410. package/dist/Redis/DeviceActions/postponedDeviceActions.js +333 -0
  411. package/dist/Redis/DeviceActions/postponedDeviceActions.js.map +1 -0
  412. package/dist/Redis/redisConnectionFactory.d.ts +41 -0
  413. package/dist/Redis/redisConnectionFactory.js +158 -0
  414. package/dist/Redis/redisConnectionFactory.js.map +1 -0
  415. package/dist/Redis/redisLock.d.ts +11 -0
  416. package/dist/Redis/redisLock.js +213 -0
  417. package/dist/Redis/redisLock.js.map +1 -0
  418. package/dist/Retry/retry.d.ts +28 -0
  419. package/dist/Retry/retry.js +154 -0
  420. package/dist/Retry/retry.js.map +1 -0
  421. package/dist/Rsync/copier.d.ts +1 -0
  422. package/dist/Rsync/copier.js +123 -0
  423. package/dist/Rsync/copier.js.map +1 -0
  424. package/dist/SemVer/SemVerLevel.d.ts +6 -0
  425. package/dist/SemVer/SemVerLevel.js +10 -0
  426. package/dist/SemVer/SemVerLevel.js.map +1 -0
  427. package/dist/SemVer/semVerConstants.d.ts +2 -0
  428. package/dist/SemVer/semVerConstants.js +9 -0
  429. package/dist/SemVer/semVerConstants.js.map +1 -0
  430. package/dist/SemVer/semVerHelper.d.ts +7 -0
  431. package/dist/SemVer/semVerHelper.js +82 -0
  432. package/dist/SemVer/semVerHelper.js.map +1 -0
  433. package/dist/Service/HTTP/express/app.d.ts +33 -0
  434. package/dist/Service/HTTP/express/app.js +82 -0
  435. package/dist/Service/HTTP/express/app.js.map +1 -0
  436. package/dist/Service/HTTP/express/expressFactory.d.ts +4 -0
  437. package/dist/Service/HTTP/express/expressFactory.js +22 -0
  438. package/dist/Service/HTTP/express/expressFactory.js.map +1 -0
  439. package/dist/Service/HTTP/express/monitoring.d.ts +8 -0
  440. package/dist/Service/HTTP/express/monitoring.js +25 -0
  441. package/dist/Service/HTTP/express/monitoring.js.map +1 -0
  442. package/dist/Service/HTTP/httpServerFactory.d.ts +54 -0
  443. package/dist/Service/HTTP/httpServerFactory.js +104 -0
  444. package/dist/Service/HTTP/httpServerFactory.js.map +1 -0
  445. package/dist/Service/HTTP/middleware/accessLogMiddleware.d.ts +20 -0
  446. package/dist/Service/HTTP/middleware/accessLogMiddleware.js +90 -0
  447. package/dist/Service/HTTP/middleware/accessLogMiddleware.js.map +1 -0
  448. package/dist/Service/HTTP/middleware/headersMiddleware.d.ts +2 -0
  449. package/dist/Service/HTTP/middleware/headersMiddleware.js +18 -0
  450. package/dist/Service/HTTP/middleware/headersMiddleware.js.map +1 -0
  451. package/dist/Service/HTTP/routes/app/indexPage.d.ts +7 -0
  452. package/dist/Service/HTTP/routes/app/indexPage.js +12 -0
  453. package/dist/Service/HTTP/routes/app/indexPage.js.map +1 -0
  454. package/dist/Service/HTTP/routes/app/router.d.ts +14 -0
  455. package/dist/Service/HTTP/routes/app/router.js +12 -0
  456. package/dist/Service/HTTP/routes/app/router.js.map +1 -0
  457. package/dist/Service/HTTP/routes/app/status.d.ts +13 -0
  458. package/dist/Service/HTTP/routes/app/status.js +44 -0
  459. package/dist/Service/HTTP/routes/app/status.js.map +1 -0
  460. package/dist/Service/HTTP/routes/monitoring/aliveness.d.ts +20 -0
  461. package/dist/Service/HTTP/routes/monitoring/aliveness.js +75 -0
  462. package/dist/Service/HTTP/routes/monitoring/aliveness.js.map +1 -0
  463. package/dist/Service/HTTP/routes/monitoring/metrics.d.ts +9 -0
  464. package/dist/Service/HTTP/routes/monitoring/metrics.js +59 -0
  465. package/dist/Service/HTTP/routes/monitoring/metrics.js.map +1 -0
  466. package/dist/Service/HTTP/routes/monitoring/readniness.d.ts +18 -0
  467. package/dist/Service/HTTP/routes/monitoring/readniness.js +80 -0
  468. package/dist/Service/HTTP/routes/monitoring/readniness.js.map +1 -0
  469. package/dist/Service/HTTP/routes/monitoring/router.d.ts +10 -0
  470. package/dist/Service/HTTP/routes/monitoring/router.js +12 -0
  471. package/dist/Service/HTTP/routes/monitoring/router.js.map +1 -0
  472. package/dist/Service/HTTP/server/serverFactory.d.ts +10 -0
  473. package/dist/Service/HTTP/server/serverFactory.js +133 -0
  474. package/dist/Service/HTTP/server/serverFactory.js.map +1 -0
  475. package/dist/Service/Service.d.ts +17 -0
  476. package/dist/Service/Service.js +97 -0
  477. package/dist/Service/Service.js.map +1 -0
  478. package/dist/Service/dbConnections.d.ts +8 -0
  479. package/dist/Service/dbConnections.js +3 -0
  480. package/dist/Service/dbConnections.js.map +1 -0
  481. package/dist/Service/metrics/connections.d.ts +3 -0
  482. package/dist/Service/metrics/connections.js +47 -0
  483. package/dist/Service/metrics/connections.js.map +1 -0
  484. package/dist/Service/metrics/mongodb.d.ts +2 -0
  485. package/dist/Service/metrics/mongodb.js +13 -0
  486. package/dist/Service/metrics/mongodb.js.map +1 -0
  487. package/dist/Service/metrics/redis.d.ts +2 -0
  488. package/dist/Service/metrics/redis.js +11 -0
  489. package/dist/Service/metrics/redis.js.map +1 -0
  490. package/dist/Service/process.d.ts +11 -0
  491. package/dist/Service/process.js +88 -0
  492. package/dist/Service/process.js.map +1 -0
  493. package/dist/Service/serviceFactory.d.ts +115 -0
  494. package/dist/Service/serviceFactory.js +118 -0
  495. package/dist/Service/serviceFactory.js.map +1 -0
  496. package/dist/Service/types.d.ts +55 -0
  497. package/dist/Service/types.js +3 -0
  498. package/dist/Service/types.js.map +1 -0
  499. package/dist/Storage/IArrayStorage.d.ts +7 -0
  500. package/dist/Storage/IArrayStorage.js +3 -0
  501. package/dist/Storage/IArrayStorage.js.map +1 -0
  502. package/dist/Storage/MemoryArrayStorage.d.ts +9 -0
  503. package/dist/Storage/MemoryArrayStorage.js +22 -0
  504. package/dist/Storage/MemoryArrayStorage.js.map +1 -0
  505. package/dist/String/pad.d.ts +1 -0
  506. package/dist/String/pad.js +7 -0
  507. package/dist/String/pad.js.map +1 -0
  508. package/dist/String/string.d.ts +3 -0
  509. package/dist/String/string.js +17 -0
  510. package/dist/String/string.js.map +1 -0
  511. package/dist/String/webalize.d.ts +1 -0
  512. package/dist/String/webalize.js +15 -0
  513. package/dist/String/webalize.js.map +1 -0
  514. package/dist/String/word.d.ts +32 -0
  515. package/dist/String/word.js +97 -0
  516. package/dist/String/word.js.map +1 -0
  517. package/dist/System/signalSender.d.ts +1 -0
  518. package/dist/System/signalSender.js +7 -0
  519. package/dist/System/signalSender.js.map +1 -0
  520. package/dist/ThirdParty/connection.d.ts +28 -0
  521. package/dist/ThirdParty/connection.js +9 -0
  522. package/dist/ThirdParty/connection.js.map +1 -0
  523. package/dist/Timer/Power/PowerTimerSettings.d.ts +29 -0
  524. package/dist/Timer/Power/PowerTimerSettings.js +3 -0
  525. package/dist/Timer/Power/PowerTimerSettings.js.map +1 -0
  526. package/dist/Timer/Power/PowerTimerType.d.ts +2 -0
  527. package/dist/Timer/Power/PowerTimerType.js +3 -0
  528. package/dist/Timer/Power/PowerTimerType.js.map +1 -0
  529. package/dist/Timer/Power/PowerTimerWeekday.d.ts +18 -0
  530. package/dist/Timer/Power/PowerTimerWeekday.js +18 -0
  531. package/dist/Timer/Power/PowerTimerWeekday.js.map +1 -0
  532. package/dist/Timer/Power/PowerTimerWeekdayEnum.d.ts +28 -0
  533. package/dist/Timer/Power/PowerTimerWeekdayEnum.js +32 -0
  534. package/dist/Timer/Power/PowerTimerWeekdayEnum.js.map +1 -0
  535. package/dist/Timer/Power/TimerEventWeekdayNumber.d.ts +9 -0
  536. package/dist/Timer/Power/TimerEventWeekdayNumber.js +14 -0
  537. package/dist/Timer/Power/TimerEventWeekdayNumber.js.map +1 -0
  538. package/dist/Timer/Power/powerTimerComputer.d.ts +36 -0
  539. package/dist/Timer/Power/powerTimerComputer.js +141 -0
  540. package/dist/Timer/Power/powerTimerComputer.js.map +1 -0
  541. package/dist/Timer/convertWeekday.d.ts +25 -0
  542. package/dist/Timer/convertWeekday.js +211 -0
  543. package/dist/Timer/convertWeekday.js.map +1 -0
  544. package/dist/Timer/converters.d.ts +44 -0
  545. package/dist/Timer/converters.js +72 -0
  546. package/dist/Timer/converters.js.map +1 -0
  547. package/dist/Timer/increasingInterval.d.ts +2 -0
  548. package/dist/Timer/increasingInterval.js +108 -0
  549. package/dist/Timer/increasingInterval.js.map +1 -0
  550. package/dist/Timer/nonConcurrentInterval.d.ts +4 -0
  551. package/dist/Timer/nonConcurrentInterval.js +73 -0
  552. package/dist/Timer/nonConcurrentInterval.js.map +1 -0
  553. package/dist/Timer/progressiveWait.d.ts +40 -0
  554. package/dist/Timer/progressiveWait.js +96 -0
  555. package/dist/Timer/progressiveWait.js.map +1 -0
  556. package/dist/Timer/timeout.d.ts +4 -0
  557. package/dist/Timer/timeout.js +21 -0
  558. package/dist/Timer/timeout.js.map +1 -0
  559. package/dist/Timer/wait.d.ts +5 -0
  560. package/dist/Timer/wait.js +27 -0
  561. package/dist/Timer/wait.js.map +1 -0
  562. package/dist/TypeScript/asyncIterator.d.ts +1 -0
  563. package/dist/TypeScript/asyncIterator.js +76 -0
  564. package/dist/TypeScript/asyncIterator.js.map +1 -0
  565. package/dist/TypeScript/expect.d.ts +6 -0
  566. package/dist/TypeScript/expect.js +12 -0
  567. package/dist/TypeScript/expect.js.map +1 -0
  568. package/dist/TypeScript/generator.d.ts +1 -0
  569. package/dist/TypeScript/generator.js +20 -0
  570. package/dist/TypeScript/generator.js.map +1 -0
  571. package/dist/TypeScript/object.d.ts +12 -0
  572. package/dist/TypeScript/object.js +3 -0
  573. package/dist/TypeScript/object.js.map +1 -0
  574. package/dist/TypeScript/observable-polyfill.d.ts +1 -0
  575. package/dist/TypeScript/observable-polyfill.js +33 -0
  576. package/dist/TypeScript/observable-polyfill.js.map +1 -0
  577. package/dist/Utils/array.d.ts +2 -0
  578. package/dist/Utils/array.js +23 -0
  579. package/dist/Utils/array.js.map +1 -0
  580. package/dist/Utils/enum.d.ts +24 -0
  581. package/dist/Utils/enum.js +35 -0
  582. package/dist/Utils/enum.js.map +1 -0
  583. package/dist/Utils/file.d.ts +1 -0
  584. package/dist/Utils/file.js +55 -0
  585. package/dist/Utils/file.js.map +1 -0
  586. package/dist/Utils/http.d.ts +23 -0
  587. package/dist/Utils/http.js +68 -0
  588. package/dist/Utils/http.js.map +1 -0
  589. package/dist/Utils/object.d.ts +22 -0
  590. package/dist/Utils/object.js +112 -0
  591. package/dist/Utils/object.js.map +1 -0
  592. package/dist/Utils/sorting.d.ts +1 -0
  593. package/dist/Utils/sorting.js +33 -0
  594. package/dist/Utils/sorting.js.map +1 -0
  595. package/dist/WebSocket/Client/ISocket.d.ts +55 -0
  596. package/dist/WebSocket/Client/ISocket.js +46 -0
  597. package/dist/WebSocket/Client/ISocket.js.map +1 -0
  598. package/dist/WebSocket/Client/SocketIO/createSocketIOSocket.d.ts +8 -0
  599. package/dist/WebSocket/Client/SocketIO/createSocketIOSocket.js +81 -0
  600. package/dist/WebSocket/Client/SocketIO/createSocketIOSocket.js.map +1 -0
  601. package/dist/WebSocket/Client/WS/AutoReconnectingWSSocket.d.ts +25 -0
  602. package/dist/WebSocket/Client/WS/AutoReconnectingWSSocket.js +174 -0
  603. package/dist/WebSocket/Client/WS/AutoReconnectingWSSocket.js.map +1 -0
  604. package/dist/WebSocket/Client/WS/createWSSocket.d.ts +8 -0
  605. package/dist/WebSocket/Client/WS/createWSSocket.js +155 -0
  606. package/dist/WebSocket/Client/WS/createWSSocket.js.map +1 -0
  607. package/dist/WebSocket/autoWsServerFactory.d.ts +4 -0
  608. package/dist/WebSocket/autoWsServerFactory.js +334 -0
  609. package/dist/WebSocket/autoWsServerFactory.js.map +1 -0
  610. package/dist/WebSocket/perMessageDeflate.d.ts +14 -0
  611. package/dist/WebSocket/perMessageDeflate.js +3 -0
  612. package/dist/WebSocket/perMessageDeflate.js.map +1 -0
  613. package/dist/WebSocket/socketIOServerFactory.d.ts +6 -0
  614. package/dist/WebSocket/socketIOServerFactory.js +124 -0
  615. package/dist/WebSocket/socketIOServerFactory.js.map +1 -0
  616. package/dist/WebSocket/socketServer.d.ts +30 -0
  617. package/dist/WebSocket/socketServer.js +3 -0
  618. package/dist/WebSocket/socketServer.js.map +1 -0
  619. package/dist/WebSocket/wsServerFactory.d.ts +8 -0
  620. package/dist/WebSocket/wsServerFactory.js +272 -0
  621. package/dist/WebSocket/wsServerFactory.js.map +1 -0
  622. package/dist/Webpack/NpmPackPlugin.d.ts +14 -0
  623. package/dist/Webpack/NpmPackPlugin.js +90 -0
  624. package/dist/Webpack/NpmPackPlugin.js.map +1 -0
  625. package/dist/Zod/zod.d.ts +2 -0
  626. package/dist/Zod/zod.js +7 -0
  627. package/dist/Zod/zod.js.map +1 -0
  628. package/dist/Zod/zodError.d.ts +40 -0
  629. package/dist/Zod/zodError.js +76 -0
  630. package/dist/Zod/zodError.js.map +1 -0
  631. package/package.json +36 -2
@@ -0,0 +1,133 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
+ return new (P || (P = Promise))(function (resolve, reject) {
28
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
32
+ });
33
+ };
34
+ var __generator = (this && this.__generator) || function (thisArg, body) {
35
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
36
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
37
+ function verb(n) { return function (v) { return step([n, v]); }; }
38
+ function step(op) {
39
+ if (f) throw new TypeError("Generator is already executing.");
40
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
41
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
42
+ if (y = 0, t) op = [op[0] & 2, t.value];
43
+ switch (op[0]) {
44
+ case 0: case 1: t = op; break;
45
+ case 4: _.label++; return { value: op[1], done: false };
46
+ case 5: _.label++; y = op[1]; op = [0]; continue;
47
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
48
+ default:
49
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
50
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
51
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
52
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
53
+ if (t[2]) _.ops.pop();
54
+ _.trys.pop(); continue;
55
+ }
56
+ op = body.call(thisArg, _);
57
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
58
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
59
+ }
60
+ };
61
+ var __importDefault = (this && this.__importDefault) || function (mod) {
62
+ return (mod && mod.__esModule) ? mod : { "default": mod };
63
+ };
64
+ Object.defineProperty(exports, "__esModule", { value: true });
65
+ exports.createServer = createServer;
66
+ var http = __importStar(require("http"));
67
+ var debug_1 = __importDefault(require("debug"));
68
+ var wait_1 = __importDefault(require("../../../Timer/wait"));
69
+ var debug = (0, debug_1.default)('@signageos/lib:Service:HTTP:server:serverFactory');
70
+ /**
71
+ * Create a HTTP server from an Express app running on a given port
72
+ */
73
+ function createServer(app, port) {
74
+ var server = http.createServer(app);
75
+ server.on('error', function (error) { return console.error(error); });
76
+ return {
77
+ server: server,
78
+ listen: function () {
79
+ return new Promise(function (resolve) {
80
+ server.listen(port, function () { return resolve(); });
81
+ });
82
+ },
83
+ close: function () {
84
+ return __awaiter(this, void 0, void 0, function () {
85
+ return __generator(this, function (_a) {
86
+ switch (_a.label) {
87
+ case 0: return [4 /*yield*/, drainHttpServerConnections(server)];
88
+ case 1:
89
+ _a.sent();
90
+ return [4 /*yield*/, new Promise(function (resolve) {
91
+ server.close(function () { return resolve(); });
92
+ })];
93
+ case 2:
94
+ _a.sent();
95
+ return [2 /*return*/];
96
+ }
97
+ });
98
+ });
99
+ },
100
+ };
101
+ }
102
+ /**
103
+ * Wait for the server to finish serving all requests
104
+ */
105
+ function drainHttpServerConnections(httpServer) {
106
+ return __awaiter(this, void 0, void 0, function () {
107
+ var connectionsCount;
108
+ return __generator(this, function (_a) {
109
+ switch (_a.label) {
110
+ case 0:
111
+ if (!true) return [3 /*break*/, 3];
112
+ return [4 /*yield*/, getHttpServerConnections(httpServer)];
113
+ case 1:
114
+ connectionsCount = _a.sent();
115
+ if (connectionsCount <= 0) {
116
+ return [3 /*break*/, 3];
117
+ }
118
+ debug("Waiting for ".concat(connectionsCount, " connections to drain"));
119
+ return [4 /*yield*/, (0, wait_1.default)(100)];
120
+ case 2:
121
+ _a.sent();
122
+ return [3 /*break*/, 0];
123
+ case 3: return [2 /*return*/];
124
+ }
125
+ });
126
+ });
127
+ }
128
+ function getHttpServerConnections(httpServer) {
129
+ return new Promise(function (resolve, reject) {
130
+ return httpServer.getConnections(function (error, count) { return (error ? reject(error) : resolve(count)); });
131
+ });
132
+ }
133
+ //# sourceMappingURL=serverFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serverFactory.js","sourceRoot":"","sources":["../../../../src/Service/HTTP/server/serverFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,oCAqBC;AA/BD,yCAA6B;AAE7B,gDAA0B;AAC1B,6DAAuC;AAEvC,IAAM,KAAK,GAAG,IAAA,eAAK,EAAC,kDAAkD,CAAC,CAAC;AAExE;;GAEG;AACH,SAAgB,YAAY,CAAC,GAAgB,EAAE,IAAY;IAC1D,IAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,UAAC,KAAY,IAAK,OAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAApB,CAAoB,CAAC,CAAC;IAE3D,OAAO;QACN,MAAM,QAAA;QAEN,MAAM;YACL,OAAO,IAAI,OAAO,CAAO,UAAC,OAAO;gBAChC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAM,OAAA,OAAO,EAAE,EAAT,CAAS,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;QACJ,CAAC;QAEK,KAAK;;;;gCACV,qBAAM,0BAA0B,CAAC,MAAM,CAAC,EAAA;;4BAAxC,SAAwC,CAAC;4BAEzC,qBAAM,IAAI,OAAO,CAAO,UAAC,OAAO;oCAC/B,MAAM,CAAC,KAAK,CAAC,cAAM,OAAA,OAAO,EAAE,EAAT,CAAS,CAAC,CAAC;gCAC/B,CAAC,CAAC,EAAA;;4BAFF,SAEE,CAAC;;;;;SACH;KACD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAe,0BAA0B,CAAC,UAAuB;;;;;;yBACzD,IAAI;oBACe,qBAAM,wBAAwB,CAAC,UAAU,CAAC,EAAA;;oBAA7D,gBAAgB,GAAG,SAA0C;oBACnE,IAAI,gBAAgB,IAAI,CAAC,EAAE,CAAC;wBAC3B,wBAAM;oBACP,CAAC;oBAED,KAAK,CAAC,sBAAe,gBAAgB,0BAAuB,CAAC,CAAC;oBAC9D,qBAAM,IAAA,cAAI,EAAC,GAAG,CAAC,EAAA;;oBAAf,SAAe,CAAC;;;;;;CAEjB;AAED,SAAS,wBAAwB,CAAC,UAAuB;IACxD,OAAO,IAAI,OAAO,CAAS,UAAC,OAAgC,EAAE,MAA8B;QAC3F,OAAA,UAAU,CAAC,cAAc,CAAC,UAAC,KAAK,EAAE,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAxC,CAAwC,CAAC;IAArF,CAAqF,CACrF,CAAC;AACH,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { IMetricsClient } from '../Metrics/MetricsClient';
2
+ import { IHttpServer, IService, OnServiceStopCallback } from './types';
3
+ export declare class Service implements IService {
4
+ httpServer: IHttpServer;
5
+ metricsClient: IMetricsClient;
6
+ private eventEmitter;
7
+ private started;
8
+ constructor(args: {
9
+ httpServer: IHttpServer;
10
+ metricsClient: IMetricsClient;
11
+ });
12
+ isStarted(): boolean;
13
+ start(): Promise<void>;
14
+ stop(): Promise<void>;
15
+ on(event: 'stop', callback: OnServiceStopCallback): this;
16
+ off(event: 'stop', callback: OnServiceStopCallback): this;
17
+ }
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.Service = void 0;
40
+ var AsyncEventEmitter_1 = require("../Events/AsyncEventEmitter");
41
+ var process_1 = require("./process");
42
+ var Service = /** @class */ (function () {
43
+ function Service(args) {
44
+ this.eventEmitter = new AsyncEventEmitter_1.AsyncEventEmitter();
45
+ this.started = false;
46
+ this.httpServer = args.httpServer;
47
+ this.metricsClient = args.metricsClient;
48
+ }
49
+ Service.prototype.isStarted = function () {
50
+ return this.started;
51
+ };
52
+ Service.prototype.start = function () {
53
+ return __awaiter(this, void 0, void 0, function () {
54
+ return __generator(this, function (_a) {
55
+ switch (_a.label) {
56
+ case 0: return [4 /*yield*/, this.httpServer.listen()];
57
+ case 1:
58
+ _a.sent();
59
+ (0, process_1.handleSignals)(this);
60
+ (0, process_1.suppressUncaughtExceptionsAndUnhandledRejections)();
61
+ this.started = true;
62
+ return [2 /*return*/];
63
+ }
64
+ });
65
+ });
66
+ };
67
+ Service.prototype.stop = function () {
68
+ return __awaiter(this, void 0, void 0, function () {
69
+ return __generator(this, function (_a) {
70
+ switch (_a.label) {
71
+ case 0:
72
+ console.info('Service is stopping');
73
+ return [4 /*yield*/, this.httpServer.close()];
74
+ case 1:
75
+ _a.sent();
76
+ return [4 /*yield*/, this.eventEmitter.emit('stop')];
77
+ case 2:
78
+ _a.sent();
79
+ this.started = false;
80
+ console.info('Service stopped');
81
+ return [2 /*return*/];
82
+ }
83
+ });
84
+ });
85
+ };
86
+ Service.prototype.on = function (event, callback) {
87
+ this.eventEmitter.on(event, callback);
88
+ return this;
89
+ };
90
+ Service.prototype.off = function (event, callback) {
91
+ this.eventEmitter.off(event, callback);
92
+ return this;
93
+ };
94
+ return Service;
95
+ }());
96
+ exports.Service = Service;
97
+ //# sourceMappingURL=Service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Service.js","sourceRoot":"","sources":["../../src/Service/Service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iEAAgE;AAEhE,qCAA4F;AAG5F;IAOC,iBAAY,IAAgE;QAJpE,iBAAY,GAAsB,IAAI,qCAAiB,EAAE,CAAC;QAE1D,YAAO,GAAY,KAAK,CAAC;QAGhC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;IACzC,CAAC;IAEM,2BAAS,GAAhB;QACC,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAEY,uBAAK,GAAlB;;;;4BACC,qBAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAA;;wBAA9B,SAA8B,CAAC;wBAC/B,IAAA,uBAAa,EAAC,IAAI,CAAC,CAAC;wBACpB,IAAA,0DAAgD,GAAE,CAAC;wBACnD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;;;;;KACpB;IAEY,sBAAI,GAAjB;;;;;wBACC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;wBACpC,qBAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,EAAA;;wBAA7B,SAA6B,CAAC;wBAC9B,qBAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAA;;wBAApC,SAAoC,CAAC;wBACrC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;wBACrB,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;;;;;KAChC;IAEM,oBAAE,GAAT,UAAU,KAAa,EAAE,QAA+B;QACvD,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACb,CAAC;IAEM,qBAAG,GAAV,UAAW,KAAa,EAAE,QAA+B;QACxD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC;IACb,CAAC;IACF,cAAC;AAAD,CAAC,AAxCD,IAwCC;AAxCY,0BAAO"}
@@ -0,0 +1,8 @@
1
+ import { IAMQPConnection } from '../AMQP/amqpConnectionFactory';
2
+ import { IMongodbConnection } from '../MongoDB/mongoDBConnectionFactory';
3
+ import { IRedisConnection } from '../Redis/redisConnectionFactory';
4
+ export interface DBConnections {
5
+ redis?: Record<string, IRedisConnection>;
6
+ amqp?: Record<string, IAMQPConnection>;
7
+ mongodb?: Record<string, IMongodbConnection>;
8
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=dbConnections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dbConnections.js","sourceRoot":"","sources":["../../src/Service/dbConnections.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import { IMetricsClient } from '../../Metrics/MetricsClient';
2
+ import { DBConnections } from '../dbConnections';
3
+ export declare function initDbConnectionsMetrics(connections: DBConnections, metricsClient: IMetricsClient): void;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initDbConnectionsMetrics = initDbConnectionsMetrics;
4
+ var connection_1 = require("../../ThirdParty/connection");
5
+ var mongodb_1 = require("./mongodb");
6
+ var redis_1 = require("./redis");
7
+ function initDbConnectionsMetrics(connections, metricsClient) {
8
+ if (connections.amqp) {
9
+ initMetricsForDBType(metricsClient, 'amqp', connections.amqp);
10
+ }
11
+ if (connections.redis) {
12
+ (0, redis_1.initRedisDBConnectionsMetrics)(connections.redis);
13
+ }
14
+ if (connections.mongodb) {
15
+ (0, mongodb_1.initMongoDBConnectionsMetrics)(connections.mongodb);
16
+ }
17
+ }
18
+ function initMetricsForDBType(metricsClient, dbName, connections) {
19
+ var client = metricsClient.getClient();
20
+ for (var _i = 0, _a = Object.keys(connections); _i < _a.length; _i++) {
21
+ var connName = _a[_i];
22
+ var connection = connections[connName];
23
+ var metricPrefix = "sos_service_db_connections_".concat(dbName, "_").concat(connName, "_");
24
+ var openMetric = new client.Gauge({
25
+ name: metricPrefix + 'open',
26
+ help: "Count of open ".concat(dbName, " connections for the entire runtime history"),
27
+ });
28
+ var closeMetric = new client.Gauge({
29
+ name: metricPrefix + 'close',
30
+ help: "Count of closed ".concat(dbName, " connections for the entire runtime history"),
31
+ });
32
+ updateMetricWithConnection(connection, openMetric, closeMetric);
33
+ }
34
+ }
35
+ /**
36
+ * @deprecated
37
+ * see: packages/lib/src/ThirdParty/connection.ts
38
+ **/
39
+ function updateMetricWithConnection(connection, openMetric, closeMetric) {
40
+ connection.addListener(connection_1.ThirdPartyConnectionEvent.ConnectionOpen, function () {
41
+ openMetric.inc();
42
+ });
43
+ connection.addListener(connection_1.ThirdPartyConnectionEvent.ConnectionClosed, function () {
44
+ closeMetric.inc();
45
+ });
46
+ }
47
+ //# sourceMappingURL=connections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connections.js","sourceRoot":"","sources":["../../../src/Service/metrics/connections.ts"],"names":[],"mappings":";;AAOA,4DAUC;AAfD,0DAA+F;AAE/F,qCAA0D;AAC1D,iCAAwD;AAExD,SAAgB,wBAAwB,CAAC,WAA0B,EAAE,aAA6B;IACjG,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;QACtB,oBAAoB,CAAC,aAAa,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;QACvB,IAAA,qCAA6B,EAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;QACzB,IAAA,uCAA6B,EAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;AACF,CAAC;AAED,SAAS,oBAAoB,CAAC,aAA6B,EAAE,MAAc,EAAE,WAAkD;IAC9H,IAAM,MAAM,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC;IAEzC,KAAuB,UAAwB,EAAxB,KAAA,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAxB,cAAwB,EAAxB,IAAwB,EAAE,CAAC;QAA7C,IAAM,QAAQ,SAAA;QAClB,IAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAM,YAAY,GAAG,qCAA8B,MAAM,cAAI,QAAQ,MAAG,CAAC;QAEzE,IAAM,UAAU,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC;YACnC,IAAI,EAAE,YAAY,GAAG,MAAM;YAC3B,IAAI,EAAE,wBAAiB,MAAM,gDAA6C;SAC1E,CAAC,CAAC;QACH,IAAM,WAAW,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC;YACpC,IAAI,EAAE,YAAY,GAAG,OAAO;YAC5B,IAAI,EAAE,0BAAmB,MAAM,gDAA6C;SAC5E,CAAC,CAAC;QAEH,0BAA0B,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;IACjE,CAAC;AACF,CAAC;AAED;;;IAGI;AACJ,SAAS,0BAA0B,CAAC,UAAiC,EAAE,UAAiB,EAAE,WAAkB;IAC3G,UAAU,CAAC,WAAW,CAAC,sCAAyB,CAAC,cAAc,EAAE;QAChE,UAAU,CAAC,GAAG,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;IACH,UAAU,CAAC,WAAW,CAAC,sCAAyB,CAAC,gBAAgB,EAAE;QAClE,WAAW,CAAC,GAAG,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { IMongodbConnection } from '../../MongoDB/mongoDBConnectionFactory';
2
+ export declare function initMongoDBConnectionsMetrics(connections: Record<string, IMongodbConnection>): void;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initMongoDBConnectionsMetrics = initMongoDBConnectionsMetrics;
4
+ var mongoDBMetrics_1 = require("../../Metrics/mongoDBMetrics");
5
+ function initMongoDBConnectionsMetrics(connections) {
6
+ var exporter = new mongoDBMetrics_1.MongoDBDriverExporter();
7
+ for (var _i = 0, _a = Object.keys(connections); _i < _a.length; _i++) {
8
+ var connName = _a[_i];
9
+ var connection = connections[connName];
10
+ connection.monitor(connName, exporter);
11
+ }
12
+ }
13
+ //# sourceMappingURL=mongodb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mongodb.js","sourceRoot":"","sources":["../../../src/Service/metrics/mongodb.ts"],"names":[],"mappings":";;AAGA,sEAOC;AAVD,+DAAqE;AAGrE,SAAgB,6BAA6B,CAAC,WAA+C;IAC5F,IAAM,QAAQ,GAAG,IAAI,sCAAqB,EAAE,CAAC;IAE7C,KAAuB,UAAwB,EAAxB,KAAA,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAxB,cAAwB,EAAxB,IAAwB,EAAE,CAAC;QAA7C,IAAM,QAAQ,SAAA;QAClB,IAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QACzC,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;AACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { IRedisConnection } from '../../Redis/redisConnectionFactory';
2
+ export declare function initRedisDBConnectionsMetrics(connections: Record<string, IRedisConnection>): void;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initRedisDBConnectionsMetrics = initRedisDBConnectionsMetrics;
4
+ function initRedisDBConnectionsMetrics(connections) {
5
+ for (var _i = 0, _a = Object.keys(connections); _i < _a.length; _i++) {
6
+ var connName = _a[_i];
7
+ var connection = connections[connName];
8
+ connection.monitor(connName);
9
+ }
10
+ }
11
+ //# sourceMappingURL=redis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redis.js","sourceRoot":"","sources":["../../../src/Service/metrics/redis.ts"],"names":[],"mappings":";;AAEA,sEAKC;AALD,SAAgB,6BAA6B,CAAC,WAA6C;IAC1F,KAAuB,UAAwB,EAAxB,KAAA,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAxB,cAAwB,EAAxB,IAAwB,EAAE,CAAC;QAA7C,IAAM,QAAQ,SAAA;QAClB,IAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QACzC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;AACF,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { IService } from './types';
2
+ declare global {
3
+ namespace NodeJS {
4
+ interface Process {
5
+ uid: string;
6
+ }
7
+ }
8
+ }
9
+ export declare const stopService: (service: IService) => Promise<never>;
10
+ export declare function handleSignals(service: IService): void;
11
+ export declare function suppressUncaughtExceptionsAndUnhandledRejections(): void;
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.stopService = void 0;
40
+ exports.handleSignals = handleSignals;
41
+ exports.suppressUncaughtExceptionsAndUnhandledRejections = suppressUncaughtExceptionsAndUnhandledRejections;
42
+ var generator_1 = require("../Hash/generator");
43
+ process.uid = (0, generator_1.generateUniqueHash)();
44
+ var stopService = function (service) { return __awaiter(void 0, void 0, void 0, function () {
45
+ return __generator(this, function (_a) {
46
+ switch (_a.label) {
47
+ case 0:
48
+ process.removeAllListeners('SIGTERM');
49
+ process.removeAllListeners('SIGINT');
50
+ return [4 /*yield*/, service.stop()];
51
+ case 1:
52
+ _a.sent();
53
+ process.exit(0);
54
+ return [2 /*return*/];
55
+ }
56
+ });
57
+ }); };
58
+ exports.stopService = stopService;
59
+ function handleSignals(service) {
60
+ var _this = this;
61
+ var onSignalLogAndExit = function (signal) {
62
+ process.on(signal, function () { return __awaiter(_this, void 0, void 0, function () {
63
+ return __generator(this, function (_a) {
64
+ switch (_a.label) {
65
+ case 0:
66
+ console.info("Received signal ".concat(signal));
67
+ return [4 /*yield*/, (0, exports.stopService)(service)];
68
+ case 1:
69
+ _a.sent();
70
+ return [2 /*return*/];
71
+ }
72
+ });
73
+ }); });
74
+ };
75
+ onSignalLogAndExit('SIGTERM');
76
+ onSignalLogAndExit('SIGINT');
77
+ }
78
+ function suppressUncaughtExceptionsAndUnhandledRejections() {
79
+ process.removeAllListeners('uncaughtException');
80
+ process.removeAllListeners('unhandledRejection');
81
+ process.on('uncaughtException', function (error) {
82
+ console.error(error && error.stack ? error.stack : error);
83
+ });
84
+ process.on('unhandledRejection', function (error) {
85
+ console.error(error && error.stack ? error.stack : error);
86
+ });
87
+ }
88
+ //# sourceMappingURL=process.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process.js","sourceRoot":"","sources":["../../src/Service/process.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoBA,sCAUC;AAED,4GASC;AAzCD,+CAAuD;AAWvD,OAAO,CAAC,GAAG,GAAG,IAAA,8BAAkB,GAAE,CAAC;AAE5B,IAAM,WAAW,GAAG,UAAO,OAAiB;;;;gBAClD,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;gBACtC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;gBACrC,qBAAM,OAAO,CAAC,IAAI,EAAE,EAAA;;gBAApB,SAAoB,CAAC;gBACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;;;KAChB,CAAC;AALW,QAAA,WAAW,eAKtB;AAEF,SAAgB,aAAa,CAAC,OAAiB;IAA/C,iBAUC;IATA,IAAM,kBAAkB,GAAG,UAAC,MAAc;QACzC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE;;;;wBAClB,OAAO,CAAC,IAAI,CAAC,0BAAmB,MAAM,CAAE,CAAC,CAAC;wBAC1C,qBAAM,IAAA,mBAAW,EAAC,OAAO,CAAC,EAAA;;wBAA1B,SAA0B,CAAC;;;;aAC3B,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC9B,kBAAkB,CAAC,QAAQ,CAAC,CAAC;AAC9B,CAAC;AAED,SAAgB,gDAAgD;IAC/D,OAAO,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;IAChD,OAAO,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;IACjD,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,UAAC,KAAY;QAC5C,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,UAAC,KAAY;QAC7C,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,115 @@
1
+ import { DBConnections } from './dbConnections';
2
+ import { ServiceConfig } from '../Config/config';
3
+ import { IsReadyCallback } from './HTTP/routes/monitoring/readniness';
4
+ import { IsAliveCallback } from './HTTP/routes/monitoring/aliveness';
5
+ import { IService } from './types';
6
+ import { AccessLogCallback } from './HTTP/express/app';
7
+ import { TAdditionalStatusDataCallback } from '../HttpStatus/sendStatusResponse';
8
+ /**
9
+ * Create instance of a service
10
+ *
11
+ * Service implements all functionality that is common for all services
12
+ * This functionality is the same in every service.
13
+ *
14
+ * We had a problem of writing it from scratch each time for every service.
15
+ * Sometimes there was a drift, where some new ideas were implemented in one or more services
16
+ * but not in all services.
17
+ *
18
+ * This single common implementation aims to prevent that and provide a common implementation
19
+ * that all services can use as a library.
20
+ *
21
+ * @param config - It's recommended to use the direct output of `parseServiceConfig()`. The format is deliberately the same.
22
+ * @param connections - Database connections
23
+ * @param isReady - Custom readiness check for Kubernetes
24
+ * @param isAlive - Custom aliveness check for Kubernetes
25
+ * @param accessLogCallback - Custom callback to modify the access log before it is logged
26
+ *
27
+ * -------
28
+ *
29
+ * Adding application-specific HTTP routes:
30
+ *
31
+ * This factory returns express app, that can be used to add more routes.
32
+ *
33
+ * For example:
34
+ *
35
+ * ```typescript
36
+ * const service = createService({ ... });
37
+ * service.httpServer.express.get('/my-route', (req, res) => {
38
+ * res.send('Hello World!');
39
+ * });
40
+ * ```
41
+ *
42
+ * -------
43
+ *
44
+ * Adding application-specific metrics:
45
+ *
46
+ * By default, the service serves some basic Node.js metrics.
47
+ * This factory returns a metrics client, that can be used to add more metrics.
48
+ *
49
+ * For example:
50
+ *
51
+ * ```typescript
52
+ * const service = createService({ ... });
53
+ * const client = service.metricsClient.getClient();
54
+ * const myCounter = new client.Counter({
55
+ * name: 'my_counter',
56
+ * help: 'This is my counter',
57
+ * });
58
+ *
59
+ * // now you can independently increment the counter in your code
60
+ * // and the value will automatically be exposed when serving metrics
61
+ * ```
62
+ *
63
+ * -------
64
+ *
65
+ * Custom readiness and aliveness checks:
66
+ *
67
+ * By default, the service serves `/ready` and `/alive` routes, that are used by Kubernetes readiness/aliveness probes.
68
+ * You can provide custom callbacks if the default checks are not enough:
69
+ *
70
+ * ```typescript
71
+ * const service = createService({
72
+ * // ...
73
+ *
74
+ * isReady: async () => {
75
+ * // your custom readiness check
76
+ * // either return true/false if service is/isn't ready to receive traffic
77
+ * // or return an object { ready: boolean, response: any } to provide a custom response
78
+ * return true;
79
+ * },
80
+ *
81
+ * isAlive: async () => {
82
+ * // your custom aliveness check
83
+ * // return true/false if service is/isn't alive
84
+ * return true;
85
+ * },
86
+ * });
87
+ * ```
88
+ */
89
+ export declare function createService({ config, connections, isReady, isAlive, accessLogCallback, noRouteIndex, setDefaultPenTestHeaders, additionalStatusDataCallback, }: {
90
+ config: Pick<ServiceConfig, 'app'>;
91
+ connections?: DBConnections;
92
+ isReady?: IsReadyCallback;
93
+ isAlive?: IsAliveCallback;
94
+ /**
95
+ * Custom callback to modify the access log before it is logged
96
+ *
97
+ * Use it to add custom fields to the access log.
98
+ * It's not possible to modify the access log directly, only to add additional fields.
99
+ *
100
+ * @returns metadata object that will be merged with the access log
101
+ */
102
+ accessLogCallback?: AccessLogCallback;
103
+ /**
104
+ * Prevent serving the index page on / path
105
+ */
106
+ noRouteIndex?: boolean;
107
+ /**
108
+ * PEN TESTS Remediation https://app.clickup.com/t/86c140zgd
109
+ */
110
+ setDefaultPenTestHeaders?: boolean;
111
+ /**
112
+ * additional data displayed under `/status` path
113
+ */
114
+ additionalStatusDataCallback?: TAdditionalStatusDataCallback;
115
+ }): IService;