@bpinhosilva/agent-orchestrator 1.0.0-alpha.4 → 1.0.0-alpha.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.
Files changed (119) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/agents/agents.controller.js +52 -0
  3. package/dist/agents/agents.module.js +3 -0
  4. package/dist/agents/agents.service.js +48 -3
  5. package/dist/agents/dto/create-agent.dto.js +31 -0
  6. package/dist/agents/dto/update-agent.dto.js +8 -0
  7. package/dist/agents/entities/agent.entity.js +48 -0
  8. package/dist/app.module.js +14 -0
  9. package/dist/models/dto/create-model.dto.js +26 -0
  10. package/dist/models/dto/update-model.dto.js +8 -0
  11. package/dist/models/entities/model.entity.js +47 -0
  12. package/dist/models/models.controller.js +79 -0
  13. package/dist/models/models.module.js +25 -0
  14. package/dist/models/models.service.js +67 -0
  15. package/dist/providers/dto/create-provider.dto.js +26 -0
  16. package/dist/providers/dto/update-provider.dto.js +8 -0
  17. package/dist/providers/entities/provider.entity.js +44 -0
  18. package/dist/providers/providers.controller.js +79 -0
  19. package/dist/providers/providers.module.js +25 -0
  20. package/dist/providers/providers.service.js +58 -0
  21. package/dist/scripts/generate-postman.js +66 -0
  22. package/dist/scripts/generate-postman.js.map +1 -0
  23. package/dist/src/agents/agents.controller.d.ts +15 -0
  24. package/dist/src/agents/agents.controller.js +93 -0
  25. package/dist/src/agents/agents.controller.js.map +1 -0
  26. package/dist/src/agents/agents.module.js +27 -0
  27. package/dist/src/agents/agents.module.js.map +1 -0
  28. package/dist/src/agents/agents.service.d.ts +20 -0
  29. package/dist/src/agents/agents.service.js +82 -0
  30. package/dist/src/agents/agents.service.js.map +1 -0
  31. package/dist/src/agents/dto/agent-request.dto.js +23 -0
  32. package/dist/src/agents/dto/agent-request.dto.js.map +1 -0
  33. package/dist/src/agents/dto/create-agent.dto.d.ts +5 -0
  34. package/dist/src/agents/dto/create-agent.dto.js +35 -0
  35. package/dist/src/agents/dto/create-agent.dto.js.map +1 -0
  36. package/dist/src/agents/dto/update-agent.dto.d.ts +5 -0
  37. package/dist/src/agents/dto/update-agent.dto.js +9 -0
  38. package/dist/src/agents/dto/update-agent.dto.js.map +1 -0
  39. package/dist/src/agents/entities/agent.entity.d.ts +9 -0
  40. package/dist/src/agents/entities/agent.entity.js +55 -0
  41. package/dist/src/agents/entities/agent.entity.js.map +1 -0
  42. package/dist/src/agents/enums/provider.enum.d.ts +6 -0
  43. package/dist/src/agents/enums/provider.enum.js +11 -0
  44. package/dist/src/agents/enums/provider.enum.js.map +1 -0
  45. package/dist/src/agents/implementations/gemini.agent.js +60 -0
  46. package/dist/src/agents/implementations/gemini.agent.js.map +1 -0
  47. package/dist/src/agents/interfaces/agent.interface.js +3 -0
  48. package/dist/src/agents/interfaces/agent.interface.js.map +1 -0
  49. package/dist/src/app.controller.js +35 -0
  50. package/dist/src/app.controller.js.map +1 -0
  51. package/dist/src/app.module.js +46 -0
  52. package/dist/src/app.module.js.map +1 -0
  53. package/dist/src/app.service.js +20 -0
  54. package/dist/src/app.service.js.map +1 -0
  55. package/dist/src/cli.js +22 -0
  56. package/dist/src/cli.js.map +1 -0
  57. package/dist/src/main.d.ts +1 -0
  58. package/dist/{main.js → src/main.js} +8 -0
  59. package/dist/src/main.js.map +1 -0
  60. package/dist/src/models/dto/create-model.dto.d.ts +4 -0
  61. package/dist/src/models/dto/create-model.dto.js +29 -0
  62. package/dist/src/models/dto/create-model.dto.js.map +1 -0
  63. package/dist/src/models/dto/update-model.dto.d.ts +5 -0
  64. package/dist/src/models/dto/update-model.dto.js +9 -0
  65. package/dist/src/models/dto/update-model.dto.js.map +1 -0
  66. package/dist/src/models/entities/model.entity.d.ts +10 -0
  67. package/dist/src/models/entities/model.entity.js +54 -0
  68. package/dist/src/models/entities/model.entity.js.map +1 -0
  69. package/dist/src/models/models.controller.d.ts +12 -0
  70. package/dist/src/models/models.controller.js +81 -0
  71. package/dist/src/models/models.controller.js.map +1 -0
  72. package/dist/src/models/models.module.d.ts +2 -0
  73. package/dist/src/models/models.module.js +26 -0
  74. package/dist/src/models/models.module.js.map +1 -0
  75. package/dist/src/models/models.service.d.ts +13 -0
  76. package/dist/src/models/models.service.js +69 -0
  77. package/dist/src/models/models.service.js.map +1 -0
  78. package/dist/src/providers/dto/create-provider.dto.d.ts +4 -0
  79. package/dist/src/providers/dto/create-provider.dto.js +29 -0
  80. package/dist/src/providers/dto/create-provider.dto.js.map +1 -0
  81. package/dist/src/providers/dto/update-provider.dto.d.ts +5 -0
  82. package/dist/src/providers/dto/update-provider.dto.js +9 -0
  83. package/dist/src/providers/dto/update-provider.dto.js.map +1 -0
  84. package/dist/src/providers/entities/provider.entity.d.ts +9 -0
  85. package/dist/src/providers/entities/provider.entity.js +51 -0
  86. package/dist/src/providers/entities/provider.entity.js.map +1 -0
  87. package/dist/src/providers/providers.controller.d.ts +12 -0
  88. package/dist/src/providers/providers.controller.js +81 -0
  89. package/dist/src/providers/providers.controller.js.map +1 -0
  90. package/dist/src/providers/providers.module.d.ts +2 -0
  91. package/dist/src/providers/providers.module.js +26 -0
  92. package/dist/src/providers/providers.module.js.map +1 -0
  93. package/dist/src/providers/providers.service.d.ts +13 -0
  94. package/dist/src/providers/providers.service.js +60 -0
  95. package/dist/src/providers/providers.service.js.map +1 -0
  96. package/dist/tsconfig.build.tsbuildinfo +1 -1
  97. package/package.json +11 -3
  98. package/dist/agents/agents.controller.d.ts +0 -8
  99. package/dist/agents/agents.controller.js.map +0 -1
  100. package/dist/agents/agents.module.js.map +0 -1
  101. package/dist/agents/agents.service.d.ts +0 -10
  102. package/dist/agents/agents.service.js.map +0 -1
  103. package/dist/agents/dto/agent-request.dto.js.map +0 -1
  104. package/dist/agents/implementations/gemini.agent.js.map +0 -1
  105. package/dist/agents/interfaces/agent.interface.js.map +0 -1
  106. package/dist/app.controller.js.map +0 -1
  107. package/dist/app.module.js.map +0 -1
  108. package/dist/app.service.js.map +0 -1
  109. package/dist/cli.js.map +0 -1
  110. package/dist/main.js.map +0 -1
  111. /package/dist/{main.d.ts → scripts/generate-postman.d.ts} +0 -0
  112. /package/dist/{agents → src/agents}/agents.module.d.ts +0 -0
  113. /package/dist/{agents → src/agents}/dto/agent-request.dto.d.ts +0 -0
  114. /package/dist/{agents → src/agents}/implementations/gemini.agent.d.ts +0 -0
  115. /package/dist/{agents → src/agents}/interfaces/agent.interface.d.ts +0 -0
  116. /package/dist/{app.controller.d.ts → src/app.controller.d.ts} +0 -0
  117. /package/dist/{app.module.d.ts → src/app.module.d.ts} +0 -0
  118. /package/dist/{app.service.d.ts → src/app.service.d.ts} +0 -0
  119. /package/dist/{cli.d.ts → src/cli.d.ts} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ # [1.0.0-alpha.5](https://github.com/bpinhosilva/agent-orchestrator/compare/v1.0.0-alpha.4...v1.0.0-alpha.5) (2026-03-21)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * **ci:** use legacy-peer-deps to resolve peer dependency conflicts ([b450b45](https://github.com/bpinhosilva/agent-orchestrator/commit/b450b4500ff02addb1bca6cc7f6a40c93e442e7f))
