nitrostack 1.0.82 → 1.0.84
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/LICENSE +1 -1
- package/README.md +38 -143
- package/package.json +13 -49
- package/dist/auth/__tests__/api-key.test.d.ts +0 -2
- package/dist/auth/__tests__/api-key.test.d.ts.map +0 -1
- package/dist/auth/__tests__/api-key.test.js +0 -156
- package/dist/auth/__tests__/api-key.test.js.map +0 -1
- package/dist/auth/__tests__/client.test.d.ts +0 -2
- package/dist/auth/__tests__/client.test.d.ts.map +0 -1
- package/dist/auth/__tests__/client.test.js +0 -173
- package/dist/auth/__tests__/client.test.js.map +0 -1
- package/dist/auth/__tests__/middleware.test.d.ts +0 -2
- package/dist/auth/__tests__/middleware.test.d.ts.map +0 -1
- package/dist/auth/__tests__/middleware.test.js +0 -232
- package/dist/auth/__tests__/middleware.test.js.map +0 -1
- package/dist/auth/__tests__/pkce.test.d.ts +0 -2
- package/dist/auth/__tests__/pkce.test.d.ts.map +0 -1
- package/dist/auth/__tests__/pkce.test.js +0 -110
- package/dist/auth/__tests__/pkce.test.js.map +0 -1
- package/dist/auth/__tests__/quick-setup.test.d.ts +0 -2
- package/dist/auth/__tests__/quick-setup.test.d.ts.map +0 -1
- package/dist/auth/__tests__/quick-setup.test.js +0 -95
- package/dist/auth/__tests__/quick-setup.test.js.map +0 -1
- package/dist/auth/__tests__/secure-secret.test.d.ts +0 -2
- package/dist/auth/__tests__/secure-secret.test.d.ts.map +0 -1
- package/dist/auth/__tests__/secure-secret.test.js +0 -104
- package/dist/auth/__tests__/secure-secret.test.js.map +0 -1
- package/dist/auth/__tests__/server-integration.test.d.ts +0 -2
- package/dist/auth/__tests__/server-integration.test.d.ts.map +0 -1
- package/dist/auth/__tests__/server-integration.test.js +0 -156
- package/dist/auth/__tests__/server-integration.test.js.map +0 -1
- package/dist/auth/__tests__/server-metadata.test.d.ts +0 -2
- package/dist/auth/__tests__/server-metadata.test.d.ts.map +0 -1
- package/dist/auth/__tests__/server-metadata.test.js +0 -72
- package/dist/auth/__tests__/server-metadata.test.js.map +0 -1
- package/dist/auth/__tests__/simple-jwt.test.d.ts +0 -2
- package/dist/auth/__tests__/simple-jwt.test.d.ts.map +0 -1
- package/dist/auth/__tests__/simple-jwt.test.js +0 -125
- package/dist/auth/__tests__/simple-jwt.test.js.map +0 -1
- package/dist/auth/__tests__/token-store.test.d.ts +0 -2
- package/dist/auth/__tests__/token-store.test.d.ts.map +0 -1
- package/dist/auth/__tests__/token-store.test.js +0 -167
- package/dist/auth/__tests__/token-store.test.js.map +0 -1
- package/dist/auth/__tests__/token-validation.test.d.ts +0 -2
- package/dist/auth/__tests__/token-validation.test.d.ts.map +0 -1
- package/dist/auth/__tests__/token-validation.test.js +0 -219
- package/dist/auth/__tests__/token-validation.test.js.map +0 -1
- package/dist/auth/api-key.d.ts +0 -118
- package/dist/auth/api-key.d.ts.map +0 -1
- package/dist/auth/api-key.js +0 -168
- package/dist/auth/api-key.js.map +0 -1
- package/dist/auth/client.d.ts +0 -151
- package/dist/auth/client.d.ts.map +0 -1
- package/dist/auth/client.js +0 -330
- package/dist/auth/client.js.map +0 -1
- package/dist/auth/index.d.ts +0 -31
- package/dist/auth/index.d.ts.map +0 -1
- package/dist/auth/index.js +0 -46
- package/dist/auth/index.js.map +0 -1
- package/dist/auth/middleware.d.ts +0 -95
- package/dist/auth/middleware.d.ts.map +0 -1
- package/dist/auth/middleware.js +0 -260
- package/dist/auth/middleware.js.map +0 -1
- package/dist/auth/pkce.d.ts +0 -53
- package/dist/auth/pkce.d.ts.map +0 -1
- package/dist/auth/pkce.js +0 -105
- package/dist/auth/pkce.js.map +0 -1
- package/dist/auth/quick-setup.d.ts +0 -94
- package/dist/auth/quick-setup.d.ts.map +0 -1
- package/dist/auth/quick-setup.js +0 -210
- package/dist/auth/quick-setup.js.map +0 -1
- package/dist/auth/secure-secret.d.ts +0 -136
- package/dist/auth/secure-secret.d.ts.map +0 -1
- package/dist/auth/secure-secret.js +0 -182
- package/dist/auth/secure-secret.js.map +0 -1
- package/dist/auth/server-integration.d.ts +0 -97
- package/dist/auth/server-integration.d.ts.map +0 -1
- package/dist/auth/server-integration.js +0 -182
- package/dist/auth/server-integration.js.map +0 -1
- package/dist/auth/server-metadata.d.ts +0 -51
- package/dist/auth/server-metadata.d.ts.map +0 -1
- package/dist/auth/server-metadata.js +0 -106
- package/dist/auth/server-metadata.js.map +0 -1
- package/dist/auth/simple-jwt.d.ts +0 -174
- package/dist/auth/simple-jwt.d.ts.map +0 -1
- package/dist/auth/simple-jwt.js +0 -162
- package/dist/auth/simple-jwt.js.map +0 -1
- package/dist/auth/token-store.d.ts +0 -104
- package/dist/auth/token-store.d.ts.map +0 -1
- package/dist/auth/token-store.js +0 -205
- package/dist/auth/token-store.js.map +0 -1
- package/dist/auth/token-validation.d.ts +0 -59
- package/dist/auth/token-validation.d.ts.map +0 -1
- package/dist/auth/token-validation.js +0 -241
- package/dist/auth/token-validation.js.map +0 -1
- package/dist/auth/types.d.ts +0 -215
- package/dist/auth/types.d.ts.map +0 -1
- package/dist/auth/types.js +0 -6
- package/dist/auth/types.js.map +0 -1
- package/dist/core/__tests__/app-decorator.test.d.ts +0 -2
- package/dist/core/__tests__/app-decorator.test.d.ts.map +0 -1
- package/dist/core/__tests__/app-decorator.test.js +0 -100
- package/dist/core/__tests__/app-decorator.test.js.map +0 -1
- package/dist/core/__tests__/app-factory.extended.test.d.ts +0 -2
- package/dist/core/__tests__/app-factory.extended.test.d.ts.map +0 -1
- package/dist/core/__tests__/app-factory.extended.test.js +0 -244
- package/dist/core/__tests__/app-factory.extended.test.js.map +0 -1
- package/dist/core/__tests__/builders.test.d.ts +0 -2
- package/dist/core/__tests__/builders.test.d.ts.map +0 -1
- package/dist/core/__tests__/builders.test.js +0 -98
- package/dist/core/__tests__/builders.test.js.map +0 -1
- package/dist/core/__tests__/component.test.d.ts +0 -2
- package/dist/core/__tests__/component.test.d.ts.map +0 -1
- package/dist/core/__tests__/component.test.js +0 -151
- package/dist/core/__tests__/component.test.js.map +0 -1
- package/dist/core/__tests__/config-module.test.d.ts +0 -2
- package/dist/core/__tests__/config-module.test.d.ts.map +0 -1
- package/dist/core/__tests__/config-module.test.js +0 -90
- package/dist/core/__tests__/config-module.test.js.map +0 -1
- package/dist/core/__tests__/core-modules.test.d.ts +0 -2
- package/dist/core/__tests__/core-modules.test.d.ts.map +0 -1
- package/dist/core/__tests__/core-modules.test.js +0 -36
- package/dist/core/__tests__/core-modules.test.js.map +0 -1
- package/dist/core/__tests__/di.test.d.ts +0 -2
- package/dist/core/__tests__/di.test.d.ts.map +0 -1
- package/dist/core/__tests__/di.test.js +0 -101
- package/dist/core/__tests__/di.test.js.map +0 -1
- package/dist/core/__tests__/errors.test.d.ts +0 -2
- package/dist/core/__tests__/errors.test.d.ts.map +0 -1
- package/dist/core/__tests__/errors.test.js +0 -109
- package/dist/core/__tests__/errors.test.js.map +0 -1
- package/dist/core/__tests__/final.blitz.test.d.ts +0 -2
- package/dist/core/__tests__/final.blitz.test.d.ts.map +0 -1
- package/dist/core/__tests__/final.blitz.test.js +0 -327
- package/dist/core/__tests__/final.blitz.test.js.map +0 -1
- package/dist/core/__tests__/jwt-module.test.d.ts +0 -2
- package/dist/core/__tests__/jwt-module.test.d.ts.map +0 -1
- package/dist/core/__tests__/jwt-module.test.js +0 -60
- package/dist/core/__tests__/jwt-module.test.js.map +0 -1
- package/dist/core/__tests__/logger.test.d.ts +0 -2
- package/dist/core/__tests__/logger.test.d.ts.map +0 -1
- package/dist/core/__tests__/logger.test.js +0 -83
- package/dist/core/__tests__/logger.test.js.map +0 -1
- package/dist/core/__tests__/models.test.d.ts +0 -2
- package/dist/core/__tests__/models.test.d.ts.map +0 -1
- package/dist/core/__tests__/models.test.js +0 -142
- package/dist/core/__tests__/models.test.js.map +0 -1
- package/dist/core/__tests__/module.test.d.ts +0 -2
- package/dist/core/__tests__/module.test.d.ts.map +0 -1
- package/dist/core/__tests__/module.test.js +0 -58
- package/dist/core/__tests__/module.test.js.map +0 -1
- package/dist/core/__tests__/oauth-module.test.d.ts +0 -2
- package/dist/core/__tests__/oauth-module.test.d.ts.map +0 -1
- package/dist/core/__tests__/oauth-module.test.js +0 -168
- package/dist/core/__tests__/oauth-module.test.js.map +0 -1
- package/dist/core/__tests__/oauth.extended.test.d.ts +0 -2
- package/dist/core/__tests__/oauth.extended.test.d.ts.map +0 -1
- package/dist/core/__tests__/oauth.extended.test.js +0 -146
- package/dist/core/__tests__/oauth.extended.test.js.map +0 -1
- package/dist/core/__tests__/prompt.test.d.ts +0 -2
- package/dist/core/__tests__/prompt.test.d.ts.map +0 -1
- package/dist/core/__tests__/prompt.test.js +0 -126
- package/dist/core/__tests__/prompt.test.js.map +0 -1
- package/dist/core/__tests__/resource.test.d.ts +0 -2
- package/dist/core/__tests__/resource.test.d.ts.map +0 -1
- package/dist/core/__tests__/resource.test.js +0 -173
- package/dist/core/__tests__/resource.test.js.map +0 -1
- package/dist/core/__tests__/server.extended.test.d.ts +0 -2
- package/dist/core/__tests__/server.extended.test.d.ts.map +0 -1
- package/dist/core/__tests__/server.extended.test.js +0 -242
- package/dist/core/__tests__/server.extended.test.js.map +0 -1
- package/dist/core/__tests__/server.test.d.ts +0 -2
- package/dist/core/__tests__/server.test.d.ts.map +0 -1
- package/dist/core/__tests__/server.test.js +0 -120
- package/dist/core/__tests__/server.test.js.map +0 -1
- package/dist/core/__tests__/transport.http.test.d.ts +0 -2
- package/dist/core/__tests__/transport.http.test.d.ts.map +0 -1
- package/dist/core/__tests__/transport.http.test.js +0 -119
- package/dist/core/__tests__/transport.http.test.js.map +0 -1
- package/dist/core/__tests__/transport.streamable.test.d.ts +0 -2
- package/dist/core/__tests__/transport.streamable.test.d.ts.map +0 -1
- package/dist/core/__tests__/transport.streamable.test.js +0 -168
- package/dist/core/__tests__/transport.streamable.test.js.map +0 -1
- package/dist/core/__tests__/transports.test.d.ts +0 -2
- package/dist/core/__tests__/transports.test.d.ts.map +0 -1
- package/dist/core/__tests__/transports.test.js +0 -12
- package/dist/core/__tests__/transports.test.js.map +0 -1
- package/dist/core/apikey-module.d.ts +0 -69
- package/dist/core/apikey-module.d.ts.map +0 -1
- package/dist/core/apikey-module.js +0 -114
- package/dist/core/apikey-module.js.map +0 -1
- package/dist/core/app-decorator.d.ts +0 -59
- package/dist/core/app-decorator.d.ts.map +0 -1
- package/dist/core/app-decorator.js +0 -322
- package/dist/core/app-decorator.js.map +0 -1
- package/dist/core/builders.d.ts +0 -50
- package/dist/core/builders.d.ts.map +0 -1
- package/dist/core/builders.js +0 -139
- package/dist/core/builders.js.map +0 -1
- package/dist/core/component.d.ts +0 -111
- package/dist/core/component.d.ts.map +0 -1
- package/dist/core/component.js +0 -228
- package/dist/core/component.js.map +0 -1
- package/dist/core/config-module.d.ts +0 -62
- package/dist/core/config-module.d.ts.map +0 -1
- package/dist/core/config-module.js +0 -94
- package/dist/core/config-module.js.map +0 -1
- package/dist/core/decorators/__tests__/decorators.test.d.ts +0 -2
- package/dist/core/decorators/__tests__/decorators.test.d.ts.map +0 -1
- package/dist/core/decorators/__tests__/decorators.test.js +0 -103
- package/dist/core/decorators/__tests__/decorators.test.js.map +0 -1
- package/dist/core/decorators/__tests__/extended-decorators.test.d.ts +0 -2
- package/dist/core/decorators/__tests__/extended-decorators.test.d.ts.map +0 -1
- package/dist/core/decorators/__tests__/extended-decorators.test.js +0 -194
- package/dist/core/decorators/__tests__/extended-decorators.test.js.map +0 -1
- package/dist/core/decorators/__tests__/health-check.test.d.ts +0 -2
- package/dist/core/decorators/__tests__/health-check.test.d.ts.map +0 -1
- package/dist/core/decorators/__tests__/health-check.test.js +0 -119
- package/dist/core/decorators/__tests__/health-check.test.js.map +0 -1
- package/dist/core/decorators/cache.decorator.d.ts +0 -61
- package/dist/core/decorators/cache.decorator.d.ts.map +0 -1
- package/dist/core/decorators/cache.decorator.js +0 -115
- package/dist/core/decorators/cache.decorator.js.map +0 -1
- package/dist/core/decorators/health-check.decorator.d.ts +0 -80
- package/dist/core/decorators/health-check.decorator.d.ts.map +0 -1
- package/dist/core/decorators/health-check.decorator.js +0 -153
- package/dist/core/decorators/health-check.decorator.js.map +0 -1
- package/dist/core/decorators/rate-limit.decorator.d.ts +0 -63
- package/dist/core/decorators/rate-limit.decorator.d.ts.map +0 -1
- package/dist/core/decorators/rate-limit.decorator.js +0 -129
- package/dist/core/decorators/rate-limit.decorator.js.map +0 -1
- package/dist/core/decorators.d.ts +0 -190
- package/dist/core/decorators.d.ts.map +0 -1
- package/dist/core/decorators.js +0 -170
- package/dist/core/decorators.js.map +0 -1
- package/dist/core/di/__tests__/container.test.d.ts +0 -2
- package/dist/core/di/__tests__/container.test.d.ts.map +0 -1
- package/dist/core/di/__tests__/container.test.js +0 -88
- package/dist/core/di/__tests__/container.test.js.map +0 -1
- package/dist/core/di/container.d.ts +0 -59
- package/dist/core/di/container.d.ts.map +0 -1
- package/dist/core/di/container.js +0 -93
- package/dist/core/di/container.js.map +0 -1
- package/dist/core/di/injectable.decorator.d.ts +0 -37
- package/dist/core/di/injectable.decorator.d.ts.map +0 -1
- package/dist/core/di/injectable.decorator.js +0 -57
- package/dist/core/di/injectable.decorator.js.map +0 -1
- package/dist/core/errors.d.ts +0 -54
- package/dist/core/errors.d.ts.map +0 -1
- package/dist/core/errors.js +0 -87
- package/dist/core/errors.js.map +0 -1
- package/dist/core/events/__tests__/events.test.d.ts +0 -2
- package/dist/core/events/__tests__/events.test.d.ts.map +0 -1
- package/dist/core/events/__tests__/events.test.js +0 -177
- package/dist/core/events/__tests__/events.test.js.map +0 -1
- package/dist/core/events/event-emitter.d.ts +0 -50
- package/dist/core/events/event-emitter.d.ts.map +0 -1
- package/dist/core/events/event-emitter.js +0 -94
- package/dist/core/events/event-emitter.js.map +0 -1
- package/dist/core/events/event.decorator.d.ts +0 -48
- package/dist/core/events/event.decorator.d.ts.map +0 -1
- package/dist/core/events/event.decorator.js +0 -72
- package/dist/core/events/event.decorator.js.map +0 -1
- package/dist/core/events/log-emitter.d.ts +0 -14
- package/dist/core/events/log-emitter.d.ts.map +0 -1
- package/dist/core/events/log-emitter.js +0 -20
- package/dist/core/events/log-emitter.js.map +0 -1
- package/dist/core/filters/__tests__/filters.test.d.ts +0 -2
- package/dist/core/filters/__tests__/filters.test.d.ts.map +0 -1
- package/dist/core/filters/__tests__/filters.test.js +0 -72
- package/dist/core/filters/__tests__/filters.test.js.map +0 -1
- package/dist/core/filters/exception-filter.decorator.d.ts +0 -40
- package/dist/core/filters/exception-filter.decorator.d.ts.map +0 -1
- package/dist/core/filters/exception-filter.decorator.js +0 -54
- package/dist/core/filters/exception-filter.decorator.js.map +0 -1
- package/dist/core/filters/exception-filter.interface.d.ts +0 -39
- package/dist/core/filters/exception-filter.interface.d.ts.map +0 -1
- package/dist/core/filters/exception-filter.interface.js +0 -2
- package/dist/core/filters/exception-filter.interface.js.map +0 -1
- package/dist/core/guards/__tests__/guards.test.d.ts +0 -2
- package/dist/core/guards/__tests__/guards.test.d.ts.map +0 -1
- package/dist/core/guards/__tests__/guards.test.js +0 -55
- package/dist/core/guards/__tests__/guards.test.js.map +0 -1
- package/dist/core/guards/apikey.guard.d.ts +0 -22
- package/dist/core/guards/apikey.guard.d.ts.map +0 -1
- package/dist/core/guards/apikey.guard.js +0 -11
- package/dist/core/guards/apikey.guard.js.map +0 -1
- package/dist/core/guards/guard.interface.d.ts +0 -18
- package/dist/core/guards/guard.interface.d.ts.map +0 -1
- package/dist/core/guards/guard.interface.js +0 -2
- package/dist/core/guards/guard.interface.js.map +0 -1
- package/dist/core/guards/jwt.guard.d.ts +0 -18
- package/dist/core/guards/jwt.guard.d.ts.map +0 -1
- package/dist/core/guards/jwt.guard.js +0 -2
- package/dist/core/guards/jwt.guard.js.map +0 -1
- package/dist/core/guards/oauth.guard.d.ts +0 -35
- package/dist/core/guards/oauth.guard.d.ts.map +0 -1
- package/dist/core/guards/oauth.guard.js +0 -2
- package/dist/core/guards/oauth.guard.js.map +0 -1
- package/dist/core/guards/use-guards.decorator.d.ts +0 -25
- package/dist/core/guards/use-guards.decorator.d.ts.map +0 -1
- package/dist/core/guards/use-guards.decorator.js +0 -32
- package/dist/core/guards/use-guards.decorator.js.map +0 -1
- package/dist/core/health/__tests__/health.test.d.ts +0 -2
- package/dist/core/health/__tests__/health.test.d.ts.map +0 -1
- package/dist/core/health/__tests__/health.test.js +0 -31
- package/dist/core/health/__tests__/health.test.js.map +0 -1
- package/dist/core/health/health-checks.resource.d.ts +0 -14
- package/dist/core/health/health-checks.resource.d.ts.map +0 -1
- package/dist/core/health/health-checks.resource.js +0 -29
- package/dist/core/health/health-checks.resource.js.map +0 -1
- package/dist/core/index.d.ts +0 -56
- package/dist/core/index.d.ts.map +0 -1
- package/dist/core/index.js +0 -60
- package/dist/core/index.js.map +0 -1
- package/dist/core/interceptors/__tests__/interceptors.test.d.ts +0 -2
- package/dist/core/interceptors/__tests__/interceptors.test.d.ts.map +0 -1
- package/dist/core/interceptors/__tests__/interceptors.test.js +0 -52
- package/dist/core/interceptors/__tests__/interceptors.test.js.map +0 -1
- package/dist/core/interceptors/interceptor.decorator.d.ts +0 -37
- package/dist/core/interceptors/interceptor.decorator.d.ts.map +0 -1
- package/dist/core/interceptors/interceptor.decorator.js +0 -51
- package/dist/core/interceptors/interceptor.decorator.js.map +0 -1
- package/dist/core/interceptors/interceptor.interface.d.ts +0 -31
- package/dist/core/interceptors/interceptor.interface.d.ts.map +0 -1
- package/dist/core/interceptors/interceptor.interface.js +0 -2
- package/dist/core/interceptors/interceptor.interface.js.map +0 -1
- package/dist/core/jwt-module.d.ts +0 -51
- package/dist/core/jwt-module.d.ts.map +0 -1
- package/dist/core/jwt-module.js +0 -52
- package/dist/core/jwt-module.js.map +0 -1
- package/dist/core/logger.d.ts +0 -18
- package/dist/core/logger.d.ts.map +0 -1
- package/dist/core/logger.js +0 -53
- package/dist/core/logger.js.map +0 -1
- package/dist/core/middleware/__tests__/middleware.test.d.ts +0 -2
- package/dist/core/middleware/__tests__/middleware.test.d.ts.map +0 -1
- package/dist/core/middleware/__tests__/middleware.test.js +0 -105
- package/dist/core/middleware/__tests__/middleware.test.js.map +0 -1
- package/dist/core/middleware/middleware.decorator.d.ts +0 -39
- package/dist/core/middleware/middleware.decorator.d.ts.map +0 -1
- package/dist/core/middleware/middleware.decorator.js +0 -53
- package/dist/core/middleware/middleware.decorator.js.map +0 -1
- package/dist/core/middleware/middleware.interface.d.ts +0 -29
- package/dist/core/middleware/middleware.interface.d.ts.map +0 -1
- package/dist/core/middleware/middleware.interface.js +0 -2
- package/dist/core/middleware/middleware.interface.js.map +0 -1
- package/dist/core/module.d.ts +0 -93
- package/dist/core/module.d.ts.map +0 -1
- package/dist/core/module.js +0 -87
- package/dist/core/module.js.map +0 -1
- package/dist/core/oauth-module.d.ts +0 -123
- package/dist/core/oauth-module.d.ts.map +0 -1
- package/dist/core/oauth-module.js +0 -324
- package/dist/core/oauth-module.js.map +0 -1
- package/dist/core/pipes/__tests__/pipes.test.d.ts +0 -2
- package/dist/core/pipes/__tests__/pipes.test.d.ts.map +0 -1
- package/dist/core/pipes/__tests__/pipes.test.js +0 -164
- package/dist/core/pipes/__tests__/pipes.test.js.map +0 -1
- package/dist/core/pipes/pipe.decorator.d.ts +0 -64
- package/dist/core/pipes/pipe.decorator.d.ts.map +0 -1
- package/dist/core/pipes/pipe.decorator.js +0 -85
- package/dist/core/pipes/pipe.decorator.js.map +0 -1
- package/dist/core/pipes/pipe.interface.d.ts +0 -41
- package/dist/core/pipes/pipe.interface.d.ts.map +0 -1
- package/dist/core/pipes/pipe.interface.js +0 -2
- package/dist/core/pipes/pipe.interface.js.map +0 -1
- package/dist/core/prompt.d.ts +0 -46
- package/dist/core/prompt.d.ts.map +0 -1
- package/dist/core/prompt.js +0 -76
- package/dist/core/prompt.js.map +0 -1
- package/dist/core/resource.d.ts +0 -47
- package/dist/core/resource.d.ts.map +0 -1
- package/dist/core/resource.js +0 -90
- package/dist/core/resource.js.map +0 -1
- package/dist/core/server.d.ts +0 -129
- package/dist/core/server.d.ts.map +0 -1
- package/dist/core/server.js +0 -617
- package/dist/core/server.js.map +0 -1
- package/dist/core/tool.d.ts +0 -108
- package/dist/core/tool.d.ts.map +0 -1
- package/dist/core/tool.js +0 -241
- package/dist/core/tool.js.map +0 -1
- package/dist/core/transports/__tests__/transports.test.d.ts +0 -2
- package/dist/core/transports/__tests__/transports.test.d.ts.map +0 -1
- package/dist/core/transports/__tests__/transports.test.js +0 -249
- package/dist/core/transports/__tests__/transports.test.js.map +0 -1
- package/dist/core/transports/discovery-http-server.d.ts +0 -19
- package/dist/core/transports/discovery-http-server.d.ts.map +0 -1
- package/dist/core/transports/discovery-http-server.js +0 -54
- package/dist/core/transports/discovery-http-server.js.map +0 -1
- package/dist/core/transports/http-server.d.ts +0 -108
- package/dist/core/transports/http-server.d.ts.map +0 -1
- package/dist/core/transports/http-server.js +0 -293
- package/dist/core/transports/http-server.js.map +0 -1
- package/dist/core/transports/streamable-http.d.ts +0 -177
- package/dist/core/transports/streamable-http.d.ts.map +0 -1
- package/dist/core/transports/streamable-http.js +0 -1287
- package/dist/core/transports/streamable-http.js.map +0 -1
- package/dist/core/types.d.ts +0 -195
- package/dist/core/types.d.ts.map +0 -1
- package/dist/core/types.js +0 -2
- package/dist/core/types.js.map +0 -1
- package/dist/core/widgets/__tests__/registry.test.d.ts +0 -2
- package/dist/core/widgets/__tests__/registry.test.d.ts.map +0 -1
- package/dist/core/widgets/__tests__/registry.test.js +0 -69
- package/dist/core/widgets/__tests__/registry.test.js.map +0 -1
- package/dist/core/widgets/widget-examples.resource.d.ts +0 -17
- package/dist/core/widgets/widget-examples.resource.d.ts.map +0 -1
- package/dist/core/widgets/widget-examples.resource.js +0 -28
- package/dist/core/widgets/widget-examples.resource.js.map +0 -1
- package/dist/core/widgets/widget-registry.d.ts +0 -56
- package/dist/core/widgets/widget-registry.d.ts.map +0 -1
- package/dist/core/widgets/widget-registry.js +0 -75
- package/dist/core/widgets/widget-registry.js.map +0 -1
- package/dist/testing/__tests__/testing.test.d.ts +0 -2
- package/dist/testing/__tests__/testing.test.d.ts.map +0 -1
- package/dist/testing/__tests__/testing.test.js +0 -167
- package/dist/testing/__tests__/testing.test.js.map +0 -1
- package/dist/testing/index.d.ts +0 -103
- package/dist/testing/index.d.ts.map +0 -1
- package/dist/testing/index.js +0 -161
- package/dist/testing/index.js.map +0 -1
- package/dist/ui-next/__tests__/ui-next.test.d.ts +0 -2
- package/dist/ui-next/__tests__/ui-next.test.d.ts.map +0 -1
- package/dist/ui-next/__tests__/ui-next.test.js +0 -74
- package/dist/ui-next/__tests__/ui-next.test.js.map +0 -1
- package/dist/ui-next/index.d.ts +0 -31
- package/dist/ui-next/index.d.ts.map +0 -1
- package/dist/ui-next/index.js +0 -687
- package/dist/ui-next/index.js.map +0 -1
package/dist/core/decorators.js
DELETED
|
@@ -1,170 +0,0 @@
|
|
|
1
|
-
import 'reflect-metadata';
|
|
2
|
-
/**
|
|
3
|
-
* Metadata keys for decorators
|
|
4
|
-
*/
|
|
5
|
-
export const TOOL_METADATA = Symbol('tool:metadata');
|
|
6
|
-
export const WIDGET_METADATA = Symbol('widget:metadata');
|
|
7
|
-
export const RESOURCE_METADATA = Symbol('resource:metadata');
|
|
8
|
-
export const PROMPT_METADATA = Symbol('prompt:metadata');
|
|
9
|
-
export const GUARDS_METADATA = Symbol('guards:metadata');
|
|
10
|
-
/**
|
|
11
|
-
* Tool decorator - Marks a method as an MCP tool
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
* ```typescript
|
|
15
|
-
* @Tool({
|
|
16
|
-
* name: 'login',
|
|
17
|
-
* description: 'Login with email and password',
|
|
18
|
-
* inputSchema: z.object({
|
|
19
|
-
* email: z.string().email(),
|
|
20
|
-
* password: z.string(),
|
|
21
|
-
* }),
|
|
22
|
-
* })
|
|
23
|
-
* async login(input: LoginInput, context: ExecutionContext) {
|
|
24
|
-
* // Implementation
|
|
25
|
-
* }
|
|
26
|
-
* ```
|
|
27
|
-
*/
|
|
28
|
-
export function Tool(options) {
|
|
29
|
-
return function (target, propertyKey, descriptor) {
|
|
30
|
-
// Get existing tools or create new array
|
|
31
|
-
const existingTools = Reflect.getMetadata(TOOL_METADATA, target.constructor) || [];
|
|
32
|
-
// Add this tool
|
|
33
|
-
existingTools.push({
|
|
34
|
-
methodName: String(propertyKey),
|
|
35
|
-
options,
|
|
36
|
-
});
|
|
37
|
-
// Store metadata on the class constructor
|
|
38
|
-
Reflect.defineMetadata(TOOL_METADATA, existingTools, target.constructor);
|
|
39
|
-
return descriptor;
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Widget decorator - Links a tool to a Next.js widget route
|
|
44
|
-
*
|
|
45
|
-
* @example
|
|
46
|
-
* ```typescript
|
|
47
|
-
* @Tool({ name: 'login', ... })
|
|
48
|
-
* @Widget('login-result')
|
|
49
|
-
* async login(input: LoginInput, context: ExecutionContext) {
|
|
50
|
-
* // Implementation
|
|
51
|
-
* }
|
|
52
|
-
* ```
|
|
53
|
-
*/
|
|
54
|
-
export function Widget(routePath) {
|
|
55
|
-
return function (target, propertyKey, descriptor) {
|
|
56
|
-
// Store widget metadata
|
|
57
|
-
Reflect.defineMetadata(WIDGET_METADATA, routePath, target, String(propertyKey));
|
|
58
|
-
return descriptor;
|
|
59
|
-
};
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Resource decorator - Marks a method as an MCP resource
|
|
63
|
-
*
|
|
64
|
-
* @example
|
|
65
|
-
* ```typescript
|
|
66
|
-
* @Resource({
|
|
67
|
-
* uri: 'db://users/schema',
|
|
68
|
-
* name: 'User Schema',
|
|
69
|
-
* description: 'Database schema for users',
|
|
70
|
-
* })
|
|
71
|
-
* async getUserSchema(context: ExecutionContext) {
|
|
72
|
-
* // Return schema
|
|
73
|
-
* }
|
|
74
|
-
* ```
|
|
75
|
-
*/
|
|
76
|
-
export function Resource(options) {
|
|
77
|
-
return function (target, propertyKey, descriptor) {
|
|
78
|
-
const existingResources = Reflect.getMetadata(RESOURCE_METADATA, target.constructor) || [];
|
|
79
|
-
existingResources.push({
|
|
80
|
-
methodName: String(propertyKey),
|
|
81
|
-
options,
|
|
82
|
-
});
|
|
83
|
-
Reflect.defineMetadata(RESOURCE_METADATA, existingResources, target.constructor);
|
|
84
|
-
return descriptor;
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Prompt decorator - Marks a method as an MCP prompt
|
|
89
|
-
*
|
|
90
|
-
* @example
|
|
91
|
-
* ```typescript
|
|
92
|
-
* @Prompt({
|
|
93
|
-
* name: 'authentication-help',
|
|
94
|
-
* description: 'Help with authentication',
|
|
95
|
-
* })
|
|
96
|
-
* async authHelp(args: PromptArgs, context: ExecutionContext) {
|
|
97
|
-
* // Return prompt messages
|
|
98
|
-
* }
|
|
99
|
-
* ```
|
|
100
|
-
*/
|
|
101
|
-
export function Prompt(options) {
|
|
102
|
-
return function (target, propertyKey, descriptor) {
|
|
103
|
-
const existingPrompts = Reflect.getMetadata(PROMPT_METADATA, target.constructor) || [];
|
|
104
|
-
existingPrompts.push({
|
|
105
|
-
methodName: String(propertyKey),
|
|
106
|
-
options,
|
|
107
|
-
});
|
|
108
|
-
Reflect.defineMetadata(PROMPT_METADATA, existingPrompts, target.constructor);
|
|
109
|
-
return descriptor;
|
|
110
|
-
};
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Extract tool definitions from a decorated class
|
|
114
|
-
*/
|
|
115
|
-
export function extractTools(target) {
|
|
116
|
-
return Reflect.getMetadata(TOOL_METADATA, target) || [];
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
* Extract resource definitions from a decorated class
|
|
120
|
-
*/
|
|
121
|
-
export function extractResources(target) {
|
|
122
|
-
return Reflect.getMetadata(RESOURCE_METADATA, target) || [];
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* Extract prompt definitions from a decorated class
|
|
126
|
-
*/
|
|
127
|
-
export function extractPrompts(target) {
|
|
128
|
-
return Reflect.getMetadata(PROMPT_METADATA, target) || [];
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Get widget metadata for a specific method
|
|
132
|
-
*/
|
|
133
|
-
export function getWidgetMetadata(target, methodName) {
|
|
134
|
-
return Reflect.getMetadata(WIDGET_METADATA, target, methodName);
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Get guards metadata for a specific method
|
|
138
|
-
*/
|
|
139
|
-
export function getGuardsMetadata(target, methodName) {
|
|
140
|
-
return Reflect.getMetadata(GUARDS_METADATA, target, methodName) || [];
|
|
141
|
-
}
|
|
142
|
-
/**
|
|
143
|
-
* Initial tool decorator metadata key
|
|
144
|
-
*/
|
|
145
|
-
export const INITIAL_TOOL_METADATA = Symbol('initial_tool:metadata');
|
|
146
|
-
/**
|
|
147
|
-
* InitialTool decorator - Marks a tool to be automatically called when the client starts
|
|
148
|
-
*
|
|
149
|
-
* @example
|
|
150
|
-
* ```typescript
|
|
151
|
-
* @Tool({ ... })
|
|
152
|
-
* @InitialTool()
|
|
153
|
-
* async init(input: InitInput, context: ExecutionContext) {
|
|
154
|
-
* // Implementation
|
|
155
|
-
* }
|
|
156
|
-
* ```
|
|
157
|
-
*/
|
|
158
|
-
export function InitialTool() {
|
|
159
|
-
return function (target, propertyKey, descriptor) {
|
|
160
|
-
Reflect.defineMetadata(INITIAL_TOOL_METADATA, true, target, String(propertyKey));
|
|
161
|
-
return descriptor;
|
|
162
|
-
};
|
|
163
|
-
}
|
|
164
|
-
/**
|
|
165
|
-
* Get initial tool metadata for a specific method
|
|
166
|
-
*/
|
|
167
|
-
export function getInitialToolMetadata(target, methodName) {
|
|
168
|
-
return Reflect.getMetadata(INITIAL_TOOL_METADATA, target, methodName) === true;
|
|
169
|
-
}
|
|
170
|
-
//# sourceMappingURL=decorators.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/core/decorators.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"container.test.d.ts","sourceRoot":"","sources":["../../../../src/core/di/__tests__/container.test.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,CAAC"}
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
-
};
|
|
10
|
-
import { describe, it, expect, beforeEach } from '@jest/globals';
|
|
11
|
-
import 'reflect-metadata';
|
|
12
|
-
import { DIContainer } from '../container';
|
|
13
|
-
describe('DIContainer', () => {
|
|
14
|
-
let container;
|
|
15
|
-
beforeEach(() => {
|
|
16
|
-
container = DIContainer.getInstance();
|
|
17
|
-
container.clear();
|
|
18
|
-
});
|
|
19
|
-
afterEach(() => {
|
|
20
|
-
container.clear();
|
|
21
|
-
});
|
|
22
|
-
it('should be a singleton', () => {
|
|
23
|
-
const instance1 = DIContainer.getInstance();
|
|
24
|
-
const instance2 = DIContainer.getInstance();
|
|
25
|
-
expect(instance1).toBe(instance2);
|
|
26
|
-
});
|
|
27
|
-
it('should register and resolve a class provider', () => {
|
|
28
|
-
class TestService {
|
|
29
|
-
getValue() { return 'test'; }
|
|
30
|
-
}
|
|
31
|
-
container.register(TestService);
|
|
32
|
-
const instance = container.resolve(TestService);
|
|
33
|
-
expect(instance).toBeInstanceOf(TestService);
|
|
34
|
-
expect(instance.getValue()).toBe('test');
|
|
35
|
-
});
|
|
36
|
-
it('should return the same instance for singleton scope', () => {
|
|
37
|
-
class TestService {
|
|
38
|
-
}
|
|
39
|
-
container.register(TestService);
|
|
40
|
-
const instance1 = container.resolve(TestService);
|
|
41
|
-
const instance2 = container.resolve(TestService);
|
|
42
|
-
expect(instance1).toBe(instance2);
|
|
43
|
-
});
|
|
44
|
-
it('should register and resolve a value provider', () => {
|
|
45
|
-
const token = 'CONFIG';
|
|
46
|
-
const value = { apiKey: '123' };
|
|
47
|
-
container.registerValue(token, value);
|
|
48
|
-
const resolved = container.resolve(token);
|
|
49
|
-
expect(resolved).toBe(value);
|
|
50
|
-
});
|
|
51
|
-
it('should resolve dependencies recursively', () => {
|
|
52
|
-
class DepService {
|
|
53
|
-
getName() { return 'dep'; }
|
|
54
|
-
}
|
|
55
|
-
// We need to simulate metadata decoration or manually register generic class dependency
|
|
56
|
-
// Since we can't easily mock Reflect.metadata in the test without the decorator,
|
|
57
|
-
// we can assume the container works if we verify basic registration.
|
|
58
|
-
// However, for true integration, let's use a mock decorator approach or manual setup.
|
|
59
|
-
// Simulating @Injectable() behavior manually for the test environment
|
|
60
|
-
const Injectable = () => {
|
|
61
|
-
return (target) => { };
|
|
62
|
-
};
|
|
63
|
-
let ParentService = class ParentService {
|
|
64
|
-
dep;
|
|
65
|
-
constructor(dep) {
|
|
66
|
-
this.dep = dep;
|
|
67
|
-
}
|
|
68
|
-
};
|
|
69
|
-
ParentService = __decorate([
|
|
70
|
-
Injectable(),
|
|
71
|
-
__metadata("design:paramtypes", [DepService])
|
|
72
|
-
], ParentService);
|
|
73
|
-
// Polyfill metadata for the test
|
|
74
|
-
Reflect.defineMetadata('design:paramtypes', [DepService], ParentService);
|
|
75
|
-
container.register(DepService);
|
|
76
|
-
container.register(ParentService);
|
|
77
|
-
const parent = container.resolve(ParentService);
|
|
78
|
-
expect(parent).toBeInstanceOf(ParentService);
|
|
79
|
-
expect(parent.dep).toBeInstanceOf(DepService);
|
|
80
|
-
expect(parent.dep.getName()).toBe('dep');
|
|
81
|
-
});
|
|
82
|
-
it('should throw error when resolving unregistered token', () => {
|
|
83
|
-
expect(() => {
|
|
84
|
-
container.resolve('UNREGISTERED');
|
|
85
|
-
}).toThrow(/Cannot resolve token/);
|
|
86
|
-
});
|
|
87
|
-
});
|
|
88
|
-
//# sourceMappingURL=container.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"container.test.js","sourceRoot":"","sources":["../../../../src/core/di/__tests__/container.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import 'reflect-metadata';
|
|
2
|
-
/**
|
|
3
|
-
* Token type for DI registration
|
|
4
|
-
* Can be a class constructor, string, or symbol
|
|
5
|
-
*/
|
|
6
|
-
export type InjectionToken<T = unknown> = (new (...args: any[]) => T) | string | symbol;
|
|
7
|
-
/**
|
|
8
|
-
* Provider type - a class constructor (using any[] for compatibility)
|
|
9
|
-
*/
|
|
10
|
-
type Provider<T = unknown> = new (...args: any[]) => T;
|
|
11
|
-
/**
|
|
12
|
-
* Dependency Injection Container
|
|
13
|
-
*
|
|
14
|
-
* Simple DI container for managing service instances and dependencies.
|
|
15
|
-
* Supports constructor injection and singleton pattern.
|
|
16
|
-
*/
|
|
17
|
-
export declare class DIContainer {
|
|
18
|
-
private static instance;
|
|
19
|
-
private providers;
|
|
20
|
-
private instances;
|
|
21
|
-
private constructor();
|
|
22
|
-
/**
|
|
23
|
-
* Get the singleton container instance
|
|
24
|
-
*/
|
|
25
|
-
static getInstance(): DIContainer;
|
|
26
|
-
/**
|
|
27
|
-
* Register a provider (class)
|
|
28
|
-
* @param token - The token to register (usually the class itself)
|
|
29
|
-
* @param provider - Optional provider class (defaults to token if it's a class)
|
|
30
|
-
*/
|
|
31
|
-
register<T>(token: InjectionToken<T>, provider?: Provider<T>): void;
|
|
32
|
-
/**
|
|
33
|
-
* Register a value directly
|
|
34
|
-
* @param token - The token to register
|
|
35
|
-
* @param value - The value to associate with the token
|
|
36
|
-
*/
|
|
37
|
-
registerValue<T>(token: InjectionToken<T>, value: T): void;
|
|
38
|
-
/**
|
|
39
|
-
* Resolve a dependency (get or create instance)
|
|
40
|
-
* @param token - The token to resolve
|
|
41
|
-
* @returns The resolved instance
|
|
42
|
-
*/
|
|
43
|
-
resolve<T>(token: InjectionToken<T>): T;
|
|
44
|
-
/**
|
|
45
|
-
* Get constructor dependencies from metadata
|
|
46
|
-
*/
|
|
47
|
-
private getDependencies;
|
|
48
|
-
/**
|
|
49
|
-
* Clear all registrations (useful for testing)
|
|
50
|
-
*/
|
|
51
|
-
clear(): void;
|
|
52
|
-
/**
|
|
53
|
-
* Check if a token is registered
|
|
54
|
-
* @param token - The token to check
|
|
55
|
-
*/
|
|
56
|
-
has(token: InjectionToken): boolean;
|
|
57
|
-
}
|
|
58
|
-
export {};
|
|
59
|
-
//# sourceMappingURL=container.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../src/core/di/container.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B;;;GAGG;AAEH,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,OAAO,IAClC,CAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,GAC3B,MAAM,GACN,MAAM,CAAC;AAEX;;GAEG;AAEH,KAAK,QAAQ,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAEvD;;;;;GAKG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAc;IACrC,OAAO,CAAC,SAAS,CAA4C;IAC7D,OAAO,CAAC,SAAS,CAA2C;IAE5D,OAAO;IAEP;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,WAAW;IAOjC;;;;OAIG;IACH,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI;IAInE;;;;OAIG;IACH,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAI1D;;;;OAIG;IACH,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC;IA8BvC;;OAEG;IACH,OAAO,CAAC,eAAe;IAavB;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;;OAGG;IACH,GAAG,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO;CAGpC"}
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import 'reflect-metadata';
|
|
2
|
-
/**
|
|
3
|
-
* Dependency Injection Container
|
|
4
|
-
*
|
|
5
|
-
* Simple DI container for managing service instances and dependencies.
|
|
6
|
-
* Supports constructor injection and singleton pattern.
|
|
7
|
-
*/
|
|
8
|
-
export class DIContainer {
|
|
9
|
-
static instance;
|
|
10
|
-
providers = new Map();
|
|
11
|
-
instances = new Map();
|
|
12
|
-
constructor() { }
|
|
13
|
-
/**
|
|
14
|
-
* Get the singleton container instance
|
|
15
|
-
*/
|
|
16
|
-
static getInstance() {
|
|
17
|
-
if (!DIContainer.instance) {
|
|
18
|
-
DIContainer.instance = new DIContainer();
|
|
19
|
-
}
|
|
20
|
-
return DIContainer.instance;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Register a provider (class)
|
|
24
|
-
* @param token - The token to register (usually the class itself)
|
|
25
|
-
* @param provider - Optional provider class (defaults to token if it's a class)
|
|
26
|
-
*/
|
|
27
|
-
register(token, provider) {
|
|
28
|
-
this.providers.set(token, (provider || token));
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Register a value directly
|
|
32
|
-
* @param token - The token to register
|
|
33
|
-
* @param value - The value to associate with the token
|
|
34
|
-
*/
|
|
35
|
-
registerValue(token, value) {
|
|
36
|
-
this.instances.set(token, value);
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Resolve a dependency (get or create instance)
|
|
40
|
-
* @param token - The token to resolve
|
|
41
|
-
* @returns The resolved instance
|
|
42
|
-
*/
|
|
43
|
-
resolve(token) {
|
|
44
|
-
// Check if already instantiated
|
|
45
|
-
if (this.instances.has(token)) {
|
|
46
|
-
return this.instances.get(token);
|
|
47
|
-
}
|
|
48
|
-
// Get the provider
|
|
49
|
-
const provider = this.providers.get(token) || token;
|
|
50
|
-
// If provider is not a constructor function, throw error
|
|
51
|
-
if (typeof provider !== 'function') {
|
|
52
|
-
throw new Error(`Cannot resolve token "${String(token)}". No value or provider registered.`);
|
|
53
|
-
}
|
|
54
|
-
// Get constructor dependencies
|
|
55
|
-
const dependencies = this.getDependencies(provider);
|
|
56
|
-
// Resolve dependencies recursively
|
|
57
|
-
const resolvedDependencies = dependencies.map((dep) => this.resolve(dep));
|
|
58
|
-
// Create instance
|
|
59
|
-
const ProviderClass = provider;
|
|
60
|
-
const instance = new ProviderClass(...resolvedDependencies);
|
|
61
|
-
// Cache instance
|
|
62
|
-
this.instances.set(token, instance);
|
|
63
|
-
return instance;
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* Get constructor dependencies from metadata
|
|
67
|
-
*/
|
|
68
|
-
getDependencies(target) {
|
|
69
|
-
// Get design:paramtypes metadata set by TypeScript
|
|
70
|
-
const params = Reflect.getMetadata('design:paramtypes', target) || [];
|
|
71
|
-
// Check for @Inject tokens which override the types
|
|
72
|
-
const injectTokens = Reflect.getMetadata('nitrostack:inject', target) || [];
|
|
73
|
-
// Merge: use inject tokens where specified, otherwise use the param type
|
|
74
|
-
return params.map((param, index) => {
|
|
75
|
-
return injectTokens[index] || param;
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* Clear all registrations (useful for testing)
|
|
80
|
-
*/
|
|
81
|
-
clear() {
|
|
82
|
-
this.providers.clear();
|
|
83
|
-
this.instances.clear();
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* Check if a token is registered
|
|
87
|
-
* @param token - The token to check
|
|
88
|
-
*/
|
|
89
|
-
has(token) {
|
|
90
|
-
return this.providers.has(token) || this.instances.has(token);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
//# sourceMappingURL=container.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"container.js","sourceRoot":"","sources":["../../../src/core/di/container.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import 'reflect-metadata';
|
|
2
|
-
import { InjectionToken } from './container.js';
|
|
3
|
-
import type { ClassConstructor } from '../types.js';
|
|
4
|
-
/**
|
|
5
|
-
* Marks a class as injectable (can be used with DI)
|
|
6
|
-
*
|
|
7
|
-
* @example
|
|
8
|
-
* ```typescript
|
|
9
|
-
* @Injectable()
|
|
10
|
-
* export class UserService {
|
|
11
|
-
* constructor(private db: DatabaseService) {}
|
|
12
|
-
*
|
|
13
|
-
* async findUser(id: string) {
|
|
14
|
-
* return this.db.query('SELECT * FROM users WHERE id = ?', [id]);
|
|
15
|
-
* }
|
|
16
|
-
* }
|
|
17
|
-
* ```
|
|
18
|
-
*/
|
|
19
|
-
export declare function Injectable(): ClassDecorator;
|
|
20
|
-
/**
|
|
21
|
-
* Inject a specific token (optional - for custom injection)
|
|
22
|
-
*
|
|
23
|
-
* @example
|
|
24
|
-
* ```typescript
|
|
25
|
-
* constructor(@Inject('DATABASE_CONFIG') private config: DatabaseConfig) {}
|
|
26
|
-
* ```
|
|
27
|
-
*/
|
|
28
|
-
export declare function Inject(token: InjectionToken): ParameterDecorator;
|
|
29
|
-
/**
|
|
30
|
-
* Check if a class is injectable
|
|
31
|
-
*/
|
|
32
|
-
export declare function isInjectable(target: ClassConstructor): boolean;
|
|
33
|
-
/**
|
|
34
|
-
* Get inject tokens for constructor parameters
|
|
35
|
-
*/
|
|
36
|
-
export declare function getInjectTokens(target: ClassConstructor): InjectionToken[];
|
|
37
|
-
//# sourceMappingURL=injectable.decorator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"injectable.decorator.d.ts","sourceRoot":"","sources":["../../../src/core/di/injectable.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAe,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAKpD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,UAAU,IAAI,cAAc,CAU3C;AAED;;;;;;;GAOG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,cAAc,GAAG,kBAAkB,CAMhE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAE9D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,gBAAgB,GAAG,cAAc,EAAE,CAE1E"}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import 'reflect-metadata';
|
|
2
|
-
import { DIContainer } from './container.js';
|
|
3
|
-
const INJECTABLE_KEY = 'nitrostack:injectable';
|
|
4
|
-
const INJECT_KEY = 'nitrostack:inject';
|
|
5
|
-
/**
|
|
6
|
-
* Marks a class as injectable (can be used with DI)
|
|
7
|
-
*
|
|
8
|
-
* @example
|
|
9
|
-
* ```typescript
|
|
10
|
-
* @Injectable()
|
|
11
|
-
* export class UserService {
|
|
12
|
-
* constructor(private db: DatabaseService) {}
|
|
13
|
-
*
|
|
14
|
-
* async findUser(id: string) {
|
|
15
|
-
* return this.db.query('SELECT * FROM users WHERE id = ?', [id]);
|
|
16
|
-
* }
|
|
17
|
-
* }
|
|
18
|
-
* ```
|
|
19
|
-
*/
|
|
20
|
-
export function Injectable() {
|
|
21
|
-
return (target) => {
|
|
22
|
-
Reflect.defineMetadata(INJECTABLE_KEY, true, target);
|
|
23
|
-
// Auto-register in DI container
|
|
24
|
-
const container = DIContainer.getInstance();
|
|
25
|
-
if (!container.has(target)) {
|
|
26
|
-
container.register(target);
|
|
27
|
-
}
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Inject a specific token (optional - for custom injection)
|
|
32
|
-
*
|
|
33
|
-
* @example
|
|
34
|
-
* ```typescript
|
|
35
|
-
* constructor(@Inject('DATABASE_CONFIG') private config: DatabaseConfig) {}
|
|
36
|
-
* ```
|
|
37
|
-
*/
|
|
38
|
-
export function Inject(token) {
|
|
39
|
-
return (target, propertyKey, parameterIndex) => {
|
|
40
|
-
const existingTokens = Reflect.getMetadata(INJECT_KEY, target) || [];
|
|
41
|
-
existingTokens[parameterIndex] = token;
|
|
42
|
-
Reflect.defineMetadata(INJECT_KEY, existingTokens, target);
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Check if a class is injectable
|
|
47
|
-
*/
|
|
48
|
-
export function isInjectable(target) {
|
|
49
|
-
return Reflect.getMetadata(INJECTABLE_KEY, target) === true;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Get inject tokens for constructor parameters
|
|
53
|
-
*/
|
|
54
|
-
export function getInjectTokens(target) {
|
|
55
|
-
return Reflect.getMetadata(INJECT_KEY, target) || [];
|
|
56
|
-
}
|
|
57
|
-
//# sourceMappingURL=injectable.decorator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"injectable.decorator.js","sourceRoot":"","sources":["../../../src/core/di/injectable.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAkB,MAAM,gBAAgB,CAAC;AAG7D,MAAM,cAAc,GAAG,uBAAuB,CAAC;AAC/C,MAAM,UAAU,GAAG,mBAAmB,CAAC;AAEvC;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,UAAU;IACxB,OAAO,CAAC,MAAc,EAAE,EAAE;QACxB,OAAO,CAAC,cAAc,CAAC,cAAc,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAErD,gCAAgC;QAChC,MAAM,SAAS,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAA0B,CAAC,EAAE,CAAC;YAC/C,SAAS,CAAC,QAAQ,CAAC,MAA0B,CAAC,CAAC;QACjD,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,MAAM,CAAC,KAAqB;IAC1C,OAAO,CAAC,MAAc,EAAE,WAAwC,EAAE,cAAsB,EAAE,EAAE;QAC1F,MAAM,cAAc,GAAqB,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QACvF,cAAc,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC;QACvC,OAAO,CAAC,cAAc,CAAC,UAAU,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;IAC7D,CAAC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,MAAwB;IACnD,OAAO,OAAO,CAAC,WAAW,CAAC,cAAc,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;AAC9D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,MAAwB;IACtD,OAAO,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;AACvD,CAAC"}
|
package/dist/core/errors.d.ts
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Base error class for MCP server errors
|
|
3
|
-
*/
|
|
4
|
-
export declare class McpError extends Error {
|
|
5
|
-
code: string;
|
|
6
|
-
statusCode: number;
|
|
7
|
-
details?: unknown | undefined;
|
|
8
|
-
constructor(message: string, code: string, statusCode?: number, details?: unknown | undefined);
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Validation error
|
|
12
|
-
*/
|
|
13
|
-
export declare class ValidationError extends McpError {
|
|
14
|
-
constructor(message: string, details?: unknown);
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Tool not found error
|
|
18
|
-
*/
|
|
19
|
-
export declare class ToolNotFoundError extends McpError {
|
|
20
|
-
constructor(toolName: string);
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Resource not found error
|
|
24
|
-
*/
|
|
25
|
-
export declare class ResourceNotFoundError extends McpError {
|
|
26
|
-
constructor(uri: string);
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Prompt not found error
|
|
30
|
-
*/
|
|
31
|
-
export declare class PromptNotFoundError extends McpError {
|
|
32
|
-
constructor(promptName: string);
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Rate limit error
|
|
36
|
-
*/
|
|
37
|
-
export declare class RateLimitError extends McpError {
|
|
38
|
-
constructor(message?: string);
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Tool execution error
|
|
42
|
-
*/
|
|
43
|
-
export declare class ToolExecutionError extends McpError {
|
|
44
|
-
constructor(toolName: string, originalError: Error);
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Format error for response
|
|
48
|
-
*/
|
|
49
|
-
export declare function formatError(error: Error): {
|
|
50
|
-
code: string;
|
|
51
|
-
message: string;
|
|
52
|
-
details?: unknown;
|
|
53
|
-
};
|
|
54
|
-
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,QAAS,SAAQ,KAAK;IAGxB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,MAAM;IAClB,OAAO,CAAC,EAAE,OAAO;gBAHxB,OAAO,EAAE,MAAM,EACR,IAAI,EAAE,MAAM,EACZ,UAAU,GAAE,MAAY,EACxB,OAAO,CAAC,EAAE,OAAO,YAAA;CAM3B;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,QAAQ;gBAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO;CAI/C;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,QAAQ;gBACjC,QAAQ,EAAE,MAAM;CAI7B;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,QAAQ;gBACrC,GAAG,EAAE,MAAM;CAIxB;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,QAAQ;gBACnC,UAAU,EAAE,MAAM;CAI/B;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,QAAQ;gBAC9B,OAAO,GAAE,MAA8B;CAIpD;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,QAAQ;gBAClC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK;CASnD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAaA"}
|