stratal 0.0.2 → 0.0.4

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.
Files changed (31) hide show
  1. package/CHANGELOG.md +115 -0
  2. package/dist/application.d.ts.map +1 -1
  3. package/dist/application.js +3 -1
  4. package/dist/application.js.map +1 -1
  5. package/dist/di/decorators/inject-param.decorator.d.ts.map +1 -1
  6. package/dist/di/decorators/inject-param.decorator.js +1 -1
  7. package/dist/di/decorators/inject-param.decorator.js.map +1 -1
  8. package/dist/errors/application-error.d.ts +6 -0
  9. package/dist/errors/application-error.d.ts.map +1 -1
  10. package/dist/errors/application-error.js +8 -1
  11. package/dist/errors/application-error.js.map +1 -1
  12. package/dist/errors/global-error-handler.d.ts.map +1 -1
  13. package/dist/errors/global-error-handler.js +4 -6
  14. package/dist/errors/global-error-handler.js.map +1 -1
  15. package/dist/guards/types.d.ts.map +1 -1
  16. package/dist/guards/types.js +1 -1
  17. package/dist/guards/types.js.map +1 -1
  18. package/dist/i18n/services/i18n.service.d.ts +1 -13
  19. package/dist/i18n/services/i18n.service.d.ts.map +1 -1
  20. package/dist/i18n/services/i18n.service.js +3 -39
  21. package/dist/i18n/services/i18n.service.js.map +1 -1
  22. package/dist/i18n/services/message-loader.service.d.ts +18 -0
  23. package/dist/i18n/services/message-loader.service.d.ts.map +1 -1
  24. package/dist/i18n/services/message-loader.service.js +56 -2
  25. package/dist/i18n/services/message-loader.service.js.map +1 -1
  26. package/dist/module/module.decorator.d.ts.map +1 -1
  27. package/dist/module/module.decorator.js +1 -1
  28. package/dist/module/module.decorator.js.map +1 -1
  29. package/dist/router/constants.js +6 -6
  30. package/dist/router/constants.js.map +1 -1
  31. package/package.json +9 -8
