chore: auto-generate protobuf files [skip ci]
This commit is contained in:
@@ -11,25 +11,26 @@ import { Observable } from "rxjs";
|
||||
|
||||
export const protobufPackage = "users.v1";
|
||||
|
||||
export interface GetMeRequest {
|
||||
id: string;
|
||||
}
|
||||
|
||||
export interface GetMeResponse {
|
||||
user: User | undefined;
|
||||
}
|
||||
|
||||
export interface CreateUserRequest {
|
||||
id: string;
|
||||
}
|
||||
|
||||
export interface CreateUserResponse {
|
||||
success: boolean;
|
||||
}
|
||||
|
||||
export interface ChangeMeRequest {
|
||||
export interface GetProfileRequest {
|
||||
/** Берется из access токена на API шлюзе */
|
||||
userId: string;
|
||||
}
|
||||
|
||||
export interface GetProfileResponse {
|
||||
id: string;
|
||||
email?: string | undefined;
|
||||
phone?: string | undefined;
|
||||
fullName?: string | undefined;
|
||||
avatarUrl?: string | undefined;
|
||||
isPublic: boolean;
|
||||
timezone: string;
|
||||
language: string;
|
||||
customStatusText?: string | undefined;
|
||||
customStatusEmoji?: string | undefined;
|
||||
}
|
||||
|
||||
export interface UpdateProfileRequest {
|
||||
userId: string;
|
||||
sessionId: string;
|
||||
email?: string | undefined;
|
||||
phone?: string | undefined;
|
||||
fullName?: string | undefined;
|
||||
@@ -41,59 +42,59 @@ export interface ChangeMeRequest {
|
||||
isPublic?: boolean | undefined;
|
||||
}
|
||||
|
||||
export interface ChangeMeResponse {
|
||||
export interface UpdateProfileResponse {
|
||||
success: boolean;
|
||||
message: string;
|
||||
}
|
||||
|
||||
export interface User {
|
||||
id: string;
|
||||
username?: string | undefined;
|
||||
/** Вызывается другими сервисами при создании аккаунта */
|
||||
export interface CreateProfileRequest {
|
||||
/** Обязательно передаем ID созданного аккаунта! */
|
||||
userId: string;
|
||||
email?: string | undefined;
|
||||
phone?: string | undefined;
|
||||
fullName?: string | undefined;
|
||||
isLdap: boolean;
|
||||
status?: string | undefined;
|
||||
roles: string[];
|
||||
phone?: string | undefined;
|
||||
avatarUrl?: string | undefined;
|
||||
employeeId?: string | undefined;
|
||||
presence?: string | undefined;
|
||||
lastActive?: string | undefined;
|
||||
customStatusText?: string | undefined;
|
||||
customStatusEmoji?: string | undefined;
|
||||
timezone?: string | undefined;
|
||||
language?: string | undefined;
|
||||
twoFaEnabled: boolean;
|
||||
hasPin: boolean;
|
||||
}
|
||||
|
||||
export interface CreateProfileResponse {
|
||||
success: boolean;
|
||||
}
|
||||
|
||||
export const USERS_V1_PACKAGE_NAME = "users.v1";
|
||||
|
||||
export interface UsersServiceClient {
|
||||
getMe(request: GetMeRequest, metadata?: Metadata): Observable<GetMeResponse>;
|
||||
getProfile(request: GetProfileRequest, metadata?: Metadata): Observable<GetProfileResponse>;
|
||||
|
||||
changeMe(request: ChangeMeRequest, metadata?: Metadata): Observable<ChangeMeResponse>;
|
||||
updateProfile(request: UpdateProfileRequest, metadata?: Metadata): Observable<UpdateProfileResponse>;
|
||||
|
||||
createUser(request: CreateUserRequest, metadata?: Metadata): Observable<CreateUserResponse>;
|
||||
/** Для системного использования (вызывается из Auth/Admin) */
|
||||
|
||||
createProfile(request: CreateProfileRequest, metadata?: Metadata): Observable<CreateProfileResponse>;
|
||||
}
|
||||
|
||||
export interface UsersServiceController {
|
||||
getMe(request: GetMeRequest, metadata?: Metadata): Promise<GetMeResponse> | Observable<GetMeResponse> | GetMeResponse;
|
||||
|
||||
changeMe(
|
||||
request: ChangeMeRequest,
|
||||
getProfile(
|
||||
request: GetProfileRequest,
|
||||
metadata?: Metadata,
|
||||
): Promise<ChangeMeResponse> | Observable<ChangeMeResponse> | ChangeMeResponse;
|
||||
): Promise<GetProfileResponse> | Observable<GetProfileResponse> | GetProfileResponse;
|
||||
|
||||
createUser(
|
||||
request: CreateUserRequest,
|
||||
updateProfile(
|
||||
request: UpdateProfileRequest,
|
||||
metadata?: Metadata,
|
||||
): Promise<CreateUserResponse> | Observable<CreateUserResponse> | CreateUserResponse;
|
||||
): Promise<UpdateProfileResponse> | Observable<UpdateProfileResponse> | UpdateProfileResponse;
|
||||
|
||||
/** Для системного использования (вызывается из Auth/Admin) */
|
||||
|
||||
createProfile(
|
||||
request: CreateProfileRequest,
|
||||
metadata?: Metadata,
|
||||
): Promise<CreateProfileResponse> | Observable<CreateProfileResponse> | CreateProfileResponse;
|
||||
}
|
||||
|
||||
export function UsersServiceControllerMethods() {
|
||||
return function (constructor: Function) {
|
||||
const grpcMethods: string[] = ["getMe", "changeMe", "createUser"];
|
||||
const grpcMethods: string[] = ["getProfile", "updateProfile", "createProfile"];
|
||||
for (const method of grpcMethods) {
|
||||
const descriptor: any = Reflect.getOwnPropertyDescriptor(constructor.prototype, method);
|
||||
GrpcMethod("UsersService", method)(constructor.prototype[method], method, descriptor);
|
||||
|
||||
Reference in New Issue
Block a user