Compare commits

..
Author SHA1 Message Date
Marcos Rodrigues 76485f929d FIX: user patch route 2025-12-26 17:53:02 -03:00
Marcos Rodrigues Silva 1f9d0c29ec Merge pull request #425 from dadosfera/beta
Beta
2025-12-18 17:42:10 -03:00
Marcos Rodrigues Silva e7f410831f Merge pull request #395 from dadosfera/beta
Beta
2025-12-01 17:47:24 -03:00
5 changed files with 15 additions and 21 deletions
-9
View File
@@ -9649,9 +9649,6 @@
"public", "public",
"private" "private"
] ]
},
"docs": {
"type": "string"
} }
}, },
"required": [ "required": [
@@ -9906,9 +9903,6 @@
"public", "public",
"private" "private"
] ]
},
"docs": {
"type": "string"
} }
}, },
"required": [ "required": [
@@ -9948,9 +9942,6 @@
}, },
"embed": { "embed": {
"$ref": "#/components/schemas/EmbedObject" "$ref": "#/components/schemas/EmbedObject"
},
"docs": {
"type": "string"
} }
}, },
"required": [ "required": [
+5 -4
View File
@@ -17,7 +17,7 @@
"@aws-sdk/signature-v4": "^3.370.0", "@aws-sdk/signature-v4": "^3.370.0",
"@dadosfera/dadosfera-logs": "^1.0.0-beta.4", "@dadosfera/dadosfera-logs": "^1.0.0-beta.4",
"@dadosfera/protospack": "2.5.3", "@dadosfera/protospack": "2.5.3",
"@dadosfera/protospack-v2": "3.38.0-beta.19", "@dadosfera/protospack-v2": "3.38.0-beta.18",
"@grpc/grpc-js": "^1.9.3", "@grpc/grpc-js": "^1.9.3",
"@grpc/proto-loader": "^0.7.9", "@grpc/proto-loader": "^0.7.9",
"@nestjs/cli": "^9.5.0", "@nestjs/cli": "^9.5.0",
@@ -2972,9 +2972,10 @@
} }
}, },
"node_modules/@dadosfera/protospack-v2": { "node_modules/@dadosfera/protospack-v2": {
"version": "3.38.0-beta.19", "version": "3.38.0-beta.18",
"resolved": "https://dadosfera-611330257153.d.codeartifact.us-east-1.amazonaws.com/npm/dadosfera-npm/@dadosfera/protospack-v2/-/protospack-v2-3.38.0-beta.19.tgz", "resolved": "https://dadosfera-611330257153.d.codeartifact.us-east-1.amazonaws.com/npm/dadosfera-npm/@dadosfera/protospack-v2/-/protospack-v2-3.38.0-beta.18.tgz",
"integrity": "sha512-qevGunl1IKv4POa2hhXNaDpqlh/bvnq5Hxo6534OHYPZ//S+XcRZgTrxFnylK3+uoROM8epF3Mey5GwynxY7Tw==", "integrity": "sha512-rD2UOKa0P17A6YXIpclXF7F9b86mhRNE7fImTrbFamOcHpGmXBBVU8U53mCfLzzOA+MdDZ4/1uDNurCyQCjsLQ==",
"license": "ISC",
"dependencies": { "dependencies": {
"@grpc/grpc-js": "^1.9.3", "@grpc/grpc-js": "^1.9.3",
"rxjs": "^7.5.5" "rxjs": "^7.5.5"
+1 -1
View File
@@ -35,7 +35,7 @@
"@aws-sdk/signature-v4": "^3.370.0", "@aws-sdk/signature-v4": "^3.370.0",
"@dadosfera/dadosfera-logs": "^1.0.0-beta.4", "@dadosfera/dadosfera-logs": "^1.0.0-beta.4",
"@dadosfera/protospack": "2.5.3", "@dadosfera/protospack": "2.5.3",
"@dadosfera/protospack-v2": "3.38.0-beta.19", "@dadosfera/protospack-v2": "3.38.0-beta.18",
"@grpc/grpc-js": "^1.9.3", "@grpc/grpc-js": "^1.9.3",
"@grpc/proto-loader": "^0.7.9", "@grpc/proto-loader": "^0.7.9",
"@nestjs/cli": "^9.5.0", "@nestjs/cli": "^9.5.0",
-6
View File
@@ -98,8 +98,6 @@ export class IDataAsset {
embed?: EmbedObject; embed?: EmbedObject;
@ApiPropertyOptional({ enum: DataAssetShareType }) @ApiPropertyOptional({ enum: DataAssetShareType })
share_type?: DataAssetShareType; share_type?: DataAssetShareType;
@ApiPropertyOptional()
docs?: string;
} }
export class IOneDataAsset { export class IOneDataAsset {
@@ -202,8 +200,6 @@ export class IUpdateDataRequest {
embed: EmbedObject; embed: EmbedObject;
@ApiPropertyOptional({ enum: DataAssetShareType }) @ApiPropertyOptional({ enum: DataAssetShareType })
share_type?: DataAssetShareType; share_type?: DataAssetShareType;
@ApiPropertyOptional()
docs?: string;
} }
export class ICreateDataAsset implements CreateDataAssetRequest { export class ICreateDataAsset implements CreateDataAssetRequest {
@ApiProperty() @ApiProperty()
@@ -218,8 +214,6 @@ export class ICreateDataAsset implements CreateDataAssetRequest {
location: string; location: string;
@ApiPropertyOptional() @ApiPropertyOptional()
embed: EmbedObject; embed: EmbedObject;
@ApiPropertyOptional()
docs: string;
} }
export class IPreview { export class IPreview {
+9 -1
View File
@@ -274,9 +274,17 @@ export class UsersController {
@Language() language: LanguageEnum, @Language() language: LanguageEnum,
) { ) {
if (user.user_id !== id || !user.permissions.includes(PERMISSIONS_GROUPS.USERS.permissions.ADMIN.seqid)) { const isSameUser = user.user_id === id;
const isSuperAdmin = user.permissions.includes(PERMISSIONS_GROUPS.USERS.permissions.ADMIN.seqid)
if (!isSameUser && !isSuperAdmin) {
throw new ErrorBuilder(ErrorCodes.AUTH.FORBIDDEN); throw new ErrorBuilder(ErrorCodes.AUTH.FORBIDDEN);
} }
if (isSameUser && !isSuperAdmin && body.roleNames) {
// Prevent users from updating their own roles
delete body.roleNames;
}
this.logger.info('updateUser', { user }); this.logger.info('updateUser', { user });
this.userService.setLanguage(language); this.userService.setLanguage(language);
return await this.userService.updateUser(body, id, user.customer_id); return await this.userService.updateUser(body, id, user.customer_id);