@hed-hog/core 0.0.291 → 0.0.292

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.
@@ -4,5 +4,7 @@ export declare class InstallDTO {
4
4
  userName?: string;
5
5
  email?: string;
6
6
  password?: string;
7
+ adminUrl?: string;
8
+ apiUrl?: string;
7
9
  }
8
10
  //# sourceMappingURL=install.dto.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"install.dto.d.ts","sourceRoot":"","sources":["../../../src/install/dto/install.dto.ts"],"names":[],"mappings":"AAIA,qBAAa,UAAU;IAIrB,OAAO,CAAC,EAAE,MAAM,CAAY;IAK5B,MAAM,CAAC,EAAE,MAAM,CAA0B;IAKzC,QAAQ,CAAC,EAAE,MAAM,CAAe;IAIhC,KAAK,CAAC,EAAE,MAAM,CAAqB;IAKnC,QAAQ,CAAC,EAAE,MAAM,CAAc;CAChC"}
1
+ {"version":3,"file":"install.dto.d.ts","sourceRoot":"","sources":["../../../src/install/dto/install.dto.ts"],"names":[],"mappings":"AAIA,qBAAa,UAAU;IAIrB,OAAO,CAAC,EAAE,MAAM,CAAY;IAK5B,MAAM,CAAC,EAAE,MAAM,CAA0B;IAKzC,QAAQ,CAAC,EAAE,MAAM,CAAe;IAIhC,KAAK,CAAC,EAAE,MAAM,CAAqB;IAKnC,QAAQ,CAAC,EAAE,MAAM,CAAc;IAO/B,QAAQ,CAAC,EAAE,MAAM,CAA2B;IAO5C,MAAM,CAAC,EAAE,MAAM,CAA2B;CAC3C"}
@@ -20,6 +20,8 @@ class InstallDTO {
20
20
  this.userName = 'Root User';
21
21
  this.email = 'root@hedhog.com';
22
22
  this.password = 'changeme';
23
+ this.adminUrl = 'http://localhost:3200';
24
+ this.apiUrl = 'http://localhost:3100';
23
25
  }
24
26
  }
25
27
  exports.InstallDTO = InstallDTO;
@@ -52,4 +54,14 @@ __decorate([
52
54
  (0, class_validator_1.MinLength)(6, { message: 'Senha deve ter pelo menos 6 caracteres' }),
53
55
  __metadata("design:type", String)
54
56
  ], InstallDTO.prototype, "password", void 0);
57
+ __decorate([
58
+ (0, class_validator_1.IsOptional)(),
59
+ (0, class_validator_1.IsUrl)({ require_protocol: true, require_tld: false }, { message: 'URL da admin invalida' }),
60
+ __metadata("design:type", String)
61
+ ], InstallDTO.prototype, "adminUrl", void 0);
62
+ __decorate([
63
+ (0, class_validator_1.IsOptional)(),
64
+ (0, class_validator_1.IsUrl)({ require_protocol: true, require_tld: false }, { message: 'URL da API invalida' }),
65
+ __metadata("design:type", String)
66
+ ], InstallDTO.prototype, "apiUrl", void 0);
55
67
  //# sourceMappingURL=install.dto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"install.dto.js","sourceRoot":"","sources":["../../../src/install/dto/install.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAoD;AACpD,qDAAkE;AAClE,wGAAwF;AAExF,MAAa,UAAU;IAAvB;QAIE,YAAO,GAAY,QAAQ,CAAC;QAK5B,WAAM,GAAY,sBAAsB,CAAC;QAKzC,aAAQ,GAAY,WAAW,CAAC;QAIhC,UAAK,GAAY,iBAAiB,CAAC;QAKnC,aAAQ,GAAY,UAAU,CAAC;IACjC,CAAC;CAAA;AAxBD,gCAwBC;AApBC;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC;IACtD,IAAA,2BAAS,EAAC,CAAC,EAAE,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC;;2CAC/B;AAK5B;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC;IAC3C,IAAA,2BAAS,EAAC,CAAC,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC;;0CACP;AAKzC;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;IACpD,IAAA,2BAAS,EAAC,CAAC,EAAE,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;;4CACzB;AAIhC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,sDAAmB,EAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,gCAAgC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;yCACrE;AAKnC;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,wCAAwC,EAAE,CAAC;IAC/D,IAAA,2BAAS,EAAC,CAAC,EAAE,EAAE,OAAO,EAAE,wCAAwC,EAAE,CAAC;;4CACrC"}
