@morojs/moro 1.6.1 → 1.6.3
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/README.md +74 -256
- package/dist/core/auth/morojs-adapter.js +20 -20
- package/dist/core/auth/morojs-adapter.js.map +1 -1
- package/dist/core/config/config-manager.d.ts +44 -0
- package/dist/core/config/config-manager.js +104 -0
- package/dist/core/config/config-manager.js.map +1 -0
- package/dist/core/config/config-sources.d.ts +21 -0
- package/dist/core/config/config-sources.js +503 -0
- package/dist/core/config/config-sources.js.map +1 -0
- package/dist/core/config/config-validator.d.ts +21 -0
- package/dist/core/config/config-validator.js +791 -0
- package/dist/core/config/config-validator.js.map +1 -0
- package/dist/core/config/file-loader.d.ts +1 -6
- package/dist/core/config/file-loader.js +21 -249
- package/dist/core/config/file-loader.js.map +1 -1
- package/dist/core/config/index.d.ts +41 -12
- package/dist/core/config/index.js +65 -54
- package/dist/core/config/index.js.map +1 -1
- package/dist/core/config/schema.d.ts +2 -2
- package/dist/core/config/schema.js +55 -44
- package/dist/core/config/schema.js.map +1 -1
- package/dist/core/config/utils.d.ts +10 -3
- package/dist/core/config/utils.js +31 -58
- package/dist/core/config/utils.js.map +1 -1
- package/dist/core/database/adapters/drizzle.d.ts +1 -1
- package/dist/core/database/adapters/drizzle.js +18 -11
- package/dist/core/database/adapters/drizzle.js.map +1 -1
- package/dist/core/database/adapters/index.d.ts +7 -7
- package/dist/core/database/adapters/index.js +19 -29
- package/dist/core/database/adapters/index.js.map +1 -1
- package/dist/core/database/adapters/mongodb.d.ts +13 -1
- package/dist/core/database/adapters/mongodb.js +46 -10
- package/dist/core/database/adapters/mongodb.js.map +1 -1
- package/dist/core/database/adapters/mysql.d.ts +14 -1
- package/dist/core/database/adapters/mysql.js +19 -9
- package/dist/core/database/adapters/mysql.js.map +1 -1
- package/dist/core/database/adapters/postgresql.d.ts +12 -2
- package/dist/core/database/adapters/postgresql.js +19 -9
- package/dist/core/database/adapters/postgresql.js.map +1 -1
- package/dist/core/database/adapters/redis.d.ts +12 -1
- package/dist/core/database/adapters/redis.js +48 -13
- package/dist/core/database/adapters/redis.js.map +1 -1
- package/dist/core/database/adapters/sqlite.d.ts +3 -1
- package/dist/core/database/adapters/sqlite.js +19 -8
- package/dist/core/database/adapters/sqlite.js.map +1 -1
- package/dist/core/database/index.d.ts +2 -2
- package/dist/core/database/index.js +2 -18
- package/dist/core/database/index.js.map +1 -1
- package/dist/core/docs/index.d.ts +9 -9
- package/dist/core/docs/index.js +14 -35
- package/dist/core/docs/index.js.map +1 -1
- package/dist/core/docs/openapi-generator.d.ts +2 -2
- package/dist/core/docs/openapi-generator.js +11 -16
- package/dist/core/docs/openapi-generator.js.map +1 -1
- package/dist/core/docs/schema-to-openapi.d.ts +2 -2
- package/dist/core/docs/schema-to-openapi.js +5 -11
- package/dist/core/docs/schema-to-openapi.js.map +1 -1
- package/dist/core/docs/simple-docs.d.ts +1 -1
- package/dist/core/docs/simple-docs.js +4 -9
- package/dist/core/docs/simple-docs.js.map +1 -1
- package/dist/core/docs/swagger-ui.d.ts +2 -2
- package/dist/core/docs/swagger-ui.js +26 -29
- package/dist/core/docs/swagger-ui.js.map +1 -1
- package/dist/core/docs/zod-to-openapi.js +31 -28
- package/dist/core/docs/zod-to-openapi.js.map +1 -1
- package/dist/core/events/event-bus.d.ts +1 -1
- package/dist/core/events/event-bus.js +7 -11
- package/dist/core/events/event-bus.js.map +1 -1
- package/dist/core/events/index.d.ts +2 -2
- package/dist/core/events/index.js +1 -5
- package/dist/core/events/index.js.map +1 -1
- package/dist/core/framework.d.ts +20 -13
- package/dist/core/framework.js +285 -102
- package/dist/core/framework.js.map +1 -1
- package/dist/core/http/http-server.d.ts +59 -7
- package/dist/core/http/http-server.js +202 -185
- package/dist/core/http/http-server.js.map +1 -1
- package/dist/core/http/index.d.ts +4 -3
- package/dist/core/http/index.js +3 -8
- package/dist/core/http/index.js.map +1 -1
- package/dist/core/http/uws-http-server.d.ts +46 -0
- package/dist/core/http/uws-http-server.js +523 -0
- package/dist/core/http/uws-http-server.js.map +1 -0
- package/dist/core/logger/filters.d.ts +1 -1
- package/dist/core/logger/filters.js +20 -23
- package/dist/core/logger/filters.js.map +1 -1
- package/dist/core/logger/index.d.ts +3 -3
- package/dist/core/logger/index.js +2 -24
- package/dist/core/logger/index.js.map +1 -1
- package/dist/core/logger/logger.d.ts +30 -14
- package/dist/core/logger/logger.js +398 -223
- package/dist/core/logger/logger.js.map +1 -1
- package/dist/core/logger/outputs.d.ts +1 -1
- package/dist/core/logger/outputs.js +8 -17
- package/dist/core/logger/outputs.js.map +1 -1
- package/dist/core/middleware/built-in/auth/core.d.ts +78 -0
- package/dist/core/middleware/built-in/auth/core.js +358 -0
- package/dist/core/middleware/built-in/auth/core.js.map +1 -0
- package/dist/core/middleware/built-in/{auth-helpers.js → auth/helpers.js} +12 -23
- package/dist/core/middleware/built-in/auth/helpers.js.map +1 -0
- package/dist/core/middleware/built-in/auth/hook.d.ts +30 -0
- package/dist/core/middleware/built-in/auth/hook.js +99 -0
- package/dist/core/middleware/built-in/auth/hook.js.map +1 -0
- package/dist/core/middleware/built-in/auth/index.d.ts +7 -0
- package/dist/core/middleware/built-in/auth/index.js +15 -0
- package/dist/core/middleware/built-in/auth/index.js.map +1 -0
- package/dist/core/middleware/built-in/auth/jwt-helpers.d.ts +118 -0
- package/dist/core/middleware/built-in/auth/jwt-helpers.js +218 -0
- package/dist/core/middleware/built-in/auth/jwt-helpers.js.map +1 -0
- package/dist/core/middleware/built-in/auth/middleware.d.ts +23 -0
- package/dist/core/middleware/built-in/auth/middleware.js +71 -0
- package/dist/core/middleware/built-in/auth/middleware.js.map +1 -0
- package/dist/core/middleware/built-in/{auth-providers.d.ts → auth/providers.d.ts} +1 -1
- package/dist/core/middleware/built-in/{auth-providers.js → auth/providers.js} +5 -10
- package/dist/core/middleware/built-in/auth/providers.js.map +1 -0
- package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/file.d.ts +1 -1
- package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/file.js +10 -47
- package/dist/core/middleware/built-in/cache/adapters/cache/file.js.map +1 -0
- package/dist/core/middleware/built-in/cache/adapters/cache/index.d.ts +5 -0
- package/dist/core/middleware/built-in/cache/adapters/cache/index.js +21 -0
- package/dist/core/middleware/built-in/cache/adapters/cache/index.js.map +1 -0
- package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/memory.d.ts +1 -1
- package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/memory.js +3 -7
- package/dist/core/middleware/built-in/cache/adapters/cache/memory.js.map +1 -0
- package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/redis.d.ts +3 -1
- package/dist/core/middleware/built-in/{adapters → cache/adapters}/cache/redis.js +11 -9
- package/dist/core/middleware/built-in/cache/adapters/cache/redis.js.map +1 -0
- package/dist/core/middleware/built-in/cache/adapters/index.d.ts +2 -0
- package/dist/core/middleware/built-in/cache/adapters/index.js +5 -0
- package/dist/core/middleware/built-in/cache/adapters/index.js.map +1 -0
- package/dist/core/middleware/built-in/cache/core.d.ts +37 -0
- package/dist/core/middleware/built-in/cache/core.js +87 -0
- package/dist/core/middleware/built-in/cache/core.js.map +1 -0
- package/dist/core/middleware/built-in/cache/hook.d.ts +20 -0
- package/dist/core/middleware/built-in/{cache.js → cache/hook.js} +30 -14
- package/dist/core/middleware/built-in/cache/hook.js.map +1 -0
- package/dist/core/middleware/built-in/cache/index.d.ts +3 -0
- package/dist/core/middleware/built-in/cache/index.js +9 -0
- package/dist/core/middleware/built-in/cache/index.js.map +1 -0
- package/dist/core/middleware/built-in/cache/middleware.d.ts +17 -0
- package/dist/core/middleware/built-in/cache/middleware.js +44 -0
- package/dist/core/middleware/built-in/cache/middleware.js.map +1 -0
- package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/azure.d.ts +1 -1
- package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/azure.js +3 -7
- package/dist/core/middleware/built-in/cdn/adapters/cdn/azure.js.map +1 -0
- package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/cloudflare.d.ts +1 -1
- package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/cloudflare.js +3 -7
- package/dist/core/middleware/built-in/cdn/adapters/cdn/cloudflare.js.map +1 -0
- package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/cloudfront.d.ts +3 -1
- package/dist/core/middleware/built-in/{adapters → cdn/adapters}/cdn/cloudfront.js +12 -10
- package/dist/core/middleware/built-in/cdn/adapters/cdn/cloudfront.js.map +1 -0
- package/dist/core/middleware/built-in/cdn/adapters/cdn/index.d.ts +5 -0
- package/dist/core/middleware/built-in/cdn/adapters/cdn/index.js +21 -0
- package/dist/core/middleware/built-in/cdn/adapters/cdn/index.js.map +1 -0
- package/dist/core/middleware/built-in/cdn/adapters/index.d.ts +2 -0
- package/dist/core/middleware/built-in/cdn/adapters/index.js +5 -0
- package/dist/core/middleware/built-in/cdn/adapters/index.js.map +1 -0
- package/dist/core/middleware/built-in/cdn/core.d.ts +43 -0
- package/dist/core/middleware/built-in/cdn/core.js +144 -0
- package/dist/core/middleware/built-in/cdn/core.js.map +1 -0
- package/dist/core/middleware/built-in/cdn/hook.d.ts +22 -0
- package/dist/core/middleware/built-in/cdn/hook.js +70 -0
- package/dist/core/middleware/built-in/cdn/hook.js.map +1 -0
- package/dist/core/middleware/built-in/cdn/index.d.ts +5 -0
- package/dist/core/middleware/built-in/cdn/index.js +11 -0
- package/dist/core/middleware/built-in/cdn/index.js.map +1 -0
- package/dist/core/middleware/built-in/cdn/middleware.d.ts +21 -0
- package/dist/core/middleware/built-in/cdn/middleware.js +52 -0
- package/dist/core/middleware/built-in/cdn/middleware.js.map +1 -0
- package/dist/core/middleware/built-in/cookie/core.d.ts +37 -0
- package/dist/core/middleware/built-in/cookie/core.js +83 -0
- package/dist/core/middleware/built-in/cookie/core.js.map +1 -0
- package/dist/core/middleware/built-in/cookie/hook.d.ts +20 -0
- package/dist/core/middleware/built-in/cookie/hook.js +47 -0
- package/dist/core/middleware/built-in/cookie/hook.js.map +1 -0
- package/dist/core/middleware/built-in/cookie/index.d.ts +3 -0
- package/dist/core/middleware/built-in/cookie/index.js +9 -0
- package/dist/core/middleware/built-in/cookie/index.js.map +1 -0
- package/dist/core/middleware/built-in/cookie/middleware.d.ts +17 -0
- package/dist/core/middleware/built-in/cookie/middleware.js +36 -0
- package/dist/core/middleware/built-in/cookie/middleware.js.map +1 -0
- package/dist/core/middleware/built-in/cors/core.d.ts +23 -0
- package/dist/core/middleware/built-in/cors/core.js +51 -0
- package/dist/core/middleware/built-in/cors/core.js.map +1 -0
- package/dist/core/middleware/built-in/cors/hook.d.ts +17 -0
- package/dist/core/middleware/built-in/cors/hook.js +37 -0
- package/dist/core/middleware/built-in/cors/hook.js.map +1 -0
- package/dist/core/middleware/built-in/cors/index.d.ts +3 -0
- package/dist/core/middleware/built-in/cors/index.js +9 -0
- package/dist/core/middleware/built-in/cors/index.js.map +1 -0
- package/dist/core/middleware/built-in/cors/middleware.d.ts +16 -0
- package/dist/core/middleware/built-in/cors/middleware.js +22 -0
- package/dist/core/middleware/built-in/cors/middleware.js.map +1 -0
- package/dist/core/middleware/built-in/csp/core.d.ts +45 -0
- package/dist/core/middleware/built-in/csp/core.js +88 -0
- package/dist/core/middleware/built-in/csp/core.js.map +1 -0
- package/dist/core/middleware/built-in/csp/hook.d.ts +22 -0
- package/dist/core/middleware/built-in/csp/hook.js +47 -0
- package/dist/core/middleware/built-in/csp/hook.js.map +1 -0
- package/dist/core/middleware/built-in/csp/index.d.ts +3 -0
- package/dist/core/middleware/built-in/csp/index.js +9 -0
- package/dist/core/middleware/built-in/csp/index.js.map +1 -0
- package/dist/core/middleware/built-in/csp/middleware.d.ts +19 -0
- package/dist/core/middleware/built-in/csp/middleware.js +29 -0
- package/dist/core/middleware/built-in/csp/middleware.js.map +1 -0
- package/dist/core/middleware/built-in/csrf/core.d.ts +28 -0
- package/dist/core/middleware/built-in/csrf/core.js +69 -0
- package/dist/core/middleware/built-in/csrf/core.js.map +1 -0
- package/dist/core/middleware/built-in/csrf/hook.d.ts +17 -0
- package/dist/core/middleware/built-in/csrf/hook.js +45 -0
- package/dist/core/middleware/built-in/csrf/hook.js.map +1 -0
- package/dist/core/middleware/built-in/csrf/index.d.ts +3 -0
- package/dist/core/middleware/built-in/csrf/index.js +9 -0
- package/dist/core/middleware/built-in/csrf/index.js.map +1 -0
- package/dist/core/middleware/built-in/csrf/middleware.d.ts +16 -0
- package/dist/core/middleware/built-in/csrf/middleware.js +34 -0
- package/dist/core/middleware/built-in/csrf/middleware.js.map +1 -0
- package/dist/core/middleware/built-in/error-tracker/index.d.ts +1 -0
- package/dist/core/middleware/built-in/error-tracker/index.js +4 -0
- package/dist/core/middleware/built-in/error-tracker/index.js.map +1 -0
- package/dist/core/middleware/built-in/error-tracker/middleware.d.ts +12 -0
- package/dist/core/middleware/built-in/error-tracker/middleware.js +26 -0
- package/dist/core/middleware/built-in/error-tracker/middleware.js.map +1 -0
- package/dist/core/middleware/built-in/index.d.ts +28 -61
- package/dist/core/middleware/built-in/index.js +48 -78
- package/dist/core/middleware/built-in/index.js.map +1 -1
- package/dist/core/middleware/built-in/performance-monitor/index.d.ts +1 -0
- package/dist/core/middleware/built-in/performance-monitor/index.js +4 -0
- package/dist/core/middleware/built-in/performance-monitor/index.js.map +1 -0
- package/dist/core/middleware/built-in/performance-monitor/middleware.d.ts +12 -0
- package/dist/core/middleware/built-in/performance-monitor/middleware.js +29 -0
- package/dist/core/middleware/built-in/performance-monitor/middleware.js.map +1 -0
- package/dist/core/middleware/built-in/rate-limit/core.d.ts +33 -0
- package/dist/core/middleware/built-in/rate-limit/core.js +86 -0
- package/dist/core/middleware/built-in/rate-limit/core.js.map +1 -0
- package/dist/core/middleware/built-in/rate-limit/hook.d.ts +20 -0
- package/dist/core/middleware/built-in/{rate-limit.js → rate-limit/hook.js} +24 -22
- package/dist/core/middleware/built-in/rate-limit/hook.js.map +1 -0
- package/dist/core/middleware/built-in/rate-limit/index.d.ts +3 -0
- package/dist/core/middleware/built-in/rate-limit/index.js +9 -0
- package/dist/core/middleware/built-in/rate-limit/index.js.map +1 -0
- package/dist/core/middleware/built-in/rate-limit/middleware.d.ts +16 -0
- package/dist/core/middleware/built-in/rate-limit/middleware.js +35 -0
- package/dist/core/middleware/built-in/rate-limit/middleware.js.map +1 -0
- package/dist/core/middleware/built-in/request-logger/index.d.ts +1 -0
- package/dist/core/middleware/built-in/request-logger/index.js +4 -0
- package/dist/core/middleware/built-in/request-logger/index.js.map +1 -0
- package/dist/core/middleware/built-in/request-logger/middleware.d.ts +12 -0
- package/dist/core/middleware/built-in/request-logger/middleware.js +24 -0
- package/dist/core/middleware/built-in/request-logger/middleware.js.map +1 -0
- package/dist/core/middleware/built-in/session/core.d.ts +73 -0
- package/dist/core/middleware/built-in/session/core.js +227 -0
- package/dist/core/middleware/built-in/session/core.js.map +1 -0
- package/dist/core/middleware/built-in/session/hook.d.ts +17 -0
- package/dist/core/middleware/built-in/session/hook.js +53 -0
- package/dist/core/middleware/built-in/session/hook.js.map +1 -0
- package/dist/core/middleware/built-in/session/index.d.ts +3 -0
- package/dist/core/middleware/built-in/session/index.js +9 -0
- package/dist/core/middleware/built-in/session/index.js.map +1 -0
- package/dist/core/middleware/built-in/session/middleware.d.ts +17 -0
- package/dist/core/middleware/built-in/session/middleware.js +38 -0
- package/dist/core/middleware/built-in/session/middleware.js.map +1 -0
- package/dist/core/middleware/built-in/sse/core.d.ts +44 -0
- package/dist/core/middleware/built-in/sse/core.js +117 -0
- package/dist/core/middleware/built-in/sse/core.js.map +1 -0
- package/dist/core/middleware/built-in/sse/hook.d.ts +18 -0
- package/dist/core/middleware/built-in/sse/hook.js +60 -0
- package/dist/core/middleware/built-in/sse/hook.js.map +1 -0
- package/dist/core/middleware/built-in/sse/index.d.ts +3 -0
- package/dist/core/middleware/built-in/sse/index.js +9 -0
- package/dist/core/middleware/built-in/sse/index.js.map +1 -0
- package/dist/core/middleware/built-in/sse/middleware.d.ts +18 -0
- package/dist/core/middleware/built-in/sse/middleware.js +43 -0
- package/dist/core/middleware/built-in/sse/middleware.js.map +1 -0
- package/dist/core/middleware/built-in/validation/core.d.ts +23 -0
- package/dist/core/middleware/built-in/validation/core.js +93 -0
- package/dist/core/middleware/built-in/validation/core.js.map +1 -0
- package/dist/core/middleware/built-in/validation/hook.d.ts +13 -0
- package/dist/core/middleware/built-in/{validation.js → validation/hook.js} +16 -9
- package/dist/core/middleware/built-in/validation/hook.js.map +1 -0
- package/dist/core/middleware/built-in/validation/index.d.ts +3 -0
- package/dist/core/middleware/built-in/validation/index.js +9 -0
- package/dist/core/middleware/built-in/validation/index.js.map +1 -0
- package/dist/core/middleware/built-in/validation/middleware.d.ts +16 -0
- package/dist/core/middleware/built-in/validation/middleware.js +27 -0
- package/dist/core/middleware/built-in/validation/middleware.js.map +1 -0
- package/dist/core/middleware/index.d.ts +4 -4
- package/dist/core/middleware/index.js +14 -28
- package/dist/core/middleware/index.js.map +1 -1
- package/dist/core/modules/auto-discovery.d.ts +19 -2
- package/dist/core/modules/auto-discovery.js +391 -74
- package/dist/core/modules/auto-discovery.js.map +1 -1
- package/dist/core/modules/index.d.ts +2 -2
- package/dist/core/modules/index.js +2 -9
- package/dist/core/modules/index.js.map +1 -1
- package/dist/core/modules/modules.d.ts +3 -3
- package/dist/core/modules/modules.js +23 -54
- package/dist/core/modules/modules.js.map +1 -1
- package/dist/core/networking/adapters/index.d.ts +4 -3
- package/dist/core/networking/adapters/index.js +3 -7
- package/dist/core/networking/adapters/index.js.map +1 -1
- package/dist/core/networking/adapters/socketio-adapter.d.ts +1 -1
- package/dist/core/networking/adapters/socketio-adapter.js +5 -40
- package/dist/core/networking/adapters/socketio-adapter.js.map +1 -1
- package/dist/core/networking/adapters/uws-adapter.d.ts +44 -0
- package/dist/core/networking/adapters/uws-adapter.js +513 -0
- package/dist/core/networking/adapters/uws-adapter.js.map +1 -0
- package/dist/core/networking/adapters/ws-adapter.d.ts +2 -2
- package/dist/core/networking/adapters/ws-adapter.js +8 -43
- package/dist/core/networking/adapters/ws-adapter.js.map +1 -1
- package/dist/core/networking/index.d.ts +3 -2
- package/dist/core/networking/index.js +2 -7
- package/dist/core/networking/index.js.map +1 -1
- package/dist/core/networking/service-discovery.js +8 -12
- package/dist/core/networking/service-discovery.js.map +1 -1
- package/dist/core/networking/websocket-adapter.js +1 -2
- package/dist/core/networking/websocket-adapter.js.map +1 -1
- package/dist/core/networking/websocket-manager.d.ts +3 -3
- package/dist/core/networking/websocket-manager.js +9 -11
- package/dist/core/networking/websocket-manager.js.map +1 -1
- package/dist/core/pooling/object-pool-manager.d.ts +140 -0
- package/dist/core/pooling/object-pool-manager.js +502 -0
- package/dist/core/pooling/object-pool-manager.js.map +1 -0
- package/dist/core/routing/app-integration.d.ts +14 -12
- package/dist/core/routing/app-integration.js +49 -85
- package/dist/core/routing/app-integration.js.map +1 -1
- package/dist/core/routing/index.d.ts +17 -11
- package/dist/core/routing/index.js +48 -237
- package/dist/core/routing/index.js.map +1 -1
- package/dist/core/routing/path-matcher.d.ts +67 -0
- package/dist/core/routing/path-matcher.js +182 -0
- package/dist/core/routing/path-matcher.js.map +1 -0
- package/dist/core/routing/router.d.ts +38 -0
- package/dist/core/routing/router.js +68 -0
- package/dist/core/routing/router.js.map +1 -0
- package/dist/core/routing/unified-router.d.ts +132 -0
- package/dist/core/routing/unified-router.js +639 -0
- package/dist/core/routing/unified-router.js.map +1 -0
- package/dist/core/runtime/aws-lambda-adapter.d.ts +3 -3
- package/dist/core/runtime/aws-lambda-adapter.js +2 -6
- package/dist/core/runtime/aws-lambda-adapter.js.map +1 -1
- package/dist/core/runtime/base-adapter.d.ts +2 -2
- package/dist/core/runtime/base-adapter.js +3 -7
- package/dist/core/runtime/base-adapter.js.map +1 -1
- package/dist/core/runtime/cloudflare-workers-adapter.d.ts +3 -3
- package/dist/core/runtime/cloudflare-workers-adapter.js +2 -6
- package/dist/core/runtime/cloudflare-workers-adapter.js.map +1 -1
- package/dist/core/runtime/index.d.ts +12 -12
- package/dist/core/runtime/index.js +22 -35
- package/dist/core/runtime/index.js.map +1 -1
- package/dist/core/runtime/node-adapter.d.ts +4 -4
- package/dist/core/runtime/node-adapter.js +18 -49
- package/dist/core/runtime/node-adapter.js.map +1 -1
- package/dist/core/runtime/vercel-edge-adapter.d.ts +3 -3
- package/dist/core/runtime/vercel-edge-adapter.js +2 -6
- package/dist/core/runtime/vercel-edge-adapter.js.map +1 -1
- package/dist/core/utilities/circuit-breaker.js +1 -5
- package/dist/core/utilities/circuit-breaker.js.map +1 -1
- package/dist/core/utilities/container.js +12 -22
- package/dist/core/utilities/container.js.map +1 -1
- package/dist/core/utilities/hooks.d.ts +2 -2
- package/dist/core/utilities/hooks.js +7 -12
- package/dist/core/utilities/hooks.js.map +1 -1
- package/dist/core/utilities/index.d.ts +5 -4
- package/dist/core/utilities/index.js +5 -19
- package/dist/core/utilities/index.js.map +1 -1
- package/dist/core/utilities/package-utils.d.ts +38 -0
- package/dist/core/utilities/package-utils.js +57 -0
- package/dist/core/utilities/package-utils.js.map +1 -0
- package/dist/core/validation/adapters.d.ts +1 -1
- package/dist/core/validation/adapters.js +15 -26
- package/dist/core/validation/adapters.js.map +1 -1
- package/dist/core/validation/index.d.ts +6 -4
- package/dist/core/validation/index.js +57 -28
- package/dist/core/validation/index.js.map +1 -1
- package/dist/core/validation/schema-interface.js +3 -9
- package/dist/core/validation/schema-interface.js.map +1 -1
- package/dist/index.d.ts +52 -52
- package/dist/index.js +24 -132
- package/dist/index.js.map +1 -1
- package/dist/moro.d.ts +70 -16
- package/dist/moro.js +650 -269
- package/dist/moro.js.map +1 -1
- package/dist/types/auth.js +3 -9
- package/dist/types/auth.js.map +1 -1
- package/dist/types/cache.js +1 -2
- package/dist/types/cdn.js +1 -2
- package/dist/types/config.d.ts +73 -2
- package/dist/types/config.js +1 -2
- package/dist/types/config.js.map +1 -1
- package/dist/types/core.d.ts +36 -42
- package/dist/types/core.js +1 -2
- package/dist/types/database.js +1 -2
- package/dist/types/discovery.js +1 -2
- package/dist/types/events.js +1 -2
- package/dist/types/hooks.d.ts +4 -1
- package/dist/types/hooks.js +1 -2
- package/dist/types/http.d.ts +16 -1
- package/dist/types/http.js +1 -2
- package/dist/types/logger.d.ts +7 -0
- package/dist/types/logger.js +1 -2
- package/dist/types/module.d.ts +11 -0
- package/dist/types/module.js +1 -2
- package/dist/types/runtime.d.ts +1 -1
- package/dist/types/runtime.js +1 -2
- package/dist/types/session.js +1 -2
- package/package.json +18 -55
- package/dist/core/config/loader.d.ts +0 -7
- package/dist/core/config/loader.js +0 -269
- package/dist/core/config/loader.js.map +0 -1
- package/dist/core/config/validation.d.ts +0 -17
- package/dist/core/config/validation.js +0 -131
- package/dist/core/config/validation.js.map +0 -1
- package/dist/core/http/router.d.ts +0 -14
- package/dist/core/http/router.js +0 -109
- package/dist/core/http/router.js.map +0 -1
- package/dist/core/middleware/built-in/adapters/cache/file.js.map +0 -1
- package/dist/core/middleware/built-in/adapters/cache/index.d.ts +0 -5
- package/dist/core/middleware/built-in/adapters/cache/index.js +0 -28
- package/dist/core/middleware/built-in/adapters/cache/index.js.map +0 -1
- package/dist/core/middleware/built-in/adapters/cache/memory.js.map +0 -1
- package/dist/core/middleware/built-in/adapters/cache/redis.js.map +0 -1
- package/dist/core/middleware/built-in/adapters/cdn/azure.js.map +0 -1
- package/dist/core/middleware/built-in/adapters/cdn/cloudflare.js.map +0 -1
- package/dist/core/middleware/built-in/adapters/cdn/cloudfront.js.map +0 -1
- package/dist/core/middleware/built-in/adapters/cdn/index.d.ts +0 -5
- package/dist/core/middleware/built-in/adapters/cdn/index.js +0 -28
- package/dist/core/middleware/built-in/adapters/cdn/index.js.map +0 -1
- package/dist/core/middleware/built-in/adapters/index.d.ts +0 -4
- package/dist/core/middleware/built-in/adapters/index.js +0 -26
- package/dist/core/middleware/built-in/adapters/index.js.map +0 -1
- package/dist/core/middleware/built-in/auth-helpers.js.map +0 -1
- package/dist/core/middleware/built-in/auth-providers.js.map +0 -1
- package/dist/core/middleware/built-in/auth.d.ts +0 -30
- package/dist/core/middleware/built-in/auth.js +0 -281
- package/dist/core/middleware/built-in/auth.js.map +0 -1
- package/dist/core/middleware/built-in/cache.d.ts +0 -3
- package/dist/core/middleware/built-in/cache.js.map +0 -1
- package/dist/core/middleware/built-in/cdn.d.ts +0 -3
- package/dist/core/middleware/built-in/cdn.js +0 -113
- package/dist/core/middleware/built-in/cdn.js.map +0 -1
- package/dist/core/middleware/built-in/cookie.d.ts +0 -14
- package/dist/core/middleware/built-in/cookie.js +0 -68
- package/dist/core/middleware/built-in/cookie.js.map +0 -1
- package/dist/core/middleware/built-in/cors.d.ts +0 -2
- package/dist/core/middleware/built-in/cors.js +0 -29
- package/dist/core/middleware/built-in/cors.js.map +0 -1
- package/dist/core/middleware/built-in/csp.d.ts +0 -22
- package/dist/core/middleware/built-in/csp.js +0 -71
- package/dist/core/middleware/built-in/csp.js.map +0 -1
- package/dist/core/middleware/built-in/csrf.d.ts +0 -9
- package/dist/core/middleware/built-in/csrf.js +0 -63
- package/dist/core/middleware/built-in/csrf.js.map +0 -1
- package/dist/core/middleware/built-in/error-tracker.d.ts +0 -1
- package/dist/core/middleware/built-in/error-tracker.js +0 -19
- package/dist/core/middleware/built-in/error-tracker.js.map +0 -1
- package/dist/core/middleware/built-in/performance-monitor.d.ts +0 -1
- package/dist/core/middleware/built-in/performance-monitor.js +0 -22
- package/dist/core/middleware/built-in/performance-monitor.js.map +0 -1
- package/dist/core/middleware/built-in/rate-limit.d.ts +0 -6
- package/dist/core/middleware/built-in/rate-limit.js.map +0 -1
- package/dist/core/middleware/built-in/request-logger.d.ts +0 -1
- package/dist/core/middleware/built-in/request-logger.js +0 -16
- package/dist/core/middleware/built-in/request-logger.js.map +0 -1
- package/dist/core/middleware/built-in/session.d.ts +0 -41
- package/dist/core/middleware/built-in/session.js +0 -209
- package/dist/core/middleware/built-in/session.js.map +0 -1
- package/dist/core/middleware/built-in/sse.d.ts +0 -6
- package/dist/core/middleware/built-in/sse.js +0 -71
- package/dist/core/middleware/built-in/sse.js.map +0 -1
- package/dist/core/middleware/built-in/validation.d.ts +0 -2
- package/dist/core/middleware/built-in/validation.js.map +0 -1
- package/src/core/auth/README.md +0 -339
- package/src/core/auth/morojs-adapter.ts +0 -410
- package/src/core/config/file-loader.ts +0 -407
- package/src/core/config/index.ts +0 -60
- package/src/core/config/loader.ts +0 -633
- package/src/core/config/schema.ts +0 -150
- package/src/core/config/utils.ts +0 -251
- package/src/core/config/validation.ts +0 -140
- package/src/core/database/README.md +0 -228
- package/src/core/database/adapters/drizzle.ts +0 -403
- package/src/core/database/adapters/index.ts +0 -42
- package/src/core/database/adapters/mongodb.ts +0 -269
- package/src/core/database/adapters/mysql.ts +0 -207
- package/src/core/database/adapters/postgresql.ts +0 -201
- package/src/core/database/adapters/redis.ts +0 -326
- package/src/core/database/adapters/sqlite.ts +0 -247
- package/src/core/database/index.ts +0 -3
- package/src/core/docs/index.ts +0 -231
- package/src/core/docs/openapi-generator.ts +0 -576
- package/src/core/docs/schema-to-openapi.ts +0 -148
- package/src/core/docs/simple-docs.ts +0 -295
- package/src/core/docs/swagger-ui.ts +0 -351
- package/src/core/docs/zod-to-openapi.ts +0 -532
- package/src/core/events/event-bus.ts +0 -231
- package/src/core/events/index.ts +0 -12
- package/src/core/framework.ts +0 -636
- package/src/core/http/http-server.ts +0 -1787
- package/src/core/http/index.ts +0 -6
- package/src/core/http/router.ts +0 -141
- package/src/core/logger/filters.ts +0 -145
- package/src/core/logger/index.ts +0 -20
- package/src/core/logger/logger.ts +0 -814
- package/src/core/logger/outputs.ts +0 -134
- package/src/core/middleware/built-in/adapters/cache/file.ts +0 -104
- package/src/core/middleware/built-in/adapters/cache/index.ts +0 -23
- package/src/core/middleware/built-in/adapters/cache/memory.ts +0 -73
- package/src/core/middleware/built-in/adapters/cache/redis.ts +0 -100
- package/src/core/middleware/built-in/adapters/cdn/azure.ts +0 -60
- package/src/core/middleware/built-in/adapters/cdn/cloudflare.ts +0 -83
- package/src/core/middleware/built-in/adapters/cdn/cloudfront.ts +0 -83
- package/src/core/middleware/built-in/adapters/cdn/index.ts +0 -23
- package/src/core/middleware/built-in/adapters/index.ts +0 -7
- package/src/core/middleware/built-in/auth-helpers.ts +0 -401
- package/src/core/middleware/built-in/auth-providers.ts +0 -480
- package/src/core/middleware/built-in/auth.ts +0 -329
- package/src/core/middleware/built-in/cache.ts +0 -211
- package/src/core/middleware/built-in/cdn.ts +0 -124
- package/src/core/middleware/built-in/cookie.ts +0 -85
- package/src/core/middleware/built-in/cors.ts +0 -38
- package/src/core/middleware/built-in/csp.ts +0 -101
- package/src/core/middleware/built-in/csrf.ts +0 -82
- package/src/core/middleware/built-in/error-tracker.ts +0 -16
- package/src/core/middleware/built-in/index.ts +0 -79
- package/src/core/middleware/built-in/performance-monitor.ts +0 -25
- package/src/core/middleware/built-in/rate-limit.ts +0 -60
- package/src/core/middleware/built-in/request-logger.ts +0 -14
- package/src/core/middleware/built-in/session.ts +0 -288
- package/src/core/middleware/built-in/sse.ts +0 -86
- package/src/core/middleware/built-in/validation.ts +0 -33
- package/src/core/middleware/index.ts +0 -177
- package/src/core/modules/auto-discovery.ts +0 -263
- package/src/core/modules/index.ts +0 -3
- package/src/core/modules/modules.ts +0 -124
- package/src/core/networking/adapters/index.ts +0 -16
- package/src/core/networking/adapters/socketio-adapter.ts +0 -252
- package/src/core/networking/adapters/ws-adapter.ts +0 -430
- package/src/core/networking/index.ts +0 -3
- package/src/core/networking/service-discovery.ts +0 -304
- package/src/core/networking/websocket-adapter.ts +0 -217
- package/src/core/networking/websocket-manager.ts +0 -308
- package/src/core/routing/app-integration.ts +0 -216
- package/src/core/routing/index.ts +0 -488
- package/src/core/runtime/aws-lambda-adapter.ts +0 -147
- package/src/core/runtime/base-adapter.ts +0 -130
- package/src/core/runtime/cloudflare-workers-adapter.ts +0 -152
- package/src/core/runtime/index.ts +0 -62
- package/src/core/runtime/node-adapter.ts +0 -196
- package/src/core/runtime/vercel-edge-adapter.ts +0 -114
- package/src/core/utilities/circuit-breaker.ts +0 -46
- package/src/core/utilities/container.ts +0 -736
- package/src/core/utilities/hooks.ts +0 -142
- package/src/core/utilities/index.ts +0 -16
- package/src/core/validation/adapters.ts +0 -147
- package/src/core/validation/index.ts +0 -206
- package/src/core/validation/schema-interface.ts +0 -100
- package/src/index.ts +0 -226
- package/src/moro.ts +0 -1197
- package/src/types/auth.ts +0 -440
- package/src/types/cache.ts +0 -38
- package/src/types/cdn.ts +0 -22
- package/src/types/config.ts +0 -157
- package/src/types/core.ts +0 -56
- package/src/types/database.ts +0 -32
- package/src/types/discovery.ts +0 -7
- package/src/types/events.ts +0 -82
- package/src/types/hooks.ts +0 -47
- package/src/types/http.ts +0 -67
- package/src/types/logger.ts +0 -93
- package/src/types/module.ts +0 -87
- package/src/types/runtime.ts +0 -76
- package/src/types/session.ts +0 -89
- package/tsconfig.json +0 -21
- /package/dist/core/middleware/built-in/{auth-helpers.d.ts → auth/helpers.d.ts} +0 -0
|
@@ -1,46 +1,36 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DrizzleAdapter = exports.RedisAdapter = exports.MongoDBAdapter = exports.SQLiteAdapter = exports.PostgreSQLAdapter = exports.MySQLAdapter = void 0;
|
|
4
|
-
exports.createDatabaseAdapter = createDatabaseAdapter;
|
|
5
1
|
// Database Adapters
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
const mysql_2 = require("./mysql");
|
|
19
|
-
const postgresql_2 = require("./postgresql");
|
|
20
|
-
const sqlite_2 = require("./sqlite");
|
|
21
|
-
const mongodb_2 = require("./mongodb");
|
|
22
|
-
const redis_2 = require("./redis");
|
|
23
|
-
const drizzle_2 = require("./drizzle");
|
|
2
|
+
export { MySQLAdapter } from './mysql.js';
|
|
3
|
+
export { PostgreSQLAdapter } from './postgresql.js';
|
|
4
|
+
export { SQLiteAdapter } from './sqlite.js';
|
|
5
|
+
export { MongoDBAdapter } from './mongodb.js';
|
|
6
|
+
export { RedisAdapter } from './redis.js';
|
|
7
|
+
export { DrizzleAdapter } from './drizzle.js';
|
|
8
|
+
import { MySQLAdapter } from './mysql.js';
|
|
9
|
+
import { PostgreSQLAdapter } from './postgresql.js';
|
|
10
|
+
import { SQLiteAdapter } from './sqlite.js';
|
|
11
|
+
import { MongoDBAdapter } from './mongodb.js';
|
|
12
|
+
import { RedisAdapter } from './redis.js';
|
|
13
|
+
import { DrizzleAdapter } from './drizzle.js';
|
|
24
14
|
// Adapter factory function for auto-loading
|
|
25
|
-
function createDatabaseAdapter(type, options = {}) {
|
|
15
|
+
export function createDatabaseAdapter(type, options = {}) {
|
|
26
16
|
switch (type.toLowerCase()) {
|
|
27
17
|
case 'mysql':
|
|
28
|
-
return new
|
|
18
|
+
return new MySQLAdapter(options);
|
|
29
19
|
case 'postgresql':
|
|
30
20
|
case 'postgres':
|
|
31
21
|
case 'pg':
|
|
32
|
-
return new
|
|
22
|
+
return new PostgreSQLAdapter(options);
|
|
33
23
|
case 'sqlite':
|
|
34
24
|
case 'sqlite3':
|
|
35
|
-
return new
|
|
25
|
+
return new SQLiteAdapter(options);
|
|
36
26
|
case 'mongodb':
|
|
37
27
|
case 'mongo':
|
|
38
|
-
return new
|
|
28
|
+
return new MongoDBAdapter(options);
|
|
39
29
|
case 'redis':
|
|
40
|
-
return new
|
|
30
|
+
return new RedisAdapter(options);
|
|
41
31
|
case 'drizzle':
|
|
42
32
|
case 'orm':
|
|
43
|
-
return new
|
|
33
|
+
return new DrizzleAdapter(options);
|
|
44
34
|
default:
|
|
45
35
|
throw new Error(`Unknown database adapter type: ${type}. Available types: mysql, postgresql, sqlite, mongodb, redis, drizzle`);
|
|
46
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/database/adapters/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/database/adapters/index.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9C,4CAA4C;AAC5C,MAAM,UAAU,qBAAqB,CAAC,IAAY,EAAE,UAAe,EAAE;IACnE,QAAQ,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QAC3B,KAAK,OAAO;YACV,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC;QACnC,KAAK,YAAY,CAAC;QAClB,KAAK,UAAU,CAAC;QAChB,KAAK,IAAI;YACP,OAAO,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACxC,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS;YACZ,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC;QACpC,KAAK,SAAS,CAAC;QACf,KAAK,OAAO;YACV,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;QACrC,KAAK,OAAO;YACV,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC;QACnC,KAAK,SAAS,CAAC;QACf,KAAK,KAAK;YACR,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;QACrC;YACE,MAAM,IAAI,KAAK,CACb,kCAAkC,IAAI,uEAAuE,CAC9G,CAAC;IACN,CAAC;AACH,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DatabaseAdapter, DatabaseTransaction } from '../../../types/database';
|
|
1
|
+
import { DatabaseAdapter, DatabaseTransaction } from '../../../types/database.js';
|
|
2
2
|
interface MongoDBConfig {
|
|
3
3
|
url?: string;
|
|
4
4
|
host?: string;
|
|
@@ -8,6 +8,16 @@ interface MongoDBConfig {
|
|
|
8
8
|
database?: string;
|
|
9
9
|
authSource?: string;
|
|
10
10
|
ssl?: boolean;
|
|
11
|
+
tls?: {
|
|
12
|
+
ca?: string;
|
|
13
|
+
cert?: string;
|
|
14
|
+
key?: string;
|
|
15
|
+
passphrase?: string;
|
|
16
|
+
insecure?: boolean;
|
|
17
|
+
allowInvalidCertificates?: boolean;
|
|
18
|
+
allowInvalidHostnames?: boolean;
|
|
19
|
+
checkServerIdentity?: boolean;
|
|
20
|
+
};
|
|
11
21
|
replicaSet?: string;
|
|
12
22
|
maxPoolSize?: number;
|
|
13
23
|
minPoolSize?: number;
|
|
@@ -16,7 +26,9 @@ export declare class MongoDBAdapter implements DatabaseAdapter {
|
|
|
16
26
|
private client;
|
|
17
27
|
private db;
|
|
18
28
|
private logger;
|
|
29
|
+
private initPromise;
|
|
19
30
|
constructor(config: MongoDBConfig);
|
|
31
|
+
private initialize;
|
|
20
32
|
private buildConnectionString;
|
|
21
33
|
connect(): Promise<void>;
|
|
22
34
|
disconnect(): Promise<void>;
|
|
@@ -1,20 +1,45 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const logger_1 = require("../../logger");
|
|
5
|
-
class MongoDBAdapter {
|
|
1
|
+
import { createFrameworkLogger } from '../../logger/index.js';
|
|
2
|
+
import { resolveUserPackage } from '../../utilities/package-utils.js';
|
|
3
|
+
export class MongoDBAdapter {
|
|
6
4
|
client;
|
|
7
5
|
db;
|
|
8
|
-
logger =
|
|
6
|
+
logger = createFrameworkLogger('MongoDB');
|
|
7
|
+
initPromise;
|
|
9
8
|
constructor(config) {
|
|
9
|
+
this.initPromise = this.initialize(config);
|
|
10
|
+
}
|
|
11
|
+
async initialize(config) {
|
|
10
12
|
try {
|
|
11
|
-
const
|
|
13
|
+
const mongodbPath = resolveUserPackage('mongodb');
|
|
14
|
+
const mongodb = await import(mongodbPath);
|
|
15
|
+
const { MongoClient } = mongodb;
|
|
12
16
|
const url = config.url || this.buildConnectionString(config);
|
|
13
|
-
|
|
17
|
+
const clientOptions = {
|
|
14
18
|
maxPoolSize: config.maxPoolSize || 10,
|
|
15
19
|
minPoolSize: config.minPoolSize || 0,
|
|
16
20
|
ssl: config.ssl || false,
|
|
17
|
-
}
|
|
21
|
+
};
|
|
22
|
+
// Add TLS options if provided
|
|
23
|
+
if (config.tls) {
|
|
24
|
+
clientOptions.tls = true;
|
|
25
|
+
if (config.tls.ca)
|
|
26
|
+
clientOptions.tlsCAFile = config.tls.ca;
|
|
27
|
+
if (config.tls.cert)
|
|
28
|
+
clientOptions.tlsCertificateFile = config.tls.cert;
|
|
29
|
+
if (config.tls.key)
|
|
30
|
+
clientOptions.tlsCertificateKeyFile = config.tls.key;
|
|
31
|
+
if (config.tls.passphrase)
|
|
32
|
+
clientOptions.tlsCertificateKeyFilePassword = config.tls.passphrase;
|
|
33
|
+
if (config.tls.insecure)
|
|
34
|
+
clientOptions.tlsInsecure = config.tls.insecure;
|
|
35
|
+
if (config.tls.allowInvalidCertificates)
|
|
36
|
+
clientOptions.tlsAllowInvalidCertificates = config.tls.allowInvalidCertificates;
|
|
37
|
+
if (config.tls.allowInvalidHostnames)
|
|
38
|
+
clientOptions.tlsAllowInvalidHostnames = config.tls.allowInvalidHostnames;
|
|
39
|
+
if (config.tls.checkServerIdentity === false)
|
|
40
|
+
clientOptions.checkServerIdentity = false;
|
|
41
|
+
}
|
|
42
|
+
this.client = new MongoClient(url, clientOptions);
|
|
18
43
|
this.db = this.client.db(config.database || 'moro_app');
|
|
19
44
|
this.logger.info('MongoDB adapter initialized', 'MongoDB');
|
|
20
45
|
}
|
|
@@ -30,6 +55,7 @@ class MongoDBAdapter {
|
|
|
30
55
|
return `mongodb://${auth}${host}:${port}/${config.database || 'moro_app'}${authSource}`;
|
|
31
56
|
}
|
|
32
57
|
async connect() {
|
|
58
|
+
await this.initPromise;
|
|
33
59
|
try {
|
|
34
60
|
await this.client.connect();
|
|
35
61
|
await this.client.db('admin').command({ ping: 1 });
|
|
@@ -43,10 +69,12 @@ class MongoDBAdapter {
|
|
|
43
69
|
}
|
|
44
70
|
}
|
|
45
71
|
async disconnect() {
|
|
72
|
+
await this.initPromise;
|
|
46
73
|
await this.client.close();
|
|
47
74
|
}
|
|
48
75
|
// For MongoDB, we'll treat "sql" as collection name and "params" as query/pipeline
|
|
49
76
|
async query(collection, pipeline) {
|
|
77
|
+
await this.initPromise;
|
|
50
78
|
try {
|
|
51
79
|
const coll = this.db.collection(collection);
|
|
52
80
|
if (pipeline && Array.isArray(pipeline)) {
|
|
@@ -74,6 +102,7 @@ class MongoDBAdapter {
|
|
|
74
102
|
}
|
|
75
103
|
}
|
|
76
104
|
async queryOne(collection, query) {
|
|
105
|
+
await this.initPromise;
|
|
77
106
|
try {
|
|
78
107
|
const coll = this.db.collection(collection);
|
|
79
108
|
return await coll.findOne(query || {});
|
|
@@ -87,6 +116,7 @@ class MongoDBAdapter {
|
|
|
87
116
|
}
|
|
88
117
|
}
|
|
89
118
|
async insert(collection, data) {
|
|
119
|
+
await this.initPromise;
|
|
90
120
|
try {
|
|
91
121
|
const coll = this.db.collection(collection);
|
|
92
122
|
const result = await coll.insertOne(data);
|
|
@@ -102,6 +132,7 @@ class MongoDBAdapter {
|
|
|
102
132
|
}
|
|
103
133
|
}
|
|
104
134
|
async update(collection, data, where) {
|
|
135
|
+
await this.initPromise;
|
|
105
136
|
try {
|
|
106
137
|
const coll = this.db.collection(collection);
|
|
107
138
|
const result = await coll.findOneAndUpdate(where, { $set: data }, { returnDocument: 'after' });
|
|
@@ -116,6 +147,7 @@ class MongoDBAdapter {
|
|
|
116
147
|
}
|
|
117
148
|
}
|
|
118
149
|
async delete(collection, where) {
|
|
150
|
+
await this.initPromise;
|
|
119
151
|
try {
|
|
120
152
|
const coll = this.db.collection(collection);
|
|
121
153
|
const result = await coll.deleteMany(where);
|
|
@@ -130,6 +162,7 @@ class MongoDBAdapter {
|
|
|
130
162
|
}
|
|
131
163
|
}
|
|
132
164
|
async transaction(callback) {
|
|
165
|
+
await this.initPromise;
|
|
133
166
|
const session = this.client.startSession();
|
|
134
167
|
try {
|
|
135
168
|
return await session.withTransaction(async () => {
|
|
@@ -143,19 +176,23 @@ class MongoDBAdapter {
|
|
|
143
176
|
}
|
|
144
177
|
// MongoDB-specific methods
|
|
145
178
|
async aggregate(collection, pipeline) {
|
|
179
|
+
await this.initPromise;
|
|
146
180
|
const coll = this.db.collection(collection);
|
|
147
181
|
const cursor = coll.aggregate(pipeline);
|
|
148
182
|
return await cursor.toArray();
|
|
149
183
|
}
|
|
150
184
|
async createIndex(collection, index, options) {
|
|
185
|
+
await this.initPromise;
|
|
151
186
|
const coll = this.db.collection(collection);
|
|
152
187
|
return await coll.createIndex(index, options);
|
|
153
188
|
}
|
|
154
189
|
async dropIndex(collection, indexName) {
|
|
190
|
+
await this.initPromise;
|
|
155
191
|
const coll = this.db.collection(collection);
|
|
156
192
|
return await coll.dropIndex(indexName);
|
|
157
193
|
}
|
|
158
194
|
async count(collection, query) {
|
|
195
|
+
await this.initPromise;
|
|
159
196
|
const coll = this.db.collection(collection);
|
|
160
197
|
return await coll.countDocuments(query || {});
|
|
161
198
|
}
|
|
@@ -163,7 +200,6 @@ class MongoDBAdapter {
|
|
|
163
200
|
return this.db.collection(name);
|
|
164
201
|
}
|
|
165
202
|
}
|
|
166
|
-
exports.MongoDBAdapter = MongoDBAdapter;
|
|
167
203
|
class MongoDBTransaction {
|
|
168
204
|
db;
|
|
169
205
|
session;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mongodb.js","sourceRoot":"","sources":["../../../../src/core/database/adapters/mongodb.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mongodb.js","sourceRoot":"","sources":["../../../../src/core/database/adapters/mongodb.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DatabaseAdapter, DatabaseTransaction } from '../../../types/database';
|
|
1
|
+
import { DatabaseAdapter, DatabaseTransaction } from '../../../types/database.js';
|
|
2
2
|
interface MySQLConfig {
|
|
3
3
|
host?: string;
|
|
4
4
|
port?: number;
|
|
@@ -6,11 +6,24 @@ interface MySQLConfig {
|
|
|
6
6
|
password?: string;
|
|
7
7
|
database?: string;
|
|
8
8
|
connectionLimit?: number;
|
|
9
|
+
ssl?: {
|
|
10
|
+
rejectUnauthorized?: boolean;
|
|
11
|
+
ca?: string;
|
|
12
|
+
cert?: string;
|
|
13
|
+
key?: string;
|
|
14
|
+
passphrase?: string;
|
|
15
|
+
servername?: string;
|
|
16
|
+
checkServerIdentity?: boolean;
|
|
17
|
+
ciphers?: string;
|
|
18
|
+
secureProtocol?: string;
|
|
19
|
+
} | boolean;
|
|
9
20
|
}
|
|
10
21
|
export declare class MySQLAdapter implements DatabaseAdapter {
|
|
11
22
|
private pool;
|
|
12
23
|
private logger;
|
|
24
|
+
private initPromise;
|
|
13
25
|
constructor(config: MySQLConfig);
|
|
26
|
+
private initialize;
|
|
14
27
|
connect(): Promise<void>;
|
|
15
28
|
disconnect(): Promise<void>;
|
|
16
29
|
query<T = any>(sql: string, params?: any[]): Promise<T[]>;
|
|
@@ -1,14 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const logger_1 = require("../../logger");
|
|
5
|
-
class MySQLAdapter {
|
|
1
|
+
import { createFrameworkLogger } from '../../logger/index.js';
|
|
2
|
+
import { resolveUserPackage } from '../../utilities/package-utils.js';
|
|
3
|
+
export class MySQLAdapter {
|
|
6
4
|
pool;
|
|
7
|
-
logger =
|
|
5
|
+
logger = createFrameworkLogger('MySQL');
|
|
6
|
+
initPromise;
|
|
8
7
|
constructor(config) {
|
|
8
|
+
this.initPromise = this.initialize(config);
|
|
9
|
+
}
|
|
10
|
+
async initialize(config) {
|
|
9
11
|
try {
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
+
const mysqlPath = resolveUserPackage('mysql2/promise');
|
|
13
|
+
const mysql = await import(mysqlPath);
|
|
14
|
+
this.pool = mysql.default.createPool({
|
|
12
15
|
host: config.host || 'localhost',
|
|
13
16
|
port: config.port || 3306,
|
|
14
17
|
user: config.user || 'root',
|
|
@@ -17,6 +20,7 @@ class MySQLAdapter {
|
|
|
17
20
|
waitForConnections: true,
|
|
18
21
|
connectionLimit: config.connectionLimit || 10,
|
|
19
22
|
queueLimit: 0,
|
|
23
|
+
ssl: typeof config.ssl === 'object' ? { ...config.ssl } : config.ssl || false,
|
|
20
24
|
});
|
|
21
25
|
}
|
|
22
26
|
catch (error) {
|
|
@@ -24,6 +28,7 @@ class MySQLAdapter {
|
|
|
24
28
|
}
|
|
25
29
|
}
|
|
26
30
|
async connect() {
|
|
31
|
+
await this.initPromise;
|
|
27
32
|
try {
|
|
28
33
|
const connection = await this.pool.getConnection();
|
|
29
34
|
connection.release();
|
|
@@ -37,9 +42,11 @@ class MySQLAdapter {
|
|
|
37
42
|
}
|
|
38
43
|
}
|
|
39
44
|
async disconnect() {
|
|
45
|
+
await this.initPromise;
|
|
40
46
|
await this.pool.end();
|
|
41
47
|
}
|
|
42
48
|
async query(sql, params) {
|
|
49
|
+
await this.initPromise;
|
|
43
50
|
const [rows] = await this.pool.execute(sql, params);
|
|
44
51
|
return rows;
|
|
45
52
|
}
|
|
@@ -48,6 +55,7 @@ class MySQLAdapter {
|
|
|
48
55
|
return results.length > 0 ? results[0] : null;
|
|
49
56
|
}
|
|
50
57
|
async insert(table, data) {
|
|
58
|
+
await this.initPromise;
|
|
51
59
|
const keys = Object.keys(data);
|
|
52
60
|
const values = Object.values(data);
|
|
53
61
|
const placeholders = keys.map(() => '?').join(', ');
|
|
@@ -60,6 +68,7 @@ class MySQLAdapter {
|
|
|
60
68
|
return insertedRecord;
|
|
61
69
|
}
|
|
62
70
|
async update(table, data, where) {
|
|
71
|
+
await this.initPromise;
|
|
63
72
|
const setClause = Object.keys(data)
|
|
64
73
|
.map(key => `${key} = ?`)
|
|
65
74
|
.join(', ');
|
|
@@ -74,6 +83,7 @@ class MySQLAdapter {
|
|
|
74
83
|
return updatedRecord;
|
|
75
84
|
}
|
|
76
85
|
async delete(table, where) {
|
|
86
|
+
await this.initPromise;
|
|
77
87
|
const whereClause = Object.keys(where)
|
|
78
88
|
.map(key => `${key} = ?`)
|
|
79
89
|
.join(' AND ');
|
|
@@ -82,6 +92,7 @@ class MySQLAdapter {
|
|
|
82
92
|
return result.affectedRows;
|
|
83
93
|
}
|
|
84
94
|
async transaction(callback) {
|
|
95
|
+
await this.initPromise;
|
|
85
96
|
const connection = await this.pool.getConnection();
|
|
86
97
|
try {
|
|
87
98
|
await connection.beginTransaction();
|
|
@@ -99,7 +110,6 @@ class MySQLAdapter {
|
|
|
99
110
|
}
|
|
100
111
|
}
|
|
101
112
|
}
|
|
102
|
-
exports.MySQLAdapter = MySQLAdapter;
|
|
103
113
|
class MySQLTransaction {
|
|
104
114
|
connection;
|
|
105
115
|
constructor(connection) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mysql.js","sourceRoot":"","sources":["../../../../src/core/database/adapters/mysql.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mysql.js","sourceRoot":"","sources":["../../../../src/core/database/adapters/mysql.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAwBtE,MAAM,OAAO,YAAY;IACf,IAAI,CAAM;IACV,MAAM,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACxC,WAAW,CAAgB;IAEnC,YAAY,MAAmB;QAC7B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,MAAmB;QAC1C,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;YACvD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;YACtC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;gBACnC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,WAAW;gBAChC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI;gBACzB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,MAAM;gBAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,EAAE;gBAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,UAAU;gBACvC,kBAAkB,EAAE,IAAI;gBACxB,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,EAAE;gBAC7C,UAAU,EAAE,CAAC;gBACb,GAAG,EAAE,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,KAAK;aAC9E,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,mFAAmF,CACpF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACnD,UAAU,CAAC,OAAO,EAAE,CAAC;YACrB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,YAAY,CAAC,CAAC;QACjE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,YAAY,EAAE;gBACzD,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,KAAK,CAAU,GAAW,EAAE,MAAc;QAC9C,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACpD,OAAO,IAAW,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAU,GAAW,EAAE,MAAc;QACjD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAI,GAAG,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,MAAM,CAAU,KAAa,EAAE,IAAyB;QAC5D,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEpD,MAAM,GAAG,GAAG,eAAe,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,YAAY,GAAG,CAAC;QACjF,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAQ,CAAC;QAE/D,6BAA6B;QAC7B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAI,iBAAiB,KAAK,eAAe,EAAE;YACnF,MAAM,CAAC,QAAQ;SAChB,CAAC,CAAC;QAEH,OAAO,cAAe,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,MAAM,CACV,KAAa,EACb,IAAyB,EACzB,KAA0B;QAE1B,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;aAChC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC;aACxB,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;aACnC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC;aACxB,IAAI,CAAC,OAAO,CAAC,CAAC;QAEjB,MAAM,GAAG,GAAG,UAAU,KAAK,QAAQ,SAAS,UAAU,WAAW,EAAE,CAAC;QACpE,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAEjE,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAErC,4BAA4B;QAC5B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,QAAQ,CACvC,iBAAiB,KAAK,UAAU,WAAW,EAAE,EAC7C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CACrB,CAAC;QAEF,OAAO,aAAc,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,KAA0B;QACpD,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;aACnC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC;aACxB,IAAI,CAAC,OAAO,CAAC,CAAC;QACjB,MAAM,GAAG,GAAG,eAAe,KAAK,UAAU,WAAW,EAAE,CAAC;QAExD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAQ,CAAC;QAC7E,OAAO,MAAM,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,WAAW,CAAI,QAAiD;QACpE,MAAM,IAAI,CAAC,WAAW,CAAC;QACvB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAEnD,IAAI,CAAC;YACH,MAAM,UAAU,CAAC,gBAAgB,EAAE,CAAC;YAEpC,MAAM,WAAW,GAAG,IAAI,gBAAgB,CAAC,UAAU,CAAC,CAAC;YACrD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;YAE3C,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;YAC1B,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC;YAC5B,MAAM,KAAK,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,OAAO,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;CACF;AAED,MAAM,gBAAgB;IACA;IAApB,YAAoB,UAAe;QAAf,eAAU,GAAV,UAAU,CAAK;IAAG,CAAC;IAEvC,KAAK,CAAC,KAAK,CAAU,GAAW,EAAE,MAAc;QAC9C,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC1D,OAAO,IAAW,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAU,GAAW,EAAE,MAAc;QACjD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAI,GAAG,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,MAAM,CAAU,KAAa,EAAE,IAAyB;QAC5D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEpD,MAAM,GAAG,GAAG,eAAe,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,YAAY,GAAG,CAAC;QACjF,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAQ,CAAC;QAErE,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAI,iBAAiB,KAAK,eAAe,EAAE;YACnF,MAAM,CAAC,QAAQ;SAChB,CAAC,CAAC;QAEH,OAAO,cAAe,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,MAAM,CACV,KAAa,EACb,IAAyB,EACzB,KAA0B;QAE1B,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;aAChC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC;aACxB,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;aACnC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC;aACxB,IAAI,CAAC,OAAO,CAAC,CAAC;QAEjB,MAAM,GAAG,GAAG,UAAU,KAAK,QAAQ,SAAS,UAAU,WAAW,EAAE,CAAC;QACpE,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAEjE,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAE3C,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,QAAQ,CACvC,iBAAiB,KAAK,UAAU,WAAW,EAAE,EAC7C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CACrB,CAAC;QAEF,OAAO,aAAc,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,KAA0B;QACpD,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;aACnC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC;aACxB,IAAI,CAAC,OAAO,CAAC,CAAC;QACjB,MAAM,GAAG,GAAG,eAAe,KAAK,UAAU,WAAW,EAAE,CAAC;QAExD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAQ,CAAC;QACnF,OAAO,MAAM,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;IACnC,CAAC;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DatabaseAdapter, DatabaseTransaction } from '../../../types/database';
|
|
1
|
+
import { DatabaseAdapter, DatabaseTransaction } from '../../../types/database.js';
|
|
2
2
|
interface PostgreSQLConfig {
|
|
3
3
|
host?: string;
|
|
4
4
|
port?: number;
|
|
@@ -6,12 +6,22 @@ interface PostgreSQLConfig {
|
|
|
6
6
|
password?: string;
|
|
7
7
|
database?: string;
|
|
8
8
|
connectionLimit?: number;
|
|
9
|
-
ssl?:
|
|
9
|
+
ssl?: {
|
|
10
|
+
rejectUnauthorized?: boolean;
|
|
11
|
+
ca?: string;
|
|
12
|
+
cert?: string;
|
|
13
|
+
key?: string;
|
|
14
|
+
passphrase?: string;
|
|
15
|
+
servername?: string;
|
|
16
|
+
checkServerIdentity?: boolean;
|
|
17
|
+
} | boolean;
|
|
10
18
|
}
|
|
11
19
|
export declare class PostgreSQLAdapter implements DatabaseAdapter {
|
|
12
20
|
private pool;
|
|
13
21
|
private logger;
|
|
22
|
+
private initPromise;
|
|
14
23
|
constructor(config: PostgreSQLConfig);
|
|
24
|
+
private initialize;
|
|
15
25
|
connect(): Promise<void>;
|
|
16
26
|
disconnect(): Promise<void>;
|
|
17
27
|
query<T = any>(sql: string, params?: any[]): Promise<T[]>;
|
|
@@ -1,13 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const logger_1 = require("../../logger");
|
|
5
|
-
class PostgreSQLAdapter {
|
|
1
|
+
import { createFrameworkLogger } from '../../logger/index.js';
|
|
2
|
+
import { resolveUserPackage } from '../../utilities/package-utils.js';
|
|
3
|
+
export class PostgreSQLAdapter {
|
|
6
4
|
pool;
|
|
7
|
-
logger =
|
|
5
|
+
logger = createFrameworkLogger('PostgreSQL');
|
|
6
|
+
initPromise;
|
|
8
7
|
constructor(config) {
|
|
8
|
+
this.initPromise = this.initialize(config);
|
|
9
|
+
}
|
|
10
|
+
async initialize(config) {
|
|
9
11
|
try {
|
|
10
|
-
const
|
|
12
|
+
const pgPath = resolveUserPackage('pg');
|
|
13
|
+
const pg = await import(pgPath);
|
|
14
|
+
const { Pool } = pg.default;
|
|
11
15
|
this.pool = new Pool({
|
|
12
16
|
host: config.host || 'localhost',
|
|
13
17
|
port: config.port || 5432,
|
|
@@ -15,7 +19,7 @@ class PostgreSQLAdapter {
|
|
|
15
19
|
password: config.password || '',
|
|
16
20
|
database: config.database || 'moro_app',
|
|
17
21
|
max: config.connectionLimit || 10,
|
|
18
|
-
ssl: config.ssl || false,
|
|
22
|
+
ssl: typeof config.ssl === 'object' ? { ...config.ssl } : config.ssl || false,
|
|
19
23
|
});
|
|
20
24
|
this.pool.on('error', (err) => {
|
|
21
25
|
this.logger.error('PostgreSQL pool error', 'Pool', {
|
|
@@ -29,6 +33,7 @@ class PostgreSQLAdapter {
|
|
|
29
33
|
}
|
|
30
34
|
}
|
|
31
35
|
async connect() {
|
|
36
|
+
await this.initPromise;
|
|
32
37
|
try {
|
|
33
38
|
const client = await this.pool.connect();
|
|
34
39
|
client.release();
|
|
@@ -42,9 +47,11 @@ class PostgreSQLAdapter {
|
|
|
42
47
|
}
|
|
43
48
|
}
|
|
44
49
|
async disconnect() {
|
|
50
|
+
await this.initPromise;
|
|
45
51
|
await this.pool.end();
|
|
46
52
|
}
|
|
47
53
|
async query(sql, params) {
|
|
54
|
+
await this.initPromise;
|
|
48
55
|
const result = await this.pool.query(sql, params);
|
|
49
56
|
return result.rows;
|
|
50
57
|
}
|
|
@@ -53,6 +60,7 @@ class PostgreSQLAdapter {
|
|
|
53
60
|
return results.length > 0 ? results[0] : null;
|
|
54
61
|
}
|
|
55
62
|
async insert(table, data) {
|
|
63
|
+
await this.initPromise;
|
|
56
64
|
const keys = Object.keys(data);
|
|
57
65
|
const values = Object.values(data);
|
|
58
66
|
const placeholders = keys.map((_, index) => `$${index + 1}`).join(', ');
|
|
@@ -61,6 +69,7 @@ class PostgreSQLAdapter {
|
|
|
61
69
|
return result.rows[0];
|
|
62
70
|
}
|
|
63
71
|
async update(table, data, where) {
|
|
72
|
+
await this.initPromise;
|
|
64
73
|
const dataKeys = Object.keys(data);
|
|
65
74
|
const dataValues = Object.values(data);
|
|
66
75
|
const whereKeys = Object.keys(where);
|
|
@@ -75,6 +84,7 @@ class PostgreSQLAdapter {
|
|
|
75
84
|
return result.rows[0];
|
|
76
85
|
}
|
|
77
86
|
async delete(table, where) {
|
|
87
|
+
await this.initPromise;
|
|
78
88
|
const whereKeys = Object.keys(where);
|
|
79
89
|
const whereValues = Object.values(where);
|
|
80
90
|
const whereClause = whereKeys.map((key, index) => `${key} = $${index + 1}`).join(' AND ');
|
|
@@ -83,6 +93,7 @@ class PostgreSQLAdapter {
|
|
|
83
93
|
return result.rowCount || 0;
|
|
84
94
|
}
|
|
85
95
|
async transaction(callback) {
|
|
96
|
+
await this.initPromise;
|
|
86
97
|
const client = await this.pool.connect();
|
|
87
98
|
try {
|
|
88
99
|
await client.query('BEGIN');
|
|
@@ -100,7 +111,6 @@ class PostgreSQLAdapter {
|
|
|
100
111
|
}
|
|
101
112
|
}
|
|
102
113
|
}
|
|
103
|
-
exports.PostgreSQLAdapter = PostgreSQLAdapter;
|
|
104
114
|
class PostgreSQLTransaction {
|
|
105
115
|
client;
|
|
106
116
|
constructor(client) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgresql.js","sourceRoot":"","sources":["../../../../src/core/database/adapters/postgresql.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"postgresql.js","sourceRoot":"","sources":["../../../../src/core/database/adapters/postgresql.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DatabaseAdapter, DatabaseTransaction } from '../../../types/database';
|
|
1
|
+
import { DatabaseAdapter, DatabaseTransaction } from '../../../types/database.js';
|
|
2
2
|
interface RedisConfig {
|
|
3
3
|
host?: string;
|
|
4
4
|
port?: number;
|
|
@@ -8,6 +8,15 @@ interface RedisConfig {
|
|
|
8
8
|
maxRetriesPerRequest?: number;
|
|
9
9
|
retryDelayOnFailover?: number;
|
|
10
10
|
lazyConnect?: boolean;
|
|
11
|
+
tls?: {
|
|
12
|
+
rejectUnauthorized?: boolean;
|
|
13
|
+
ca?: string;
|
|
14
|
+
cert?: string;
|
|
15
|
+
key?: string;
|
|
16
|
+
passphrase?: string;
|
|
17
|
+
servername?: string;
|
|
18
|
+
checkServerIdentity?: boolean;
|
|
19
|
+
};
|
|
11
20
|
cluster?: {
|
|
12
21
|
enableReadyCheck?: boolean;
|
|
13
22
|
redisOptions?: any;
|
|
@@ -21,7 +30,9 @@ export declare class RedisAdapter implements DatabaseAdapter {
|
|
|
21
30
|
private client;
|
|
22
31
|
private logger;
|
|
23
32
|
private keyPrefix;
|
|
33
|
+
private initPromise;
|
|
24
34
|
constructor(config?: RedisConfig);
|
|
35
|
+
private initialize;
|
|
25
36
|
private prefixKey;
|
|
26
37
|
connect(): Promise<void>;
|
|
27
38
|
disconnect(): Promise<void>;
|