@onroad/core 4.0.0-alpha.2 → 4.0.0-alpha.21

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 (54) hide show
  1. package/README.md +409 -7
  2. package/dist/OnRoadExpress.d.ts.map +1 -1
  3. package/dist/OnRoadExpress.js +19 -6
  4. package/dist/OnRoadExpress.js.map +1 -1
  5. package/dist/container/Container.d.ts +1 -1
  6. package/dist/container/Container.d.ts.map +1 -1
  7. package/dist/container/Container.js +15 -6
  8. package/dist/container/Container.js.map +1 -1
  9. package/dist/core/AbstractController.d.ts +11 -0
  10. package/dist/core/AbstractController.d.ts.map +1 -1
  11. package/dist/core/AbstractController.js +65 -1
  12. package/dist/core/AbstractController.js.map +1 -1
  13. package/dist/core/AbstractService.d.ts +17 -0
  14. package/dist/core/AbstractService.d.ts.map +1 -1
  15. package/dist/core/AbstractService.js +50 -0
  16. package/dist/core/AbstractService.js.map +1 -1
  17. package/dist/core/SequelizeRepository.d.ts +4 -1
  18. package/dist/core/SequelizeRepository.d.ts.map +1 -1
  19. package/dist/core/SequelizeRepository.js +22 -1
  20. package/dist/core/SequelizeRepository.js.map +1 -1
  21. package/dist/core/index.d.ts +1 -1
  22. package/dist/core/index.d.ts.map +1 -1
  23. package/dist/database/ConnectionManager.d.ts +2 -0
  24. package/dist/database/ConnectionManager.d.ts.map +1 -1
  25. package/dist/database/ConnectionManager.js +12 -1
  26. package/dist/database/ConnectionManager.js.map +1 -1
  27. package/dist/dev/DevServer.d.ts +67 -0
  28. package/dist/dev/DevServer.d.ts.map +1 -0
  29. package/dist/dev/DevServer.js +496 -0
  30. package/dist/dev/DevServer.js.map +1 -0
  31. package/dist/dev/MigrationCLI.d.ts +19 -0
  32. package/dist/dev/MigrationCLI.d.ts.map +1 -0
  33. package/dist/dev/MigrationCLI.js +140 -0
  34. package/dist/dev/MigrationCLI.js.map +1 -0
  35. package/dist/dev/index.d.ts +5 -0
  36. package/dist/dev/index.d.ts.map +1 -0
  37. package/dist/dev/index.js +3 -0
  38. package/dist/dev/index.js.map +1 -0
  39. package/dist/entity/EntityRegistry.d.ts +26 -0
  40. package/dist/entity/EntityRegistry.d.ts.map +1 -1
  41. package/dist/entity/EntityRegistry.js +140 -4
  42. package/dist/entity/EntityRegistry.js.map +1 -1
  43. package/dist/entity/decorators.d.ts +1 -0
  44. package/dist/entity/decorators.d.ts.map +1 -1
  45. package/dist/entity/decorators.js.map +1 -1
  46. package/dist/filters/builtins/JwtFilter.d.ts +6 -3
  47. package/dist/filters/builtins/JwtFilter.d.ts.map +1 -1
  48. package/dist/filters/builtins/JwtFilter.js +29 -4
  49. package/dist/filters/builtins/JwtFilter.js.map +1 -1
  50. package/dist/index.d.ts +3 -1
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/index.js +2 -0
  53. package/dist/index.js.map +1 -1
  54. package/package.json +5 -1