7
+
8
+
9
+ ### Features
10
+
11
+ * implement models and providers modules add swagger documentation, and update agents ([b6e8245](https://github.com/bpinhosilva/agent-orchestrator/commit/b6e824547f4f603cecf0352b383d20a078fe6662))
12
+
1
13
  # [1.0.0-alpha.4](https://github.com/bpinhosilva/agent-orchestrator/compare/v1.0.0-alpha.3...v1.0.0-alpha.4) (2026-03-20)
2
14
 
3
15
 
@@ -16,15 +16,67 @@ exports.AgentsController = void 0;
16
16
  const common_1 = require("@nestjs/common");
17
17
  const agents_service_1 = require("./agents.service");
18
18
  const agent_request_dto_1 = require("./dto/agent-request.dto");
19
+ const create_agent_dto_1 = require("./dto/create-agent.dto");
20
+ const update_agent_dto_1 = require("./dto/update-agent.dto");
19
21
  let AgentsController = class AgentsController {
20
22
  constructor(agentsService) {
21
23
  this.agentsService = agentsService;
22
24
  }
25
+ create(createAgentDto) {
26
+ return this.agentsService.create(createAgentDto);
27
+ }
28
+ findAll() {
29
+ return this.agentsService.findAll();
30
+ }
31
+ findOne(id) {
32
+ return this.agentsService.findOne(id);
33
+ }
34
+ update(id, updateAgentDto) {
35
+ return this.agentsService.update(id, updateAgentDto);
36
+ }
37
+ remove(id) {
38
+ return this.agentsService.remove(id);
39
+ }
23
40
  async processText(requestDto) {
24
41
  return this.agentsService.processRequest(requestDto);
25
42
  }
26
43
  };
27
44
  exports.AgentsController = AgentsController;
45
+ __decorate([
46
+ (0, common_1.Post)(),
47
+ __param(0, (0, common_1.Body)()),
48
+ __metadata("design:type", Function),
49
+ __metadata("design:paramtypes", [create_agent_dto_1.CreateAgentDto]),
50
+ __metadata("design:returntype", void 0)
51
+ ], AgentsController.prototype, "create", null);
52
+ __decorate([
53
+ (0, common_1.Get)(),
54
+ __metadata("design:type", Function),
55
+ __metadata("design:paramtypes", []),
56
+ __metadata("design:returntype", void 0)
57
+ ], AgentsController.prototype, "findAll", null);
58
+ __decorate([
59
+ (0, common_1.Get)(':id'),
60
+ __param(0, (0, common_1.Param)('id')),
61
+ __metadata("design:type", Function),
62
+ __metadata("design:paramtypes", [String]),
63
+ __metadata("design:returntype", void 0)
64
+ ], AgentsController.prototype, "findOne", null);
65
+ __decorate([
66
+ (0, common_1.Patch)(':id'),
67
+ __param(0, (0, common_1.Param)('id')),
68
+ __param(1, (0, common_1.Body)()),
69
+ __metadata("design:type", Function),
70
+ __metadata("design:paramtypes", [String, update_agent_dto_1.UpdateAgentDto]),
71
+ __metadata("design:returntype", void 0)
72
+ ], AgentsController.prototype, "update", null);
73
+ __decorate([
74
+ (0, common_1.Delete)(':id'),
75
+ __param(0, (0, common_1.Param)('id')),
76
+ __metadata("design:type", Function),
77
+ __metadata("design:paramtypes", [String]),
78
+ __metadata("design:returntype", void 0)
79
+ ], AgentsController.prototype, "remove", null);
28
80
  __decorate([
29
81
  (0, common_1.Post)('process'),
30
82
  (0, common_1.HttpCode)(common_1.HttpStatus.OK),
@@ -8,14 +8,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.AgentsModule = void 0;
10
10
  const common_1 = require("@nestjs/common");
11
+ const typeorm_1 = require("@nestjs/typeorm");
11
12
  const agents_controller_1 = require("./agents.controller");
12
13
  const agents_service_1 = require("./agents.service");
13
14
  const gemini_agent_1 = require("./implementations/gemini.agent");
15
+ const agent_entity_1 = require("./entities/agent.entity");
14
16
  let AgentsModule = class AgentsModule {
15
17
  };
16
18
  exports.AgentsModule = AgentsModule;
17
19
  exports.AgentsModule = AgentsModule = __decorate([
18
20
  (0, common_1.Module)({
21
+ imports: [typeorm_1.TypeOrmModule.forFeature([agent_entity_1.Agent])],
19
22
  controllers: [agents_controller_1.AgentsController],
20
23
  providers: [agents_service_1.AgentsService, gemini_agent_1.GeminiAgent],
21
24
  exports: [agents_service_1.AgentsService],
@@ -8,26 +8,71 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
11
14
  var AgentsService_1;
12
15
  Object.defineProperty(exports, "__esModule", { value: true });
13
16
  exports.AgentsService = void 0;
14
17
  const common_1 = require("@nestjs/common");
18
+ const typeorm_1 = require("@nestjs/typeorm");
19
+ const typeorm_2 = require("typeorm");
15
20
  const gemini_agent_1 = require("./implementations/gemini.agent");
21
+ const agent_entity_1 = require("./entities/agent.entity");
16
22
  let AgentsService = AgentsService_1 = class AgentsService {
17
- constructor(geminiAgent) {
23
+ constructor(geminiAgent, agentRepository) {
18
24
  this.geminiAgent = geminiAgent;
25
+ this.agentRepository = agentRepository;
19
26
  this.logger = new common_1.Logger(AgentsService_1.name);
20
27
  this.defaultAgent = geminiAgent;
21
28
  this.logger.log(`Initialized AgentsService with default agent: ${this.defaultAgent.getName()}`);
22
29
  }
23
30
  async processRequest(requestDto) {
24
31
  this.logger.debug(`Processing input using default agent`);
25
- // Eventually, logic to select agent based on user request/task could go here.
26
32
  return this.defaultAgent.processText(requestDto.input);
27
33
  }
34
+ async create(createAgentDto) {
35
+ const { modelId, ...rest } = createAgentDto;
36
+ const agent = this.agentRepository.create({
37
+ ...rest,
38
+ model: { id: modelId },
39
+ });
40
+ return this.agentRepository.save(agent);
41
+ }
42
+ async findAll() {
43
+ return this.agentRepository.find();
44
+ }
45
+ async findOne(id) {
46
+ const agent = await this.agentRepository.findOne({ where: { id } });
47
+ if (!agent) {
48
+ throw new common_1.NotFoundException(`Agent #${id} not found`);
49
+ }
50
+ return agent;
51
+ }
52
+ async update(id, updateAgentDto) {
53
+ const { modelId, ...rest } = updateAgentDto;
54
+ const updateData = { ...rest };
55
+ if (modelId) {
56
+ updateData.model = { id: modelId };
57
+ }
58
+ const agent = await this.agentRepository.preload({
59
+ id,
60
+ ...updateData,
61
+ });
62
+ if (!agent) {
63
+ throw new common_1.NotFoundException(`Agent #${id} not found`);
64
+ }
65
+ return this.agentRepository.save(agent);
66
+ }
67
+ async remove(id) {
68
+ const agent = await this.findOne(id);
69
+ await this.agentRepository.remove(agent);
70
+ }
28
71
  };
29
72
  exports.AgentsService = AgentsService;
30
73
  exports.AgentsService = AgentsService = AgentsService_1 = __decorate([
31
74
  (0, common_1.Injectable)(),
32
- __metadata("design:paramtypes", [gemini_agent_1.GeminiAgent])
75
+ __param(1, (0, typeorm_1.InjectRepository)(agent_entity_1.Agent)),
76
+ __metadata("design:paramtypes", [gemini_agent_1.GeminiAgent,
77
+ typeorm_2.Repository])
33
78
  ], AgentsService);
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreateAgentDto = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ class CreateAgentDto {
15
+ }
16
+ exports.CreateAgentDto = CreateAgentDto;
17
+ __decorate([
18
+ (0, class_validator_1.IsString)(),
19
+ (0, class_validator_1.IsNotEmpty)(),
20
+ __metadata("design:type", String)
21
+ ], CreateAgentDto.prototype, "name", void 0);
22
+ __decorate([
23
+ (0, class_validator_1.IsString)(),
24
+ (0, class_validator_1.IsNotEmpty)(),
25
+ __metadata("design:type", String)
26
+ ], CreateAgentDto.prototype, "profile", void 0);
27
+ __decorate([
28
+ (0, class_validator_1.IsUUID)(),
29
+ (0, class_validator_1.IsNotEmpty)(),
30
+ __metadata("design:type", String)
31
+ ], CreateAgentDto.prototype, "modelId", void 0);
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UpdateAgentDto = void 0;
4
+ const mapped_types_1 = require("@nestjs/mapped-types");
5
+ const create_agent_dto_1 = require("./create-agent.dto");
6
+ class UpdateAgentDto extends (0, mapped_types_1.PartialType)(create_agent_dto_1.CreateAgentDto) {
7
+ }
8
+ exports.UpdateAgentDto = UpdateAgentDto;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Agent = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const model_entity_1 = require("../../models/entities/model.entity");
15
+ let Agent = class Agent {
16
+ };
17
+ exports.Agent = Agent;
18
+ __decorate([
19
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
20
+ __metadata("design:type", String)
21
+ ], Agent.prototype, "id", void 0);
22
+ __decorate([
23
+ (0, typeorm_1.Column)({ unique: true }),
24
+ __metadata("design:type", String)
25
+ ], Agent.prototype, "name", void 0);
26
+ __decorate([
27
+ (0, typeorm_1.Column)('text'),
28
+ __metadata("design:type", String)
29
+ ], Agent.prototype, "profile", void 0);
30
+ __decorate([
31
+ (0, typeorm_1.ManyToOne)(() => model_entity_1.Model, (model) => model.agents, {
32
+ nullable: false,
33
+ eager: true,
34
+ onDelete: 'RESTRICT',
35
+ }),
36
+ __metadata("design:type", model_entity_1.Model)
37
+ ], Agent.prototype, "model", void 0);
38
+ __decorate([
39
+ (0, typeorm_1.CreateDateColumn)(),
40
+ __metadata("design:type", Date)
41
+ ], Agent.prototype, "createdAt", void 0);
42
+ __decorate([
43
+ (0, typeorm_1.UpdateDateColumn)(),
44
+ __metadata("design:type", Date)
45
+ ], Agent.prototype, "updatedAt", void 0);
46
+ exports.Agent = Agent = __decorate([
47
+ (0, typeorm_1.Entity)('agents')
48
+ ], Agent);
@@ -9,21 +9,35 @@ Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.AppModule = void 0;
10
10
  const common_1 = require("@nestjs/common");
11
11
  const serve_static_1 = require("@nestjs/serve-static");
12
+ const typeorm_1 = require("@nestjs/typeorm");
12
13
  const path_1 = require("path");
13
14
  const agents_module_1 = require("./agents/agents.module");
14
15
  const app_controller_1 = require("./app.controller");
15
16
  const app_service_1 = require("./app.service");
17
+ const providers_module_1 = require("./providers/providers.module");
18
+ const models_module_1 = require("./models/models.module");
16
19
  let AppModule = class AppModule {
17
20
  };
18
21
  exports.AppModule = AppModule;
19
22
  exports.AppModule = AppModule = __decorate([
20
23
  (0, common_1.Module)({
21
24
  imports: [
25
+ typeorm_1.TypeOrmModule.forRoot({
26
+ type: process.env.DATABASE_URL ? 'postgres' : 'sqlite',
27
+ database: process.env.DATABASE_URL
28
+ ? undefined
29
+ : (0, path_1.join)(__dirname, '..', 'local.sqlite'),
30
+ url: process.env.DATABASE_URL,
31
+ autoLoadEntities: true,
32
+ synchronize: true, // Use only in development
33
+ }),
22
34
  serve_static_1.ServeStaticModule.forRoot({
23
35
  rootPath: (0, path_1.join)(__dirname, '..', 'public'),
24
36
  exclude: ['/api*'],
25
37
  }),
26
38
  agents_module_1.AgentsModule,
39
+ providers_module_1.ProvidersModule,
40
+ models_module_1.ModelsModule,
27
41
  ],
28
42
  controllers: [app_controller_1.AppController],
29
43
  providers: [app_service_1.AppService],
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreateModelDto = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ class CreateModelDto {
15
+ }
16
+ exports.CreateModelDto = CreateModelDto;
17
+ __decorate([
18
+ (0, class_validator_1.IsString)(),
19
+ (0, class_validator_1.IsNotEmpty)(),
20
+ __metadata("design:type", String)
21
+ ], CreateModelDto.prototype, "name", void 0);
22
+ __decorate([
23
+ (0, class_validator_1.IsUUID)(),
24
+ (0, class_validator_1.IsNotEmpty)(),
25
+ __metadata("design:type", String)
26
+ ], CreateModelDto.prototype, "providerId", void 0);
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UpdateModelDto = void 0;
4
+ const swagger_1 = require("@nestjs/swagger");
5
+ const create_model_dto_1 = require("./create-model.dto");
6
+ class UpdateModelDto extends (0, swagger_1.PartialType)(create_model_dto_1.CreateModelDto) {
7
+ }
8
+ exports.UpdateModelDto = UpdateModelDto;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Model = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const provider_entity_1 = require("../../providers/entities/provider.entity");
15
+ const agent_entity_1 = require("../../agents/entities/agent.entity");
16
+ let Model = class Model {
17
+ };
18
+ exports.Model = Model;
19
+ __decorate([
20
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
21
+ __metadata("design:type", String)
22
+ ], Model.prototype, "id", void 0);
23
+ __decorate([
24
+ (0, typeorm_1.Column)(),
25
+ __metadata("design:type", String)
26
+ ], Model.prototype, "name", void 0);
27
+ __decorate([
28
+ (0, typeorm_1.ManyToOne)(() => provider_entity_1.Provider, (provider) => provider.models, {
29
+ onDelete: 'CASCADE',
30
+ }),
31
+ __metadata("design:type", provider_entity_1.Provider)
32
+ ], Model.prototype, "provider", void 0);
33
+ __decorate([
34
+ (0, typeorm_1.OneToMany)(() => agent_entity_1.Agent, (agent) => agent.model),
35
+ __metadata("design:type", Array)
36
+ ], Model.prototype, "agents", void 0);
37
+ __decorate([
38
+ (0, typeorm_1.CreateDateColumn)(),
39
+ __metadata("design:type", Date)
40
+ ], Model.prototype, "createdAt", void 0);
41
+ __decorate([
42
+ (0, typeorm_1.UpdateDateColumn)(),
43
+ __metadata("design:type", Date)
44
+ ], Model.prototype, "updatedAt", void 0);
45
+ exports.Model = Model = __decorate([
46
+ (0, typeorm_1.Entity)('models')
47
+ ], Model);
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ModelsController = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const models_service_1 = require("./models.service");
18
+ const create_model_dto_1 = require("./dto/create-model.dto");
19
+ const update_model_dto_1 = require("./dto/update-model.dto");
20
+ let ModelsController = class ModelsController {
21
+ constructor(modelsService) {
22
+ this.modelsService = modelsService;
23
+ }
24
+ create(createModelDto) {
25
+ return this.modelsService.create(createModelDto);
26
+ }
27
+ findAll() {
28
+ return this.modelsService.findAll();
29
+ }
30
+ findOne(id) {
31
+ return this.modelsService.findOne(id);
32
+ }
33
+ update(id, updateModelDto) {
34
+ return this.modelsService.update(id, updateModelDto);
35
+ }
36
+ remove(id) {
37
+ return this.modelsService.remove(id);
38
+ }
39
+ };
40
+ exports.ModelsController = ModelsController;
41
+ __decorate([
42
+ (0, common_1.Post)(),
43
+ __param(0, (0, common_1.Body)()),
44
+ __metadata("design:type", Function),
45
+ __metadata("design:paramtypes", [create_model_dto_1.CreateModelDto]),
46
+ __metadata("design:returntype", void 0)
47
+ ], ModelsController.prototype, "create", null);
48
+ __decorate([
49
+ (0, common_1.Get)(),
50
+ __metadata("design:type", Function),
51
+ __metadata("design:paramtypes", []),
52
+ __metadata("design:returntype", void 0)
53
+ ], ModelsController.prototype, "findAll", null);
54
+ __decorate([
55
+ (0, common_1.Get)(':id'),
56
+ __param(0, (0, common_1.Param)('id')),
57
+ __metadata("design:type", Function),
58
+ __metadata("design:paramtypes", [String]),
59
+ __metadata("design:returntype", void 0)
60
+ ], ModelsController.prototype, "findOne", null);
61
+ __decorate([
62
+ (0, common_1.Patch)(':id'),
63
+ __param(0, (0, common_1.Param)('id')),
64
+ __param(1, (0, common_1.Body)()),
65
+ __metadata("design:type", Function),
66
+ __metadata("design:paramtypes", [String, update_model_dto_1.UpdateModelDto]),
67
+ __metadata("design:returntype", void 0)
68
+ ], ModelsController.prototype, "update", null);
69
+ __decorate([
70
+ (0, common_1.Delete)(':id'),
71
+ __param(0, (0, common_1.Param)('id')),
72
+ __metadata("design:type", Function),
73
+ __metadata("design:paramtypes", [String]),
74
+ __metadata("design:returntype", void 0)
75
+ ], ModelsController.prototype, "remove", null);
76
+ exports.ModelsController = ModelsController = __decorate([
77
+ (0, common_1.Controller)('models'),
78
+ __metadata("design:paramtypes", [models_service_1.ModelsService])
79
+ ], ModelsController);
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.ModelsModule = void 0;
10
+ const common_1 = require("@nestjs/common");
11
+ const typeorm_1 = require("@nestjs/typeorm");
12
+ const models_service_1 = require("./models.service");
13
+ const models_controller_1 = require("./models.controller");
14
+ const model_entity_1 = require("./entities/model.entity");
15
+ let ModelsModule = class ModelsModule {
16
+ };
17
+ exports.ModelsModule = ModelsModule;
18
+ exports.ModelsModule = ModelsModule = __decorate([
19
+ (0, common_1.Module)({
20
+ imports: [typeorm_1.TypeOrmModule.forFeature([model_entity_1.Model])],
21
+ controllers: [models_controller_1.ModelsController],
22
+ providers: [models_service_1.ModelsService],
23
+ exports: [typeorm_1.TypeOrmModule],
24
+ })
25
+ ], ModelsModule);
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ModelsService = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const typeorm_1 = require("@nestjs/typeorm");
18
+ const typeorm_2 = require("typeorm");
19
+ const model_entity_1 = require("./entities/model.entity");
20
+ let ModelsService = class ModelsService {
21
+ constructor(modelRepository) {
22
+ this.modelRepository = modelRepository;
23
+ }
24
+ async create(createModelDto) {
25
+ const { providerId, ...rest } = createModelDto;
26
+ const model = this.modelRepository.create({
27
+ ...rest,
28
+ provider: { id: providerId },
29
+ });
30
+ return this.modelRepository.save(model);
31
+ }
32
+ async findAll() {
33
+ return this.modelRepository.find();
34
+ }
35
+ async findOne(id) {
36
+ const model = await this.modelRepository.findOne({ where: { id } });
37
+ if (!model) {
38
+ throw new common_1.NotFoundException(`Model #${id} not found`);
39
+ }
40
+ return model;
41
+ }
42
+ async update(id, updateModelDto) {
43
+ const { providerId, ...rest } = updateModelDto;
44
+ const updateData = { ...rest };
45
+ if (providerId) {
46
+ updateData.provider = { id: providerId };
47
+ }
48
+ const model = await this.modelRepository.preload({
49
+ id,
50
+ ...updateData,
51
+ });
52
+ if (!model) {
53
+ throw new common_1.NotFoundException(`Model #${id} not found`);
54
+ }
55
+ return this.modelRepository.save(model);
56
+ }
57
+ async remove(id) {
58
+ const model = await this.findOne(id);
59
+ await this.modelRepository.remove(model);
60
+ }
61
+ };
62
+ exports.ModelsService = ModelsService;
63
+ exports.ModelsService = ModelsService = __decorate([
64
+ (0, common_1.Injectable)(),
65
+ __param(0, (0, typeorm_1.InjectRepository)(model_entity_1.Model)),
66
+ __metadata("design:paramtypes", [typeorm_2.Repository])
67
+ ], ModelsService);
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreateProviderDto = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ class CreateProviderDto {
15
+ }
16
+ exports.CreateProviderDto = CreateProviderDto;
17
+ __decorate([
18
+ (0, class_validator_1.IsString)(),
19
+ (0, class_validator_1.IsNotEmpty)(),
20
+ __metadata("design:type", String)
21
+ ], CreateProviderDto.prototype, "name", void 0);
22
+ __decorate([
23
+ (0, class_validator_1.IsString)(),
24
+ (0, class_validator_1.IsOptional)(),
25
+ __metadata("design:type", String)
26
+ ], CreateProviderDto.prototype, "description", void 0);
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UpdateProviderDto = void 0;
4
+ const swagger_1 = require("@nestjs/swagger");
5
+ const create_provider_dto_1 = require("./create-provider.dto");
6
+ class UpdateProviderDto extends (0, swagger_1.PartialType)(create_provider_dto_1.CreateProviderDto) {
7
+ }
8
+ exports.UpdateProviderDto = UpdateProviderDto;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Provider = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const model_entity_1 = require("../../models/entities/model.entity");
15
+ let Provider = class Provider {
16
+ };
17
+ exports.Provider = Provider;
18
+ __decorate([
19
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
20
+ __metadata("design:type", String)
21
+ ], Provider.prototype, "id", void 0);
22
+ __decorate([
23
+ (0, typeorm_1.Column)({ unique: true }),
24
+ __metadata("design:type", String)
25
+ ], Provider.prototype, "name", void 0);
26
+ __decorate([
27
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
28
+ __metadata("design:type", String)
29
+ ], Provider.prototype, "description", void 0);
30
+ __decorate([
31
+ (0, typeorm_1.OneToMany)(() => model_entity_1.Model, (model) => model.provider),
32
+ __metadata("design:type", Array)
33
+ ], Provider.prototype, "models", void 0);
34
+ __decorate([
35
+ (0, typeorm_1.CreateDateColumn)(),
36
+ __metadata("design:type", Date)
37
+ ], Provider.prototype, "createdAt", void 0);
38
+ __decorate([
39
+ (0, typeorm_1.UpdateDateColumn)(),
40
+ __metadata("design:type", Date)
41
+ ], Provider.prototype, "updatedAt", void 0);
42
+ exports.Provider = Provider = __decorate([
43
+ (0, typeorm_1.Entity)('providers')
44
+ ], Provider);