@morojs/moro 1.5.17 → 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 +14 -6
- package/dist/core/framework.js +150 -88
- 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 +24 -62
- 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 +10 -14
- 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 +1 -1
- package/dist/core/middleware/built-in/jwt-helpers.js +6 -9
- 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 +13 -10
- package/dist/moro.js +132 -102
- 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 +148 -44
- package/src/core/http/http-server.ts +14 -9
- 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 +6 -6
- 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 +6 -3
- 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 +144 -51
- 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
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
const logger = (0, logger_1.createFrameworkLogger)('SessionMiddleware');
|
|
1
|
+
// Session Middleware
|
|
2
|
+
import crypto from 'crypto';
|
|
3
|
+
import { createFrameworkLogger } from '../../logger/index.js';
|
|
4
|
+
import { MemoryCacheAdapter } from './adapters/cache/memory.js';
|
|
5
|
+
import { RedisCacheAdapter } from './adapters/cache/redis.js';
|
|
6
|
+
import { FileCacheAdapter } from './adapters/cache/file.js';
|
|
7
|
+
const logger = createFrameworkLogger('SessionMiddleware');
|
|
9
8
|
class Session {
|
|
10
9
|
data = {};
|
|
11
10
|
id;
|
|
@@ -88,14 +87,13 @@ class Session {
|
|
|
88
87
|
if (this.options.genid) {
|
|
89
88
|
return this.options.genid();
|
|
90
89
|
}
|
|
91
|
-
const crypto = require('crypto');
|
|
92
90
|
return crypto.randomBytes(24).toString('hex');
|
|
93
91
|
}
|
|
94
92
|
get sessionID() {
|
|
95
93
|
return this.id;
|
|
96
94
|
}
|
|
97
95
|
}
|
|
98
|
-
const session = (options = {}) => ({
|
|
96
|
+
export const session = (options = {}) => ({
|
|
99
97
|
name: 'session',
|
|
100
98
|
version: '1.0.0',
|
|
101
99
|
metadata: {
|
|
@@ -130,19 +128,19 @@ const session = (options = {}) => ({
|
|
|
130
128
|
if (typeof config.store === 'string') {
|
|
131
129
|
switch (config.store) {
|
|
132
130
|
case 'redis':
|
|
133
|
-
store = new
|
|
131
|
+
store = new RedisCacheAdapter({
|
|
134
132
|
keyPrefix: 'sess:',
|
|
135
133
|
...config.storeOptions,
|
|
136
134
|
});
|
|
137
135
|
break;
|
|
138
136
|
case 'file':
|
|
139
|
-
store = new
|
|
137
|
+
store = new FileCacheAdapter({
|
|
140
138
|
cacheDir: config.storeOptions?.path || './sessions',
|
|
141
139
|
});
|
|
142
140
|
break;
|
|
143
141
|
case 'memory':
|
|
144
142
|
default:
|
|
145
|
-
store = new
|
|
143
|
+
store = new MemoryCacheAdapter();
|
|
146
144
|
break;
|
|
147
145
|
}
|
|
148
146
|
}
|
|
@@ -154,7 +152,6 @@ const session = (options = {}) => ({
|
|
|
154
152
|
if (config.genid) {
|
|
155
153
|
return config.genid();
|
|
156
154
|
}
|
|
157
|
-
const crypto = require('crypto');
|
|
158
155
|
return crypto.randomBytes(24).toString('hex');
|
|
159
156
|
};
|
|
160
157
|
hooks.before('request', async (context) => {
|
|
@@ -205,5 +202,4 @@ const session = (options = {}) => ({
|
|
|
205
202
|
logger.info(`Session middleware installed with ${config.store} store`, 'Installation');
|
|
206
203
|
},
|
|
207
204
|
});
|
|
208
|
-
exports.session = session;
|
|
209
205
|
//# sourceMappingURL=session.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../../src/core/middleware/built-in/session.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../../src/core/middleware/built-in/session.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const logger_1 = require("../../logger");
|
|
5
|
-
const logger = (0, logger_1.createFrameworkLogger)('SSEMiddleware');
|
|
6
|
-
const sse = (options = {}) => ({
|
|
1
|
+
import { createFrameworkLogger } from '../../logger/index.js';
|
|
2
|
+
const logger = createFrameworkLogger('SSEMiddleware');
|
|
3
|
+
export const sse = (options = {}) => ({
|
|
7
4
|
name: 'sse',
|
|
8
5
|
version: '1.0.0',
|
|
9
6
|
metadata: {
|
|
@@ -69,5 +66,4 @@ const sse = (options = {}) => ({
|
|
|
69
66
|
});
|
|
70
67
|
},
|
|
71
68
|
});
|
|
72
|
-
exports.sse = sse;
|
|
73
69
|
//# sourceMappingURL=sse.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sse.js","sourceRoot":"","sources":["../../../../src/core/middleware/built-in/sse.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sse.js","sourceRoot":"","sources":["../../../../src/core/middleware/built-in/sse.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { MiddlewareInterface } from '../../../types/hooks';
|
|
1
|
+
import { MiddlewareInterface } from '../../../types/hooks.js';
|
|
2
2
|
export declare const validation: () => MiddlewareInterface;
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const logger_1 = require("../../logger");
|
|
5
|
-
const logger = (0, logger_1.createFrameworkLogger)('ValidationMiddleware');
|
|
6
|
-
const validation = () => ({
|
|
1
|
+
import { createFrameworkLogger } from '../../logger/index.js';
|
|
2
|
+
const logger = createFrameworkLogger('ValidationMiddleware');
|
|
3
|
+
export const validation = () => ({
|
|
7
4
|
name: 'validation',
|
|
8
5
|
version: '1.0.0',
|
|
9
6
|
metadata: {
|
|
@@ -27,5 +24,4 @@ const validation = () => ({
|
|
|
27
24
|
});
|
|
28
25
|
},
|
|
29
26
|
});
|
|
30
|
-
exports.validation = validation;
|
|
31
27
|
//# sourceMappingURL=validation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../src/core/middleware/built-in/validation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../src/core/middleware/built-in/validation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,MAAM,MAAM,GAAG,qBAAqB,CAAC,sBAAsB,CAAC,CAAC;AAE7D,MAAM,CAAC,MAAM,UAAU,GAAG,GAAwB,EAAE,CAAC,CAAC;IACpD,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE;QACR,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,0DAA0D;QACvE,MAAM,EAAE,aAAa;KACtB;IAED,OAAO,EAAE,KAAK,EAAE,KAAU,EAAE,UAAe,EAAE,EAAE,EAAE;QAC/C,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE,cAAc,CAAC,CAAC;QAEjE,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAoB,EAAE,EAAE;YACrD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAc,CAAC;YAEvC,gCAAgC;YAChC,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;gBAC1D,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBACpD,IAAI,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBAC5D,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,aAAa,CAAC,CAAC;oBACtE,4CAA4C;gBAC9C,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EventEmitter } from 'events';
|
|
2
|
-
import { MiddlewareInterface, SimpleMiddlewareFunction } from '../../types/hooks';
|
|
3
|
-
export type { MiddlewareInterface, MoroMiddleware } from '../../types/hooks';
|
|
2
|
+
import { MiddlewareInterface, SimpleMiddlewareFunction } from '../../types/hooks.js';
|
|
3
|
+
export type { MiddlewareInterface, MoroMiddleware } from '../../types/hooks.js';
|
|
4
4
|
export declare class MiddlewareManager extends EventEmitter {
|
|
5
5
|
private middleware;
|
|
6
6
|
private simpleMiddleware;
|
|
@@ -17,5 +17,5 @@ export declare class MiddlewareManager extends EventEmitter {
|
|
|
17
17
|
installWithDependencies(middleware: MiddlewareInterface[], options?: Record<string, any>): Promise<void>;
|
|
18
18
|
private topologicalSort;
|
|
19
19
|
}
|
|
20
|
-
export { builtInMiddleware, simpleMiddleware } from './built-in';
|
|
21
|
-
export * from './built-in';
|
|
20
|
+
export { builtInMiddleware, simpleMiddleware } from './built-in/index.js';
|
|
21
|
+
export * from './built-in/index.js';
|
|
@@ -1,32 +1,15 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.simpleMiddleware = exports.builtInMiddleware = exports.MiddlewareManager = void 0;
|
|
18
1
|
// Middleware System for Moro
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
class MiddlewareManager extends
|
|
2
|
+
import { EventEmitter } from 'events';
|
|
3
|
+
import { HookManager } from '../utilities/index.js';
|
|
4
|
+
import { createFrameworkLogger } from '../logger/index.js';
|
|
5
|
+
export class MiddlewareManager extends EventEmitter {
|
|
23
6
|
middleware = new Map();
|
|
24
7
|
simpleMiddleware = new Map();
|
|
25
8
|
hooks;
|
|
26
|
-
logger =
|
|
9
|
+
logger = createFrameworkLogger('Middleware');
|
|
27
10
|
constructor() {
|
|
28
11
|
super();
|
|
29
|
-
this.hooks = new
|
|
12
|
+
this.hooks = new HookManager();
|
|
30
13
|
}
|
|
31
14
|
// Register middleware without installing
|
|
32
15
|
register(name, middleware) {
|
|
@@ -144,10 +127,7 @@ class MiddlewareManager extends events_1.EventEmitter {
|
|
|
144
127
|
return result;
|
|
145
128
|
}
|
|
146
129
|
}
|
|
147
|
-
exports.MiddlewareManager = MiddlewareManager;
|
|
148
130
|
// Built-in middleware exports
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
Object.defineProperty(exports, "simpleMiddleware", { enumerable: true, get: function () { return built_in_1.simpleMiddleware; } });
|
|
152
|
-
__exportStar(require("./built-in"), exports);
|
|
131
|
+
export { builtInMiddleware, simpleMiddleware } from './built-in/index.js';
|
|
132
|
+
export * from './built-in/index.js';
|
|
153
133
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/middleware/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/middleware/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ModuleConfig } from '../../types/module';
|
|
2
|
-
import { DiscoveryOptions } from '../../types/discovery';
|
|
3
|
-
import { ModuleDefaultsConfig } from '../../types/config';
|
|
1
|
+
import { ModuleConfig } from '../../types/module.js';
|
|
2
|
+
import { DiscoveryOptions } from '../../types/discovery.js';
|
|
3
|
+
import { ModuleDefaultsConfig } from '../../types/config.js';
|
|
4
4
|
export declare class ModuleDiscovery {
|
|
5
5
|
private baseDir;
|
|
6
6
|
private options;
|
|
@@ -1,49 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.ModuleRegistry = exports.ModuleDiscovery = void 0;
|
|
37
|
-
exports.autoDiscoverModules = autoDiscoverModules;
|
|
38
|
-
exports.autoDiscoverModuleDirectories = autoDiscoverModuleDirectories;
|
|
39
1
|
// Auto-discovery system for Moro modules
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
class ModuleDiscovery {
|
|
2
|
+
import { readdirSync, statSync } from 'fs';
|
|
3
|
+
import { join, extname, relative, isAbsolute } from 'path';
|
|
4
|
+
import { createFrameworkLogger } from '../logger/index.js';
|
|
5
|
+
export class ModuleDiscovery {
|
|
44
6
|
baseDir;
|
|
45
7
|
options;
|
|
46
|
-
discoveryLogger =
|
|
8
|
+
discoveryLogger = createFrameworkLogger('MODULE_DISCOVERY');
|
|
47
9
|
watchers = []; // Store file watchers for cleanup
|
|
48
10
|
constructor(baseDir = process.cwd(), options = {}) {
|
|
49
11
|
this.baseDir = baseDir;
|
|
@@ -77,18 +39,18 @@ class ModuleDiscovery {
|
|
|
77
39
|
// Find modules by directory structure
|
|
78
40
|
async discoverModuleDirectories(modulesDir = 'src/modules') {
|
|
79
41
|
const modules = [];
|
|
80
|
-
const fullPath =
|
|
42
|
+
const fullPath = join(this.baseDir, modulesDir);
|
|
81
43
|
try {
|
|
82
|
-
if (!
|
|
44
|
+
if (!statSync(fullPath).isDirectory()) {
|
|
83
45
|
return modules;
|
|
84
46
|
}
|
|
85
|
-
const items =
|
|
47
|
+
const items = readdirSync(fullPath);
|
|
86
48
|
for (const item of items) {
|
|
87
|
-
const itemPath =
|
|
88
|
-
if (
|
|
89
|
-
const indexPath =
|
|
49
|
+
const itemPath = join(fullPath, item);
|
|
50
|
+
if (statSync(itemPath).isDirectory()) {
|
|
51
|
+
const indexPath = join(itemPath, 'index.ts');
|
|
90
52
|
try {
|
|
91
|
-
if (
|
|
53
|
+
if (statSync(indexPath).isFile()) {
|
|
92
54
|
const module = await this.loadModule(indexPath);
|
|
93
55
|
if (module) {
|
|
94
56
|
modules.push(module);
|
|
@@ -100,9 +62,9 @@ class ModuleDiscovery {
|
|
|
100
62
|
// Try alternate patterns
|
|
101
63
|
const alternates = ['module.ts', `${item}.module.ts`, 'config.ts'];
|
|
102
64
|
for (const alt of alternates) {
|
|
103
|
-
const altPath =
|
|
65
|
+
const altPath = join(itemPath, alt);
|
|
104
66
|
try {
|
|
105
|
-
if (
|
|
67
|
+
if (statSync(altPath).isFile()) {
|
|
106
68
|
const module = await this.loadModule(altPath);
|
|
107
69
|
if (module) {
|
|
108
70
|
modules.push(module);
|
|
@@ -133,10 +95,10 @@ class ModuleDiscovery {
|
|
|
133
95
|
// Recursively scan directories for module files
|
|
134
96
|
scanDirectory(dir, files) {
|
|
135
97
|
try {
|
|
136
|
-
const items =
|
|
98
|
+
const items = readdirSync(dir);
|
|
137
99
|
for (const item of items) {
|
|
138
|
-
const fullPath =
|
|
139
|
-
const stat =
|
|
100
|
+
const fullPath = join(dir, item);
|
|
101
|
+
const stat = statSync(fullPath);
|
|
140
102
|
if (stat.isDirectory()) {
|
|
141
103
|
// Skip node_modules and other common directories
|
|
142
104
|
if (!['node_modules', '.git', 'dist', 'build'].includes(item) && this.options.recursive) {
|
|
@@ -144,7 +106,7 @@ class ModuleDiscovery {
|
|
|
144
106
|
}
|
|
145
107
|
}
|
|
146
108
|
else if (stat.isFile()) {
|
|
147
|
-
const ext =
|
|
109
|
+
const ext = extname(item);
|
|
148
110
|
if (this.options.extensions?.includes(ext)) {
|
|
149
111
|
files.push(fullPath);
|
|
150
112
|
}
|
|
@@ -158,7 +120,7 @@ class ModuleDiscovery {
|
|
|
158
120
|
// Load a module from a file path
|
|
159
121
|
async loadModule(modulePath) {
|
|
160
122
|
try {
|
|
161
|
-
const module = await
|
|
123
|
+
const module = await import(modulePath);
|
|
162
124
|
// Try different export patterns
|
|
163
125
|
const candidates = [
|
|
164
126
|
module.default,
|
|
@@ -212,9 +174,9 @@ class ModuleDiscovery {
|
|
|
212
174
|
// Discover modules from a specific path with advanced filtering
|
|
213
175
|
async discoverFromPath(searchPath, config) {
|
|
214
176
|
const modules = [];
|
|
215
|
-
const fullPath =
|
|
177
|
+
const fullPath = join(this.baseDir, searchPath);
|
|
216
178
|
try {
|
|
217
|
-
const stat =
|
|
179
|
+
const stat = statSync(fullPath);
|
|
218
180
|
if (!stat.isDirectory()) {
|
|
219
181
|
return modules;
|
|
220
182
|
}
|
|
@@ -227,7 +189,7 @@ class ModuleDiscovery {
|
|
|
227
189
|
for (const filePath of files) {
|
|
228
190
|
try {
|
|
229
191
|
// Convert relative path to absolute path for import
|
|
230
|
-
const absolutePath =
|
|
192
|
+
const absolutePath = join(this.baseDir, filePath);
|
|
231
193
|
const module = await this.loadModule(absolutePath);
|
|
232
194
|
if (module && this.validateAdvancedModule(module, config)) {
|
|
233
195
|
modules.push(module);
|
|
@@ -262,15 +224,15 @@ class ModuleDiscovery {
|
|
|
262
224
|
return files;
|
|
263
225
|
}
|
|
264
226
|
try {
|
|
265
|
-
const items =
|
|
227
|
+
const items = readdirSync(basePath);
|
|
266
228
|
for (const item of items) {
|
|
267
|
-
const fullPath =
|
|
268
|
-
const relativePath =
|
|
229
|
+
const fullPath = join(basePath, item);
|
|
230
|
+
const relativePath = relative(this.baseDir, fullPath);
|
|
269
231
|
// Check ignore patterns
|
|
270
232
|
if (this.shouldIgnore(relativePath, config.ignorePatterns)) {
|
|
271
233
|
continue;
|
|
272
234
|
}
|
|
273
|
-
const stat =
|
|
235
|
+
const stat = statSync(fullPath);
|
|
274
236
|
if (stat.isDirectory() && config.recursive) {
|
|
275
237
|
files.push(...this.findMatchingFiles(fullPath, config, currentDepth + 1));
|
|
276
238
|
}
|
|
@@ -297,14 +259,14 @@ class ModuleDiscovery {
|
|
|
297
259
|
const allFiles = [];
|
|
298
260
|
try {
|
|
299
261
|
// Try to use native fs.glob if available (Node.js 20+)
|
|
300
|
-
const { glob } = await
|
|
262
|
+
const { glob } = await import('fs/promises');
|
|
301
263
|
// Check if glob is actually a function and test it
|
|
302
264
|
if (typeof glob !== 'function') {
|
|
303
265
|
return this.findMatchingFilesFallback(searchPath, patterns, ignorePatterns, maxDepth);
|
|
304
266
|
}
|
|
305
267
|
// Test glob with a simple pattern first
|
|
306
268
|
try {
|
|
307
|
-
const testIterator = glob(
|
|
269
|
+
const testIterator = glob(join(searchPath, '*'));
|
|
308
270
|
let testCount = 0;
|
|
309
271
|
for await (const _ of testIterator) {
|
|
310
272
|
testCount++;
|
|
@@ -316,14 +278,14 @@ class ModuleDiscovery {
|
|
|
316
278
|
return this.findMatchingFilesFallback(searchPath, patterns, ignorePatterns, maxDepth);
|
|
317
279
|
}
|
|
318
280
|
for (const pattern of patterns) {
|
|
319
|
-
const fullPattern =
|
|
281
|
+
const fullPattern = join(searchPath, pattern);
|
|
320
282
|
try {
|
|
321
283
|
// fs.glob returns an AsyncIterator, need to collect results
|
|
322
284
|
const globIterator = glob(fullPattern);
|
|
323
285
|
const files = [];
|
|
324
286
|
for await (const file of globIterator) {
|
|
325
287
|
const filePath = typeof file === 'string' ? file : file.name || String(file);
|
|
326
|
-
const relativePath =
|
|
288
|
+
const relativePath = relative(this.baseDir, filePath);
|
|
327
289
|
// Check if file should be ignored and within max depth
|
|
328
290
|
if (!this.shouldIgnore(relativePath, ignorePatterns) &&
|
|
329
291
|
this.isWithinMaxDepth(relativePath, searchPath, maxDepth)) {
|
|
@@ -355,10 +317,10 @@ class ModuleDiscovery {
|
|
|
355
317
|
recursive: true,
|
|
356
318
|
};
|
|
357
319
|
// Handle both absolute and relative paths
|
|
358
|
-
const fullSearchPath =
|
|
320
|
+
const fullSearchPath = isAbsolute(searchPath) ? searchPath : join(this.baseDir, searchPath);
|
|
359
321
|
// Check if search path exists
|
|
360
322
|
try {
|
|
361
|
-
const { access } = await
|
|
323
|
+
const { access } = await import('fs/promises');
|
|
362
324
|
await access(fullSearchPath);
|
|
363
325
|
}
|
|
364
326
|
catch (e) {
|
|
@@ -366,7 +328,7 @@ class ModuleDiscovery {
|
|
|
366
328
|
}
|
|
367
329
|
// Get files and convert to relative paths
|
|
368
330
|
const files = this.findMatchingFiles(fullSearchPath, config);
|
|
369
|
-
const relativeFiles = files.map(file =>
|
|
331
|
+
const relativeFiles = files.map(file => relative(this.baseDir, file));
|
|
370
332
|
return relativeFiles;
|
|
371
333
|
}
|
|
372
334
|
// Simple pattern matching for fallback (basic glob support)
|
|
@@ -404,7 +366,7 @@ class ModuleDiscovery {
|
|
|
404
366
|
// Check if file is within max depth (for glob results)
|
|
405
367
|
isWithinMaxDepth(relativePath, searchPath, maxDepth) {
|
|
406
368
|
// Count directory separators to determine depth
|
|
407
|
-
const pathFromSearch =
|
|
369
|
+
const pathFromSearch = relative(searchPath, join(this.baseDir, relativePath));
|
|
408
370
|
const depth = pathFromSearch.split('/').length - 1; // -1 because file itself doesn't count as depth
|
|
409
371
|
return depth <= maxDepth;
|
|
410
372
|
}
|
|
@@ -498,7 +460,8 @@ class ModuleDiscovery {
|
|
|
498
460
|
// Watch for module changes (for development)
|
|
499
461
|
watchModules(callback) {
|
|
500
462
|
// Use dynamic import for fs to avoid require()
|
|
501
|
-
|
|
463
|
+
import('fs')
|
|
464
|
+
.then(fs => {
|
|
502
465
|
const modulePaths = this.findModuleFiles();
|
|
503
466
|
modulePaths.forEach(path => {
|
|
504
467
|
try {
|
|
@@ -522,13 +485,14 @@ class ModuleDiscovery {
|
|
|
522
485
|
if (!config.watchForChanges) {
|
|
523
486
|
return;
|
|
524
487
|
}
|
|
525
|
-
|
|
488
|
+
import('fs')
|
|
489
|
+
.then(fs => {
|
|
526
490
|
const watchedPaths = new Set();
|
|
527
491
|
// Watch all configured paths
|
|
528
492
|
config.paths.forEach(searchPath => {
|
|
529
|
-
const fullPath =
|
|
493
|
+
const fullPath = join(this.baseDir, searchPath);
|
|
530
494
|
try {
|
|
531
|
-
if (
|
|
495
|
+
if (statSync(fullPath).isDirectory() && !watchedPaths.has(fullPath)) {
|
|
532
496
|
watchedPaths.add(fullPath);
|
|
533
497
|
const watcher = fs.watch(fullPath, { recursive: config.recursive }, async (eventType, filename) => {
|
|
534
498
|
if (filename && this.matchesPatterns(filename, config.patterns)) {
|
|
@@ -560,18 +524,17 @@ class ModuleDiscovery {
|
|
|
560
524
|
this.watchers = [];
|
|
561
525
|
}
|
|
562
526
|
}
|
|
563
|
-
exports.ModuleDiscovery = ModuleDiscovery;
|
|
564
527
|
// Convenience functions
|
|
565
|
-
async function autoDiscoverModules(baseDir, options) {
|
|
528
|
+
export async function autoDiscoverModules(baseDir, options) {
|
|
566
529
|
const discovery = new ModuleDiscovery(baseDir, options);
|
|
567
530
|
return discovery.discoverModules();
|
|
568
531
|
}
|
|
569
|
-
async function autoDiscoverModuleDirectories(baseDir, modulesDir) {
|
|
532
|
+
export async function autoDiscoverModuleDirectories(baseDir, modulesDir) {
|
|
570
533
|
const discovery = new ModuleDiscovery(baseDir);
|
|
571
534
|
return discovery.discoverModuleDirectories(modulesDir);
|
|
572
535
|
}
|
|
573
536
|
// Module registry for tracking loaded modules
|
|
574
|
-
class ModuleRegistry {
|
|
537
|
+
export class ModuleRegistry {
|
|
575
538
|
modules = new Map();
|
|
576
539
|
loadedModules = new Set();
|
|
577
540
|
register(module) {
|
|
@@ -609,5 +572,4 @@ class ModuleRegistry {
|
|
|
609
572
|
this.loadedModules.clear();
|
|
610
573
|
}
|
|
611
574
|
}
|
|
612
|
-
exports.ModuleRegistry = ModuleRegistry;
|
|
613
575
|
//# sourceMappingURL=auto-discovery.js.map
|