package/README.md CHANGED
@@ -25,6 +25,8 @@
25
25
  - [Storage](#storage)
26
26
  - [Health Endpoint](#health-endpoint)
27
27
  - [Graceful Shutdown](#graceful-shutdown)
28
+ - [Local Development (DevServer)](#local-development-devserver)
29
+ - [Migration CLI](#migration-cli)
28
30
  - [Testing](#testing)
29
31
  - [Subpath Exports](#subpath-exports)
30
32
  - [Known Pitfalls](#known-pitfalls)
@@ -601,7 +603,7 @@ await app.shutdown()
601
603
 
602
604
  ## Testing
603
605
 
604
- TypeRoad uses [Vitest](https://vitest.dev/) with **223 tests** across 9 test files:
606
+ TypeRoad uses [Vitest](https://vitest.dev/) with **242 tests** across 10 test files:
605
607
 
606
608
  ```bash
607
609
  npm test # Run all tests
@@ -611,7 +613,7 @@ npm run test:coverage # Coverage report
611
613
 
612
614
  | Test File | Tests | Covers |
613
615
  |-----------|-------|--------|
614
- | `container.test.ts` | 16 | DI Container, decorators, scopes |
616
+ | `container.test.ts` | 19 | DI Container, decorators, scopes |
615
617
  | `entity.test.ts` | 14 | Entity, Column, associations |
616
618
  | `database.test.ts` | 13 | ConnectionManagers |
617
619
  | `filters.test.ts` | 33 | FilterChain, all 5 built-in filters |
@@ -620,6 +622,7 @@ npm run test:coverage # Coverage report
620
622
  | `logging.test.ts` | 20 | PinoLogger, OnRoadLogger |
621
623
  | `providers.test.ts` | 41 | All 4 providers, graceful-fail, shutdown |
622
624
  | `transport.test.ts` | 25 | HttpTransport, MessagingTransport, TransportFactory, RequestContext |
625
+ | `dev.test.ts` | 16 | DevServer, MigrationCLI |
623
626
 
624
627
  ---
625
628
 
@@ -632,21 +635,184 @@ src/
632
635
  ├── container/ # DI Container + decorators
633
636
  ├── context/ # RequestContext (AsyncLocalStorage)
634
637
  ├── core/ # AbstractController/Service/Repository, Sentinel, EventBus
638
+ ├── database/ # ConnectionManager abstract + Sequelize/Mongo implementations
639
+ │ └── migrations/ # MigrationRunner (Umzug)
640
+ ├── dev/ # DevServer, MigrationCLI — local dev tools
635
641
  ├── entity/ # @Entity, @Column, @Field, associations
636
642
  ├── filters/ # FilterChain, @Filter, built-in filters (Cors, JWT, Tenant, Role, RequestContext)
637
- ├── security/ # @Roles, @Public
638
- ├── database/ # ConnectionManager abstract + Sequelize/Mongo implementations
639
- ├── transport/ # InterServiceTransport, HttpTransport, MessagingTransport, TransportFactory
640
- ├── messaging/ # MatchingObject
641
- ├── providers/ # MessagingProvider, RealtimeProvider, TaskSchedulerProvider, SocketProvider
642
643
  ├── logging/ # OnRoadLogger interface + PinoLogger
644
+ ├── messaging/ # MatchingObject
643
645
  ├── plugins/ # OnRoadPlugin interface
646
+ ├── providers/ # MessagingProvider, RealtimeProvider, TaskSchedulerProvider, SocketProvider
647
+ ├── security/ # @Roles, @Public
644
648
  ├── storage/ # StorageProvider abstract
649
+ ├── transport/ # InterServiceTransport, HttpTransport, MessagingTransport, TransportFactory
645
650
  └── types/ # Express Request augmentation
646
651
  ```
647
652
 
648
653
  ---
649
654
 
655
+ ## Local Development (DevServer)
656
+
657
+ TypeRoad includes a `DevServer` that makes local development self-sufficient — it starts database containers, runs migrations, and logs all environment variables your frontend needs.
658
+
659
+ ### Quick Start
660
+
661
+ ```ts
662
+ import "reflect-metadata"
663
+ import { OnRoadExpress } from "@onroad/core"
664
+ import { SequelizeConnectionManager } from "@onroad/core/database"
665
+ import { DevServer } from "@onroad/core/dev"
666
+
667
+ const app = new OnRoadExpress({
668
+ connections: [
669
+ new SequelizeConnectionManager({
670
+ dialect: "postgres",
671
+ host: "localhost",
672
+ port: 5432,
673
+ user: "typeroad",
674
+ password: "typeroad_dev",
675
+ database: "typeroad_dev",
676
+ migrations: {
677
+ path: "./src/migrations",
678
+ runOnConnect: true,
679
+ },
680
+ }),
681
+ ],
682
+ })
683
+
684
+ // Register your controllers, services, repositories...
685
+ app.register([/* ... */])
686
+
687
+ const devServer = new DevServer({
688
+ app,
689
+ databases: [{ engine: "postgres", port: 5432 }],
690
+ migrationsPath: "./src/migrations",
691
+ tenants: ["default"],
692
+ frontendVars: {
693
+ REACT_APP_TENANT: "default",
694
+ REACT_APP_WS_URL: "ws://localhost:3000",
695
+ },
696
+ })
697
+
698
+ await devServer.start({ port: 3000 })
699
+ // Press Ctrl+C to stop
700
+ ```
701
+
702
+ ### What DevServer Does
703
+
704
+ 1. **Generates `docker-compose.dev.yml`** — PostgreSQL (or MySQL) container with healthcheck, volumes, and sensible defaults
705
+ 2. **Starts the container** — `docker compose up -d` automatically
706
+ 3. **Waits for readiness** — polls `pg_isready` / `mysqladmin ping` until the DB accepts connections
707
+ 4. **Runs migrations** — applies all pending Umzug migrations from your configured path
708
+ 5. **Starts the API server** — calls `app.buildServer()` as usual
709
+ 6. **Logs frontend env vars** — prints a copy-pasteable block and writes `.env.dev`:
710
+
711
+ ```
712
+ ┌──────────────────────────────────────────────────────────────┐
713
+ │ FRONTEND ENVIRONMENT VARIABLES │
714
+ ├──────────────────────────────────────────────────────────────┤
715
+ │ REACT_APP_API_URL=http://localhost:3000
716
+ │ NEXT_PUBLIC_API_URL=http://localhost:3000
717
+ │ VITE_API_URL=http://localhost:3000
718
+ │ DATABASE_URL=postgresql://typeroad:typeroad_dev@localhost:5432/typeroad_dev
719
+ │ REACT_APP_TENANT=default
720
+ └──────────────────────────────────────────────────────────────┘
721
+ ```
722
+
723
+ ### DevServer Config
724
+
725
+ | Option | Type | Default | Description |
726
+ |--------|------|---------|-------------|
727
+ | `app` | `OnRoadExpress` | required | The app instance |
728
+ | `databases` | `DevDatabaseConfig[]` | `[{ engine: "postgres" }]` | Database containers to start |
729
+ | `frontendVars` | `Record<string, string>` | `{}` | Extra vars to log for frontend |
730
+ | `migrationsPath` | `string` | — | Path to migration files |
731
+ | `autoMigrate` | `boolean` | `true` | Run migrations on start |
732
+ | `tenants` | `string[]` | `["default"]` | Tenants to run migrations for |
733
+ | `composeFile` | `string` | `"docker-compose.dev.yml"` | Docker compose filename |
734
+
735
+ ### Database Defaults
736
+
737
+ | Engine | Image | Port | User | Password | Database |
738
+ |--------|-------|------|------|----------|----------|
739
+ | `postgres` | `postgres:16-alpine` | `5432` | `typeroad` | `typeroad_dev` | `typeroad_dev` |
740
+ | `mysql` | `mysql:8.0` | `3306` | `typeroad` | `typeroad_dev` | `typeroad_dev` |
741
+
742
+ ---
743
+
744
+ ## Migration CLI
745
+
746
+ The `MigrationCLI` class provides a programmatic API for managing database migrations.
747
+
748
+ ### Usage
749
+
750
+ ```ts
751
+ import { MigrationCLI } from "@onroad/core/dev"
752
+ import { SequelizeConnectionManager } from "@onroad/core/database"
753
+
754
+ const connection = new SequelizeConnectionManager({
755
+ dialect: "postgres",
756
+ host: "localhost",
757
+ user: "typeroad",
758
+ password: "typeroad_dev",
759
+ database: "typeroad_dev",
760
+ migrations: { path: "./src/migrations" },
761
+ })
762
+
763
+ const cli = new MigrationCLI({
764
+ migrationsPath: "./src/migrations",
765
+ connection,
766
+ tenant: "default",
767
+ })
768
+
769
+ // Run from CLI args
770
+ await cli.run() // reads process.argv
771
+
772
+ // Or call directly
773
+ cli.create("add-users-table") // creates timestamped migration file
774
+ await cli.up() // apply all pending
775
+ await cli.up(1) // apply 1 step
776
+ await cli.down() // revert last migration
777
+ await cli.status() // show status table
778
+ ```
779
+
780
+ ### CLI Commands
781
+
782
+ | Command | Description | Example |
783
+ |---------|-------------|---------|
784
+ | `create <name>` | Create a new migration file | `cli.run(["create", "add-orders"])` |
785
+ | `up [steps]` | Apply pending migrations | `cli.run(["up"])` or `cli.run(["up", "3"])` |
786
+ | `down [steps]` | Revert migrations (default: 1) | `cli.run(["down", "2"])` |
787
+ | `status` | Show applied/pending status | `cli.run(["status"])` |
788
+
789
+ ### Migration File Format
790
+
791
+ Generated `.ts` files follow the Umzug/Sequelize pattern:
792
+
793
+ ```ts
794
+ import type { QueryInterface, Sequelize } from "sequelize"
795
+
796
+ export default {
797
+ async up(queryInterface: QueryInterface, sequelize: Sequelize): Promise<void> {
798
+ await queryInterface.createTable("ordens", {
799
+ id: { type: sequelize.constructor["DataTypes"].UUID, primaryKey: true },
800
+ descricao: { type: sequelize.constructor["DataTypes"].STRING, allowNull: false },
801
+ createdAt: sequelize.constructor["DataTypes"].DATE,
802
+ updatedAt: sequelize.constructor["DataTypes"].DATE,
803
+ })
804
+ },
805
+
806
+ async down(queryInterface: QueryInterface): Promise<void> {
807
+ await queryInterface.dropTable("ordens")
808
+ },
809
+ }
810
+ ```
811
+
812
+ Migration state is tracked in the `__typeroad_migrations` table (configurable via `tableName` in `MigrationConfig`).
813
+
814
+ ---
815
+
650
816
  ## Subpath Exports
651
817
 
652
818
  Import only what you need:
@@ -662,6 +828,7 @@ import { HttpTransport, TransportFactory } from "@onroad/core/transport" // Tran
662
828
  import { MatchingObject } from "@onroad/core/messaging" // Messaging
663
829
  import { PinoLogger } from "@onroad/core/logging" // Logging
664
830
  import { StorageProvider } from "@onroad/core/storage" // Storage
831
+ import { DevServer, MigrationCLI } from "@onroad/core/dev" // Dev Tools
665
832
  ```
666
833
 
667
834
  ---
@@ -763,6 +930,241 @@ export class UserRepository extends BaseRepository<User> {
763
930
 
764
931
  ---
765
932
 
933
+ ### `import type` with relationship decorators
934
+
935
+ TypeScript's `import type` is erased at compile time. If you use `import type { Foo }` and then reference `Foo` as a **runtime value** inside a decorator like `@HasMany(() => Foo, ...)`, the compiled JavaScript will throw `ReferenceError: Foo is not defined` because the import was stripped.
936
+
937
+ ```ts
938
+ // ❌ Wrong — import type is erased, decorator callback fails at runtime
939
+ import type { CampoDeVerificacao } from "./CampoDeVerificacao.js"
940
+
941
+ @Entity("caderno", { engine: "sequelize" })
942
+ export class CadernoDeVerificacao {
943
+ @HasMany(() => CampoDeVerificacao, "cadernoId") // 💥 ReferenceError
944
+ campos!: CampoDeVerificacao[]
945
+ }
946
+ ```
947
+
948
+ Fix: use a regular `import` for any class referenced inside a decorator callback:
949
+
950
+ ```ts
951
+ // ✅ Correct — regular import keeps the binding at runtime
952
+ import { CampoDeVerificacao } from "./CampoDeVerificacao.js"
953
+
954
+ @Entity("caderno", { engine: "sequelize" })
955
+ export class CadernoDeVerificacao {
956
+ @HasMany(() => CampoDeVerificacao, "cadernoId")
957
+ campos!: CampoDeVerificacao[]
958
+ }
959
+ ```
960
+
961
+ > **Tip:** `import type` is safe for type annotations and generics (`extends AbstractService<Foo>`), but never for decorator arguments, `instanceof`, or any expression evaluated at runtime.
962
+
963
+ ---
964
+
965
+ ### `emitDecoratorMetadata` causes TDZ errors with circular entity imports
966
+
967
+ When `emitDecoratorMetadata: true` is set in `tsconfig.json`, TypeScript emits `__metadata("design:type", CampoDeVerificacao)` for decorated properties. This accesses the imported class **at class definition time**. If two entities import each other (circular dependency), ESM module evaluation order causes a **Temporal Dead Zone (TDZ)** error:
968
+
969
+ ```
970
+ ReferenceError: Cannot access 'CampoDeVerificacao' before initialization
971
+ ```
972
+
973
+ The `@HasMany(() => Foo, ...)` arrow function is lazy (only called later by `wireSequelizeAssociations`), but `__metadata("design:type", Foo)` is **eager** — it runs during class definition.
974
+
975
+ ```jsonc
976
+ // ❌ Wrong — causes TDZ crash in circular ESM imports
977
+ {
978
+ "compilerOptions": {
979
+ "experimentalDecorators": true,
980
+ "emitDecoratorMetadata": true // 💥
981
+ }
982
+ }
983
+ ```
984
+
985
+ Fix: disable `emitDecoratorMetadata`. @onroad/core uses only custom metadata keys (`METADATA_KEY.ENTITY`, `ENTITY_COLUMNS`, etc.) and does **not** rely on `design:type`, `design:paramtypes`, or `design:returntype`.
986
+
987
+ ```jsonc
988
+ // ✅ Correct — no TDZ, decorators still work
989
+ {
990
+ "compilerOptions": {
991
+ "experimentalDecorators": true,
992
+ "emitDecoratorMetadata": false
993
+ }
994
+ }
995
+ ```
996
+
997
+ ---
998
+
999
+ ## Migration Guide — Lessons Learned (v3 → v4)
1000
+
1001
+ This section documents the key issues found while migrating `teraprox-api-user` from onRoad v3 to TypeRoad v4. Use this as a checklist when migrating other APIs (`api-manutencao`, `api-processo`, etc.).
1002
+
1003
+ ### 1. Entity Associations — Use Decorators, Not `buildAssociations()`
1004
+
1005
+ v3 used `buildAssociations()` inside repositories. v4 uses decorators on entity classes. **Every association must be declared on the entity itself.**
1006
+
1007
+ ```ts
1008
+ // ❌ v3 — Repository-based associations (REMOVE)
1009
+ class UserRepository extends BaseRepository {
1010
+ buildAssociations() {
1011
+ this.hasMany(UserRole, "userRole")
1012
+ this.belongsTo(Company, "company")
1013
+ }
1014
+ }
1015
+
1016
+ // ✅ v4 — Entity decorator associations
1017
+ @Entity("user", { engine: "sequelize", timestamps: true })
1018
+ class User {
1019
+ @HasMany(() => UserRole, "userId")
1020
+ userRole!: UserRole[]
1021
+
1022
+ @BelongsToMany(() => Company, () => UserCompany, "userId", "companyId")
1023
+ companies!: Company[]
1024
+ }
1025
+ ```
1026
+
1027
+ **Checklist per entity:**
1028
+ - Join table entities (e.g. `UserRole`, `UserSetor`, `UserCompany`) **must** declare their FK columns with `@Column` AND the `@BelongsTo` back-reference.
1029
+
1030
+ ```ts
1031
+ @Entity("userRole", { engine: "sequelize", timestamps: true })
1032
+ class UserRole {
1033
+ @Column({ type: DataType.STRING })
1034
+ userId!: string
1035
+
1036
+ @Column({ type: DataType.STRING })
1037
+ roleId!: string
1038
+
1039
+ @BelongsTo(() => Role, "roleId")
1040
+ role!: Role
1041
+ }
1042
+ ```
1043
+
1044
+ ### 2. Includes — Use String-Based Associations, Not Model References
1045
+
1046
+ v3 used `this.repository.fullAssociation` (injected array of `{ model: SequelizeModel }`).
1047
+ v4 uses **string-based `association` names** that match the decorator property name.
1048
+
1049
+ ```ts
1050
+ // ❌ v3 — model-based includes (CRASH: model is a raw class, not Sequelize model)
1051
+ const user = await this.repository.findOne({
1052
+ where: { email },
1053
+ include: this.repository.fullAssociation
1054
+ })
1055
+
1056
+ // ✅ v4 — string-based association includes
1057
+ const USER_FULL_INCLUDE = [
1058
+ { association: "filters" },
1059
+ { association: "tickets" },
1060
+ { association: "userRole" },
1061
+ { association: "userSetor" }
1062
+ ]
1063
+ const user = await this.repository.findOne({
1064
+ where: { email },
1065
+ include: USER_FULL_INCLUDE
1066
+ })
1067
+ ```
1068
+
1069
+ **Nested includes follow the same pattern:**
1070
+ ```ts
1071
+ include: [
1072
+ {
1073
+ association: "userRole",
1074
+ include: [{ association: "role", where: { companyId }, required: false }]
1075
+ },
1076
+ {
1077
+ association: "userSetor",
1078
+ include: [{ association: "setor", where: { companyId }, required: false }]
1079
+ }
1080
+ ]
1081
+ ```
1082
+
1083
+ ### 3. Raw Queries — Use `getSequelizeConnection()`
1084
+
1085
+ v3 accessed `(this.repository as any).connection.query(...)`.
1086
+ v4 exposes this through `BaseRepository.getSequelizeConnection()`.
1087
+
1088
+ ```ts
1089
+ // ❌ v3
1090
+ const [results] = await (this.repository as any).connection.query(sql)
1091
+
1092
+ // ✅ v4 — add this method to your BaseRepository
1093
+ getSequelizeConnection() { return this.getConnection() }
1094
+
1095
+ // Usage in service:
1096
+ const [results] = await this.repository.getSequelizeConnection().query(sql)
1097
+ ```
1098
+
1099
+ ### 4. Remove `fullAssociation` from BaseRepository
1100
+
1101
+ v3 APIs declare `fullAssociation` on `BaseRepository`. **Remove it entirely** — v4 does not use it. Includes are now inline at the query site.
1102
+
1103
+ ```ts
1104
+ // ❌ v3
1105
+ export abstract class BaseRepository<T> extends SequelizeRepository<T> {
1106
+ declare readonly fullAssociation: any[]
1107
+ }
1108
+
1109
+ // ✅ v4
1110
+ export abstract class BaseRepository<T> extends SequelizeRepository<T> {
1111
+ // No fullAssociation — define includes where you query
1112
+ }
1113
+ ```
1114
+
1115
+ ### 5. Controller Return Values Are Auto-Serialized
1116
+
1117
+ v4's `OnRoadExpress` automatically calls `res.json(result)` when a controller method returns a value and `res.headersSent` is false. **Do not manually call `res.json()` in controllers if you return a value** — it will cause "headers already sent" errors.
1118
+
1119
+ ```ts
1120
+ // ✅ Just return the value — framework serializes it
1121
+ async login(form: any, req: Request, res: Response) {
1122
+ const userData = await this.service.login(form, req, res)
1123
+ return userData // Framework calls res.json(userData)
1124
+ }
1125
+ ```
1126
+
1127
+ ### 6. `BelongsToMany` Includes — Beware of Query Hangs
1128
+
1129
+ Using `BelongsToMany` associations (like `User ↔ Company` through `UserCompany`) in Sequelize `include` can cause queries to hang with large datasets or complex joins. **Avoid including BelongsToMany in default/frequent queries.** Use it only in specific methods that need it, and consider raw SQL queries for performance-critical paths.
1130
+
1131
+ ### 7. Common Migration Search Patterns
1132
+
1133
+ When migrating an API, search for these patterns and replace them:
1134
+
1135
+ | Search Pattern | Replace With |
1136
+ |---|---|
1137
+ | `this.repository.fullAssociation` | Inline `[{ association: "..." }]` array |
1138
+ | `(this.xxxRepo as any).model` | `{ association: "aliasName" }` |
1139
+ | `(this.xxxRepo as any).xxxRepo` | `{ association: "aliasName" }` |
1140
+ | `(this.repository as any).connection` | `this.repository.getSequelizeConnection()` |
1141
+ | `buildAssociations()` | `@HasMany`, `@BelongsTo`, `@HasOne`, `@BelongsToMany` on entity |
1142
+ | `{ model: SomeClass, as: "..." }` | `{ association: "..." }` |
1143
+
1144
+ ### 8. `ARRAY` Column Type
1145
+
1146
+ For PostgreSQL `varchar[]` columns, use the custom `arrayType` option:
1147
+
1148
+ ```ts
1149
+ @Column({ type: DataType.ARRAY, arrayType: DataType.STRING })
1150
+ componentesBloqueados!: string[]
1151
+ ```
1152
+
1153
+ ### 9. Env & Local Dev Setup
1154
+
1155
+ Each API needs a `.env` at its server root with:
1156
+ - `LOCAL_NO_JWT=true` — skips JWT validation for local dev
1157
+ - DB connection vars (`DB_HOST`, `DB_PORT`, `DB_USER`, `DB_PASSWORD`, `DBNAME`)
1158
+ - `TOKEN_KEY` — any string for local token signing
1159
+ - `API_PORT` — local port for the service
1160
+
1161
+ Use `cloud-sql-proxy` for connecting to GCP Cloud SQL locally:
1162
+ ```bash
1163
+ ./cloud-sql-proxy <PROJECT>:<REGION>:<INSTANCE> --port=5432
1164
+ ```
1165
+
1166
+ ---
1167
+
766
1168
  ## License
767
1169
 
768
1170
  UNLICENSED — HashCodeTI-Brasil
@@ -1 +1 @@
1
- {"version":3,"file":"OnRoadExpress.d.ts","sourceRoot":"","sources":["../src/OnRoadExpress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OnRoadExpress.d.ts","sourceRoot":"","sources":["../src/OnRoadExpress.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,12 @@ import "reflect-metadata";
2
2
  import express from "express";
3
3
  import { createServer } from "http";
4
4
  import { v4 as uuidv4 } from "uuid";
5
- import { OnRoadContainer } from "./container/Container.js";
5
+ import { OnRoadContainer, METADATA_KEY } from "./container/Container.js";
6
6
  import { FilterChain, getFilterConfig, isFilterInstance, getFilterConstructor } from "./filters/FilterChain.js";
7
7
  import { getRoles } from "./security/decorators.js";
8
8
  import { RequestEventBus } from "./core/RequestEventBus.js";
9
9
  import { TransportFactory } from "./transport/TransportFactory.js";
10
+ import { EntityRegistry } from "./entity/EntityRegistry.js";
10
11
  import { PinoLogger } from "./logging/PinoLogger.js";
11
12
  import { requestContext } from "./context/RequestContext.js";
12
13
  // --- Main Class ---
@@ -109,6 +110,11 @@ export class OnRoadExpress {
109
110
  // --- Module registration ---
110
111
  register(modules) {
111
112
  this.container.scan(modules);
113
+ // Register entity classes with EntityRegistry for association wiring
114
+ const entityClasses = modules.filter((mod) => Reflect.getMetadata(METADATA_KEY.ENTITY, mod) !== undefined);
115
+ if (entityClasses.length > 0) {
116
+ EntityRegistry.registerEntityClasses(entityClasses);
117
+ }
112
118
  // Auto-discover @Filter decorated classes
113
119
  for (const mod of modules) {
114
120
  const filterConfig = getFilterConfig(mod);
@@ -153,16 +159,18 @@ export class OnRoadExpress {
153
159
  const chain = FilterChain.create(filterInstances);
154
160
  try {
155
161
  await chain.next(req, res);
156
- next();
162
+ if (!res.headersSent)
163
+ next();
157
164
  }
158
165
  catch (err) {
159
- next(err);
166
+ if (!res.headersSent)
167
+ next(err);
160
168
  }
161
169
  });
162
170
  }
163
171
  // Apply registered controllers as routes
164
172
  const tenantResolver = config.tenantResolver ?? ((req) => {
165
- return req.headers["x-tenant-id"] ?? "default";
173
+ return req.tenant ?? req.headers["x-tenant-id"] ?? "default";
166
174
  });
167
175
  const controllers = this.container.getByType("controller");
168
176
  for (const meta of controllers) {
@@ -173,7 +181,9 @@ export class OnRoadExpress {
173
181
  const tempInstance = new meta.target();
174
182
  const routes = tempInstance.getRoutes();
175
183
  for (const [methodName, routeConfig] of Object.entries(routes)) {
176
- const fullPath = ("/" + basePath + "/" + (routeConfig.path ?? "")).replace(/\/+/g, "/");
184
+ const fullPath = routeConfig.absolutePath
185
+ ? routeConfig.absolutePath
186
+ : ("/" + basePath + "/" + (routeConfig.path ?? "")).replace(/\/+/g, "/");
177
187
  const httpMethod = routeConfig.method;
178
188
  this.app[httpMethod](fullPath, (req, res, next) => {
179
189
  const tenant = tenantResolver(req);
@@ -200,7 +210,10 @@ export class OnRoadExpress {
200
210
  }
201
211
  // Call the controller method
202
212
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
203
- await controller[methodName](req, res, next);
213
+ const result = await controller[methodName](req, res, next);
214
+ if (result !== undefined && !res.headersSent) {
215
+ res.json(result);
216
+ }
204
217
  }
205
218
  catch (err) {
206
219
  next(err);
@@ -1 +1 @@
1
- {"version":3,"file":"OnRoadExpress.js","sourceRoot":"","sources":["../src/OnRoadExpress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OnRoadExpress.js","sourceRoot":"","sources":["../src/OnRoadExpress.ts"],"names":[],"mappings":"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"}
@@ -43,7 +43,7 @@ export declare class OnRoadContainer {
43
43
  registerConnectionManager(engine: string, manager: unknown): void;
44
44
  scan(modules: Constructor[]): void;
45
45
  resolve<T>(token: Constructor<T>, scope?: RequestScope): T;
46
- private createAndWire;
46
+ private wire;
47
47
  createScope(requestId: string, tenant?: string): RequestScope;
48
48
  getControllerPath(target: Constructor): string | undefined;
49
49
  getByType(type: ClassMetadata["type"]): ClassMetadata[];
@@ -1 +1 @@
1
- {"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../src/container/Container.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;AAEpE,oBAAY,KAAK;IACf,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,SAAS,cAAc;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,WAAW,CAAA;IACnB,KAAK,EAAE,KAAK,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,YAAY,CAAA;CACnF;AAID,QAAA,MAAM,YAAY;;;;;;;;;CASR,CAAA;AAEV,OAAO,EAAE,YAAY,EAAE,CAAA;AAIvB,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,KAAK,CAAA;CACd;AAED,wBAAgB,UAAU,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAKtE;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAM3D;AAED,wBAAgB,OAAO,IAAI,cAAc,CAMxC;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,WAAW,CAAA;CACpB;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,cAAc,CAMrE;AAID,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAChC;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,kBAAkB,CAA6B;IAEvD,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAIjE,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI;IAyBlC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY,GAAG,CAAC;IA+B1D,OAAO,CAAC,aAAa;IAqDrB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY;IAQ7D,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS;IAI1D,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,aAAa,EAAE;IAIvD,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI3B,KAAK,IAAI,IAAI;CAId"}
1
+ {"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../src/container/Container.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;AAEpE,oBAAY,KAAK;IACf,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,SAAS,cAAc;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,WAAW,CAAA;IACnB,KAAK,EAAE,KAAK,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,YAAY,CAAA;CACnF;AAID,QAAA,MAAM,YAAY;;;;;;;;;CASR,CAAA;AAEV,OAAO,EAAE,YAAY,EAAE,CAAA;AAIvB,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,KAAK,CAAA;CACd;AAED,wBAAgB,UAAU,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,cAAc,CAKtE;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAM3D;AAED,wBAAgB,OAAO,IAAI,cAAc,CAMxC;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,WAAW,CAAA;CACpB;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,cAAc,CAMrE;AAID,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAChC;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,kBAAkB,CAA6B;IAEvD,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAIjE,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI;IAyBlC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY,GAAG,CAAC;IAqC1D,OAAO,CAAC,IAAI;IAuDZ,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY;IAQ7D,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS;IAI1D,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,aAAa,EAAE;IAIvD,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI3B,KAAK,IAAI,IAAI;CAId"}