diff --git a/console/src/app/components/copy-row/copy-row.component.html b/console/src/app/components/copy-row/copy-row.component.html new file mode 100644 index 000000000..e8a2e34f1 --- /dev/null +++ b/console/src/app/components/copy-row/copy-row.component.html @@ -0,0 +1,16 @@ +
{{ !provider ? ('IDP.CREATE.APPLE.DESCRIPTION' | translate) : ('IDP.DETAIL.DESCRIPTION' | translate) }}
@@ -131,8 +151,9 @@ [disabled]="form.invalid || form.disabled" type="submit" > - {{ 'ACTIONS.SAVE' | translate }} - {{ 'ACTIONS.CREATE' | translate }} + {{ + (!!idp.exists ? 'ACTIONS.SAVE' : 'ACTIONS.CREATE') | translate + }} diff --git a/console/src/app/modules/providers/provider-apple/provider-apple.component.ts b/console/src/app/modules/providers/provider-apple/provider-apple.component.ts index e3a040383..98c568b6a 100644 --- a/console/src/app/modules/providers/provider-apple/provider-apple.component.ts +++ b/console/src/app/modules/providers/provider-apple/provider-apple.component.ts @@ -4,7 +4,7 @@ import { Component, Injector, Type } from '@angular/core'; import { AbstractControl, FormControl, FormGroup } from '@angular/forms'; import { MatChipInputEvent } from '@angular/material/chips'; import { ActivatedRoute } from '@angular/router'; -import { take } from 'rxjs'; +import { BehaviorSubject, Observable, take } from 'rxjs'; import { AddAppleProviderRequest as AdminAddAppleProviderRequest, GetProviderByIDRequest as AdminGetProviderByIDRequest, @@ -24,6 +24,7 @@ import { ToastService } from 'src/app/services/toast.service'; import { requiredValidator } from '../../form-field/validators/validators'; import { PolicyComponentServiceType } from '../../policies/policy-component-types.enum'; +import { ProviderNextService } from '../provider-next/provider-next.service'; const MAX_ALLOWED_SIZE = 5 * 1024; @@ -34,8 +35,11 @@ const MAX_ALLOWED_SIZE = 5 * 1024; export class ProviderAppleComponent { public showOptional: boolean = false; public options: Options = new Options().setIsCreationAllowed(true).setIsLinkingAllowed(true); + // DEPRECATED: use id$ instead public id: string | null = ''; + // DEPRECATED: assert service$ instead public serviceType: PolicyComponentServiceType = PolicyComponentServiceType.MGMT; + // DEPRECATED: use service$ instead private service!: ManagementService | AdminService; public readonly separatorKeysCodes: number[] = [ENTER, COMMA, SPACE]; @@ -47,6 +51,25 @@ export class ProviderAppleComponent { public provider?: Provider.AsObject; public updatePrivateKey: boolean = false; + public justCreated$: BehaviorSubject{{ !provider ? ('IDP.CREATE.AZUREAD.DESCRIPTION' | translate) : ('IDP.DETAIL.DESCRIPTION' | translate) }}
@@ -104,8 +124,9 @@ [disabled]="form.invalid || form.disabled" type="submit" > - {{ 'ACTIONS.SAVE' | translate }} - {{ 'ACTIONS.CREATE' | translate }} + {{ + (!!idp.exists ? 'ACTIONS.SAVE' : 'ACTIONS.CREATE') | translate + }} diff --git a/console/src/app/modules/providers/provider-azure-ad/provider-azure-ad.component.ts b/console/src/app/modules/providers/provider-azure-ad/provider-azure-ad.component.ts index 81fa779b1..cec3a15f8 100644 --- a/console/src/app/modules/providers/provider-azure-ad/provider-azure-ad.component.ts +++ b/console/src/app/modules/providers/provider-azure-ad/provider-azure-ad.component.ts @@ -4,13 +4,13 @@ import { Component, Injector, Type } from '@angular/core'; import { AbstractControl, FormControl, FormGroup } from '@angular/forms'; import { MatChipInputEvent } from '@angular/material/chips'; import { ActivatedRoute } from '@angular/router'; -import { take } from 'rxjs'; +import { BehaviorSubject, take } from 'rxjs'; import { AddAzureADProviderRequest as AdminAddAzureADProviderRequest, GetProviderByIDRequest as AdminGetProviderByIDRequest, UpdateAzureADProviderRequest as AdminUpdateAzureADProviderRequest, } from 'src/app/proto/generated/zitadel/admin_pb'; -import { AzureADTenant, AzureADTenantType, Options, Provider } from 'src/app/proto/generated/zitadel/idp_pb'; +import { AzureADTenant, AzureADTenantType, IDPOwnerType, Options, Provider } from 'src/app/proto/generated/zitadel/idp_pb'; import { AddAzureADProviderRequest as MgmtAddAzureADProviderRequest, GetProviderByIDRequest as MgmtGetProviderByIDRequest, @@ -24,6 +24,7 @@ import { ToastService } from 'src/app/services/toast.service'; import { requiredValidator } from '../../form-field/validators/validators'; import { PolicyComponentServiceType } from '../../policies/policy-component-types.enum'; +import { ProviderNextService } from '../provider-next/provider-next.service'; @Component({ selector: 'cnsl-provider-azure-ad', @@ -32,8 +33,11 @@ import { PolicyComponentServiceType } from '../../policies/policy-component-type export class ProviderAzureADComponent { public showOptional: boolean = false; public options: Options = new Options().setIsCreationAllowed(true).setIsLinkingAllowed(true); + // DEPRECATED: use id$ instead public id: string | null = ''; + // DEPRECATED: assert service$ instead public serviceType: PolicyComponentServiceType = PolicyComponentServiceType.MGMT; + // DEPRECATED: use service$ instead private service!: ManagementService | AdminService; public readonly separatorKeysCodes: number[] = [ENTER, COMMA, SPACE]; @@ -53,6 +57,25 @@ export class ProviderAzureADComponent { AzureADTenantType.AZURE_AD_TENANT_TYPE_CONSUMERS, ]; + public justCreated$: BehaviorSubject{{ 'IDP.CREATE.GITHUBES.DESCRIPTION' | translate }}
diff --git a/console/src/app/modules/providers/provider-github-es/provider-github-es.component.ts b/console/src/app/modules/providers/provider-github-es/provider-github-es.component.ts index 8732f40b2..30d10fa17 100644 --- a/console/src/app/modules/providers/provider-github-es/provider-github-es.component.ts +++ b/console/src/app/modules/providers/provider-github-es/provider-github-es.component.ts @@ -4,7 +4,7 @@ import { Component, Injector, Type } from '@angular/core'; import { AbstractControl, UntypedFormControl, UntypedFormGroup } from '@angular/forms'; import { MatChipInputEvent } from '@angular/material/chips'; import { ActivatedRoute } from '@angular/router'; -import { take } from 'rxjs'; +import { BehaviorSubject, take } from 'rxjs'; import { AddGitHubEnterpriseServerProviderRequest as AdminAddGitHubEnterpriseServerProviderRequest, GetProviderByIDRequest as AdminGetProviderByIDRequest, @@ -24,6 +24,7 @@ import { ToastService } from 'src/app/services/toast.service'; import { requiredValidator } from '../../form-field/validators/validators'; import { PolicyComponentServiceType } from '../../policies/policy-component-types.enum'; +import { ProviderNextService } from '../provider-next/provider-next.service'; @Component({ selector: 'cnsl-provider-github-es', @@ -33,9 +34,12 @@ export class ProviderGithubESComponent { public showOptional: boolean = false; public options: Options = new Options().setIsCreationAllowed(true).setIsLinkingAllowed(true); + // DEPRECATED: use id$ instead public id: string | null = ''; public updateClientSecret: boolean = false; + // DEPRECATED: assert service$ instead public serviceType: PolicyComponentServiceType = PolicyComponentServiceType.MGMT; + // DEPRECATED: use service$ instead private service!: ManagementService | AdminService; public readonly separatorKeysCodes: number[] = [ENTER, COMMA, SPACE]; public form!: UntypedFormGroup; @@ -44,6 +48,25 @@ export class ProviderGithubESComponent { public provider?: Provider.AsObject; + public justCreated$: BehaviorSubject{{ !provider ? ('IDP.CREATE.GITHUB.DESCRIPTION' | translate) : ('IDP.DETAIL.DESCRIPTION' | translate) }}
@@ -90,8 +110,9 @@ [disabled]="form.invalid || form.disabled" type="submit" > - {{ 'ACTIONS.SAVE' | translate }} - {{ 'ACTIONS.CREATE' | translate }} + {{ + (!!idp.exists ? 'ACTIONS.SAVE' : 'ACTIONS.CREATE') | translate + }} diff --git a/console/src/app/modules/providers/provider-github/provider-github.component.ts b/console/src/app/modules/providers/provider-github/provider-github.component.ts index da29af927..a9c7bc5c5 100644 --- a/console/src/app/modules/providers/provider-github/provider-github.component.ts +++ b/console/src/app/modules/providers/provider-github/provider-github.component.ts @@ -4,7 +4,7 @@ import { Component, Injector, Type } from '@angular/core'; import { AbstractControl, FormControl, FormGroup } from '@angular/forms'; import { MatChipInputEvent } from '@angular/material/chips'; import { ActivatedRoute } from '@angular/router'; -import { take } from 'rxjs'; +import { BehaviorSubject, take } from 'rxjs'; import { AddGitHubProviderRequest as AdminAddGithubProviderRequest, GetProviderByIDRequest as AdminGetProviderByIDRequest, @@ -24,6 +24,7 @@ import { ToastService } from 'src/app/services/toast.service'; import { requiredValidator } from '../../form-field/validators/validators'; import { PolicyComponentServiceType } from '../../policies/policy-component-types.enum'; +import { ProviderNextService } from '../provider-next/provider-next.service'; @Component({ selector: 'cnsl-provider-github', @@ -32,8 +33,11 @@ import { PolicyComponentServiceType } from '../../policies/policy-component-type export class ProviderGithubComponent { public showOptional: boolean = false; public options: Options = new Options().setIsCreationAllowed(true).setIsLinkingAllowed(true); + // DEPRECATED: use id$ instead public id: string | null = ''; + // DEPRECATED: assert service$ instead public serviceType: PolicyComponentServiceType = PolicyComponentServiceType.MGMT; + // DEPRECATED: use service$ instead private service!: ManagementService | AdminService; public readonly separatorKeysCodes: number[] = [ENTER, COMMA, SPACE]; @@ -45,6 +49,25 @@ export class ProviderGithubComponent { public provider?: Provider.AsObject; public updateClientSecret: boolean = false; + public justCreated$: BehaviorSubject{{ !provider ? ('IDP.CREATE.GITLABSELFHOSTED.DESCRIPTION' | translate) : ('IDP.DETAIL.DESCRIPTION' | translate) }}
@@ -93,8 +113,9 @@ [disabled]="form.invalid || form.disabled" type="submit" > - {{ 'ACTIONS.SAVE' | translate }} - {{ 'ACTIONS.CREATE' | translate }} + {{ + (!!idp.exists ? 'ACTIONS.SAVE' : 'ACTIONS.CREATE') | translate + }} diff --git a/console/src/app/modules/providers/provider-gitlab-self-hosted/provider-gitlab-self-hosted.component.ts b/console/src/app/modules/providers/provider-gitlab-self-hosted/provider-gitlab-self-hosted.component.ts index 85fb91565..1adf214a2 100644 --- a/console/src/app/modules/providers/provider-gitlab-self-hosted/provider-gitlab-self-hosted.component.ts +++ b/console/src/app/modules/providers/provider-gitlab-self-hosted/provider-gitlab-self-hosted.component.ts @@ -4,7 +4,7 @@ import { Component, Injector, Type } from '@angular/core'; import { AbstractControl, FormControl, FormGroup } from '@angular/forms'; import { MatChipInputEvent } from '@angular/material/chips'; import { ActivatedRoute } from '@angular/router'; -import { take } from 'rxjs'; +import { BehaviorSubject, take } from 'rxjs'; import { AddGitLabSelfHostedProviderRequest as AdminAddGitLabSelfHostedProviderRequest, GetProviderByIDRequest as AdminGetProviderByIDRequest, @@ -24,6 +24,7 @@ import { ToastService } from 'src/app/services/toast.service'; import { requiredValidator } from '../../form-field/validators/validators'; import { PolicyComponentServiceType } from '../../policies/policy-component-types.enum'; +import { ProviderNextService } from '../provider-next/provider-next.service'; @Component({ selector: 'cnsl-provider-gitlab-self-hosted', @@ -32,8 +33,11 @@ import { PolicyComponentServiceType } from '../../policies/policy-component-type export class ProviderGitlabSelfHostedComponent { public showOptional: boolean = false; public options: Options = new Options().setIsCreationAllowed(true).setIsLinkingAllowed(true); + // DEPRECATED: use id$ instead public id: string | null = ''; + // DEPRECATED: assert service$ instead public serviceType: PolicyComponentServiceType = PolicyComponentServiceType.MGMT; + // DEPRECATED: use service$ instead private service!: ManagementService | AdminService; public readonly separatorKeysCodes: number[] = [ENTER, COMMA, SPACE]; @@ -45,6 +49,25 @@ export class ProviderGitlabSelfHostedComponent { public provider?: Provider.AsObject; public updateClientSecret: boolean = false; + public justCreated$: BehaviorSubject{{ !provider ? ('IDP.CREATE.GITLAB.DESCRIPTION' | translate) : ('IDP.DETAIL.DESCRIPTION' | translate) }}
@@ -89,8 +109,9 @@ [disabled]="form.invalid || form.disabled" type="submit" > - {{ 'ACTIONS.SAVE' | translate }} - {{ 'ACTIONS.CREATE' | translate }} + {{ + (!!idp.exists ? 'ACTIONS.SAVE' : 'ACTIONS.CREATE') | translate + }} diff --git a/console/src/app/modules/providers/provider-gitlab/provider-gitlab.component.ts b/console/src/app/modules/providers/provider-gitlab/provider-gitlab.component.ts index 5341dfeb5..0e7b695ed 100644 --- a/console/src/app/modules/providers/provider-gitlab/provider-gitlab.component.ts +++ b/console/src/app/modules/providers/provider-gitlab/provider-gitlab.component.ts @@ -4,7 +4,7 @@ import { Component, Injector, Type } from '@angular/core'; import { AbstractControl, FormControl, FormGroup } from '@angular/forms'; import { MatChipInputEvent } from '@angular/material/chips'; import { ActivatedRoute } from '@angular/router'; -import { take } from 'rxjs'; +import { BehaviorSubject, take } from 'rxjs'; import { AddGitLabProviderRequest as AdminAddGitLabProviderRequest, GetProviderByIDRequest as AdminGetProviderByIDRequest, @@ -24,6 +24,7 @@ import { ToastService } from 'src/app/services/toast.service'; import { requiredValidator } from '../../form-field/validators/validators'; import { PolicyComponentServiceType } from '../../policies/policy-component-types.enum'; +import { ProviderNextService } from '../provider-next/provider-next.service'; @Component({ selector: 'cnsl-provider-gitlab', @@ -32,8 +33,11 @@ import { PolicyComponentServiceType } from '../../policies/policy-component-type export class ProviderGitlabComponent { public showOptional: boolean = false; public options: Options = new Options().setIsCreationAllowed(true).setIsLinkingAllowed(true); + // DEPRECATED: use id$ instead public id: string | null = ''; + // DEPRECATED: assert service$ instead public serviceType: PolicyComponentServiceType = PolicyComponentServiceType.MGMT; + // DEPRECATED: use service$ instead private service!: ManagementService | AdminService; public readonly separatorKeysCodes: number[] = [ENTER, COMMA, SPACE]; @@ -45,6 +49,25 @@ export class ProviderGitlabComponent { public provider?: Provider.AsObject; public updateClientSecret: boolean = false; + public justCreated$: BehaviorSubject
{{ !provider ? ('IDP.CREATE.GOOGLE.DESCRIPTION' | translate) : ('IDP.DETAIL.DESCRIPTION' | translate) }}
@@ -88,8 +108,9 @@ [disabled]="form.invalid || form.disabled" type="submit" > - {{ 'ACTIONS.SAVE' | translate }} - {{ 'ACTIONS.CREATE' | translate }} + {{ + (!!idp.exists ? 'ACTIONS.SAVE' : 'ACTIONS.CREATE') | translate + }} diff --git a/console/src/app/modules/providers/provider-google/provider-google.component.ts b/console/src/app/modules/providers/provider-google/provider-google.component.ts index 840d5343d..66a812053 100644 --- a/console/src/app/modules/providers/provider-google/provider-google.component.ts +++ b/console/src/app/modules/providers/provider-google/provider-google.component.ts @@ -4,7 +4,7 @@ import { Component, Injector, Type } from '@angular/core'; import { AbstractControl, FormControl, FormGroup } from '@angular/forms'; import { MatChipInputEvent } from '@angular/material/chips'; import { ActivatedRoute } from '@angular/router'; -import { take } from 'rxjs'; +import { BehaviorSubject, take } from 'rxjs'; import { AddGoogleProviderRequest as AdminAddGoogleProviderRequest, GetProviderByIDRequest as AdminGetProviderByIDRequest, @@ -24,6 +24,7 @@ import { ToastService } from 'src/app/services/toast.service'; import { requiredValidator } from '../../form-field/validators/validators'; import { PolicyComponentServiceType } from '../../policies/policy-component-types.enum'; +import { ProviderNextService } from '../provider-next/provider-next.service'; @Component({ selector: 'cnsl-provider-google', @@ -32,8 +33,11 @@ import { PolicyComponentServiceType } from '../../policies/policy-component-type export class ProviderGoogleComponent { public showOptional: boolean = false; public options: Options = new Options().setIsCreationAllowed(true).setIsLinkingAllowed(true); + // DEPRECATED: use id$ instead public id: string | null = ''; + // DEPRECATED: assert service$ instead public serviceType: PolicyComponentServiceType = PolicyComponentServiceType.MGMT; + // DEPRECATED: use service$ instead private service!: ManagementService | AdminService; public readonly separatorKeysCodes: number[] = [ENTER, COMMA, SPACE]; @@ -45,6 +49,25 @@ export class ProviderGoogleComponent { public provider?: Provider.AsObject; public updateClientSecret: boolean = false; + public justCreated$: BehaviorSubject{{ 'IDP.CREATE.JWT.DESCRIPTION' | translate }}
diff --git a/console/src/app/modules/providers/provider-jwt/provider-jwt.component.ts b/console/src/app/modules/providers/provider-jwt/provider-jwt.component.ts index 8cd859145..4ae12d767 100644 --- a/console/src/app/modules/providers/provider-jwt/provider-jwt.component.ts +++ b/console/src/app/modules/providers/provider-jwt/provider-jwt.component.ts @@ -23,6 +23,8 @@ import { ToastService } from 'src/app/services/toast.service'; import { requiredValidator } from '../../form-field/validators/validators'; import { PolicyComponentServiceType } from '../../policies/policy-component-types.enum'; +import { BehaviorSubject } from 'rxjs'; +import { ProviderNextService } from '../provider-next/provider-next.service'; @Component({ selector: 'cnsl-provider-jwt', @@ -32,8 +34,11 @@ export class ProviderJWTComponent { public showOptional: boolean = false; public options: Options = new Options().setIsCreationAllowed(true).setIsLinkingAllowed(true); + // DEPRECATED: use id$ instead public id: string | null = ''; + // DEPRECATED: assert service$ instead public serviceType: PolicyComponentServiceType = PolicyComponentServiceType.MGMT; + // DEPRECATED: use service$ instead private service!: ManagementService | AdminService; public readonly separatorKeysCodes: number[] = [ENTER, COMMA, SPACE]; @@ -42,6 +47,24 @@ export class ProviderJWTComponent { public provider?: Provider.AsObject; + public justCreated$: BehaviorSubject{{ !provider ? ('IDP.CREATE.LDAP.DESCRIPTION' | translate) : ('IDP.DETAIL.DESCRIPTION' | translate) }}
@@ -118,8 +136,9 @@ [disabled]="!form.valid || !attributes.toObject().idAttribute || form.disabled" type="submit" > - {{ 'ACTIONS.SAVE' | translate }} - {{ 'ACTIONS.CREATE' | translate }} + {{ + (!!idp.exists ? 'ACTIONS.SAVE' : 'ACTIONS.CREATE') | translate + }} diff --git a/console/src/app/modules/providers/provider-ldap/provider-ldap.component.ts b/console/src/app/modules/providers/provider-ldap/provider-ldap.component.ts index ad2d57953..2a6e0e46e 100644 --- a/console/src/app/modules/providers/provider-ldap/provider-ldap.component.ts +++ b/console/src/app/modules/providers/provider-ldap/provider-ldap.component.ts @@ -3,7 +3,7 @@ import { Component, Injector, Type } from '@angular/core'; import { AbstractControl, FormControl, FormGroup } from '@angular/forms'; import { ActivatedRoute } from '@angular/router'; import { Duration } from 'google-protobuf/google/protobuf/duration_pb'; -import { take } from 'rxjs'; +import { BehaviorSubject, take } from 'rxjs'; import { AddLDAPProviderRequest as AdminAddLDAPProviderRequest, GetProviderByIDRequest as AdminGetProviderByIDRequest, @@ -23,6 +23,7 @@ import { ToastService } from 'src/app/services/toast.service'; import { minArrayLengthValidator, requiredValidator } from '../../form-field/validators/validators'; import { PolicyComponentServiceType } from '../../policies/policy-component-types.enum'; +import { ProviderNextService } from '../provider-next/provider-next.service'; @Component({ selector: 'cnsl-provider-ldap', @@ -33,8 +34,11 @@ export class ProviderLDAPComponent { public showOptional: boolean = false; public options: Options = new Options().setIsCreationAllowed(true).setIsLinkingAllowed(true); public attributes: LDAPAttributes = new LDAPAttributes(); + // DEPRECATED: use id$ instead public id: string | null = ''; + // DEPRECATED: assert service$ instead public serviceType: PolicyComponentServiceType = PolicyComponentServiceType.MGMT; + // DEPRECATED: use service$ instead private service!: ManagementService | AdminService; public form!: FormGroup; @@ -43,6 +47,20 @@ export class ProviderLDAPComponent { public provider?: Provider.AsObject; + public justCreated$: BehaviorSubject{{ 'DESCRIPTIONS.SETTINGS.IDPS.ACTIVATE.DESCRIPTION' | translate }}
+{{ configureDescription }}
+{{ 'DESCRIPTIONS.SETTINGS.IDPS.AUTOFILL.DESCRIPTION' | translate }}
+{{ 'IDP.CREATE.OAUTH.DESCRIPTION' | translate }}
{{ 'IDP.CREATE.OIDC.DESCRIPTION' | translate }}
diff --git a/console/src/app/modules/providers/provider-oidc/provider-oidc.component.ts b/console/src/app/modules/providers/provider-oidc/provider-oidc.component.ts index 037b2dd6b..7a791ab38 100644 --- a/console/src/app/modules/providers/provider-oidc/provider-oidc.component.ts +++ b/console/src/app/modules/providers/provider-oidc/provider-oidc.component.ts @@ -4,7 +4,7 @@ import { Component, Injector, Type } from '@angular/core'; import { AbstractControl, UntypedFormControl, UntypedFormGroup } from '@angular/forms'; import { MatChipInputEvent } from '@angular/material/chips'; import { ActivatedRoute } from '@angular/router'; -import { take } from 'rxjs'; +import { BehaviorSubject, take } from 'rxjs'; import { AddGenericOIDCProviderRequest as AdminAddGenericOIDCProviderRequest, GetProviderByIDRequest as AdminGetProviderByIDRequest, @@ -23,6 +23,7 @@ import { ToastService } from 'src/app/services/toast.service'; import { requiredValidator } from '../../form-field/validators/validators'; import { PolicyComponentServiceType } from '../../policies/policy-component-types.enum'; +import { ProviderNextService } from '../provider-next/provider-next.service'; @Component({ selector: 'cnsl-provider-oidc', @@ -33,9 +34,12 @@ export class ProviderOIDCComponent { public showOptional: boolean = false; public options: Options = new Options().setIsCreationAllowed(true).setIsLinkingAllowed(true); + // DEPRECATED: use id$ instead public id: string | null = ''; public updateClientSecret: boolean = false; + // DEPRECATED: assert service$ instead public serviceType: PolicyComponentServiceType = PolicyComponentServiceType.MGMT; + // DEPRECATED: use service$ instead private service!: ManagementService | AdminService; public readonly separatorKeysCodes: number[] = [ENTER, COMMA, SPACE]; public form!: UntypedFormGroup; @@ -44,12 +48,32 @@ export class ProviderOIDCComponent { public provider?: Provider.AsObject; + public justCreated$: BehaviorSubject{{ !provider ? ('IDP.CREATE.SAML.DESCRIPTION' | translate) : ('IDP.DETAIL.DESCRIPTION' | translate) }}
@@ -55,7 +75,6 @@ (optionsChanged)="options = $event" > -{{ environmentV.key }}
-{{ wellKnownV.key }}
-{{ 'APP.SAML.CERTIFICATE' | translate }}
-Single Sign On (SSO)
-Single Logoout (SLO)
-+ {{ 'DESCRIPTIONS.PROJECTS.DESCRIPTION' | translate }} +