@zintrust/core 0.1.42 → 0.1.43
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.
- package/app/Controllers/AuthController.d.ts +10 -0
- package/app/Controllers/AuthController.d.ts.map +1 -0
- package/app/Controllers/AuthController.js +201 -0
- package/app/Controllers/UserController.d.ts +9 -0
- package/app/Controllers/UserController.d.ts.map +1 -0
- package/app/Controllers/UserController.js +8 -0
- package/app/Controllers/UserQueryBuilderController.d.ts +16 -0
- package/app/Controllers/UserQueryBuilderController.d.ts.map +1 -0
- package/app/Controllers/UserQueryBuilderController.js +404 -0
- package/app/Middleware/ProfilerMiddleware.d.ts +12 -0
- package/app/Middleware/ProfilerMiddleware.d.ts.map +1 -0
- package/app/Middleware/ProfilerMiddleware.js +47 -0
- package/app/Middleware/index.d.ts +59 -0
- package/app/Middleware/index.d.ts.map +1 -0
- package/app/Middleware/index.js +215 -0
- package/app/Models/Post.d.ts +14 -0
- package/app/Models/Post.d.ts.map +1 -0
- package/app/Models/Post.js +27 -0
- package/app/Models/User.d.ts +14 -0
- package/app/Models/User.d.ts.map +1 -0
- package/app/Models/User.js +44 -0
- package/app/Schedules/JobTracking.d.ts +3 -0
- package/app/Schedules/JobTracking.d.ts.map +1 -0
- package/app/Schedules/JobTracking.js +13 -0
- package/app/Schedules/index.d.ts +2 -0
- package/app/Schedules/index.d.ts.map +1 -0
- package/app/Schedules/index.js +1 -0
- package/app/Toolkit/Broadcast/sendBroadcast.d.ts +6 -0
- package/app/Toolkit/Broadcast/sendBroadcast.d.ts.map +1 -0
- package/app/Toolkit/Broadcast/sendBroadcast.js +5 -0
- package/app/Toolkit/Mail/sendWelcomeEmail.d.ts +6 -0
- package/app/Toolkit/Mail/sendWelcomeEmail.d.ts.map +1 -0
- package/app/Toolkit/Mail/sendWelcomeEmail.js +20 -0
- package/app/Toolkit/Notification/sendSlackNotification.d.ts +8 -0
- package/app/Toolkit/Notification/sendSlackNotification.d.ts.map +1 -0
- package/app/Toolkit/Notification/sendSlackNotification.js +5 -0
- package/app/Toolkit/Notification/sendSms.d.ts +6 -0
- package/app/Toolkit/Notification/sendSms.d.ts.map +1 -0
- package/app/Toolkit/Notification/sendSms.js +5 -0
- package/app/Types/controller.d.ts +42 -0
- package/app/Types/controller.d.ts.map +1 -0
- package/app/Types/controller.js +1 -0
- package/config/broadcast.d.ts +38 -0
- package/config/broadcast.d.ts.map +1 -0
- package/config/broadcast.js +37 -0
- package/config/cache.d.ts +40 -0
- package/config/cache.d.ts.map +1 -0
- package/config/cache.js +39 -0
- package/config/database.d.ts +58 -0
- package/config/database.d.ts.map +1 -0
- package/config/database.js +65 -0
- package/config/mail.d.ts +51 -0
- package/config/mail.d.ts.map +1 -0
- package/config/mail.js +69 -0
- package/config/middleware.d.ts +11 -0
- package/config/middleware.d.ts.map +1 -0
- package/config/middleware.js +30 -0
- package/config/notification.d.ts +33 -0
- package/config/notification.d.ts.map +1 -0
- package/config/notification.js +33 -0
- package/config/queue.d.ts +55 -0
- package/config/queue.d.ts.map +1 -0
- package/config/queue.js +87 -0
- package/config/storage.d.ts +59 -0
- package/config/storage.d.ts.map +1 -0
- package/config/storage.js +59 -0
- package/config/workers.d.ts +54 -0
- package/config/workers.d.ts.map +1 -0
- package/config/workers.js +83 -0
- package/package.json +11 -5
- package/packages/cloudflare-d1-proxy/src/index.d.ts +48 -0
- package/packages/cloudflare-d1-proxy/src/index.d.ts.map +1 -0
- package/packages/cloudflare-d1-proxy/src/index.js +387 -0
- package/packages/cloudflare-kv-proxy/src/index.d.ts +44 -0
- package/packages/cloudflare-kv-proxy/src/index.d.ts.map +1 -0
- package/packages/cloudflare-kv-proxy/src/index.js +325 -0
- package/packages/queue-monitor/src/QueueMonitoringService.d.ts +35 -0
- package/packages/queue-monitor/src/QueueMonitoringService.d.ts.map +1 -0
- package/packages/queue-monitor/src/QueueMonitoringService.js +194 -0
- package/packages/queue-monitor/src/connection.d.ts +3 -0
- package/packages/queue-monitor/src/connection.d.ts.map +1 -0
- package/packages/queue-monitor/src/connection.js +1 -0
- package/packages/queue-monitor/src/dashboard-ui.d.ts +7 -0
- package/packages/queue-monitor/src/dashboard-ui.d.ts.map +1 -0
- package/packages/queue-monitor/src/dashboard-ui.js +997 -0
- package/packages/queue-monitor/src/driver.d.ts +15 -0
- package/packages/queue-monitor/src/driver.d.ts.map +1 -0
- package/packages/queue-monitor/src/driver.js +115 -0
- package/packages/queue-monitor/src/index.d.ts +71 -0
- package/packages/queue-monitor/src/index.d.ts.map +1 -0
- package/packages/queue-monitor/src/index.js +296 -0
- package/packages/queue-monitor/src/metrics.d.ts +27 -0
- package/packages/queue-monitor/src/metrics.d.ts.map +1 -0
- package/packages/queue-monitor/src/metrics.js +92 -0
- package/packages/queue-monitor/src/worker.d.ts +8 -0
- package/packages/queue-monitor/src/worker.d.ts.map +1 -0
- package/packages/queue-monitor/src/worker.js +35 -0
- package/packages/queue-redis/src/BullMQRedisQueue.d.ts +26 -0
- package/packages/queue-redis/src/BullMQRedisQueue.d.ts.map +1 -0
- package/packages/queue-redis/src/BullMQRedisQueue.js +463 -0
- package/packages/queue-redis/src/HttpQueueDriver.d.ts +18 -0
- package/packages/queue-redis/src/HttpQueueDriver.d.ts.map +1 -0
- package/packages/queue-redis/src/HttpQueueDriver.js +249 -0
- package/packages/queue-redis/src/QueueHttpGateway.d.ts +16 -0
- package/packages/queue-redis/src/QueueHttpGateway.d.ts.map +1 -0
- package/packages/queue-redis/src/QueueHttpGateway.js +217 -0
- package/packages/queue-redis/src/RedisPublishClient.d.ts +14 -0
- package/packages/queue-redis/src/RedisPublishClient.d.ts.map +1 -0
- package/packages/queue-redis/src/RedisPublishClient.js +251 -0
- package/packages/queue-redis/src/index.d.ts +12 -0
- package/packages/queue-redis/src/index.d.ts.map +1 -0
- package/packages/queue-redis/src/index.js +10 -0
- package/packages/queue-redis/src/register.d.ts +6 -0
- package/packages/queue-redis/src/register.d.ts.map +1 -0
- package/packages/queue-redis/src/register.js +21 -0
- package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.d.ts +11 -0
- package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.d.ts.map +1 -0
- package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.js +32 -0
- package/packages/workers/migrations/20260123180000_create_queue_jobs_table.d.ts +11 -0
- package/packages/workers/migrations/20260123180000_create_queue_jobs_table.d.ts.map +1 -0
- package/packages/workers/migrations/20260123180000_create_queue_jobs_table.js +46 -0
- package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.d.ts +7 -0
- package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.d.ts.map +1 -0
- package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.js +44 -0
- package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.d.ts +7 -0
- package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.d.ts.map +1 -0
- package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.js +104 -0
- package/packages/workers/src/AnomalyDetection.d.ts +107 -0
- package/packages/workers/src/AnomalyDetection.d.ts.map +1 -0
- package/packages/workers/src/AnomalyDetection.js +329 -0
- package/packages/workers/src/AutoScaler.d.ts +128 -0
- package/packages/workers/src/AutoScaler.d.ts.map +1 -0
- package/packages/workers/src/AutoScaler.js +425 -0
- package/packages/workers/src/BroadcastWorker.d.ts +24 -0
- package/packages/workers/src/BroadcastWorker.d.ts.map +1 -0
- package/packages/workers/src/BroadcastWorker.js +24 -0
- package/packages/workers/src/CanaryController.d.ts +104 -0
- package/packages/workers/src/CanaryController.d.ts.map +1 -0
- package/packages/workers/src/CanaryController.js +424 -0
- package/packages/workers/src/ChaosEngineering.d.ts +80 -0
- package/packages/workers/src/ChaosEngineering.d.ts.map +1 -0
- package/packages/workers/src/ChaosEngineering.js +229 -0
- package/packages/workers/src/CircuitBreaker.d.ts +107 -0
- package/packages/workers/src/CircuitBreaker.d.ts.map +1 -0
- package/packages/workers/src/CircuitBreaker.js +374 -0
- package/packages/workers/src/ClusterLock.d.ts +91 -0
- package/packages/workers/src/ClusterLock.d.ts.map +1 -0
- package/packages/workers/src/ClusterLock.js +397 -0
- package/packages/workers/src/ComplianceManager.d.ts +178 -0
- package/packages/workers/src/ComplianceManager.d.ts.map +1 -0
- package/packages/workers/src/ComplianceManager.js +556 -0
- package/packages/workers/src/DatacenterOrchestrator.d.ts +134 -0
- package/packages/workers/src/DatacenterOrchestrator.d.ts.map +1 -0
- package/packages/workers/src/DatacenterOrchestrator.js +404 -0
- package/packages/workers/src/DeadLetterQueue.d.ts +123 -0
- package/packages/workers/src/DeadLetterQueue.d.ts.map +1 -0
- package/packages/workers/src/DeadLetterQueue.js +544 -0
- package/packages/workers/src/HealthMonitor.d.ts +43 -0
- package/packages/workers/src/HealthMonitor.d.ts.map +1 -0
- package/packages/workers/src/HealthMonitor.js +312 -0
- package/packages/workers/src/MultiQueueWorker.d.ts +90 -0
- package/packages/workers/src/MultiQueueWorker.d.ts.map +1 -0
- package/packages/workers/src/MultiQueueWorker.js +282 -0
- package/packages/workers/src/NotificationWorker.d.ts +24 -0
- package/packages/workers/src/NotificationWorker.d.ts.map +1 -0
- package/packages/workers/src/NotificationWorker.js +23 -0
- package/packages/workers/src/Observability.d.ts +154 -0
- package/packages/workers/src/Observability.d.ts.map +1 -0
- package/packages/workers/src/Observability.js +538 -0
- package/packages/workers/src/PluginManager.d.ts +124 -0
- package/packages/workers/src/PluginManager.d.ts.map +1 -0
- package/packages/workers/src/PluginManager.js +392 -0
- package/packages/workers/src/PriorityQueue.d.ts +118 -0
- package/packages/workers/src/PriorityQueue.d.ts.map +1 -0
- package/packages/workers/src/PriorityQueue.js +276 -0
- package/packages/workers/src/ResourceMonitor.d.ts +165 -0
- package/packages/workers/src/ResourceMonitor.d.ts.map +1 -0
- package/packages/workers/src/ResourceMonitor.js +632 -0
- package/packages/workers/src/SLAMonitor.d.ts +111 -0
- package/packages/workers/src/SLAMonitor.d.ts.map +1 -0
- package/packages/workers/src/SLAMonitor.js +274 -0
- package/packages/workers/src/WorkerFactory.d.ts +218 -0
- package/packages/workers/src/WorkerFactory.d.ts.map +1 -0
- package/packages/workers/src/WorkerFactory.js +2253 -0
- package/packages/workers/src/WorkerInit.d.ts +86 -0
- package/packages/workers/src/WorkerInit.d.ts.map +1 -0
- package/packages/workers/src/WorkerInit.js +307 -0
- package/packages/workers/src/WorkerMetrics.d.ts +116 -0
- package/packages/workers/src/WorkerMetrics.d.ts.map +1 -0
- package/packages/workers/src/WorkerMetrics.js +570 -0
- package/packages/workers/src/WorkerRegistry.d.ts +152 -0
- package/packages/workers/src/WorkerRegistry.d.ts.map +1 -0
- package/packages/workers/src/WorkerRegistry.js +396 -0
- package/packages/workers/src/WorkerShutdown.d.ts +70 -0
- package/packages/workers/src/WorkerShutdown.d.ts.map +1 -0
- package/packages/workers/src/WorkerShutdown.js +185 -0
- package/packages/workers/src/WorkerVersioning.d.ts +108 -0
- package/packages/workers/src/WorkerVersioning.d.ts.map +1 -0
- package/packages/workers/src/WorkerVersioning.js +300 -0
- package/packages/workers/src/config/workerConfig.d.ts +5 -0
- package/packages/workers/src/config/workerConfig.d.ts.map +1 -0
- package/packages/workers/src/config/workerConfig.js +25 -0
- package/packages/workers/src/createQueueWorker.d.ts +26 -0
- package/packages/workers/src/createQueueWorker.d.ts.map +1 -0
- package/packages/workers/src/createQueueWorker.js +367 -0
- package/packages/workers/src/dashboard/index.d.ts +2 -0
- package/packages/workers/src/dashboard/index.d.ts.map +1 -0
- package/packages/workers/src/dashboard/index.js +1 -0
- package/packages/workers/src/dashboard/types.d.ts +123 -0
- package/packages/workers/src/dashboard/types.d.ts.map +1 -0
- package/packages/workers/src/dashboard/types.js +1 -0
- package/packages/workers/src/dashboard/workers-api.d.ts +5 -0
- package/packages/workers/src/dashboard/workers-api.d.ts.map +1 -0
- package/packages/workers/src/dashboard/workers-api.js +738 -0
- package/packages/workers/src/helper/index.d.ts +6 -0
- package/packages/workers/src/helper/index.d.ts.map +1 -0
- package/packages/workers/src/helper/index.js +10 -0
- package/packages/workers/src/http/WorkerApiController.d.ts +39 -0
- package/packages/workers/src/http/WorkerApiController.d.ts.map +1 -0
- package/packages/workers/src/http/WorkerApiController.js +313 -0
- package/packages/workers/src/http/WorkerController.d.ts +375 -0
- package/packages/workers/src/http/WorkerController.d.ts.map +1 -0
- package/packages/workers/src/http/WorkerController.js +1454 -0
- package/packages/workers/src/http/WorkerMonitoringService.d.ts +12 -0
- package/packages/workers/src/http/WorkerMonitoringService.d.ts.map +1 -0
- package/packages/workers/src/http/WorkerMonitoringService.js +89 -0
- package/packages/workers/src/http/middleware/CustomValidation.d.ts +93 -0
- package/packages/workers/src/http/middleware/CustomValidation.d.ts.map +1 -0
- package/packages/workers/src/http/middleware/CustomValidation.js +270 -0
- package/packages/workers/src/http/middleware/DatacenterValidator.d.ts +4 -0
- package/packages/workers/src/http/middleware/DatacenterValidator.d.ts.map +1 -0
- package/packages/workers/src/http/middleware/DatacenterValidator.js +94 -0
- package/packages/workers/src/http/middleware/EditWorkerValidation.d.ts +8 -0
- package/packages/workers/src/http/middleware/EditWorkerValidation.d.ts.map +1 -0
- package/packages/workers/src/http/middleware/EditWorkerValidation.js +56 -0
- package/packages/workers/src/http/middleware/FeaturesValidator.d.ts +4 -0
- package/packages/workers/src/http/middleware/FeaturesValidator.d.ts.map +1 -0
- package/packages/workers/src/http/middleware/FeaturesValidator.js +60 -0
- package/packages/workers/src/http/middleware/InfrastructureValidator.d.ts +32 -0
- package/packages/workers/src/http/middleware/InfrastructureValidator.d.ts.map +1 -0
- package/packages/workers/src/http/middleware/InfrastructureValidator.js +226 -0
- package/packages/workers/src/http/middleware/OptionsValidator.d.ts +4 -0
- package/packages/workers/src/http/middleware/OptionsValidator.d.ts.map +1 -0
- package/packages/workers/src/http/middleware/OptionsValidator.js +112 -0
- package/packages/workers/src/http/middleware/PayloadSanitizer.d.ts +8 -0
- package/packages/workers/src/http/middleware/PayloadSanitizer.d.ts.map +1 -0
- package/packages/workers/src/http/middleware/PayloadSanitizer.js +42 -0
- package/packages/workers/src/http/middleware/ProcessorPathSanitizer.d.ts +4 -0
- package/packages/workers/src/http/middleware/ProcessorPathSanitizer.d.ts.map +1 -0
- package/packages/workers/src/http/middleware/ProcessorPathSanitizer.js +140 -0
- package/packages/workers/src/http/middleware/QueueNameSanitizer.d.ts +4 -0
- package/packages/workers/src/http/middleware/QueueNameSanitizer.d.ts.map +1 -0
- package/packages/workers/src/http/middleware/QueueNameSanitizer.js +45 -0
- package/packages/workers/src/http/middleware/ValidateDriver.d.ts +8 -0
- package/packages/workers/src/http/middleware/ValidateDriver.d.ts.map +1 -0
- package/packages/workers/src/http/middleware/ValidateDriver.js +20 -0
- package/packages/workers/src/http/middleware/VersionSanitizer.d.ts +4 -0
- package/packages/workers/src/http/middleware/VersionSanitizer.d.ts.map +1 -0
- package/packages/workers/src/http/middleware/VersionSanitizer.js +25 -0
- package/packages/workers/src/http/middleware/WorkerNameSanitizer.d.ts +4 -0
- package/packages/workers/src/http/middleware/WorkerNameSanitizer.d.ts.map +1 -0
- package/packages/workers/src/http/middleware/WorkerNameSanitizer.js +46 -0
- package/packages/workers/src/http/middleware/WorkerValidationChain.d.ts +28 -0
- package/packages/workers/src/http/middleware/WorkerValidationChain.d.ts.map +1 -0
- package/packages/workers/src/http/middleware/WorkerValidationChain.js +186 -0
- package/packages/workers/src/index.d.ts +47 -0
- package/packages/workers/src/index.d.ts.map +1 -0
- package/packages/workers/src/index.js +48 -0
- package/packages/workers/src/routes/workers.d.ts +13 -0
- package/packages/workers/src/routes/workers.d.ts.map +1 -0
- package/packages/workers/src/routes/workers.js +126 -0
- package/packages/workers/src/storage/WorkerStore.d.ts +52 -0
- package/packages/workers/src/storage/WorkerStore.d.ts.map +1 -0
- package/packages/workers/src/storage/WorkerStore.js +259 -0
- package/packages/workers/src/telemetry/api/TelemetryAPI.d.ts +47 -0
- package/packages/workers/src/telemetry/api/TelemetryAPI.d.ts.map +1 -0
- package/packages/workers/src/telemetry/api/TelemetryAPI.js +219 -0
- package/packages/workers/src/telemetry/api/TelemetryMonitoringService.d.ts +18 -0
- package/packages/workers/src/telemetry/api/TelemetryMonitoringService.d.ts.map +1 -0
- package/packages/workers/src/telemetry/api/TelemetryMonitoringService.js +140 -0
- package/packages/workers/src/telemetry/components/AlertPanel.d.ts +2 -0
- package/packages/workers/src/telemetry/components/AlertPanel.d.ts.map +1 -0
- package/packages/workers/src/telemetry/components/AlertPanel.js +13 -0
- package/packages/workers/src/telemetry/components/CostTracking.d.ts +2 -0
- package/packages/workers/src/telemetry/components/CostTracking.d.ts.map +1 -0
- package/packages/workers/src/telemetry/components/CostTracking.js +14 -0
- package/packages/workers/src/telemetry/components/ResourceUsageChart.d.ts +2 -0
- package/packages/workers/src/telemetry/components/ResourceUsageChart.d.ts.map +1 -0
- package/packages/workers/src/telemetry/components/ResourceUsageChart.js +11 -0
- package/packages/workers/src/telemetry/components/WorkerHealthChart.d.ts +2 -0
- package/packages/workers/src/telemetry/components/WorkerHealthChart.d.ts.map +1 -0
- package/packages/workers/src/telemetry/components/WorkerHealthChart.js +11 -0
- package/packages/workers/src/telemetry/index.d.ts +16 -0
- package/packages/workers/src/telemetry/index.d.ts.map +1 -0
- package/packages/workers/src/telemetry/index.js +60 -0
- package/packages/workers/src/telemetry/routes/dashboard.d.ts +7 -0
- package/packages/workers/src/telemetry/routes/dashboard.d.ts.map +1 -0
- package/packages/workers/src/telemetry/routes/dashboard.js +608 -0
- package/packages/workers/src/type.d.ts +77 -0
- package/packages/workers/src/type.d.ts.map +1 -0
- package/packages/workers/src/type.js +1 -0
- package/packages/workers/src/ui/router/EmbeddedAssets.d.ts +5 -0
- package/packages/workers/src/ui/router/EmbeddedAssets.d.ts.map +1 -0
- package/packages/workers/src/ui/router/EmbeddedAssets.js +13 -0
- package/packages/workers/src/ui/router/ui.d.ts +4 -0
- package/packages/workers/src/ui/router/ui.d.ts.map +1 -0
- package/packages/workers/src/ui/router/ui.js +208 -0
- package/packages/workers/src/ui/types/worker-ui.d.ts +230 -0
- package/packages/workers/src/ui/types/worker-ui.d.ts.map +1 -0
- package/packages/workers/src/ui/types/worker-ui.js +5 -0
- package/routes/api.d.ts +7 -0
- package/routes/api.d.ts.map +1 -0
- package/routes/api.js +129 -0
- package/routes/broadcast.d.ts +9 -0
- package/routes/broadcast.d.ts.map +1 -0
- package/routes/broadcast.js +27 -0
- package/routes/storage.d.ts +4 -0
- package/routes/storage.d.ts.map +1 -0
- package/routes/storage.js +35 -0
- package/src/cache/Cache.d.ts.map +1 -1
- package/src/cache/Cache.js +40 -8
- package/src/cache/drivers/KVRemoteDriver.d.ts +1 -1
- package/src/cache/drivers/KVRemoteDriver.d.ts.map +1 -1
- package/src/cache/drivers/KVRemoteDriver.js +259 -44
- package/src/cache/drivers/MemoryDriver.d.ts.map +1 -1
- package/src/cache/drivers/MemoryDriver.js +10 -2
- package/src/cache/drivers/RedisDriver.d.ts.map +1 -1
- package/src/cache/drivers/RedisDriver.js +256 -33
- package/src/cli/commands/InitContainerCommand.js +10 -10
- package/src/cli/commands/NewCommand.d.ts.map +1 -1
- package/src/cli/commands/NewCommand.js +33 -0
- package/src/cli/commands/StartCommand.d.ts.map +1 -1
- package/src/cli/commands/StartCommand.js +23 -1
- package/src/cli/scaffolding/ProjectScaffolder.d.ts.map +1 -1
- package/src/cli/scaffolding/ProjectScaffolder.js +65 -73
- package/src/cli/utils/DistPackager.d.ts.map +1 -1
- package/src/cli/utils/DistPackager.js +25 -0
- package/src/cli/utils/EnvFileLoader.d.ts +1 -0
- package/src/cli/utils/EnvFileLoader.d.ts.map +1 -1
- package/src/cli/utils/EnvFileLoader.js +14 -0
- package/src/common/RemoteSignedJson.d.ts.map +1 -1
- package/src/common/RemoteSignedJson.js +9 -2
- package/src/config/cache.js +1 -1
- package/src/config/env.d.ts +7 -0
- package/src/config/env.d.ts.map +1 -1
- package/src/config/env.js +8 -0
- package/src/config/queue.js +1 -1
- package/src/functions/cloudflare.d.ts.map +1 -1
- package/src/functions/cloudflare.js +4 -2
- package/src/index.js +3 -3
- package/src/middleware/JwtAuthMiddleware.d.ts.map +1 -1
- package/src/middleware/JwtAuthMiddleware.js +11 -5
- package/src/runtime/RuntimeAdapter.d.ts.map +1 -1
- package/src/runtime/RuntimeAdapter.js +30 -12
- package/src/runtime/adapters/CloudflareAdapter.d.ts.map +1 -1
- package/src/runtime/adapters/CloudflareAdapter.js +15 -4
- package/src/scheduler/Schedule.js +1 -1
- package/src/scheduler/leader/SchedulerLeader.js +1 -1
- package/src/schedules/job-tracking-cleanup.js +1 -1
- package/src/security/TokenRevocation.d.ts +19 -2
- package/src/security/TokenRevocation.d.ts.map +1 -1
- package/src/security/TokenRevocation.js +558 -30
- package/src/templates/project/basic/app/Controllers/AuthController.ts.tpl +11 -3
- package/src/templates/project/basic/config/middleware.ts.tpl +23 -22
- package/src/templates/project/basic/wrangler.jsonc.tpl +28 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Env } from '../src/config/env.js';
|
|
2
|
+
/**
|
|
3
|
+
* Broadcast Configuration (default override)
|
|
4
|
+
*
|
|
5
|
+
* Keep this file declarative:
|
|
6
|
+
* - Core owns env parsing/default logic.
|
|
7
|
+
* - Projects can override config by editing values below.
|
|
8
|
+
*/
|
|
9
|
+
export default {
|
|
10
|
+
default: Env.get('BROADCAST_CONNECTION', Env.get('BROADCAST_DRIVER', 'inmemory')),
|
|
11
|
+
drivers: {
|
|
12
|
+
inmemory: {
|
|
13
|
+
driver: 'inmemory',
|
|
14
|
+
},
|
|
15
|
+
pusher: {
|
|
16
|
+
driver: 'pusher',
|
|
17
|
+
appId: Env.get('PUSHER_APP_ID', ''),
|
|
18
|
+
key: Env.get('PUSHER_APP_KEY', ''),
|
|
19
|
+
secret: Env.get('PUSHER_APP_SECRET', ''),
|
|
20
|
+
cluster: Env.get('PUSHER_APP_CLUSTER', ''),
|
|
21
|
+
useTLS: Env.getBool('PUSHER_USE_TLS', true),
|
|
22
|
+
},
|
|
23
|
+
redis: {
|
|
24
|
+
driver: 'redis',
|
|
25
|
+
host: Env.get('BROADCAST_REDIS_HOST', Env.get('REDIS_HOST', 'localhost')),
|
|
26
|
+
port: Env.getInt('BROADCAST_REDIS_PORT', Env.getInt('REDIS_PORT', 6379)),
|
|
27
|
+
password: Env.get('BROADCAST_REDIS_PASSWORD', Env.get('REDIS_PASSWORD', '')),
|
|
28
|
+
channelPrefix: Env.get('BROADCAST_CHANNEL_PREFIX', 'broadcast:'),
|
|
29
|
+
},
|
|
30
|
+
redishttps: {
|
|
31
|
+
driver: 'redishttps',
|
|
32
|
+
endpoint: Env.get('REDIS_HTTPS_ENDPOINT', ''),
|
|
33
|
+
token: Env.get('REDIS_HTTPS_TOKEN', ''),
|
|
34
|
+
channelPrefix: Env.get('BROADCAST_CHANNEL_PREFIX', 'broadcast:'),
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cache Configuration (default override)
|
|
3
|
+
*
|
|
4
|
+
* Keep this file declarative:
|
|
5
|
+
* - Core owns env parsing/default logic.
|
|
6
|
+
* - Projects can override config by editing values below.
|
|
7
|
+
*/
|
|
8
|
+
declare const _default: {
|
|
9
|
+
default: string;
|
|
10
|
+
drivers: {
|
|
11
|
+
memory: {
|
|
12
|
+
driver: "memory";
|
|
13
|
+
ttl: number;
|
|
14
|
+
};
|
|
15
|
+
redis: {
|
|
16
|
+
driver: "redis";
|
|
17
|
+
host: string;
|
|
18
|
+
port: number;
|
|
19
|
+
ttl: number;
|
|
20
|
+
};
|
|
21
|
+
mongodb: {
|
|
22
|
+
driver: "mongodb";
|
|
23
|
+
uri: string;
|
|
24
|
+
db: string;
|
|
25
|
+
ttl: number;
|
|
26
|
+
};
|
|
27
|
+
kv: {
|
|
28
|
+
driver: "kv";
|
|
29
|
+
ttl: number;
|
|
30
|
+
};
|
|
31
|
+
'kv-remote': {
|
|
32
|
+
driver: "kv-remote";
|
|
33
|
+
ttl: number;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
keyPrefix: string;
|
|
37
|
+
ttl: number;
|
|
38
|
+
};
|
|
39
|
+
export default _default;
|
|
40
|
+
//# sourceMappingURL=cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../config/cache.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,wBA8BiC"}
|
package/config/cache.js
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Env } from '../src/config/env.js';
|
|
2
|
+
/**
|
|
3
|
+
* Cache Configuration (default override)
|
|
4
|
+
*
|
|
5
|
+
* Keep this file declarative:
|
|
6
|
+
* - Core owns env parsing/default logic.
|
|
7
|
+
* - Projects can override config by editing values below.
|
|
8
|
+
*/
|
|
9
|
+
export default {
|
|
10
|
+
default: Env.get('CACHE_CONNECTION', Env.get('CACHE_DRIVER', 'memory')).trim().toLowerCase(),
|
|
11
|
+
drivers: {
|
|
12
|
+
memory: {
|
|
13
|
+
driver: 'memory',
|
|
14
|
+
ttl: Env.getInt('CACHE_MEMORY_TTL', 3600),
|
|
15
|
+
},
|
|
16
|
+
redis: {
|
|
17
|
+
driver: 'redis',
|
|
18
|
+
host: Env.get('REDIS_HOST', 'localhost'),
|
|
19
|
+
port: Env.getInt('REDIS_PORT', 6379),
|
|
20
|
+
ttl: Env.getInt('CACHE_REDIS_TTL', 3600),
|
|
21
|
+
},
|
|
22
|
+
mongodb: {
|
|
23
|
+
driver: 'mongodb',
|
|
24
|
+
uri: Env.get('MONGO_URI', ''),
|
|
25
|
+
db: Env.get('MONGO_DB', 'zintrust_cache'),
|
|
26
|
+
ttl: Env.getInt('CACHE_MONGO_TTL', 3600),
|
|
27
|
+
},
|
|
28
|
+
kv: {
|
|
29
|
+
driver: 'kv',
|
|
30
|
+
ttl: Env.getInt('CACHE_KV_TTL', 3600),
|
|
31
|
+
},
|
|
32
|
+
'kv-remote': {
|
|
33
|
+
driver: 'kv-remote',
|
|
34
|
+
ttl: Env.getInt('CACHE_KV_TTL', 3600),
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
keyPrefix: Env.get('CACHE_KEY_PREFIX', 'zintrust:'),
|
|
38
|
+
ttl: Env.getInt('CACHE_TTL', 3600),
|
|
39
|
+
};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
default: string;
|
|
3
|
+
connections: {
|
|
4
|
+
sqlite: {
|
|
5
|
+
driver: "sqlite";
|
|
6
|
+
database: string;
|
|
7
|
+
migrations: string;
|
|
8
|
+
};
|
|
9
|
+
d1: {
|
|
10
|
+
driver: "d1";
|
|
11
|
+
};
|
|
12
|
+
'd1-remote': {
|
|
13
|
+
driver: "d1-remote";
|
|
14
|
+
};
|
|
15
|
+
postgresql: {
|
|
16
|
+
driver: "postgresql";
|
|
17
|
+
host: string;
|
|
18
|
+
port: number;
|
|
19
|
+
database: string;
|
|
20
|
+
username: string;
|
|
21
|
+
password: string;
|
|
22
|
+
ssl: boolean;
|
|
23
|
+
readHosts: string[] | undefined;
|
|
24
|
+
pooling: {
|
|
25
|
+
enabled: boolean;
|
|
26
|
+
min: number;
|
|
27
|
+
max: number;
|
|
28
|
+
idleTimeout: number;
|
|
29
|
+
connectionTimeout: number;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
mysql: {
|
|
33
|
+
driver: "mysql";
|
|
34
|
+
host: string;
|
|
35
|
+
port: number;
|
|
36
|
+
database: string;
|
|
37
|
+
username: string;
|
|
38
|
+
password: string;
|
|
39
|
+
readHosts: string[] | undefined;
|
|
40
|
+
pooling: {
|
|
41
|
+
enabled: boolean;
|
|
42
|
+
min: number;
|
|
43
|
+
max: number;
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
sqlserver: {
|
|
47
|
+
driver: "sqlserver";
|
|
48
|
+
host: string;
|
|
49
|
+
port: number;
|
|
50
|
+
database: string;
|
|
51
|
+
username: string;
|
|
52
|
+
password: string;
|
|
53
|
+
readHosts: string[] | undefined;
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
export default _default;
|
|
58
|
+
//# sourceMappingURL=database.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../config/database.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+FA,wBAGoC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Env } from '../src/config/env.js';
|
|
2
|
+
const parseReadHosts = (raw) => {
|
|
3
|
+
const list = String(raw ?? '')
|
|
4
|
+
.split(',')
|
|
5
|
+
.map((v) => v.trim())
|
|
6
|
+
.filter((v) => v.length > 0);
|
|
7
|
+
return list.length > 0 ? list : undefined;
|
|
8
|
+
};
|
|
9
|
+
const connections = {
|
|
10
|
+
sqlite: {
|
|
11
|
+
driver: 'sqlite',
|
|
12
|
+
database: Env.get('DB_DATABASE_SQLITE', '.zintrust/dbs/zintrust.sqlite'),
|
|
13
|
+
migrations: 'database/migrations',
|
|
14
|
+
},
|
|
15
|
+
d1: {
|
|
16
|
+
driver: 'd1',
|
|
17
|
+
},
|
|
18
|
+
'd1-remote': {
|
|
19
|
+
driver: 'd1-remote',
|
|
20
|
+
},
|
|
21
|
+
postgresql: {
|
|
22
|
+
driver: 'postgresql',
|
|
23
|
+
host: Env.get('DB_HOST', 'localhost'),
|
|
24
|
+
port: Env.getInt('DB_PORT_POSTGRESQL', 5432),
|
|
25
|
+
database: Env.get('DB_DATABASE_POSTGRESQL', 'postgres'),
|
|
26
|
+
username: Env.get('DB_USERNAME_POSTGRESQL', 'postgres'),
|
|
27
|
+
password: Env.get('DB_PASSWORD_POSTGRESQL', 'pass'),
|
|
28
|
+
ssl: Env.getBool('DB_SSL', false),
|
|
29
|
+
readHosts: parseReadHosts(Env.get('DB_READ_HOSTS_POSTGRESQL', '127.0.0.1')),
|
|
30
|
+
pooling: {
|
|
31
|
+
enabled: Env.getBool('DB_POOLING', true),
|
|
32
|
+
min: Env.getInt('DB_POOL_MIN', 5),
|
|
33
|
+
max: Env.getInt('DB_POOL_MAX', 20),
|
|
34
|
+
idleTimeout: Env.getInt('DB_IDLE_TIMEOUT', 30000),
|
|
35
|
+
connectionTimeout: Env.getInt('DB_CONNECTION_TIMEOUT', 10000),
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
mysql: {
|
|
39
|
+
driver: 'mysql',
|
|
40
|
+
host: Env.get('DB_HOST', 'localhost'),
|
|
41
|
+
port: Env.getInt('DB_PORT', 3306),
|
|
42
|
+
database: Env.get('DB_DATABASE', 'zintrust'),
|
|
43
|
+
username: Env.get('DB_USERNAME', 'root'),
|
|
44
|
+
password: Env.get('DB_PASSWORD', 'pass'),
|
|
45
|
+
readHosts: parseReadHosts(Env.get('DB_READ_HOSTS', '127.0.0.1')),
|
|
46
|
+
pooling: {
|
|
47
|
+
enabled: Env.getBool('DB_POOLING', true),
|
|
48
|
+
min: Env.getInt('DB_POOL_MIN', 5),
|
|
49
|
+
max: Env.getInt('DB_POOL_MAX', 20),
|
|
50
|
+
},
|
|
51
|
+
},
|
|
52
|
+
sqlserver: {
|
|
53
|
+
driver: 'sqlserver',
|
|
54
|
+
host: Env.get('DB_HOST_MSSQL', Env.get('DB_HOST', 'localhost')),
|
|
55
|
+
port: Env.getInt('DB_PORT_MSSQL', 1433),
|
|
56
|
+
database: Env.get('DB_DATABASE_MSSQL', 'zintrust'),
|
|
57
|
+
username: Env.get('DB_USERNAME_MSSQL', 'sa'),
|
|
58
|
+
password: Env.get('DB_PASSWORD_MSSQL', 'pass'),
|
|
59
|
+
readHosts: parseReadHosts(Env.get('DB_READ_HOSTS_MSSQL', '127.0.0.1')),
|
|
60
|
+
},
|
|
61
|
+
};
|
|
62
|
+
export default {
|
|
63
|
+
default: Env.get('DB_CONNECTION', 'mysql'),
|
|
64
|
+
connections,
|
|
65
|
+
};
|
package/config/mail.d.ts
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mail Configuration (default override)
|
|
3
|
+
*
|
|
4
|
+
* Keep this file declarative:
|
|
5
|
+
* - Core owns env parsing/default logic.
|
|
6
|
+
* - Projects can override config by editing values below.
|
|
7
|
+
*/
|
|
8
|
+
declare const _default: {
|
|
9
|
+
default: string;
|
|
10
|
+
from: {
|
|
11
|
+
address: string;
|
|
12
|
+
name: string;
|
|
13
|
+
};
|
|
14
|
+
drivers: {
|
|
15
|
+
disabled: {
|
|
16
|
+
driver: "disabled";
|
|
17
|
+
};
|
|
18
|
+
sendgrid: {
|
|
19
|
+
driver: "sendgrid";
|
|
20
|
+
apiKey: string;
|
|
21
|
+
};
|
|
22
|
+
mailgun: {
|
|
23
|
+
driver: "mailgun";
|
|
24
|
+
apiKey: string;
|
|
25
|
+
domain: string;
|
|
26
|
+
baseUrl: string;
|
|
27
|
+
};
|
|
28
|
+
smtp: {
|
|
29
|
+
driver: "smtp";
|
|
30
|
+
host: string;
|
|
31
|
+
port: number;
|
|
32
|
+
username: string;
|
|
33
|
+
password: string;
|
|
34
|
+
secure: boolean | "starttls";
|
|
35
|
+
};
|
|
36
|
+
nodemailer: {
|
|
37
|
+
driver: "nodemailer";
|
|
38
|
+
host: string;
|
|
39
|
+
port: number;
|
|
40
|
+
username: string;
|
|
41
|
+
password: string;
|
|
42
|
+
secure: boolean | "starttls";
|
|
43
|
+
};
|
|
44
|
+
ses: {
|
|
45
|
+
driver: "ses";
|
|
46
|
+
region: string;
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
};
|
|
50
|
+
export default _default;
|
|
51
|
+
//# sourceMappingURL=mail.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mail.d.ts","sourceRoot":"","sources":["../../config/mail.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,wBAqDgC"}
|
package/config/mail.js
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
// @ts-ignore - config templates are excluded from the main TS project in this repo
|
|
2
|
+
import { Env } from '../src/config/env.js';
|
|
3
|
+
/**
|
|
4
|
+
* Mail Configuration (default override)
|
|
5
|
+
*
|
|
6
|
+
* Keep this file declarative:
|
|
7
|
+
* - Core owns env parsing/default logic.
|
|
8
|
+
* - Projects can override config by editing values below.
|
|
9
|
+
*/
|
|
10
|
+
export default {
|
|
11
|
+
default: Env.get('MAIL_CONNECTION', Env.get('MAIL_DRIVER', 'smtp')).trim().toLowerCase(),
|
|
12
|
+
from: {
|
|
13
|
+
address: Env.get('MAIL_FROM_ADDRESS', ''),
|
|
14
|
+
name: Env.get('MAIL_FROM_NAME', 'ZinTrust Framework'),
|
|
15
|
+
},
|
|
16
|
+
drivers: {
|
|
17
|
+
disabled: {
|
|
18
|
+
driver: 'disabled',
|
|
19
|
+
},
|
|
20
|
+
sendgrid: {
|
|
21
|
+
driver: 'sendgrid',
|
|
22
|
+
apiKey: Env.get('SENDGRID_API_KEY', ''),
|
|
23
|
+
},
|
|
24
|
+
mailgun: {
|
|
25
|
+
driver: 'mailgun',
|
|
26
|
+
apiKey: Env.get('MAILGUN_API_KEY', ''),
|
|
27
|
+
domain: Env.get('MAILGUN_DOMAIN', ''),
|
|
28
|
+
baseUrl: Env.get('MAILGUN_BASE_URL', 'https://api.mailgun.net').trim(),
|
|
29
|
+
},
|
|
30
|
+
smtp: {
|
|
31
|
+
driver: 'smtp',
|
|
32
|
+
host: Env.get('MAIL_HOST', ''),
|
|
33
|
+
port: Env.getInt('MAIL_PORT', 587),
|
|
34
|
+
username: Env.get('MAIL_USERNAME', ''),
|
|
35
|
+
password: Env.get('MAIL_PASSWORD', ''),
|
|
36
|
+
secure: (() => {
|
|
37
|
+
const raw = Env.get('MAIL_SECURE', '').trim().toLowerCase();
|
|
38
|
+
if (raw === 'starttls')
|
|
39
|
+
return 'starttls';
|
|
40
|
+
if (raw === 'tls' || raw === 'ssl' || raw === 'smtps' || raw === 'implicit')
|
|
41
|
+
return true;
|
|
42
|
+
if (raw === 'none' || raw === 'off' || raw === 'false' || raw === '0')
|
|
43
|
+
return false;
|
|
44
|
+
return Env.getBool('MAIL_SECURE', false);
|
|
45
|
+
})(),
|
|
46
|
+
},
|
|
47
|
+
nodemailer: {
|
|
48
|
+
driver: 'nodemailer',
|
|
49
|
+
host: Env.get('MAIL_HOST', ''),
|
|
50
|
+
port: Env.getInt('MAIL_PORT', 587),
|
|
51
|
+
username: Env.get('MAIL_USERNAME', ''),
|
|
52
|
+
password: Env.get('MAIL_PASSWORD', ''),
|
|
53
|
+
secure: (() => {
|
|
54
|
+
const raw = Env.get('MAIL_SECURE', '').trim().toLowerCase();
|
|
55
|
+
if (raw === 'starttls')
|
|
56
|
+
return 'starttls';
|
|
57
|
+
if (raw === 'tls' || raw === 'ssl' || raw === 'smtps' || raw === 'implicit')
|
|
58
|
+
return true;
|
|
59
|
+
if (raw === 'none' || raw === 'off' || raw === 'false' || raw === '0')
|
|
60
|
+
return false;
|
|
61
|
+
return Env.getBool('MAIL_SECURE', false);
|
|
62
|
+
})(),
|
|
63
|
+
},
|
|
64
|
+
ses: {
|
|
65
|
+
driver: 'ses',
|
|
66
|
+
region: Env.get('AWS_REGION', 'us-east-1'),
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { MiddlewaresType } from '../src/config/middleware';
|
|
2
|
+
/**
|
|
3
|
+
* Middleware Configuration (template)
|
|
4
|
+
*
|
|
5
|
+
* Keep this file declarative:
|
|
6
|
+
* - Core owns middleware construction / any runtime behavior.
|
|
7
|
+
* - Projects can override by editing `middlewareConfigObj`.
|
|
8
|
+
*/
|
|
9
|
+
declare const _default: MiddlewaresType;
|
|
10
|
+
export default _default;
|
|
11
|
+
//# sourceMappingURL=middleware.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../config/middleware.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D;;;;;;GAMG;wBAsBE,eAAe;AApBpB,wBAoBqB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
// @ts-ignore - config templates are excluded from the main TS project in this repo
|
|
2
|
+
import { Env } from '../src/config/env.js';
|
|
3
|
+
/**
|
|
4
|
+
* Middleware Configuration (template)
|
|
5
|
+
*
|
|
6
|
+
* Keep this file declarative:
|
|
7
|
+
* - Core owns middleware construction / any runtime behavior.
|
|
8
|
+
* - Projects can override by editing `middlewareConfigObj`.
|
|
9
|
+
*/
|
|
10
|
+
export default {
|
|
11
|
+
skipPaths: Env.get('CSRF_SKIP_PATHS', '')
|
|
12
|
+
.split(',')
|
|
13
|
+
.map((m) => m.trim())
|
|
14
|
+
.filter((m) => m.length > 0),
|
|
15
|
+
fillRateLimit: {
|
|
16
|
+
windowMs: 60_000,
|
|
17
|
+
max: 5,
|
|
18
|
+
message: 'Too many fill requests, please try again later.',
|
|
19
|
+
},
|
|
20
|
+
authRateLimit: {
|
|
21
|
+
windowMs: 60_000,
|
|
22
|
+
max: 4,
|
|
23
|
+
message: 'Too many authentication attempts, please try again later.',
|
|
24
|
+
},
|
|
25
|
+
userMutationRateLimit: {
|
|
26
|
+
windowMs: 60_000,
|
|
27
|
+
max: 20,
|
|
28
|
+
message: 'Too many user mutation requests, please try again later.',
|
|
29
|
+
},
|
|
30
|
+
};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Notification Configuration (default override)
|
|
3
|
+
*
|
|
4
|
+
* Keep this file declarative:
|
|
5
|
+
* - Core owns env parsing/default logic.
|
|
6
|
+
* - Projects can override config by editing values below.
|
|
7
|
+
*/
|
|
8
|
+
declare const _default: {
|
|
9
|
+
default: string;
|
|
10
|
+
drivers: {
|
|
11
|
+
console: {
|
|
12
|
+
driver: "console";
|
|
13
|
+
};
|
|
14
|
+
termii: {
|
|
15
|
+
driver: "termii";
|
|
16
|
+
apiKey: string;
|
|
17
|
+
sender: string;
|
|
18
|
+
endpoint: string;
|
|
19
|
+
};
|
|
20
|
+
twilio: {
|
|
21
|
+
driver: "twilio";
|
|
22
|
+
accountSid: string;
|
|
23
|
+
authToken: string;
|
|
24
|
+
fromNumber: string;
|
|
25
|
+
};
|
|
26
|
+
slack: {
|
|
27
|
+
driver: "slack";
|
|
28
|
+
webhookUrl: string;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
export default _default;
|
|
33
|
+
//# sourceMappingURL=notification.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notification.d.ts","sourceRoot":"","sources":["../../config/notification.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,wBAuBwC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// @ts-ignore - config templates are excluded from the main TS project in this repo
|
|
2
|
+
import { Env } from '../src/config/env.js';
|
|
3
|
+
/**
|
|
4
|
+
* Notification Configuration (default override)
|
|
5
|
+
*
|
|
6
|
+
* Keep this file declarative:
|
|
7
|
+
* - Core owns env parsing/default logic.
|
|
8
|
+
* - Projects can override config by editing values below.
|
|
9
|
+
*/
|
|
10
|
+
export default {
|
|
11
|
+
default: Env.get('NOTIFICATION_CONNECTION', Env.get('NOTIFICATION_DRIVER', 'console')),
|
|
12
|
+
drivers: {
|
|
13
|
+
console: {
|
|
14
|
+
driver: 'console',
|
|
15
|
+
},
|
|
16
|
+
termii: {
|
|
17
|
+
driver: 'termii',
|
|
18
|
+
apiKey: Env.get('TERMII_API_KEY', ''),
|
|
19
|
+
sender: Env.get('TERMII_SENDER', 'Zintrust'),
|
|
20
|
+
endpoint: Env.get('TERMII_ENDPOINT', 'https://api.termii.com/sms/send'),
|
|
21
|
+
},
|
|
22
|
+
twilio: {
|
|
23
|
+
driver: 'twilio',
|
|
24
|
+
accountSid: Env.get('TWILIO_ACCOUNT_SID', ''),
|
|
25
|
+
authToken: Env.get('TWILIO_AUTH_TOKEN', ''),
|
|
26
|
+
fromNumber: Env.get('TWILIO_FROM_NUMBER', ''),
|
|
27
|
+
},
|
|
28
|
+
slack: {
|
|
29
|
+
driver: 'slack',
|
|
30
|
+
webhookUrl: Env.get('SLACK_WEBHOOK_URL', ''),
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { QueueDriverName } from '../src/config/type';
|
|
2
|
+
declare const _default: {
|
|
3
|
+
default: QueueDriverName;
|
|
4
|
+
drivers: {
|
|
5
|
+
sync: {
|
|
6
|
+
driver: "sync";
|
|
7
|
+
};
|
|
8
|
+
database: {
|
|
9
|
+
driver: "database";
|
|
10
|
+
table: string;
|
|
11
|
+
connection: string;
|
|
12
|
+
};
|
|
13
|
+
redis: {
|
|
14
|
+
driver: "redis";
|
|
15
|
+
host: string;
|
|
16
|
+
port: number;
|
|
17
|
+
password: string;
|
|
18
|
+
database: number;
|
|
19
|
+
};
|
|
20
|
+
rabbitmq: {
|
|
21
|
+
driver: "rabbitmq";
|
|
22
|
+
host: string;
|
|
23
|
+
port: number;
|
|
24
|
+
username: string;
|
|
25
|
+
password: string;
|
|
26
|
+
vhost: string;
|
|
27
|
+
};
|
|
28
|
+
sqs: {
|
|
29
|
+
driver: "sqs";
|
|
30
|
+
key: string;
|
|
31
|
+
secret: string;
|
|
32
|
+
region: string;
|
|
33
|
+
queueUrl: string;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
failed: {
|
|
37
|
+
database: string;
|
|
38
|
+
table: string;
|
|
39
|
+
};
|
|
40
|
+
processing: {
|
|
41
|
+
timeout: number;
|
|
42
|
+
retries: number;
|
|
43
|
+
backoff: number;
|
|
44
|
+
workers: number;
|
|
45
|
+
};
|
|
46
|
+
monitor: {
|
|
47
|
+
enabled: boolean;
|
|
48
|
+
basePath: string;
|
|
49
|
+
middleware: ReadonlyArray<string>;
|
|
50
|
+
autoRefresh: boolean;
|
|
51
|
+
refreshIntervalMs: number;
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
export default _default;
|
|
55
|
+
//# sourceMappingURL=queue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../config/queue.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;;aAGN,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAuDf,aAAa,CAAC,MAAM,CAAC;;;;;AAxDnE,wBA4DiC"}
|
package/config/queue.js
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Queue Configuration (default override)
|
|
3
|
+
*
|
|
4
|
+
* Keep this file declarative:
|
|
5
|
+
* - Core owns env parsing/default logic.
|
|
6
|
+
* - Projects can override config by editing values below.
|
|
7
|
+
*
|
|
8
|
+
* BullMQ Redis Driver Environment Variables:
|
|
9
|
+
* When QUEUE_DRIVER=redis, the system uses BullMQ for enterprise features.
|
|
10
|
+
* Additional BullMQ-specific settings can be configured via environment variables:
|
|
11
|
+
*
|
|
12
|
+
* | Environment Variable | Default | Description | Example |
|
|
13
|
+
* |---------------------|---------|-------------|---------|
|
|
14
|
+
* | BULLMQ_REMOVE_ON_COMPLETE | 100 | Number of completed jobs to keep in Redis | 200 |
|
|
15
|
+
* | BULLMQ_REMOVE_ON_FAIL | 50 | Number of failed jobs to keep in Redis | 25 |
|
|
16
|
+
* | BULLMQ_DEFAULT_ATTEMPTS | 3 | Default retry attempts for jobs | 5 |
|
|
17
|
+
* | BULLMQ_BACKOFF_DELAY | 2000 | Delay between retries (milliseconds) | 5000 |
|
|
18
|
+
* | BULLMQ_BACKOFF_TYPE | exponential | Backoff strategy: 'exponential', 'fixed', 'custom' | fixed |
|
|
19
|
+
*
|
|
20
|
+
* Usage Examples:
|
|
21
|
+
* Development: BULLMQ_REMOVE_ON_COMPLETE=500 BULLMQ_DEFAULT_ATTEMPTS=2
|
|
22
|
+
* Production: BULLMQ_REMOVE_ON_COMPLETE=50 BULLMQ_DEFAULT_ATTEMPTS=5
|
|
23
|
+
* High-Volume: BULLMQ_REMOVE_ON_COMPLETE=10 BULLMQ_BACKOFF_DELAY=500
|
|
24
|
+
*/
|
|
25
|
+
// @ts-ignore - config templates are excluded from the main TS project in this repo
|
|
26
|
+
import { Env } from '../src/config/env.js';
|
|
27
|
+
export default {
|
|
28
|
+
default: Env.get('QUEUE_DRIVER', 'sync'),
|
|
29
|
+
drivers: {
|
|
30
|
+
sync: {
|
|
31
|
+
driver: 'sync',
|
|
32
|
+
},
|
|
33
|
+
database: {
|
|
34
|
+
driver: 'database',
|
|
35
|
+
table: Env.get('QUEUE_TABLE', 'jobs'),
|
|
36
|
+
connection: Env.get('QUEUE_DB_CONNECTION', 'default'),
|
|
37
|
+
},
|
|
38
|
+
redis: {
|
|
39
|
+
driver: 'redis',
|
|
40
|
+
host: Env.getBool('USE_REDIS_PROXY', false)
|
|
41
|
+
? Env.get('REDIS_PROXY_HOST', Env.get('REDIS_HOST', 'localhost'))
|
|
42
|
+
: Env.get('REDIS_HOST', 'localhost'),
|
|
43
|
+
port: Env.getBool('USE_REDIS_PROXY', false)
|
|
44
|
+
? Env.getInt('REDIS_PROXY_PORT', Env.getInt('REDIS_PORT', 6379))
|
|
45
|
+
: Env.getInt('REDIS_PORT', 6379),
|
|
46
|
+
password: Env.get('REDIS_PASSWORD'),
|
|
47
|
+
database: Env.getInt('REDIS_QUEUE_DB', 1),
|
|
48
|
+
// Note: Redis driver uses BullMQ for enterprise features
|
|
49
|
+
// See BullMQ environment variables in file header for customization
|
|
50
|
+
},
|
|
51
|
+
rabbitmq: {
|
|
52
|
+
driver: 'rabbitmq',
|
|
53
|
+
host: Env.get('RABBITMQ_HOST', 'localhost'),
|
|
54
|
+
port: Env.getInt('RABBITMQ_PORT', 5672),
|
|
55
|
+
username: Env.get('RABBITMQ_USER', 'guest'),
|
|
56
|
+
password: Env.get('RABBITMQ_PASSWORD', 'guest'),
|
|
57
|
+
vhost: Env.get('RABBITMQ_VHOST', '/'),
|
|
58
|
+
},
|
|
59
|
+
sqs: {
|
|
60
|
+
driver: 'sqs',
|
|
61
|
+
key: Env.get('AWS_ACCESS_KEY_ID'),
|
|
62
|
+
secret: Env.get('AWS_SECRET_ACCESS_KEY'),
|
|
63
|
+
region: Env.AWS_REGION,
|
|
64
|
+
queueUrl: Env.get('AWS_SQS_QUEUE_URL'),
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
failed: {
|
|
68
|
+
database: Env.get('FAILED_JOBS_DB_CONNECTION', 'default'),
|
|
69
|
+
table: Env.get('FAILED_JOBS_TABLE', 'failed_jobs'),
|
|
70
|
+
},
|
|
71
|
+
processing: {
|
|
72
|
+
timeout: Env.getInt('QUEUE_JOB_TIMEOUT', 60),
|
|
73
|
+
retries: Env.getInt('QUEUE_JOB_RETRIES', 3),
|
|
74
|
+
backoff: Env.getInt('QUEUE_JOB_BACKOFF', 0),
|
|
75
|
+
workers: Env.getInt('QUEUE_WORKERS', 1),
|
|
76
|
+
},
|
|
77
|
+
monitor: {
|
|
78
|
+
enabled: Env.getBool('QUEUE_MONITOR_ENABLED', true),
|
|
79
|
+
basePath: Env.get('QUEUE_MONITOR_BASE_PATH', '/queue-monitor'),
|
|
80
|
+
middleware: Env.get('QUEUE_MONITOR_MIDDLEWARE')
|
|
81
|
+
.split(',')
|
|
82
|
+
.map((m) => m.trim())
|
|
83
|
+
.filter((m) => m.length > 0),
|
|
84
|
+
autoRefresh: Env.getBool('QUEUE_MONITOR_AUTO_REFRESH', true),
|
|
85
|
+
refreshIntervalMs: Env.getInt('QUEUE_MONITOR_REFRESH_MS', 5000),
|
|
86
|
+
},
|
|
87
|
+
};
|