@zintrust/core 0.1.48 → 0.1.50

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 (403) hide show
  1. package/README.md +1 -1
  2. package/package.json +1 -9
  3. package/src/cli/CLI.d.ts.map +1 -1
  4. package/src/cli/CLI.js +2 -0
  5. package/src/cli/commands/AddCommand.js +2 -2
  6. package/src/cli/commands/BulletproofKeyGenerateCommand.d.ts +10 -0
  7. package/src/cli/commands/BulletproofKeyGenerateCommand.d.ts.map +1 -0
  8. package/src/cli/commands/BulletproofKeyGenerateCommand.js +139 -0
  9. package/src/cli/commands/JwtDevCommand.d.ts.map +1 -1
  10. package/src/cli/commands/JwtDevCommand.js +51 -32
  11. package/src/cli/scaffolding/ControllerGenerator.d.ts +1 -1
  12. package/src/cli/scaffolding/ControllerGenerator.d.ts.map +1 -1
  13. package/src/cli/scaffolding/ControllerGenerator.js +8 -79
  14. package/src/config/SecretsManager.d.ts +0 -1
  15. package/src/config/SecretsManager.d.ts.map +1 -1
  16. package/src/config/SecretsManager.js +0 -1
  17. package/src/config/index.d.ts +1 -1
  18. package/src/config/index.d.ts.map +1 -1
  19. package/src/config/index.js +30 -10
  20. package/src/config/middleware.d.ts +1 -0
  21. package/src/config/middleware.d.ts.map +1 -1
  22. package/src/config/middleware.js +3 -0
  23. package/src/http/error-pages/ErrorPageRenderer.js +7 -1
  24. package/src/index.d.ts +1 -2
  25. package/src/index.d.ts.map +1 -1
  26. package/src/index.js +4 -5
  27. package/src/middleware/BulletproofAuthMiddleware.d.ts +92 -0
  28. package/src/middleware/BulletproofAuthMiddleware.d.ts.map +1 -0
  29. package/src/middleware/BulletproofAuthMiddleware.js +421 -0
  30. package/src/middleware/CsrfMiddleware.d.ts +0 -1
  31. package/src/middleware/CsrfMiddleware.d.ts.map +1 -1
  32. package/src/middleware/CsrfMiddleware.js +8 -1
  33. package/src/middleware/JwtAuthMiddleware.d.ts.map +1 -1
  34. package/src/middleware/JwtAuthMiddleware.js +11 -5
  35. package/src/orm/Database.d.ts.map +1 -1
  36. package/src/orm/Database.js +48 -39
  37. package/src/orm/adapters/MySQLProxyAdapter.d.ts.map +1 -1
  38. package/src/orm/adapters/MySQLProxyAdapter.js +54 -35
  39. package/src/orm/adapters/PostgreSQLProxyAdapter.d.ts.map +1 -1
  40. package/src/orm/adapters/PostgreSQLProxyAdapter.js +126 -103
  41. package/src/orm/adapters/SqlProxyHttpAdapterShared.d.ts +30 -0
  42. package/src/orm/adapters/SqlProxyHttpAdapterShared.d.ts.map +1 -0
  43. package/src/orm/adapters/SqlProxyHttpAdapterShared.js +64 -0
  44. package/src/orm/adapters/SqlServerProxyAdapter.d.ts.map +1 -1
  45. package/src/orm/adapters/SqlServerProxyAdapter.js +54 -37
  46. package/src/orm/migrations/MigrationStore.d.ts.map +1 -1
  47. package/src/orm/migrations/MigrationStore.js +22 -1
  48. package/src/proxy/d1/ZintrustD1Proxy.d.ts +2 -2
  49. package/src/proxy/d1/ZintrustD1Proxy.d.ts.map +1 -1
  50. package/src/proxy/d1/ZintrustD1Proxy.js +39 -2
  51. package/src/proxy/kv/ZintrustKvProxy.d.ts +2 -2
  52. package/src/proxy/kv/ZintrustKvProxy.d.ts.map +1 -1
  53. package/src/proxy/kv/ZintrustKvProxy.js +38 -2
  54. package/src/routes/doc.js +1 -1
  55. package/src/routes/errorPages.d.ts.map +1 -1
  56. package/src/routes/errorPages.js +9 -2
  57. package/src/security/CsrfTokenManager.d.ts.map +1 -1
  58. package/src/security/CsrfTokenManager.js +57 -23
  59. package/src/security/JwtManager.d.ts +4 -1
  60. package/src/security/JwtManager.d.ts.map +1 -1
  61. package/src/security/JwtManager.js +25 -11
  62. package/src/security/JwtSessions.d.ts +12 -0
  63. package/src/security/JwtSessions.d.ts.map +1 -0
  64. package/src/security/JwtSessions.js +556 -0
  65. package/src/security/NonceReplay.d.ts +24 -0
  66. package/src/security/NonceReplay.d.ts.map +1 -0
  67. package/src/security/NonceReplay.js +42 -0
  68. package/src/security/TokenRevocation.d.ts.map +1 -1
  69. package/src/security/TokenRevocation.js +1 -0
  70. package/src/tools/http/Http.d.ts +5 -0
  71. package/src/tools/http/Http.d.ts.map +1 -1
  72. package/src/tools/http/Http.js +25 -9
  73. package/src/tools/queue/QueueReliabilityOrchestrator.d.ts.map +1 -1
  74. package/src/tools/queue/QueueReliabilityOrchestrator.js +18 -6
  75. package/src/validation/Validator.d.ts.map +1 -1
  76. package/src/validation/Validator.js +4 -2
  77. package/src/zintrust.comon.d.ts +9 -0
  78. package/src/zintrust.comon.d.ts.map +1 -0
  79. package/src/zintrust.comon.js +15 -0
  80. package/src/zintrust.plugins.d.ts +9 -3
  81. package/src/zintrust.plugins.d.ts.map +1 -1
  82. package/src/zintrust.plugins.js +10 -3
  83. package/src/zintrust.plugins.wg.d.ts +1 -0
  84. package/src/zintrust.plugins.wg.d.ts.map +1 -1
  85. package/src/zintrust.plugins.wg.js +1 -0
  86. package/app/Controllers/AuthController.d.ts +0 -10
  87. package/app/Controllers/AuthController.d.ts.map +0 -1
  88. package/app/Controllers/AuthController.js +0 -201
  89. package/app/Controllers/UserController.d.ts +0 -9
  90. package/app/Controllers/UserController.d.ts.map +0 -1
  91. package/app/Controllers/UserController.js +0 -8
  92. package/app/Controllers/UserQueryBuilderController.d.ts +0 -16
  93. package/app/Controllers/UserQueryBuilderController.d.ts.map +0 -1
  94. package/app/Controllers/UserQueryBuilderController.js +0 -404
  95. package/app/Middleware/ProfilerMiddleware.d.ts +0 -12
  96. package/app/Middleware/ProfilerMiddleware.d.ts.map +0 -1
  97. package/app/Middleware/ProfilerMiddleware.js +0 -47
  98. package/app/Middleware/index.d.ts +0 -59
  99. package/app/Middleware/index.d.ts.map +0 -1
  100. package/app/Middleware/index.js +0 -215
  101. package/app/Models/Post.d.ts +0 -14
  102. package/app/Models/Post.d.ts.map +0 -1
  103. package/app/Models/Post.js +0 -27
  104. package/app/Models/User.d.ts +0 -14
  105. package/app/Models/User.d.ts.map +0 -1
  106. package/app/Models/User.js +0 -44
  107. package/app/Schedules/JobTracking.d.ts +0 -3
  108. package/app/Schedules/JobTracking.d.ts.map +0 -1
  109. package/app/Schedules/JobTracking.js +0 -13
  110. package/app/Schedules/index.d.ts +0 -2
  111. package/app/Schedules/index.d.ts.map +0 -1
  112. package/app/Schedules/index.js +0 -1
  113. package/app/Toolkit/Broadcast/sendBroadcast.d.ts +0 -6
  114. package/app/Toolkit/Broadcast/sendBroadcast.d.ts.map +0 -1
  115. package/app/Toolkit/Broadcast/sendBroadcast.js +0 -5
  116. package/app/Toolkit/Mail/sendWelcomeEmail.d.ts +0 -6
  117. package/app/Toolkit/Mail/sendWelcomeEmail.d.ts.map +0 -1
  118. package/app/Toolkit/Mail/sendWelcomeEmail.js +0 -20
  119. package/app/Toolkit/Notification/sendSlackNotification.d.ts +0 -8
  120. package/app/Toolkit/Notification/sendSlackNotification.d.ts.map +0 -1
  121. package/app/Toolkit/Notification/sendSlackNotification.js +0 -5
  122. package/app/Toolkit/Notification/sendSms.d.ts +0 -6
  123. package/app/Toolkit/Notification/sendSms.d.ts.map +0 -1
  124. package/app/Toolkit/Notification/sendSms.js +0 -5
  125. package/app/Types/controller.d.ts +0 -42
  126. package/app/Types/controller.d.ts.map +0 -1
  127. package/app/Types/controller.js +0 -1
  128. package/config/broadcast.d.ts +0 -38
  129. package/config/broadcast.d.ts.map +0 -1
  130. package/config/broadcast.js +0 -37
  131. package/config/cache.d.ts +0 -40
  132. package/config/cache.d.ts.map +0 -1
  133. package/config/cache.js +0 -39
  134. package/config/database.d.ts +0 -58
  135. package/config/database.d.ts.map +0 -1
  136. package/config/database.js +0 -65
  137. package/config/mail.d.ts +0 -51
  138. package/config/mail.d.ts.map +0 -1
  139. package/config/mail.js +0 -69
  140. package/config/middleware.d.ts +0 -11
  141. package/config/middleware.d.ts.map +0 -1
  142. package/config/middleware.js +0 -30
  143. package/config/notification.d.ts +0 -33
  144. package/config/notification.d.ts.map +0 -1
  145. package/config/notification.js +0 -33
  146. package/config/queue.d.ts +0 -55
  147. package/config/queue.d.ts.map +0 -1
  148. package/config/queue.js +0 -87
  149. package/config/storage.d.ts +0 -59
  150. package/config/storage.d.ts.map +0 -1
  151. package/config/storage.js +0 -59
  152. package/config/workers.d.ts +0 -54
  153. package/config/workers.d.ts.map +0 -1
  154. package/config/workers.js +0 -83
  155. package/packages/cloudflare-d1-proxy/src/index.d.ts +0 -48
  156. package/packages/cloudflare-d1-proxy/src/index.d.ts.map +0 -1
  157. package/packages/cloudflare-d1-proxy/src/index.js +0 -387
  158. package/packages/cloudflare-kv-proxy/src/index.d.ts +0 -44
  159. package/packages/cloudflare-kv-proxy/src/index.d.ts.map +0 -1
  160. package/packages/cloudflare-kv-proxy/src/index.js +0 -325
  161. package/packages/queue-monitor/src/QueueMonitoringService.d.ts +0 -35
  162. package/packages/queue-monitor/src/QueueMonitoringService.d.ts.map +0 -1
  163. package/packages/queue-monitor/src/QueueMonitoringService.js +0 -194
  164. package/packages/queue-monitor/src/connection.d.ts +0 -3
  165. package/packages/queue-monitor/src/connection.d.ts.map +0 -1
  166. package/packages/queue-monitor/src/connection.js +0 -1
  167. package/packages/queue-monitor/src/dashboard-ui.d.ts +0 -7
  168. package/packages/queue-monitor/src/dashboard-ui.d.ts.map +0 -1
  169. package/packages/queue-monitor/src/dashboard-ui.js +0 -997
  170. package/packages/queue-monitor/src/driver.d.ts +0 -15
  171. package/packages/queue-monitor/src/driver.d.ts.map +0 -1
  172. package/packages/queue-monitor/src/driver.js +0 -115
  173. package/packages/queue-monitor/src/index.d.ts +0 -71
  174. package/packages/queue-monitor/src/index.d.ts.map +0 -1
  175. package/packages/queue-monitor/src/index.js +0 -296
  176. package/packages/queue-monitor/src/metrics.d.ts +0 -27
  177. package/packages/queue-monitor/src/metrics.d.ts.map +0 -1
  178. package/packages/queue-monitor/src/metrics.js +0 -92
  179. package/packages/queue-monitor/src/worker.d.ts +0 -8
  180. package/packages/queue-monitor/src/worker.d.ts.map +0 -1
  181. package/packages/queue-monitor/src/worker.js +0 -35
  182. package/packages/queue-redis/src/BullMQRedisQueue.d.ts +0 -26
  183. package/packages/queue-redis/src/BullMQRedisQueue.d.ts.map +0 -1
  184. package/packages/queue-redis/src/BullMQRedisQueue.js +0 -463
  185. package/packages/queue-redis/src/HttpQueueDriver.d.ts +0 -18
  186. package/packages/queue-redis/src/HttpQueueDriver.d.ts.map +0 -1
  187. package/packages/queue-redis/src/HttpQueueDriver.js +0 -249
  188. package/packages/queue-redis/src/QueueHttpGateway.d.ts +0 -16
  189. package/packages/queue-redis/src/QueueHttpGateway.d.ts.map +0 -1
  190. package/packages/queue-redis/src/QueueHttpGateway.js +0 -217
  191. package/packages/queue-redis/src/RedisPublishClient.d.ts +0 -14
  192. package/packages/queue-redis/src/RedisPublishClient.d.ts.map +0 -1
  193. package/packages/queue-redis/src/RedisPublishClient.js +0 -251
  194. package/packages/queue-redis/src/index.d.ts +0 -12
  195. package/packages/queue-redis/src/index.d.ts.map +0 -1
  196. package/packages/queue-redis/src/index.js +0 -10
  197. package/packages/queue-redis/src/register.d.ts +0 -6
  198. package/packages/queue-redis/src/register.d.ts.map +0 -1
  199. package/packages/queue-redis/src/register.js +0 -21
  200. package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.d.ts +0 -11
  201. package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.d.ts.map +0 -1
  202. package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.js +0 -32
  203. package/packages/workers/migrations/20260123180000_create_queue_jobs_table.d.ts +0 -11
  204. package/packages/workers/migrations/20260123180000_create_queue_jobs_table.d.ts.map +0 -1
  205. package/packages/workers/migrations/20260123180000_create_queue_jobs_table.js +0 -46
  206. package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.d.ts +0 -7
  207. package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.d.ts.map +0 -1
  208. package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.js +0 -44
  209. package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.d.ts +0 -7
  210. package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.d.ts.map +0 -1
  211. package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.js +0 -104
  212. package/packages/workers/src/AnomalyDetection.d.ts +0 -107
  213. package/packages/workers/src/AnomalyDetection.d.ts.map +0 -1
  214. package/packages/workers/src/AnomalyDetection.js +0 -329
  215. package/packages/workers/src/AutoScaler.d.ts +0 -128
  216. package/packages/workers/src/AutoScaler.d.ts.map +0 -1
  217. package/packages/workers/src/AutoScaler.js +0 -425
  218. package/packages/workers/src/BroadcastWorker.d.ts +0 -24
  219. package/packages/workers/src/BroadcastWorker.d.ts.map +0 -1
  220. package/packages/workers/src/BroadcastWorker.js +0 -24
  221. package/packages/workers/src/CanaryController.d.ts +0 -104
  222. package/packages/workers/src/CanaryController.d.ts.map +0 -1
  223. package/packages/workers/src/CanaryController.js +0 -424
  224. package/packages/workers/src/ChaosEngineering.d.ts +0 -80
  225. package/packages/workers/src/ChaosEngineering.d.ts.map +0 -1
  226. package/packages/workers/src/ChaosEngineering.js +0 -229
  227. package/packages/workers/src/CircuitBreaker.d.ts +0 -107
  228. package/packages/workers/src/CircuitBreaker.d.ts.map +0 -1
  229. package/packages/workers/src/CircuitBreaker.js +0 -374
  230. package/packages/workers/src/ClusterLock.d.ts +0 -91
  231. package/packages/workers/src/ClusterLock.d.ts.map +0 -1
  232. package/packages/workers/src/ClusterLock.js +0 -397
  233. package/packages/workers/src/ComplianceManager.d.ts +0 -178
  234. package/packages/workers/src/ComplianceManager.d.ts.map +0 -1
  235. package/packages/workers/src/ComplianceManager.js +0 -556
  236. package/packages/workers/src/DatacenterOrchestrator.d.ts +0 -134
  237. package/packages/workers/src/DatacenterOrchestrator.d.ts.map +0 -1
  238. package/packages/workers/src/DatacenterOrchestrator.js +0 -404
  239. package/packages/workers/src/DeadLetterQueue.d.ts +0 -123
  240. package/packages/workers/src/DeadLetterQueue.d.ts.map +0 -1
  241. package/packages/workers/src/DeadLetterQueue.js +0 -544
  242. package/packages/workers/src/HealthMonitor.d.ts +0 -43
  243. package/packages/workers/src/HealthMonitor.d.ts.map +0 -1
  244. package/packages/workers/src/HealthMonitor.js +0 -312
  245. package/packages/workers/src/MultiQueueWorker.d.ts +0 -90
  246. package/packages/workers/src/MultiQueueWorker.d.ts.map +0 -1
  247. package/packages/workers/src/MultiQueueWorker.js +0 -282
  248. package/packages/workers/src/NotificationWorker.d.ts +0 -24
  249. package/packages/workers/src/NotificationWorker.d.ts.map +0 -1
  250. package/packages/workers/src/NotificationWorker.js +0 -23
  251. package/packages/workers/src/Observability.d.ts +0 -154
  252. package/packages/workers/src/Observability.d.ts.map +0 -1
  253. package/packages/workers/src/Observability.js +0 -538
  254. package/packages/workers/src/PluginManager.d.ts +0 -124
  255. package/packages/workers/src/PluginManager.d.ts.map +0 -1
  256. package/packages/workers/src/PluginManager.js +0 -392
  257. package/packages/workers/src/PriorityQueue.d.ts +0 -118
  258. package/packages/workers/src/PriorityQueue.d.ts.map +0 -1
  259. package/packages/workers/src/PriorityQueue.js +0 -276
  260. package/packages/workers/src/ResourceMonitor.d.ts +0 -165
  261. package/packages/workers/src/ResourceMonitor.d.ts.map +0 -1
  262. package/packages/workers/src/ResourceMonitor.js +0 -632
  263. package/packages/workers/src/SLAMonitor.d.ts +0 -111
  264. package/packages/workers/src/SLAMonitor.d.ts.map +0 -1
  265. package/packages/workers/src/SLAMonitor.js +0 -274
  266. package/packages/workers/src/WorkerFactory.d.ts +0 -218
  267. package/packages/workers/src/WorkerFactory.d.ts.map +0 -1
  268. package/packages/workers/src/WorkerFactory.js +0 -2253
  269. package/packages/workers/src/WorkerInit.d.ts +0 -86
  270. package/packages/workers/src/WorkerInit.d.ts.map +0 -1
  271. package/packages/workers/src/WorkerInit.js +0 -307
  272. package/packages/workers/src/WorkerMetrics.d.ts +0 -116
  273. package/packages/workers/src/WorkerMetrics.d.ts.map +0 -1
  274. package/packages/workers/src/WorkerMetrics.js +0 -570
  275. package/packages/workers/src/WorkerRegistry.d.ts +0 -152
  276. package/packages/workers/src/WorkerRegistry.d.ts.map +0 -1
  277. package/packages/workers/src/WorkerRegistry.js +0 -396
  278. package/packages/workers/src/WorkerShutdown.d.ts +0 -70
  279. package/packages/workers/src/WorkerShutdown.d.ts.map +0 -1
  280. package/packages/workers/src/WorkerShutdown.js +0 -185
  281. package/packages/workers/src/WorkerVersioning.d.ts +0 -108
  282. package/packages/workers/src/WorkerVersioning.d.ts.map +0 -1
  283. package/packages/workers/src/WorkerVersioning.js +0 -300
  284. package/packages/workers/src/config/workerConfig.d.ts +0 -5
  285. package/packages/workers/src/config/workerConfig.d.ts.map +0 -1
  286. package/packages/workers/src/config/workerConfig.js +0 -25
  287. package/packages/workers/src/createQueueWorker.d.ts +0 -26
  288. package/packages/workers/src/createQueueWorker.d.ts.map +0 -1
  289. package/packages/workers/src/createQueueWorker.js +0 -367
  290. package/packages/workers/src/dashboard/index.d.ts +0 -2
  291. package/packages/workers/src/dashboard/index.d.ts.map +0 -1
  292. package/packages/workers/src/dashboard/index.js +0 -1
  293. package/packages/workers/src/dashboard/types.d.ts +0 -123
  294. package/packages/workers/src/dashboard/types.d.ts.map +0 -1
  295. package/packages/workers/src/dashboard/types.js +0 -1
  296. package/packages/workers/src/dashboard/workers-api.d.ts +0 -5
  297. package/packages/workers/src/dashboard/workers-api.d.ts.map +0 -1
  298. package/packages/workers/src/dashboard/workers-api.js +0 -738
  299. package/packages/workers/src/helper/index.d.ts +0 -6
  300. package/packages/workers/src/helper/index.d.ts.map +0 -1
  301. package/packages/workers/src/helper/index.js +0 -10
  302. package/packages/workers/src/http/WorkerApiController.d.ts +0 -39
  303. package/packages/workers/src/http/WorkerApiController.d.ts.map +0 -1
  304. package/packages/workers/src/http/WorkerApiController.js +0 -313
  305. package/packages/workers/src/http/WorkerController.d.ts +0 -375
  306. package/packages/workers/src/http/WorkerController.d.ts.map +0 -1
  307. package/packages/workers/src/http/WorkerController.js +0 -1454
  308. package/packages/workers/src/http/WorkerMonitoringService.d.ts +0 -12
  309. package/packages/workers/src/http/WorkerMonitoringService.d.ts.map +0 -1
  310. package/packages/workers/src/http/WorkerMonitoringService.js +0 -89
  311. package/packages/workers/src/http/middleware/CustomValidation.d.ts +0 -93
  312. package/packages/workers/src/http/middleware/CustomValidation.d.ts.map +0 -1
  313. package/packages/workers/src/http/middleware/CustomValidation.js +0 -270
  314. package/packages/workers/src/http/middleware/DatacenterValidator.d.ts +0 -4
  315. package/packages/workers/src/http/middleware/DatacenterValidator.d.ts.map +0 -1
  316. package/packages/workers/src/http/middleware/DatacenterValidator.js +0 -94
  317. package/packages/workers/src/http/middleware/EditWorkerValidation.d.ts +0 -8
  318. package/packages/workers/src/http/middleware/EditWorkerValidation.d.ts.map +0 -1
  319. package/packages/workers/src/http/middleware/EditWorkerValidation.js +0 -56
  320. package/packages/workers/src/http/middleware/FeaturesValidator.d.ts +0 -4
  321. package/packages/workers/src/http/middleware/FeaturesValidator.d.ts.map +0 -1
  322. package/packages/workers/src/http/middleware/FeaturesValidator.js +0 -61
  323. package/packages/workers/src/http/middleware/InfrastructureValidator.d.ts +0 -32
  324. package/packages/workers/src/http/middleware/InfrastructureValidator.d.ts.map +0 -1
  325. package/packages/workers/src/http/middleware/InfrastructureValidator.js +0 -226
  326. package/packages/workers/src/http/middleware/OptionsValidator.d.ts +0 -4
  327. package/packages/workers/src/http/middleware/OptionsValidator.d.ts.map +0 -1
  328. package/packages/workers/src/http/middleware/OptionsValidator.js +0 -112
  329. package/packages/workers/src/http/middleware/PayloadSanitizer.d.ts +0 -8
  330. package/packages/workers/src/http/middleware/PayloadSanitizer.d.ts.map +0 -1
  331. package/packages/workers/src/http/middleware/PayloadSanitizer.js +0 -42
  332. package/packages/workers/src/http/middleware/ProcessorPathSanitizer.d.ts +0 -4
  333. package/packages/workers/src/http/middleware/ProcessorPathSanitizer.d.ts.map +0 -1
  334. package/packages/workers/src/http/middleware/ProcessorPathSanitizer.js +0 -140
  335. package/packages/workers/src/http/middleware/QueueNameSanitizer.d.ts +0 -4
  336. package/packages/workers/src/http/middleware/QueueNameSanitizer.d.ts.map +0 -1
  337. package/packages/workers/src/http/middleware/QueueNameSanitizer.js +0 -45
  338. package/packages/workers/src/http/middleware/ValidateDriver.d.ts +0 -8
  339. package/packages/workers/src/http/middleware/ValidateDriver.d.ts.map +0 -1
  340. package/packages/workers/src/http/middleware/ValidateDriver.js +0 -20
  341. package/packages/workers/src/http/middleware/VersionSanitizer.d.ts +0 -4
  342. package/packages/workers/src/http/middleware/VersionSanitizer.d.ts.map +0 -1
  343. package/packages/workers/src/http/middleware/VersionSanitizer.js +0 -25
  344. package/packages/workers/src/http/middleware/WorkerNameSanitizer.d.ts +0 -4
  345. package/packages/workers/src/http/middleware/WorkerNameSanitizer.d.ts.map +0 -1
  346. package/packages/workers/src/http/middleware/WorkerNameSanitizer.js +0 -46
  347. package/packages/workers/src/http/middleware/WorkerValidationChain.d.ts +0 -28
  348. package/packages/workers/src/http/middleware/WorkerValidationChain.d.ts.map +0 -1
  349. package/packages/workers/src/http/middleware/WorkerValidationChain.js +0 -186
  350. package/packages/workers/src/index.d.ts +0 -47
  351. package/packages/workers/src/index.d.ts.map +0 -1
  352. package/packages/workers/src/index.js +0 -48
  353. package/packages/workers/src/routes/workers.d.ts +0 -13
  354. package/packages/workers/src/routes/workers.d.ts.map +0 -1
  355. package/packages/workers/src/routes/workers.js +0 -126
  356. package/packages/workers/src/storage/WorkerStore.d.ts +0 -52
  357. package/packages/workers/src/storage/WorkerStore.d.ts.map +0 -1
  358. package/packages/workers/src/storage/WorkerStore.js +0 -259
  359. package/packages/workers/src/telemetry/api/TelemetryAPI.d.ts +0 -47
  360. package/packages/workers/src/telemetry/api/TelemetryAPI.d.ts.map +0 -1
  361. package/packages/workers/src/telemetry/api/TelemetryAPI.js +0 -219
  362. package/packages/workers/src/telemetry/api/TelemetryMonitoringService.d.ts +0 -18
  363. package/packages/workers/src/telemetry/api/TelemetryMonitoringService.d.ts.map +0 -1
  364. package/packages/workers/src/telemetry/api/TelemetryMonitoringService.js +0 -140
  365. package/packages/workers/src/telemetry/components/AlertPanel.d.ts +0 -2
  366. package/packages/workers/src/telemetry/components/AlertPanel.d.ts.map +0 -1
  367. package/packages/workers/src/telemetry/components/AlertPanel.js +0 -13
  368. package/packages/workers/src/telemetry/components/CostTracking.d.ts +0 -2
  369. package/packages/workers/src/telemetry/components/CostTracking.d.ts.map +0 -1
  370. package/packages/workers/src/telemetry/components/CostTracking.js +0 -14
  371. package/packages/workers/src/telemetry/components/ResourceUsageChart.d.ts +0 -2
  372. package/packages/workers/src/telemetry/components/ResourceUsageChart.d.ts.map +0 -1
  373. package/packages/workers/src/telemetry/components/ResourceUsageChart.js +0 -11
  374. package/packages/workers/src/telemetry/components/WorkerHealthChart.d.ts +0 -2
  375. package/packages/workers/src/telemetry/components/WorkerHealthChart.d.ts.map +0 -1
  376. package/packages/workers/src/telemetry/components/WorkerHealthChart.js +0 -11
  377. package/packages/workers/src/telemetry/index.d.ts +0 -16
  378. package/packages/workers/src/telemetry/index.d.ts.map +0 -1
  379. package/packages/workers/src/telemetry/index.js +0 -60
  380. package/packages/workers/src/telemetry/routes/dashboard.d.ts +0 -7
  381. package/packages/workers/src/telemetry/routes/dashboard.d.ts.map +0 -1
  382. package/packages/workers/src/telemetry/routes/dashboard.js +0 -608
  383. package/packages/workers/src/type.d.ts +0 -77
  384. package/packages/workers/src/type.d.ts.map +0 -1
  385. package/packages/workers/src/type.js +0 -1
  386. package/packages/workers/src/ui/router/EmbeddedAssets.d.ts +0 -5
  387. package/packages/workers/src/ui/router/EmbeddedAssets.d.ts.map +0 -1
  388. package/packages/workers/src/ui/router/EmbeddedAssets.js +0 -13
  389. package/packages/workers/src/ui/router/ui.d.ts +0 -4
  390. package/packages/workers/src/ui/router/ui.d.ts.map +0 -1
  391. package/packages/workers/src/ui/router/ui.js +0 -208
  392. package/packages/workers/src/ui/types/worker-ui.d.ts +0 -230
  393. package/packages/workers/src/ui/types/worker-ui.d.ts.map +0 -1
  394. package/packages/workers/src/ui/types/worker-ui.js +0 -5
  395. package/routes/api.d.ts +0 -7
  396. package/routes/api.d.ts.map +0 -1
  397. package/routes/api.js +0 -129
  398. package/routes/broadcast.d.ts +0 -9
  399. package/routes/broadcast.d.ts.map +0 -1
  400. package/routes/broadcast.js +0 -27
  401. package/routes/storage.d.ts +0 -4
  402. package/routes/storage.d.ts.map +0 -1
  403. package/routes/storage.js +0 -35
