feat(console): granted project detail (#203)

* granted project detail

* support for grantedProjects

* getGrantedProjectGrantByIDs

* fix grant members bindings

* seperate granted from owned project detail

* lint

* dont show apps on granted projects
This commit is contained in:
Max Peintner
2020-06-10 15:52:56 +02:00
committed by GitHub
parent 9965beee9c
commit a35afd2b88
23 changed files with 2404 additions and 1773 deletions

View File

@@ -19,11 +19,11 @@ export class OrgMembersDataSource extends DataSource<OrgMember.AsObject> {
super(); super();
} }
public loadMembers(orgId: string, pageIndex: number, pageSize: number, sortDirection?: string): void { public loadMembers(pageIndex: number, pageSize: number, sortDirection?: string): void {
const offset = pageIndex * pageSize; const offset = pageIndex * pageSize;
this.loadingSubject.next(true); this.loadingSubject.next(true);
from(this.orgService.SearchOrgMembers(orgId, pageSize, offset)).pipe( from(this.orgService.SearchMyOrgMembers(pageSize, offset)).pipe(
map(resp => { map(resp => {
this.totalResult = resp.toObject().totalResult; this.totalResult = resp.toObject().totalResult;
return resp.toObject().resultList; return resp.toObject().resultList;

View File

@@ -34,7 +34,7 @@ export class OrgMembersComponent implements AfterViewInit, OnInit {
public ngOnInit(): void { public ngOnInit(): void {
this.dataSource = new OrgMembersDataSource(this.orgService); this.dataSource = new OrgMembersDataSource(this.orgService);
this.dataSource.loadMembers(this.orgId, 0, 25, 'asc'); this.dataSource.loadMembers(0, 25, 'asc');
this.selection.changed.subscribe(change => { this.selection.changed.subscribe(change => {
console.log(change); console.log(change);
@@ -52,7 +52,6 @@ export class OrgMembersComponent implements AfterViewInit, OnInit {
private loadMembersPage(): void { private loadMembersPage(): void {
this.dataSource.loadMembers( this.dataSource.loadMembers(
this.orgId,
this.paginator.pageIndex, this.paginator.pageIndex,
this.paginator.pageSize, this.paginator.pageSize,
); );
@@ -85,7 +84,7 @@ export class OrgMembersComponent implements AfterViewInit, OnInit {
if (users && users.length && roles && roles.length) { if (users && users.length && roles && roles.length) {
Promise.all(users.map(user => { Promise.all(users.map(user => {
return this.orgService.AddOrgMember(this.orgId, user.id, roles); return this.orgService.AddMyOrgMember(user.id, roles);
})).then(() => { })).then(() => {
this.toast.showError('members added'); this.toast.showError('members added');
}).catch(error => { }).catch(error => {
@@ -98,7 +97,7 @@ export class OrgMembersComponent implements AfterViewInit, OnInit {
public removeSelectedOrgMembers(): void { public removeSelectedOrgMembers(): void {
Promise.all(this.selection.selected.map(member => { Promise.all(this.selection.selected.map(member => {
return this.orgService.RemoveOrgMember(this.orgId, member.userId).then(() => { return this.orgService.RemoveMyOrgMember(member.userId).then(() => {
this.toast.showInfo('Removed successfully'); this.toast.showInfo('Removed successfully');
}).catch(error => { }).catch(error => {
this.toast.showError(error.message); this.toast.showError(error.message);

View File

@@ -0,0 +1,49 @@
<app-meta-layout>
<div class="max-width-container">
<div class="head" *ngIf="project?.id">
<a [routerLink]="[ '/projects' ]" mat-icon-button>
<mat-icon class="icon">arrow_back</mat-icon>
</a>
<h1>{{ 'PROJECT.PAGES.TITLE' | translate }} {{project?.name}}</h1>
<div class="full-width">
<p class="desc">{{ 'PROJECT.PAGES.DESCRIPTION' | translate }}</p>
</div>
</div>
<!-- <ng-template appHasRole [appHasRole]="['project.app.read:' + project?.id, 'project.app.read']">
<app-project-application-grid *ngIf="grid" [disabled]="project?.state !== ProjectState.PROJECTSTATE_ACTIVE"
(changeView)="grid = false" [projectId]="projectId"></app-project-application-grid>
<app-card *ngIf="!grid" title="{{ 'PROJECT.APP.TITLE' | translate }}">
<card-actions class="card-actions">
<button mat-icon-button (click)="grid = true">
<i matTooltip="show grid view" class="las la-th-large"></i>
</button>
</card-actions>
<app-project-applications [disabled]="project?.state !== ProjectState.PROJECTSTATE_ACTIVE"
[projectId]="projectId"></app-project-applications>
</app-card>
</ng-template> -->
<app-card>
<app-project-grant-members *ngIf="project && project.id && project.grantId"
[disabled]="project?.state !== ProjectState.PROJECTSTATE_ACTIVE" [project]="project">
</app-project-grant-members>
</app-card>
</div>
<metainfo class="side">
<div class="details">
<div class="row">
<span class="first">{{'PROJECT.TYPE.TITLE' | translate}}:</span>
<span class="second">{{'PROJECT.TYPE.'+ ProjectType.PROJECTTYPE_GRANTED | translate}}</span>
</div>
<div class="row">
<span class="first">{{'PROJECT.STATE.TITLE' | translate}}:</span>
<span *ngIf="project && project.state !== undefined"
class="second">{{'PROJECT.STATE.'+project.state | translate}}</span>
</div>
</div>
<app-changes *ngIf="project" [changeType]="ChangeType.PROJECT" [id]="project.id"></app-changes>
</metainfo>
</app-meta-layout>

View File

@@ -0,0 +1,117 @@
.head {
display: flex;
align-items: center;
border-bottom: 1px solid #ffffff20;
flex-wrap: wrap;
margin-bottom: 1rem;
a {
display: block;
}
h1 {
font-size: 1.2rem;
margin: 0 1rem;
margin-left: 2rem;
font-weight: normal;
}
.full-width {
padding-top: 1rem;
width: 100%;
display: block;
.icon-button {
margin-right: 1rem;
}
button {
border-radius: .5rem;
}
.desc {
font-size: .9rem;
color: #81868a;
}
}
}
.content {
display: flex;
flex-direction: row;
flex-wrap: wrap;
margin: 0 -.5rem;
mat-form-field {
flex: 1 1 33%;
margin: 0 .5rem;
}
}
.side {
.details {
margin-bottom: 1rem;
border-bottom: 1px solid #81868a40;
padding-bottom: 1rem;
.row {
display: flex;
margin-bottom: 0.5rem;
align-items: center;
button {
display: none;
visibility: hidden;
}
&:hover {
button {
display: inline-block;
visibility: visible;
mat-icon {
font-size: 1.2rem;
}
}
}
.first {
flex: 1;
font-size: 0.8rem;
margin-right: 0.5rem;
}
.fill-space {
flex: 1;
}
.second {
font-size: 0.8rem;
text-overflow: ellipsis;
overflow: hidden;
margin-left: 1rem;
}
a {
&:hover {
cursor: pointer;
text-decoration: underline;
}
}
}
.side-section {
color: #81868a;
}
}
.mat-tab-label {
min-width: 100px !important;
}
.flex-col {
display: flex;
flex-direction: column;
}
}

View File

@@ -0,0 +1,25 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { GrantedProjectDetailComponent } from './granted-project-detail.component';
describe('GrantedProjectDetailComponent', () => {
let component: GrantedProjectDetailComponent;
let fixture: ComponentFixture<GrantedProjectDetailComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [GrantedProjectDetailComponent],
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(GrantedProjectDetailComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View File

@@ -0,0 +1,104 @@
import { SelectionModel } from '@angular/cdk/collections';
import { Location } from '@angular/common';
import { Component, OnDestroy, OnInit } from '@angular/core';
import { MatTableDataSource } from '@angular/material/table';
import { ActivatedRoute, Params } from '@angular/router';
import { TranslateService } from '@ngx-translate/core';
import { from, Observable, of, Subscription } from 'rxjs';
import { ChangeType } from 'src/app/modules/changes/changes.component';
import {
Application,
ApplicationSearchResponse,
GrantedProject,
ProjectMember,
ProjectMemberSearchResponse,
ProjectRole,
ProjectRoleSearchResponse,
ProjectState,
ProjectType,
} from 'src/app/proto/generated/management_pb';
import { GrpcService } from 'src/app/services/grpc.service';
import { ProjectService } from 'src/app/services/project.service';
import { ToastService } from 'src/app/services/toast.service';
@Component({
selector: 'app-granted-project-detail',
templateUrl: './granted-project-detail.component.html',
styleUrls: ['./granted-project-detail.component.scss'],
})
export class GrantedProjectDetailComponent implements OnInit, OnDestroy {
public projectId: string = '';
public grantId: string = '';
public project!: GrantedProject.AsObject;
public pageSizeRoles: number = 10;
public roleDataSource: MatTableDataSource<ProjectRole.AsObject> = new MatTableDataSource<ProjectRole.AsObject>();
public roleResult!: ProjectRoleSearchResponse.AsObject;
public roleColumns: string[] = ['name', 'displayname', 'group', 'actions'];
public pageSizeMembers: number = 10;
public projectDataSource: MatTableDataSource<ProjectMember.AsObject> = new MatTableDataSource<ProjectMember.AsObject>();
public memberResult!: ProjectMemberSearchResponse.AsObject;
public memberColumns: string[] = ['firstname', 'lastname', 'username', 'email', 'roles'];
public selection: SelectionModel<ProjectMember.AsObject> = new SelectionModel<ProjectMember.AsObject>(true, []);
public pageSizeApps: number = 10;
public appsDataSource: MatTableDataSource<Application.AsObject> = new MatTableDataSource<Application.AsObject>();
public appsResult!: ApplicationSearchResponse.AsObject;
public appsColumns: string[] = ['name'];
public ProjectState: any = ProjectState;
public ProjectType: any = ProjectType;
public ChangeType: any = ChangeType;
public grid: boolean = true;
private subscription?: Subscription;
public editstate: boolean = false;
public isZitadel$: Observable<boolean> = of(false);
private zitadelsub: Subscription = new Subscription();
constructor(
public translate: TranslateService,
private route: ActivatedRoute,
private toast: ToastService,
private projectService: ProjectService,
private _location: Location,
private grpcService: GrpcService,
) {
}
public ngOnInit(): void {
this.subscription = this.route.params.subscribe(params => this.getData(params));
}
public ngOnDestroy(): void {
this.subscription?.unsubscribe();
this.zitadelsub.unsubscribe();
}
private async getData({ id, grantId }: Params): Promise<void> {
this.projectId = id;
this.grantId = grantId;
if (this.projectId && this.grantId) {
this.projectService.GetGrantedProjectGrantByID(this.projectId, this.grantId).then(proj => {
this.project = proj.toObject();
console.log(this.project);
this.isZitadel$ = from(this.projectService.SearchApplications(this.project.id, 100, 0).then(appsResp => {
const ret = appsResp.toObject().resultList
.filter(app => app.oidcConfig?.clientId === this.grpcService.clientid).length > 0;
return ret;
}));
}).catch(error => {
this.toast.showError(error.message);
});
}
this.zitadelsub = this.isZitadel$.subscribe(isZita => console.log(`zitade: ${isZita}`));
}
public navigateBack(): void {
this._location.back();
}
}

View File

@@ -42,7 +42,7 @@ export class ProjectContributorsComponent implements OnInit {
private router: Router) { } private router: Router) { }
public ngOnInit(): void { public ngOnInit(): void {
console.log(this.project); console.log('project grant members');
const promise: Promise<ProjectMemberSearchResponse> | undefined = const promise: Promise<ProjectMemberSearchResponse> | undefined =
this.projectType === ProjectType.PROJECTTYPE_OWNED ? this.projectType === ProjectType.PROJECTTYPE_OWNED ?
this.projectService.SearchProjectMembers(this.project.id, 100, 0) : this.projectService.SearchProjectMembers(this.project.id, 100, 0) :

View File

@@ -35,7 +35,7 @@
</div> </div>
<!-- show only on owned projects--> <!-- show only on owned projects-->
<ng-container *ngIf="project && projectType == ProjectType.PROJECTTYPE_OWNED; else granteddetail"> <ng-container *ngIf="project">
<ng-template appHasRole [appHasRole]="['project.app.read:' + project.id, 'project.app.read']"> <ng-template appHasRole [appHasRole]="['project.app.read:' + project.id, 'project.app.read']">
<app-project-application-grid *ngIf="grid" <app-project-application-grid *ngIf="grid"
[disabled]="project?.state !== ProjectState.PROJECTSTATE_ACTIVE" (changeView)="grid = false" [disabled]="project?.state !== ProjectState.PROJECTSTATE_ACTIVE" (changeView)="grid = false"
@@ -71,20 +71,12 @@
</ng-template> </ng-template>
</ng-container> </ng-container>
</ng-container> </ng-container>
<ng-template #granteddetail>
<app-card>
<app-project-grant-members *ngIf="project"
[disabled]="project?.state !== ProjectState.PROJECTSTATE_ACTIVE" [project]="project">
</app-project-grant-members>
</app-card>
</ng-template>
</div> </div>
<metainfo class="side"> <metainfo class="side">
<div class="details"> <div class="details">
<div class="row"> <div class="row">
<span class="first">{{'PROJECT.TYPE.TITLE' | translate}}:</span> <span class="first">{{'PROJECT.TYPE.TITLE' | translate}}:</span>
<span class="second" *ngIf="projectType">{{'PROJECT.TYPE.'+ projectType | translate}}</span> <span class="second">{{'PROJECT.TYPE.'+ ProjectType.PROJECTTYPE_OWNED | translate}}</span>
</div> </div>
<div class="row"> <div class="row">
<span class="first">{{'PROJECT.STATE.TITLE' | translate}}:</span> <span class="first">{{'PROJECT.STATE.TITLE' | translate}}:</span>
@@ -93,22 +85,16 @@
</div> </div>
</div> </div>
<ng-container *ngIf="projectType === ProjectType.PROJECTTYPE_OWNED; else grantedmeta">
<mat-tab-group mat-stretch-tabs class="tab-group" disablePagination="true"> <mat-tab-group mat-stretch-tabs class="tab-group" disablePagination="true">
<mat-tab label="Details"> <mat-tab label="Details">
<app-project-contributors *ngIf="project" <app-project-contributors *ngIf="project"
[disabled]="project?.state !== ProjectState.PROJECTSTATE_ACTIVE" [projectType]="projectType" [disabled]="project?.state !== ProjectState.PROJECTSTATE_ACTIVE"
[project]="project"> [projectType]="ProjectType.PROJECTTYPE_OWNED" [project]="project">
</app-project-contributors> </app-project-contributors>
</mat-tab> </mat-tab>
<mat-tab label="{{ 'CHANGES.PROJECT.TITLE' | translate }}" class="flex-col"> <mat-tab label="{{ 'CHANGES.PROJECT.TITLE' | translate }}" class="flex-col">
<app-changes *ngIf="project" [changeType]="ChangeType.PROJECT" [id]="project.id"></app-changes> <app-changes *ngIf="project" [changeType]="ChangeType.PROJECT" [id]="project.id"></app-changes>
</mat-tab> </mat-tab>
</mat-tab-group> </mat-tab-group>
</ng-container>
<ng-template #grantedmeta>
<app-changes *ngIf="project" [changeType]="ChangeType.PROJECT" [id]="project.id"></app-changes>
</ng-template>
</metainfo> </metainfo>
</app-meta-layout> </app-meta-layout>

View File

@@ -9,6 +9,7 @@ import { ChangeType } from 'src/app/modules/changes/changes.component';
import { import {
Application, Application,
ApplicationSearchResponse, ApplicationSearchResponse,
GrantedProject,
Project, Project,
ProjectMember, ProjectMember,
ProjectMemberSearchResponse, ProjectMemberSearchResponse,
@@ -29,9 +30,7 @@ import { ToastService } from 'src/app/services/toast.service';
}) })
export class ProjectDetailComponent implements OnInit, OnDestroy { export class ProjectDetailComponent implements OnInit, OnDestroy {
public projectId: string = ''; public projectId: string = '';
public grantId: string = ''; public project!: Project.AsObject | GrantedProject.AsObject;
public project!: Project.AsObject; // ProjectGrant.AsObject;
public projectType: ProjectType = ProjectType.PROJECTTYPE_OWNED;
public pageSizeRoles: number = 10; public pageSizeRoles: number = 10;
public roleDataSource: MatTableDataSource<ProjectRole.AsObject> = new MatTableDataSource<ProjectRole.AsObject>(); public roleDataSource: MatTableDataSource<ProjectRole.AsObject> = new MatTableDataSource<ProjectRole.AsObject>();
@@ -58,6 +57,7 @@ export class ProjectDetailComponent implements OnInit, OnDestroy {
public editstate: boolean = false; public editstate: boolean = false;
public isZitadel$: Observable<boolean> = of(false); public isZitadel$: Observable<boolean> = of(false);
private zitadelsub: Subscription = new Subscription();
constructor( constructor(
public translate: TranslateService, public translate: TranslateService,
@@ -75,43 +75,26 @@ export class ProjectDetailComponent implements OnInit, OnDestroy {
public ngOnDestroy(): void { public ngOnDestroy(): void {
this.subscription?.unsubscribe(); this.subscription?.unsubscribe();
this.zitadelsub.unsubscribe();
} }
private async getData({ id, grantId }: Params): Promise<void> { private async getData({ id }: Params): Promise<void> {
this.projectId = id; this.projectId = id;
this.grantId = grantId;
if (grantId) { if (this.projectId) {
this.projectType = ProjectType.PROJECTTYPE_GRANTED;
// this.projectService.GetGrantedProjectGrantByID(id, this.grantId).then(proj => {
// this.projectGrant = proj.toObject();
// this.isZitadel$ = from(this.projectService.SearchApplications(this.project.id, 100, 0).then(appsResp => {
// const ret = appsResp.toObject().resultList
// .filter(app => app.oidcConfig?.clientId === this.grpcService.clientid).length > 0;
// return ret;
// })); // TODO: replace with prettier thing
// }).catch(error => {
// this.toast.showError(error.message);
// });
} else {
this.projectType = ProjectType.PROJECTTYPE_OWNED;
this.projectService.GetProjectById(id).then(proj => { this.projectService.GetProjectById(id).then(proj => {
this.project = proj.toObject(); this.project = proj.toObject();
// if (this.project.type !== ProjectType.PROJECTTYPE_SELF ||
// this.project.state === ProjectState.PROJECTSTATE_INACTIVE ||
// this.project.state === ProjectState.PROJECTSTATE_UNSPECIFIED) {
// }
this.isZitadel$ = from(this.projectService.SearchApplications(this.project.id, 100, 0).then(appsResp => { this.isZitadel$ = from(this.projectService.SearchApplications(this.project.id, 100, 0).then(appsResp => {
const ret = appsResp.toObject().resultList const ret = appsResp.toObject().resultList
.filter(app => app.oidcConfig?.clientId === this.grpcService.clientid).length > 0; .filter(app => app.oidcConfig?.clientId === this.grpcService.clientid).length > 0;
return ret; return ret;
})); // TODO: replace with prettier thing }));
this.isZitadel$.subscribe(isZita => console.log(`zitade: ${isZita}`));
}).catch(error => { }).catch(error => {
this.toast.showError(error.message); this.toast.showError(error.message);
}); });
} }
this.zitadelsub = this.isZitadel$.subscribe(isZita => console.log(`zitade: ${isZita}`));
} }
public changeState(newState: ProjectState): void { public changeState(newState: ProjectState): void {
@@ -122,16 +105,12 @@ export class ProjectDetailComponent implements OnInit, OnDestroy {
this.toast.showError(error.message); this.toast.showError(error.message);
}); });
} else if (newState === ProjectState.PROJECTSTATE_INACTIVE) { } else if (newState === ProjectState.PROJECTSTATE_INACTIVE) {
this.projectService.DeactivateProject(this.projectId).then(() => { this.toast.showInfo('You cant update this project.');
this.toast.showInfo('Deactivated Project');
}).catch(error => {
this.toast.showError(error.message);
});
} }
} }
public saveProject(): void { public saveProject(): void {
this.projectService.UpdateProject(this.project).then(() => { this.projectService.UpdateProject(this.project as Project.AsObject).then(() => {
this.toast.showInfo('Project updated'); this.toast.showInfo('Project updated');
}).catch(error => { }).catch(error => {
this.toast.showInfo(error.message); this.toast.showInfo(error.message);

View File

@@ -1,7 +1,7 @@
import { DataSource } from '@angular/cdk/collections'; import { DataSource } from '@angular/cdk/collections';
import { BehaviorSubject, from, Observable, of } from 'rxjs'; import { BehaviorSubject, from, Observable, of } from 'rxjs';
import { catchError, finalize, map } from 'rxjs/operators'; import { catchError, finalize, map } from 'rxjs/operators';
import { GrantedProject, ProjectMember } from 'src/app/proto/generated/management_pb'; import { ProjectMember } from 'src/app/proto/generated/management_pb';
import { ProjectService } from 'src/app/services/project.service'; import { ProjectService } from 'src/app/services/project.service';
/** /**
@@ -19,12 +19,14 @@ export class ProjectGrantMembersDataSource extends DataSource<ProjectMember.AsOb
super(); super();
} }
public loadMembers(project: GrantedProject.AsObject, pageIndex: number, pageSize: number, sortDirection?: string): void { public loadMembers(projectId: string, grantId: string, pageIndex: number,
pageSize: number, sortDirection?: string): void {
const offset = pageIndex * pageSize; const offset = pageIndex * pageSize;
this.loadingSubject.next(true); this.loadingSubject.next(true);
from(this.projectService.SearchProjectGrantMembers(project.id, project.grantId, pageSize, offset)).pipe( from(this.projectService.SearchProjectGrantMembers(projectId,
grantId, pageSize, offset)).pipe(
map(resp => { map(resp => {
this.totalResult = resp.toObject().totalResult; this.totalResult = resp.toObject().totalResult;
return resp.toObject().resultList; return resp.toObject().resultList;
@@ -32,6 +34,7 @@ export class ProjectGrantMembersDataSource extends DataSource<ProjectMember.AsOb
catchError(() => of([])), catchError(() => of([])),
finalize(() => this.loadingSubject.next(false)), finalize(() => this.loadingSubject.next(false)),
).subscribe(members => { ).subscribe(members => {
console.log(members);
this.membersSubject.next(members); this.membersSubject.next(members);
}); });

View File

@@ -1,4 +1,4 @@
<h1>{{project?.name}} {{ 'PROJECT.MEMBER.TITLE' | translate }}</h1> <h1>{{ 'PROJECT.MEMBER.TITLE' | translate }}</h1>
<p class="desc">{{ 'PROJECT.MEMBER.DESCRIPTION' | translate }}</p> <p class="desc">{{ 'PROJECT.MEMBER.DESCRIPTION' | translate }}</p>
<div class="table-header-row"> <div class="table-header-row">

View File

@@ -3,9 +3,8 @@ import { AfterViewInit, Component, Input, OnInit, ViewChild } from '@angular/cor
import { MatDialog } from '@angular/material/dialog'; import { MatDialog } from '@angular/material/dialog';
import { MatPaginator } from '@angular/material/paginator'; import { MatPaginator } from '@angular/material/paginator';
import { MatTable } from '@angular/material/table'; import { MatTable } from '@angular/material/table';
import { ActivatedRoute } from '@angular/router';
import { tap } from 'rxjs/operators'; import { tap } from 'rxjs/operators';
import { GrantedProject, ProjectMember, User } from 'src/app/proto/generated/management_pb'; import { ProjectMember, User } from 'src/app/proto/generated/management_pb';
import { ProjectService } from 'src/app/services/project.service'; import { ProjectService } from 'src/app/services/project.service';
import { ToastService } from 'src/app/services/toast.service'; import { ToastService } from 'src/app/services/toast.service';
@@ -21,7 +20,9 @@ import { ProjectGrantMembersDataSource } from './project-grant-members-datasourc
styleUrls: ['./project-grant-members.component.scss'], styleUrls: ['./project-grant-members.component.scss'],
}) })
export class ProjectGrantMembersComponent implements AfterViewInit, OnInit { export class ProjectGrantMembersComponent implements AfterViewInit, OnInit {
@Input() public project!: GrantedProject.AsObject; @Input() public projectId!: string;
@Input() public grantId!: string;
public disabled: boolean = false; public disabled: boolean = false;
@ViewChild(MatPaginator) public paginator!: MatPaginator; @ViewChild(MatPaginator) public paginator!: MatPaginator;
@ViewChild(MatTable) public table!: MatTable<ProjectMember.AsObject>; @ViewChild(MatTable) public table!: MatTable<ProjectMember.AsObject>;
@@ -34,12 +35,12 @@ export class ProjectGrantMembersComponent implements AfterViewInit, OnInit {
constructor(private projectService: ProjectService, constructor(private projectService: ProjectService,
private dialog: MatDialog, private dialog: MatDialog,
private toast: ToastService, private toast: ToastService,
private route: ActivatedRoute) { ) {
} }
public ngOnInit(): void { public ngOnInit(): void {
this.dataSource = new ProjectGrantMembersDataSource(this.projectService); this.dataSource = new ProjectGrantMembersDataSource(this.projectService);
this.dataSource.loadMembers(this.project, 0, 25, 'asc'); this.dataSource.loadMembers(this.projectId, this.grantId, 0, 25, 'asc');
} }
public ngAfterViewInit(): void { public ngAfterViewInit(): void {
@@ -48,33 +49,33 @@ export class ProjectGrantMembersComponent implements AfterViewInit, OnInit {
tap(() => this.loadMembersPage()), tap(() => this.loadMembersPage()),
) )
.subscribe(); .subscribe();
} }
private loadMembersPage(): void { private loadMembersPage(): void {
this.dataSource.loadMembers( this.dataSource.loadMembers(
this.project, this.projectId,
this.grantId,
this.paginator.pageIndex, this.paginator.pageIndex,
this.paginator.pageSize, this.paginator.pageSize,
); );
} }
public removeProjectMemberSelection(): void { public removeProjectMemberSelection(): void {
Promise.all(this.selection.selected.map(member => { // Promise.all(this.selection.selected.map(member => {
return this.projectService.RemoveProjectMember(this.project.id, member.userId).then(() => { // return this.projectService.RemoveProjectMember(this.projectId, this.grantId, member.userId).then(() => {
this.toast.showInfo('Removed successfully'); // this.toast.showInfo('Removed successfully');
}).catch(error => { // }).catch(error => {
this.toast.showError(error.message); // this.toast.showError(error.message);
}); // });
})); // }));
} }
public removeMember(member: ProjectMember.AsObject): void { public removeMember(member: ProjectMember.AsObject): void {
this.projectService.RemoveProjectMember(this.project.id, member.userId).then(() => { // this.projectService.RemoveProjectMember(this.grantedProject.id, member.userId).then(() => {
this.toast.showInfo('Member removed successfully'); // this.toast.showInfo('Member removed successfully');
}).catch(error => { // }).catch(error => {
this.toast.showError(error.message); // this.toast.showError(error.message);
}); // });
} }
public isAllSelected(): boolean { public isAllSelected(): boolean {
@@ -93,19 +94,21 @@ export class ProjectGrantMembersComponent implements AfterViewInit, OnInit {
const dialogRef = this.dialog.open(ProjectMemberCreateDialogComponent, { const dialogRef = this.dialog.open(ProjectMemberCreateDialogComponent, {
data: { data: {
creationType: CreationType.PROJECT_GRANTED, creationType: CreationType.PROJECT_GRANTED,
projectId: this.project.id, projectId: this.projectId,
}, },
width: '400px', width: '400px',
}); });
dialogRef.afterClosed().subscribe(resp => { dialogRef.afterClosed().subscribe(resp => {
if (resp) { if (resp) {
console.log(resp);
const users: User.AsObject[] = resp.users; const users: User.AsObject[] = resp.users;
const roles: string[] = resp.roles; const roles: string[] = resp.roles;
if (users && users.length && roles && roles.length) { if (users && users.length && roles && roles.length) {
Promise.all(users.map(user => { Promise.all(users.map(user => {
return this.projectService.AddProjectMember(this.project.id, user.id, roles); return this.projectService.AddProjectGrantMember(this.projectId,
this.grantId, user.id, roles);
})).then(() => { })).then(() => {
this.toast.showError('members added'); this.toast.showError('members added');
}).catch(error => { }).catch(error => {

View File

@@ -48,19 +48,17 @@ export class ProjectGridComponent {
public selectItem(item: GrantedProject.AsObject, event?: any): void { public selectItem(item: GrantedProject.AsObject, event?: any): void {
if (event && !event.target.classList.contains('mat-icon')) { if (event && !event.target.classList.contains('mat-icon')) {
if (item.grantId) { if (item.grantId) {
this.router.navigate([item.id, '/grant', `${item.grantId}`]); this.router.navigate(['projects', item.id, 'grant', `${item.grantId}`]);
} else { } else {
this.router.navigate(['/projects', item.id]); this.router.navigate(['/projects', item.id]);
} }
} else if (!event) { } else if (!event) {
if (item.grantId) { if (item.grantId) {
this.router.navigate([item.id, '/grant', `${item.grantId}`]); this.router.navigate(['projects', item.id, 'grant', `${item.grantId}`]);
} else { } else {
this.router.navigate(['/projects', item.id]); this.router.navigate(['/projects', item.id]);
} }
} }
} }
public addItem(): void { public addItem(): void {

View File

@@ -1,6 +1,7 @@
import { NgModule } from '@angular/core'; import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router'; import { RouterModule, Routes } from '@angular/router';
import { GrantedProjectDetailComponent } from './granted-project-detail/granted-project-detail.component';
import { ProjectDetailComponent } from './project-detail/project-detail.component'; import { ProjectDetailComponent } from './project-detail/project-detail.component';
import { ProjectListComponent } from './project-list/project-list.component'; import { ProjectListComponent } from './project-list/project-list.component';
@@ -16,7 +17,7 @@ const routes: Routes = [
}, },
{ {
path: ':id/grant/:grantId', path: ':id/grant/:grantId',
component: ProjectDetailComponent, component: GrantedProjectDetailComponent,
data: { animation: 'HomePage' }, data: { animation: 'HomePage' },
}, },
{ {

View File

@@ -42,6 +42,7 @@ import { ProjectGrantsComponent } from './project-grants/project-grants.componen
import { ProjectGridComponent } from './project-grid/project-grid.component'; import { ProjectGridComponent } from './project-grid/project-grid.component';
import { ProjectListComponent } from './project-list/project-list.component'; import { ProjectListComponent } from './project-list/project-list.component';
import { ProjectsRoutingModule } from './projects-routing.module'; import { ProjectsRoutingModule } from './projects-routing.module';
import { GrantedProjectDetailComponent } from './granted-project-detail/granted-project-detail.component';
@NgModule({ @NgModule({
declarations: [ declarations: [
@@ -54,6 +55,7 @@ import { ProjectsRoutingModule } from './projects-routing.module';
ProjectGrantMembersComponent, ProjectGrantMembersComponent,
ProjectGrantMembersCreateDialogComponent, ProjectGrantMembersCreateDialogComponent,
ProjectContributorsComponent, ProjectContributorsComponent,
GrantedProjectDetailComponent,
], ],
imports: [ imports: [
ProjectsRoutingModule, ProjectsRoutingModule,

View File

@@ -1,13 +1,6 @@
import * as grpcWeb from 'grpc-web';
import * as google_api_annotations_pb from './google/api/annotations_pb';
import * as google_protobuf_empty_pb from 'google-protobuf/google/protobuf/empty_pb'; import * as google_protobuf_empty_pb from 'google-protobuf/google/protobuf/empty_pb';
import * as google_protobuf_struct_pb from 'google-protobuf/google/protobuf/struct_pb'; import * as google_protobuf_struct_pb from 'google-protobuf/google/protobuf/struct_pb';
import * as google_protobuf_timestamp_pb from 'google-protobuf/google/protobuf/timestamp_pb'; import * as grpcWeb from 'grpc-web';
import * as protoc$gen$swagger_options_annotations_pb from './protoc-gen-swagger/options/annotations_pb';
import * as validate_validate_pb from './validate/validate_pb';
import * as google_protobuf_descriptor_pb from 'google-protobuf/google/protobuf/descriptor_pb';
import * as authoption_options_pb from './authoption/options_pb';
import { import {
AddOrgMemberRequest, AddOrgMemberRequest,
@@ -23,6 +16,7 @@ import {
Changes, Changes,
ClientSecret, ClientSecret,
CreateUserRequest, CreateUserRequest,
GrantedProject,
GrantedProjectSearchRequest, GrantedProjectSearchRequest,
GrantedProjectSearchResponse, GrantedProjectSearchResponse,
MultiFactors, MultiFactors,
@@ -109,10 +103,11 @@ import {
UserProfile, UserProfile,
UserSearchRequest, UserSearchRequest,
UserSearchResponse, UserSearchResponse,
UserView} from './management_pb'; UserView,
} from './management_pb';
export class ManagementServiceClient { export class ManagementServiceClient {
constructor (hostname: string, constructor(hostname: string,
credentials?: null | { [index: string]: string; }, credentials?: null | { [index: string]: string; },
options?: null | { [index: string]: string; }); options?: null | { [index: string]: string; });
@@ -445,28 +440,28 @@ export class ManagementServiceClient {
response: OrgMemberRoles) => void response: OrgMemberRoles) => void
): grpcWeb.ClientReadableStream<OrgMemberRoles>; ): grpcWeb.ClientReadableStream<OrgMemberRoles>;
addOrgMember( addMyOrgMember(
request: AddOrgMemberRequest, request: AddOrgMemberRequest,
metadata: grpcWeb.Metadata | undefined, metadata: grpcWeb.Metadata | undefined,
callback: (err: grpcWeb.Error, callback: (err: grpcWeb.Error,
response: OrgMember) => void response: OrgMember) => void
): grpcWeb.ClientReadableStream<OrgMember>; ): grpcWeb.ClientReadableStream<OrgMember>;
changeOrgMember( changeMyOrgMember(
request: ChangeOrgMemberRequest, request: ChangeOrgMemberRequest,
metadata: grpcWeb.Metadata | undefined, metadata: grpcWeb.Metadata | undefined,
callback: (err: grpcWeb.Error, callback: (err: grpcWeb.Error,
response: OrgMember) => void response: OrgMember) => void
): grpcWeb.ClientReadableStream<OrgMember>; ): grpcWeb.ClientReadableStream<OrgMember>;
removeOrgMember( removeMyOrgMember(
request: RemoveOrgMemberRequest, request: RemoveOrgMemberRequest,
metadata: grpcWeb.Metadata | undefined, metadata: grpcWeb.Metadata | undefined,
callback: (err: grpcWeb.Error, callback: (err: grpcWeb.Error,
response: google_protobuf_empty_pb.Empty) => void response: google_protobuf_empty_pb.Empty) => void
): grpcWeb.ClientReadableStream<google_protobuf_empty_pb.Empty>; ): grpcWeb.ClientReadableStream<google_protobuf_empty_pb.Empty>;
searchOrgMembers( searchMyOrgMembers(
request: OrgMemberSearchRequest, request: OrgMemberSearchRequest,
metadata: grpcWeb.Metadata | undefined, metadata: grpcWeb.Metadata | undefined,
callback: (err: grpcWeb.Error, callback: (err: grpcWeb.Error,
@@ -519,8 +514,8 @@ export class ManagementServiceClient {
request: ProjectGrantID, request: ProjectGrantID,
metadata: grpcWeb.Metadata | undefined, metadata: grpcWeb.Metadata | undefined,
callback: (err: grpcWeb.Error, callback: (err: grpcWeb.Error,
response: ProjectGrant) => void response: GrantedProject) => void
): grpcWeb.ClientReadableStream<ProjectGrant>; ): grpcWeb.ClientReadableStream<GrantedProject>;
getProjectMemberRoles( getProjectMemberRoles(
request: google_protobuf_empty_pb.Empty, request: google_protobuf_empty_pb.Empty,
@@ -875,7 +870,7 @@ export class ManagementServiceClient {
} }
export class ManagementServicePromiseClient { export class ManagementServicePromiseClient {
constructor (hostname: string, constructor(hostname: string,
credentials?: null | { [index: string]: string; }, credentials?: null | { [index: string]: string; },
options?: null | { [index: string]: string; }); options?: null | { [index: string]: string; });
@@ -1114,22 +1109,22 @@ export class ManagementServicePromiseClient {
metadata?: grpcWeb.Metadata metadata?: grpcWeb.Metadata
): Promise<OrgMemberRoles>; ): Promise<OrgMemberRoles>;
addOrgMember( addMyOrgMember(
request: AddOrgMemberRequest, request: AddOrgMemberRequest,
metadata?: grpcWeb.Metadata metadata?: grpcWeb.Metadata
): Promise<OrgMember>; ): Promise<OrgMember>;
changeOrgMember( changeMyOrgMember(
request: ChangeOrgMemberRequest, request: ChangeOrgMemberRequest,
metadata?: grpcWeb.Metadata metadata?: grpcWeb.Metadata
): Promise<OrgMember>; ): Promise<OrgMember>;
removeOrgMember( removeMyOrgMember(
request: RemoveOrgMemberRequest, request: RemoveOrgMemberRequest,
metadata?: grpcWeb.Metadata metadata?: grpcWeb.Metadata
): Promise<google_protobuf_empty_pb.Empty>; ): Promise<google_protobuf_empty_pb.Empty>;
searchOrgMembers( searchMyOrgMembers(
request: OrgMemberSearchRequest, request: OrgMemberSearchRequest,
metadata?: grpcWeb.Metadata metadata?: grpcWeb.Metadata
): Promise<OrgMemberSearchResponse>; ): Promise<OrgMemberSearchResponse>;
@@ -1167,7 +1162,7 @@ export class ManagementServicePromiseClient {
getGrantedProjectGrantByID( getGrantedProjectGrantByID(
request: ProjectGrantID, request: ProjectGrantID,
metadata?: grpcWeb.Metadata metadata?: grpcWeb.Metadata
): Promise<ProjectGrant>; ): Promise<GrantedProject>;
getProjectMemberRoles( getProjectMemberRoles(
request: google_protobuf_empty_pb.Empty, request: google_protobuf_empty_pb.Empty,

View File

@@ -3852,8 +3852,8 @@ proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.ge
* !proto.caos.zitadel.management.api.v1.AddOrgMemberRequest, * !proto.caos.zitadel.management.api.v1.AddOrgMemberRequest,
* !proto.caos.zitadel.management.api.v1.OrgMember>} * !proto.caos.zitadel.management.api.v1.OrgMember>}
*/ */
const methodDescriptor_ManagementService_AddOrgMember = new grpc.web.MethodDescriptor( const methodDescriptor_ManagementService_AddMyOrgMember = new grpc.web.MethodDescriptor(
'/caos.zitadel.management.api.v1.ManagementService/AddOrgMember', '/caos.zitadel.management.api.v1.ManagementService/AddMyOrgMember',
grpc.web.MethodType.UNARY, grpc.web.MethodType.UNARY,
proto.caos.zitadel.management.api.v1.AddOrgMemberRequest, proto.caos.zitadel.management.api.v1.AddOrgMemberRequest,
proto.caos.zitadel.management.api.v1.OrgMember, proto.caos.zitadel.management.api.v1.OrgMember,
@@ -3874,7 +3874,7 @@ const methodDescriptor_ManagementService_AddOrgMember = new grpc.web.MethodDescr
* !proto.caos.zitadel.management.api.v1.AddOrgMemberRequest, * !proto.caos.zitadel.management.api.v1.AddOrgMemberRequest,
* !proto.caos.zitadel.management.api.v1.OrgMember>} * !proto.caos.zitadel.management.api.v1.OrgMember>}
*/ */
const methodInfo_ManagementService_AddOrgMember = new grpc.web.AbstractClientBase.MethodInfo( const methodInfo_ManagementService_AddMyOrgMember = new grpc.web.AbstractClientBase.MethodInfo(
proto.caos.zitadel.management.api.v1.OrgMember, proto.caos.zitadel.management.api.v1.OrgMember,
/** /**
* @param {!proto.caos.zitadel.management.api.v1.AddOrgMemberRequest} request * @param {!proto.caos.zitadel.management.api.v1.AddOrgMemberRequest} request
@@ -3897,13 +3897,13 @@ const methodInfo_ManagementService_AddOrgMember = new grpc.web.AbstractClientBas
* @return {!grpc.web.ClientReadableStream<!proto.caos.zitadel.management.api.v1.OrgMember>|undefined} * @return {!grpc.web.ClientReadableStream<!proto.caos.zitadel.management.api.v1.OrgMember>|undefined}
* The XHR Node Readable Stream * The XHR Node Readable Stream
*/ */
proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.addOrgMember = proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.addMyOrgMember =
function(request, metadata, callback) { function(request, metadata, callback) {
return this.client_.rpcCall(this.hostname_ + return this.client_.rpcCall(this.hostname_ +
'/caos.zitadel.management.api.v1.ManagementService/AddOrgMember', '/caos.zitadel.management.api.v1.ManagementService/AddMyOrgMember',
request, request,
metadata || {}, metadata || {},
methodDescriptor_ManagementService_AddOrgMember, methodDescriptor_ManagementService_AddMyOrgMember,
callback); callback);
}; };
@@ -3916,13 +3916,13 @@ proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.addOrgMem
* @return {!Promise<!proto.caos.zitadel.management.api.v1.OrgMember>} * @return {!Promise<!proto.caos.zitadel.management.api.v1.OrgMember>}
* A native promise that resolves to the response * A native promise that resolves to the response
*/ */
proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.addOrgMember = proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.addMyOrgMember =
function(request, metadata) { function(request, metadata) {
return this.client_.unaryCall(this.hostname_ + return this.client_.unaryCall(this.hostname_ +
'/caos.zitadel.management.api.v1.ManagementService/AddOrgMember', '/caos.zitadel.management.api.v1.ManagementService/AddMyOrgMember',
request, request,
metadata || {}, metadata || {},
methodDescriptor_ManagementService_AddOrgMember); methodDescriptor_ManagementService_AddMyOrgMember);
}; };
@@ -3932,8 +3932,8 @@ proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.ad
* !proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest, * !proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest,
* !proto.caos.zitadel.management.api.v1.OrgMember>} * !proto.caos.zitadel.management.api.v1.OrgMember>}
*/ */
const methodDescriptor_ManagementService_ChangeOrgMember = new grpc.web.MethodDescriptor( const methodDescriptor_ManagementService_ChangeMyOrgMember = new grpc.web.MethodDescriptor(
'/caos.zitadel.management.api.v1.ManagementService/ChangeOrgMember', '/caos.zitadel.management.api.v1.ManagementService/ChangeMyOrgMember',
grpc.web.MethodType.UNARY, grpc.web.MethodType.UNARY,
proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest, proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest,
proto.caos.zitadel.management.api.v1.OrgMember, proto.caos.zitadel.management.api.v1.OrgMember,
@@ -3954,7 +3954,7 @@ const methodDescriptor_ManagementService_ChangeOrgMember = new grpc.web.MethodDe
* !proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest, * !proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest,
* !proto.caos.zitadel.management.api.v1.OrgMember>} * !proto.caos.zitadel.management.api.v1.OrgMember>}
*/ */
const methodInfo_ManagementService_ChangeOrgMember = new grpc.web.AbstractClientBase.MethodInfo( const methodInfo_ManagementService_ChangeMyOrgMember = new grpc.web.AbstractClientBase.MethodInfo(
proto.caos.zitadel.management.api.v1.OrgMember, proto.caos.zitadel.management.api.v1.OrgMember,
/** /**
* @param {!proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest} request * @param {!proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest} request
@@ -3977,13 +3977,13 @@ const methodInfo_ManagementService_ChangeOrgMember = new grpc.web.AbstractClient
* @return {!grpc.web.ClientReadableStream<!proto.caos.zitadel.management.api.v1.OrgMember>|undefined} * @return {!grpc.web.ClientReadableStream<!proto.caos.zitadel.management.api.v1.OrgMember>|undefined}
* The XHR Node Readable Stream * The XHR Node Readable Stream
*/ */
proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.changeOrgMember = proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.changeMyOrgMember =
function(request, metadata, callback) { function(request, metadata, callback) {
return this.client_.rpcCall(this.hostname_ + return this.client_.rpcCall(this.hostname_ +
'/caos.zitadel.management.api.v1.ManagementService/ChangeOrgMember', '/caos.zitadel.management.api.v1.ManagementService/ChangeMyOrgMember',
request, request,
metadata || {}, metadata || {},
methodDescriptor_ManagementService_ChangeOrgMember, methodDescriptor_ManagementService_ChangeMyOrgMember,
callback); callback);
}; };
@@ -3996,13 +3996,13 @@ proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.changeOrg
* @return {!Promise<!proto.caos.zitadel.management.api.v1.OrgMember>} * @return {!Promise<!proto.caos.zitadel.management.api.v1.OrgMember>}
* A native promise that resolves to the response * A native promise that resolves to the response
*/ */
proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.changeOrgMember = proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.changeMyOrgMember =
function(request, metadata) { function(request, metadata) {
return this.client_.unaryCall(this.hostname_ + return this.client_.unaryCall(this.hostname_ +
'/caos.zitadel.management.api.v1.ManagementService/ChangeOrgMember', '/caos.zitadel.management.api.v1.ManagementService/ChangeMyOrgMember',
request, request,
metadata || {}, metadata || {},
methodDescriptor_ManagementService_ChangeOrgMember); methodDescriptor_ManagementService_ChangeMyOrgMember);
}; };
@@ -4012,8 +4012,8 @@ proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.ch
* !proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest, * !proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest,
* !proto.google.protobuf.Empty>} * !proto.google.protobuf.Empty>}
*/ */
const methodDescriptor_ManagementService_RemoveOrgMember = new grpc.web.MethodDescriptor( const methodDescriptor_ManagementService_RemoveMyOrgMember = new grpc.web.MethodDescriptor(
'/caos.zitadel.management.api.v1.ManagementService/RemoveOrgMember', '/caos.zitadel.management.api.v1.ManagementService/RemoveMyOrgMember',
grpc.web.MethodType.UNARY, grpc.web.MethodType.UNARY,
proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest, proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest,
google_protobuf_empty_pb.Empty, google_protobuf_empty_pb.Empty,
@@ -4034,7 +4034,7 @@ const methodDescriptor_ManagementService_RemoveOrgMember = new grpc.web.MethodDe
* !proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest, * !proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest,
* !proto.google.protobuf.Empty>} * !proto.google.protobuf.Empty>}
*/ */
const methodInfo_ManagementService_RemoveOrgMember = new grpc.web.AbstractClientBase.MethodInfo( const methodInfo_ManagementService_RemoveMyOrgMember = new grpc.web.AbstractClientBase.MethodInfo(
google_protobuf_empty_pb.Empty, google_protobuf_empty_pb.Empty,
/** /**
* @param {!proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest} request * @param {!proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest} request
@@ -4057,13 +4057,13 @@ const methodInfo_ManagementService_RemoveOrgMember = new grpc.web.AbstractClient
* @return {!grpc.web.ClientReadableStream<!proto.google.protobuf.Empty>|undefined} * @return {!grpc.web.ClientReadableStream<!proto.google.protobuf.Empty>|undefined}
* The XHR Node Readable Stream * The XHR Node Readable Stream
*/ */
proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.removeOrgMember = proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.removeMyOrgMember =
function(request, metadata, callback) { function(request, metadata, callback) {
return this.client_.rpcCall(this.hostname_ + return this.client_.rpcCall(this.hostname_ +
'/caos.zitadel.management.api.v1.ManagementService/RemoveOrgMember', '/caos.zitadel.management.api.v1.ManagementService/RemoveMyOrgMember',
request, request,
metadata || {}, metadata || {},
methodDescriptor_ManagementService_RemoveOrgMember, methodDescriptor_ManagementService_RemoveMyOrgMember,
callback); callback);
}; };
@@ -4076,13 +4076,13 @@ proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.removeOrg
* @return {!Promise<!proto.google.protobuf.Empty>} * @return {!Promise<!proto.google.protobuf.Empty>}
* A native promise that resolves to the response * A native promise that resolves to the response
*/ */
proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.removeOrgMember = proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.removeMyOrgMember =
function(request, metadata) { function(request, metadata) {
return this.client_.unaryCall(this.hostname_ + return this.client_.unaryCall(this.hostname_ +
'/caos.zitadel.management.api.v1.ManagementService/RemoveOrgMember', '/caos.zitadel.management.api.v1.ManagementService/RemoveMyOrgMember',
request, request,
metadata || {}, metadata || {},
methodDescriptor_ManagementService_RemoveOrgMember); methodDescriptor_ManagementService_RemoveMyOrgMember);
}; };
@@ -4092,8 +4092,8 @@ proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.re
* !proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest, * !proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest,
* !proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse>} * !proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse>}
*/ */
const methodDescriptor_ManagementService_SearchOrgMembers = new grpc.web.MethodDescriptor( const methodDescriptor_ManagementService_SearchMyOrgMembers = new grpc.web.MethodDescriptor(
'/caos.zitadel.management.api.v1.ManagementService/SearchOrgMembers', '/caos.zitadel.management.api.v1.ManagementService/SearchMyOrgMembers',
grpc.web.MethodType.UNARY, grpc.web.MethodType.UNARY,
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest, proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest,
proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse, proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse,
@@ -4114,7 +4114,7 @@ const methodDescriptor_ManagementService_SearchOrgMembers = new grpc.web.MethodD
* !proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest, * !proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest,
* !proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse>} * !proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse>}
*/ */
const methodInfo_ManagementService_SearchOrgMembers = new grpc.web.AbstractClientBase.MethodInfo( const methodInfo_ManagementService_SearchMyOrgMembers = new grpc.web.AbstractClientBase.MethodInfo(
proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse, proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse,
/** /**
* @param {!proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest} request * @param {!proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest} request
@@ -4137,13 +4137,13 @@ const methodInfo_ManagementService_SearchOrgMembers = new grpc.web.AbstractClien
* @return {!grpc.web.ClientReadableStream<!proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse>|undefined} * @return {!grpc.web.ClientReadableStream<!proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse>|undefined}
* The XHR Node Readable Stream * The XHR Node Readable Stream
*/ */
proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.searchOrgMembers = proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.searchMyOrgMembers =
function(request, metadata, callback) { function(request, metadata, callback) {
return this.client_.rpcCall(this.hostname_ + return this.client_.rpcCall(this.hostname_ +
'/caos.zitadel.management.api.v1.ManagementService/SearchOrgMembers', '/caos.zitadel.management.api.v1.ManagementService/SearchMyOrgMembers',
request, request,
metadata || {}, metadata || {},
methodDescriptor_ManagementService_SearchOrgMembers, methodDescriptor_ManagementService_SearchMyOrgMembers,
callback); callback);
}; };
@@ -4156,13 +4156,13 @@ proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.searchOrg
* @return {!Promise<!proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse>} * @return {!Promise<!proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse>}
* A native promise that resolves to the response * A native promise that resolves to the response
*/ */
proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.searchOrgMembers = proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.searchMyOrgMembers =
function(request, metadata) { function(request, metadata) {
return this.client_.unaryCall(this.hostname_ + return this.client_.unaryCall(this.hostname_ +
'/caos.zitadel.management.api.v1.ManagementService/SearchOrgMembers', '/caos.zitadel.management.api.v1.ManagementService/SearchMyOrgMembers',
request, request,
metadata || {}, metadata || {},
methodDescriptor_ManagementService_SearchOrgMembers); methodDescriptor_ManagementService_SearchMyOrgMembers);
}; };
@@ -4650,13 +4650,13 @@ proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.re
* @const * @const
* @type {!grpc.web.MethodDescriptor< * @type {!grpc.web.MethodDescriptor<
* !proto.caos.zitadel.management.api.v1.ProjectGrantID, * !proto.caos.zitadel.management.api.v1.ProjectGrantID,
* !proto.caos.zitadel.management.api.v1.ProjectGrant>} * !proto.caos.zitadel.management.api.v1.GrantedProject>}
*/ */
const methodDescriptor_ManagementService_GetGrantedProjectGrantByID = new grpc.web.MethodDescriptor( const methodDescriptor_ManagementService_GetGrantedProjectGrantByID = new grpc.web.MethodDescriptor(
'/caos.zitadel.management.api.v1.ManagementService/GetGrantedProjectGrantByID', '/caos.zitadel.management.api.v1.ManagementService/GetGrantedProjectGrantByID',
grpc.web.MethodType.UNARY, grpc.web.MethodType.UNARY,
proto.caos.zitadel.management.api.v1.ProjectGrantID, proto.caos.zitadel.management.api.v1.ProjectGrantID,
proto.caos.zitadel.management.api.v1.ProjectGrant, proto.caos.zitadel.management.api.v1.GrantedProject,
/** /**
* @param {!proto.caos.zitadel.management.api.v1.ProjectGrantID} request * @param {!proto.caos.zitadel.management.api.v1.ProjectGrantID} request
* @return {!Uint8Array} * @return {!Uint8Array}
@@ -4664,7 +4664,7 @@ const methodDescriptor_ManagementService_GetGrantedProjectGrantByID = new grpc.w
function(request) { function(request) {
return request.serializeBinary(); return request.serializeBinary();
}, },
proto.caos.zitadel.management.api.v1.ProjectGrant.deserializeBinary proto.caos.zitadel.management.api.v1.GrantedProject.deserializeBinary
); );
@@ -4672,10 +4672,10 @@ const methodDescriptor_ManagementService_GetGrantedProjectGrantByID = new grpc.w
* @const * @const
* @type {!grpc.web.AbstractClientBase.MethodInfo< * @type {!grpc.web.AbstractClientBase.MethodInfo<
* !proto.caos.zitadel.management.api.v1.ProjectGrantID, * !proto.caos.zitadel.management.api.v1.ProjectGrantID,
* !proto.caos.zitadel.management.api.v1.ProjectGrant>} * !proto.caos.zitadel.management.api.v1.GrantedProject>}
*/ */
const methodInfo_ManagementService_GetGrantedProjectGrantByID = new grpc.web.AbstractClientBase.MethodInfo( const methodInfo_ManagementService_GetGrantedProjectGrantByID = new grpc.web.AbstractClientBase.MethodInfo(
proto.caos.zitadel.management.api.v1.ProjectGrant, proto.caos.zitadel.management.api.v1.GrantedProject,
/** /**
* @param {!proto.caos.zitadel.management.api.v1.ProjectGrantID} request * @param {!proto.caos.zitadel.management.api.v1.ProjectGrantID} request
* @return {!Uint8Array} * @return {!Uint8Array}
@@ -4683,7 +4683,7 @@ const methodInfo_ManagementService_GetGrantedProjectGrantByID = new grpc.web.Abs
function(request) { function(request) {
return request.serializeBinary(); return request.serializeBinary();
}, },
proto.caos.zitadel.management.api.v1.ProjectGrant.deserializeBinary proto.caos.zitadel.management.api.v1.GrantedProject.deserializeBinary
); );
@@ -4692,9 +4692,9 @@ const methodInfo_ManagementService_GetGrantedProjectGrantByID = new grpc.web.Abs
* request proto * request proto
* @param {?Object<string, string>} metadata User defined * @param {?Object<string, string>} metadata User defined
* call metadata * call metadata
* @param {function(?grpc.web.Error, ?proto.caos.zitadel.management.api.v1.ProjectGrant)} * @param {function(?grpc.web.Error, ?proto.caos.zitadel.management.api.v1.GrantedProject)}
* callback The callback function(error, response) * callback The callback function(error, response)
* @return {!grpc.web.ClientReadableStream<!proto.caos.zitadel.management.api.v1.ProjectGrant>|undefined} * @return {!grpc.web.ClientReadableStream<!proto.caos.zitadel.management.api.v1.GrantedProject>|undefined}
* The XHR Node Readable Stream * The XHR Node Readable Stream
*/ */
proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.getGrantedProjectGrantByID = proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.getGrantedProjectGrantByID =
@@ -4713,7 +4713,7 @@ proto.caos.zitadel.management.api.v1.ManagementServiceClient.prototype.getGrante
* request proto * request proto
* @param {?Object<string, string>} metadata User defined * @param {?Object<string, string>} metadata User defined
* call metadata * call metadata
* @return {!Promise<!proto.caos.zitadel.management.api.v1.ProjectGrant>} * @return {!Promise<!proto.caos.zitadel.management.api.v1.GrantedProject>}
* A native promise that resolves to the response * A native promise that resolves to the response
*/ */
proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.getGrantedProjectGrantByID = proto.caos.zitadel.management.api.v1.ManagementServicePromiseClient.prototype.getGrantedProjectGrantByID =

View File

@@ -1630,9 +1630,6 @@ export namespace OrgMember {
} }
export class AddOrgMemberRequest extends jspb.Message { export class AddOrgMemberRequest extends jspb.Message {
getOrgId(): string;
setOrgId(value: string): void;
getUserId(): string; getUserId(): string;
setUserId(value: string): void; setUserId(value: string): void;
@@ -1651,16 +1648,12 @@ export class AddOrgMemberRequest extends jspb.Message {
export namespace AddOrgMemberRequest { export namespace AddOrgMemberRequest {
export type AsObject = { export type AsObject = {
orgId: string,
userId: string, userId: string,
rolesList: Array<string>, rolesList: Array<string>,
} }
} }
export class ChangeOrgMemberRequest extends jspb.Message { export class ChangeOrgMemberRequest extends jspb.Message {
getOrgId(): string;
setOrgId(value: string): void;
getUserId(): string; getUserId(): string;
setUserId(value: string): void; setUserId(value: string): void;
@@ -1679,16 +1672,12 @@ export class ChangeOrgMemberRequest extends jspb.Message {
export namespace ChangeOrgMemberRequest { export namespace ChangeOrgMemberRequest {
export type AsObject = { export type AsObject = {
orgId: string,
userId: string, userId: string,
rolesList: Array<string>, rolesList: Array<string>,
} }
} }
export class RemoveOrgMemberRequest extends jspb.Message { export class RemoveOrgMemberRequest extends jspb.Message {
getOrgId(): string;
setOrgId(value: string): void;
getUserId(): string; getUserId(): string;
setUserId(value: string): void; setUserId(value: string): void;
@@ -1702,7 +1691,6 @@ export class RemoveOrgMemberRequest extends jspb.Message {
export namespace RemoveOrgMemberRequest { export namespace RemoveOrgMemberRequest {
export type AsObject = { export type AsObject = {
orgId: string,
userId: string, userId: string,
} }
} }
@@ -1717,10 +1705,10 @@ export class OrgMemberSearchResponse extends jspb.Message {
getTotalResult(): number; getTotalResult(): number;
setTotalResult(value: number): void; setTotalResult(value: number): void;
getResultList(): Array<OrgMember>; getResultList(): Array<OrgMemberView>;
setResultList(value: Array<OrgMember>): void; setResultList(value: Array<OrgMemberView>): void;
clearResultList(): void; clearResultList(): void;
addResult(value?: OrgMember, index?: number): OrgMember; addResult(value?: OrgMemberView, index?: number): OrgMemberView;
serializeBinary(): Uint8Array; serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): OrgMemberSearchResponse.AsObject; toObject(includeInstance?: boolean): OrgMemberSearchResponse.AsObject;
@@ -1735,14 +1723,67 @@ export namespace OrgMemberSearchResponse {
offset: number, offset: number,
limit: number, limit: number,
totalResult: number, totalResult: number,
resultList: Array<OrgMember.AsObject>, resultList: Array<OrgMemberView.AsObject>,
}
}
export class OrgMemberView extends jspb.Message {
getUserId(): string;
setUserId(value: string): void;
getRolesList(): Array<string>;
setRolesList(value: Array<string>): void;
clearRolesList(): void;
addRoles(value: string, index?: number): void;
getChangeDate(): google_protobuf_timestamp_pb.Timestamp | undefined;
setChangeDate(value?: google_protobuf_timestamp_pb.Timestamp): void;
hasChangeDate(): boolean;
clearChangeDate(): void;
getCreationDate(): google_protobuf_timestamp_pb.Timestamp | undefined;
setCreationDate(value?: google_protobuf_timestamp_pb.Timestamp): void;
hasCreationDate(): boolean;
clearCreationDate(): void;
getSequence(): number;
setSequence(value: number): void;
getUserName(): string;
setUserName(value: string): void;
getEmail(): string;
setEmail(value: string): void;
getFirstName(): string;
setFirstName(value: string): void;
getLastName(): string;
setLastName(value: string): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): OrgMemberView.AsObject;
static toObject(includeInstance: boolean, msg: OrgMemberView): OrgMemberView.AsObject;
static serializeBinaryToWriter(message: OrgMemberView, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): OrgMemberView;
static deserializeBinaryFromReader(message: OrgMemberView, reader: jspb.BinaryReader): OrgMemberView;
}
export namespace OrgMemberView {
export type AsObject = {
userId: string,
rolesList: Array<string>,
changeDate?: google_protobuf_timestamp_pb.Timestamp.AsObject,
creationDate?: google_protobuf_timestamp_pb.Timestamp.AsObject,
sequence: number,
userName: string,
email: string,
firstName: string,
lastName: string,
} }
} }
export class OrgMemberSearchRequest extends jspb.Message { export class OrgMemberSearchRequest extends jspb.Message {
getOrgId(): string;
setOrgId(value: string): void;
getOffset(): number; getOffset(): number;
setOffset(value: number): void; setOffset(value: number): void;
@@ -1764,7 +1805,6 @@ export class OrgMemberSearchRequest extends jspb.Message {
export namespace OrgMemberSearchRequest { export namespace OrgMemberSearchRequest {
export type AsObject = { export type AsObject = {
orgId: string,
offset: number, offset: number,
limit: number, limit: number,
queriesList: Array<OrgMemberSearchQuery.AsObject>, queriesList: Array<OrgMemberSearchQuery.AsObject>,

View File

@@ -75,6 +75,7 @@ goog.exportSymbol('proto.caos.zitadel.management.api.v1.OrgMemberSearchKey', nul
goog.exportSymbol('proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery', null, global); goog.exportSymbol('proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery', null, global);
goog.exportSymbol('proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest', null, global); goog.exportSymbol('proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest', null, global);
goog.exportSymbol('proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse', null, global); goog.exportSymbol('proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse', null, global);
goog.exportSymbol('proto.caos.zitadel.management.api.v1.OrgMemberView', null, global);
goog.exportSymbol('proto.caos.zitadel.management.api.v1.OrgState', null, global); goog.exportSymbol('proto.caos.zitadel.management.api.v1.OrgState', null, global);
goog.exportSymbol('proto.caos.zitadel.management.api.v1.PasswordAgePolicy', null, global); goog.exportSymbol('proto.caos.zitadel.management.api.v1.PasswordAgePolicy', null, global);
goog.exportSymbol('proto.caos.zitadel.management.api.v1.PasswordAgePolicyCreate', null, global); goog.exportSymbol('proto.caos.zitadel.management.api.v1.PasswordAgePolicyCreate', null, global);
@@ -1225,6 +1226,27 @@ if (goog.DEBUG && !COMPILED) {
*/ */
proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse.displayName = 'proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse'; proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse.displayName = 'proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse';
} }
/**
* Generated by JsPbCodeGenerator.
* @param {Array=} opt_data Optional initial data array, typically from a
* server response, or constructed directly in Javascript. The array is used
* in place and becomes part of the constructed object. It is not cloned.
* If no data is provided, the constructed object will be empty, but still
* valid.
* @extends {jspb.Message}
* @constructor
*/
proto.caos.zitadel.management.api.v1.OrgMemberView = function(opt_data) {
jspb.Message.initialize(this, opt_data, 0, -1, proto.caos.zitadel.management.api.v1.OrgMemberView.repeatedFields_, null);
};
goog.inherits(proto.caos.zitadel.management.api.v1.OrgMemberView, jspb.Message);
if (goog.DEBUG && !COMPILED) {
/**
* @public
* @override
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.displayName = 'proto.caos.zitadel.management.api.v1.OrgMemberView';
}
/** /**
* Generated by JsPbCodeGenerator. * Generated by JsPbCodeGenerator.
* @param {Array=} opt_data Optional initial data array, typically from a * @param {Array=} opt_data Optional initial data array, typically from a
@@ -14151,7 +14173,7 @@ proto.caos.zitadel.management.api.v1.OrgMember.prototype.setSequence = function(
* @private {!Array<number>} * @private {!Array<number>}
* @const * @const
*/ */
proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.repeatedFields_ = [3]; proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.repeatedFields_ = [2];
@@ -14182,9 +14204,8 @@ proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.toObject = fu
*/ */
proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.toObject = function(includeInstance, msg) { proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.toObject = function(includeInstance, msg) {
var f, obj = { var f, obj = {
orgId: jspb.Message.getFieldWithDefault(msg, 1, ""), userId: jspb.Message.getFieldWithDefault(msg, 1, ""),
userId: jspb.Message.getFieldWithDefault(msg, 2, ""), rolesList: jspb.Message.getRepeatedField(msg, 2)
rolesList: jspb.Message.getRepeatedField(msg, 3)
}; };
if (includeInstance) { if (includeInstance) {
@@ -14222,14 +14243,10 @@ proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.deserializeBinaryFromRe
var field = reader.getFieldNumber(); var field = reader.getFieldNumber();
switch (field) { switch (field) {
case 1: case 1:
var value = /** @type {string} */ (reader.readString());
msg.setOrgId(value);
break;
case 2:
var value = /** @type {string} */ (reader.readString()); var value = /** @type {string} */ (reader.readString());
msg.setUserId(value); msg.setUserId(value);
break; break;
case 3: case 2:
var value = /** @type {string} */ (reader.readString()); var value = /** @type {string} */ (reader.readString());
msg.addRoles(value); msg.addRoles(value);
break; break;
@@ -14262,24 +14279,17 @@ proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.serializeBina
*/ */
proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.serializeBinaryToWriter = function(message, writer) { proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.serializeBinaryToWriter = function(message, writer) {
var f = undefined; var f = undefined;
f = message.getOrgId(); f = message.getUserId();
if (f.length > 0) { if (f.length > 0) {
writer.writeString( writer.writeString(
1, 1,
f f
); );
} }
f = message.getUserId();
if (f.length > 0) {
writer.writeString(
2,
f
);
}
f = message.getRolesList(); f = message.getRolesList();
if (f.length > 0) { if (f.length > 0) {
writer.writeRepeatedString( writer.writeRepeatedString(
3, 2,
f f
); );
} }
@@ -14287,47 +14297,32 @@ proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.serializeBinaryToWriter
/** /**
* optional string org_id = 1; * optional string user_id = 1;
* @return {string} * @return {string}
*/ */
proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.getOrgId = function() { proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.getUserId = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
}; };
/** @param {string} value */ /** @param {string} value */
proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.setOrgId = function(value) { proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.setUserId = function(value) {
jspb.Message.setProto3StringField(this, 1, value); jspb.Message.setProto3StringField(this, 1, value);
}; };
/** /**
* optional string user_id = 2; * repeated string roles = 2;
* @return {string}
*/
proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.getUserId = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};
/** @param {string} value */
proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.setUserId = function(value) {
jspb.Message.setProto3StringField(this, 2, value);
};
/**
* repeated string roles = 3;
* @return {!Array<string>} * @return {!Array<string>}
*/ */
proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.getRolesList = function() { proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.getRolesList = function() {
return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 3)); return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 2));
}; };
/** @param {!Array<string>} value */ /** @param {!Array<string>} value */
proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.setRolesList = function(value) { proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.setRolesList = function(value) {
jspb.Message.setField(this, 3, value || []); jspb.Message.setField(this, 2, value || []);
}; };
@@ -14336,7 +14331,7 @@ proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.setRolesList
* @param {number=} opt_index * @param {number=} opt_index
*/ */
proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.addRoles = function(value, opt_index) { proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.addRoles = function(value, opt_index) {
jspb.Message.addToRepeatedField(this, 3, value, opt_index); jspb.Message.addToRepeatedField(this, 2, value, opt_index);
}; };
@@ -14354,7 +14349,7 @@ proto.caos.zitadel.management.api.v1.AddOrgMemberRequest.prototype.clearRolesLis
* @private {!Array<number>} * @private {!Array<number>}
* @const * @const
*/ */
proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.repeatedFields_ = [3]; proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.repeatedFields_ = [2];
@@ -14385,9 +14380,8 @@ proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.toObject =
*/ */
proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.toObject = function(includeInstance, msg) { proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.toObject = function(includeInstance, msg) {
var f, obj = { var f, obj = {
orgId: jspb.Message.getFieldWithDefault(msg, 1, ""), userId: jspb.Message.getFieldWithDefault(msg, 1, ""),
userId: jspb.Message.getFieldWithDefault(msg, 2, ""), rolesList: jspb.Message.getRepeatedField(msg, 2)
rolesList: jspb.Message.getRepeatedField(msg, 3)
}; };
if (includeInstance) { if (includeInstance) {
@@ -14425,14 +14419,10 @@ proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.deserializeBinaryFro
var field = reader.getFieldNumber(); var field = reader.getFieldNumber();
switch (field) { switch (field) {
case 1: case 1:
var value = /** @type {string} */ (reader.readString());
msg.setOrgId(value);
break;
case 2:
var value = /** @type {string} */ (reader.readString()); var value = /** @type {string} */ (reader.readString());
msg.setUserId(value); msg.setUserId(value);
break; break;
case 3: case 2:
var value = /** @type {string} */ (reader.readString()); var value = /** @type {string} */ (reader.readString());
msg.addRoles(value); msg.addRoles(value);
break; break;
@@ -14465,24 +14455,17 @@ proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.serializeB
*/ */
proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.serializeBinaryToWriter = function(message, writer) { proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.serializeBinaryToWriter = function(message, writer) {
var f = undefined; var f = undefined;
f = message.getOrgId(); f = message.getUserId();
if (f.length > 0) { if (f.length > 0) {
writer.writeString( writer.writeString(
1, 1,
f f
); );
} }
f = message.getUserId();
if (f.length > 0) {
writer.writeString(
2,
f
);
}
f = message.getRolesList(); f = message.getRolesList();
if (f.length > 0) { if (f.length > 0) {
writer.writeRepeatedString( writer.writeRepeatedString(
3, 2,
f f
); );
} }
@@ -14490,47 +14473,32 @@ proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.serializeBinaryToWri
/** /**
* optional string org_id = 1; * optional string user_id = 1;
* @return {string} * @return {string}
*/ */
proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.getOrgId = function() { proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.getUserId = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
}; };
/** @param {string} value */ /** @param {string} value */
proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.setOrgId = function(value) { proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.setUserId = function(value) {
jspb.Message.setProto3StringField(this, 1, value); jspb.Message.setProto3StringField(this, 1, value);
}; };
/** /**
* optional string user_id = 2; * repeated string roles = 2;
* @return {string}
*/
proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.getUserId = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};
/** @param {string} value */
proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.setUserId = function(value) {
jspb.Message.setProto3StringField(this, 2, value);
};
/**
* repeated string roles = 3;
* @return {!Array<string>} * @return {!Array<string>}
*/ */
proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.getRolesList = function() { proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.getRolesList = function() {
return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 3)); return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 2));
}; };
/** @param {!Array<string>} value */ /** @param {!Array<string>} value */
proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.setRolesList = function(value) { proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.setRolesList = function(value) {
jspb.Message.setField(this, 3, value || []); jspb.Message.setField(this, 2, value || []);
}; };
@@ -14539,7 +14507,7 @@ proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.setRolesLi
* @param {number=} opt_index * @param {number=} opt_index
*/ */
proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.addRoles = function(value, opt_index) { proto.caos.zitadel.management.api.v1.ChangeOrgMemberRequest.prototype.addRoles = function(value, opt_index) {
jspb.Message.addToRepeatedField(this, 3, value, opt_index); jspb.Message.addToRepeatedField(this, 2, value, opt_index);
}; };
@@ -14581,8 +14549,7 @@ proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest.prototype.toObject =
*/ */
proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest.toObject = function(includeInstance, msg) { proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest.toObject = function(includeInstance, msg) {
var f, obj = { var f, obj = {
orgId: jspb.Message.getFieldWithDefault(msg, 1, ""), userId: jspb.Message.getFieldWithDefault(msg, 1, "")
userId: jspb.Message.getFieldWithDefault(msg, 2, "")
}; };
if (includeInstance) { if (includeInstance) {
@@ -14620,10 +14587,6 @@ proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest.deserializeBinaryFro
var field = reader.getFieldNumber(); var field = reader.getFieldNumber();
switch (field) { switch (field) {
case 1: case 1:
var value = /** @type {string} */ (reader.readString());
msg.setOrgId(value);
break;
case 2:
var value = /** @type {string} */ (reader.readString()); var value = /** @type {string} */ (reader.readString());
msg.setUserId(value); msg.setUserId(value);
break; break;
@@ -14656,50 +14619,28 @@ proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest.prototype.serializeB
*/ */
proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest.serializeBinaryToWriter = function(message, writer) { proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest.serializeBinaryToWriter = function(message, writer) {
var f = undefined; var f = undefined;
f = message.getOrgId(); f = message.getUserId();
if (f.length > 0) { if (f.length > 0) {
writer.writeString( writer.writeString(
1, 1,
f f
); );
} }
f = message.getUserId();
if (f.length > 0) {
writer.writeString(
2,
f
);
}
}; };
/** /**
* optional string org_id = 1; * optional string user_id = 1;
* @return {string} * @return {string}
*/ */
proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest.prototype.getOrgId = function() { proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest.prototype.getUserId = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
}; };
/** @param {string} value */
proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest.prototype.setOrgId = function(value) {
jspb.Message.setProto3StringField(this, 1, value);
};
/**
* optional string user_id = 2;
* @return {string}
*/
proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest.prototype.getUserId = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};
/** @param {string} value */ /** @param {string} value */
proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest.prototype.setUserId = function(value) { proto.caos.zitadel.management.api.v1.RemoveOrgMemberRequest.prototype.setUserId = function(value) {
jspb.Message.setProto3StringField(this, 2, value); jspb.Message.setProto3StringField(this, 1, value);
}; };
@@ -14744,7 +14685,7 @@ proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse.toObject = function
limit: jspb.Message.getFieldWithDefault(msg, 2, 0), limit: jspb.Message.getFieldWithDefault(msg, 2, 0),
totalResult: jspb.Message.getFieldWithDefault(msg, 3, 0), totalResult: jspb.Message.getFieldWithDefault(msg, 3, 0),
resultList: jspb.Message.toObjectList(msg.getResultList(), resultList: jspb.Message.toObjectList(msg.getResultList(),
proto.caos.zitadel.management.api.v1.OrgMember.toObject, includeInstance) proto.caos.zitadel.management.api.v1.OrgMemberView.toObject, includeInstance)
}; };
if (includeInstance) { if (includeInstance) {
@@ -14794,8 +14735,8 @@ proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse.deserializeBinaryFr
msg.setTotalResult(value); msg.setTotalResult(value);
break; break;
case 4: case 4:
var value = new proto.caos.zitadel.management.api.v1.OrgMember; var value = new proto.caos.zitadel.management.api.v1.OrgMemberView;
reader.readMessage(value,proto.caos.zitadel.management.api.v1.OrgMember.deserializeBinaryFromReader); reader.readMessage(value,proto.caos.zitadel.management.api.v1.OrgMemberView.deserializeBinaryFromReader);
msg.addResult(value); msg.addResult(value);
break; break;
default: default:
@@ -14853,7 +14794,7 @@ proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse.serializeBinaryToWr
writer.writeRepeatedMessage( writer.writeRepeatedMessage(
4, 4,
f, f,
proto.caos.zitadel.management.api.v1.OrgMember.serializeBinaryToWriter proto.caos.zitadel.management.api.v1.OrgMemberView.serializeBinaryToWriter
); );
} }
}; };
@@ -14905,28 +14846,28 @@ proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse.prototype.setTotalR
/** /**
* repeated OrgMember result = 4; * repeated OrgMemberView result = 4;
* @return {!Array<!proto.caos.zitadel.management.api.v1.OrgMember>} * @return {!Array<!proto.caos.zitadel.management.api.v1.OrgMemberView>}
*/ */
proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse.prototype.getResultList = function() { proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse.prototype.getResultList = function() {
return /** @type{!Array<!proto.caos.zitadel.management.api.v1.OrgMember>} */ ( return /** @type{!Array<!proto.caos.zitadel.management.api.v1.OrgMemberView>} */ (
jspb.Message.getRepeatedWrapperField(this, proto.caos.zitadel.management.api.v1.OrgMember, 4)); jspb.Message.getRepeatedWrapperField(this, proto.caos.zitadel.management.api.v1.OrgMemberView, 4));
}; };
/** @param {!Array<!proto.caos.zitadel.management.api.v1.OrgMember>} value */ /** @param {!Array<!proto.caos.zitadel.management.api.v1.OrgMemberView>} value */
proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse.prototype.setResultList = function(value) { proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse.prototype.setResultList = function(value) {
jspb.Message.setRepeatedWrapperField(this, 4, value); jspb.Message.setRepeatedWrapperField(this, 4, value);
}; };
/** /**
* @param {!proto.caos.zitadel.management.api.v1.OrgMember=} opt_value * @param {!proto.caos.zitadel.management.api.v1.OrgMemberView=} opt_value
* @param {number=} opt_index * @param {number=} opt_index
* @return {!proto.caos.zitadel.management.api.v1.OrgMember} * @return {!proto.caos.zitadel.management.api.v1.OrgMemberView}
*/ */
proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse.prototype.addResult = function(opt_value, opt_index) { proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse.prototype.addResult = function(opt_value, opt_index) {
return jspb.Message.addToRepeatedWrapperField(this, 4, opt_value, proto.caos.zitadel.management.api.v1.OrgMember, opt_index); return jspb.Message.addToRepeatedWrapperField(this, 4, opt_value, proto.caos.zitadel.management.api.v1.OrgMemberView, opt_index);
}; };
@@ -14944,7 +14885,412 @@ proto.caos.zitadel.management.api.v1.OrgMemberSearchResponse.prototype.clearResu
* @private {!Array<number>} * @private {!Array<number>}
* @const * @const
*/ */
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.repeatedFields_ = [4]; proto.caos.zitadel.management.api.v1.OrgMemberView.repeatedFields_ = [2];
if (jspb.Message.GENERATE_TO_OBJECT) {
/**
* Creates an object representation of this proto suitable for use in Soy templates.
* Field names that are reserved in JavaScript and will be renamed to pb_name.
* To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
* For the list of reserved names please see:
* com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.
* @param {boolean=} opt_includeInstance Whether to include the JSPB instance
* for transitional soy proto support: http://goto/soy-param-migration
* @return {!Object}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.toObject = function(opt_includeInstance) {
return proto.caos.zitadel.management.api.v1.OrgMemberView.toObject(opt_includeInstance, this);
};
/**
* Static version of the {@see toObject} method.
* @param {boolean|undefined} includeInstance Whether to include the JSPB
* instance for transitional soy proto support:
* http://goto/soy-param-migration
* @param {!proto.caos.zitadel.management.api.v1.OrgMemberView} msg The msg instance to transform.
* @return {!Object}
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.toObject = function(includeInstance, msg) {
var f, obj = {
userId: jspb.Message.getFieldWithDefault(msg, 1, ""),
rolesList: jspb.Message.getRepeatedField(msg, 2),
changeDate: (f = msg.getChangeDate()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
creationDate: (f = msg.getCreationDate()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
sequence: jspb.Message.getFieldWithDefault(msg, 5, 0),
userName: jspb.Message.getFieldWithDefault(msg, 6, ""),
email: jspb.Message.getFieldWithDefault(msg, 7, ""),
firstName: jspb.Message.getFieldWithDefault(msg, 8, ""),
lastName: jspb.Message.getFieldWithDefault(msg, 9, "")
};
if (includeInstance) {
obj.$jspbMessageInstance = msg;
}
return obj;
};
}
/**
* Deserializes binary data (in protobuf wire format).
* @param {jspb.ByteSource} bytes The bytes to deserialize.
* @return {!proto.caos.zitadel.management.api.v1.OrgMemberView}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.deserializeBinary = function(bytes) {
var reader = new jspb.BinaryReader(bytes);
var msg = new proto.caos.zitadel.management.api.v1.OrgMemberView;
return proto.caos.zitadel.management.api.v1.OrgMemberView.deserializeBinaryFromReader(msg, reader);
};
/**
* Deserializes binary data (in protobuf wire format) from the
* given reader into the given message object.
* @param {!proto.caos.zitadel.management.api.v1.OrgMemberView} msg The message object to deserialize into.
* @param {!jspb.BinaryReader} reader The BinaryReader to use.
* @return {!proto.caos.zitadel.management.api.v1.OrgMemberView}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.deserializeBinaryFromReader = function(msg, reader) {
while (reader.nextField()) {
if (reader.isEndGroup()) {
break;
}
var field = reader.getFieldNumber();
switch (field) {
case 1:
var value = /** @type {string} */ (reader.readString());
msg.setUserId(value);
break;
case 2:
var value = /** @type {string} */ (reader.readString());
msg.addRoles(value);
break;
case 3:
var value = new google_protobuf_timestamp_pb.Timestamp;
reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
msg.setChangeDate(value);
break;
case 4:
var value = new google_protobuf_timestamp_pb.Timestamp;
reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
msg.setCreationDate(value);
break;
case 5:
var value = /** @type {number} */ (reader.readUint64());
msg.setSequence(value);
break;
case 6:
var value = /** @type {string} */ (reader.readString());
msg.setUserName(value);
break;
case 7:
var value = /** @type {string} */ (reader.readString());
msg.setEmail(value);
break;
case 8:
var value = /** @type {string} */ (reader.readString());
msg.setFirstName(value);
break;
case 9:
var value = /** @type {string} */ (reader.readString());
msg.setLastName(value);
break;
default:
reader.skipField();
break;
}
}
return msg;
};
/**
* Serializes the message to binary data (in protobuf wire format).
* @return {!Uint8Array}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.serializeBinary = function() {
var writer = new jspb.BinaryWriter();
proto.caos.zitadel.management.api.v1.OrgMemberView.serializeBinaryToWriter(this, writer);
return writer.getResultBuffer();
};
/**
* Serializes the given message to binary data (in protobuf wire
* format), writing to the given BinaryWriter.
* @param {!proto.caos.zitadel.management.api.v1.OrgMemberView} message
* @param {!jspb.BinaryWriter} writer
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.serializeBinaryToWriter = function(message, writer) {
var f = undefined;
f = message.getUserId();
if (f.length > 0) {
writer.writeString(
1,
f
);
}
f = message.getRolesList();
if (f.length > 0) {
writer.writeRepeatedString(
2,
f
);
}
f = message.getChangeDate();
if (f != null) {
writer.writeMessage(
3,
f,
google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
);
}
f = message.getCreationDate();
if (f != null) {
writer.writeMessage(
4,
f,
google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
);
}
f = message.getSequence();
if (f !== 0) {
writer.writeUint64(
5,
f
);
}
f = message.getUserName();
if (f.length > 0) {
writer.writeString(
6,
f
);
}
f = message.getEmail();
if (f.length > 0) {
writer.writeString(
7,
f
);
}
f = message.getFirstName();
if (f.length > 0) {
writer.writeString(
8,
f
);
}
f = message.getLastName();
if (f.length > 0) {
writer.writeString(
9,
f
);
}
};
/**
* optional string user_id = 1;
* @return {string}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.getUserId = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};
/** @param {string} value */
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.setUserId = function(value) {
jspb.Message.setProto3StringField(this, 1, value);
};
/**
* repeated string roles = 2;
* @return {!Array<string>}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.getRolesList = function() {
return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 2));
};
/** @param {!Array<string>} value */
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.setRolesList = function(value) {
jspb.Message.setField(this, 2, value || []);
};
/**
* @param {string} value
* @param {number=} opt_index
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.addRoles = function(value, opt_index) {
jspb.Message.addToRepeatedField(this, 2, value, opt_index);
};
/**
* Clears the list making it empty but non-null.
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.clearRolesList = function() {
this.setRolesList([]);
};
/**
* optional google.protobuf.Timestamp change_date = 3;
* @return {?proto.google.protobuf.Timestamp}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.getChangeDate = function() {
return /** @type{?proto.google.protobuf.Timestamp} */ (
jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 3));
};
/** @param {?proto.google.protobuf.Timestamp|undefined} value */
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.setChangeDate = function(value) {
jspb.Message.setWrapperField(this, 3, value);
};
/**
* Clears the message field making it undefined.
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.clearChangeDate = function() {
this.setChangeDate(undefined);
};
/**
* Returns whether this field is set.
* @return {boolean}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.hasChangeDate = function() {
return jspb.Message.getField(this, 3) != null;
};
/**
* optional google.protobuf.Timestamp creation_date = 4;
* @return {?proto.google.protobuf.Timestamp}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.getCreationDate = function() {
return /** @type{?proto.google.protobuf.Timestamp} */ (
jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 4));
};
/** @param {?proto.google.protobuf.Timestamp|undefined} value */
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.setCreationDate = function(value) {
jspb.Message.setWrapperField(this, 4, value);
};
/**
* Clears the message field making it undefined.
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.clearCreationDate = function() {
this.setCreationDate(undefined);
};
/**
* Returns whether this field is set.
* @return {boolean}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.hasCreationDate = function() {
return jspb.Message.getField(this, 4) != null;
};
/**
* optional uint64 sequence = 5;
* @return {number}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.getSequence = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
};
/** @param {number} value */
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.setSequence = function(value) {
jspb.Message.setProto3IntField(this, 5, value);
};
/**
* optional string user_name = 6;
* @return {string}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.getUserName = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, ""));
};
/** @param {string} value */
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.setUserName = function(value) {
jspb.Message.setProto3StringField(this, 6, value);
};
/**
* optional string email = 7;
* @return {string}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.getEmail = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 7, ""));
};
/** @param {string} value */
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.setEmail = function(value) {
jspb.Message.setProto3StringField(this, 7, value);
};
/**
* optional string first_name = 8;
* @return {string}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.getFirstName = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 8, ""));
};
/** @param {string} value */
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.setFirstName = function(value) {
jspb.Message.setProto3StringField(this, 8, value);
};
/**
* optional string last_name = 9;
* @return {string}
*/
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.getLastName = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 9, ""));
};
/** @param {string} value */
proto.caos.zitadel.management.api.v1.OrgMemberView.prototype.setLastName = function(value) {
jspb.Message.setProto3StringField(this, 9, value);
};
/**
* List of repeated fields within this message type.
* @private {!Array<number>}
* @const
*/
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.repeatedFields_ = [3];
@@ -14975,9 +15321,8 @@ proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.toObject =
*/ */
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.toObject = function(includeInstance, msg) { proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.toObject = function(includeInstance, msg) {
var f, obj = { var f, obj = {
orgId: jspb.Message.getFieldWithDefault(msg, 1, ""), offset: jspb.Message.getFieldWithDefault(msg, 1, 0),
offset: jspb.Message.getFieldWithDefault(msg, 2, 0), limit: jspb.Message.getFieldWithDefault(msg, 2, 0),
limit: jspb.Message.getFieldWithDefault(msg, 3, 0),
queriesList: jspb.Message.toObjectList(msg.getQueriesList(), queriesList: jspb.Message.toObjectList(msg.getQueriesList(),
proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery.toObject, includeInstance) proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery.toObject, includeInstance)
}; };
@@ -15017,18 +15362,14 @@ proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.deserializeBinaryFro
var field = reader.getFieldNumber(); var field = reader.getFieldNumber();
switch (field) { switch (field) {
case 1: case 1:
var value = /** @type {string} */ (reader.readString());
msg.setOrgId(value);
break;
case 2:
var value = /** @type {number} */ (reader.readUint64()); var value = /** @type {number} */ (reader.readUint64());
msg.setOffset(value); msg.setOffset(value);
break; break;
case 3: case 2:
var value = /** @type {number} */ (reader.readUint64()); var value = /** @type {number} */ (reader.readUint64());
msg.setLimit(value); msg.setLimit(value);
break; break;
case 4: case 3:
var value = new proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery; var value = new proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery;
reader.readMessage(value,proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery.deserializeBinaryFromReader); reader.readMessage(value,proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery.deserializeBinaryFromReader);
msg.addQueries(value); msg.addQueries(value);
@@ -15062,31 +15403,24 @@ proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.serializeB
*/ */
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.serializeBinaryToWriter = function(message, writer) { proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.serializeBinaryToWriter = function(message, writer) {
var f = undefined; var f = undefined;
f = message.getOrgId();
if (f.length > 0) {
writer.writeString(
1,
f
);
}
f = message.getOffset(); f = message.getOffset();
if (f !== 0) { if (f !== 0) {
writer.writeUint64( writer.writeUint64(
2, 1,
f f
); );
} }
f = message.getLimit(); f = message.getLimit();
if (f !== 0) { if (f !== 0) {
writer.writeUint64( writer.writeUint64(
3, 2,
f f
); );
} }
f = message.getQueriesList(); f = message.getQueriesList();
if (f.length > 0) { if (f.length > 0) {
writer.writeRepeatedMessage( writer.writeRepeatedMessage(
4, 3,
f, f,
proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery.serializeBinaryToWriter proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery.serializeBinaryToWriter
); );
@@ -15095,63 +15429,48 @@ proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.serializeBinaryToWri
/** /**
* optional string org_id = 1; * optional uint64 offset = 1;
* @return {string}
*/
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.getOrgId = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};
/** @param {string} value */
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.setOrgId = function(value) {
jspb.Message.setProto3StringField(this, 1, value);
};
/**
* optional uint64 offset = 2;
* @return {number} * @return {number}
*/ */
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.getOffset = function() { proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.getOffset = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0)); return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
}; };
/** @param {number} value */ /** @param {number} value */
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.setOffset = function(value) { proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.setOffset = function(value) {
jspb.Message.setProto3IntField(this, 2, value); jspb.Message.setProto3IntField(this, 1, value);
}; };
/** /**
* optional uint64 limit = 3; * optional uint64 limit = 2;
* @return {number} * @return {number}
*/ */
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.getLimit = function() { proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.getLimit = function() {
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0)); return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));
}; };
/** @param {number} value */ /** @param {number} value */
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.setLimit = function(value) { proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.setLimit = function(value) {
jspb.Message.setProto3IntField(this, 3, value); jspb.Message.setProto3IntField(this, 2, value);
}; };
/** /**
* repeated OrgMemberSearchQuery queries = 4; * repeated OrgMemberSearchQuery queries = 3;
* @return {!Array<!proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery>} * @return {!Array<!proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery>}
*/ */
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.getQueriesList = function() { proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.getQueriesList = function() {
return /** @type{!Array<!proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery>} */ ( return /** @type{!Array<!proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery>} */ (
jspb.Message.getRepeatedWrapperField(this, proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery, 4)); jspb.Message.getRepeatedWrapperField(this, proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery, 3));
}; };
/** @param {!Array<!proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery>} value */ /** @param {!Array<!proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery>} value */
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.setQueriesList = function(value) { proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.setQueriesList = function(value) {
jspb.Message.setRepeatedWrapperField(this, 4, value); jspb.Message.setRepeatedWrapperField(this, 3, value);
}; };
@@ -15161,7 +15480,7 @@ proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.setQueries
* @return {!proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery} * @return {!proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery}
*/ */
proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.addQueries = function(opt_value, opt_index) { proto.caos.zitadel.management.api.v1.OrgMemberSearchRequest.prototype.addQueries = function(opt_value, opt_index) {
return jspb.Message.addToRepeatedWrapperField(this, 4, opt_value, proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery, opt_index); return jspb.Message.addToRepeatedWrapperField(this, 3, opt_value, proto.caos.zitadel.management.api.v1.OrgMemberSearchQuery, opt_index);
}; };

View File

@@ -61,13 +61,12 @@ export class OrgService {
); );
} }
public async SearchOrgMembers(orgId: string, limit: number, offset: number): Promise<OrgMemberSearchResponse> { public async SearchMyOrgMembers(limit: number, offset: number): Promise<OrgMemberSearchResponse> {
const req = new OrgMemberSearchRequest(); const req = new OrgMemberSearchRequest();
req.setOrgId(orgId);
req.setLimit(limit); req.setLimit(limit);
req.setOffset(offset); req.setOffset(offset);
return await this.request( return await this.request(
c => c.searchOrgMembers, c => c.searchMyOrgMembers,
req, req,
f => f, f => f,
); );
@@ -83,26 +82,24 @@ export class OrgService {
); );
} }
public async AddOrgMember(orgId: string, userId: string, rolesList: string[]): Promise<Empty> { public async AddMyOrgMember(userId: string, rolesList: string[]): Promise<Empty> {
const req = new AddOrgMemberRequest(); const req = new AddOrgMemberRequest();
req.setOrgId(orgId);
req.setUserId(userId); req.setUserId(userId);
if (rolesList) { if (rolesList) {
req.setRolesList(rolesList); req.setRolesList(rolesList);
} }
return await this.request( return await this.request(
c => c.addOrgMember, c => c.addMyOrgMember,
req, req,
f => f, f => f,
); );
} }
public async RemoveOrgMember(orgId: string, userId: string): Promise<Empty> { public async RemoveMyOrgMember(userId: string): Promise<Empty> {
const req = new RemoveOrgMemberRequest(); const req = new RemoveOrgMemberRequest();
req.setOrgId(orgId);
req.setUserId(userId); req.setUserId(userId);
return await this.request( return await this.request(
c => c.removeOrgMember, c => c.removeMyOrgMember,
req, req,
f => f, f => f,
); );

View File

@@ -10,6 +10,7 @@ import {
ApplicationSearchRequest, ApplicationSearchRequest,
ApplicationSearchResponse, ApplicationSearchResponse,
ApplicationUpdate, ApplicationUpdate,
GrantedProject,
GrantedProjectSearchQuery, GrantedProjectSearchQuery,
GrantedProjectSearchRequest, GrantedProjectSearchRequest,
GrantedProjectSearchResponse, GrantedProjectSearchResponse,
@@ -28,6 +29,7 @@ import {
ProjectGrantMemberSearchRequest, ProjectGrantMemberSearchRequest,
ProjectGrantSearchRequest, ProjectGrantSearchRequest,
ProjectGrantSearchResponse, ProjectGrantSearchResponse,
ProjectGrantUpdate,
ProjectID, ProjectID,
ProjectMemberAdd, ProjectMemberAdd,
ProjectMemberChange, ProjectMemberChange,
@@ -111,7 +113,7 @@ export class ProjectService {
); );
} }
public async GetGrantedProjectGrantByID(projectId: string, id: string): Promise<ProjectGrant> { public async GetGrantedProjectGrantByID(projectId: string, id: string): Promise<GrantedProject> {
const req = new ProjectGrantID(); const req = new ProjectGrantID();
req.setId(id); req.setId(id);
req.setProjectId(projectId); req.setProjectId(projectId);
@@ -143,6 +145,18 @@ export class ProjectService {
); );
} }
public async UpdateProjectGrant(id: string, projectId: string, rolesList: string[]): Promise<ProjectGrant> {
const req = new ProjectGrantUpdate();
req.setRoleKeysList(rolesList);
req.setId(id);
req.setProjectId(projectId);
return await this.request(
c => c.updateProjectGrant,
req,
f => f,
);
}
public async ChangeProjectMember(id: string, userId: string, rolesList: string[]): Promise<Empty> { public async ChangeProjectMember(id: string, userId: string, rolesList: string[]): Promise<Empty> {
const req = new ProjectMemberChange(); const req = new ProjectMemberChange();
req.setId(id); req.setId(id);
@@ -196,6 +210,18 @@ export class ProjectService {
); );
} }
public async AddProjectMember(projectId: string, userId: string, rolesList: string[]): Promise<Empty> {
const req = new ProjectMemberAdd();
req.setId(projectId);
req.setUserId(userId);
req.setRolesList(rolesList);
return await this.request(
c => c.addProjectMember,
req,
f => f,
);
}
public async AddProjectGrantMember( public async AddProjectGrantMember(
projectId: string, projectId: string,
grantId: string, grantId: string,
@@ -499,16 +525,4 @@ export class ProjectService {
f => f, f => f,
); );
} }
public async AddProjectMember(projectId: string, userId: string, rolesList: string[]): Promise<Empty> {
const req = new ProjectMemberAdd();
req.setId(projectId);
req.setUserId(userId);
req.setRolesList(rolesList);
return await this.request(
c => c.addProjectMember,
req,
f => f,
);
}
} }

View File

@@ -286,7 +286,7 @@
"TYPE": { "TYPE": {
"TITLE": "Typ", "TITLE": "Typ",
"0": "unbekannter Typ", "0": "unbekannter Typ",
"1": "selbsterstellt", "1": "in Besitz",
"2": "berechtigt" "2": "berechtigt"
}, },
"NAME": "Name", "NAME": "Name",

View File

@@ -286,7 +286,7 @@
"TYPE": { "TYPE": {
"TITLE": "Type", "TITLE": "Type",
"0": "unknown type", "0": "unknown type",
"1": "self created", "1": "owned",
"2": "granted" "2": "granted"
}, },
"NAME": "Name", "NAME": "Name",