mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-11 19:07:30 +00:00
chore(console): angular 16 (#5870)
* ng 16 * material cdk * module imports, rmn @accounts * deps * lint * buf --------- Co-authored-by: Elio Bischof <elio@zitadel.com>
This commit is contained in:
@@ -35,7 +35,8 @@
|
|||||||
"codemirror/mode/javascript/javascript",
|
"codemirror/mode/javascript/javascript",
|
||||||
"codemirror/mode/xml/xml",
|
"codemirror/mode/xml/xml",
|
||||||
"file-saver",
|
"file-saver",
|
||||||
"qrcode"
|
"qrcode",
|
||||||
|
"codemirror"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"configurations": {
|
"configurations": {
|
||||||
|
5303
console/package-lock.json
generated
5303
console/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -12,26 +12,23 @@
|
|||||||
},
|
},
|
||||||
"private": true,
|
"private": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@angular/animations": "^15.2.6",
|
"@angular/animations": "^16.0.1",
|
||||||
"@angular/cdk": "^15.2.6",
|
"@angular/cdk": "^16.0.1",
|
||||||
"@angular/common": "^15.2.6",
|
"@angular/common": "^16.0.1",
|
||||||
"@angular/compiler": "^15.2.6",
|
"@angular/compiler": "^16.0.1",
|
||||||
"@angular/core": "^15.2.6",
|
"@angular/core": "^16.0.1",
|
||||||
"@angular/forms": "^15.2.6",
|
"@angular/forms": "^16.0.1",
|
||||||
"@angular/material": "^15.2.6",
|
"@angular/material": "^16.0.1",
|
||||||
"@angular/material-moment-adapter": "^15.2.6",
|
"@angular/material-moment-adapter": "^16.0.1",
|
||||||
"@angular/platform-browser": "^15.2.6",
|
"@angular/platform-browser": "^16.0.1",
|
||||||
"@angular/platform-browser-dynamic": "^15.2.6",
|
"@angular/platform-browser-dynamic": "^16.0.1",
|
||||||
"@angular/router": "^15.2.6",
|
"@angular/router": "^16.0.1",
|
||||||
"@angular/service-worker": "^15.2.6",
|
"@angular/service-worker": "^16.0.1",
|
||||||
"@ctrl/ngx-codemirror": "^6.1.0",
|
"@ctrl/ngx-codemirror": "^6.1.0",
|
||||||
"@grpc/grpc-js": "^1.8.12",
|
"@grpc/grpc-js": "^1.8.14",
|
||||||
"@ngx-translate/core": "^14.0.0",
|
"@ngx-translate/core": "^14.0.0",
|
||||||
"@types/file-saver": "^2.0.2",
|
|
||||||
"@types/google-protobuf": "^3.15.3",
|
|
||||||
"@types/uuid": "^8.3.0",
|
|
||||||
"angular-oauth2-oidc": "^15.0.1",
|
"angular-oauth2-oidc": "^15.0.1",
|
||||||
"angularx-qrcode": "^15.0.0",
|
"angularx-qrcode": "^16.0.0",
|
||||||
"buffer": "^6.0.3",
|
"buffer": "^6.0.3",
|
||||||
"codemirror": "^5.65.8",
|
"codemirror": "^5.65.8",
|
||||||
"cors": "^2.8.5",
|
"cors": "^2.8.5",
|
||||||
@@ -40,8 +37,8 @@
|
|||||||
"google-proto-files": "^3.0.3",
|
"google-proto-files": "^3.0.3",
|
||||||
"google-protobuf": "^3.21.2",
|
"google-protobuf": "^3.21.2",
|
||||||
"grpc-web": "^1.4.1",
|
"grpc-web": "^1.4.1",
|
||||||
"i18n-iso-countries": "^7.5.0",
|
"i18n-iso-countries": "^7.6.0",
|
||||||
"libphonenumber-js": "^1.10.24",
|
"libphonenumber-js": "^1.10.30",
|
||||||
"material-design-icons-iconfont": "^6.1.1",
|
"material-design-icons-iconfont": "^6.1.1",
|
||||||
"moment": "^2.29.4",
|
"moment": "^2.29.4",
|
||||||
"ngx-color": "^8.0.3",
|
"ngx-color": "^8.0.3",
|
||||||
@@ -52,31 +49,34 @@
|
|||||||
"zone.js": "~0.13.0"
|
"zone.js": "~0.13.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@angular-devkit/build-angular": "^15.2.5",
|
"@angular-devkit/build-angular": "^16.0.1",
|
||||||
"@angular-eslint/builder": "15.2.1",
|
"@angular-eslint/builder": "16.0.1",
|
||||||
"@angular-eslint/eslint-plugin": "15.2.1",
|
"@angular-eslint/eslint-plugin": "16.0.1",
|
||||||
"@angular-eslint/eslint-plugin-template": "15.2.1",
|
"@angular-eslint/eslint-plugin-template": "16.0.1",
|
||||||
"@angular-eslint/schematics": "15.2.1",
|
"@angular-eslint/schematics": "16.0.1",
|
||||||
"@angular-eslint/template-parser": "15.2.1",
|
"@angular-eslint/template-parser": "16.0.1",
|
||||||
"@angular/cli": "^15.2.5",
|
"@angular/cli": "^16.0.1",
|
||||||
"@angular/compiler-cli": "^15.2.6",
|
"@angular/compiler-cli": "^16.0.1",
|
||||||
"@angular/language-service": "^15.2.6",
|
"@angular/language-service": "^16.0.1",
|
||||||
"@bufbuild/buf": "^1.14.0",
|
"@bufbuild/buf": "^1.18.0-1",
|
||||||
|
"@types/file-saver": "^2.0.2",
|
||||||
|
"@types/google-protobuf": "^3.15.3",
|
||||||
"@types/jasmine": "~4.3.0",
|
"@types/jasmine": "~4.3.0",
|
||||||
"@types/jasminewd2": "~2.0.10",
|
"@types/jasminewd2": "~2.0.10",
|
||||||
"@types/jsonwebtoken": "^9.0.1",
|
"@types/jsonwebtoken": "^9.0.1",
|
||||||
"@types/node": "^18.15.11",
|
"@types/node": "^18.15.11",
|
||||||
"@types/qrcode": "^1.5.0",
|
"@types/qrcode": "^1.5.0",
|
||||||
"@typescript-eslint/eslint-plugin": "5.48.2",
|
"@types/uuid": "^9.0.1",
|
||||||
"@typescript-eslint/parser": "5.48.2",
|
"@typescript-eslint/eslint-plugin": "^5.59.2",
|
||||||
|
"@typescript-eslint/parser": "^5.59.5",
|
||||||
"codelyzer": "^6.0.2",
|
"codelyzer": "^6.0.2",
|
||||||
"eslint": "^8.33.0",
|
"eslint": "^8.39.0",
|
||||||
"jasmine-core": "~4.6.0",
|
"jasmine-core": "~4.6.0",
|
||||||
"jasmine-spec-reporter": "~7.0.0",
|
"jasmine-spec-reporter": "~7.0.0",
|
||||||
"karma": "~6.4.1",
|
"karma": "^6.4.2",
|
||||||
"karma-chrome-launcher": "~3.1.0",
|
"karma-chrome-launcher": "^3.2.0",
|
||||||
"karma-coverage-istanbul-reporter": "~3.0.2",
|
"karma-coverage-istanbul-reporter": "^3.0.3",
|
||||||
"karma-jasmine": "~5.1.0",
|
"karma-jasmine": "^5.1.0",
|
||||||
"karma-jasmine-html-reporter": "^2.0.0",
|
"karma-jasmine-html-reporter": "^2.0.0",
|
||||||
"prettier": "^2.8.7",
|
"prettier": "^2.8.7",
|
||||||
"prettier-plugin-organize-imports": "^3.2.2",
|
"prettier-plugin-organize-imports": "^3.2.2",
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
import { Injectable } from '@angular/core';
|
import { Injectable } from '@angular/core';
|
||||||
import { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot } from '@angular/router';
|
import { ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';
|
||||||
import { AuthConfig } from 'angular-oauth2-oidc';
|
import { AuthConfig } from 'angular-oauth2-oidc';
|
||||||
import { Observable } from 'rxjs';
|
import { Observable } from 'rxjs';
|
||||||
|
|
||||||
@@ -8,7 +8,7 @@ import { AuthenticationService } from '../services/authentication.service';
|
|||||||
@Injectable({
|
@Injectable({
|
||||||
providedIn: 'root',
|
providedIn: 'root',
|
||||||
})
|
})
|
||||||
export class AuthGuard implements CanActivate {
|
export class AuthGuard {
|
||||||
constructor(private auth: AuthenticationService) {}
|
constructor(private auth: AuthenticationService) {}
|
||||||
|
|
||||||
public canActivate(
|
public canActivate(
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
import { Injectable } from '@angular/core';
|
import { Injectable } from '@angular/core';
|
||||||
import { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot } from '@angular/router';
|
import { ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';
|
||||||
import { Observable } from 'rxjs';
|
import { Observable } from 'rxjs';
|
||||||
|
|
||||||
import { GrpcAuthService } from '../services/grpc-auth.service';
|
import { GrpcAuthService } from '../services/grpc-auth.service';
|
||||||
@@ -7,7 +7,7 @@ import { GrpcAuthService } from '../services/grpc-auth.service';
|
|||||||
@Injectable({
|
@Injectable({
|
||||||
providedIn: 'root',
|
providedIn: 'root',
|
||||||
})
|
})
|
||||||
export class RoleGuard implements CanActivate {
|
export class RoleGuard {
|
||||||
constructor(private authService: GrpcAuthService) {}
|
constructor(private authService: GrpcAuthService) {}
|
||||||
|
|
||||||
public canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> {
|
public canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> {
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
import { Injectable } from '@angular/core';
|
import { Injectable } from '@angular/core';
|
||||||
import { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';
|
import { ActivatedRouteSnapshot, Router, RouterStateSnapshot } from '@angular/router';
|
||||||
import { Observable } from 'rxjs';
|
import { Observable } from 'rxjs';
|
||||||
import { map, tap } from 'rxjs/operators';
|
import { map, tap } from 'rxjs/operators';
|
||||||
|
|
||||||
@@ -8,7 +8,7 @@ import { GrpcAuthService } from '../services/grpc-auth.service';
|
|||||||
@Injectable({
|
@Injectable({
|
||||||
providedIn: 'root',
|
providedIn: 'root',
|
||||||
})
|
})
|
||||||
export class UserGuard implements CanActivate {
|
export class UserGuard {
|
||||||
constructor(private authService: GrpcAuthService, private router: Router) {}
|
constructor(private authService: GrpcAuthService, private router: Router) {}
|
||||||
|
|
||||||
public canActivate(
|
public canActivate(
|
||||||
|
@@ -228,7 +228,6 @@
|
|||||||
(detach)="showAccount = false"
|
(detach)="showAccount = false"
|
||||||
>
|
>
|
||||||
<cnsl-accounts-card
|
<cnsl-accounts-card
|
||||||
@accounts
|
|
||||||
class="a_card"
|
class="a_card"
|
||||||
*ngIf="showAccount"
|
*ngIf="showAccount"
|
||||||
(closedCard)="showAccount = false"
|
(closedCard)="showAccount = false"
|
||||||
|
@@ -5,13 +5,13 @@ import { MatIconModule } from '@angular/material/icon';
|
|||||||
import { MatLegacyButtonModule as MatButtonModule } from '@angular/material/legacy-button';
|
import { MatLegacyButtonModule as MatButtonModule } from '@angular/material/legacy-button';
|
||||||
import { MatLegacyDialogModule as MatDialogModule } from '@angular/material/legacy-dialog';
|
import { MatLegacyDialogModule as MatDialogModule } from '@angular/material/legacy-dialog';
|
||||||
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
||||||
import { MatLegacyTableModule as MatTableModule } from '@angular/material/legacy-table';
|
|
||||||
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
import { LocalizedDatePipeModule } from 'src/app/pipes/localized-date-pipe/localized-date-pipe.module';
|
import { LocalizedDatePipeModule } from 'src/app/pipes/localized-date-pipe/localized-date-pipe.module';
|
||||||
import { TimestampToDatePipeModule } from 'src/app/pipes/timestamp-to-date-pipe/timestamp-to-date-pipe.module';
|
import { TimestampToDatePipeModule } from 'src/app/pipes/timestamp-to-date-pipe/timestamp-to-date-pipe.module';
|
||||||
import { CardModule } from '../card/card.module';
|
import { CardModule } from '../card/card.module';
|
||||||
|
|
||||||
|
import { MatLegacyTableModule } from '@angular/material/legacy-table';
|
||||||
import { InputModule } from '../input/input.module';
|
import { InputModule } from '../input/input.module';
|
||||||
import { RefreshTableModule } from '../refresh-table/refresh-table.module';
|
import { RefreshTableModule } from '../refresh-table/refresh-table.module';
|
||||||
import { MetadataDialogComponent } from './metadata-dialog/metadata-dialog.component';
|
import { MetadataDialogComponent } from './metadata-dialog/metadata-dialog.component';
|
||||||
@@ -33,7 +33,7 @@ import { MetadataComponent } from './metadata/metadata.component';
|
|||||||
LocalizedDatePipeModule,
|
LocalizedDatePipeModule,
|
||||||
TimestampToDatePipeModule,
|
TimestampToDatePipeModule,
|
||||||
RefreshTableModule,
|
RefreshTableModule,
|
||||||
MatTableModule,
|
MatLegacyTableModule,
|
||||||
],
|
],
|
||||||
exports: [MetadataComponent, MetadataDialogComponent],
|
exports: [MetadataComponent, MetadataDialogComponent],
|
||||||
})
|
})
|
||||||
|
@@ -6,7 +6,6 @@ import { MatLegacyButtonModule as MatButtonModule } from '@angular/material/lega
|
|||||||
import { MatLegacyDialogModule as MatDialogModule } from '@angular/material/legacy-dialog';
|
import { MatLegacyDialogModule as MatDialogModule } from '@angular/material/legacy-dialog';
|
||||||
import { MatLegacyMenuModule as MatMenuModule } from '@angular/material/legacy-menu';
|
import { MatLegacyMenuModule as MatMenuModule } from '@angular/material/legacy-menu';
|
||||||
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
||||||
import { MatLegacyTabsModule as MatTabsModule } from '@angular/material/legacy-tabs';
|
|
||||||
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
import { CopyToClipboardModule } from 'src/app/directives/copy-to-clipboard/copy-to-clipboard.module';
|
import { CopyToClipboardModule } from 'src/app/directives/copy-to-clipboard/copy-to-clipboard.module';
|
||||||
@@ -47,7 +46,6 @@ import { OrgRoutingModule } from './org-routing.module';
|
|||||||
MatIconModule,
|
MatIconModule,
|
||||||
ReactiveFormsModule,
|
ReactiveFormsModule,
|
||||||
MetaLayoutModule,
|
MetaLayoutModule,
|
||||||
MatTabsModule,
|
|
||||||
MatTooltipModule,
|
MatTooltipModule,
|
||||||
WarnDialogModule,
|
WarnDialogModule,
|
||||||
MemberCreateDialogModule,
|
MemberCreateDialogModule,
|
||||||
|
@@ -9,7 +9,6 @@ import { MatLegacyProgressBarModule as MatProgressBarModule } from '@angular/mat
|
|||||||
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
||||||
import { MatLegacySelectModule as MatSelectModule } from '@angular/material/legacy-select';
|
import { MatLegacySelectModule as MatSelectModule } from '@angular/material/legacy-select';
|
||||||
import { MatLegacyTableModule as MatTableModule } from '@angular/material/legacy-table';
|
import { MatLegacyTableModule as MatTableModule } from '@angular/material/legacy-table';
|
||||||
import { MatLegacyTabsModule as MatTabsModule } from '@angular/material/legacy-tabs';
|
|
||||||
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
||||||
import { MatSortModule } from '@angular/material/sort';
|
import { MatSortModule } from '@angular/material/sort';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
@@ -51,7 +50,6 @@ import { GrantedProjectsRoutingModule } from './granted-projects-routing.module'
|
|||||||
MatIconModule,
|
MatIconModule,
|
||||||
MatSelectModule,
|
MatSelectModule,
|
||||||
MatButtonModule,
|
MatButtonModule,
|
||||||
MatTabsModule,
|
|
||||||
MatProgressSpinnerModule,
|
MatProgressSpinnerModule,
|
||||||
MetaLayoutModule,
|
MetaLayoutModule,
|
||||||
MatProgressBarModule,
|
MatProgressBarModule,
|
||||||
|
@@ -9,7 +9,6 @@ import { MatLegacyMenuModule as MatMenuModule } from '@angular/material/legacy-m
|
|||||||
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
||||||
import { MatLegacySelectModule as MatSelectModule } from '@angular/material/legacy-select';
|
import { MatLegacySelectModule as MatSelectModule } from '@angular/material/legacy-select';
|
||||||
import { MatLegacyTableModule as MatTableModule } from '@angular/material/legacy-table';
|
import { MatLegacyTableModule as MatTableModule } from '@angular/material/legacy-table';
|
||||||
import { MatLegacyTabsModule as MatTabsModule } from '@angular/material/legacy-tabs';
|
|
||||||
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
import { HasRoleModule } from 'src/app/directives/has-role/has-role.module';
|
import { HasRoleModule } from 'src/app/directives/has-role/has-role.module';
|
||||||
@@ -53,7 +52,6 @@ import { OwnedProjectDetailComponent } from './owned-project-detail.component';
|
|||||||
MatIconModule,
|
MatIconModule,
|
||||||
InfoRowModule,
|
InfoRowModule,
|
||||||
ContributorsModule,
|
ContributorsModule,
|
||||||
MatTabsModule,
|
|
||||||
WarnDialogModule,
|
WarnDialogModule,
|
||||||
MatTooltipModule,
|
MatTooltipModule,
|
||||||
ProjectRolesTableModule,
|
ProjectRolesTableModule,
|
||||||
|
@@ -6,7 +6,7 @@ import { MatIconModule } from '@angular/material/icon';
|
|||||||
import { MatLegacyButtonModule as MatButtonModule } from '@angular/material/legacy-button';
|
import { MatLegacyButtonModule as MatButtonModule } from '@angular/material/legacy-button';
|
||||||
import { MatLegacyCheckboxModule as MatCheckboxModule } from '@angular/material/legacy-checkbox';
|
import { MatLegacyCheckboxModule as MatCheckboxModule } from '@angular/material/legacy-checkbox';
|
||||||
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
||||||
import { MatLegacyTableModule as MatTableModule } from '@angular/material/legacy-table';
|
import { MatLegacyTableModule } from '@angular/material/legacy-table';
|
||||||
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
||||||
import { MatSortModule } from '@angular/material/sort';
|
import { MatSortModule } from '@angular/material/sort';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
@@ -36,7 +36,7 @@ import { ProjectsComponent } from './projects.component';
|
|||||||
TranslateModule,
|
TranslateModule,
|
||||||
FormsModule,
|
FormsModule,
|
||||||
HasRoleModule,
|
HasRoleModule,
|
||||||
MatTableModule,
|
MatLegacyTableModule,
|
||||||
PaginatorModule,
|
PaginatorModule,
|
||||||
InputModule,
|
InputModule,
|
||||||
MatIconModule,
|
MatIconModule,
|
||||||
|
@@ -8,7 +8,6 @@ import { MatLegacyDialogModule as MatDialogModule } from '@angular/material/lega
|
|||||||
import { MatLegacyMenuModule as MatMenuModule } from '@angular/material/legacy-menu';
|
import { MatLegacyMenuModule as MatMenuModule } from '@angular/material/legacy-menu';
|
||||||
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
import { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';
|
||||||
import { MatLegacyTableModule as MatTableModule } from '@angular/material/legacy-table';
|
import { MatLegacyTableModule as MatTableModule } from '@angular/material/legacy-table';
|
||||||
import { MatLegacyTabsModule as MatTabsModule } from '@angular/material/legacy-tabs';
|
|
||||||
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
|
||||||
import { RouterModule } from '@angular/router';
|
import { RouterModule } from '@angular/router';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
@@ -87,7 +86,6 @@ import { UserMfaComponent } from './user-detail/user-mfa/user-mfa.component';
|
|||||||
ChangesModule,
|
ChangesModule,
|
||||||
CommonModule,
|
CommonModule,
|
||||||
SidenavModule,
|
SidenavModule,
|
||||||
MatTabsModule,
|
|
||||||
FormsModule,
|
FormsModule,
|
||||||
ReactiveFormsModule,
|
ReactiveFormsModule,
|
||||||
MembershipsTableModule,
|
MembershipsTableModule,
|
||||||
|
Reference in New Issue
Block a user