@@ -1,424 +0,0 @@
1
- /**
2
- * Canary Deployment Controller
3
- * Gradual rollout with traffic percentage control and automatic rollback
4
- * Sealed namespace for immutability
5
- */
6
- import { ErrorFactory, Logger } from '../../../src/index.js';
7
- import { CircuitBreaker } from './CircuitBreaker.js';
8
- // Internal state
9
- const canaryDeployments = new Map();
10
- const canaryTimers = new Map();
11
- const MAX_HISTORY = 1000;
12
- /**
13
- * Helper: Calculate error rate
14
- */
15
- const calculateErrorRate = (processed, errors) => {
16
- if (processed === 0)
17
- return 0;
18
- return errors / processed;
19
- };
20
- /**
21
- * Helper: Calculate success rate
22
- */
23
- const calculateSuccessRate = (processed, errors) => {
24
- if (processed === 0)
25
- return 1;
26
- return (processed - errors) / processed;
27
- };
28
- /**
29
- * Helper: Should rollback based on metrics
30
- */
31
- const shouldRollback = (deployment) => {
32
- const { config, metrics } = deployment;
33
- const { canaryVersion } = metrics;
34
- // Check error threshold
35
- const errorRate = calculateErrorRate(canaryVersion.processed, canaryVersion.errors);
36
- if (errorRate > config.errorThreshold) {
37
- return {
38
- should: true,
39
- reason: `Error rate ${(errorRate * 100).toFixed(2)}% exceeds threshold ${(config.errorThreshold * 100).toFixed(2)}%`,
40
- };
41
- }
42
- // Check success rate
43
- const successRate = calculateSuccessRate(canaryVersion.processed, canaryVersion.errors);
44
- if (successRate < config.minSuccessRate) {
45
- return {
46
- should: true,
47
- reason: `Success rate ${(successRate * 100).toFixed(2)}% below minimum ${(config.minSuccessRate * 100).toFixed(2)}%`,
48
- };
49
- }
50
- // Check latency threshold
51
- if (canaryVersion.avgLatency > config.latencyThreshold) {
52
- return {
53
- should: true,
54
- reason: `P95 latency ${canaryVersion.avgLatency}ms exceeds threshold ${config.latencyThreshold}ms`,
55
- };
56
- }
57
- return { should: false };
58
- };
59
- /**
60
- * Helper: Increment traffic
61
- */
62
- const incrementTraffic = (workerName) => {
63
- const deployment = canaryDeployments.get(workerName);
64
- if (!deployment) {
65
- Logger.error('Canary deployment not found', { workerName });
66
- return;
67
- }
68
- const { config } = deployment;
69
- // Check if we should rollback
70
- const rollbackCheck = shouldRollback(deployment);
71
- if (rollbackCheck.should && config.autoRollback) {
72
- Logger.warn('Auto-rollback triggered', {
73
- workerName,
74
- reason: rollbackCheck.reason,
75
- });
76
- CanaryController.rollback(workerName, rollbackCheck.reason ?? '');
77
- return;
78
- }
79
- // Increment traffic
80
- const newTrafficPercent = Math.min(deployment.currentTrafficPercent + config.incrementPercent, config.targetTrafficPercent);
81
- deployment.currentTrafficPercent = newTrafficPercent;
82
- // Record history
83
- appendHistory(deployment, {
84
- timestamp: new Date(),
85
- trafficPercent: newTrafficPercent,
86
- stage: deployment.stage,
87
- metrics: { ...deployment.metrics },
88
- decision: `Traffic increased to ${newTrafficPercent}%`,
89
- });
90
- Logger.info('Canary traffic incremented', {
91
- workerName,
92
- trafficPercent: newTrafficPercent,
93
- targetPercent: config.targetTrafficPercent,
94
- });
95
- // Check if we've reached the target
96
- if (newTrafficPercent >= config.targetTrafficPercent) {
97
- deployment.stage = 'monitoring';
98
- // Wait for final monitoring period
99
- const existingCompleteTimer = canaryTimers.get(`${workerName}:complete`);
100
- if (existingCompleteTimer) {
101
- clearTimeout(existingCompleteTimer);
102
- canaryTimers.delete(`${workerName}:complete`);
103
- }
104
- // eslint-disable-next-line no-restricted-syntax
105
- const timer = setTimeout(() => {
106
- try {
107
- CanaryController.complete(workerName);
108
- }
109
- catch (error) {
110
- Logger.error('Error during canary completion callback', error);
111
- }
112
- finally {
113
- const current = canaryTimers.get(`${workerName}:complete`);
114
- if (current === timer) {
115
- canaryTimers.delete(`${workerName}:complete`);
116
- }
117
- }
118
- }, config.monitoringDuration * 1000);
119
- canaryTimers.set(`${workerName}:complete`, timer);
120
- }
121
- else {
122
- // Schedule next increment
123
- const existingTimer = canaryTimers.get(workerName);
124
- if (existingTimer) {
125
- clearTimeout(existingTimer);
126
- canaryTimers.delete(workerName);
127
- }
128
- // eslint-disable-next-line no-restricted-syntax
129
- const timer = setTimeout(() => {
130
- try {
131
- incrementTraffic(workerName);
132
- }
133
- catch (error) {
134
- Logger.error('Error during canary increment callback', error);
135
- }
136
- finally {
137
- const current = canaryTimers.get(workerName);
138
- if (current === timer) {
139
- canaryTimers.delete(workerName);
140
- }
141
- }
142
- }, config.incrementInterval * 1000);
143
- canaryTimers.set(workerName, timer);
144
- }
145
- };
146
- const appendHistory = (deployment, entry) => {
147
- deployment.history.push(entry);
148
- if (deployment.history.length > MAX_HISTORY) {
149
- deployment.history.splice(0, deployment.history.length - MAX_HISTORY);
150
- }
151
- };
152
- /**
153
- * Canary Deployment Controller - Sealed namespace
154
- */
155
- export const CanaryController = Object.freeze({
156
- /**
157
- * Start canary deployment
158
- */
159
- start(config) {
160
- const { workerName } = config;
161
- if (canaryDeployments.has(workerName)) {
162
- throw ErrorFactory.createGeneralError(`Canary deployment already in progress for "${workerName}"`);
163
- }
164
- // Validate config
165
- if (config.initialTrafficPercent < 0 || config.initialTrafficPercent > 100) {
166
- throw ErrorFactory.createValidationError('Initial traffic percent must be between 0 and 100');
167
- }
168
- if (config.targetTrafficPercent < config.initialTrafficPercent ||
169
- config.targetTrafficPercent > 100) {
170
- throw ErrorFactory.createValidationError('Target traffic percent must be >= initial and <= 100');
171
- }
172
- // Create deployment
173
- const deployment = {
174
- config,
175
- currentTrafficPercent: config.initialTrafficPercent,
176
- stage: 'initial',
177
- startedAt: new Date(),
178
- metrics: {
179
- currentVersion: { processed: 0, errors: 0, avgLatency: 0 },
180
- canaryVersion: { processed: 0, errors: 0, avgLatency: 0 },
181
- },
182
- history: [],
183
- };
184
- canaryDeployments.set(workerName, deployment);
185
- Logger.info('Canary deployment started', {
186
- workerName,
187
- currentVersion: config.currentVersion,
188
- canaryVersion: config.canaryVersion,
189
- initialTraffic: config.initialTrafficPercent,
190
- });
191
- // Start ramping up
192
- deployment.stage = 'ramping';
193
- // Schedule first increment
194
- const existingTimer = canaryTimers.get(workerName);
195
- if (existingTimer) {
196
- clearTimeout(existingTimer);
197
- canaryTimers.delete(workerName);
198
- }
199
- // eslint-disable-next-line no-restricted-syntax
200
- const timer = setTimeout(() => {
201
- try {
202
- incrementTraffic(workerName);
203
- }
204
- catch (error) {
205
- Logger.error('Error during canary start callback', error);
206
- }
207
- finally {
208
- const current = canaryTimers.get(workerName);
209
- if (current === timer) {
210
- canaryTimers.delete(workerName);
211
- }
212
- }
213
- }, config.monitoringDuration * 1000);
214
- canaryTimers.set(workerName, timer);
215
- },
216
- /**
217
- * Pause canary deployment
218
- */
219
- pause(workerName) {
220
- const deployment = canaryDeployments.get(workerName);
221
- if (!deployment) {
222
- throw ErrorFactory.createNotFoundError(`Canary deployment not found for "${workerName}"`);
223
- }
224
- // Clear timer
225
- const timer = canaryTimers.get(workerName);
226
- if (timer) {
227
- clearTimeout(timer);
228
- canaryTimers.delete(workerName);
229
- }
230
- Logger.info('Canary deployment paused', { workerName });
231
- },
232
- /**
233
- * Resume canary deployment
234
- */
235
- resume(workerName) {
236
- const deployment = canaryDeployments.get(workerName);
237
- if (!deployment) {
238
- throw ErrorFactory.createNotFoundError(`Canary deployment not found for "${workerName}"`);
239
- }
240
- // Resume incrementing
241
- const existingTimer = canaryTimers.get(workerName);
242
- if (existingTimer) {
243
- clearTimeout(existingTimer);
244
- canaryTimers.delete(workerName);
245
- }
246
- // eslint-disable-next-line no-restricted-syntax
247
- const timer = setTimeout(() => {
248
- try {
249
- incrementTraffic(workerName);
250
- }
251
- catch (error) {
252
- Logger.error('Error during canary resume callback', error);
253
- }
254
- finally {
255
- const current = canaryTimers.get(workerName);
256
- if (current === timer) {
257
- canaryTimers.delete(workerName);
258
- }
259
- }
260
- }, deployment.config.incrementInterval * 1000);
261
- canaryTimers.set(workerName, timer);
262
- Logger.info('Canary deployment resumed', { workerName });
263
- },
264
- /**
265
- * Complete canary deployment
266
- */
267
- complete(workerName) {
268
- const deployment = canaryDeployments.get(workerName);
269
- if (!deployment) {
270
- throw ErrorFactory.createNotFoundError(`Canary deployment not found for "${workerName}"`);
271
- }
272
- deployment.stage = 'completed';
273
- deployment.completedAt = new Date();
274
- // Clear timers
275
- const timer = canaryTimers.get(workerName);
276
- if (timer) {
277
- clearTimeout(timer);
278
- canaryTimers.delete(workerName);
279
- }
280
- const completeTimer = canaryTimers.get(`${workerName}:complete`);
281
- if (completeTimer) {
282
- clearTimeout(completeTimer);
283
- canaryTimers.delete(`${workerName}:complete`);
284
- }
285
- // Record completion in history
286
- appendHistory(deployment, {
287
- timestamp: new Date(),
288
- trafficPercent: deployment.currentTrafficPercent,
289
- stage: 'completed',
290
- metrics: { ...deployment.metrics },
291
- decision: 'Deployment completed successfully',
292
- });
293
- Logger.info('Canary deployment completed', {
294
- workerName,
295
- duration: deployment.completedAt.getTime() - deployment.startedAt.getTime(),
296
- });
297
- },
298
- /**
299
- * Rollback canary deployment
300
- */
301
- rollback(workerName, reason) {
302
- const deployment = canaryDeployments.get(workerName);
303
- if (!deployment) {
304
- throw ErrorFactory.createNotFoundError(`Canary deployment not found for "${workerName}"`);
305
- }
306
- deployment.stage = 'rolling-back';
307
- // Clear timers
308
- const timer = canaryTimers.get(workerName);
309
- if (timer) {
310
- clearTimeout(timer);
311
- canaryTimers.delete(workerName);
312
- }
313
- // Roll back traffic to 0%
314
- deployment.currentTrafficPercent = 0;
315
- // Record rollback in history
316
- appendHistory(deployment, {
317
- timestamp: new Date(),
318
- trafficPercent: 0,
319
- stage: 'rolling-back',
320
- metrics: { ...deployment.metrics },
321
- decision: `Rollback initiated: ${reason}`,
322
- });
323
- deployment.stage = 'failed';
324
- deployment.completedAt = new Date();
325
- Logger.error('Canary deployment rolled back', { workerName, reason });
326
- // Optional: Open circuit breaker for canary version
327
- CircuitBreaker.forceOpen(workerName, deployment.config.canaryVersion, reason);
328
- },
329
- /**
330
- * Get canary deployment status
331
- */
332
- getStatus(workerName) {
333
- const deployment = canaryDeployments.get(workerName);
334
- return deployment ? { ...deployment } : null;
335
- },
336
- /**
337
- * Update metrics for canary deployment
338
- */
339
- updateMetrics(workerName, version, processed, errors, avgLatency) {
340
- const deployment = canaryDeployments.get(workerName);
341
- if (!deployment) {
342
- return;
343
- }
344
- if (version === deployment.config.currentVersion) {
345
- deployment.metrics.currentVersion = { processed, errors, avgLatency };
346
- }
347
- else if (version === deployment.config.canaryVersion) {
348
- deployment.metrics.canaryVersion = { processed, errors, avgLatency };
349
- }
350
- },
351
- /**
352
- * Route job to version based on traffic percentage
353
- */
354
- routeJob(workerName) {
355
- const deployment = canaryDeployments.get(workerName);
356
- if (!deployment || deployment.stage === 'completed' || deployment.stage === 'failed') {
357
- return null; // No active canary
358
- }
359
- // Random routing based on traffic percentage
360
- const random = Math.random() * 100; // NOSONAR
361
- if (random < deployment.currentTrafficPercent) {
362
- return deployment.config.canaryVersion;
363
- }
364
- return deployment.config.currentVersion;
365
- },
366
- /**
367
- * List all canary deployments
368
- */
369
- listDeployments() {
370
- return Array.from(canaryDeployments.keys());
371
- },
372
- /**
373
- * Get deployment history
374
- */
375
- getHistory(workerName) {
376
- const deployment = canaryDeployments.get(workerName);
377
- return deployment ? [...deployment.history] : null;
378
- },
379
- /**
380
- * Remove completed/failed deployment
381
- */
382
- remove(workerName) {
383
- const deployment = canaryDeployments.get(workerName);
384
- if (!deployment) {
385
- throw ErrorFactory.createNotFoundError(`Canary deployment not found for "${workerName}"`);
386
- }
387
- if (deployment.stage !== 'completed' && deployment.stage !== 'failed') {
388
- throw ErrorFactory.createValidationError('Cannot remove active deployment. Pause or complete it first.');
389
- }
390
- canaryDeployments.delete(workerName);
391
- Logger.info('Canary deployment removed', { workerName });
392
- },
393
- /**
394
- * Purge deployment data (force cleanup)
395
- */
396
- purge(workerName) {
397
- const timer = canaryTimers.get(workerName);
398
- if (timer) {
399
- clearTimeout(timer);
400
- canaryTimers.delete(workerName);
401
- }
402
- const completionTimer = canaryTimers.get(`${workerName}:complete`);
403
- if (completionTimer) {
404
- clearTimeout(completionTimer);
405
- canaryTimers.delete(`${workerName}:complete`);
406
- }
407
- canaryDeployments.delete(workerName);
408
- Logger.info('Canary deployment purged', { workerName });
409
- },
410
- /**
411
- * Shutdown all canary deployments
412
- */
413
- shutdown() {
414
- Logger.info('CanaryController shutting down...');
415
- // Clear all timers
416
- for (const timer of canaryTimers.values()) {
417
- clearTimeout(timer);
418
- }
419
- canaryTimers.clear();
420
- canaryDeployments.clear();
421
- Logger.info('CanaryController shutdown complete');
422
- },
423
- });
424
- // Graceful shutdown handled by WorkerShutdown
@@ -1,80 +0,0 @@
1
- /**
2
- * Chaos Engineering
3
- * Controlled fault injection experiments for worker resilience testing
4
- * Sealed namespace for immutability
5
- */
6
- export interface IChaosExperiment {
7
- name: string;
8
- description: string;
9
- target: {
10
- workers?: string[];
11
- percentage?: number;
12
- };
13
- failure: {
14
- type: 'crash' | 'latency' | 'error' | 'resource';
15
- config: unknown;
16
- };
17
- duration: number;
18
- safetyLimits: {
19
- maxConcurrent: number;
20
- circuitBreaker: boolean;
21
- rollbackOn: string[];
22
- };
23
- }
24
- export type IChaosStatus = {
25
- id: string;
26
- name: string;
27
- state: 'defined' | 'running' | 'completed' | 'stopped' | 'failed';
28
- startedAt: Date | null;
29
- endedAt: Date | null;
30
- targetedWorkers: string[];
31
- failureType: IChaosExperiment['failure']['type'];
32
- };
33
- export type IChaosReport = {
34
- experimentId: string;
35
- summary: string;
36
- durationMs: number;
37
- targetedWorkers: string[];
38
- completedAt: Date | null;
39
- };
40
- export type IChaosComparison = {
41
- comparedIds: string[];
42
- running: number;
43
- completed: number;
44
- stopped: number;
45
- };
46
- /**
47
- * Chaos Engineering - Sealed namespace
48
- */
49
- export declare const ChaosEngineering: Readonly<{
50
- /**
51
- * Define a chaos experiment
52
- */
53
- defineExperiment(config: IChaosExperiment): string;
54
- /**
55
- * Start a chaos experiment
56
- */
57
- startExperiment(experimentId: string): Promise<void>;
58
- /**
59
- * Stop a chaos experiment
60
- */
61
- stopExperiment(experimentId: string): Promise<void>;
62
- /**
63
- * Get experiment status
64
- */
65
- getExperimentStatus(experimentId: string): IChaosStatus;
66
- /**
67
- * Failure injection helpers
68
- */
69
- injectCrash(workerName: string): void;
70
- injectLatency(workerName: string, delayMs: number): void;
71
- injectError(workerName: string, errorRate: number): void;
72
- injectResourceExhaustion(workerName: string, type: "cpu" | "memory"): void;
73
- /**
74
- * Analysis helpers
75
- */
76
- analyzeResilience(experimentId: string): IChaosReport;
77
- compareExperiments(ids: string[]): IChaosComparison;
78
- }>;
79
- export default ChaosEngineering;
80
- //# sourceMappingURL=ChaosEngineering.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ChaosEngineering.d.ts","sourceRoot":"","sources":["../../../../packages/workers/src/ChaosEngineering.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE;QACN,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,OAAO,EAAE;QACP,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;QACjD,MAAM,EAAE,OAAO,CAAC;KACjB,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE;QACZ,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,OAAO,CAAC;QACxB,UAAU,EAAE,MAAM,EAAE,CAAC;KACtB,CAAC;CACH;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;IAClE,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,IAAI,GAAG,IAAI,CAAC;IACrB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,WAAW,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,WAAW,EAAE,IAAI,GAAG,IAAI,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AA8FF;;GAEG;AACH,eAAO,MAAM,gBAAgB;IAC3B;;OAEG;6BACsB,gBAAgB,GAAG,MAAM;IAiBlD;;OAEG;kCACiC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwC1D;;OAEG;iCACgC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBzD;;OAEG;sCAC+B,MAAM,GAAG,YAAY;IASvD;;OAEG;4BACqB,MAAM,GAAG,IAAI;8BAMX,MAAM,WAAW,MAAM,GAAG,IAAI;4BAIhC,MAAM,aAAa,MAAM,GAAG,IAAI;yCASnB,MAAM,QAAQ,KAAK,GAAG,QAAQ,GAAG,IAAI;IAQ1E;;OAEG;oCAC6B,MAAM,GAAG,YAAY;4BAe7B,MAAM,EAAE,GAAG,gBAAgB;EAUnD,CAAC;AAEH,eAAe,gBAAgB,CAAC"}