@morojs/moro 1.5.16 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +70 -269
- package/dist/core/auth/morojs-adapter.js +5 -9
- package/dist/core/auth/morojs-adapter.js.map +1 -1
- package/dist/core/config/config-manager.d.ts +1 -1
- package/dist/core/config/config-manager.js +10 -20
- package/dist/core/config/config-manager.js.map +1 -1
- package/dist/core/config/config-sources.d.ts +2 -2
- package/dist/core/config/config-sources.js +17 -20
- package/dist/core/config/config-sources.js.map +1 -1
- package/dist/core/config/config-validator.d.ts +1 -1
- package/dist/core/config/config-validator.js +33 -10
- package/dist/core/config/config-validator.js.map +1 -1
- package/dist/core/config/file-loader.d.ts +1 -1
- package/dist/core/config/file-loader.js +19 -78
- package/dist/core/config/file-loader.js.map +1 -1
- package/dist/core/config/index.d.ts +8 -8
- package/dist/core/config/index.js +25 -51
- package/dist/core/config/index.js.map +1 -1
- package/dist/core/config/schema.d.ts +2 -2
- package/dist/core/config/schema.js +11 -13
- package/dist/core/config/schema.js.map +1 -1
- package/dist/core/config/utils.d.ts +1 -1
- package/dist/core/config/utils.js +18 -32
- 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 +3 -1
- package/dist/core/database/adapters/mongodb.js +23 -8
- package/dist/core/database/adapters/mongodb.js.map +1 -1
- package/dist/core/database/adapters/mysql.d.ts +3 -1
- package/dist/core/database/adapters/mysql.js +18 -9
- package/dist/core/database/adapters/mysql.js.map +1 -1
- package/dist/core/database/adapters/postgresql.d.ts +3 -1
- package/dist/core/database/adapters/postgresql.js +18 -8
- package/dist/core/database/adapters/postgresql.js.map +1 -1
- package/dist/core/database/adapters/redis.d.ts +3 -1
- package/dist/core/database/adapters/redis.js +34 -9
- 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 +6 -10
- 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 +16 -6
- package/dist/core/framework.js +182 -92
- package/dist/core/framework.js.map +1 -1
- package/dist/core/http/http-server.d.ts +1 -1
- package/dist/core/http/http-server.js +26 -209
- 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/router.d.ts +1 -1
- package/dist/core/http/router.js +3 -7
- package/dist/core/http/router.js.map +1 -1
- package/dist/core/http/uws-http-server.d.ts +64 -0
- package/dist/core/http/uws-http-server.js +688 -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 +8 -19
- 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 -25
- package/dist/core/logger/index.js.map +1 -1
- package/dist/core/logger/logger.d.ts +1 -1
- package/dist/core/logger/logger.js +21 -23
- 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 -15
- package/dist/core/logger/outputs.js.map +1 -1
- package/dist/core/middleware/built-in/adapters/cache/file.d.ts +1 -1
- package/dist/core/middleware/built-in/adapters/cache/file.js +10 -47
- package/dist/core/middleware/built-in/adapters/cache/file.js.map +1 -1
- package/dist/core/middleware/built-in/adapters/cache/index.d.ts +4 -4
- package/dist/core/middleware/built-in/adapters/cache/index.js +10 -17
- package/dist/core/middleware/built-in/adapters/cache/index.js.map +1 -1
- package/dist/core/middleware/built-in/adapters/cache/memory.d.ts +1 -1
- package/dist/core/middleware/built-in/adapters/cache/memory.js +3 -7
- package/dist/core/middleware/built-in/adapters/cache/memory.js.map +1 -1
- package/dist/core/middleware/built-in/adapters/cache/redis.d.ts +3 -1
- package/dist/core/middleware/built-in/adapters/cache/redis.js +11 -9
- package/dist/core/middleware/built-in/adapters/cache/redis.js.map +1 -1
- package/dist/core/middleware/built-in/adapters/cdn/azure.d.ts +1 -1
- package/dist/core/middleware/built-in/adapters/cdn/azure.js +3 -7
- package/dist/core/middleware/built-in/adapters/cdn/azure.js.map +1 -1
- package/dist/core/middleware/built-in/adapters/cdn/cloudflare.d.ts +1 -1
- package/dist/core/middleware/built-in/adapters/cdn/cloudflare.js +3 -7
- package/dist/core/middleware/built-in/adapters/cdn/cloudflare.js.map +1 -1
- package/dist/core/middleware/built-in/adapters/cdn/cloudfront.d.ts +3 -1
- package/dist/core/middleware/built-in/adapters/cdn/cloudfront.js +12 -10
- package/dist/core/middleware/built-in/adapters/cdn/cloudfront.js.map +1 -1
- package/dist/core/middleware/built-in/adapters/cdn/index.d.ts +4 -4
- package/dist/core/middleware/built-in/adapters/cdn/index.js +10 -17
- package/dist/core/middleware/built-in/adapters/cdn/index.js.map +1 -1
- package/dist/core/middleware/built-in/adapters/index.d.ts +4 -4
- package/dist/core/middleware/built-in/adapters/index.js +4 -23
- package/dist/core/middleware/built-in/adapters/index.js.map +1 -1
- package/dist/core/middleware/built-in/auth-helpers.js +11 -22
- package/dist/core/middleware/built-in/auth-helpers.js.map +1 -1
- package/dist/core/middleware/built-in/auth-providers.d.ts +1 -1
- package/dist/core/middleware/built-in/auth-providers.js +4 -9
- package/dist/core/middleware/built-in/auth-providers.js.map +1 -1
- package/dist/core/middleware/built-in/auth.d.ts +2 -2
- package/dist/core/middleware/built-in/auth.js +51 -44
- package/dist/core/middleware/built-in/auth.js.map +1 -1
- package/dist/core/middleware/built-in/cache.d.ts +2 -2
- package/dist/core/middleware/built-in/cache.js +8 -11
- package/dist/core/middleware/built-in/cache.js.map +1 -1
- package/dist/core/middleware/built-in/cdn.d.ts +2 -2
- package/dist/core/middleware/built-in/cdn.js +5 -9
- package/dist/core/middleware/built-in/cdn.js.map +1 -1
- package/dist/core/middleware/built-in/cookie.d.ts +1 -1
- package/dist/core/middleware/built-in/cookie.js +3 -7
- package/dist/core/middleware/built-in/cookie.js.map +1 -1
- package/dist/core/middleware/built-in/cors.d.ts +1 -1
- package/dist/core/middleware/built-in/cors.js +3 -7
- package/dist/core/middleware/built-in/cors.js.map +1 -1
- package/dist/core/middleware/built-in/csp.d.ts +1 -1
- package/dist/core/middleware/built-in/csp.js +5 -8
- package/dist/core/middleware/built-in/csp.js.map +1 -1
- package/dist/core/middleware/built-in/csrf.d.ts +1 -1
- package/dist/core/middleware/built-in/csrf.js +5 -8
- package/dist/core/middleware/built-in/csrf.js.map +1 -1
- package/dist/core/middleware/built-in/error-tracker.js +3 -7
- package/dist/core/middleware/built-in/error-tracker.js.map +1 -1
- package/dist/core/middleware/built-in/index.d.ts +28 -28
- package/dist/core/middleware/built-in/index.js +47 -82
- package/dist/core/middleware/built-in/index.js.map +1 -1
- package/dist/core/middleware/built-in/jwt-helpers.d.ts +27 -2
- package/dist/core/middleware/built-in/jwt-helpers.js +32 -10
- package/dist/core/middleware/built-in/jwt-helpers.js.map +1 -1
- package/dist/core/middleware/built-in/performance-monitor.js +3 -7
- package/dist/core/middleware/built-in/performance-monitor.js.map +1 -1
- package/dist/core/middleware/built-in/rate-limit.d.ts +1 -1
- package/dist/core/middleware/built-in/rate-limit.js +3 -7
- package/dist/core/middleware/built-in/rate-limit.js.map +1 -1
- package/dist/core/middleware/built-in/request-logger.js +3 -7
- package/dist/core/middleware/built-in/request-logger.js.map +1 -1
- package/dist/core/middleware/built-in/session.d.ts +2 -2
- package/dist/core/middleware/built-in/session.js +11 -15
- package/dist/core/middleware/built-in/session.js.map +1 -1
- package/dist/core/middleware/built-in/sse.d.ts +1 -1
- package/dist/core/middleware/built-in/sse.js +3 -7
- package/dist/core/middleware/built-in/sse.js.map +1 -1
- package/dist/core/middleware/built-in/validation.d.ts +1 -1
- package/dist/core/middleware/built-in/validation.js +3 -7
- package/dist/core/middleware/built-in/validation.js.map +1 -1
- package/dist/core/middleware/index.d.ts +4 -4
- package/dist/core/middleware/index.js +8 -28
- package/dist/core/middleware/index.js.map +1 -1
- package/dist/core/modules/auto-discovery.d.ts +3 -3
- package/dist/core/modules/auto-discovery.js +43 -81
- 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 +11 -52
- 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 +1 -1
- package/dist/core/networking/adapters/ws-adapter.js +7 -42
- 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 +3 -7
- 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/routing/app-integration.d.ts +2 -2
- package/dist/core/routing/app-integration.js +7 -12
- package/dist/core/routing/app-integration.js.map +1 -1
- package/dist/core/routing/index.d.ts +2 -2
- package/dist/core/routing/index.js +7 -14
- package/dist/core/routing/index.js.map +1 -1
- 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 +6 -43
- 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 +51 -52
- package/dist/index.js +23 -132
- package/dist/index.js.map +1 -1
- package/dist/moro.d.ts +30 -10
- package/dist/moro.js +262 -126
- 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 +13 -1
- package/dist/types/config.js +1 -2
- package/dist/types/config.js.map +1 -1
- package/dist/types/core.d.ts +3 -3
- 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 +1 -1
- package/dist/types/hooks.js +1 -2
- package/dist/types/http.js +1 -2
- package/dist/types/logger.js +1 -2
- 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/jest.config.mjs +41 -0
- package/package.json +18 -51
- package/src/core/auth/morojs-adapter.ts +1 -1
- package/src/core/config/config-manager.ts +2 -2
- package/src/core/config/config-sources.ts +6 -6
- package/src/core/config/config-validator.ts +38 -3
- package/src/core/config/file-loader.ts +13 -40
- package/src/core/config/index.ts +15 -11
- package/src/core/config/schema.ts +3 -2
- package/src/core/config/utils.ts +3 -3
- package/src/core/database/adapters/drizzle.ts +18 -6
- package/src/core/database/adapters/index.ts +13 -13
- package/src/core/database/adapters/mongodb.ts +23 -3
- package/src/core/database/adapters/mysql.ts +18 -4
- package/src/core/database/adapters/postgresql.ts +18 -3
- package/src/core/database/adapters/redis.ts +34 -4
- package/src/core/database/adapters/sqlite.ts +19 -3
- package/src/core/database/index.ts +2 -2
- package/src/core/docs/index.ts +8 -8
- package/src/core/docs/openapi-generator.ts +4 -4
- package/src/core/docs/schema-to-openapi.ts +3 -6
- package/src/core/docs/simple-docs.ts +2 -2
- package/src/core/docs/swagger-ui.ts +19 -16
- package/src/core/docs/zod-to-openapi.ts +34 -34
- package/src/core/events/event-bus.ts +2 -2
- package/src/core/events/index.ts +2 -2
- package/src/core/framework.ts +190 -49
- package/src/core/http/http-server.ts +16 -159
- package/src/core/http/index.ts +4 -3
- package/src/core/http/router.ts +2 -2
- package/src/core/http/uws-http-server.ts +794 -0
- package/src/core/logger/filters.ts +1 -1
- package/src/core/logger/index.ts +3 -3
- package/src/core/logger/logger.ts +9 -1
- package/src/core/logger/outputs.ts +1 -1
- package/src/core/middleware/built-in/adapters/cache/file.ts +3 -3
- package/src/core/middleware/built-in/adapters/cache/index.ts +7 -7
- package/src/core/middleware/built-in/adapters/cache/memory.ts +2 -2
- package/src/core/middleware/built-in/adapters/cache/redis.ts +18 -4
- package/src/core/middleware/built-in/adapters/cdn/azure.ts +2 -2
- package/src/core/middleware/built-in/adapters/cdn/cloudflare.ts +2 -2
- package/src/core/middleware/built-in/adapters/cdn/cloudfront.ts +16 -5
- package/src/core/middleware/built-in/adapters/cdn/index.ts +7 -7
- package/src/core/middleware/built-in/adapters/index.ts +4 -4
- package/src/core/middleware/built-in/auth-helpers.ts +1 -1
- package/src/core/middleware/built-in/auth-providers.ts +1 -1
- package/src/core/middleware/built-in/auth.ts +64 -41
- package/src/core/middleware/built-in/cache.ts +5 -5
- package/src/core/middleware/built-in/cdn.ts +4 -4
- package/src/core/middleware/built-in/cookie.ts +2 -2
- package/src/core/middleware/built-in/cors.ts +2 -2
- package/src/core/middleware/built-in/csp.ts +3 -3
- package/src/core/middleware/built-in/csrf.ts +3 -3
- package/src/core/middleware/built-in/error-tracker.ts +1 -1
- package/src/core/middleware/built-in/index.ts +31 -31
- package/src/core/middleware/built-in/jwt-helpers.ts +32 -4
- package/src/core/middleware/built-in/performance-monitor.ts +1 -1
- package/src/core/middleware/built-in/rate-limit.ts +2 -2
- package/src/core/middleware/built-in/request-logger.ts +1 -1
- package/src/core/middleware/built-in/session.ts +7 -8
- package/src/core/middleware/built-in/sse.ts +2 -2
- package/src/core/middleware/built-in/validation.ts +2 -2
- package/src/core/middleware/index.ts +6 -6
- package/src/core/modules/auto-discovery.ts +4 -4
- package/src/core/modules/index.ts +2 -2
- package/src/core/modules/modules.ts +4 -4
- package/src/core/networking/adapters/index.ts +4 -3
- package/src/core/networking/adapters/socketio-adapter.ts +5 -3
- package/src/core/networking/adapters/uws-adapter.ts +619 -0
- package/src/core/networking/adapters/ws-adapter.ts +6 -4
- package/src/core/networking/index.ts +3 -2
- package/src/core/networking/service-discovery.ts +1 -1
- package/src/core/networking/websocket-manager.ts +7 -7
- package/src/core/routing/app-integration.ts +3 -3
- package/src/core/routing/index.ts +3 -3
- package/src/core/runtime/aws-lambda-adapter.ts +3 -3
- package/src/core/runtime/base-adapter.ts +2 -2
- package/src/core/runtime/cloudflare-workers-adapter.ts +3 -3
- package/src/core/runtime/index.ts +13 -13
- package/src/core/runtime/node-adapter.ts +4 -4
- package/src/core/runtime/vercel-edge-adapter.ts +3 -3
- package/src/core/utilities/hooks.ts +3 -3
- package/src/core/utilities/index.ts +5 -4
- package/src/core/utilities/package-utils.ts +59 -0
- package/src/core/validation/adapters.ts +1 -1
- package/src/core/validation/index.ts +68 -16
- package/src/index.ts +73 -66
- package/src/moro.ts +303 -75
- package/src/types/config.ts +13 -1
- package/src/types/core.ts +3 -3
- package/src/types/hooks.ts +1 -1
- package/src/types/runtime.ts +1 -1
- package/tsconfig.json +4 -2
|
@@ -8,9 +8,9 @@ import {
|
|
|
8
8
|
createRoute,
|
|
9
9
|
defineRoute,
|
|
10
10
|
HttpMethod,
|
|
11
|
-
} from './index';
|
|
12
|
-
import { HttpRequest, HttpResponse } from '../http';
|
|
13
|
-
import { createFrameworkLogger } from '../logger';
|
|
11
|
+
} from './index.js';
|
|
12
|
+
import { HttpRequest, HttpResponse } from '../http/index.js';
|
|
13
|
+
import { createFrameworkLogger } from '../logger/index.js';
|
|
14
14
|
|
|
15
15
|
const logger = createFrameworkLogger('AppIntegration');
|
|
16
16
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// Intelligent Routing System for Moro Framework
|
|
2
2
|
// Schema-first with automatic middleware ordering and chainable API
|
|
3
3
|
|
|
4
|
-
import { ValidationSchema } from '../validation/schema-interface';
|
|
5
|
-
import { HttpRequest, HttpResponse } from '../http';
|
|
6
|
-
import { createFrameworkLogger } from '../logger';
|
|
4
|
+
import { ValidationSchema } from '../validation/schema-interface.js';
|
|
5
|
+
import { HttpRequest, HttpResponse } from '../http/index.js';
|
|
6
|
+
import { createFrameworkLogger } from '../logger/index.js';
|
|
7
7
|
|
|
8
8
|
const logger = createFrameworkLogger('IntelligentRouting');
|
|
9
9
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// AWS Lambda runtime adapter
|
|
2
|
-
import { BaseRuntimeAdapter } from './base-adapter';
|
|
3
|
-
import { HttpRequest, HttpResponse } from '../../types/http';
|
|
4
|
-
import { RuntimeHttpResponse } from '../../types/runtime';
|
|
2
|
+
import { BaseRuntimeAdapter } from './base-adapter.js';
|
|
3
|
+
import { HttpRequest, HttpResponse } from '../../types/http.js';
|
|
4
|
+
import { RuntimeHttpResponse } from '../../types/runtime.js';
|
|
5
5
|
|
|
6
6
|
export interface LambdaEvent {
|
|
7
7
|
httpMethod: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Base runtime adapter with common functionality
|
|
2
|
-
import { RuntimeAdapter, RuntimeType, RuntimeHttpResponse } from '../../types/runtime';
|
|
3
|
-
import { HttpRequest, HttpResponse } from '../../types/http';
|
|
2
|
+
import { RuntimeAdapter, RuntimeType, RuntimeHttpResponse } from '../../types/runtime.js';
|
|
3
|
+
import { HttpRequest, HttpResponse } from '../../types/http.js';
|
|
4
4
|
import { randomBytes } from 'crypto';
|
|
5
5
|
|
|
6
6
|
export abstract class BaseRuntimeAdapter implements RuntimeAdapter {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Cloudflare Workers runtime adapter
|
|
2
|
-
import { BaseRuntimeAdapter } from './base-adapter';
|
|
3
|
-
import { HttpRequest, HttpResponse } from '../../types/http';
|
|
4
|
-
import { RuntimeHttpResponse } from '../../types/runtime';
|
|
2
|
+
import { BaseRuntimeAdapter } from './base-adapter.js';
|
|
3
|
+
import { HttpRequest, HttpResponse } from '../../types/http.js';
|
|
4
|
+
import { RuntimeHttpResponse } from '../../types/runtime.js';
|
|
5
5
|
|
|
6
6
|
export interface WorkersEnv {
|
|
7
7
|
[key: string]: any;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// Runtime adapters export
|
|
2
|
-
export { BaseRuntimeAdapter } from './base-adapter';
|
|
3
|
-
export { NodeRuntimeAdapter } from './node-adapter';
|
|
4
|
-
export { VercelEdgeAdapter } from './vercel-edge-adapter';
|
|
5
|
-
export { AWSLambdaAdapter } from './aws-lambda-adapter';
|
|
6
|
-
export { CloudflareWorkersAdapter } from './cloudflare-workers-adapter';
|
|
2
|
+
export { BaseRuntimeAdapter } from './base-adapter.js';
|
|
3
|
+
export { NodeRuntimeAdapter } from './node-adapter.js';
|
|
4
|
+
export { VercelEdgeAdapter } from './vercel-edge-adapter.js';
|
|
5
|
+
export { AWSLambdaAdapter } from './aws-lambda-adapter.js';
|
|
6
|
+
export { CloudflareWorkersAdapter } from './cloudflare-workers-adapter.js';
|
|
7
7
|
|
|
8
8
|
// Re-export types
|
|
9
9
|
export type {
|
|
@@ -12,18 +12,18 @@ export type {
|
|
|
12
12
|
RuntimeConfig,
|
|
13
13
|
RuntimeMoroOptions,
|
|
14
14
|
RuntimeHttpResponse,
|
|
15
|
-
} from '../../types/runtime';
|
|
15
|
+
} from '../../types/runtime.js';
|
|
16
16
|
|
|
17
17
|
// Re-export specific runtime types
|
|
18
|
-
export type { LambdaEvent, LambdaContext, LambdaResponse } from './aws-lambda-adapter';
|
|
19
|
-
export type { WorkersEnv, WorkersContext } from './cloudflare-workers-adapter';
|
|
18
|
+
export type { LambdaEvent, LambdaContext, LambdaResponse } from './aws-lambda-adapter.js';
|
|
19
|
+
export type { WorkersEnv, WorkersContext } from './cloudflare-workers-adapter.js';
|
|
20
20
|
|
|
21
21
|
// Runtime factory functions
|
|
22
|
-
import { NodeRuntimeAdapter } from './node-adapter';
|
|
23
|
-
import { VercelEdgeAdapter } from './vercel-edge-adapter';
|
|
24
|
-
import { AWSLambdaAdapter } from './aws-lambda-adapter';
|
|
25
|
-
import { CloudflareWorkersAdapter } from './cloudflare-workers-adapter';
|
|
26
|
-
import { RuntimeType, RuntimeAdapter } from '../../types/runtime';
|
|
22
|
+
import { NodeRuntimeAdapter } from './node-adapter.js';
|
|
23
|
+
import { VercelEdgeAdapter } from './vercel-edge-adapter.js';
|
|
24
|
+
import { AWSLambdaAdapter } from './aws-lambda-adapter.js';
|
|
25
|
+
import { CloudflareWorkersAdapter } from './cloudflare-workers-adapter.js';
|
|
26
|
+
import { RuntimeType, RuntimeAdapter } from '../../types/runtime.js';
|
|
27
27
|
|
|
28
28
|
export function createRuntimeAdapter(type: RuntimeType): RuntimeAdapter {
|
|
29
29
|
switch (type) {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// Node.js runtime adapter
|
|
2
2
|
import { IncomingMessage, ServerResponse } from 'http';
|
|
3
|
-
import { BaseRuntimeAdapter } from './base-adapter';
|
|
4
|
-
import { HttpRequest, HttpResponse } from '../../types/http';
|
|
5
|
-
import { RuntimeHttpResponse } from '../../types/runtime';
|
|
6
|
-
import { MoroHttpServer } from '../http/http-server';
|
|
3
|
+
import { BaseRuntimeAdapter } from './base-adapter.js';
|
|
4
|
+
import { HttpRequest, HttpResponse } from '../../types/http.js';
|
|
5
|
+
import { RuntimeHttpResponse } from '../../types/runtime.js';
|
|
6
|
+
import { MoroHttpServer } from '../http/http-server.js';
|
|
7
7
|
|
|
8
8
|
export class NodeRuntimeAdapter extends BaseRuntimeAdapter {
|
|
9
9
|
readonly type = 'node' as const;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Vercel Edge runtime adapter
|
|
2
|
-
import { BaseRuntimeAdapter } from './base-adapter';
|
|
3
|
-
import { HttpRequest, HttpResponse } from '../../types/http';
|
|
4
|
-
import { RuntimeHttpResponse } from '../../types/runtime';
|
|
2
|
+
import { BaseRuntimeAdapter } from './base-adapter.js';
|
|
3
|
+
import { HttpRequest, HttpResponse } from '../../types/http.js';
|
|
4
|
+
import { RuntimeHttpResponse } from '../../types/runtime.js';
|
|
5
5
|
|
|
6
6
|
export class VercelEdgeAdapter extends BaseRuntimeAdapter {
|
|
7
7
|
readonly type = 'vercel-edge' as const;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Hook System for Moro
|
|
2
2
|
import { EventEmitter } from 'events';
|
|
3
|
-
import { HookFunction, HookContext, MoroMiddleware } from '../../types/hooks';
|
|
4
|
-
import { createFrameworkLogger } from '../logger';
|
|
3
|
+
import { HookFunction, HookContext, MoroMiddleware } from '../../types/hooks.js';
|
|
4
|
+
import { createFrameworkLogger } from '../logger/index.js';
|
|
5
5
|
|
|
6
6
|
export const HOOK_EVENTS = {
|
|
7
7
|
BEFORE_REQUEST: 'before:request',
|
|
@@ -139,4 +139,4 @@ export class HookManager extends EventEmitter {
|
|
|
139
139
|
}
|
|
140
140
|
|
|
141
141
|
// Built-in middleware - now organized in individual files
|
|
142
|
-
export { simpleMiddleware as middleware } from '../middleware/index';
|
|
142
|
+
export { simpleMiddleware as middleware } from '../middleware/index.js';
|
|
@@ -8,9 +8,10 @@ export {
|
|
|
8
8
|
withCaching,
|
|
9
9
|
withRetry,
|
|
10
10
|
withTimeout,
|
|
11
|
-
} from './container';
|
|
12
|
-
export { CircuitBreaker } from './circuit-breaker';
|
|
13
|
-
export { HookManager, HOOK_EVENTS } from './hooks';
|
|
11
|
+
} from './container.js';
|
|
12
|
+
export { CircuitBreaker } from './circuit-breaker.js';
|
|
13
|
+
export { HookManager, HOOK_EVENTS } from './hooks.js';
|
|
14
|
+
export { isPackageAvailable, resolveUserPackage, createUserRequire } from './package-utils.js';
|
|
14
15
|
|
|
15
16
|
// Re-export middleware from hooks
|
|
16
|
-
export { middleware } from './hooks';
|
|
17
|
+
export { middleware } from './hooks.js';
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
// Package and Module Resolution Utilities
|
|
2
|
+
// ESM-compatible helpers for detecting and resolving optional dependencies
|
|
3
|
+
|
|
4
|
+
import { createRequire } from 'module';
|
|
5
|
+
import { join } from 'path';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Check if a package is available in the user's node_modules
|
|
9
|
+
* Uses ESM-compatible module resolution from the user's working directory
|
|
10
|
+
*
|
|
11
|
+
* @param packageName - The name of the package to check (e.g., 'socket.io', 'zod')
|
|
12
|
+
* @returns true if the package is installed, false otherwise
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* if (isPackageAvailable('socket.io')) {
|
|
16
|
+
* // socket.io is installed, safe to import
|
|
17
|
+
* const { Server } = await import('socket.io');
|
|
18
|
+
* }
|
|
19
|
+
*/
|
|
20
|
+
export function isPackageAvailable(packageName: string): boolean {
|
|
21
|
+
try {
|
|
22
|
+
const userRequire = createRequire(join(process.cwd(), 'package.json'));
|
|
23
|
+
userRequire.resolve(packageName);
|
|
24
|
+
return true;
|
|
25
|
+
} catch {
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Resolve a package path from the user's node_modules
|
|
32
|
+
* Uses ESM-compatible module resolution from the user's working directory
|
|
33
|
+
*
|
|
34
|
+
* @param packageName - The name of the package to resolve
|
|
35
|
+
* @returns The resolved package path
|
|
36
|
+
* @throws Error if the package is not found
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* const socketIOPath = resolveUserPackage('socket.io');
|
|
40
|
+
* const { Server } = await import(socketIOPath);
|
|
41
|
+
*/
|
|
42
|
+
export function resolveUserPackage(packageName: string): string {
|
|
43
|
+
const userRequire = createRequire(join(process.cwd(), 'package.json'));
|
|
44
|
+
return userRequire.resolve(packageName);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Create a require function for the user's working directory
|
|
49
|
+
* Useful for resolving packages installed by the user, not in Moro's dependencies
|
|
50
|
+
*
|
|
51
|
+
* @returns A require function scoped to the user's working directory
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* const userRequire = createUserRequire();
|
|
55
|
+
* const packagePath = userRequire.resolve('some-package');
|
|
56
|
+
*/
|
|
57
|
+
export function createUserRequire() {
|
|
58
|
+
return createRequire(join(process.cwd(), 'package.json'));
|
|
59
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Validation Library Adapters for Moro Framework
|
|
2
2
|
// Makes Joi, Yup, and other libraries compatible with ValidationSchema interface
|
|
3
3
|
|
|
4
|
-
import { ValidationSchema, ValidationError, normalizeValidationError } from './schema-interface';
|
|
4
|
+
import { ValidationSchema, ValidationError, normalizeValidationError } from './schema-interface.js';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Zod Compatibility Check
|
|
@@ -1,20 +1,78 @@
|
|
|
1
1
|
// Universal Validation System for Moro Framework
|
|
2
2
|
// Works with Zod, Joi, Yup, and any validation library via adapters
|
|
3
3
|
|
|
4
|
-
import { HttpRequest, HttpResponse } from '../http';
|
|
5
|
-
import { createFrameworkLogger } from '../logger';
|
|
4
|
+
import { HttpRequest, HttpResponse } from '../http/index.js';
|
|
5
|
+
import { createFrameworkLogger } from '../logger/index.js';
|
|
6
|
+
import { createUserRequire, isPackageAvailable } from '../utilities/package-utils.js';
|
|
6
7
|
import {
|
|
7
8
|
ValidationSchema,
|
|
8
|
-
ValidationError,
|
|
9
9
|
normalizeValidationError,
|
|
10
10
|
InferSchemaType,
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
// Re-export zod if available (for backward compatibility)
|
|
14
|
-
// The dynamic import is handled in the main index.ts
|
|
11
|
+
ValidationError,
|
|
12
|
+
} from './schema-interface.js';
|
|
15
13
|
|
|
16
14
|
const logger = createFrameworkLogger('Validation');
|
|
17
15
|
|
|
16
|
+
// Convenience re-export of Zod (optional - only works if zod is installed)
|
|
17
|
+
// Lazy-loads Zod synchronously on first access
|
|
18
|
+
// If zod is not installed, z will throw a helpful error
|
|
19
|
+
let zodModule: any = null;
|
|
20
|
+
let zodLoadAttempted = false;
|
|
21
|
+
|
|
22
|
+
function loadZodSync() {
|
|
23
|
+
if (zodLoadAttempted) {
|
|
24
|
+
return zodModule;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
zodLoadAttempted = true;
|
|
28
|
+
|
|
29
|
+
try {
|
|
30
|
+
if (!isPackageAvailable('zod')) {
|
|
31
|
+
zodModule = null;
|
|
32
|
+
return zodModule;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// Use synchronous require for immediate availability
|
|
36
|
+
const userRequire = createUserRequire();
|
|
37
|
+
zodModule = userRequire('zod');
|
|
38
|
+
} catch {
|
|
39
|
+
// Zod not installed or failed to load
|
|
40
|
+
zodModule = null;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
return zodModule;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export const z = new Proxy({} as any, {
|
|
47
|
+
get(_target, prop) {
|
|
48
|
+
const zod = loadZodSync();
|
|
49
|
+
|
|
50
|
+
if (!zod) {
|
|
51
|
+
throw new Error(
|
|
52
|
+
'Zod is not installed. Please install it with: npm install zod\n' +
|
|
53
|
+
'Or use an alternative validation library (joi, yup, class-validator) via adapters.'
|
|
54
|
+
);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
if (!zod.z) {
|
|
58
|
+
throw new Error(
|
|
59
|
+
'Zod module loaded but z export not found. This may be a version compatibility issue.'
|
|
60
|
+
);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
return zod.z[prop];
|
|
64
|
+
},
|
|
65
|
+
apply(_target, thisArg, args) {
|
|
66
|
+
const zod = loadZodSync();
|
|
67
|
+
|
|
68
|
+
if (!zod?.z) {
|
|
69
|
+
throw new Error('Zod is not installed. Please install it with: npm install zod');
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
return zod.z.apply(thisArg, args);
|
|
73
|
+
},
|
|
74
|
+
});
|
|
75
|
+
|
|
18
76
|
// Universal validation configuration interface
|
|
19
77
|
export interface ValidationConfig {
|
|
20
78
|
body?: ValidationSchema;
|
|
@@ -195,12 +253,6 @@ export function combineSchemas(schemas: ValidationConfig): ValidationConfig {
|
|
|
195
253
|
}
|
|
196
254
|
|
|
197
255
|
// Re-export common validation tools
|
|
198
|
-
export {
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
normalizeValidationError,
|
|
202
|
-
InferSchemaType,
|
|
203
|
-
} from './schema-interface';
|
|
204
|
-
export { joi, yup, fn as customValidator, classValidator } from './adapters';
|
|
205
|
-
|
|
206
|
-
// Note: z is re-exported from main index.ts with dynamic import
|
|
256
|
+
export { ValidationError, normalizeValidationError } from './schema-interface.js';
|
|
257
|
+
export type { ValidationSchema, InferSchemaType } from './schema-interface.js';
|
|
258
|
+
export { joi, yup, fn as customValidator, classValidator } from './adapters.js';
|
package/src/index.ts
CHANGED
|
@@ -7,9 +7,9 @@ export {
|
|
|
7
7
|
createAppEdge,
|
|
8
8
|
createAppLambda,
|
|
9
9
|
createAppWorker,
|
|
10
|
-
} from './moro';
|
|
10
|
+
} from './moro.js';
|
|
11
11
|
|
|
12
|
-
export type { MoroOptions } from './core/framework';
|
|
12
|
+
export type { MoroOptions } from './core/framework.js';
|
|
13
13
|
|
|
14
14
|
// Export auth types and middleware
|
|
15
15
|
export type {
|
|
@@ -29,13 +29,13 @@ export type {
|
|
|
29
29
|
EmailProvider,
|
|
30
30
|
SignInOptions,
|
|
31
31
|
SignOutOptions,
|
|
32
|
-
} from './types/auth';
|
|
32
|
+
} from './types/auth.js';
|
|
33
33
|
|
|
34
34
|
// Export native @auth/morojs adapter
|
|
35
|
-
export { createAuthMiddleware, MoroJSAuth } from './core/auth/morojs-adapter';
|
|
35
|
+
export { createAuthMiddleware, MoroJSAuth } from './core/auth/morojs-adapter.js';
|
|
36
36
|
|
|
37
37
|
// Export Auth.js middleware and providers
|
|
38
|
-
export { auth, providers } from './core/middleware/built-in/auth';
|
|
38
|
+
export { auth, providers } from './core/middleware/built-in/auth.js';
|
|
39
39
|
|
|
40
40
|
// Runtime system exports
|
|
41
41
|
export type {
|
|
@@ -43,7 +43,7 @@ export type {
|
|
|
43
43
|
RuntimeAdapter,
|
|
44
44
|
RuntimeConfig,
|
|
45
45
|
RuntimeHttpResponse,
|
|
46
|
-
} from './types/runtime';
|
|
46
|
+
} from './types/runtime.js';
|
|
47
47
|
|
|
48
48
|
export {
|
|
49
49
|
NodeRuntimeAdapter,
|
|
@@ -55,23 +55,27 @@ export {
|
|
|
55
55
|
createEdgeHandler,
|
|
56
56
|
createLambdaHandler,
|
|
57
57
|
createWorkerHandler,
|
|
58
|
-
} from './core/runtime';
|
|
58
|
+
} from './core/runtime/index.js';
|
|
59
59
|
|
|
60
60
|
// Runtime-specific types
|
|
61
|
-
export type {
|
|
62
|
-
|
|
61
|
+
export type {
|
|
62
|
+
LambdaEvent,
|
|
63
|
+
LambdaContext,
|
|
64
|
+
LambdaResponse,
|
|
65
|
+
} from './core/runtime/aws-lambda-adapter.js';
|
|
66
|
+
export type { WorkersEnv, WorkersContext } from './core/runtime/cloudflare-workers-adapter.js';
|
|
63
67
|
|
|
64
68
|
// Core exports
|
|
65
|
-
export {
|
|
66
|
-
|
|
69
|
+
export {
|
|
70
|
+
MoroHttpServer,
|
|
71
|
+
UWebSocketsHttpServer,
|
|
72
|
+
middleware as httpMiddleware,
|
|
73
|
+
} from './core/http/index.js';
|
|
74
|
+
export { builtInMiddleware, simpleMiddleware } from './core/middleware/built-in/index.js';
|
|
67
75
|
|
|
68
76
|
// Networking System
|
|
69
|
-
export {
|
|
70
|
-
|
|
71
|
-
ServiceRegistry,
|
|
72
|
-
ServiceInfo,
|
|
73
|
-
ServiceDiscoveryOptions,
|
|
74
|
-
} from './core/networking';
|
|
77
|
+
export { WebSocketManager, ServiceRegistry } from './core/networking/index.js';
|
|
78
|
+
export type { ServiceInfo, ServiceDiscoveryOptions } from './core/networking/service-discovery.js';
|
|
75
79
|
|
|
76
80
|
// Utilities and Container System
|
|
77
81
|
export {
|
|
@@ -87,10 +91,13 @@ export {
|
|
|
87
91
|
HookManager,
|
|
88
92
|
HOOK_EVENTS,
|
|
89
93
|
middleware,
|
|
90
|
-
|
|
94
|
+
isPackageAvailable,
|
|
95
|
+
resolveUserPackage,
|
|
96
|
+
createUserRequire,
|
|
97
|
+
} from './core/utilities/index.js';
|
|
91
98
|
|
|
92
99
|
// Event System
|
|
93
|
-
export { MoroEventBus } from './core/events';
|
|
100
|
+
export { MoroEventBus } from './core/events/index.js';
|
|
94
101
|
export type {
|
|
95
102
|
EventContext,
|
|
96
103
|
EventPayload,
|
|
@@ -100,38 +107,29 @@ export type {
|
|
|
100
107
|
EventMetrics,
|
|
101
108
|
SystemEvents,
|
|
102
109
|
EventHandler,
|
|
103
|
-
} from './types/events';
|
|
110
|
+
} from './types/events.js';
|
|
104
111
|
|
|
105
112
|
// Logger System
|
|
106
|
-
export { createFrameworkLogger, logger } from './core/logger';
|
|
113
|
+
export { createFrameworkLogger, logger } from './core/logger/index.js';
|
|
107
114
|
|
|
108
115
|
// Universal Validation System
|
|
109
|
-
export { validate, body, query, params, combineSchemas } from './core/validation';
|
|
110
|
-
|
|
111
|
-
// Dynamic Zod export (optional dependency)
|
|
112
|
-
let z: any;
|
|
113
|
-
try {
|
|
114
|
-
z = require('zod').z;
|
|
115
|
-
} catch {
|
|
116
|
-
// Zod not available - that's fine!
|
|
117
|
-
z = undefined;
|
|
118
|
-
}
|
|
119
|
-
export { z };
|
|
116
|
+
export { validate, body, query, params, combineSchemas, z } from './core/validation/index.js';
|
|
117
|
+
|
|
120
118
|
export type {
|
|
121
119
|
ValidationConfig,
|
|
122
120
|
ValidationResult,
|
|
123
121
|
ValidationErrorDetail,
|
|
124
122
|
ValidatedRequest,
|
|
125
|
-
} from './core/validation';
|
|
123
|
+
} from './core/validation/index.js';
|
|
126
124
|
|
|
127
|
-
//
|
|
125
|
+
// Validation Interfaces and Adapters
|
|
128
126
|
export type {
|
|
129
127
|
ValidationSchema,
|
|
130
128
|
ValidationError,
|
|
131
129
|
InferSchemaType,
|
|
132
|
-
} from './core/validation/schema-interface';
|
|
133
|
-
export { normalizeValidationError } from './core/validation/schema-interface';
|
|
134
|
-
export { joi, yup, fn as customValidator, classValidator } from './core/validation/adapters';
|
|
130
|
+
} from './core/validation/schema-interface.js';
|
|
131
|
+
export { normalizeValidationError } from './core/validation/schema-interface.js';
|
|
132
|
+
export { joi, yup, fn as customValidator, classValidator } from './core/validation/adapters.js';
|
|
135
133
|
|
|
136
134
|
// Module System
|
|
137
135
|
export {
|
|
@@ -139,8 +137,8 @@ export {
|
|
|
139
137
|
ModuleLoader,
|
|
140
138
|
ModuleDiscovery,
|
|
141
139
|
autoDiscoverModuleDirectories,
|
|
142
|
-
} from './core/modules';
|
|
143
|
-
export type { ModuleDefinition, ModuleRoute, ModuleSocket, ModuleConfig } from './types/module';
|
|
140
|
+
} from './core/modules/index.js';
|
|
141
|
+
export type { ModuleDefinition, ModuleRoute, ModuleSocket, ModuleConfig } from './types/module.js';
|
|
144
142
|
|
|
145
143
|
// WebSocket Adapter System
|
|
146
144
|
export type {
|
|
@@ -151,14 +149,18 @@ export type {
|
|
|
151
149
|
WebSocketEmitter,
|
|
152
150
|
WebSocketMiddleware,
|
|
153
151
|
WebSocketEventHandler,
|
|
154
|
-
} from './core/networking/websocket-adapter';
|
|
152
|
+
} from './core/networking/websocket-adapter.js';
|
|
155
153
|
|
|
156
154
|
// Built-in WebSocket Adapters
|
|
157
|
-
export {
|
|
155
|
+
export {
|
|
156
|
+
SocketIOAdapter,
|
|
157
|
+
WSAdapter,
|
|
158
|
+
UWebSocketsAdapter,
|
|
159
|
+
} from './core/networking/adapters/index.js';
|
|
158
160
|
|
|
159
161
|
// Intelligent Routing System
|
|
160
|
-
export { createRoute, defineRoute, EXECUTION_PHASES } from './core/routing';
|
|
161
|
-
export { IntelligentRoutingManager, RouteRegistry } from './core/routing/app-integration';
|
|
162
|
+
export { createRoute, defineRoute, EXECUTION_PHASES } from './core/routing/index.js';
|
|
163
|
+
export { IntelligentRoutingManager, RouteRegistry } from './core/routing/app-integration.js';
|
|
162
164
|
export type {
|
|
163
165
|
RouteBuilder,
|
|
164
166
|
RouteSchema,
|
|
@@ -169,7 +171,7 @@ export type {
|
|
|
169
171
|
CacheConfig,
|
|
170
172
|
MiddlewarePhases,
|
|
171
173
|
ExecutionPhase,
|
|
172
|
-
} from './core/routing';
|
|
174
|
+
} from './core/routing/index.js';
|
|
173
175
|
|
|
174
176
|
// Documentation System
|
|
175
177
|
export {
|
|
@@ -177,8 +179,8 @@ export {
|
|
|
177
179
|
AppDocumentationManager,
|
|
178
180
|
createDocumentationSystem,
|
|
179
181
|
generateDocsFromIntelligentRoutes,
|
|
180
|
-
} from './core/docs';
|
|
181
|
-
export type { DocsConfig } from './core/docs';
|
|
182
|
+
} from './core/docs/index.js';
|
|
183
|
+
export type { DocsConfig } from './core/docs/index.js';
|
|
182
184
|
|
|
183
185
|
// Configuration utilities
|
|
184
186
|
export {
|
|
@@ -193,34 +195,39 @@ export {
|
|
|
193
195
|
requireEnvVars,
|
|
194
196
|
envVar,
|
|
195
197
|
getConfigValue,
|
|
196
|
-
} from './core/config/utils';
|
|
198
|
+
} from './core/config/utils.js';
|
|
197
199
|
|
|
198
|
-
export {
|
|
200
|
+
export {
|
|
201
|
+
initializeConfig,
|
|
202
|
+
getGlobalConfig,
|
|
203
|
+
isConfigInitialized,
|
|
204
|
+
resetConfig,
|
|
205
|
+
} from './core/config/index.js';
|
|
199
206
|
|
|
200
207
|
// Export configuration types for TypeScript users
|
|
201
|
-
export type { AppConfig } from './core/config';
|
|
208
|
+
export type { AppConfig } from './core/config/index.js';
|
|
202
209
|
|
|
203
210
|
// Middleware System
|
|
204
|
-
export { MiddlewareManager } from './core/middleware';
|
|
205
|
-
export type { MiddlewareInterface, MoroMiddleware } from './core/middleware';
|
|
211
|
+
export { MiddlewareManager } from './core/middleware/index.js';
|
|
212
|
+
export type { MiddlewareInterface, MoroMiddleware } from './core/middleware/index.js';
|
|
206
213
|
|
|
207
214
|
// Types
|
|
208
|
-
export type * from './types/core';
|
|
209
|
-
export type * from './types/http';
|
|
210
|
-
export type * from './types/hooks';
|
|
211
|
-
export type * from './types/cache';
|
|
212
|
-
export type * from './types/cdn';
|
|
213
|
-
export type * from './types/database';
|
|
214
|
-
export type * from './types/logger';
|
|
215
|
-
export type * from './types/session';
|
|
216
|
-
export type * from './types/discovery';
|
|
215
|
+
export type * from './types/core.js';
|
|
216
|
+
export type * from './types/http.js';
|
|
217
|
+
export type * from './types/hooks.js';
|
|
218
|
+
export type * from './types/cache.js';
|
|
219
|
+
export type * from './types/cdn.js';
|
|
220
|
+
export type * from './types/database.js';
|
|
221
|
+
export type * from './types/logger.js';
|
|
222
|
+
export type * from './types/session.js';
|
|
223
|
+
export type * from './types/discovery.js';
|
|
217
224
|
|
|
218
225
|
// Adapters
|
|
219
|
-
export * from './core/middleware/built-in/adapters';
|
|
220
|
-
export * from './core/database/adapters';
|
|
226
|
+
export * from './core/middleware/built-in/adapters/index.js';
|
|
227
|
+
export * from './core/database/adapters/index.js';
|
|
221
228
|
|
|
222
229
|
// Re-export commonly used types for convenience
|
|
223
|
-
export type { CacheAdapter, CacheOptions, CacheStrategy } from './types/cache';
|
|
224
|
-
export type { CDNAdapter, CDNOptions } from './types/cdn';
|
|
225
|
-
export type { DatabaseAdapter, DatabaseTransaction, DatabaseConfig } from './types/database';
|
|
226
|
-
export type { CookieOptions } from './types/http';
|
|
230
|
+
export type { CacheAdapter, CacheOptions, CacheStrategy } from './types/cache.js';
|
|
231
|
+
export type { CDNAdapter, CDNOptions } from './types/cdn.js';
|
|
232
|
+
export type { DatabaseAdapter, DatabaseTransaction, DatabaseConfig } from './types/database.js';
|
|
233
|
+
export type { CookieOptions } from './types/http.js';
|