1
+ {"version":3,"file":"install.dto.js","sourceRoot":"","sources":["../../../src/install/dto/install.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAoD;AACpD,qDAAyE;AACzE,wGAAwF;AAExF,MAAa,UAAU;IAAvB;QAIE,YAAO,GAAY,QAAQ,CAAC;QAK5B,WAAM,GAAY,sBAAsB,CAAC;QAKzC,aAAQ,GAAY,WAAW,CAAC;QAIhC,UAAK,GAAY,iBAAiB,CAAC;QAKnC,aAAQ,GAAY,UAAU,CAAC;QAO/B,aAAQ,GAAY,uBAAuB,CAAC;QAO5C,WAAM,GAAY,uBAAuB,CAAC;IAC5C,CAAC;CAAA;AAtCD,gCAsCC;AAlCC;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC;IACtD,IAAA,2BAAS,EAAC,CAAC,EAAE,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC;;2CAC/B;AAK5B;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC;IAC3C,IAAA,2BAAS,EAAC,CAAC,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC;;0CACP;AAKzC;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;IACpD,IAAA,2BAAS,EAAC,CAAC,EAAE,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;;4CACzB;AAIhC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,sDAAmB,EAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,gCAAgC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;;yCACrE;AAKnC;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,wCAAwC,EAAE,CAAC;IAC/D,IAAA,2BAAS,EAAC,CAAC,EAAE,EAAE,OAAO,EAAE,wCAAwC,EAAE,CAAC;;4CACrC;AAO/B;IALC,IAAA,4BAAU,GAAE;IACZ,IAAA,uBAAK,EACJ,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,EAC9C,EAAE,OAAO,EAAE,uBAAuB,EAAE,CACrC;;4CAC2C;AAO5C;IALC,IAAA,4BAAU,GAAE;IACZ,IAAA,uBAAK,EACJ,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,EAC9C,EAAE,OAAO,EAAE,qBAAqB,EAAE,CACnC;;0CACyC"}
@@ -9,6 +9,7 @@ export declare class InstallController {
9
9
  }>;
10
10
  check(): Promise<{
11
11
  success: boolean;
12
+ installed: boolean;
12
13
  }>;
13
14
  generateMailMigration(data: GenerateMailMigrationDTO): Promise<{
14
15
  success: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"install.controller.d.ts","sourceRoot":"","sources":["../../src/install/install.controller.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAEa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,cAAc;IAGpD,OAAO,CAAS,IAAI,EAAE,UAAU;;;IAKhC,KAAK;;;IAKL,qBAAqB,CAAS,IAAI,EAAE,wBAAwB;;;;;CAG7D"}
1
+ {"version":3,"file":"install.controller.d.ts","sourceRoot":"","sources":["../../src/install/install.controller.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAEa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,cAAc;IAGpD,OAAO,CAAS,IAAI,EAAE,UAAU;;;IAKhC,KAAK;;;;IAKL,qBAAqB,CAAS,IAAI,EAAE,wBAAwB;;;;;CAG7D"}
@@ -1,23 +1,27 @@
1
1
  import { PrismaService } from '@hed-hog/api-prisma';
2
2
  import { ConfigService } from '@nestjs/config';
3
3
  import { SecurityService } from '../security/security.service';
4
+ import { SettingService } from '../setting/setting.service';
4
5
  import { InstallDTO } from './dto/install.dto';
5
6
  export declare class InstallService {
6
7
  private readonly security;
7
8
  private readonly prisma;
8
9
  private readonly configService;
10
+ private readonly settingService;
9
11
  private readonly logger;
10
- constructor(security: SecurityService, prisma: PrismaService, configService: ConfigService);
12
+ constructor(security: SecurityService, prisma: PrismaService, configService: ConfigService, settingService: SettingService);
13
+ private normalizeUrl;
11
14
  private forceReset;
12
15
  private checkInstallation;
13
16
  private updateEnvSecrets;
14
17
  private parseEnv;
15
18
  private base64Encode;
16
- install({ appName, email, password, slogan, userName }: InstallDTO): Promise<{
19
+ install({ adminUrl, apiUrl, appName, email, password, slogan, userName, }: InstallDTO): Promise<{
17
20
  success: boolean;
18
21
  }>;
19
22
  check(): Promise<{
20
23
  success: boolean;
24
+ installed: boolean;
21
25
  }>;
22
26
  generateMailMigration({ slug, translations, variables, }: {
23
27
  slug: string;
@@ -1 +1 @@
1
- {"version":3,"file":"install.service.d.ts","sourceRoot":"","sources":["../../src/install/install.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAI/C,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,qBACa,cAAc;IAKvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACtB,OAAO,CAAC,QAAQ,CAAC,aAAa;IALjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;gBAGvC,QAAQ,EAAE,eAAe,EACzB,MAAM,EAAE,aAAa,EACpB,aAAa,EAAE,aAAa;YAGlC,UAAU;YAqCV,iBAAiB;YAKjB,gBAAgB;IAsD9B,OAAO,CAAC,QAAQ;IAiBhB,OAAO,CAAC,YAAY;IAId,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,UAAU;;;IAuHlE,KAAK;;;IAIL,qBAAqB,CAAC,EAC1B,IAAI,EACJ,YAAY,EACZ,SAAS,GACV,EAAE;QACD,IAAI,EAAE,MAAM,CAAC;QACb,YAAY,EAAE,KAAK,CAAC;YAAE,WAAW,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC5E,SAAS,EAAE,MAAM,EAAE,CAAC;KACrB;;;;;CAuDF"}
1
+ {"version":3,"file":"install.service.d.ts","sourceRoot":"","sources":["../../src/install/install.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAI/C,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,qBACa,cAAc;IAKvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IANjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;gBAGvC,QAAQ,EAAE,eAAe,EACzB,MAAM,EAAE,aAAa,EACrB,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc;IAGjD,OAAO,CAAC,YAAY;YAIN,UAAU;YAqCV,iBAAiB;YAkBjB,gBAAgB;IAsD9B,OAAO,CAAC,QAAQ;IAiBhB,OAAO,CAAC,YAAY;IAId,OAAO,CAAC,EACZ,QAAQ,EACR,MAAM,EACN,OAAO,EACP,KAAK,EACL,QAAQ,EACR,MAAM,EACN,QAAQ,GACT,EAAE,UAAU;;;IAyJP,KAAK;;;;IAOL,qBAAqB,CAAC,EAC1B,IAAI,EACJ,YAAY,EACZ,SAAS,GACV,EAAE;QACD,IAAI,EAAE,MAAM,CAAC;QACb,YAAY,EAAE,KAAK,CAAC;YAAE,WAAW,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC5E,SAAS,EAAE,MAAM,EAAE,CAAC;KACrB;;;;;CAuDF"}
@@ -51,13 +51,18 @@ const fs_1 = require("fs");
51
51
  const promises_1 = require("fs/promises");
52
52
  const path_1 = require("path");
53
53
  const security_service_1 = require("../security/security.service");
54
+ const setting_service_1 = require("../setting/setting.service");
54
55
  let InstallService = InstallService_1 = class InstallService {
55
- constructor(security, prisma, configService) {
56
+ constructor(security, prisma, configService, settingService) {
56
57
  this.security = security;
57
58
  this.prisma = prisma;
58
59
  this.configService = configService;
60
+ this.settingService = settingService;
59
61
  this.logger = new common_1.Logger(InstallService_1.name);
60
62
  }
63
+ normalizeUrl(value) {
64
+ return value.trim().replace(/\/$/, '');
65
+ }
61
66
  async forceReset() {
62
67
  await new Promise((resolve) => setTimeout(resolve, 1000));
63
68
  // In development, touching main.ts triggers restart; in production only dist exists.
@@ -87,6 +92,17 @@ let InstallService = InstallService_1 = class InstallService {
87
92
  }
88
93
  }
89
94
  async checkInstallation() {
95
+ const installedSetting = await this.prisma.setting.findFirst({
96
+ where: {
97
+ slug: 'installed',
98
+ },
99
+ select: {
100
+ value: true,
101
+ },
102
+ });
103
+ if ((installedSetting === null || installedSetting === void 0 ? void 0 : installedSetting.value) === 'true') {
104
+ return true;
105
+ }
90
106
  const usersCount = await this.prisma.user.count();
91
107
  return usersCount > 0;
92
108
  }
@@ -160,10 +176,12 @@ let InstallService = InstallService_1 = class InstallService {
160
176
  base64Encode(str) {
161
177
  return Buffer.from(str).toString('base64');
162
178
  }
163
- async install({ appName, email, password, slogan, userName }) {
179
+ async install({ adminUrl, apiUrl, appName, email, password, slogan, userName, }) {
164
180
  if (await this.checkInstallation()) {
165
181
  throw new common_1.BadRequestException('Application is already installed.');
166
182
  }
183
+ const normalizedAdminUrl = this.normalizeUrl(adminUrl !== null && adminUrl !== void 0 ? adminUrl : 'http://localhost:3200');
184
+ const normalizedApiUrl = this.normalizeUrl(apiUrl !== null && apiUrl !== void 0 ? apiUrl : 'http://localhost:3100');
167
185
  await this.prisma.$transaction(async (prisma) => {
168
186
  this.logger.log('Starting installation process...');
169
187
  await prisma.setting.updateMany({
@@ -184,6 +202,22 @@ let InstallService = InstallService_1 = class InstallService {
184
202
  value: slogan
185
203
  }
186
204
  });
205
+ await prisma.setting.update({
206
+ where: {
207
+ slug: 'url',
208
+ },
209
+ data: {
210
+ value: normalizedAdminUrl,
211
+ },
212
+ });
213
+ await prisma.setting.update({
214
+ where: {
215
+ slug: 'api-url',
216
+ },
217
+ data: {
218
+ value: normalizedApiUrl,
219
+ },
220
+ });
187
221
  this.logger.log('System slogan set.');
188
222
  this.logger.log(`Setting system email to: ${email}`);
189
223
  const check = await prisma.user.findFirst({
@@ -237,6 +271,15 @@ let InstallService = InstallService_1 = class InstallService {
237
271
  })),
238
272
  });
239
273
  this.logger.log(`Roles assigned to user ID: ${user.id}`);
274
+ await prisma.setting.update({
275
+ where: {
276
+ slug: 'installed',
277
+ },
278
+ data: {
279
+ value: 'true',
280
+ },
281
+ });
282
+ this.logger.log('Installation flag set to true.');
240
283
  const isDevelopment = process.env.NODE_ENV !== 'production';
241
284
  if (isDevelopment) {
242
285
  await this.updateEnvSecrets(pepper);
@@ -247,10 +290,14 @@ let InstallService = InstallService_1 = class InstallService {
247
290
  }
248
291
  this.logger.log('Installation process completed successfully.');
249
292
  });
293
+ this.settingService.clearCache();
250
294
  return { success: true };
251
295
  }
252
296
  async check() {
253
- return { success: true };
297
+ return {
298
+ success: true,
299
+ installed: await this.checkInstallation(),
300
+ };
254
301
  }
255
302
  async generateMailMigration({ slug, translations, variables, }) {
256
303
  try {
@@ -306,6 +353,7 @@ exports.InstallService = InstallService = InstallService_1 = __decorate([
306
353
  (0, common_1.Injectable)(),
307
354
  __metadata("design:paramtypes", [security_service_1.SecurityService,
308
355
  api_prisma_1.PrismaService,
309
- config_1.ConfigService])
356
+ config_1.ConfigService,
357
+ setting_service_1.SettingService])
310
358
  ], InstallService);
311
359
  //# sourceMappingURL=install.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"install.service.js","sourceRoot":"","sources":["../../src/install/install.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.service.js","sourceRoot":"","sources":["../../src/install/install.service.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,17 @@
28
28
  pt: A URL da API do sistema
29
29
  value: http://localhost:3100
30
30
  user_override: false
31
+ - slug: installed
32
+ type: boolean
33
+ component: switch
34
+ name:
35
+ en: Installed
36
+ pt: Instalado
37
+ description:
38
+ en: Whether the system has already been installed
39
+ pt: Se o sistema ja foi instalado
40
+ value: false
41
+ user_override: false
31
42
  - slug: maintenance
32
43
  icon: database-cog
33
44
  name:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hed-hog/core",
3
- "version": "0.0.291",
3
+ "version": "0.0.292",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "dependencies": {
@@ -30,12 +30,12 @@
30
30
  "sharp": "^0.34.2",
31
31
  "speakeasy": "^2.0.0",
32
32
  "uuid": "^11.1.0",
33
+ "@hed-hog/api-mail": "0.0.8",
33
34
  "@hed-hog/api-types": "0.0.1",
34
35
  "@hed-hog/api-pagination": "0.0.6",
36
+ "@hed-hog/api-locale": "0.0.13",
35
37
  "@hed-hog/api": "0.0.4",
36
- "@hed-hog/api-mail": "0.0.8",
37
- "@hed-hog/api-prisma": "0.0.5",
38
- "@hed-hog/api-locale": "0.0.13"
38
+ "@hed-hog/api-prisma": "0.0.5"
39
39
  },
40
40
  "exports": {
41
41
  ".": {
@@ -1,5 +1,5 @@
1
1
  import { getLocaleText } from '@hed-hog/api-locale';
2
- import { IsOptional, IsString, MinLength } from 'class-validator';
2
+ import { IsOptional, IsString, IsUrl, MinLength } from 'class-validator';
3
3
  import { IsEmailWithSettings } from '../../validators/is-email-with-settings.validator';
4
4
 
5
5
  export class InstallDTO {
@@ -26,4 +26,18 @@ export class InstallDTO {
26
26
  @IsString({ message: 'Senha deve ter pelo menos 6 caracteres' })
27
27
  @MinLength(6, { message: 'Senha deve ter pelo menos 6 caracteres' })
28
28
  password?: string = 'changeme';
29
+
30
+ @IsOptional()
31
+ @IsUrl(
32
+ { require_protocol: true, require_tld: false },
33
+ { message: 'URL da admin invalida' },
34
+ )
35
+ adminUrl?: string = 'http://localhost:3200';
36
+
37
+ @IsOptional()
38
+ @IsUrl(
39
+ { require_protocol: true, require_tld: false },
40
+ { message: 'URL da API invalida' },
41
+ )
42
+ apiUrl?: string = 'http://localhost:3100';
29
43
  }
@@ -5,6 +5,7 @@ import { existsSync, readFileSync } from 'fs';
5
5
  import { writeFile } from 'fs/promises';
6
6
  import { resolve } from 'path';
7
7
  import { SecurityService } from '../security/security.service';
8
+ import { SettingService } from '../setting/setting.service';
8
9
  import { InstallDTO } from './dto/install.dto';
9
10
 
10
11
  @Injectable()
@@ -15,9 +16,14 @@ export class InstallService {
15
16
  constructor(
16
17
  private readonly security: SecurityService,
17
18
  private readonly prisma: PrismaService,
18
- private readonly configService: ConfigService,
19
+ private readonly configService: ConfigService,
20
+ private readonly settingService: SettingService,
19
21
  ) { }
20
22
 
23
+ private normalizeUrl(value: string) {
24
+ return value.trim().replace(/\/$/, '');
25
+ }
26
+
21
27
  private async forceReset() {
22
28
 
23
29
  await new Promise((resolve) => setTimeout(resolve, 1000));
@@ -56,6 +62,19 @@ export class InstallService {
56
62
  }
57
63
 
58
64
  private async checkInstallation() {
65
+ const installedSetting = await this.prisma.setting.findFirst({
66
+ where: {
67
+ slug: 'installed',
68
+ },
69
+ select: {
70
+ value: true,
71
+ },
72
+ });
73
+
74
+ if (installedSetting?.value === 'true') {
75
+ return true;
76
+ }
77
+
59
78
  const usersCount = await this.prisma.user.count();
60
79
  return usersCount > 0;
61
80
  }
@@ -135,12 +154,23 @@ export class InstallService {
135
154
  return Buffer.from(str).toString('base64');
136
155
  }
137
156
 
138
- async install({ appName, email, password, slogan, userName }: InstallDTO) {
157
+ async install({
158
+ adminUrl,
159
+ apiUrl,
160
+ appName,
161
+ email,
162
+ password,
163
+ slogan,
164
+ userName,
165
+ }: InstallDTO) {
139
166
 
140
167
  if (await this.checkInstallation()) {
141
168
  throw new BadRequestException('Application is already installed.');
142
169
  }
143
170
 
171
+ const normalizedAdminUrl = this.normalizeUrl(adminUrl ?? 'http://localhost:3200');
172
+ const normalizedApiUrl = this.normalizeUrl(apiUrl ?? 'http://localhost:3100');
173
+
144
174
  await this.prisma.$transaction(async (prisma) => {
145
175
 
146
176
  this.logger.log('Starting installation process...');
@@ -167,6 +197,24 @@ export class InstallService {
167
197
  }
168
198
  });
169
199
 
200
+ await prisma.setting.update({
201
+ where: {
202
+ slug: 'url',
203
+ },
204
+ data: {
205
+ value: normalizedAdminUrl,
206
+ },
207
+ });
208
+
209
+ await prisma.setting.update({
210
+ where: {
211
+ slug: 'api-url',
212
+ },
213
+ data: {
214
+ value: normalizedApiUrl,
215
+ },
216
+ });
217
+
170
218
  this.logger.log('System slogan set.');
171
219
 
172
220
  this.logger.log(`Setting system email to: ${email}`);
@@ -236,6 +284,17 @@ export class InstallService {
236
284
 
237
285
  this.logger.log(`Roles assigned to user ID: ${user.id}`);
238
286
 
287
+ await prisma.setting.update({
288
+ where: {
289
+ slug: 'installed',
290
+ },
291
+ data: {
292
+ value: 'true',
293
+ },
294
+ });
295
+
296
+ this.logger.log('Installation flag set to true.');
297
+
239
298
  const isDevelopment = process.env.NODE_ENV !== 'production';
240
299
  if (isDevelopment) {
241
300
  await this.updateEnvSecrets(pepper);
@@ -250,12 +309,17 @@ export class InstallService {
250
309
 
251
310
  });
252
311
 
312
+ this.settingService.clearCache();
313
+
253
314
  return { success: true };
254
315
 
255
316
  }
256
317
 
257
318
  async check() {
258
- return { success: true };
319
+ return {
320
+ success: true,
321
+ installed: await this.checkInstallation(),
322
+ };
259
323
  }
260
324
 
261
325
  async generateMailMigration({