package/CHANGELOG.md ADDED
@@ -0,0 +1,115 @@
1
+ # stratal
2
+
3
+ ## 0.0.4
4
+
5
+ ### Patch Changes
6
+
7
+ - **Lazy i18n context building** — `MessageLoaderService` now lazily builds and caches `CoreContext` per locale on first access instead of eagerly at startup, reducing initialization overhead.
8
+ - **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.
9
+ - **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.
10
+
11
+ - **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.
12
+ - **Benchmark configuration** — Added a benchmark section to the Vitest config and updated Wrangler compatibility flags for Node.js modules.
13
+ - **i18n integration tests** — Added localization integratnning in the workerd pool.
14
+
15
+ - **Consistent zod imports** — Updated zod imports across benchmark files to use the i18n validation module.
16
+ - **Cleaner error handling** — `GlobalErrorHandler` now passes the translated message directly to the logger, avoiding double-translation.
17
+
18
+ ## 0.0.3
19
+
20
+ ### Patch Changes
21
+
22
+ - - **Lazy i18n context building** — `MessageLoaderService` now lazily builds and caches `CoreContext` per locale on first access instead of eagerly at startup, reducing initialization overhead.
23
+ - **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.
24
+ - **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.
25
+
26
+ - **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.
27
+ - **Benchmark configuration** — Added a benchmark section to the Vitest config and updated Wrangler compatibility flags for Node.js modules.
28
+ - **i18n integration tests** — Added localization integratnning in the workerd pool.
29
+
30
+ - **Consistent zod imports** — Updated zod imports across benchmark files to use the i18n validation module.
31
+ - **Cleaner error handling** — `GlobalErrorHandler` now passes the translated message directly to the logger, avoiding double-translation.
32
+
33
+ ## 0.0.2
34
+
35
+ ### Patch Changes
36
+
37
+ #### `stratal` (core)
38
+
39
+ ##### Breaking Changes
40
+
41
+ - **`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))
42
+
43
+ - **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))
44
+
45
+ ##### Features
46
+
47
+ - **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))
48
+
49
+ - **Benchmark suite** — Added benchmark functionality for measuring framework performa30438`](https://github.com/strataljs/stratal/commit/7230438))
50
+
51
+ ##### Security
52
+
53
+ - **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))
54
+
55
+ ##### Bug Fixes
56
+
57
+ - **`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))
58
+
59
+ ---
60
+
61
+ #### `@stratal/testing`
62
+
63
+ ##### Breaking Changes
64
+
65
+ - **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))
66
+
67
+ - Updated dependencies []:
68
+ - stratal@0.0.2
69
+
70
+ ## 0.0.1
71
+
72
+ ### Patch Changes
73
+
74
+ - Initial release of the Stratal framework — a modular Cloudflare Workers framework built on Hono and tsyringe.
75
+
76
+ **Core Infrastructure**
77
+
78
+ - NestJS-style module system with `@Module()` decorator, dynamic modules (`withRoot`, `withRootAsync`), and lifecycle hooks (`OnInitialize`, `OnShutdown`)
79
+ - Two-tier dependency injection container (global singletons + request-scoped) powered by tsyringe with conditional registration and service decoration
80
+ - `StratalWorker` entry point extending Cloudflare's `WorkerEntrypoint` for HTTP fetch, queue batches, and scheduled cron triggers
81
+
82
+ **Routing & API**
83
+
84
+ - Hono-based routing with `@Controller()` and `@Route()` decorators, automatic controller discovery, and route guards via `@UseGuards()`
85
+ - OpenAPI schema generation with `@hono/zod-openapi` and Scalar API reference integration
86
+ - NestJS-like middleware configuration with route-specific application and exclusion
87
+
88
+ **Background Processing**
89
+
90
+ - Queue consumerfor Cloudflare Queues with `@Consumer()` and `@QueueJob()` decorators and batch processing
91
+ - Cron job scheduling via `CronManager` integrated with Cloudflare's scheduled events
92
+
93
+ **Services & Integrations**
94
+
95
+ - Email module with pluggable providers (Nodemailer, Resend) and queue-based sending
96
+ - Storage module with AWS S3 / Cloudflare R2 support, multipart uploads, presigned URLs, and TUS resumable uploads
97
+ - Internationalization (i18n) module with locale detection, message compilation, and request-scoped translations
98
+ - Cache module with pluggable providers and Cloudflare KV integration
99
+ - Configuration module with `registerAs()` namespaces and Zod-based validation
100
+ - Structured logging with JSON and pretty formatters
101
+
102
+ **Developer Experience**
103
+
104
+ - Zod-powered request/response validation with type inference
105
+ - Custom `ApplicationError` class with HTTP status mapping
106
+ - ESM-only with full TypeScript decorator support (`emitDecoratorMetadata`)
107
+ - Sub-path exports for tree-shakeable imports (`stratal/di`, `stratal/router`, `stratal/cache`, etc.)
108
+
109
+ - `TestingModule` and `TestingModuleBuilder` for bootstrapping isolated module environments in tests
110
+ - `TestHttpClient` with request builder and response wrapper for integration testing
111
+ - `FetchMock` for mocking HTTP fetch calls
112
+ - `FakeStorageService` for in-memory storage testing without S3/R2
113
+ - `ProviderOverrideBuilder` for replacing providers with test doubles
114
+ - Nodemailer mock for email testing
115
+ - Test environment utilities via `getTestEnv()`
@@ -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;AAGvC,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;IAkCjC;;;;;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;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;CAO7B"}
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;AAGvC,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;IAqCjC;;;;;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;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;CAO7B"}
@@ -3,7 +3,7 @@ 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
7
  import { I18nModule } from './i18n/i18n.module';
8
8
  import { ConsoleTransport, JsonFormatter, LOGGER_TOKENS, LoggerService, LogLevel, PrettyFormatter } from './logger';
9
9
  import { ModuleRegistry } from './module/module-registry';
@@ -92,6 +92,8 @@ export class Application {
92
92
  if (this.initialized) {
93
93
  return;
94
94
  }
95
+ // Disable stack trace capture in production (expensive and stripped from responses)
96
+ ApplicationError.captureStackTraces = this.env.ENVIRONMENT !== 'production';
95
97
  // Phase 1: Register core infrastructure modules (internal)
96
98
  this.moduleRegistry.registerAll([
97
99
  I18nModule,
@@ -1 +1 @@
1
- {"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.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,eAAyB,CAAA;AAE/D;;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
+ {"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,cAAc,CAAC,CAAA;AAY/D;;;;;;;;;;;;;;;;;;;;;;;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"}
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"}
@@ -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;IAoBpC;;;;;;;;;;;;;;;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"}
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;YAC5B,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;CACF"}
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;IA0BrC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,cAAc;IAMtB;;OAEG;IACH,OAAO,CAAC,GAAG;IAwBX;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAW1B;;OAEG;IACH,OAAO,CAAC,WAAW;CAmBpB"}
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
- this.log(error);
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: this.translateError(error),
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":"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"}
1
+ {"version":3,"file":"global-error-handler.js","sourceRoot":"","sources":["../../src/errors/global-error-handler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/guards/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAE3C;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAChE;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,WAAW,CAAC,CAAA;AAEjD;;;GAGG;AACH,MAAM,MAAM,KAAK,GAAG,UAAU,GAAG,WAAW,CAAA;AAE5C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,KAAK,EAAE,CAAA;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,eAAmB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/guards/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAE3C;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAChE;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,WAAW,CAAC,CAAA;AAEjD;;;GAGG;AACH,MAAM,MAAM,KAAK,GAAG,UAAU,GAAG,WAAW,CAAA;AAE5C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,KAAK,EAAE,CAAA;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,eAA+B,CAAA"}
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Metadata key for guard storage
3
3
  */
4
- export const GUARD_METADATA_KEY = Symbol('guards');
4
+ export const GUARD_METADATA_KEY = Symbol.for('stratal:guards');
5
5
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/guards/types.ts"],"names":[],"mappings":"AA6DA;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAA"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/guards/types.ts"],"names":[],"mappings":"AA6DA;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA"}
@@ -3,6 +3,7 @@
3
3
  *
4
4
  * Request-scoped service for translations.
5
5
  * Injects RouterContext to access request-specific locale.
6
+ * Uses pre-built CoreContext from MessageLoaderService (singleton) for zero-cost lookups.
6
7
  */
7
8
  import { RouterContext } from '../../router';
8
9
  import type { II18nService, MessageKeys, MessageParams } from '../i18n.types';
@@ -30,7 +31,6 @@ import type { MessageLoaderService } from './message-loader.service';
30
31
  export declare class I18nService implements II18nService {
31
32
  private readonly loader;
32
33
  private readonly routerContext?;
33
- private intlContext;
34
34
  constructor(loader: MessageLoaderService, routerContext?: RouterContext | undefined);
35
35
  /**
36
36
  * Translate a message key
@@ -46,17 +46,5 @@ export declare class I18nService implements II18nService {
46
46
  * @returns Current locale code from RouterContext or default locale
47
47
  */
48
48
  getLocale(): string;
49
- /**
50
- * Get or create intlify CoreContext
51
- * Lazily initializes on first translation call
52
- */
53
- private getIntlContext;
54
- /**
55
- * Flatten nested messages to dot-notation
56
- *
57
- * Converts { auth: { login: { title: 'Sign In' } } }
58
- * to { 'auth.login.title': 'Sign In' }
59
- */
60
- private flattenMessages;
61
49
  }
62
50
  //# sourceMappingURL=i18n.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.service.d.ts","sourceRoot":"","sources":["../../../src/i18n/services/i18n.service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAiB,aAAa,EAAE,MAAM,cAAc,CAAA;AAE3D,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AAEpE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBACa,WAAY,YAAW,YAAY;IAIT,OAAO,CAAC,QAAQ,CAAC,MAAM;IACC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IAJ5F,OAAO,CAAC,WAAW,CAAyB;gBAGU,MAAM,EAAE,oBAAoB,EACJ,aAAa,CAAC,EAAE,aAAa,YAAA;IAI3G;;;;;;OAMG;IACH,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,MAAM;IAUnD;;;;OAIG;IACH,SAAS,IAAI,MAAM;IAInB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAgBtB;;;;;OAKG;IACH,OAAO,CAAC,eAAe;CAiBxB"}
1
+ {"version":3,"file":"i18n.service.d.ts","sourceRoot":"","sources":["../../../src/i18n/services/i18n.service.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,EAAiB,aAAa,EAAE,MAAM,cAAc,CAAA;AAE3D,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AAEpE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBACa,WAAY,YAAW,YAAY;IAET,OAAO,CAAC,QAAQ,CAAC,MAAM;IACC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;gBADtC,MAAM,EAAE,oBAAoB,EACJ,aAAa,CAAC,EAAE,aAAa,YAAA;IAI3G;;;;;;OAMG;IACH,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,MAAM;IAUnD;;;;OAIG;IACH,SAAS,IAAI,MAAM;CAGpB"}
@@ -3,6 +3,7 @@
3
3
  *
4
4
  * Request-scoped service for translations.
5
5
  * Injects RouterContext to access request-specific locale.
6
+ * Uses pre-built CoreContext from MessageLoaderService (singleton) for zero-cost lookups.
6
7
  */
7
8
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
8
9
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -16,7 +17,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
16
17
  var __param = (this && this.__param) || function (paramIndex, decorator) {
17
18
  return function (target, key) { decorator(target, key, paramIndex); }
18
19
  };
19
- import { createCoreContext, translate } from '@intlify/core-base';
20
+ import { translate } from '@intlify/core-base';
20
21
  import { inject } from 'tsyringe';
21
22
  import { Transient } from '../../di/decorators';
22
23
  import { ROUTER_TOKENS, RouterContext } from '../../router';
@@ -44,7 +45,6 @@ import { I18N_TOKENS } from '../i18n.tokens';
44
45
  let I18nService = class I18nService {
45
46
  loader;
46
47
  routerContext;
47
- intlContext;
48
48
  constructor(loader, routerContext) {
49
49
  this.loader = loader;
50
50
  this.routerContext = routerContext;
@@ -57,7 +57,7 @@ let I18nService = class I18nService {
57
57
  * @returns Translated string
58
58
  */
59
59
  t(key, params) {
60
- const context = this.getIntlContext();
60
+ const context = this.loader.getCoreContext(this.getLocale());
61
61
  const result = params !== undefined
62
62
  ? translate(context, key, params)
63
63
  : translate(context, key);
@@ -71,42 +71,6 @@ let I18nService = class I18nService {
71
71
  getLocale() {
72
72
  return this.routerContext?.getLocale() ?? 'en';
73
73
  }
74
- /**
75
- * Get or create intlify CoreContext
76
- * Lazily initializes on first translation call
77
- */
78
- getIntlContext() {
79
- if (!this.intlContext) {
80
- const locale = this.getLocale();
81
- const messages = this.loader.getMessages(locale);
82
- this.intlContext = createCoreContext({
83
- locale,
84
- messages: { [locale]: this.flattenMessages(messages) },
85
- missingWarn: false,
86
- fallbackWarn: false
87
- });
88
- }
89
- return this.intlContext;
90
- }
91
- /**
92
- * Flatten nested messages to dot-notation
93
- *
94
- * Converts { auth: { login: { title: 'Sign In' } } }
95
- * to { 'auth.login.title': 'Sign In' }
96
- */
97
- flattenMessages(messages, prefix = '') {
98
- return Object.keys(messages).reduce((acc, key) => {
99
- const value = messages[key];
100
- const newKey = prefix ? `${prefix}.${key}` : key;
101
- if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
102
- Object.assign(acc, this.flattenMessages(value, newKey));
103
- }
104
- else {
105
- acc[newKey] = String(value);
106
- }
107
- return acc;
108
- }, {});
109
- }
110
74
  };
111
75
  I18nService = __decorate([
112
76
  Transient(I18N_TOKENS.I18nService),
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.service.js","sourceRoot":"","sources":["../../../src/i18n/services/i18n.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n.service.js","sourceRoot":"","sources":["../../../src/i18n/services/i18n.service.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;;;;;;;;;;;;;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAI5C;;;;;;;;;;;;;;;;;;;GAmBG;AAEI,IAAM,WAAW,GAAjB,MAAM,WAAW;IAEgC;IACwB;IAF9E,YACsD,MAA4B,EACJ,aAA6B;QADrD,WAAM,GAAN,MAAM,CAAsB;QACJ,kBAAa,GAAb,aAAa,CAAgB;IAE3G,CAAC;IAED;;;;;;OAMG;IACH,CAAC,CAAC,GAAgB,EAAE,MAAsB;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;QAE5D,MAAM,MAAM,GAAG,MAAM,KAAK,SAAS;YACjC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC;YACjC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;QAE3B,OAAO,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAA;IAClD,CAAC;IAED;;;;OAIG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,IAAI,IAAI,CAAA;IAChD,CAAC;CACF,CAAA;AAhCY,WAAW;IADvB,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC;IAG9B,WAAA,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAAA;IACjC,WAAA,MAAM,CAAC,aAAa,CAAC,aAAa,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;+CAAkC,aAAa;GAHhG,WAAW,CAgCvB"}
@@ -3,14 +3,25 @@
3
3
  *
4
4
  * Singleton service that loads and caches all locale messages at startup.
5
5
  * Merges core messages (from packages/modules) with app messages (from forRoot options).
6
+ * Lazily builds and caches CoreContext per locale on first access.
6
7
  */
8
+ import type { CoreContext } from '@intlify/core-base';
7
9
  import type { I18nModuleOptions } from '../i18n.options';
8
10
  export declare class MessageLoaderService {
9
11
  private readonly options?;
10
12
  private readonly cache;
13
+ private readonly contextCache;
11
14
  private readonly locales;
12
15
  private readonly defaultLocale;
13
16
  constructor(options?: I18nModuleOptions | undefined);
17
+ /**
18
+ * Get CoreContext for a locale (lazily built and cached on first access)
19
+ * Falls back to default locale if locale not found
20
+ *
21
+ * @param locale - Locale code
22
+ * @returns Cached CoreContext ready for translation
23
+ */
24
+ getCoreContext(locale: string): CoreContext;
14
25
  /**
15
26
  * Get messages for a specific locale
16
27
  * Falls back to default locale if locale not found
@@ -38,6 +49,13 @@ export declare class MessageLoaderService {
38
49
  * @returns Default locale code
39
50
  */
40
51
  getDefaultLocale(): string;
52
+ /**
53
+ * Flatten nested messages to dot-notation
54
+ *
55
+ * Converts { auth: { login: { title: 'Sign In' } } }
56
+ * to { 'auth.login.title': 'Sign In' }
57
+ */
58
+ private flattenMessages;
41
59
  /**
42
60
  * Deep merge two objects
43
61
  * App messages override core messages at leaf level
@@ -1 +1 @@
1
- {"version":3,"file":"message-loader.service.d.ts","sourceRoot":"","sources":["../../../src/i18n/services/message-loader.service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAIxD,qBACa,oBAAoB;IAO7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IAN3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAsC;IAC5D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;gBAInB,OAAO,CAAC,EAAE,iBAAiB,YAAA;IA2B9C;;;;;;OAMG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IASpD;;;;OAIG;IACH,mBAAmB,IAAI,MAAM,EAAE;IAI/B;;;;;OAKG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAI1C;;;;OAIG;IACH,gBAAgB,IAAI,MAAM;IAI1B;;;OAGG;IACH,OAAO,CAAC,SAAS;CA+BlB"}
1
+ {"version":3,"file":"message-loader.service.d.ts","sourceRoot":"","sources":["../../../src/i18n/services/message-loader.service.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAIrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAIxD,qBACa,oBAAoB;IAQ7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IAP3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAsC;IAC5D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0B;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;gBAInB,OAAO,CAAC,EAAE,iBAAiB,YAAA;IA6B9C;;;;;;OAMG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW;IAwB3C;;;;;;OAMG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IASpD;;;;OAIG;IACH,mBAAmB,IAAI,MAAM,EAAE;IAI/B;;;;;OAKG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAI1C;;;;OAIG;IACH,gBAAgB,IAAI,MAAM;IAI1B;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAoBvB;;;OAGG;IACH,OAAO,CAAC,SAAS;CA+BlB"}
@@ -3,6 +3,7 @@
3
3
  *
4
4
  * Singleton service that loads and caches all locale messages at startup.
5
5
  * Merges core messages (from packages/modules) with app messages (from forRoot options).
6
+ * Lazily builds and caches CoreContext per locale on first access.
6
7
  */
7
8
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
8
9
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -16,6 +17,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
16
17
  var __param = (this && this.__param) || function (paramIndex, decorator) {
17
18
  return function (target, key) { decorator(target, key, paramIndex); }
18
19
  };
20
+ import { createCoreContext } from '@intlify/core-base';
19
21
  import { inject } from 'tsyringe';
20
22
  import { Transient } from '../../di/decorators';
21
23
  import { I18N_TOKENS } from '../i18n.tokens';
@@ -23,12 +25,14 @@ import { getLocales, getMessages } from '../messages';
23
25
  let MessageLoaderService = class MessageLoaderService {
24
26
  options;
25
27
  cache;
28
+ contextCache;
26
29
  locales;
27
30
  defaultLocale;
28
31
  constructor(options) {
29
32
  this.options = options;
30
33
  this.defaultLocale = this.options?.defaultLocale ?? 'en';
31
34
  this.cache = new Map();
35
+ this.contextCache = new Map();
32
36
  // Get core messages (always available)
33
37
  const coreMessages = getMessages();
34
38
  const coreLocales = getLocales();
@@ -38,14 +42,44 @@ let MessageLoaderService = class MessageLoaderService {
38
42
  const appLocales = Object.keys(appMessages);
39
43
  const allLocales = [...new Set([...coreLocales, ...appLocales])];
40
44
  this.locales = allLocales;
41
- // Merge messages for each locale
45
+ // Merge messages for each locale (CoreContext built lazily on first access)
42
46
  for (const locale of allLocales) {
43
47
  const coreLocaleMessages = coreMessages[locale] ?? {};
44
48
  const appLocaleMessages = appMessages[locale] ?? {};
45
49
  // Deep merge: core defaults + app overrides
46
- this.cache.set(locale, this.deepMerge(coreLocaleMessages, appLocaleMessages));
50
+ const merged = this.deepMerge(coreLocaleMessages, appLocaleMessages);
51
+ this.cache.set(locale, merged);
47
52
  }
48
53
  }
54
+ /**
55
+ * Get CoreContext for a locale (lazily built and cached on first access)
56
+ * Falls back to default locale if locale not found
57
+ *
58
+ * @param locale - Locale code
59
+ * @returns Cached CoreContext ready for translation
60
+ */
61
+ getCoreContext(locale) {
62
+ const cached = this.contextCache.get(locale);
63
+ if (cached)
64
+ return cached;
65
+ // Resolve effective locale (fallback to default if unsupported)
66
+ const effectiveLocale = this.cache.has(locale) ? locale : this.defaultLocale;
67
+ // Check if effective locale already cached (handles fallback)
68
+ const cachedEffective = this.contextCache.get(effectiveLocale);
69
+ if (cachedEffective)
70
+ return cachedEffective;
71
+ // Build and cache on first access
72
+ const messages = this.cache.get(effectiveLocale) ?? {};
73
+ const flattened = this.flattenMessages(messages);
74
+ const ctx = createCoreContext({
75
+ locale: effectiveLocale,
76
+ messages: { [effectiveLocale]: flattened },
77
+ missingWarn: false,
78
+ fallbackWarn: false,
79
+ });
80
+ this.contextCache.set(effectiveLocale, ctx);
81
+ return ctx;
82
+ }
49
83
  /**
50
84
  * Get messages for a specific locale
51
85
  * Falls back to default locale if locale not found
@@ -86,6 +120,26 @@ let MessageLoaderService = class MessageLoaderService {
86
120
  getDefaultLocale() {
87
121
  return this.defaultLocale;
88
122
  }
123
+ /**
124
+ * Flatten nested messages to dot-notation
125
+ *
126
+ * Converts { auth: { login: { title: 'Sign In' } } }
127
+ * to { 'auth.login.title': 'Sign In' }
128
+ */
129
+ flattenMessages(messages, prefix = '') {
130
+ const result = {};
131
+ for (const key of Object.keys(messages)) {
132
+ const value = messages[key];
133
+ const newKey = prefix ? `${prefix}.${key}` : key;
134
+ if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
135
+ Object.assign(result, this.flattenMessages(value, newKey));
136
+ }
137
+ else {
138
+ result[newKey] = String(value);
139
+ }
140
+ }
141
+ return result;
142
+ }
89
143
  /**
90
144
  * Deep merge two objects
91
145
  * App messages override core messages at leaf level
@@ -1 +1 @@
1
- {"version":3,"file":"message-loader.service.js","sourceRoot":"","sources":["../../../src/i18n/services/message-loader.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message-loader.service.js","sourceRoot":"","sources":["../../../src/i18n/services/message-loader.service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"module.decorator.d.ts","sourceRoot":"","sources":["../../src/module/module.decorator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAE3C,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,SAAS,CAAA;AAEtD,eAAO,MAAM,kBAAkB,eAA2B,CAAA;AAU1D;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,aAAa,IACnC,SAAS,SAAS,QAAQ,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,EAAE,QAAQ,SAAS,KAAG,SAAS,CAcpG;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,GAAG,aAAa,GAAG,SAAS,CAE/E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,WAAW,CAKpE"}
1
+ {"version":3,"file":"module.decorator.d.ts","sourceRoot":"","sources":["../../src/module/module.decorator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAE3C,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,SAAS,CAAA;AAEtD,eAAO,MAAM,kBAAkB,eAAuC,CAAA;AAUtE;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,aAAa,IACnC,SAAS,SAAS,QAAQ,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,EAAE,QAAQ,SAAS,KAAG,SAAS,CAcpG;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,GAAG,aAAa,GAAG,SAAS,CAE/E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,WAAW,CAKpE"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import { instancePerContainerCachingFactory, registry } from 'tsyringe';
8
8
  import { InvalidModuleProviderError } from './errors';
9
- export const MODULE_OPTIONS_KEY = Symbol('module:options');
9
+ export const MODULE_OPTIONS_KEY = Symbol.for('stratal:module:options');
10
10
  /**
11
11
  * `@Module` decorator - defines a module with imports, providers, controllers, consumers, jobs
12
12
  *
@@ -1 +1 @@
1
- {"version":3,"file":"module.decorator.js","sourceRoot":"","sources":["../../src/module/module.decorator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,kCAAkC,EAAkB,QAAQ,EAAE,MAAM,UAAU,CAAA;AAIvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAA;AAGrD,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAA;AAU1D;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,MAAM,CAAC,OAAsB;IAC3C,OAAO,CAA+D,MAAiB,EAAa,EAAE;QACpG,0CAA0C;QAC1C,OAAO,CAAC,cAAc,CAAC,kBAAkB,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAE3D,iDAAiD;QACjD,MAAM,eAAe,GAAG,oBAAoB,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;QAErE,oDAAoD;QACpD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,QAAQ,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;QACnC,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAmB;IAClD,OAAO,OAAO,CAAC,WAAW,CAAC,kBAAkB,EAAE,MAAM,CAA8B,CAAA;AACrF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,MAAe;IAC3C,OAAO,CACL,OAAO,MAAM,KAAK,UAAU;QAC5B,OAAO,CAAC,WAAW,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAChD,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,SAAqB;IACjD,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAiB,EAAE;QAC/C,6CAA6C;QAC7C,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE,CAAC;YACnC,OAAO;gBACL,KAAK,EAAE,QAA0B;gBACjC,QAAQ,EAAE,QAAQ;aACnB,CAAA;QACH,CAAC;QAED,oCAAoC;QACpC,IAAI,UAAU,IAAI,QAAQ,EAAE,CAAC;YAC3B,OAAO;gBACL,KAAK,EAAE,QAAQ,CAAC,OAAyB;gBACzC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,OAAO,EAAE,QAAQ,CAAC,KAAK,KAAK,SAAS;oBACnC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,KAA6B,EAAE;oBACvD,CAAC,CAAC,SAAS;aACd,CAAA;QACH,CAAC;QAED,oEAAoE;QACpE,IAAI,UAAU,IAAI,QAAQ,EAAE,CAAC;YAC3B,OAAO;gBACL,KAAK,EAAE,QAAQ,CAAC,OAAyB;gBACzC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;aAC5B,CAAA;QACH,CAAC;QAED,+DAA+D;QAC/D,qEAAqE;QACrE,gCAAgC;QAChC,IAAI,YAAY,IAAI,QAAQ,EAAE,CAAC;YAC7B,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,QAAQ,CAAA;YACrD,OAAO;gBACL,KAAK,EAAE,OAAyB;gBAChC,UAAU,EAAE,kCAAkC,CAAC,CAAC,mBAAwC,EAAU,EAAE;oBAClG,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;oBACtE,OAAO,UAAU,CAAC,GAAG,IAAI,CAAW,CAAA;gBACtC,CAAC,CAAC;aACH,CAAA;QACH,CAAC;QAED,uEAAuE;QACvE,IAAI,aAAa,IAAI,QAAQ,EAAE,CAAC;YAC9B,OAAO;gBACL,KAAK,EAAE,QAAQ,CAAC,OAAyB;gBACzC,QAAQ,EAAE,QAAQ,CAAC,WAA6B;aACjD,CAAA;QACH,CAAC;QAED,qDAAqD;QACrD,MAAM,IAAI,0BAA0B,CAAC,QAAQ,CAAC,CAAA;IAChD,CAAC,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"module.decorator.js","sourceRoot":"","sources":["../../src/module/module.decorator.ts"],"names":[],"mappings":"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"}
@@ -11,12 +11,12 @@ export const ROUTER_CONTEXT_KEYS = {
11
11
  * Using symbols to avoid collisions with other decorators
12
12
  */
13
13
  export const ROUTE_METADATA_KEYS = {
14
- CONTROLLER_ROUTE: Symbol('controller:route'),
15
- CONTROLLER_OPTIONS: Symbol('controller:options'),
16
- CONTROLLER_MIDDLEWARES: Symbol('controller:middlewares'),
17
- ROUTE_CONFIG: Symbol('route:config'),
18
- DECORATED_METHODS: Symbol('decorated:methods'),
19
- AUTH_GUARD: Symbol('auth:guard')
14
+ CONTROLLER_ROUTE: Symbol.for('stratal:controller:route'),
15
+ CONTROLLER_OPTIONS: Symbol.for('stratal:controller:options'),
16
+ CONTROLLER_MIDDLEWARES: Symbol.for('stratal:controller:middlewares'),
17
+ ROUTE_CONFIG: Symbol.for('stratal:route:config'),
18
+ DECORATED_METHODS: Symbol.for('stratal:decorated:methods'),
19
+ AUTH_GUARD: Symbol.for('stratal:auth:guard')
20
20
  };
21
21
  /**
22
22
  * Security scheme identifiers for OpenAPI
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/router/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,iBAAiB,EAAE,kBAAkB;IACrC,MAAM,EAAE,QAAQ;CACyB,CAAA;AAE3C;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,gBAAgB,EAAE,MAAM,CAAC,kBAAkB,CAAC;IAC5C,kBAAkB,EAAE,MAAM,CAAC,oBAAoB,CAAC;IAChD,sBAAsB,EAAE,MAAM,CAAC,wBAAwB,CAAC;IACxD,YAAY,EAAE,MAAM,CAAC,cAAc,CAAC;IACpC,iBAAiB,EAAE,MAAM,CAAC,mBAAmB,CAAC;IAC9C,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC;CACxB,CAAA;AAEV;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,WAAW,EAAE,YAAY;IACzB,OAAO,EAAE,QAAQ;IACjB,cAAc,EAAE,eAAe;CACvB,CAAA;AAEV;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAW;IAC3C,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAW;IAC9C,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAW;IAC7C,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAW;IAChD,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAW;IACjD,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAW;CAC5C,CAAA;AAEV;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,KAAK,EAAE,GAAG;IACV,IAAI,EAAE,GAAG;IACT,MAAM,EAAE,GAAG;IACX,MAAM,EAAE,GAAG;IACX,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,GAAG;CACJ,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/router/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,iBAAiB,EAAE,kBAAkB;IACrC,MAAM,EAAE,QAAQ;CACyB,CAAA;AAE3C;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC;IACxD,kBAAkB,EAAE,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC;IAC5D,sBAAsB,EAAE,MAAM,CAAC,GAAG,CAAC,gCAAgC,CAAC;IACpE,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC;IAChD,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC;IAC1D,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC;CACpC,CAAA;AAEV;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,WAAW,EAAE,YAAY;IACzB,OAAO,EAAE,QAAQ;IACjB,cAAc,EAAE,eAAe;CACvB,CAAA;AAEV;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAW;IAC3C,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAW;IAC9C,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAW;IAC7C,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAW;IAChD,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAW;IACjD,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAW;CAC5C,CAAA;AAEV;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,KAAK,EAAE,GAAG;IACV,IAAI,EAAE,GAAG;IACT,MAAM,EAAE,GAAG;IACX,MAAM,EAAE,GAAG;IACX,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,GAAG;CACJ,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stratal",
3
- "version": "0.0.2",
3
+ "version": "0.0.4",
4
4
  "description": "A modular Cloudflare Workers framework with dependency injection, queue-based events, and type-safe configuration",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -29,6 +29,10 @@
29
29
  "engines": {
30
30
  "node": ">=18.0.0"
31
31
  },
32
+ "publishConfig": {
33
+ "access": "public",
34
+ "provenance": true
35
+ },
32
36
  "files": [
33
37
  "dist",
34
38
  "README.md"
@@ -57,10 +61,6 @@
57
61
  "./*": {
58
62
  "types": "./dist/*/index.d.ts",
59
63
  "import": "./dist/*/index.js"
60
- },
61
- "./polyfills": {
62
- "types": "./dist/polyfills/index.d.ts",
63
- "import": "./dist/polyfills/index.js"
64
64
  }
65
65
  },
66
66
  "scripts": {
@@ -74,6 +74,7 @@
74
74
  "bench:json": "vitest bench --run --outputJson benchmark-results.json",
75
75
  "test": "vitest run",
76
76
  "test:watch": "vitest",
77
+ "test:integration": "vitest run --project workerd",
77
78
  "test:coverage": "vitest run --coverage",
78
79
  "lint": "npx eslint .",
79
80
  "lint:fix": "npx eslint --fix ."
@@ -136,7 +137,7 @@
136
137
  "@cloudflare/vitest-pool-workers": "^0.12.18",
137
138
  "@cloudflare/workers-types": "4.20260228.1",
138
139
  "@react-email/components": "^1.0.8",
139
- "@stratal/testing": "workspace:*",
140
+ "@stratal/testing": "0.0.4",
140
141
  "@tus/server": "^2.3.0",
141
142
  "@types/node": "^25.3.2",
142
143
  "@types/nodemailer": "^7.0.11",
@@ -148,6 +149,6 @@
148
149
  "react-dom": "^19.2.4",
149
150
  "resend": "^6.9.3",
150
151
  "typescript": "^5.9.3",
151
- "vitest": "~3.2.4"
152
+ "vitest": "~3.2.0"
152
153
  }
153
- }
154
+ }