emilsoftware-utilities 2.0.0-dev.30 → 2.0.0-dev.32

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 (55) hide show
  1. package/dist/accessi-module/Console/console.js +26 -17
  2. package/dist/accessi-module/Console/console.js.map +1 -1
  3. package/dist/accessi-module/Console/generated/model/authenticatedUserPayloadDto.d.ts +1 -1
  4. package/dist/accessi-module/Console/generated/model/authenticatedUserPayloadDto.js.map +1 -1
  5. package/dist/accessi-module/Console/generated/model/groupWithMenusEntity.d.ts +3 -1
  6. package/dist/accessi-module/Console/generated/model/groupWithMenusEntity.js.map +1 -1
  7. package/dist/accessi-module/Console/generated/model/menuEntity.d.ts +2 -0
  8. package/dist/accessi-module/Console/generated/model/menuEntity.js.map +1 -1
  9. package/dist/accessi-module/Console/generated/model/publicRegisterRequest.d.ts +0 -4
  10. package/dist/accessi-module/Console/generated/model/publicRegisterRequest.js.map +1 -1
  11. package/dist/accessi-module/Console/generated/model/registerRequest.d.ts +2 -6
  12. package/dist/accessi-module/Console/generated/model/registerRequest.js.map +1 -1
  13. package/dist/accessi-module/Console/generated/model/userDto.d.ts +5 -7
  14. package/dist/accessi-module/Console/generated/model/userDto.js.map +1 -1
  15. package/dist/accessi-module/Console/wiki.js +2 -0
  16. package/dist/accessi-module/Console/wiki.js.map +1 -1
  17. package/dist/accessi-module/Controllers/ConfiguratorController.js +2 -2
  18. package/dist/accessi-module/Controllers/ConfiguratorController.js.map +1 -1
  19. package/dist/accessi-module/Dtos/AuthenticatedUserPayloadDto.d.ts +1 -1
  20. package/dist/accessi-module/Dtos/AuthenticatedUserPayloadDto.js +1 -1
  21. package/dist/accessi-module/Dtos/AuthenticatedUserPayloadDto.js.map +1 -1
  22. package/dist/accessi-module/Dtos/GetGroupsWithMenusResponse.d.ts +1 -0
  23. package/dist/accessi-module/Dtos/GetGroupsWithMenusResponse.js +9 -1
  24. package/dist/accessi-module/Dtos/GetGroupsWithMenusResponse.js.map +1 -1
  25. package/dist/accessi-module/Dtos/GetMenusResponse.d.ts +1 -0
  26. package/dist/accessi-module/Dtos/GetMenusResponse.js +8 -0
  27. package/dist/accessi-module/Dtos/GetMenusResponse.js.map +1 -1
  28. package/dist/accessi-module/Dtos/PublicRegisterRequest.d.ts +1 -1
  29. package/dist/accessi-module/Dtos/PublicRegisterRequest.js +1 -1
  30. package/dist/accessi-module/Dtos/PublicRegisterRequest.js.map +1 -1
  31. package/dist/accessi-module/Dtos/RegisterRequest.d.ts +1 -3
  32. package/dist/accessi-module/Dtos/RegisterRequest.js +2 -22
  33. package/dist/accessi-module/Dtos/RegisterRequest.js.map +1 -1
  34. package/dist/accessi-module/Dtos/UserDto.d.ts +3 -4
  35. package/dist/accessi-module/Dtos/UserDto.js +9 -19
  36. package/dist/accessi-module/Dtos/UserDto.js.map +1 -1
  37. package/dist/accessi-module/Services/PermissionService/PermissionService.js +12 -9
  38. package/dist/accessi-module/Services/PermissionService/PermissionService.js.map +1 -1
  39. package/dist/accessi-module/Services/UserService/UserService.d.ts +1 -2
  40. package/dist/accessi-module/Services/UserService/UserService.js +26 -61
  41. package/dist/accessi-module/Services/UserService/UserService.js.map +1 -1
  42. package/dist/accessi-module/database-updates/AccessiDatabaseUpdater.js +16 -0
  43. package/dist/accessi-module/database-updates/AccessiDatabaseUpdater.js.map +1 -1
  44. package/dist/accessi-module/database-updates/accessiSchema.d.ts +12 -1
  45. package/dist/accessi-module/database-updates/accessiSchema.js +24 -4
  46. package/dist/accessi-module/database-updates/accessiSchema.js.map +1 -1
  47. package/dist/accessi-module/security/accessControl.d.ts +2 -2
  48. package/dist/accessi-module/security/accessControl.js +2 -2
  49. package/dist/accessi-module/security/accessControl.js.map +1 -1
  50. package/dist/accessi-module/security/authenticatedToken.d.ts +1 -1
  51. package/dist/accessi-module/security/authenticatedToken.js +2 -2
  52. package/dist/accessi-module/security/authenticatedToken.js.map +1 -1
  53. package/dist/emilsoftware-utilities-2.0.0-dev.32.tgz +0 -0
  54. package/package.json +1 -1
  55. package/dist/emilsoftware-utilities-2.0.0-dev.30.tgz +0 -0
