mirror of
https://github.com/zitadel/zitadel.git
synced 2024-12-13 03:24:26 +00:00
feat(console): loginname hint, update dependencies (#709)
* chore(deps): bump rxjs from 6.6.2 to 6.6.3 in /console (#707) Bumps [rxjs](https://github.com/reactivex/rxjs) from 6.6.2 to 6.6.3. - [Release notes](https://github.com/reactivex/rxjs/releases) - [Changelog](https://github.com/ReactiveX/rxjs/blob/6.6.3/CHANGELOG.md) - [Commits](https://github.com/reactivex/rxjs/compare/6.6.2...6.6.3) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump @angular/cli from 10.0.8 to 10.1.0 in /console (#706) Bumps [@angular/cli](https://github.com/angular/angular-cli) from 10.0.8 to 10.1.0. - [Release notes](https://github.com/angular/angular-cli/releases) - [Commits](https://github.com/angular/angular-cli/compare/v10.0.8...v10.1.0) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump karma from 5.1.1 to 5.2.1 in /console (#705) Bumps [karma](https://github.com/karma-runner/karma) from 5.1.1 to 5.2.1. - [Release notes](https://github.com/karma-runner/karma/releases) - [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md) - [Commits](https://github.com/karma-runner/karma/compare/v5.1.1...v5.2.1) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump stylelint from 13.6.1 to 13.7.0 in /console (#704) Bumps [stylelint](https://github.com/stylelint/stylelint) from 13.6.1 to 13.7.0. - [Release notes](https://github.com/stylelint/stylelint/releases) - [Changelog](https://github.com/stylelint/stylelint/blob/master/CHANGELOG.md) - [Commits](https://github.com/stylelint/stylelint/compare/13.6.1...13.7.0) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Max Peintner <max@caos.ch> * chore(deps): bump angularx-qrcode from 10.0.6 to 10.0.10 in /console (#703) Bumps [angularx-qrcode](https://github.com/cordobo/angularx-qrcode) from 10.0.6 to 10.0.10. - [Release notes](https://github.com/cordobo/angularx-qrcode/releases) - [Commits](https://github.com/cordobo/angularx-qrcode/compare/10.0.6...10.0.10) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Max Peintner <max@caos.ch> * chore(deps-dev): bump @types/node from 14.6.1 to 14.6.4 in /console (#701) Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.6.1 to 14.6.4. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump prettier from 2.0.5 to 2.1.1 in /console (#665) Bumps [prettier](https://github.com/prettier/prettier) from 2.0.5 to 2.1.1. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/master/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/2.0.5...2.1.1) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump @angular/language-service in /console (#708) Bumps [@angular/language-service](https://github.com/angular/angular/tree/HEAD/packages/language-service) from 10.0.14 to 10.1.0. - [Release notes](https://github.com/angular/angular/releases) - [Changelog](https://github.com/angular/angular/blob/master/CHANGELOG.md) - [Commits](https://github.com/angular/angular/commits/10.1.0/packages/language-service) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps-dev): bump @angular-devkit/build-angular in /console (#666) Bumps [@angular-devkit/build-angular](https://github.com/angular/angular-cli) from 0.1000.6 to 0.1000.8. - [Release notes](https://github.com/angular/angular-cli/releases) - [Commits](https://github.com/angular/angular-cli/commits) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Max Peintner <max@caos.ch> * show loginname suffix * update packlock * rm console logs * private * suffix for org create * rm suffix for org create * rm org create suffix * lint Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This commit is contained in:
parent
8fcb03854b
commit
5c6989e831
3487
console/package-lock.json
generated
3487
console/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -27,7 +27,7 @@
|
||||
"@types/file-saver": "^2.0.1",
|
||||
"@types/uuid": "^8.3.0",
|
||||
"@types/google-protobuf": "^3.7.3",
|
||||
"angularx-qrcode": "^10.0.6",
|
||||
"angularx-qrcode": "^10.0.10",
|
||||
"angular-oauth2-oidc": "^10.0.3",
|
||||
"cors": "^2.8.5",
|
||||
"file-saver": "^2.0.2",
|
||||
@ -38,31 +38,31 @@
|
||||
"moment": "^2.27.0",
|
||||
"ngx-moment": "^5.0.0",
|
||||
"ngx-quicklink": "^0.2.4",
|
||||
"rxjs": "~6.6.2",
|
||||
"rxjs": "~6.6.3",
|
||||
"ts-protoc-gen": "^0.12.0",
|
||||
"tslib": "^2.0.1",
|
||||
"uuid": "^8.3.0",
|
||||
"zone.js": "~0.11.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@angular-devkit/build-angular": "~0.1000.6",
|
||||
"@angular-devkit/build-angular": "~0.1000.8",
|
||||
"@angular/cli": "~10.0.7",
|
||||
"@angular/compiler-cli": "~10.0.11",
|
||||
"@types/jasmine": "~3.5.13",
|
||||
"@angular/language-service": "~10.0.11",
|
||||
"@angular/language-service": "~10.1.0",
|
||||
"@types/jasminewd2": "~2.0.3",
|
||||
"@types/node": "^14.6.0",
|
||||
"@types/node": "^14.6.4",
|
||||
"codelyzer": "^6.0.0",
|
||||
"jasmine-core": "~3.6.0",
|
||||
"jasmine-spec-reporter": "~5.0.0",
|
||||
"karma": "~5.1.1",
|
||||
"karma": "~5.2.1",
|
||||
"karma-chrome-launcher": "~3.1.0",
|
||||
"karma-coverage-istanbul-reporter": "~3.0.2",
|
||||
"karma-jasmine": "~4.0.1",
|
||||
"karma-jasmine-html-reporter": "^1.5.0",
|
||||
"prettier": "^2.0.5",
|
||||
"prettier": "^2.1.1",
|
||||
"protractor": "~7.0.0",
|
||||
"stylelint": "^13.6.1",
|
||||
"stylelint": "^13.7.0",
|
||||
"stylelint-config-standard": "^20.0.0",
|
||||
"stylelint-scss": "^3.18.0",
|
||||
"ts-node": "~9.0.0",
|
||||
|
@ -61,6 +61,7 @@ export class OrgCreateComponent {
|
||||
public usePassword: boolean = false;
|
||||
|
||||
public forSelf: boolean = true;
|
||||
|
||||
constructor(
|
||||
private router: Router,
|
||||
private toast: ToastService,
|
||||
@ -157,14 +158,12 @@ export class OrgCreateComponent {
|
||||
validators.push(symbolValidator);
|
||||
}
|
||||
|
||||
// this.initForm(validators);
|
||||
const pwdValidators = [...validators] as ValidatorFn[];
|
||||
const confirmPwdValidators = [...validators, passwordConfirmValidator] as ValidatorFn[];
|
||||
this.pwdForm = this.fb.group({
|
||||
password: ['', pwdValidators],
|
||||
confirmPassword: ['', confirmPwdValidators],
|
||||
});
|
||||
|
||||
});
|
||||
} else {
|
||||
this.pwdForm = this.fb.group({
|
||||
|
@ -5,16 +5,18 @@
|
||||
<form *ngIf="userForm" [formGroup]="userForm" (ngSubmit)="createUser()" class="form">
|
||||
<div class="content">
|
||||
<p class="section">{{ 'USER.CREATE.NAMEANDEMAILSECTION' | translate }}</p>
|
||||
<mat-form-field class="formfield">
|
||||
<mat-form-field class="formfield" appearance="fill">
|
||||
<mat-label>{{ 'USER.PROFILE.EMAIL' | translate }}</mat-label>
|
||||
<input matInput formControlName="email" required />
|
||||
<mat-error *ngIf="email?.invalid && email?.errors?.required">
|
||||
{{ 'USER.VALIDATION.REQUIRED' | translate }}
|
||||
</mat-error>
|
||||
</mat-form-field>
|
||||
<mat-form-field class="formfield">
|
||||
<mat-form-field class="formfield" appearance="fill">
|
||||
<mat-label>{{ 'USER.PROFILE.USERNAME' | translate }}</mat-label>
|
||||
<input matInput formControlName="userName" required />
|
||||
<span *ngIf="envSuffix" matSuffix>{{envSuffix}}</span>
|
||||
|
||||
<mat-error *ngIf="userName?.invalid && userName?.errors?.required">
|
||||
{{ 'USER.VALIDATION.REQUIRED' | translate }}
|
||||
</mat-error>
|
||||
@ -22,21 +24,23 @@
|
||||
{{ 'USER.VALIDATION.NOEMAIL' | translate }}
|
||||
</mat-error>
|
||||
</mat-form-field>
|
||||
<mat-form-field class="formfield">
|
||||
</div>
|
||||
<div class="content">
|
||||
<mat-form-field class="formfield" appearance="fill">
|
||||
<mat-label>{{ 'USER.PROFILE.FIRSTNAME' | translate }}</mat-label>
|
||||
<input matInput formControlName="firstName" required />
|
||||
<mat-error *ngIf="firstName?.invalid && firstName?.errors?.required">
|
||||
{{ 'USER.VALIDATION.REQUIRED' | translate }}
|
||||
</mat-error>
|
||||
</mat-form-field>
|
||||
<mat-form-field class="formfield">
|
||||
<mat-form-field class="formfield" appearance="fill">
|
||||
<mat-label>{{ 'USER.PROFILE.LASTNAME' | translate }}</mat-label>
|
||||
<input matInput formControlName="lastName" required />
|
||||
<mat-error *ngIf="lastName?.invalid && lastName?.errors?.required">
|
||||
{{ 'USER.VALIDATION.REQUIRED' | translate }}
|
||||
</mat-error>
|
||||
</mat-form-field>
|
||||
<mat-form-field class="formfield">
|
||||
<mat-form-field class="formfield" appearance="fill">
|
||||
<mat-label>{{ 'USER.PROFILE.NICKNAME' | translate }}</mat-label>
|
||||
<input matInput formControlName="nickName" />
|
||||
<mat-error *ngIf="nickName?.invalid && nickName?.errors?.required">
|
||||
@ -46,7 +50,7 @@
|
||||
|
||||
<p class="section">{{ 'USER.CREATE.GENDERLANGSECTION' | translate }}</p>
|
||||
|
||||
<mat-form-field class="formfield">
|
||||
<mat-form-field class="formfield" appearance="fill">
|
||||
<mat-label>{{ 'USER.PROFILE.GENDER' | translate }}</mat-label>
|
||||
<mat-select formControlName="gender">
|
||||
<mat-option *ngFor="let gender of genders" [value]="gender">
|
||||
@ -57,7 +61,7 @@
|
||||
{{ 'USER.VALIDATION.REQUIRED' | translate }}
|
||||
</mat-error>
|
||||
</mat-form-field>
|
||||
<mat-form-field class="formfield">
|
||||
<mat-form-field class="formfield" appearance="fill">
|
||||
<mat-label>{{ 'USER.PROFILE.PREFERRED_LANGUAGE' | translate }}</mat-label>
|
||||
<mat-select formControlName="preferredLanguage">
|
||||
<mat-option *ngFor="let language of languages" [value]="language">
|
||||
@ -71,7 +75,7 @@
|
||||
|
||||
<p class="section">{{ 'USER.CREATE.ADDRESSANDPHONESECTION' | translate }}</p>
|
||||
|
||||
<mat-form-field class="formfield">
|
||||
<mat-form-field class="formfield" appearance="fill">
|
||||
<mat-label>{{ 'USER.PROFILE.PHONE' | translate }}</mat-label>
|
||||
<input matInput formControlName="phone" />
|
||||
<mat-error *ngIf="phone?.invalid && phone?.errors?.required">
|
||||
|
@ -2,7 +2,13 @@ import { Component, OnDestroy } from '@angular/core';
|
||||
import { AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';
|
||||
import { Router } from '@angular/router';
|
||||
import { Subscription } from 'rxjs';
|
||||
import { CreateHumanRequest, CreateUserRequest, Gender, UserResponse } from 'src/app/proto/generated/management_pb';
|
||||
import {
|
||||
CreateHumanRequest,
|
||||
CreateUserRequest,
|
||||
Gender,
|
||||
OrgDomain,
|
||||
UserResponse,
|
||||
} from 'src/app/proto/generated/management_pb';
|
||||
import { ManagementService } from 'src/app/services/mgmt.service';
|
||||
import { ToastService } from 'src/app/services/toast.service';
|
||||
|
||||
@ -40,14 +46,16 @@ export class UserCreateComponent implements OnDestroy {
|
||||
public userLoginMustBeDomain: boolean = false;
|
||||
public loading: boolean = false;
|
||||
|
||||
private primaryDomain!: OrgDomain.AsObject;
|
||||
|
||||
constructor(
|
||||
private router: Router,
|
||||
private toast: ToastService,
|
||||
public userService: ManagementService,
|
||||
private fb: FormBuilder,
|
||||
private mgmtService: ManagementService,
|
||||
) {
|
||||
this.loading = true;
|
||||
this.loadOrg();
|
||||
this.mgmtService.GetMyOrgIamPolicy().then((iampolicy) => {
|
||||
this.userLoginMustBeDomain = iampolicy.toObject().userLoginMustBeDomain;
|
||||
this.initForm();
|
||||
@ -59,6 +67,14 @@ export class UserCreateComponent implements OnDestroy {
|
||||
});
|
||||
}
|
||||
|
||||
private async loadOrg(): Promise<void> {
|
||||
const domains = (await this.mgmtService.SearchMyOrgDomains(0, 100).then(doms => doms.toObject()));
|
||||
const found = domains.resultList.find(domain => domain.primary);
|
||||
if (found) {
|
||||
this.primaryDomain = found;
|
||||
}
|
||||
}
|
||||
|
||||
private initForm(): void {
|
||||
this.userForm = this.fb.group({
|
||||
email: ['', [Validators.required, Validators.email]],
|
||||
@ -93,7 +109,7 @@ export class UserCreateComponent implements OnDestroy {
|
||||
humanReq.setGender(this.gender?.value);
|
||||
humanReq.setCountry(this.country?.value);
|
||||
|
||||
this.userService
|
||||
this.mgmtService
|
||||
.CreateUserHuman(this.userName?.value, humanReq)
|
||||
.then((data: UserResponse) => {
|
||||
this.loading = false;
|
||||
@ -150,4 +166,12 @@ export class UserCreateComponent implements OnDestroy {
|
||||
public get country(): AbstractControl | null {
|
||||
return this.userForm.get('country');
|
||||
}
|
||||
|
||||
public get envSuffix(): string {
|
||||
if (this.userLoginMustBeDomain && this.primaryDomain?.domain) {
|
||||
return `@${this.primaryDomain.domain}`;
|
||||
} else {
|
||||
return '';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -37,7 +37,6 @@ export class DetailFormComponent implements OnDestroy, OnChanges {
|
||||
}
|
||||
|
||||
public ngOnChanges(): void {
|
||||
console.log('disabled');
|
||||
this.profileForm = this.fb.group({
|
||||
userName: [{ value: '', disabled: true }, [
|
||||
Validators.required,
|
||||
|
@ -48,7 +48,6 @@ export class MembershipsComponent implements OnInit {
|
||||
|
||||
ngOnInit(): void {
|
||||
this.loadManager(this.user.id);
|
||||
console.log(this.disabled);
|
||||
}
|
||||
|
||||
public async loadManager(userId: string): Promise<void> {
|
||||
|
@ -82,12 +82,10 @@ export class UserTableComponent implements OnInit {
|
||||
query.setKey(UserSearchKey.USERSEARCHKEY_TYPE);
|
||||
query.setMethod(SearchMethod.SEARCHMETHOD_EQUALS);
|
||||
query.setValue(filterTypeValue);
|
||||
console.log(filterTypeValue);
|
||||
|
||||
this.userService.SearchUsers(limit, offset, [query]).then(resp => {
|
||||
this.userResult = resp.toObject();
|
||||
this.dataSource.data = this.userResult.resultList;
|
||||
console.log(this.userResult.resultList);
|
||||
this.loadingSubject.next(false);
|
||||
}).catch(error => {
|
||||
this.toast.showError(error);
|
||||
|
@ -7,6 +7,7 @@ import {
|
||||
CreateHumanRequest,
|
||||
CreateOrgRequest,
|
||||
CreateUserRequest,
|
||||
DefaultLoginPolicyView,
|
||||
FailedEventID,
|
||||
FailedEvents,
|
||||
IamMember,
|
||||
@ -51,6 +52,11 @@ export class AdminService {
|
||||
return this.grpcService.admin.getIamMemberRoles(req);
|
||||
}
|
||||
|
||||
public async getDefaultLoginPolicy(): Promise<DefaultLoginPolicyView> {
|
||||
const req = new Empty();
|
||||
return this.grpcService.admin.getDefaultLoginPolicy(req);
|
||||
}
|
||||
|
||||
public async GetViews(): Promise<Views> {
|
||||
const req = new Empty();
|
||||
return this.grpcService.admin.getViews(req);
|
||||
|
Loading…
Reference in New Issue
Block a user