stratal 0.0.2 → 0.0.5
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/CHANGELOG.md +121 -0
- package/dist/application.d.ts +6 -0
- package/dist/application.d.ts.map +1 -1
- package/dist/application.js +27 -2
- package/dist/application.js.map +1 -1
- package/dist/di/container.d.ts +2 -4
- package/dist/di/container.d.ts.map +1 -1
- package/dist/di/container.js +4 -14
- package/dist/di/container.js.map +1 -1
- package/dist/di/decorators/inject-param.decorator.d.ts.map +1 -1
- package/dist/di/decorators/inject-param.decorator.js +1 -1
- package/dist/di/decorators/inject-param.decorator.js.map +1 -1
- package/dist/di/tokens.d.ts +0 -1
- package/dist/di/tokens.d.ts.map +1 -1
- package/dist/di/tokens.js +0 -1
- package/dist/di/tokens.js.map +1 -1
- package/dist/errors/application-error.d.ts +6 -0
- package/dist/errors/application-error.d.ts.map +1 -1
- package/dist/errors/application-error.js +8 -1
- package/dist/errors/application-error.js.map +1 -1
- package/dist/errors/global-error-handler.d.ts.map +1 -1
- package/dist/errors/global-error-handler.js +4 -6
- package/dist/errors/global-error-handler.js.map +1 -1
- package/dist/events/constants.d.ts +11 -0
- package/dist/events/constants.d.ts.map +1 -0
- package/dist/events/constants.js +11 -0
- package/dist/events/constants.js.map +1 -0
- package/dist/events/decorators/index.d.ts +3 -0
- package/dist/events/decorators/index.d.ts.map +1 -0
- package/dist/events/decorators/index.js +3 -0
- package/dist/events/decorators/index.js.map +1 -0
- package/dist/events/decorators/listener.decorator.d.ts +24 -0
- package/dist/events/decorators/listener.decorator.d.ts.map +1 -0
- package/dist/events/decorators/listener.decorator.js +33 -0
- package/dist/events/decorators/listener.decorator.js.map +1 -0
- package/dist/events/decorators/on.decorator.d.ts +28 -0
- package/dist/events/decorators/on.decorator.d.ts.map +1 -0
- package/dist/events/decorators/on.decorator.js +41 -0
- package/dist/events/decorators/on.decorator.js.map +1 -0
- package/dist/events/event-registry.d.ts +26 -0
- package/dist/events/event-registry.d.ts.map +1 -0
- package/dist/events/event-registry.js +156 -0
- package/dist/events/event-registry.js.map +1 -0
- package/dist/events/index.d.ts +5 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +4 -0
- package/dist/events/index.js.map +1 -0
- package/dist/events/types.d.ts +116 -0
- package/dist/events/types.d.ts.map +1 -0
- package/dist/events/types.js +23 -0
- package/dist/events/types.js.map +1 -0
- package/dist/guards/types.d.ts.map +1 -1
- package/dist/guards/types.js +1 -1
- package/dist/guards/types.js.map +1 -1
- package/dist/i18n/messages/en/errors.d.ts +2 -0
- package/dist/i18n/messages/en/errors.d.ts.map +1 -1
- package/dist/i18n/messages/en/errors.js +2 -0
- package/dist/i18n/messages/en/errors.js.map +1 -1
- package/dist/i18n/services/i18n.service.d.ts +1 -13
- package/dist/i18n/services/i18n.service.d.ts.map +1 -1
- package/dist/i18n/services/i18n.service.js +3 -39
- package/dist/i18n/services/i18n.service.js.map +1 -1
- package/dist/i18n/services/message-loader.service.d.ts +18 -0
- package/dist/i18n/services/message-loader.service.d.ts.map +1 -1
- package/dist/i18n/services/message-loader.service.js +56 -2
- package/dist/i18n/services/message-loader.service.js.map +1 -1
- package/dist/module/module-registry.d.ts +9 -0
- package/dist/module/module-registry.d.ts.map +1 -1
- package/dist/module/module-registry.js +21 -0
- package/dist/module/module-registry.js.map +1 -1
- package/dist/module/module.decorator.d.ts.map +1 -1
- package/dist/module/module.decorator.js +1 -1
- package/dist/module/module.decorator.js.map +1 -1
- package/dist/router/constants.js +6 -6
- package/dist/router/constants.js.map +1 -1
- package/package.json +10 -9
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
# stratal
|
|
2
|
+
|
|
3
|
+
## 0.0.5
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#66](https://github.com/strataljs/stratal/pull/66) [`c8ea964`](https://github.com/strataljs/stratal/commit/c8ea964e272b09ebc6619843e77d2b51178f9423) Thanks [@adesege](https://github.com/adesege)! - Add type-safe events system with `@Listener` and `@On` decorators, `EventRegistry` for handler registration and emission, and automatic listener discovery from module providers during application bootstrap. Enhanced DI container with service decoration support.
|
|
8
|
+
|
|
9
|
+
## 0.0.4
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- **Lazy i18n context building** — `MessageLoaderService` now lazily builds and caches `CoreContext` per locale on first access instead of eagerly at startup, reducing initialization overhead.
|
|
14
|
+
- **Pre-build i18n contexts at startup** — Moved `CoreContext` creation and message flattening from per-request `I18nService` to the singleton `MessageLoaderService`, eliminating repeated work on every `t()` call.
|
|
15
|
+
- **Skip stack traces in production** — Added a static flag on `ApplicationError` to disable stack trace capture in production, where traces are stripped from responses anyway.
|
|
16
|
+
|
|
17
|
+
- **Cross-realm metadata keys** — Migrated all internal metadata symbols from `Symbol()` to `Symbol.for()` with a `stratal:` prefix for reliable cross-realm identity in Cloudflare Workers.
|
|
18
|
+
- **Benchmark configuration** — Added a benchmark section to the Vitest config and updated Wrangler compatibility flags for Node.js modules.
|
|
19
|
+
- **i18n integration tests** — Added localization integratnning in the workerd pool.
|
|
20
|
+
|
|
21
|
+
- **Consistent zod imports** — Updated zod imports across benchmark files to use the i18n validation module.
|
|
22
|
+
- **Cleaner error handling** — `GlobalErrorHandler` now passes the translated message directly to the logger, avoiding double-translation.
|
|
23
|
+
|
|
24
|
+
## 0.0.3
|
|
25
|
+
|
|
26
|
+
### Patch Changes
|
|
27
|
+
|
|
28
|
+
- - **Lazy i18n context building** — `MessageLoaderService` now lazily builds and caches `CoreContext` per locale on first access instead of eagerly at startup, reducing initialization overhead.
|
|
29
|
+
- **Pre-build i18n contexts at startup** — Moved `CoreContext` creation and message flattening from per-request `I18nService` to the singleton `MessageLoaderService`, eliminating repeated work on every `t()` call.
|
|
30
|
+
- **Skip stack traces in production** — Added a static flag on `ApplicationError` to disable stack trace capture in production, where traces are stripped from responses anyway.
|
|
31
|
+
|
|
32
|
+
- **Cross-realm metadata keys** — Migrated all internal metadata symbols from `Symbol()` to `Symbol.for()` with a `stratal:` prefix for reliable cross-realm identity in Cloudflare Workers.
|
|
33
|
+
- **Benchmark configuration** — Added a benchmark section to the Vitest config and updated Wrangler compatibility flags for Node.js modules.
|
|
34
|
+
- **i18n integration tests** — Added localization integratnning in the workerd pool.
|
|
35
|
+
|
|
36
|
+
- **Consistent zod imports** — Updated zod imports across benchmark files to use the i18n validation module.
|
|
37
|
+
- **Cleaner error handling** — `GlobalErrorHandler` now passes the translated message directly to the logger, avoiding double-translation.
|
|
38
|
+
|
|
39
|
+
## 0.0.2
|
|
40
|
+
|
|
41
|
+
### Patch Changes
|
|
42
|
+
|
|
43
|
+
#### `stratal` (core)
|
|
44
|
+
|
|
45
|
+
##### Breaking Changes
|
|
46
|
+
|
|
47
|
+
- **`withRoot`/`withRootAsync` renamed to `forRoot`/`forRootAsync`** — All dynamic module configuration methods have been renamed for consistency. Update every `SomeModule.withRoot(...)` call to `SomeModule.forRoot(...)` and `SomeModule.withRootAsync(...)` to `SomeModule.forRootAsync(...)`. ([`152913a`](https://github.com/strataljs/stratal/commit/152913a))
|
|
48
|
+
|
|
49
|
+
- **Barrel export removed — use sub-path imports** — The top-level `stratal` barrel export has been removed. Consumers must now import from sub-paths (`stratal/di`, `stratal/router`, `stratal/cache`, `stratal/validation`, etc.). ([`af073d8`](https://github.com/strataljs/stratal/commit/af073d8))
|
|
50
|
+
|
|
51
|
+
##### Features
|
|
52
|
+
|
|
53
|
+
- **DOM polyfill for Cloudflare Workers** — Added a DOM polyfill to support AWS SDK v3 XML parsing in Cloudflare Workers environments. ([`f3b2cb9`](https://github.com/strataljs/stratal/commit/f3b2cb9))
|
|
54
|
+
|
|
55
|
+
- **Benchmark suite** — Added benchmark functionality for measuring framework performa30438`](https://github.com/strataljs/stratal/commit/7230438))
|
|
56
|
+
|
|
57
|
+
##### Security
|
|
58
|
+
|
|
59
|
+
- **ConfigService blocks prototype pollution** — `ConfigService` now rejects dangerous keys (`__proto__`, `constructor`, `prototype`) to prevent prototype pollution attacks. ([`567139c`](https://github.com/strataljs/stratal/commit/567139c), [`e64b4e7`](https://github.com/strataljs/stratal/commit/e64b4e7))
|
|
60
|
+
|
|
61
|
+
##### Bug Fixes
|
|
62
|
+
|
|
63
|
+
- **`reflect-metadata` import moved to vitest setup** — Removed unused `reflect-metadata` imports from example files and centralized the import in `vitest.setup.ts`. ([`f3b2cb9`](https://github.com/strataljs/stratal/commit/f3b2cb9))
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
#### `@stratal/testing`
|
|
68
|
+
|
|
69
|
+
##### Breaking Changes
|
|
70
|
+
|
|
71
|
+
- **Import paths updated** — Import paths updated to match the new core sub-path exports (e.g. `stratal/di` instead of the barrel `stratal`). ([`af073d8`](https://github.com/strataljs/stratal/commit/af073d8))
|
|
72
|
+
|
|
73
|
+
- Updated dependencies []:
|
|
74
|
+
- stratal@0.0.2
|
|
75
|
+
|
|
76
|
+
## 0.0.1
|
|
77
|
+
|
|
78
|
+
### Patch Changes
|
|
79
|
+
|
|
80
|
+
- Initial release of the Stratal framework — a modular Cloudflare Workers framework built on Hono and tsyringe.
|
|
81
|
+
|
|
82
|
+
**Core Infrastructure**
|
|
83
|
+
|
|
84
|
+
- NestJS-style module system with `@Module()` decorator, dynamic modules (`withRoot`, `withRootAsync`), and lifecycle hooks (`OnInitialize`, `OnShutdown`)
|
|
85
|
+
- Two-tier dependency injection container (global singletons + request-scoped) powered by tsyringe with conditional registration and service decoration
|
|
86
|
+
- `StratalWorker` entry point extending Cloudflare's `WorkerEntrypoint` for HTTP fetch, queue batches, and scheduled cron triggers
|
|
87
|
+
|
|
88
|
+
**Routing & API**
|
|
89
|
+
|
|
90
|
+
- Hono-based routing with `@Controller()` and `@Route()` decorators, automatic controller discovery, and route guards via `@UseGuards()`
|
|
91
|
+
- OpenAPI schema generation with `@hono/zod-openapi` and Scalar API reference integration
|
|
92
|
+
- NestJS-like middleware configuration with route-specific application and exclusion
|
|
93
|
+
|
|
94
|
+
**Background Processing**
|
|
95
|
+
|
|
96
|
+
- Queue consumerfor Cloudflare Queues with `@Consumer()` and `@QueueJob()` decorators and batch processing
|
|
97
|
+
- Cron job scheduling via `CronManager` integrated with Cloudflare's scheduled events
|
|
98
|
+
|
|
99
|
+
**Services & Integrations**
|
|
100
|
+
|
|
101
|
+
- Email module with pluggable providers (Nodemailer, Resend) and queue-based sending
|
|
102
|
+
- Storage module with AWS S3 / Cloudflare R2 support, multipart uploads, presigned URLs, and TUS resumable uploads
|
|
103
|
+
- Internationalization (i18n) module with locale detection, message compilation, and request-scoped translations
|
|
104
|
+
- Cache module with pluggable providers and Cloudflare KV integration
|
|
105
|
+
- Configuration module with `registerAs()` namespaces and Zod-based validation
|
|
106
|
+
- Structured logging with JSON and pretty formatters
|
|
107
|
+
|
|
108
|
+
**Developer Experience**
|
|
109
|
+
|
|
110
|
+
- Zod-powered request/response validation with type inference
|
|
111
|
+
- Custom `ApplicationError` class with HTTP status mapping
|
|
112
|
+
- ESM-only with full TypeScript decorator support (`emitDecoratorMetadata`)
|
|
113
|
+
- Sub-path exports for tree-shakeable imports (`stratal/di`, `stratal/router`, `stratal/cache`, etc.)
|
|
114
|
+
|
|
115
|
+
- `TestingModule` and `TestingModuleBuilder` for bootstrapping isolated module environments in tests
|
|
116
|
+
- `TestHttpClient` with request builder and response wrapper for integration testing
|
|
117
|
+
- `FetchMock` for mocking HTTP fetch calls
|
|
118
|
+
- `FakeStorageService` for in-memory storage testing without S3/R2
|
|
119
|
+
- `ProviderOverrideBuilder` for replacing providers with test doubles
|
|
120
|
+
- Nodemailer mock for email testing
|
|
121
|
+
- Test environment utilities via `getTestEnv()`
|
package/dist/application.d.ts
CHANGED
|
@@ -100,6 +100,12 @@ export declare class Application {
|
|
|
100
100
|
private registerRoutes;
|
|
101
101
|
private registerQueueConsumers;
|
|
102
102
|
private registerCronJobs;
|
|
103
|
+
/**
|
|
104
|
+
* Auto-wire `@Listener()` classes with the EventRegistry.
|
|
105
|
+
*
|
|
106
|
+
* Reads `@On()` metadata from each listener and registers handlers.
|
|
107
|
+
*/
|
|
108
|
+
private registerEventListeners;
|
|
103
109
|
/**
|
|
104
110
|
* Register LoggerService and dependencies
|
|
105
111
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,OAAO,CAAA;AAKvC,OAAO,EAAiE,QAAQ,EAAmB,MAAM,UAAU,CAAA;AAEnH,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAMhE,OAAO,EAAkD,KAAK,aAAa,EAAE,MAAM,UAAU,CAAA;AAG7F,MAAM,WAAW,iBAAiB;IAChC,8BAA8B;IAC9B,MAAM,EAAE,WAAW,GAAG,aAAa,CAAA;IACnC,oEAAoE;IACpE,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,QAAQ,CAAA;QAChB,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;KAC9B,CAAA;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,qBAAa,WAAW;IAapB,QAAQ,CAAC,GAAG,EAAE,UAAU;IACxB,QAAQ,CAAC,GAAG,EAAE,gBAAgB;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAd5B;;;OAGG;IACH,OAAO,CAAC,UAAU,CAAW;IAE7B,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,WAAW,CAAQ;gBAGhB,GAAG,EAAE,UAAU,EACf,GAAG,EAAE,gBAAgB,EACb,SAAS,EAAE,iBAAiB;IAwB/C;;;;;;;OAOG;IACH,IAAI,SAAS,IAAI,SAAS,CAEzB;IAEK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAsCjC;;;;;OAKG;IACH,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC;IAU5B;;;;;OAKG;IACG,WAAW,CAAC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBxE;;OAEG;IACG,eAAe,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAerE;;;;;;;OAOG;IACH,uBAAuB,CAAC,MAAM,SAAO,GAAG,aAAa;IAQ/C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAK/B,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,gBAAgB;IAOxB;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAkB9B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;CAU7B"}
|
package/dist/application.js
CHANGED
|
@@ -3,7 +3,8 @@ import { CacheModule } from './cache';
|
|
|
3
3
|
import { CronManager } from './cron/cron-manager';
|
|
4
4
|
import { Container } from './di/container';
|
|
5
5
|
import { DI_TOKENS } from './di/tokens';
|
|
6
|
-
import { GlobalErrorHandler } from './errors';
|
|
6
|
+
import { ApplicationError, GlobalErrorHandler } from './errors';
|
|
7
|
+
import { EventRegistry, getListenerHandlers } from './events';
|
|
7
8
|
import { I18nModule } from './i18n/i18n.module';
|
|
8
9
|
import { ConsoleTransport, JsonFormatter, LOGGER_TOKENS, LoggerService, LogLevel, PrettyFormatter } from './logger';
|
|
9
10
|
import { ModuleRegistry } from './module/module-registry';
|
|
@@ -92,6 +93,8 @@ export class Application {
|
|
|
92
93
|
if (this.initialized) {
|
|
93
94
|
return;
|
|
94
95
|
}
|
|
96
|
+
// Disable stack trace capture in production (expensive and stripped from responses)
|
|
97
|
+
ApplicationError.captureStackTraces = this.env.ENVIRONMENT !== 'production';
|
|
95
98
|
// Phase 1: Register core infrastructure modules (internal)
|
|
96
99
|
this.moduleRegistry.registerAll([
|
|
97
100
|
I18nModule,
|
|
@@ -108,10 +111,11 @@ export class Application {
|
|
|
108
111
|
this.cronManager = this._container.resolve(DI_TOKENS.Cron);
|
|
109
112
|
// Phase 5: Register RouterService
|
|
110
113
|
this._container.registerSingleton(ROUTER_TOKENS.RouterService, RouterService);
|
|
111
|
-
// Phase 6: Configure routes, queues, and
|
|
114
|
+
// Phase 6: Configure routes, queues, cron jobs, and event listeners
|
|
112
115
|
this.registerRoutes();
|
|
113
116
|
this.registerQueueConsumers();
|
|
114
117
|
this.registerCronJobs();
|
|
118
|
+
this.registerEventListeners();
|
|
115
119
|
this.initialized = true;
|
|
116
120
|
}
|
|
117
121
|
/**
|
|
@@ -209,6 +213,25 @@ export class Application {
|
|
|
209
213
|
this.cronManager.registerJob(job);
|
|
210
214
|
}
|
|
211
215
|
}
|
|
216
|
+
/**
|
|
217
|
+
* Auto-wire `@Listener()` classes with the EventRegistry.
|
|
218
|
+
*
|
|
219
|
+
* Reads `@On()` metadata from each listener and registers handlers.
|
|
220
|
+
*/
|
|
221
|
+
registerEventListeners() {
|
|
222
|
+
const listeners = this.moduleRegistry.getAllListeners();
|
|
223
|
+
if (listeners.length === 0) {
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
226
|
+
const eventRegistry = this._container.resolve(DI_TOKENS.EventRegistry);
|
|
227
|
+
for (const ListenerClass of listeners) {
|
|
228
|
+
const instance = this._container.resolve(ListenerClass);
|
|
229
|
+
const handlers = getListenerHandlers(ListenerClass);
|
|
230
|
+
for (const { methodName, event, options } of handlers) {
|
|
231
|
+
eventRegistry.on(event, instance[methodName].bind(instance), options);
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
}
|
|
212
235
|
/**
|
|
213
236
|
* Register LoggerService and dependencies
|
|
214
237
|
*/
|
|
@@ -241,6 +264,8 @@ export class Application {
|
|
|
241
264
|
this._container.registerSingleton(DI_TOKENS.Cron, CronManager);
|
|
242
265
|
// Error handler - transient (fresh instance each time with current I18n)
|
|
243
266
|
this._container.register(DI_TOKENS.ErrorHandler, GlobalErrorHandler);
|
|
267
|
+
// Event registry - singleton
|
|
268
|
+
this._container.registerSingleton(DI_TOKENS.EventRegistry, EventRegistry);
|
|
244
269
|
}
|
|
245
270
|
}
|
|
246
271
|
//# sourceMappingURL=application.js.map
|
package/dist/application.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAErC,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"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"}
|
package/dist/di/container.d.ts
CHANGED
|
@@ -382,10 +382,8 @@ export declare class Container {
|
|
|
382
382
|
*/
|
|
383
383
|
private createRequestChildContainer;
|
|
384
384
|
/**
|
|
385
|
-
* Cleanup request container
|
|
386
|
-
*
|
|
387
|
-
* Disposes the ConnectionManager to close all database pools.
|
|
388
|
-
* This is called after each request to prevent connection leaks.
|
|
385
|
+
* Cleanup request container resources.
|
|
386
|
+
* This is called after each request.
|
|
389
387
|
*/
|
|
390
388
|
private cleanupRequestContainer;
|
|
391
389
|
dispose(): void | Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../src/di/container.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../src/di/container.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,KAAK,mBAAmB,EAAkB,MAAM,UAAU,CAAA;AACnE,OAAO,KAAK,cAAc,MAAM,iDAAiD,CAAA;AACjF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,QAAQ,CAAA;AAExC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAA;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,EAAiC,KAAK,yBAAyB,EAAE,KAAK,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAItI,OAAO,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAErE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,sCAAsC;IACtC,GAAG,EAAE,UAAU,CAAA;IACf,mCAAmC;IACnC,GAAG,EAAE,gBAAgB,CAAA;IACrB,sCAAsC;IACtC,SAAS,EAAE,mBAAmB,CAAA;IAC9B,iDAAiD;IACjD,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqB;IAC/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqB;IAClD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAY;IAChC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAkB;IACtC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;gBAE7B,OAAO,EAAE,gBAAgB;IAerC,IAAI,MAAM,kBAET;IAOD;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI;IAC7E,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI;IA6BvG;;;;;;;;;;;;;OAaG;IACH,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI;IACvE,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI;IAajG;;;;;;;;;;;;;OAaG;IACH,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAI1D;;;;;;;;;;;;;;;;;OAiBG;IACH,eAAe,CAAC,CAAC,EACf,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EACxB,OAAO,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,CAAC,GACnC,IAAI;IAIP;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,gBAAgB,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,IAAI;IAQ9E;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC;IAIvC;;;;;OAKG;IACH,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,OAAO;IAQlD;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,IAAI,CACF,SAAS,EAAE,CAAC,SAAS,EAAE,kBAAkB,KAAK,OAAO,EACrD,OAAO,GAAE,WAAgB,GACxB,yBAAyB;IAS5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI;IAe3E;;;;OAIG;IACH,kBAAkB,IAAI,OAAO;IAI7B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,iBAAiB,CAAC,CAAC,EACvB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAC7B,OAAO,CAAC,CAAC,CAAC;IAeb;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,kBAAkB,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS;IAe3D;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,mBAAmB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAgBxE;;;;;;OAMG;IACH,oBAAoB,IAAI,mBAAmB;IAI3C;;;;OAIG;IACH,mBAAmB,IAAI,mBAAmB,GAAG,SAAS;IAQtD;;;;;;OAMG;IACH,OAAO,CAAC,2BAA2B;IAWnC;;;OAGG;YACW,uBAAuB;IAIrC,OAAO;CAIR;AAGD,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AACnE,YAAY,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA"}
|
package/dist/di/container.js
CHANGED
|
@@ -436,21 +436,11 @@ export class Container {
|
|
|
436
436
|
return requestContainer;
|
|
437
437
|
}
|
|
438
438
|
/**
|
|
439
|
-
* Cleanup request container
|
|
440
|
-
*
|
|
441
|
-
* Disposes the ConnectionManager to close all database pools.
|
|
442
|
-
* This is called after each request to prevent connection leaks.
|
|
439
|
+
* Cleanup request container resources.
|
|
440
|
+
* This is called after each request.
|
|
443
441
|
*/
|
|
444
|
-
async cleanupRequestContainer(
|
|
445
|
-
|
|
446
|
-
if (requestContainer.isRegistered(DI_TOKENS.ConnectionManager)) {
|
|
447
|
-
const connectionManager = requestContainer.resolve(DI_TOKENS.ConnectionManager);
|
|
448
|
-
await connectionManager.dispose();
|
|
449
|
-
}
|
|
450
|
-
}
|
|
451
|
-
catch (error) {
|
|
452
|
-
this.logger.warn('Failed to dispose ConnectionManager', { error });
|
|
453
|
-
}
|
|
442
|
+
async cleanupRequestContainer(_requestContainer) {
|
|
443
|
+
// No-op: dialects manage their own connection lifecycle
|
|
454
444
|
}
|
|
455
445
|
dispose() {
|
|
456
446
|
this.logger.info('Container disposed.');
|
package/dist/di/container.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container.js","sourceRoot":"","sources":["../../src/di/container.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"container.js","sourceRoot":"","sources":["../../src/di/container.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inject-param.decorator.d.ts","sourceRoot":"","sources":["../../../src/di/decorators/inject-param.decorator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,cAAc,MAAM,iDAAiD,CAAA;AAEjF;;GAEG;AACH,eAAO,MAAM,yBAAyB,
|
|
1
|
+
{"version":3,"file":"inject-param.decorator.d.ts","sourceRoot":"","sources":["../../../src/di/decorators/inject-param.decorator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,cAAc,MAAM,iDAAiD,CAAA;AAEjF;;GAEG;AACH,eAAO,MAAM,yBAAyB,eAAqC,CAAA;AAE3E;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,wDAAwD;IACxD,KAAK,EAAE,MAAM,CAAA;IACb,0BAA0B;IAC1B,KAAK,EAAE,cAAc,CAAA;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAgB3E;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,cAAc,EAAE,CAKlG"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Metadata key for storing parameter injection information
|
|
3
3
|
*/
|
|
4
|
-
export const INJECT_PARAM_METADATA_KEY = Symbol('inject:param');
|
|
4
|
+
export const INJECT_PARAM_METADATA_KEY = Symbol.for('stratal:inject:param');
|
|
5
5
|
/**
|
|
6
6
|
* Mark a method parameter for DI injection
|
|
7
7
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inject-param.decorator.js","sourceRoot":"","sources":["../../../src/di/decorators/inject-param.decorator.ts"],"names":[],"mappings":"AAqBA;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"inject-param.decorator.js","sourceRoot":"","sources":["../../../src/di/decorators/inject-param.decorator.ts"],"names":[],"mappings":"AAqBA;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;AAY3E;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,WAAW,CAAI,KAAwB;IACrD,OAAO,CAAC,MAAc,EAAE,WAAwC,EAAE,cAAsB,EAAE,EAAE;QAC1F,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAA;QACnG,CAAC;QAED,MAAM,kBAAkB,GACrB,OAAO,CAAC,WAAW,CAAC,yBAAyB,EAAE,MAAM,EAAE,WAAW,CAAkC,IAAI,EAAE,CAAA;QAE7G,kBAAkB,CAAC,IAAI,CAAC;YACtB,KAAK,EAAE,cAAc;YACrB,KAAK;SACN,CAAC,CAAA;QAEF,OAAO,CAAC,cAAc,CAAC,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;IAC5F,CAAC,CAAA;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc,EAAE,WAA4B;IAC9E,MAAM,UAAU,GACb,OAAO,CAAC,WAAW,CAAC,yBAAyB,EAAE,MAAM,EAAE,WAAW,CAAkC,IAAI,EAAE,CAAA;IAE7G,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAA;AACrD,CAAC"}
|
package/dist/di/tokens.d.ts
CHANGED
|
@@ -10,7 +10,6 @@ export declare const DI_TOKENS: {
|
|
|
10
10
|
readonly Application: symbol;
|
|
11
11
|
readonly ModuleRegistry: symbol;
|
|
12
12
|
readonly ErrorHandler: symbol;
|
|
13
|
-
readonly ConnectionManager: symbol;
|
|
14
13
|
readonly Database: symbol;
|
|
15
14
|
readonly Queue: symbol;
|
|
16
15
|
readonly ConsumerRegistry: symbol;
|
package/dist/di/tokens.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../src/di/tokens.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,eAAe,eAA6B,CAAA;AAEzD,eAAO,MAAM,SAAS
|
|
1
|
+
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../src/di/tokens.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,eAAe,eAA6B,CAAA;AAEzD,eAAO,MAAM,SAAS;;;;;;;;;;;;IAiBpB;;OAEG;;CAEK,CAAA;AAEV,MAAM,MAAM,OAAO,GAAG,OAAO,SAAS,CAAC,MAAM,OAAO,SAAS,CAAC,CAAA"}
|
package/dist/di/tokens.js
CHANGED
|
@@ -12,7 +12,6 @@ export const DI_TOKENS = {
|
|
|
12
12
|
Application: Symbol.for('Application'),
|
|
13
13
|
ModuleRegistry: Symbol.for('ModuleRegistry'),
|
|
14
14
|
ErrorHandler: Symbol.for('ErrorHandler'),
|
|
15
|
-
ConnectionManager: Symbol.for('ConnectionManager'),
|
|
16
15
|
Database: Symbol.for('DatabaseService'),
|
|
17
16
|
Queue: Symbol.for('QueueManager'),
|
|
18
17
|
ConsumerRegistry: Symbol.for('ConsumerRegistry'),
|
package/dist/di/tokens.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/di/tokens.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;AAEzD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,aAAa;IACb,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;IAC1C,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAEhD,iBAAiB;IACjB,SAAS,EAAE,eAAe;IAC1B,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;IACtC,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAC5C,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC;IACxC,
|
|
1
|
+
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/di/tokens.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;AAEzD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,aAAa;IACb,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;IAC1C,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAEhD,iBAAiB;IACjB,SAAS,EAAE,eAAe;IAC1B,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;IACtC,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAC5C,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC;IACvC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC;IACjC,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAChD,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;IAE1C,UAAU;IACV;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;CAC9B,CAAA"}
|
|
@@ -23,6 +23,12 @@ import type { ErrorCode } from './error-codes';
|
|
|
23
23
|
* - This ensures errors are localized based on the user's locale (from X-Locale header)
|
|
24
24
|
*/
|
|
25
25
|
export declare abstract class ApplicationError extends Error {
|
|
26
|
+
/**
|
|
27
|
+
* Controls whether stack traces are captured.
|
|
28
|
+
* Set to false in production to skip the expensive Error.captureStackTrace() call,
|
|
29
|
+
* since stack traces are stripped from responses in production anyway.
|
|
30
|
+
*/
|
|
31
|
+
static captureStackTraces: boolean;
|
|
26
32
|
/**
|
|
27
33
|
* Type-safe error code from ERROR_CODES registry
|
|
28
34
|
* See error-codes.ts for the complete registry
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application-error.d.ts","sourceRoot":"","sources":["../../src/errors/application-error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,8BAAsB,gBAAiB,SAAQ,KAAK;IAClD;;;OAGG;IACH,SAAgB,IAAI,EAAE,SAAS,CAAA;IAE/B;;OAEG;IACH,SAAgB,SAAS,EAAE,MAAM,CAAA;IAEjC;;;;;OAKG;IACH,SAAgB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAElD;;;;OAIG;gBAED,UAAU,EAAE,WAAW,EACvB,IAAI,EAAE,SAAS,EACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"application-error.d.ts","sourceRoot":"","sources":["../../src/errors/application-error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,8BAAsB,gBAAiB,SAAQ,KAAK;IAClD;;;;OAIG;IACH,MAAM,CAAC,kBAAkB,UAAO;IAEhC;;;OAGG;IACH,SAAgB,IAAI,EAAE,SAAS,CAAA;IAE/B;;OAEG;IACH,SAAgB,SAAS,EAAE,MAAM,CAAA;IAEjC;;;;;OAKG;IACH,SAAgB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAElD;;;;OAIG;gBAED,UAAU,EAAE,WAAW,EACvB,IAAI,EAAE,SAAS,EACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAqBpC;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAsB7B;;;;;;OAMG;IACH,eAAe,CAAC,GAAG,EAAE,WAAW,EAAE,iBAAiB,CAAC,EAAE,MAAM,GAAG,aAAa;IAY5E;;;;OAIG;IACH,MAAM,IAAI,aAAa;CAGxB"}
|
|
@@ -20,6 +20,12 @@
|
|
|
20
20
|
* - This ensures errors are localized based on the user's locale (from X-Locale header)
|
|
21
21
|
*/
|
|
22
22
|
export class ApplicationError extends Error {
|
|
23
|
+
/**
|
|
24
|
+
* Controls whether stack traces are captured.
|
|
25
|
+
* Set to false in production to skip the expensive Error.captureStackTrace() call,
|
|
26
|
+
* since stack traces are stripped from responses in production anyway.
|
|
27
|
+
*/
|
|
28
|
+
static captureStackTraces = true;
|
|
23
29
|
/**
|
|
24
30
|
* Type-safe error code from ERROR_CODES registry
|
|
25
31
|
* See error-codes.ts for the complete registry
|
|
@@ -51,8 +57,9 @@ export class ApplicationError extends Error {
|
|
|
51
57
|
this.timestamp = new Date().toISOString();
|
|
52
58
|
this.metadata = metadata;
|
|
53
59
|
// Capture stack trace, excluding constructor call from it
|
|
60
|
+
// Skip in production where stack traces are stripped from responses anyway
|
|
54
61
|
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- captureStackTrace is V8-specific, not always present
|
|
55
|
-
if (Error.captureStackTrace) {
|
|
62
|
+
if (ApplicationError.captureStackTraces && Error.captureStackTrace) {
|
|
56
63
|
Error.captureStackTrace(this, this.constructor);
|
|
57
64
|
}
|
|
58
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application-error.js","sourceRoot":"","sources":["../../src/errors/application-error.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,OAAgB,gBAAiB,SAAQ,KAAK;IAClD;;;OAGG;IACa,IAAI,CAAW;IAE/B;;OAEG;IACa,SAAS,CAAQ;IAEjC;;;;;OAKG;IACa,QAAQ,CAA0B;IAElD;;;;OAIG;IACH,YACE,UAAuB,EACvB,IAAe,EACf,QAAkC;QAElC,yGAAyG;QACzG,KAAK,CAAC,UAAU,CAAC,CAAA;QAEjB,yDAAyD;QACzD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAEjD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;QACzC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QAExB,0DAA0D;QAC1D,+HAA+H;QAC/H,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"application-error.js","sourceRoot":"","sources":["../../src/errors/application-error.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,OAAgB,gBAAiB,SAAQ,KAAK;IAClD;;;;OAIG;IACH,MAAM,CAAC,kBAAkB,GAAG,IAAI,CAAA;IAEhC;;;OAGG;IACa,IAAI,CAAW;IAE/B;;OAEG;IACa,SAAS,CAAQ;IAEjC;;;;;OAKG;IACa,QAAQ,CAA0B;IAElD;;;;OAIG;IACH,YACE,UAAuB,EACvB,IAAe,EACf,QAAkC;QAElC,yGAAyG;QACzG,KAAK,CAAC,UAAU,CAAC,CAAA;QAEjB,yDAAyD;QACzD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAEjD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;QACzC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QAExB,0DAA0D;QAC1D,2EAA2E;QAC3E,+HAA+H;QAC/H,IAAI,gBAAgB,CAAC,kBAAkB,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YACnE,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QACjD,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACK,MAAM,CAAC,cAAc,CAC3B,QAAkC;QAElC,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAA;QAE/B,+CAA+C;QAC/C,MAAM,SAAS,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;QAE/C,MAAM,QAAQ,GAA4B,EAAE,CAAA;QAC5C,IAAI,iBAAiB,GAAG,KAAK,CAAA;QAE7B,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,IAAI,GAAG,IAAI,QAAQ,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gBACnD,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;gBAC7B,iBAAiB,GAAG,IAAI,CAAA;YAC1B,CAAC;QACH,CAAC;QAED,0DAA0D;QAC1D,OAAO,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAA;IACjD,CAAC;IAED;;;;;;OAMG;IACH,eAAe,CAAC,GAAgB,EAAE,iBAA0B;QAC1D,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,iBAAiB,IAAI,IAAI,CAAC,OAAO,EAAE,uEAAuE;YACnH,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,4DAA4D;YAC5D,QAAQ,EAAE,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC;YACxD,gDAAgD;YAChD,KAAK,EAAE,GAAG,KAAK,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;SACtD,CAAA;IACH,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAA;IAC5C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-error-handler.d.ts","sourceRoot":"","sources":["../../src/errors/global-error-handler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,QAAQ,CAAA;AAExC,OAAO,KAAK,EAAE,YAAY,EAAe,MAAM,oBAAoB,CAAA;AACnE,OAAO,EAAiB,KAAK,aAAa,EAAE,MAAM,WAAW,CAAA;AAE7D,OAAO,KAAK,EAAe,aAAa,EAAE,MAAM,kBAAkB,CAAA;AASlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,qBACa,kBAAkB;IAGU,OAAO,CAAC,QAAQ,CAAC,MAAM;IAC3B,OAAO,CAAC,QAAQ,CAAC,IAAI;IAEtD,OAAO,CAAC,QAAQ,CAAC,GAAG;IALtB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;gBAEe,MAAM,EAAE,aAAa,EACzB,IAAI,EAAE,YAAY,EAEnD,GAAG,EAAE,UAAU;IAKlC;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,aAAa;
|
|
1
|
+
{"version":3,"file":"global-error-handler.d.ts","sourceRoot":"","sources":["../../src/errors/global-error-handler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,QAAQ,CAAA;AAExC,OAAO,KAAK,EAAE,YAAY,EAAe,MAAM,oBAAoB,CAAA;AACnE,OAAO,EAAiB,KAAK,aAAa,EAAE,MAAM,WAAW,CAAA;AAE7D,OAAO,KAAK,EAAe,aAAa,EAAE,MAAM,kBAAkB,CAAA;AASlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,qBACa,kBAAkB;IAGU,OAAO,CAAC,QAAQ,CAAC,MAAM;IAC3B,OAAO,CAAC,QAAQ,CAAC,IAAI;IAEtD,OAAO,CAAC,QAAQ,CAAC,GAAG;IALtB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;gBAEe,MAAM,EAAE,aAAa,EACzB,IAAI,EAAE,YAAY,EAEnD,GAAG,EAAE,UAAU;IAKlC;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,aAAa;IAwBrC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,cAAc;IAMtB;;OAEG;IACH,OAAO,CAAC,GAAG;IAwBX;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAW1B;;OAEG;IACH,OAAO,CAAC,WAAW;CAmBpB"}
|
|
@@ -74,11 +74,9 @@ let GlobalErrorHandler = class GlobalErrorHandler {
|
|
|
74
74
|
handle(error) {
|
|
75
75
|
// Check if it's an ApplicationError
|
|
76
76
|
if (isApplicationError(error)) {
|
|
77
|
-
|
|
78
|
-
// Translate message
|
|
79
|
-
// Works in: HTTP requests, Queue processing (i18n available via request container)
|
|
80
|
-
// Falls back in: RPC/Startup (i18n might not be available)
|
|
77
|
+
// Translate once, use for both logging and response
|
|
81
78
|
const translatedMessage = this.translateError(error);
|
|
79
|
+
this.log(error, translatedMessage);
|
|
82
80
|
return error.toErrorResponse(this.environment, translatedMessage);
|
|
83
81
|
}
|
|
84
82
|
// Unexpected error - wrap in InternalError
|
|
@@ -110,11 +108,11 @@ let GlobalErrorHandler = class GlobalErrorHandler {
|
|
|
110
108
|
/**
|
|
111
109
|
* Log an ApplicationError with appropriate severity
|
|
112
110
|
*/
|
|
113
|
-
log(error) {
|
|
111
|
+
log(error, translatedMessage) {
|
|
114
112
|
const severity = this.getSeverity(error.code);
|
|
115
113
|
const logData = {
|
|
116
114
|
code: error.code,
|
|
117
|
-
message:
|
|
115
|
+
message: translatedMessage,
|
|
118
116
|
timestamp: error.timestamp,
|
|
119
117
|
metadata: error.metadata,
|
|
120
118
|
name: error.name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-error-handler.js","sourceRoot":"","sources":["../../src/errors/global-error-handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAEjD,OAAO,EAAE,aAAa,EAAsB,MAAM,WAAW,CAAA;AAG7D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAO3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEI,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAG2B;IACJ;IAEjC;IALF,WAAW,CAAa;IACzC,YACwD,MAAqB,EACzB,IAAkB,EAEnD,GAAe;QAHsB,WAAM,GAAN,MAAM,CAAe;QACzB,SAAI,GAAJ,IAAI,CAAc;QAEnD,QAAG,GAAH,GAAG,CAAY;QAEhC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,WAA0B,CAAA;IACxD,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAAc;QACnB,oCAAoC;QACpC,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"global-error-handler.js","sourceRoot":"","sources":["../../src/errors/global-error-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metadata keys for event listener decorators.
|
|
3
|
+
*
|
|
4
|
+
* Uses `Symbol.for()` (global symbol registry) so that both core and
|
|
5
|
+
* framework packages can reference the same symbols without cross-imports.
|
|
6
|
+
*/
|
|
7
|
+
export declare const LISTENER_METADATA_KEYS: {
|
|
8
|
+
readonly IS_LISTENER: symbol;
|
|
9
|
+
readonly EVENT_HANDLERS: symbol;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/events/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB;;;CAGzB,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metadata keys for event listener decorators.
|
|
3
|
+
*
|
|
4
|
+
* Uses `Symbol.for()` (global symbol registry) so that both core and
|
|
5
|
+
* framework packages can reference the same symbols without cross-imports.
|
|
6
|
+
*/
|
|
7
|
+
export const LISTENER_METADATA_KEYS = {
|
|
8
|
+
IS_LISTENER: Symbol.for('stratal:listener'),
|
|
9
|
+
EVENT_HANDLERS: Symbol.for('stratal:listener:handlers'),
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/events/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAC3C,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC;CAC/C,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/events/decorators/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,EAAE,EAAE,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/events/decorators/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,EAAE,EAAE,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { Constructor } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Mark a class as an event listener.
|
|
4
|
+
*
|
|
5
|
+
* Applies `@Transient()` for DI and sets metadata so the module system
|
|
6
|
+
* can auto-discover and wire listener handlers at bootstrap time.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* @Listener()
|
|
11
|
+
* export class UserCreatedListener {
|
|
12
|
+
* @On('after.User.create')
|
|
13
|
+
* async sendWelcomeEmail(context: EventContext<'after.User.create'>) {
|
|
14
|
+
* // ...
|
|
15
|
+
* }
|
|
16
|
+
* }
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export declare function Listener(): <T extends Constructor>(target: T) => T;
|
|
20
|
+
/**
|
|
21
|
+
* Check if a class is decorated with `@Listener()`
|
|
22
|
+
*/
|
|
23
|
+
export declare function isListener(target: Constructor): boolean;
|
|
24
|
+
//# sourceMappingURL=listener.decorator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"listener.decorator.d.ts","sourceRoot":"","sources":["../../../src/events/decorators/listener.decorator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAG9C;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,QAAQ,KACL,CAAC,SAAS,WAAW,EAAE,QAAQ,CAAC,OAKlD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAEvD"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Transient } from '../../di/decorators';
|
|
2
|
+
import { LISTENER_METADATA_KEYS } from '../constants';
|
|
3
|
+
/**
|
|
4
|
+
* Mark a class as an event listener.
|
|
5
|
+
*
|
|
6
|
+
* Applies `@Transient()` for DI and sets metadata so the module system
|
|
7
|
+
* can auto-discover and wire listener handlers at bootstrap time.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* @Listener()
|
|
12
|
+
* export class UserCreatedListener {
|
|
13
|
+
* @On('after.User.create')
|
|
14
|
+
* async sendWelcomeEmail(context: EventContext<'after.User.create'>) {
|
|
15
|
+
* // ...
|
|
16
|
+
* }
|
|
17
|
+
* }
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export function Listener() {
|
|
21
|
+
return function (target) {
|
|
22
|
+
Transient()(target);
|
|
23
|
+
Reflect.defineMetadata(LISTENER_METADATA_KEYS.IS_LISTENER, true, target);
|
|
24
|
+
return target;
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Check if a class is decorated with `@Listener()`
|
|
29
|
+
*/
|
|
30
|
+
export function isListener(target) {
|
|
31
|
+
return Reflect.getMetadata(LISTENER_METADATA_KEYS.IS_LISTENER, target) === true;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=listener.decorator.js.map
|