@@ -36,7 +36,7 @@ __decorate([
36
36
  (0, swagger_1.ApiProperty)({ example: false }),
37
37
  (0, class_validator_1.IsBoolean)(),
38
38
  __metadata("design:type", Boolean)
39
- ], AuthenticatedUserPayloadDto.prototype, "flagAdminConfigurator", void 0);
39
+ ], AuthenticatedUserPayloadDto.prototype, "flagAdmin", void 0);
40
40
  __decorate([
41
41
  (0, swagger_1.ApiPropertyOptional)({ description: 'Verifica email richiesta per questo utente.', default: false }),
42
42
  (0, class_validator_1.IsOptional)(),
@@ -1 +1 @@
1
- {"version":3,"file":"AuthenticatedUserPayloadDto.js","sourceRoot":"","sources":["../../../src/accessi-module/Dtos/AuthenticatedUserPayloadDto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmE;AACnE,qDAA8E;AAE9E,MAAa,2BAA2B;CAqCvC;AArCD,kEAqCC;AAjCC;IAHC,IAAA,qBAAW,EAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC7B,IAAA,uBAAK,GAAE;IACP,IAAA,qBAAG,EAAC,CAAC,CAAC;;iEACe;AAKtB;IAHC,IAAA,6BAAmB,EAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC;IACtD,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;0DACI;AAIf;IAFC,IAAA,qBAAW,EAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC/B,IAAA,2BAAS,GAAE;;8DACQ;AAIpB;IAFC,IAAA,qBAAW,EAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC/B,IAAA,2BAAS,GAAE;;0EACoB;AAKhC;IAHC,IAAA,6BAAmB,EAAC,EAAE,WAAW,EAAE,6CAA6C,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACnG,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;mEACa;AAKzB;IAHC,IAAA,6BAAmB,EAAC,EAAE,WAAW,EAAE,8CAA8C,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACpG,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;6EACuB;AAKnC;IAHC,IAAA,6BAAmB,EAAC,EAAE,WAAW,EAAE,sCAAsC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3F,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;yEACmB;AAI/B;IAFC,IAAA,qBAAW,EAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IAC3B,IAAA,uBAAK,GAAE;;uEACoB;AAG9B,MAAa,4BAA4B;CAGxC;AAHD,oEAGC;AADC;IADC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC;8BACxC,2BAA2B;8DAAC","sourcesContent":["import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';\nimport { IsBoolean, IsInt, IsOptional, IsString, Min } from 'class-validator';\n\nexport class AuthenticatedUserPayloadDto {\n @ApiProperty({ example: 123 })\n @IsInt()\n @Min(1)\n codiceUtente!: number;\n\n @ApiPropertyOptional({ example: 'mario.rossi@dev.it' })\n @IsOptional()\n @IsString()\n email?: string;\n\n @ApiProperty({ example: false })\n @IsBoolean()\n flagSuper!: boolean;\n\n @ApiProperty({ example: false })\n @IsBoolean()\n flagAdminConfigurator!: boolean;\n\n @ApiPropertyOptional({ description: 'Verifica email richiesta per questo utente.', default: false })\n @IsOptional()\n @IsBoolean()\n flagDueFattori?: boolean;\n\n @ApiPropertyOptional({ description: 'Accesso consentito con il solo codice email.', default: false })\n @IsOptional()\n @IsBoolean()\n passwordlessLoginEnabled?: boolean;\n\n @ApiPropertyOptional({ description: 'Policy di login locale preesistente.', default: true })\n @IsOptional()\n @IsBoolean()\n passwordLoginEnabled?: boolean;\n\n @ApiProperty({ example: 1 })\n @IsInt()\n statoRegistrazione!: number;\n}\n\nexport class AuthenticatedTokenPayloadDto {\n @ApiProperty({ type: AuthenticatedUserPayloadDto })\n userData!: AuthenticatedUserPayloadDto;\n}\n"]}
1
+ {"version":3,"file":"AuthenticatedUserPayloadDto.js","sourceRoot":"","sources":["../../../src/accessi-module/Dtos/AuthenticatedUserPayloadDto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmE;AACnE,qDAA8E;AAE9E,MAAa,2BAA2B;CAqCvC;AArCD,kEAqCC;AAjCC;IAHC,IAAA,qBAAW,EAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC7B,IAAA,uBAAK,GAAE;IACP,IAAA,qBAAG,EAAC,CAAC,CAAC;;iEACe;AAKtB;IAHC,IAAA,6BAAmB,EAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC;IACtD,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;0DACI;AAIf;IAFC,IAAA,qBAAW,EAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC/B,IAAA,2BAAS,GAAE;;8DACQ;AAIpB;IAFC,IAAA,qBAAW,EAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC/B,IAAA,2BAAS,GAAE;;8DACQ;AAKpB;IAHC,IAAA,6BAAmB,EAAC,EAAE,WAAW,EAAE,6CAA6C,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACnG,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;mEACa;AAKzB;IAHC,IAAA,6BAAmB,EAAC,EAAE,WAAW,EAAE,8CAA8C,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACpG,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;6EACuB;AAKnC;IAHC,IAAA,6BAAmB,EAAC,EAAE,WAAW,EAAE,sCAAsC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3F,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;yEACmB;AAI/B;IAFC,IAAA,qBAAW,EAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IAC3B,IAAA,uBAAK,GAAE;;uEACoB;AAG9B,MAAa,4BAA4B;CAGxC;AAHD,oEAGC;AADC;IADC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC;8BACxC,2BAA2B;8DAAC","sourcesContent":["import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';\nimport { IsBoolean, IsInt, IsOptional, IsString, Min } from 'class-validator';\n\nexport class AuthenticatedUserPayloadDto {\n @ApiProperty({ example: 123 })\n @IsInt()\n @Min(1)\n codiceUtente!: number;\n\n @ApiPropertyOptional({ example: 'mario.rossi@dev.it' })\n @IsOptional()\n @IsString()\n email?: string;\n\n @ApiProperty({ example: false })\n @IsBoolean()\n flagSuper!: boolean;\n\n @ApiProperty({ example: false })\n @IsBoolean()\n flagAdmin!: boolean;\n\n @ApiPropertyOptional({ description: 'Verifica email richiesta per questo utente.', default: false })\n @IsOptional()\n @IsBoolean()\n flagDueFattori?: boolean;\n\n @ApiPropertyOptional({ description: 'Accesso consentito con il solo codice email.', default: false })\n @IsOptional()\n @IsBoolean()\n passwordlessLoginEnabled?: boolean;\n\n @ApiPropertyOptional({ description: 'Policy di login locale preesistente.', default: true })\n @IsOptional()\n @IsBoolean()\n passwordLoginEnabled?: boolean;\n\n @ApiProperty({ example: 1 })\n @IsInt()\n statoRegistrazione!: number;\n}\n\nexport class AuthenticatedTokenPayloadDto {\n @ApiProperty({ type: AuthenticatedUserPayloadDto })\n userData!: AuthenticatedUserPayloadDto;\n}\n"]}
@@ -5,6 +5,7 @@ export declare class GroupWithMenusEntity {
5
5
  descrizioneGruppo: string;
6
6
  ordineGruppo: number;
7
7
  enabled?: boolean;
8
+ nomeCampo?: string | null;
8
9
  menus: MenuEntity[];
9
10
  }
10
11
  export declare class GetGroupsWithMenusResponse extends BaseResponse {
@@ -50,9 +50,17 @@ __decorate([
50
50
  }),
51
51
  __metadata("design:type", Boolean)
52
52
  ], GroupWithMenusEntity.prototype, "enabled", void 0);
53
+ __decorate([
54
+ (0, swagger_1.ApiPropertyOptional)({
55
+ description: "Colonna UTENTI_CONFIG che regola l'abilitazione del gruppo.",
56
+ type: String,
57
+ example: "FLGDIPENDENTI"
58
+ }),
59
+ __metadata("design:type", Object)
60
+ ], GroupWithMenusEntity.prototype, "nomeCampo", void 0);
53
61
  __decorate([
54
62
  (0, swagger_1.ApiProperty)({
55
- description: "Lista dei menù associati al gruppo.",
63
+ description: "Lista dei men�� associati al gruppo.",
56
64
  type: [GetMenusResponse_1.MenuEntity]
57
65
  }),
58
66
  (0, class_validator_1.ValidateNested)({ each: true }),
@@ -1 +1 @@
1
- {"version":3,"file":"GetGroupsWithMenusResponse.js","sourceRoot":"","sources":["../../../src/accessi-module/Dtos/GetGroupsWithMenusResponse.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmE;AACnE,iDAA8C;AAC9C,qDAA0D;AAC1D,yDAAyC;AACzC,yDAAgD;AAIhD,MAAa,oBAAoB;CAqChC;AArCD,oDAqCC;AA/BG;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,4BAA4B;QACzC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,OAAO;KACnB,CAAC;;0DACoB;AAOtB;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,yBAAyB;QACtC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,kBAAkB;KAC9B,CAAC;;+DACyB;AAO3B;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,oBAAoB;QACjC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC;KACb,CAAC;;0DACoB;AAOtB;IALC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,2CAA2C;QACxD,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,IAAI;KAChB,CAAC;;qDACgB;AASlB;IAPC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,qCAAqC;QAClD,IAAI,EAAE,CAAC,6BAAU,CAAC;KACrB,CAAC;IACD,IAAA,gCAAc,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,6BAAU,CAAC;IACtB,IAAA,yBAAO,GAAE;;mDACW;AAGzB,MAAa,0BAA2B,SAAQ,2BAAY;CAK3D;AALD,gEAKC;AADG;IAHC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,CAAC,oBAAoB,CAAC,EAAE,CAAC;IAC7C,IAAA,gCAAc,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC;;0DACD","sourcesContent":["import { ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { BaseResponse } from \"./BaseResponse\";\nimport { IsArray, ValidateNested } from \"class-validator\";\nimport { Type } from \"class-transformer\";\nimport { MenuEntity } from \"./GetMenusResponse\";\n\n\n\nexport class GroupWithMenusEntity {\n @ApiProperty({\n description: \"Codice univoco del gruppo.\",\n type: String,\n example: \"GRP01\"\n })\n codiceGruppo!: string;\n\n @ApiProperty({\n description: \"Descrizione del gruppo.\",\n type: String,\n example: \"Gestione Accessi\"\n })\n descrizioneGruppo!: string;\n\n @ApiProperty({\n description: \"Ordine del gruppo.\",\n type: Number,\n example: 1\n })\n ordineGruppo!: number;\n\n @ApiPropertyOptional({\n description: \"Flag che indica se il gruppo e abilitato.\",\n type: Boolean,\n example: true\n })\n enabled?: boolean;\n\n @ApiProperty({\n description: \"Lista dei menù associati al gruppo.\",\n type: [MenuEntity]\n })\n @ValidateNested({ each: true })\n @Type(() => MenuEntity)\n @IsArray()\n menus!: MenuEntity[];\n}\n\nexport class GetGroupsWithMenusResponse extends BaseResponse {\n @ApiProperty({ type: [GroupWithMenusEntity] })\n @ValidateNested({ each: true })\n @Type(() => GroupWithMenusEntity)\n Result!: GroupWithMenusEntity[];\n}\n"]}
1
+ {"version":3,"file":"GetGroupsWithMenusResponse.js","sourceRoot":"","sources":["../../../src/accessi-module/Dtos/GetGroupsWithMenusResponse.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmE;AACnE,iDAA8C;AAC9C,qDAA0D;AAC1D,yDAAyC;AACzC,yDAAgD;AAIhD,MAAa,oBAAoB;CA4ChC;AA5CD,oDA4CC;AAtCG;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,4BAA4B;QACzC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,OAAO;KACnB,CAAC;;0DACoB;AAOtB;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,yBAAyB;QACtC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,kBAAkB;KAC9B,CAAC;;+DACyB;AAO3B;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,oBAAoB;QACjC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC;KACb,CAAC;;0DACoB;AAOtB;IALC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,2CAA2C;QACxD,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,IAAI;KAChB,CAAC;;qDACgB;AAOlB;IALC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,6DAA6D;QAC1E,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,eAAe;KAC3B,CAAC;;uDACwB;AAS1B;IAPC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,sCAAsC;QACnD,IAAI,EAAE,CAAC,6BAAU,CAAC;KACrB,CAAC;IACD,IAAA,gCAAc,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,6BAAU,CAAC;IACtB,IAAA,yBAAO,GAAE;;mDACW;AAGzB,MAAa,0BAA2B,SAAQ,2BAAY;CAK3D;AALD,gEAKC;AADG;IAHC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,CAAC,oBAAoB,CAAC,EAAE,CAAC;IAC7C,IAAA,gCAAc,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC;;0DACD","sourcesContent":["import { ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { BaseResponse } from \"./BaseResponse\";\nimport { IsArray, ValidateNested } from \"class-validator\";\nimport { Type } from \"class-transformer\";\nimport { MenuEntity } from \"./GetMenusResponse\";\n\n\n\nexport class GroupWithMenusEntity {\n @ApiProperty({\n description: \"Codice univoco del gruppo.\",\n type: String,\n example: \"GRP01\"\n })\n codiceGruppo!: string;\n\n @ApiProperty({\n description: \"Descrizione del gruppo.\",\n type: String,\n example: \"Gestione Accessi\"\n })\n descrizioneGruppo!: string;\n\n @ApiProperty({\n description: \"Ordine del gruppo.\",\n type: Number,\n example: 1\n })\n ordineGruppo!: number;\n\n @ApiPropertyOptional({\n description: \"Flag che indica se il gruppo e abilitato.\",\n type: Boolean,\n example: true\n })\n enabled?: boolean;\n\n @ApiPropertyOptional({\n description: \"Colonna UTENTI_CONFIG che regola l'abilitazione del gruppo.\",\n type: String,\n example: \"FLGDIPENDENTI\"\n })\n nomeCampo?: string | null;\n\n @ApiProperty({\n description: \"Lista dei men�� associati al gruppo.\",\n type: [MenuEntity]\n })\n @ValidateNested({ each: true })\n @Type(() => MenuEntity)\n @IsArray()\n menus!: MenuEntity[];\n}\n\nexport class GetGroupsWithMenusResponse extends BaseResponse {\n @ApiProperty({ type: [GroupWithMenusEntity] })\n @ValidateNested({ each: true })\n @Type(() => GroupWithMenusEntity)\n Result!: GroupWithMenusEntity[];\n}\n"]}
@@ -12,6 +12,7 @@ export declare class MenuEntity {
12
12
  enabled?: boolean;
13
13
  tipoAbilitazione?: number;
14
14
  note?: string | null;
15
+ nomeCampo?: string | null;
15
16
  }
16
17
  export declare class GetMenusResponse extends BaseResponse {
17
18
  Result: MenuEntity[];
@@ -118,6 +118,14 @@ __decorate([
118
118
  }),
119
119
  __metadata("design:type", Object)
120
120
  ], MenuEntity.prototype, "note", void 0);
121
+ __decorate([
122
+ (0, swagger_1.ApiPropertyOptional)({
123
+ description: "Colonna UTENTI_CONFIG che regola l'abilitazione del gruppo del menu.",
124
+ type: String,
125
+ example: "FLGDIPENDENTI"
126
+ }),
127
+ __metadata("design:type", Object)
128
+ ], MenuEntity.prototype, "nomeCampo", void 0);
121
129
  class GetMenusResponse extends BaseResponse_1.BaseResponse {
122
130
  }
123
131
  exports.GetMenusResponse = GetMenusResponse;
@@ -1 +1 @@
1
- {"version":3,"file":"GetMenusResponse.js","sourceRoot":"","sources":["../../../src/accessi-module/Dtos/GetMenusResponse.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmE;AACnE,iDAA8C;AAC9C,qDAAiD;AACjD,yDAAyC;AAMzC,MAAa,UAAU;CA4FtB;AA5FD,gCA4FC;AArFG;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,0BAA0B;QACvC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,QAAQ;KACpB,CAAC;;8CACkB;AAOpB;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,uBAAuB;QACpC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,iBAAiB;KAC7B,CAAC;;mDACuB;AAQzB;IANC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,6CAA6C;QAC1D,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,KAAK;KAClB,CAAC;;gDACoB;AAQtB;IANC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,kDAAkD;QAC/D,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,kBAAkB;QAC3B,QAAQ,EAAE,KAAK;KAClB,CAAC;;qDACyB;AAQ3B;IANC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,wCAAwC;QACrD,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,UAAU;QACnB,QAAQ,EAAE,KAAK;KAClB,CAAC;;yCACa;AAQf;IANC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,eAAe;QAC5B,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,KAAK;KAClB,CAAC;;wCACY;AAQd;IANC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,0CAA0C;QACvD,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,0BAA0B;QACnC,QAAQ,EAAE,KAAK;KAClB,CAAC;;0CACc;AAQhB;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,kBAAkB;QAC/B,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC;KACb,CAAC;;8CACkB;AAQpB;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,oBAAoB;QACjC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC;KACb,CAAC;;gDACoB;AAOtB;IALC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,yCAAyC;QACtD,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,IAAI;KAChB,CAAC;;2CACgB;AAOlB;IALC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,6BAA6B;QAC1C,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC;KACb,CAAC;;oDACwB;AAO1B;IALC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,qCAAqC;QAClD,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,mCAAmC;KAC/C,CAAC;;wCACmB;AAGzB,MAAa,gBAAiB,SAAQ,2BAAY;CAKjD;AALD,4CAKC;AADG;IAHC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;IACnC,IAAA,gCAAc,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,UAAU,CAAC;;gDACD","sourcesContent":["import { ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { BaseResponse } from \"./BaseResponse\";\nimport { ValidateNested } from \"class-validator\";\nimport { Type } from \"class-transformer\";\n\n\n\n\n\nexport class MenuEntity {\n\n @ApiProperty({\n description: \"Codice univoco del menù.\",\n type: String,\n example: \"MNU001\"\n })\n codiceMenu!: string;\n\n @ApiProperty({\n description: \"Descrizione del menù.\",\n type: String,\n example: \"Gestione Utenti\"\n })\n descrizioneMenu!: string;\n\n @ApiProperty({\n description: \"Codice del gruppo a cui appartiene il menù.\",\n type: String,\n example: \"GRP01\",\n required: false\n })\n codiceGruppo?: string;\n\n @ApiProperty({\n description: \"Descrizione del gruppo a cui appartiene il menù.\",\n type: String,\n example: \"Gestione Accessi\",\n required: false\n })\n descrizioneGruppo?: string;\n\n @ApiProperty({\n description: \"Percorso dell'icona associata al menù.\",\n type: String,\n example: \"fa-users\",\n required: false\n })\n icona?: string;\n\n @ApiProperty({\n description: \"Tipo di menù.\",\n type: String,\n example: \"admin\",\n required: false\n })\n tipo?: string;\n\n @ApiProperty({\n description: \"Percorso della pagina associata al menù.\",\n type: String,\n example: \"/accessi/gestione-utenti\",\n required: false\n })\n pagina?: string;\n\n\n @ApiProperty({\n description: \"Ordine del menu.\",\n type: Number,\n example: 1\n })\n ordineMenu!: number;\n\n\n @ApiProperty({\n description: \"Ordine del gruppo.\",\n type: Number,\n example: 1\n })\n ordineGruppo!: number;\n\n @ApiPropertyOptional({\n description: \"Flag che indica se il menu e abilitato.\",\n type: Boolean,\n example: true\n })\n enabled?: boolean;\n\n @ApiPropertyOptional({\n description: \"Tipo abilitazione opzionale\",\n type: Number,\n example: 1\n })\n tipoAbilitazione?: number;\n\n @ApiPropertyOptional({\n description: \"Nota informativa associata al menu.\",\n type: String,\n example: \"Visibile solo agli amministratori\"\n })\n note?: string | null;\n}\n\nexport class GetMenusResponse extends BaseResponse {\n @ApiProperty({ type: [MenuEntity] })\n @ValidateNested({ each: true })\n @Type(() => MenuEntity)\n Result!: MenuEntity[];\n}\n"]}
1
+ {"version":3,"file":"GetMenusResponse.js","sourceRoot":"","sources":["../../../src/accessi-module/Dtos/GetMenusResponse.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmE;AACnE,iDAA8C;AAC9C,qDAAiD;AACjD,yDAAyC;AAMzC,MAAa,UAAU;CAmGtB;AAnGD,gCAmGC;AA5FG;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,0BAA0B;QACvC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,QAAQ;KACpB,CAAC;;8CACkB;AAOpB;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,uBAAuB;QACpC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,iBAAiB;KAC7B,CAAC;;mDACuB;AAQzB;IANC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,6CAA6C;QAC1D,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,KAAK;KAClB,CAAC;;gDACoB;AAQtB;IANC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,kDAAkD;QAC/D,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,kBAAkB;QAC3B,QAAQ,EAAE,KAAK;KAClB,CAAC;;qDACyB;AAQ3B;IANC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,wCAAwC;QACrD,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,UAAU;QACnB,QAAQ,EAAE,KAAK;KAClB,CAAC;;yCACa;AAQf;IANC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,eAAe;QAC5B,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,KAAK;KAClB,CAAC;;wCACY;AAQd;IANC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,0CAA0C;QACvD,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,0BAA0B;QACnC,QAAQ,EAAE,KAAK;KAClB,CAAC;;0CACc;AAQhB;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,kBAAkB;QAC/B,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC;KACb,CAAC;;8CACkB;AAQpB;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,oBAAoB;QACjC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC;KACb,CAAC;;gDACoB;AAOtB;IALC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,yCAAyC;QACtD,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,IAAI;KAChB,CAAC;;2CACgB;AAOlB;IALC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,6BAA6B;QAC1C,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC;KACb,CAAC;;oDACwB;AAO1B;IALC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,qCAAqC;QAClD,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,mCAAmC;KAC/C,CAAC;;wCACmB;AAOrB;IALC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,sEAAsE;QACnF,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,eAAe;KAC3B,CAAC;;6CACwB;AAG9B,MAAa,gBAAiB,SAAQ,2BAAY;CAKjD;AALD,4CAKC;AADG;IAHC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;IACnC,IAAA,gCAAc,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,UAAU,CAAC;;gDACD","sourcesContent":["import { ApiProperty, ApiPropertyOptional } from \"@nestjs/swagger\";\nimport { BaseResponse } from \"./BaseResponse\";\nimport { ValidateNested } from \"class-validator\";\nimport { Type } from \"class-transformer\";\n\n\n\n\n\nexport class MenuEntity {\n\n @ApiProperty({\n description: \"Codice univoco del menù.\",\n type: String,\n example: \"MNU001\"\n })\n codiceMenu!: string;\n\n @ApiProperty({\n description: \"Descrizione del menù.\",\n type: String,\n example: \"Gestione Utenti\"\n })\n descrizioneMenu!: string;\n\n @ApiProperty({\n description: \"Codice del gruppo a cui appartiene il menù.\",\n type: String,\n example: \"GRP01\",\n required: false\n })\n codiceGruppo?: string;\n\n @ApiProperty({\n description: \"Descrizione del gruppo a cui appartiene il menù.\",\n type: String,\n example: \"Gestione Accessi\",\n required: false\n })\n descrizioneGruppo?: string;\n\n @ApiProperty({\n description: \"Percorso dell'icona associata al menù.\",\n type: String,\n example: \"fa-users\",\n required: false\n })\n icona?: string;\n\n @ApiProperty({\n description: \"Tipo di menù.\",\n type: String,\n example: \"admin\",\n required: false\n })\n tipo?: string;\n\n @ApiProperty({\n description: \"Percorso della pagina associata al menù.\",\n type: String,\n example: \"/accessi/gestione-utenti\",\n required: false\n })\n pagina?: string;\n\n\n @ApiProperty({\n description: \"Ordine del menu.\",\n type: Number,\n example: 1\n })\n ordineMenu!: number;\n\n\n @ApiProperty({\n description: \"Ordine del gruppo.\",\n type: Number,\n example: 1\n })\n ordineGruppo!: number;\n\n @ApiPropertyOptional({\n description: \"Flag che indica se il menu e abilitato.\",\n type: Boolean,\n example: true\n })\n enabled?: boolean;\n\n @ApiPropertyOptional({\n description: \"Tipo abilitazione opzionale\",\n type: Number,\n example: 1\n })\n tipoAbilitazione?: number;\n\n @ApiPropertyOptional({\n description: \"Nota informativa associata al menu.\",\n type: String,\n example: \"Visibile solo agli amministratori\"\n })\n note?: string | null;\n\n @ApiPropertyOptional({\n description: \"Colonna UTENTI_CONFIG che regola l'abilitazione del gruppo del menu.\",\n type: String,\n example: \"FLGDIPENDENTI\"\n })\n nomeCampo?: string | null;\n}\n\nexport class GetMenusResponse extends BaseResponse {\n @ApiProperty({ type: [MenuEntity] })\n @ValidateNested({ each: true })\n @Type(() => MenuEntity)\n Result!: MenuEntity[];\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import { RegisterRequest } from './RegisterRequest';
2
- declare const PublicRegisterRequest_base: import("@nestjs/common").Type<Omit<RegisterRequest, "flagDueFattori" | "flagSuper" | "flagAdminConfigurator" | "roles" | "permissions">>;
2
+ declare const PublicRegisterRequest_base: import("@nestjs/common").Type<Omit<RegisterRequest, "flagDueFattori" | "flagSuper" | "flagAdmin" | "roles" | "permissions">>;
3
3
  export declare class PublicRegisterRequest extends PublicRegisterRequest_base {
4
4
  }
5
5
  export {};
@@ -5,7 +5,7 @@ const swagger_1 = require("@nestjs/swagger");
5
5
  const RegisterRequest_1 = require("./RegisterRequest");
6
6
  class PublicRegisterRequest extends (0, swagger_1.OmitType)(RegisterRequest_1.RegisterRequest, [
7
7
  'flagSuper',
8
- 'flagAdminConfigurator',
8
+ 'flagAdmin',
9
9
  'flagDueFattori',
10
10
  'roles',
11
11
  'permissions',
@@ -1 +1 @@
1
- {"version":3,"file":"PublicRegisterRequest.js","sourceRoot":"","sources":["../../../src/accessi-module/Dtos/PublicRegisterRequest.ts"],"names":[],"mappings":";;;AAAA,6CAA2C;AAC3C,uDAAoD;AAEpD,MAAa,qBAAsB,SAAQ,IAAA,kBAAQ,EAAC,iCAAe,EAAE;IACnE,WAAW;IACX,uBAAuB;IACvB,gBAAgB;IAChB,OAAO;IACP,aAAa;CACL,CAAC;CAAG;AANd,sDAMc","sourcesContent":["import { OmitType } from '@nestjs/swagger';\nimport { RegisterRequest } from './RegisterRequest';\n\nexport class PublicRegisterRequest extends OmitType(RegisterRequest, [\n 'flagSuper',\n 'flagAdminConfigurator',\n 'flagDueFattori',\n 'roles',\n 'permissions',\n] as const) {}\n"]}
1
+ {"version":3,"file":"PublicRegisterRequest.js","sourceRoot":"","sources":["../../../src/accessi-module/Dtos/PublicRegisterRequest.ts"],"names":[],"mappings":";;;AAAA,6CAA2C;AAC3C,uDAAoD;AAEpD,MAAa,qBAAsB,SAAQ,IAAA,kBAAQ,EAAC,iCAAe,EAAE;IACnE,WAAW;IACX,WAAW;IACX,gBAAgB;IAChB,OAAO;IACP,aAAa;CACL,CAAC;CAAG;AANd,sDAMc","sourcesContent":["import { OmitType } from '@nestjs/swagger';\nimport { RegisterRequest } from './RegisterRequest';\n\nexport class PublicRegisterRequest extends OmitType(RegisterRequest, [\n 'flagSuper',\n 'flagAdmin',\n 'flagDueFattori',\n 'roles',\n 'permissions',\n] as const) {}\n"]}
@@ -7,14 +7,12 @@ export declare class RegisterRequest extends RegisterRequest_base {
7
7
  nome?: string;
8
8
  cellulare?: string | null;
9
9
  flagSuper?: boolean;
10
- flagAdminConfigurator?: boolean;
10
+ flagAdmin?: boolean;
11
11
  roles?: number[];
12
12
  permissions?: Permission[];
13
13
  avatar?: string;
14
14
  flagDueFattori?: boolean;
15
15
  paginaDefault?: string;
16
- nummac?: number;
17
- ragSocCli?: string;
18
16
  htmlMail?: string;
19
17
  }
20
18
  export {};
@@ -65,13 +65,13 @@ __decorate([
65
65
  ], RegisterRequest.prototype, "flagSuper", void 0);
66
66
  __decorate([
67
67
  (0, swagger_1.ApiPropertyOptional)({
68
- description: "Flag che indica se l'utente è configuratore",
68
+ description: "Flag che indica se l'utente è configuratore",
69
69
  example: false,
70
70
  }),
71
71
  (0, class_validator_1.IsOptional)(),
72
72
  (0, class_validator_1.IsBoolean)({ message: "Il flag configuratore deve essere booleano." }),
73
73
  __metadata("design:type", Boolean)
74
- ], RegisterRequest.prototype, "flagAdminConfigurator", void 0);
74
+ ], RegisterRequest.prototype, "flagAdmin", void 0);
75
75
  __decorate([
76
76
  (0, swagger_1.ApiPropertyOptional)({
77
77
  description: "Ruoli assegnati all'utente.",
@@ -129,26 +129,6 @@ __decorate([
129
129
  (0, class_validator_1.IsString)({ message: "La pagina di default deve essere una stringa." }),
130
130
  __metadata("design:type", String)
131
131
  ], RegisterRequest.prototype, "paginaDefault", void 0);
132
- __decorate([
133
- (0, swagger_1.ApiPropertyOptional)({
134
- description: "Numero MAC associato all'utente.",
135
- example: 12,
136
- }),
137
- (0, class_validator_1.IsOptional)(),
138
- (0, class_transformer_1.Type)(() => Number),
139
- (0, class_validator_1.IsInt)({ message: 'Il numero MAC deve essere un intero.' }),
140
- (0, class_validator_1.Min)(0, { message: 'Il numero MAC non puo essere negativo.' }),
141
- __metadata("design:type", Number)
142
- ], RegisterRequest.prototype, "nummac", void 0);
143
- __decorate([
144
- (0, swagger_1.ApiPropertyOptional)({
145
- description: "Ragione sociale cliente.",
146
- example: "ALIVAL STOCK",
147
- }),
148
- (0, class_validator_1.IsOptional)(),
149
- (0, class_validator_1.IsString)({ message: "La ragione sociale deve essere una stringa." }),
150
- __metadata("design:type", String)
151
- ], RegisterRequest.prototype, "ragSocCli", void 0);
152
132
  __decorate([
153
133
  (0, swagger_1.ApiPropertyOptional)({
154
134
  description: "HTML mail personalizzato",
@@ -1 +1 @@
1
- {"version":3,"file":"RegisterRequest.js","sourceRoot":"","sources":["../../../src/accessi-module/Dtos/RegisterRequest.ts"],"names":[],"mappings":"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","sourcesContent":["import { ApiProperty, ApiPropertyOptional, OmitType } from \"@nestjs/swagger\";\nimport { Transform, Type } from \"class-transformer\";\nimport {\n ArrayUnique,\n IsArray,\n IsBoolean,\n IsInt,\n Min,\n IsOptional,\n IsString,\n Length,\n ValidateNested,\n} from \"class-validator\";\nimport { Permission } from \"./Permission\";\nimport { TipoAbilitazione } from \"./TipoAbilitazione\";\nimport { FiltriUtente } from \"./FiltriUtente\";\n\nexport class RegisterRequest extends OmitType(FiltriUtente, ['codUte'] as const) {\n @ApiProperty({\n description: \"Email dell'utente.\",\n example: \"mario.rossi@dev.it\",\n })\n @IsString({ message: \"L'email deve essere una stringa.\" })\n @Length(3, 254, { message: \"L'email deve essere compresa tra 3 e 254 caratteri.\" })\n email!: string;\n\n @ApiPropertyOptional({\n description: \"Cognome dell'utente.\",\n example: \"Rossi\",\n })\n @IsOptional()\n @IsString({ message: \"Il cognome deve essere una stringa.\" })\n @Length(1, 255, { message: \"Il cognome deve essere compreso tra 1 e 255 caratteri.\" })\n cognome?: string;\n\n @ApiPropertyOptional({ description: \"Nome dell'utente.\", example: \"Mario\" })\n @IsOptional()\n @IsString({ message: \"Il nome deve essere una stringa.\" })\n @Length(1, 255, { message: \"Il nome deve essere compreso tra 1 e 255 caratteri.\" })\n nome?: string;\n\n @ApiPropertyOptional({\n description: \"Numero di cellulare.\",\n type: String,\n example: \"+393401234567\",\n nullable: true,\n })\n @IsOptional()\n @IsString({ message: \"Il cellulare deve essere una stringa.\" })\n @Length(1, 50, { message: \"Il cellulare deve essere compreso tra 1 e 50 caratteri.\" })\n cellulare?: string | null;\n\n @ApiPropertyOptional({ description: \"Flag superutente.\", example: false })\n @IsOptional()\n @IsBoolean({ message: \"Il flag superutente deve essere booleano.\" })\n flagSuper?: boolean;\n\n @ApiPropertyOptional({\n description: \"Flag che indica se l'utente è configuratore\",\n example: false,\n })\n @IsOptional()\n @IsBoolean({ message: \"Il flag configuratore deve essere booleano.\" })\n flagAdminConfigurator?: boolean;\n\n @ApiPropertyOptional({\n description: \"Ruoli assegnati all'utente.\",\n example: [1, 2],\n })\n @IsOptional()\n @IsArray({ message: \"I ruoli devono essere un array.\" })\n @ArrayUnique({ message: \"I ruoli non possono contenere duplicati.\" })\n @Type(() => Number)\n @IsInt({ each: true, message: \"Ogni ruolo deve essere un intero.\" })\n roles?: number[];\n\n @ApiPropertyOptional({\n description: \"Permessi assegnati all'utente.\",\n type: [Permission],\n example: [\n {\n codiceMenu: \"MNUOFFICINA\",\n tipoAbilitazione: TipoAbilitazione.SCRITTURA,\n },\n ],\n })\n @IsOptional()\n @IsArray({ message: \"I permessi devono essere un array.\" })\n @ValidateNested({ each: true })\n @Type(() => Permission)\n permissions?: Permission[];\n\n @ApiPropertyOptional({\n description: \"Avatar dell'utente.\",\n example: \"user.svg\",\n })\n @IsOptional()\n @IsString({ message: \"L'avatar deve essere una stringa.\" })\n avatar?: string;\n\n @ApiPropertyOptional({\n description: \"Flag autenticazione a due fattori.\",\n example: false,\n })\n @IsOptional()\n @IsBoolean({ message: \"Il flag due fattori deve essere booleano.\" })\n @Transform(({ obj, key }) => obj[key])\n flagDueFattori?: boolean;\n\n @ApiPropertyOptional({\n description: \"Pagina di default dell'utente.\",\n example: \"/dashboard\",\n })\n @IsOptional()\n @IsString({ message: \"La pagina di default deve essere una stringa.\" })\n paginaDefault?: string;\n\n @ApiPropertyOptional({\n description: \"Numero MAC associato all'utente.\",\n example: 12,\n })\n @IsOptional()\n @Type(() => Number)\n @IsInt({ message: 'Il numero MAC deve essere un intero.' })\n @Min(0, { message: 'Il numero MAC non puo essere negativo.' })\n nummac?: number;\n\n @ApiPropertyOptional({\n description: \"Ragione sociale cliente.\",\n example: \"ALIVAL STOCK\",\n })\n @IsOptional()\n @IsString({ message: \"La ragione sociale deve essere una stringa.\" })\n ragSocCli?: string;\n\n @ApiPropertyOptional({\n description: \"HTML mail personalizzato\",\n example: \"<html></html>\",\n })\n @IsOptional()\n @IsString({ message: \"L'HTML della mail deve essere una stringa.\" })\n htmlMail?: string;\n}\n"]}
1
+ {"version":3,"file":"RegisterRequest.js","sourceRoot":"","sources":["../../../src/accessi-module/Dtos/RegisterRequest.ts"],"names":[],"mappings":"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","sourcesContent":["import { ApiProperty, ApiPropertyOptional, OmitType } from \"@nestjs/swagger\";\nimport { Transform, Type } from \"class-transformer\";\nimport {\n ArrayUnique,\n IsArray,\n IsBoolean,\n IsInt,\n IsOptional,\n IsString,\n Length,\n ValidateNested,\n} from \"class-validator\";\nimport { Permission } from \"./Permission\";\nimport { TipoAbilitazione } from \"./TipoAbilitazione\";\nimport { FiltriUtente } from \"./FiltriUtente\";\n\nexport class RegisterRequest extends OmitType(FiltriUtente, ['codUte'] as const) {\n @ApiProperty({\n description: \"Email dell'utente.\",\n example: \"mario.rossi@dev.it\",\n })\n @IsString({ message: \"L'email deve essere una stringa.\" })\n @Length(3, 254, { message: \"L'email deve essere compresa tra 3 e 254 caratteri.\" })\n email!: string;\n\n @ApiPropertyOptional({\n description: \"Cognome dell'utente.\",\n example: \"Rossi\",\n })\n @IsOptional()\n @IsString({ message: \"Il cognome deve essere una stringa.\" })\n @Length(1, 255, { message: \"Il cognome deve essere compreso tra 1 e 255 caratteri.\" })\n cognome?: string;\n\n @ApiPropertyOptional({ description: \"Nome dell'utente.\", example: \"Mario\" })\n @IsOptional()\n @IsString({ message: \"Il nome deve essere una stringa.\" })\n @Length(1, 255, { message: \"Il nome deve essere compreso tra 1 e 255 caratteri.\" })\n nome?: string;\n\n @ApiPropertyOptional({\n description: \"Numero di cellulare.\",\n type: String,\n example: \"+393401234567\",\n nullable: true,\n })\n @IsOptional()\n @IsString({ message: \"Il cellulare deve essere una stringa.\" })\n @Length(1, 50, { message: \"Il cellulare deve essere compreso tra 1 e 50 caratteri.\" })\n cellulare?: string | null;\n\n @ApiPropertyOptional({ description: \"Flag superutente.\", example: false })\n @IsOptional()\n @IsBoolean({ message: \"Il flag superutente deve essere booleano.\" })\n flagSuper?: boolean;\n\n @ApiPropertyOptional({\n description: \"Flag che indica se l'utente è configuratore\",\n example: false,\n })\n @IsOptional()\n @IsBoolean({ message: \"Il flag configuratore deve essere booleano.\" })\n flagAdmin?: boolean;\n\n @ApiPropertyOptional({\n description: \"Ruoli assegnati all'utente.\",\n example: [1, 2],\n })\n @IsOptional()\n @IsArray({ message: \"I ruoli devono essere un array.\" })\n @ArrayUnique({ message: \"I ruoli non possono contenere duplicati.\" })\n @Type(() => Number)\n @IsInt({ each: true, message: \"Ogni ruolo deve essere un intero.\" })\n roles?: number[];\n\n @ApiPropertyOptional({\n description: \"Permessi assegnati all'utente.\",\n type: [Permission],\n example: [\n {\n codiceMenu: \"MNUOFFICINA\",\n tipoAbilitazione: TipoAbilitazione.SCRITTURA,\n },\n ],\n })\n @IsOptional()\n @IsArray({ message: \"I permessi devono essere un array.\" })\n @ValidateNested({ each: true })\n @Type(() => Permission)\n permissions?: Permission[];\n\n @ApiPropertyOptional({\n description: \"Avatar dell'utente.\",\n example: \"user.svg\",\n })\n @IsOptional()\n @IsString({ message: \"L'avatar deve essere una stringa.\" })\n avatar?: string;\n\n @ApiPropertyOptional({\n description: \"Flag autenticazione a due fattori.\",\n example: false,\n })\n @IsOptional()\n @IsBoolean({ message: \"Il flag due fattori deve essere booleano.\" })\n @Transform(({ obj, key }) => obj[key])\n flagDueFattori?: boolean;\n\n @ApiPropertyOptional({\n description: \"Pagina di default dell'utente.\",\n example: \"/dashboard\",\n })\n @IsOptional()\n @IsString({ message: \"La pagina di default deve essere una stringa.\" })\n paginaDefault?: string;\n\n @ApiPropertyOptional({\n description: \"HTML mail personalizzato\",\n example: \"<html></html>\",\n })\n @IsOptional()\n @IsString({ message: \"L'HTML della mail deve essere una stringa.\" })\n htmlMail?: string;\n}\n"]}
@@ -4,7 +4,7 @@ import { FiltriUtente } from './FiltriUtente';
4
4
  declare const UserDto_base: import("@nestjs/common").Type<Omit<FiltriUtente, "codUte">>;
5
5
  /**
6
6
  * Profilo Accessi con dati anagrafici, policy di accesso e filtri legacy.
7
- * I campi amministrativi (`flagSuper`, `flagAdminConfigurator`, ruoli, grant e policy password) devono essere
7
+ * I campi amministrativi (`flagSuper`, `flagAdmin`, ruoli, grant e policy password) devono essere
8
8
  * accettati soltanto da endpoint e flussi backend esplicitamente privilegiati.
9
9
  */
10
10
  export declare class UserDto extends UserDto_base {
@@ -25,12 +25,11 @@ export declare class UserDto extends UserDto_base {
25
25
  codiceLingua?: string;
26
26
  cellulare?: string | null;
27
27
  flagSuper?: boolean;
28
- flagAdminConfigurator?: boolean;
28
+ flagAdmin?: boolean;
29
29
  passwordLoginEnabled?: boolean;
30
30
  paginaDefault?: string;
31
- nummac?: number;
32
31
  jsonMetadata?: string;
33
- ragSocCli?: string;
32
+ enableIa?: boolean;
34
33
  roles?: number[];
35
34
  permissions?: Permission[];
36
35
  }
@@ -19,7 +19,7 @@ const TipoAbilitazione_1 = require("./TipoAbilitazione");
19
19
  const FiltriUtente_1 = require("./FiltriUtente");
20
20
  /**
21
21
  * Profilo Accessi con dati anagrafici, policy di accesso e filtri legacy.
22
- * I campi amministrativi (`flagSuper`, `flagAdminConfigurator`, ruoli, grant e policy password) devono essere
22
+ * I campi amministrativi (`flagSuper`, `flagAdmin`, ruoli, grant e policy password) devono essere
23
23
  * accettati soltanto da endpoint e flussi backend esplicitamente privilegiati.
24
24
  */
25
25
  class UserDto extends (0, swagger_1.OmitType)(FiltriUtente_1.FiltriUtente, ['codUte']) {
@@ -132,7 +132,7 @@ __decorate([
132
132
  ], UserDto.prototype, "avatar", void 0);
133
133
  __decorate([
134
134
  (0, swagger_1.ApiPropertyOptional)({
135
- description: "Flag che indica se l'autenticazione a due fattori è attivata.",
135
+ description: "Flag che indica se l'autenticazione a due fattori è attivata.",
136
136
  example: true,
137
137
  }),
138
138
  (0, class_validator_1.IsOptional)(),
@@ -174,13 +174,13 @@ __decorate([
174
174
  ], UserDto.prototype, "flagSuper", void 0);
175
175
  __decorate([
176
176
  (0, swagger_1.ApiPropertyOptional)({
177
- description: "Flag che indica se l'utente è configuratore",
177
+ description: "Flag che indica se l'utente è configuratore",
178
178
  example: false,
179
179
  }),
180
180
  (0, class_validator_1.IsOptional)(),
181
181
  (0, class_validator_1.IsBoolean)({ message: 'Il flag configuratore deve essere booleano.' }),
182
182
  __metadata("design:type", Boolean)
183
- ], UserDto.prototype, "flagAdminConfigurator", void 0);
183
+ ], UserDto.prototype, "flagAdmin", void 0);
184
184
  __decorate([
185
185
  (0, swagger_1.ApiPropertyOptional)({
186
186
  description: 'Abilita il login locale con password. Se false, l utente puo autenticarsi solo tramite identita SSO attive.',
@@ -199,17 +199,6 @@ __decorate([
199
199
  (0, class_validator_1.IsString)({ message: 'La pagina di default deve essere una stringa.' }),
200
200
  __metadata("design:type", String)
201
201
  ], UserDto.prototype, "paginaDefault", void 0);
202
- __decorate([
203
- (0, swagger_1.ApiPropertyOptional)({
204
- description: "Numero MAC associato all'utente.",
205
- example: 12,
206
- }),
207
- (0, class_validator_1.IsOptional)(),
208
- (0, class_transformer_1.Type)(() => Number),
209
- (0, class_validator_1.IsInt)({ message: 'Il numero MAC deve essere un intero.' }),
210
- (0, class_validator_1.Min)(0, { message: 'Il numero MAC non puo essere negativo.' }),
211
- __metadata("design:type", Number)
212
- ], UserDto.prototype, "nummac", void 0);
213
202
  __decorate([
214
203
  (0, swagger_1.ApiPropertyOptional)({
215
204
  description: 'Metadata JSON personalizzato.',
@@ -220,11 +209,12 @@ __decorate([
220
209
  __metadata("design:type", String)
221
210
  ], UserDto.prototype, "jsonMetadata", void 0);
222
211
  __decorate([
223
- (0, swagger_1.ApiPropertyOptional)({ description: 'Ragione sociale cliente.', example: 'ACME Corp SpA' }),
212
+ (0, swagger_1.ApiPropertyOptional)({ description: 'Abilita l\'utente all\'uso dell\'assistente IA.', default: false }),
224
213
  (0, class_validator_1.IsOptional)(),
225
- (0, class_validator_1.IsString)({ message: 'La ragione sociale deve essere una stringa.' }),
226
- __metadata("design:type", String)
227
- ], UserDto.prototype, "ragSocCli", void 0);
214
+ (0, class_validator_1.IsBoolean)({ message: 'Il flag IA deve essere booleano.' }),
215
+ (0, class_transformer_1.Transform)(({ obj, key }) => obj[key]),
216
+ __metadata("design:type", Boolean)
217
+ ], UserDto.prototype, "enableIa", void 0);
228
218
  __decorate([
229
219
  (0, swagger_1.ApiPropertyOptional)({ description: "Ruoli assegnati all'utente.", example: [1, 2] }),
230
220
  (0, class_validator_1.IsOptional)(),
@@ -1 +1 @@
1
- {"version":3,"file":"UserDto.js","sourceRoot":"","sources":["../../../src/accessi-module/Dtos/UserDto.ts"],"names":[],"mappings":"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","sourcesContent":["import { ApiProperty, ApiPropertyOptional, OmitType } from '@nestjs/swagger';\nimport { Transform, Type } from 'class-transformer';\nimport {\n ArrayUnique,\n IsArray,\n IsBoolean,\n IsEnum,\n IsInt,\n IsOptional,\n IsString,\n Length,\n Min,\n ValidateNested,\n} from 'class-validator';\nimport { StatoRegistrazione } from './StatoRegistrazione';\nimport { Permission } from './Permission';\nimport { TipoAbilitazione } from './TipoAbilitazione';\nimport { FiltriUtente } from './FiltriUtente';\n\n/**\n * Profilo Accessi con dati anagrafici, policy di accesso e filtri legacy.\n * I campi amministrativi (`flagSuper`, `flagAdminConfigurator`, ruoli, grant e policy password) devono essere\n * accettati soltanto da endpoint e flussi backend esplicitamente privilegiati.\n */\nexport class UserDto extends OmitType(FiltriUtente, ['codUte'] as const) {\n @ApiProperty({ description: \"Codice identificativo univoco dell'utente.\", example: 123 })\n @IsOptional()\n @Type(() => Number)\n @IsInt({ message: 'Il codice utente deve essere un intero.' })\n @Min(1, { message: 'Il codice utente deve essere maggiore di zero.' })\n codiceUtente!: number;\n\n @ApiProperty({ description: \"Email dell'utente.\", example: 'mario.rossi@dev.it' })\n @IsOptional()\n @IsString({ message: \"L'email deve essere una stringa.\" })\n @Length(3, 254, { message: \"L'email deve essere compresa tra 3 e 254 caratteri.\" })\n email!: string;\n\n @ApiPropertyOptional({ description: \"Flag per l'accettazione del GDPR.\", example: true })\n @IsOptional()\n @IsBoolean({ message: 'Il flag GDPR deve essere booleano.' })\n flagGdpr?: boolean;\n\n @ApiPropertyOptional({\n description: 'Data di accettazione del GDPR.',\n format: 'date-time',\n example: '2024-03-18T12:34:56Z',\n })\n @IsOptional()\n @IsString({ message: 'La data GDPR deve essere una stringa.' })\n dataGdpr?: string;\n\n @ApiPropertyOptional({\n description: \"Data di inserimento dell'utente nel sistema.\",\n format: 'date-time',\n example: '2023-01-01T08:30:00Z',\n })\n @IsOptional()\n @IsString({ message: 'La data di inserimento deve essere una stringa.' })\n dataInserimento?: string;\n\n @ApiPropertyOptional({\n description: 'Data scadenza password.',\n format: 'date-time',\n example: '2025-06-01',\n })\n @IsOptional()\n @IsString({ message: 'La data scadenza password deve essere una stringa.' })\n dataScadenzaPassword?: string;\n\n @ApiPropertyOptional({\n description: \"Ultima data di accesso dell'utente.\",\n format: 'date-time',\n example: '2024-03-15T14:45:00Z',\n })\n @IsOptional()\n @IsString({ message: 'La data ultimo accesso deve essere una stringa.' })\n dataLastLogin?: string;\n\n @ApiPropertyOptional({\n description: \"Stato della registrazione dell'utente.\",\n enum: StatoRegistrazione,\n example: StatoRegistrazione.CONF,\n })\n @IsOptional()\n @IsEnum(StatoRegistrazione, { message: 'Lo stato di registrazione non e valido.' })\n statoRegistrazione?: StatoRegistrazione;\n\n @ApiPropertyOptional({\n description: \"Chiave di registrazione dell'utente.\",\n example: 'abc123xyz',\n })\n @IsOptional()\n @IsString({ message: 'La chiave registrazione deve essere una stringa.' })\n keyRegistrazione?: string;\n\n @ApiPropertyOptional({ description: \"Cognome dell'utente.\", example: 'Rossi' })\n @IsOptional()\n @IsString({ message: 'Il cognome deve essere una stringa.' })\n @Length(1, 255, { message: 'Il cognome deve essere compreso tra 1 e 255 caratteri.' })\n cognome?: string;\n\n @ApiPropertyOptional({ description: \"Nome dell'utente.\", example: 'Mario' })\n @IsOptional()\n @IsString({ message: 'Il nome deve essere una stringa.' })\n @Length(1, 255, { message: 'Il nome deve essere compreso tra 1 e 255 caratteri.' })\n nome?: string;\n\n @ApiPropertyOptional({\n description: 'Avatar (URL o base64).',\n type: String,\n example: 'https://example.com/avatar.jpg',\n nullable: true,\n })\n @IsOptional()\n @IsString({ message: \"L'avatar deve essere una stringa.\" })\n avatar?: string | null;\n\n @ApiPropertyOptional({\n description: \"Flag che indica se l'autenticazione a due fattori è attivata.\",\n example: true,\n })\n @IsOptional()\n @IsBoolean({ message: 'Il flag due fattori deve essere booleano.' })\n @Transform(({ obj, key }) => obj[key])\n flagDueFattori?: boolean;\n\n @ApiPropertyOptional({ description: 'Consente accesso con il solo codice email. Richiede flagDueFattori e viene gestito dagli amministratori.', default: false })\n @IsOptional()\n @IsBoolean()\n @Transform(({ obj, key }) => obj[key])\n passwordlessLoginEnabled?: boolean;\n\n @ApiPropertyOptional({ description: 'Codice lingua preferito.', example: 'it' })\n @IsOptional()\n @IsString({ message: 'Il codice lingua deve essere una stringa.' })\n @Length(1, 20, { message: 'Il codice lingua deve essere compreso tra 1 e 20 caratteri.' })\n codiceLingua?: string;\n\n @ApiPropertyOptional({\n description: 'Numero di cellulare.',\n type: String,\n example: '+393401234567',\n nullable: true,\n })\n @IsOptional()\n @IsString({ message: 'Il cellulare deve essere una stringa.' })\n @Length(1, 50, { message: 'Il cellulare deve essere compreso tra 1 e 50 caratteri.' })\n cellulare?: string | null;\n\n @ApiPropertyOptional({ description: 'Flag superutente.', example: false })\n @IsOptional()\n @IsBoolean({ message: 'Il flag superutente deve essere booleano.' })\n flagSuper?: boolean;\n\n @ApiPropertyOptional({\n description: \"Flag che indica se l'utente è configuratore\",\n example: false,\n })\n @IsOptional()\n @IsBoolean({ message: 'Il flag configuratore deve essere booleano.' })\n flagAdminConfigurator?: boolean;\n\n @ApiPropertyOptional({\n description: 'Abilita il login locale con password. Se false, l utente puo autenticarsi solo tramite identita SSO attive.',\n example: false,\n })\n @IsOptional()\n @IsBoolean({ message: 'Il flag login password deve essere booleano.' })\n passwordLoginEnabled?: boolean;\n\n @ApiPropertyOptional({\n description: \"Pagina di default dell'utente all'accesso.\",\n example: '/dashboard',\n })\n @IsOptional()\n @IsString({ message: 'La pagina di default deve essere una stringa.' })\n paginaDefault?: string;\n\n @ApiPropertyOptional({\n description: \"Numero MAC associato all'utente.\",\n example: 12,\n })\n @IsOptional()\n @Type(() => Number)\n @IsInt({ message: 'Il numero MAC deve essere un intero.' })\n @Min(0, { message: 'Il numero MAC non puo essere negativo.' })\n nummac?: number;\n\n @ApiPropertyOptional({\n description: 'Metadata JSON personalizzato.',\n example: '{\"theme\": \"dark\"}',\n })\n @IsOptional()\n @IsString({ message: 'I metadata JSON devono essere una stringa.' })\n jsonMetadata?: string;\n\n @ApiPropertyOptional({ description: 'Ragione sociale cliente.', example: 'ACME Corp SpA' })\n @IsOptional()\n @IsString({ message: 'La ragione sociale deve essere una stringa.' })\n ragSocCli?: string;\n\n @ApiPropertyOptional({ description: \"Ruoli assegnati all'utente.\", example: [1, 2] })\n @IsOptional()\n @IsArray({ message: 'I ruoli devono essere un array.' })\n @ArrayUnique({ message: 'I ruoli non possono contenere duplicati.' })\n @Type(() => Number)\n @IsInt({ each: true, message: 'Ogni ruolo deve essere un intero.' })\n roles?: number[];\n\n @ApiPropertyOptional({\n description: \"Permessi assegnati all'utente.\",\n type: [Permission],\n example: [{ codiceMenu: 'MNUOFFICINA', tipoAbilitazione: TipoAbilitazione.SCRITTURA }],\n })\n @IsOptional()\n @IsArray({ message: 'I permessi devono essere un array.' })\n @ValidateNested({ each: true })\n @Type(() => Permission)\n permissions?: Permission[];\n}\n"]}
1
+ {"version":3,"file":"UserDto.js","sourceRoot":"","sources":["../../../src/accessi-module/Dtos/UserDto.ts"],"names":[],"mappings":"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","sourcesContent":["import { ApiProperty, ApiPropertyOptional, OmitType } from '@nestjs/swagger';\nimport { Transform, Type } from 'class-transformer';\nimport {\n ArrayUnique,\n IsArray,\n IsBoolean,\n IsEnum,\n IsInt,\n IsOptional,\n IsString,\n Length,\n Min,\n ValidateNested,\n} from 'class-validator';\nimport { StatoRegistrazione } from './StatoRegistrazione';\nimport { Permission } from './Permission';\nimport { TipoAbilitazione } from './TipoAbilitazione';\nimport { FiltriUtente } from './FiltriUtente';\n\n/**\n * Profilo Accessi con dati anagrafici, policy di accesso e filtri legacy.\n * I campi amministrativi (`flagSuper`, `flagAdmin`, ruoli, grant e policy password) devono essere\n * accettati soltanto da endpoint e flussi backend esplicitamente privilegiati.\n */\nexport class UserDto extends OmitType(FiltriUtente, ['codUte'] as const) {\n @ApiProperty({ description: \"Codice identificativo univoco dell'utente.\", example: 123 })\n @IsOptional()\n @Type(() => Number)\n @IsInt({ message: 'Il codice utente deve essere un intero.' })\n @Min(1, { message: 'Il codice utente deve essere maggiore di zero.' })\n codiceUtente!: number;\n\n @ApiProperty({ description: \"Email dell'utente.\", example: 'mario.rossi@dev.it' })\n @IsOptional()\n @IsString({ message: \"L'email deve essere una stringa.\" })\n @Length(3, 254, { message: \"L'email deve essere compresa tra 3 e 254 caratteri.\" })\n email!: string;\n\n @ApiPropertyOptional({ description: \"Flag per l'accettazione del GDPR.\", example: true })\n @IsOptional()\n @IsBoolean({ message: 'Il flag GDPR deve essere booleano.' })\n flagGdpr?: boolean;\n\n @ApiPropertyOptional({\n description: 'Data di accettazione del GDPR.',\n format: 'date-time',\n example: '2024-03-18T12:34:56Z',\n })\n @IsOptional()\n @IsString({ message: 'La data GDPR deve essere una stringa.' })\n dataGdpr?: string;\n\n @ApiPropertyOptional({\n description: \"Data di inserimento dell'utente nel sistema.\",\n format: 'date-time',\n example: '2023-01-01T08:30:00Z',\n })\n @IsOptional()\n @IsString({ message: 'La data di inserimento deve essere una stringa.' })\n dataInserimento?: string;\n\n @ApiPropertyOptional({\n description: 'Data scadenza password.',\n format: 'date-time',\n example: '2025-06-01',\n })\n @IsOptional()\n @IsString({ message: 'La data scadenza password deve essere una stringa.' })\n dataScadenzaPassword?: string;\n\n @ApiPropertyOptional({\n description: \"Ultima data di accesso dell'utente.\",\n format: 'date-time',\n example: '2024-03-15T14:45:00Z',\n })\n @IsOptional()\n @IsString({ message: 'La data ultimo accesso deve essere una stringa.' })\n dataLastLogin?: string;\n\n @ApiPropertyOptional({\n description: \"Stato della registrazione dell'utente.\",\n enum: StatoRegistrazione,\n example: StatoRegistrazione.CONF,\n })\n @IsOptional()\n @IsEnum(StatoRegistrazione, { message: 'Lo stato di registrazione non e valido.' })\n statoRegistrazione?: StatoRegistrazione;\n\n @ApiPropertyOptional({\n description: \"Chiave di registrazione dell'utente.\",\n example: 'abc123xyz',\n })\n @IsOptional()\n @IsString({ message: 'La chiave registrazione deve essere una stringa.' })\n keyRegistrazione?: string;\n\n @ApiPropertyOptional({ description: \"Cognome dell'utente.\", example: 'Rossi' })\n @IsOptional()\n @IsString({ message: 'Il cognome deve essere una stringa.' })\n @Length(1, 255, { message: 'Il cognome deve essere compreso tra 1 e 255 caratteri.' })\n cognome?: string;\n\n @ApiPropertyOptional({ description: \"Nome dell'utente.\", example: 'Mario' })\n @IsOptional()\n @IsString({ message: 'Il nome deve essere una stringa.' })\n @Length(1, 255, { message: 'Il nome deve essere compreso tra 1 e 255 caratteri.' })\n nome?: string;\n\n @ApiPropertyOptional({\n description: 'Avatar (URL o base64).',\n type: String,\n example: 'https://example.com/avatar.jpg',\n nullable: true,\n })\n @IsOptional()\n @IsString({ message: \"L'avatar deve essere una stringa.\" })\n avatar?: string | null;\n\n @ApiPropertyOptional({\n description: \"Flag che indica se l'autenticazione a due fattori è attivata.\",\n example: true,\n })\n @IsOptional()\n @IsBoolean({ message: 'Il flag due fattori deve essere booleano.' })\n @Transform(({ obj, key }) => obj[key])\n flagDueFattori?: boolean;\n\n @ApiPropertyOptional({ description: 'Consente accesso con il solo codice email. Richiede flagDueFattori e viene gestito dagli amministratori.', default: false })\n @IsOptional()\n @IsBoolean()\n @Transform(({ obj, key }) => obj[key])\n passwordlessLoginEnabled?: boolean;\n\n @ApiPropertyOptional({ description: 'Codice lingua preferito.', example: 'it' })\n @IsOptional()\n @IsString({ message: 'Il codice lingua deve essere una stringa.' })\n @Length(1, 20, { message: 'Il codice lingua deve essere compreso tra 1 e 20 caratteri.' })\n codiceLingua?: string;\n\n @ApiPropertyOptional({\n description: 'Numero di cellulare.',\n type: String,\n example: '+393401234567',\n nullable: true,\n })\n @IsOptional()\n @IsString({ message: 'Il cellulare deve essere una stringa.' })\n @Length(1, 50, { message: 'Il cellulare deve essere compreso tra 1 e 50 caratteri.' })\n cellulare?: string | null;\n\n @ApiPropertyOptional({ description: 'Flag superutente.', example: false })\n @IsOptional()\n @IsBoolean({ message: 'Il flag superutente deve essere booleano.' })\n flagSuper?: boolean;\n\n @ApiPropertyOptional({\n description: \"Flag che indica se l'utente è configuratore\",\n example: false,\n })\n @IsOptional()\n @IsBoolean({ message: 'Il flag configuratore deve essere booleano.' })\n flagAdmin?: boolean;\n\n @ApiPropertyOptional({\n description: 'Abilita il login locale con password. Se false, l utente puo autenticarsi solo tramite identita SSO attive.',\n example: false,\n })\n @IsOptional()\n @IsBoolean({ message: 'Il flag login password deve essere booleano.' })\n passwordLoginEnabled?: boolean;\n\n @ApiPropertyOptional({\n description: \"Pagina di default dell'utente all'accesso.\",\n example: '/dashboard',\n })\n @IsOptional()\n @IsString({ message: 'La pagina di default deve essere una stringa.' })\n paginaDefault?: string;\n\n @ApiPropertyOptional({\n description: 'Metadata JSON personalizzato.',\n example: '{\"theme\": \"dark\"}',\n })\n @IsOptional()\n @IsString({ message: 'I metadata JSON devono essere una stringa.' })\n jsonMetadata?: string;\n\n @ApiPropertyOptional({ description: 'Abilita l\\'utente all\\'uso dell\\'assistente IA.', default: false })\n @IsOptional()\n @IsBoolean({ message: 'Il flag IA deve essere booleano.' })\n @Transform(({ obj, key }) => obj[key])\n enableIa?: boolean;\n\n @ApiPropertyOptional({ description: \"Ruoli assegnati all'utente.\", example: [1, 2] })\n @IsOptional()\n @IsArray({ message: 'I ruoli devono essere un array.' })\n @ArrayUnique({ message: 'I ruoli non possono contenere duplicati.' })\n @Type(() => Number)\n @IsInt({ each: true, message: 'Ogni ruolo deve essere un intero.' })\n roles?: number[];\n\n @ApiPropertyOptional({\n description: \"Permessi assegnati all'utente.\",\n type: [Permission],\n example: [{ codiceMenu: 'MNUOFFICINA', tipoAbilitazione: TipoAbilitazione.SCRITTURA }],\n })\n @IsOptional()\n @IsArray({ message: 'I permessi devono essere un array.' })\n @ValidateNested({ each: true })\n @Type(() => Permission)\n permissions?: Permission[];\n}\n"]}
@@ -379,13 +379,14 @@ let PermissionService = class PermissionService {
379
379
  M.CODGRP AS codiceGruppo,
380
380
  G.DESGRP AS descrizioneGruppo,
381
381
  M.ICON AS icona,
382
- M.CODTIP AS tipo,
383
- M.PAGINA AS pagina,
384
- M.NOTE AS note
385
- FROM MENU M
386
- LEFT JOIN MENU_GRP G ON M.CODGRP = G.CODGRP
387
- WHERE M.FLGENABLED = 1 AND COALESCE(G.FLGENABLED, 1) = 1
388
- ORDER BY G.CODGRP, M.CODMNU
382
+ M.CODTIP AS tipo,
383
+ M.PAGINA AS pagina,
384
+ M.NOTE AS note,
385
+ G.NOMECAMPO AS nome_campo
386
+ FROM MENU M
387
+ LEFT JOIN MENU_GRP G ON M.CODGRP = G.CODGRP
388
+ WHERE M.FLGENABLED = 1 AND COALESCE(G.FLGENABLED, 1) = 1
389
+ ORDER BY G.CODGRP, M.CODMNU
389
390
  `;
390
391
  const result = yield Orm_1.Orm.query(this.accessiOptions.databaseOptions, query, []);
391
392
  return result.map(Utilities_1.RestUtilities.convertKeysToCamelCase);
@@ -413,7 +414,8 @@ let PermissionService = class PermissionService {
413
414
  G.ORDINE AS ordine_gruppo,
414
415
  M.ORDINE as ordine_menu,
415
416
  M.FLGENABLED AS menu_enabled,
416
- G.FLGENABLED AS group_enabled
417
+ G.FLGENABLED AS group_enabled,
418
+ G.NOMECAMPO AS nome_campo
417
419
  FROM MENU M
418
420
  LEFT JOIN MENU_GRP G ON M.CODGRP = G.CODGRP
419
421
  ${filtersClause}
@@ -422,7 +424,7 @@ let PermissionService = class PermissionService {
422
424
  const result = yield Orm_1.Orm.query(this.accessiOptions.databaseOptions, query, []);
423
425
  const groupMap = new Map();
424
426
  result.forEach((row) => {
425
- var _a, _b, _c;
427
+ var _a, _b, _c, _d;
426
428
  const converted = Utilities_1.RestUtilities.convertKeysToCamelCase(row);
427
429
  const { menuEnabled, groupEnabled } = converted, menuBase = __rest(converted, ["menuEnabled", "groupEnabled"]);
428
430
  const normalizedGroupKey = (_a = menuBase.codiceGruppo) !== null && _a !== void 0 ? _a : '__UNGROUPED__';
@@ -433,6 +435,7 @@ let PermissionService = class PermissionService {
433
435
  codiceGruppo: (_b = menuBase.codiceGruppo) !== null && _b !== void 0 ? _b : normalizedGroupKey,
434
436
  descrizioneGruppo: (_c = menuBase.descrizioneGruppo) !== null && _c !== void 0 ? _c : '',
435
437
  ordineGruppo: menuBase.ordineGruppo,
438
+ nomeCampo: (_d = menuBase.nomeCampo) !== null && _d !== void 0 ? _d : null,
436
439
  enabled: groupEnabledFlag,
437
440
  menus: [],
438
441
  });