Mm 63844 add end user indicators (#30971)

MM-63844 - ABAC add end user indicators to channel manage users
Этот коммит содержится в:
Pablo Vélez
2025-05-15 15:25:19 +02:00
коммит произвёл GitHub
родитель fbdecd806c
Коммит f9a92c1700
22 изменённых файлов: 2232 добавлений и 788 удалений

Просмотреть файл

@@ -3,7 +3,7 @@
/* eslint-disable max-lines */
import type {AccessControlPolicy, CELExpressionError, AccessControlTestResult, AccessControlPoliciesResult, AccessControlPolicyChannelsResult, AccessControlVisualAST} from '@mattermost/types/access_control';
import type {AccessControlPolicy, CELExpressionError, AccessControlTestResult, AccessControlPoliciesResult, AccessControlPolicyChannelsResult, AccessControlVisualAST, AccessControlAttributes} from '@mattermost/types/access_control';
import type {ClusterInfo, AnalyticsRow, SchemaMigration, LogFilterQuery} from '@mattermost/types/admin';
import type {AppBinding, AppCallRequest, AppCallResponse} from '@mattermost/types/apps';
import type {Audit} from '@mattermost/types/audits';
@@ -4512,6 +4512,13 @@ export default class Client4 {
{method: 'post', body: JSON.stringify({expression})},
);
};
getChannelAccessControlAttributes = (channelId: string) => {
return this.doFetch<AccessControlAttributes>(
`${this.getChannelRoute(channelId)}/access_control/attributes`,
{method: 'get'},
);
};
}
export function parseAndMergeNestedHeaders(originalHeaders: any) {

Просмотреть файл

@@ -53,11 +53,6 @@ export type AccessControlTestResult = {
total: number;
}
export type AccessControlEntity = {
name: string;
attributes: AccessControlAttribute[];
}
export type AccessControlAttribute = {
name: string;
values: string[];
@@ -73,3 +68,19 @@ export type AccessControlVisualASTNode = {
value: any;
value_type: number;
}
/**
* Type definition for access control attributes
*/
export type AccessControlAttributes = Record<string, string[]>;
/**
* Interface for entities that can have access control
*/
export interface AccessControlled {
/**
* Whether access control is enforced for this entity
*/
access_control_enforced?: boolean;
}