web: fix enums
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>
This commit is contained in:
		@ -1,4 +1,4 @@
 | 
			
		||||
import { CoreApi, Application, ProvidersApi, Provider, ApplicationPolicyEngineModeEnum } from "authentik-api";
 | 
			
		||||
import { CoreApi, Application, ProvidersApi, Provider, PolicyEngineModeEnum } from "authentik-api";
 | 
			
		||||
import { t } from "@lingui/macro";
 | 
			
		||||
import { CSSResult, customElement, property } from "lit-element";
 | 
			
		||||
import { html, TemplateResult } from "lit-html";
 | 
			
		||||
@ -43,17 +43,17 @@ export class ApplicationForm extends ModelForm<Application, string> {
 | 
			
		||||
        if (this.instance) {
 | 
			
		||||
            writeOp = new CoreApi(DEFAULT_CONFIG).coreApplicationsUpdate({
 | 
			
		||||
                slug: this.instance.slug,
 | 
			
		||||
                data: data
 | 
			
		||||
                applicationRequest: data
 | 
			
		||||
            });
 | 
			
		||||
        } else {
 | 
			
		||||
            writeOp = new CoreApi(DEFAULT_CONFIG).coreApplicationsCreate({
 | 
			
		||||
                data: data
 | 
			
		||||
                applicationRequest: data
 | 
			
		||||
            });
 | 
			
		||||
        }
 | 
			
		||||
        const icon = this.getFormFile();
 | 
			
		||||
        if (icon) {
 | 
			
		||||
            return writeOp.then(app => {
 | 
			
		||||
                return new CoreApi(DEFAULT_CONFIG).coreApplicationsSetIcon({
 | 
			
		||||
                return new CoreApi(DEFAULT_CONFIG).coreApplicationsSetIconCreate({
 | 
			
		||||
                    slug: app.slug,
 | 
			
		||||
                    file: icon
 | 
			
		||||
                });
 | 
			
		||||
@ -145,10 +145,10 @@ export class ApplicationForm extends ModelForm<Application, string> {
 | 
			
		||||
                ?required=${true}
 | 
			
		||||
                name="policyEngineMode">
 | 
			
		||||
                <select class="pf-c-form-control">
 | 
			
		||||
                    <option value=${ApplicationPolicyEngineModeEnum.Any} ?selected=${this.instance?.policyEngineMode === ApplicationPolicyEngineModeEnum.Any}>
 | 
			
		||||
                    <option value=${PolicyEngineModeEnum.Any} ?selected=${this.instance?.policyEngineMode === PolicyEngineModeEnum.Any}>
 | 
			
		||||
                        ${t`ANY, any policy must match to grant access.`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                    <option value=${ApplicationPolicyEngineModeEnum.All} ?selected=${this.instance?.policyEngineMode === ApplicationPolicyEngineModeEnum.All}>
 | 
			
		||||
                    <option value=${PolicyEngineModeEnum.All} ?selected=${this.instance?.policyEngineMode === PolicyEngineModeEnum.All}>
 | 
			
		||||
                        ${t`ALL, all policies must match to grant access.`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                </select>
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import { CoreApi, EventsApi, NotificationRule, NotificationRuleSeverityEnum } from "authentik-api";
 | 
			
		||||
import { CoreApi, EventsApi, NotificationRule, SeverityEnum } from "authentik-api";
 | 
			
		||||
import { t } from "@lingui/macro";
 | 
			
		||||
import { customElement } from "lit-element";
 | 
			
		||||
import { html, TemplateResult } from "lit-html";
 | 
			
		||||
@ -40,13 +40,13 @@ export class RuleForm extends ModelForm<NotificationRule, string> {
 | 
			
		||||
 | 
			
		||||
    renderSeverity(): TemplateResult {
 | 
			
		||||
        return html`
 | 
			
		||||
            <option value=${NotificationRuleSeverityEnum.Alert} ?selected=${this.instance?.severity === NotificationRuleSeverityEnum.Alert}>
 | 
			
		||||
            <option value=${SeverityEnum.Alert} ?selected=${this.instance?.severity === SeverityEnum.Alert}>
 | 
			
		||||
                ${t`Alert`}
 | 
			
		||||
            </option>
 | 
			
		||||
            <option value=${NotificationRuleSeverityEnum.Warning} ?selected=${this.instance?.severity === NotificationRuleSeverityEnum.Warning}>
 | 
			
		||||
            <option value=${SeverityEnum.Warning} ?selected=${this.instance?.severity === SeverityEnum.Warning}>
 | 
			
		||||
                ${t`Warning`}
 | 
			
		||||
            </option>
 | 
			
		||||
            <option value=${NotificationRuleSeverityEnum.Notice} ?selected=${this.instance?.severity === NotificationRuleSeverityEnum.Notice}>
 | 
			
		||||
            <option value=${SeverityEnum.Notice} ?selected=${this.instance?.severity === SeverityEnum.Notice}>
 | 
			
		||||
                ${t`Notice`}
 | 
			
		||||
            </option>
 | 
			
		||||
        `;
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import { Flow, FlowDesignationEnum, FlowPolicyEngineModeEnum, FlowsApi } from "authentik-api";
 | 
			
		||||
import { Flow, FlowDesignationEnum, PolicyEngineMode, FlowsApi } from "authentik-api";
 | 
			
		||||
import { t } from "@lingui/macro";
 | 
			
		||||
import { customElement } from "lit-element";
 | 
			
		||||
import { html, TemplateResult } from "lit-html";
 | 
			
		||||
@ -101,10 +101,10 @@ export class FlowForm extends ModelForm<Flow, string> {
 | 
			
		||||
                ?required=${true}
 | 
			
		||||
                name="policyEngineMode">
 | 
			
		||||
                <select class="pf-c-form-control">
 | 
			
		||||
                    <option value=${FlowPolicyEngineModeEnum.Any} ?selected=${this.instance?.policyEngineMode === FlowPolicyEngineModeEnum.Any}>
 | 
			
		||||
                    <option value=${PolicyEngineMode.Any} ?selected=${this.instance?.policyEngineMode === PolicyEngineMode.Any}>
 | 
			
		||||
                        ${t`ANY, any policy must match to grant access.`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                    <option value=${FlowPolicyEngineModeEnum.All} ?selected=${this.instance?.policyEngineMode === FlowPolicyEngineModeEnum.All}>
 | 
			
		||||
                    <option value=${PolicyEngineMode.All} ?selected=${this.instance?.policyEngineMode === PolicyEngineMode.All}>
 | 
			
		||||
                        ${t`ALL, all policies must match to grant access.`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                </select>
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import { FlowsApi, FlowStageBinding, FlowStageBindingPolicyEngineModeEnum, Stage, StagesApi } from "authentik-api";
 | 
			
		||||
import { FlowsApi, FlowStageBinding, PolicyEngineMode, Stage, StagesApi } from "authentik-api";
 | 
			
		||||
import { t } from "@lingui/macro";
 | 
			
		||||
import { customElement, property } from "lit-element";
 | 
			
		||||
import { html, TemplateResult } from "lit-html";
 | 
			
		||||
@ -140,10 +140,10 @@ export class StageBindingForm extends ModelForm<FlowStageBinding, string> {
 | 
			
		||||
                ?required=${true}
 | 
			
		||||
                name="policyEngineMode">
 | 
			
		||||
                <select class="pf-c-form-control">
 | 
			
		||||
                    <option value=${FlowStageBindingPolicyEngineModeEnum.Any} ?selected=${this.instance?.policyEngineMode === FlowStageBindingPolicyEngineModeEnum.Any}>
 | 
			
		||||
                    <option value=${PolicyEngineMode.Any} ?selected=${this.instance?.policyEngineMode === PolicyEngineMode.Any}>
 | 
			
		||||
                        ${t`ANY, any policy must match to include this stage access.`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                    <option value=${FlowStageBindingPolicyEngineModeEnum.All} ?selected=${this.instance?.policyEngineMode === FlowStageBindingPolicyEngineModeEnum.All}>
 | 
			
		||||
                    <option value=${PolicyEngineMode.All} ?selected=${this.instance?.policyEngineMode === PolicyEngineMode.All}>
 | 
			
		||||
                        ${t`ALL, all policies must match to include this stage access.`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                </select>
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import { CryptoApi, FlowDesignationEnum, FlowsApi, OAuth2Provider, OAuth2ProviderClientTypeEnum, OAuth2ProviderIssuerModeEnum, OAuth2ProviderJwtAlgEnum, OAuth2ProviderSubModeEnum, PropertymappingsApi, ProvidersApi } from "authentik-api";
 | 
			
		||||
import { CryptoApi, FlowDesignationEnum, FlowsApi, OAuth2Provider, ClientTypeEnum, IssuerModeEnum, JwtAlgEnum, SubModeEnum, PropertymappingsApi, ProvidersApi } from "authentik-api";
 | 
			
		||||
import { t } from "@lingui/macro";
 | 
			
		||||
import { customElement, property } from "lit-element";
 | 
			
		||||
import { html, TemplateResult } from "lit-html";
 | 
			
		||||
@ -17,7 +17,7 @@ export class OAuth2ProviderFormPage extends ModelForm<OAuth2Provider, number> {
 | 
			
		||||
        return new ProvidersApi(DEFAULT_CONFIG).providersOauth2Retrieve({
 | 
			
		||||
            id: pk,
 | 
			
		||||
        }).then(provider => {
 | 
			
		||||
            this.showClientSecret = provider.clientType === OAuth2ProviderClientTypeEnum.Confidential;
 | 
			
		||||
            this.showClientSecret = provider.clientType === ClientTypeEnum.Confidential;
 | 
			
		||||
            return provider;
 | 
			
		||||
        });
 | 
			
		||||
    }
 | 
			
		||||
@ -82,16 +82,16 @@ export class OAuth2ProviderFormPage extends ModelForm<OAuth2Provider, number> {
 | 
			
		||||
                        name="clientType">
 | 
			
		||||
                        <select class="pf-c-form-control" @change=${(ev: Event) => {
 | 
			
		||||
                            const target = ev.target as HTMLSelectElement;
 | 
			
		||||
                            if (target.selectedOptions[0].value === OAuth2ProviderClientTypeEnum.Public) {
 | 
			
		||||
                            if (target.selectedOptions[0].value === ClientTypeEnum.Public) {
 | 
			
		||||
                                this.showClientSecret = false;
 | 
			
		||||
                            } else {
 | 
			
		||||
                                this.showClientSecret = true;
 | 
			
		||||
                            }
 | 
			
		||||
                        }}>
 | 
			
		||||
                            <option value=${OAuth2ProviderClientTypeEnum.Confidential} ?selected=${this.instance?.clientType === OAuth2ProviderClientTypeEnum.Confidential}>
 | 
			
		||||
                            <option value=${ClientTypeEnum.Confidential} ?selected=${this.instance?.clientType === ClientTypeEnum.Confidential}>
 | 
			
		||||
                                ${t`Confidential`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${OAuth2ProviderClientTypeEnum.Public} ?selected=${this.instance?.clientType === OAuth2ProviderClientTypeEnum.Public}>
 | 
			
		||||
                            <option value=${ClientTypeEnum.Public} ?selected=${this.instance?.clientType === ClientTypeEnum.Public}>
 | 
			
		||||
                                ${t`Public`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
@ -147,10 +147,10 @@ export class OAuth2ProviderFormPage extends ModelForm<OAuth2Provider, number> {
 | 
			
		||||
                        ?required=${true}
 | 
			
		||||
                        name="jwtAlg">
 | 
			
		||||
                        <select class="pf-c-form-control">
 | 
			
		||||
                            <option value=${OAuth2ProviderJwtAlgEnum.Rs256} ?selected=${this.instance?.jwtAlg === OAuth2ProviderJwtAlgEnum.Rs256}>
 | 
			
		||||
                            <option value=${JwtAlgEnum.Rs256} ?selected=${this.instance?.jwtAlg === JwtAlgEnum.Rs256}>
 | 
			
		||||
                                ${t`RS256 (Asymmetric Encryption)`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${OAuth2ProviderJwtAlgEnum.Hs256} ?selected=${this.instance?.jwtAlg === OAuth2ProviderJwtAlgEnum.Hs256}>
 | 
			
		||||
                            <option value=${JwtAlgEnum.Hs256} ?selected=${this.instance?.jwtAlg === JwtAlgEnum.Hs256}>
 | 
			
		||||
                                ${t`HS256 (Symmetric Encryption)`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
@ -204,16 +204,16 @@ export class OAuth2ProviderFormPage extends ModelForm<OAuth2Provider, number> {
 | 
			
		||||
                        ?required=${true}
 | 
			
		||||
                        name="subMode">
 | 
			
		||||
                        <select class="pf-c-form-control">
 | 
			
		||||
                            <option value="${OAuth2ProviderSubModeEnum.HashedUserId}" ?selected=${this.instance?.subMode === OAuth2ProviderSubModeEnum.HashedUserId}>
 | 
			
		||||
                            <option value="${SubModeEnum.HashedUserId}" ?selected=${this.instance?.subMode === SubModeEnum.HashedUserId}>
 | 
			
		||||
                                ${t`Based on the Hashed User ID`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value="${OAuth2ProviderSubModeEnum.UserUsername}" ?selected=${this.instance?.subMode === OAuth2ProviderSubModeEnum.UserUsername}>
 | 
			
		||||
                            <option value="${SubModeEnum.UserUsername}" ?selected=${this.instance?.subMode === SubModeEnum.UserUsername}>
 | 
			
		||||
                                ${t`Based on the username`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value="${OAuth2ProviderSubModeEnum.UserEmail}" ?selected=${this.instance?.subMode === OAuth2ProviderSubModeEnum.UserEmail}>
 | 
			
		||||
                            <option value="${SubModeEnum.UserEmail}" ?selected=${this.instance?.subMode === SubModeEnum.UserEmail}>
 | 
			
		||||
                                ${t`Based on the User's Email. This is recommended over the UPN method.`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value="${OAuth2ProviderSubModeEnum.UserUpn}" ?selected=${this.instance?.subMode === OAuth2ProviderSubModeEnum.UserUpn}>
 | 
			
		||||
                            <option value="${SubModeEnum.UserUpn}" ?selected=${this.instance?.subMode === SubModeEnum.UserUpn}>
 | 
			
		||||
                                ${t`Based on the User's UPN, only works if user has a 'upn' attribute set. Use this method only if you have different UPN and Mail domains.`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
@ -235,10 +235,10 @@ export class OAuth2ProviderFormPage extends ModelForm<OAuth2Provider, number> {
 | 
			
		||||
                        ?required=${true}
 | 
			
		||||
                        name="issuerMode">
 | 
			
		||||
                        <select class="pf-c-form-control">
 | 
			
		||||
                            <option value="${OAuth2ProviderIssuerModeEnum.PerProvider}" ?selected=${this.instance?.issuerMode === OAuth2ProviderIssuerModeEnum.PerProvider}>
 | 
			
		||||
                            <option value="${IssuerModeEnum.PerProvider}" ?selected=${this.instance?.issuerMode === IssuerModeEnum.PerProvider}>
 | 
			
		||||
                                ${t`Each provider has a different issuer, based on the application slug.`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value="${OAuth2ProviderIssuerModeEnum.Global}" ?selected=${this.instance?.issuerMode === OAuth2ProviderIssuerModeEnum.Global}>
 | 
			
		||||
                            <option value="${IssuerModeEnum.Global}" ?selected=${this.instance?.issuerMode === IssuerModeEnum.Global}>
 | 
			
		||||
                                ${t`Same identifier is used for all providers`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import { CryptoApi, FlowDesignationEnum, FlowsApi, SAMLProvider, ProvidersApi, PropertymappingsApi,  SAMLProviderSpBindingEnum, SAMLProviderDigestAlgorithmEnum, SAMLProviderSignatureAlgorithmEnum } from "authentik-api";
 | 
			
		||||
import { CryptoApi, FlowDesignationEnum, FlowsApi, SAMLProvider, ProvidersApi, PropertymappingsApi,  SpBindingEnum, DigestAlgorithmEnum, SignatureAlgorithmEnum } from "authentik-api";
 | 
			
		||||
import { t } from "@lingui/macro";
 | 
			
		||||
import { customElement } from "lit-element";
 | 
			
		||||
import { html, TemplateResult } from "lit-html";
 | 
			
		||||
@ -87,10 +87,10 @@ export class SAMLProviderFormPage extends ModelForm<SAMLProvider, number> {
 | 
			
		||||
                        ?required=${true}
 | 
			
		||||
                        name="spBinding">
 | 
			
		||||
                        <select class="pf-c-form-control">
 | 
			
		||||
                            <option value=${SAMLProviderSpBindingEnum.Redirect} ?selected=${this.instance?.spBinding === SAMLProviderSpBindingEnum.Redirect}>
 | 
			
		||||
                            <option value=${SpBindingEnum.Redirect} ?selected=${this.instance?.spBinding === SpBindingEnum.Redirect}>
 | 
			
		||||
                                ${t`Redirect`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLProviderSpBindingEnum.Post} ?selected=${this.instance?.spBinding === SAMLProviderSpBindingEnum.Post}>
 | 
			
		||||
                            <option value=${SpBindingEnum.Post} ?selected=${this.instance?.spBinding === SpBindingEnum.Post}>
 | 
			
		||||
                                ${t`Post`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
@ -208,16 +208,16 @@ export class SAMLProviderFormPage extends ModelForm<SAMLProvider, number> {
 | 
			
		||||
                        ?required=${true}
 | 
			
		||||
                        name="digestAlgorithm">
 | 
			
		||||
                        <select class="pf-c-form-control">
 | 
			
		||||
                            <option value=${SAMLProviderDigestAlgorithmEnum._200009Xmldsigsha1} ?selected=${this.instance?.digestAlgorithm === SAMLProviderDigestAlgorithmEnum._200009Xmldsigsha1}>
 | 
			
		||||
                            <option value=${DigestAlgorithmEnum._200009Xmldsigsha1} ?selected=${this.instance?.digestAlgorithm === DigestAlgorithmEnum._200009Xmldsigsha1}>
 | 
			
		||||
                                ${t`SHA1`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLProviderDigestAlgorithmEnum._200104Xmlencsha256} ?selected=${this.instance?.digestAlgorithm === SAMLProviderDigestAlgorithmEnum._200104Xmlencsha256 || this.instance?.digestAlgorithm === undefined}>
 | 
			
		||||
                            <option value=${DigestAlgorithmEnum._200104Xmlencsha256} ?selected=${this.instance?.digestAlgorithm === DigestAlgorithmEnum._200104Xmlencsha256 || this.instance?.digestAlgorithm === undefined}>
 | 
			
		||||
                                ${t`SHA256`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLProviderDigestAlgorithmEnum._200104XmldsigMoresha384} ?selected=${this.instance?.digestAlgorithm === SAMLProviderDigestAlgorithmEnum._200104XmldsigMoresha384}>
 | 
			
		||||
                            <option value=${DigestAlgorithmEnum._200104XmldsigMoresha384} ?selected=${this.instance?.digestAlgorithm === DigestAlgorithmEnum._200104XmldsigMoresha384}>
 | 
			
		||||
                                ${t`SHA384`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLProviderDigestAlgorithmEnum._200104Xmlencsha512} ?selected=${this.instance?.digestAlgorithm === SAMLProviderDigestAlgorithmEnum._200104Xmlencsha512}>
 | 
			
		||||
                            <option value=${DigestAlgorithmEnum._200104Xmlencsha512} ?selected=${this.instance?.digestAlgorithm === DigestAlgorithmEnum._200104Xmlencsha512}>
 | 
			
		||||
                                ${t`SHA512`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
@ -227,19 +227,19 @@ export class SAMLProviderFormPage extends ModelForm<SAMLProvider, number> {
 | 
			
		||||
                        ?required=${true}
 | 
			
		||||
                        name="signatureAlgorithm">
 | 
			
		||||
                        <select class="pf-c-form-control">
 | 
			
		||||
                            <option value=${SAMLProviderSignatureAlgorithmEnum._200009XmldsigrsaSha1} ?selected=${this.instance?.signatureAlgorithm === SAMLProviderSignatureAlgorithmEnum._200009XmldsigrsaSha1}>
 | 
			
		||||
                            <option value=${SignatureAlgorithmEnum._200009XmldsigrsaSha1} ?selected=${this.instance?.signatureAlgorithm === SignatureAlgorithmEnum._200009XmldsigrsaSha1}>
 | 
			
		||||
                                ${t`RSA-SHA1`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLProviderSignatureAlgorithmEnum._200104XmldsigMorersaSha256} ?selected=${this.instance?.signatureAlgorithm === SAMLProviderSignatureAlgorithmEnum._200104XmldsigMorersaSha256 || this.instance?.signatureAlgorithm === undefined}>
 | 
			
		||||
                            <option value=${SignatureAlgorithmEnum._200104XmldsigMorersaSha256} ?selected=${this.instance?.signatureAlgorithm === SignatureAlgorithmEnum._200104XmldsigMorersaSha256 || this.instance?.signatureAlgorithm === undefined}>
 | 
			
		||||
                                ${t`RSA-SHA256`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLProviderSignatureAlgorithmEnum._200104XmldsigMorersaSha384} ?selected=${this.instance?.signatureAlgorithm === SAMLProviderSignatureAlgorithmEnum._200104XmldsigMorersaSha384}>
 | 
			
		||||
                            <option value=${SignatureAlgorithmEnum._200104XmldsigMorersaSha384} ?selected=${this.instance?.signatureAlgorithm === SignatureAlgorithmEnum._200104XmldsigMorersaSha384}>
 | 
			
		||||
                                ${t`RSA-SHA384`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLProviderSignatureAlgorithmEnum._200104XmldsigMorersaSha512} ?selected=${this.instance?.signatureAlgorithm === SAMLProviderSignatureAlgorithmEnum._200104XmldsigMorersaSha512}>
 | 
			
		||||
                            <option value=${SignatureAlgorithmEnum._200104XmldsigMorersaSha512} ?selected=${this.instance?.signatureAlgorithm === SignatureAlgorithmEnum._200104XmldsigMorersaSha512}>
 | 
			
		||||
                                ${t`RSA-SHA512`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLProviderSignatureAlgorithmEnum._200009XmldsigdsaSha1} ?selected=${this.instance?.signatureAlgorithm === SAMLProviderSignatureAlgorithmEnum._200009XmldsigdsaSha1}>
 | 
			
		||||
                            <option value=${SignatureAlgorithmEnum._200009XmldsigdsaSha1} ?selected=${this.instance?.signatureAlgorithm === SignatureAlgorithmEnum._200009XmldsigdsaSha1}>
 | 
			
		||||
                                ${t`DSA-SHA1`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
 | 
			
		||||
@ -21,7 +21,7 @@ import "../../../elements/events/ObjectChangelog";
 | 
			
		||||
import "../../../elements/forms/ModalForm";
 | 
			
		||||
import "./LDAPSourceForm";
 | 
			
		||||
import { until } from "lit-html/directives/until";
 | 
			
		||||
import { LDAPSource, SourcesApi, TaskStatusEnum } from "authentik-api";
 | 
			
		||||
import { LDAPSource, SourcesApi, StatusEnum } from "authentik-api";
 | 
			
		||||
import { DEFAULT_CONFIG } from "../../../api/Config";
 | 
			
		||||
import { EVENT_REFRESH } from "../../../constants";
 | 
			
		||||
 | 
			
		||||
@ -137,9 +137,9 @@ export class LDAPSourceViewPage extends LitElement {
 | 
			
		||||
                                        slug: this.source.slug
 | 
			
		||||
                                    }).then((ls) => {
 | 
			
		||||
                                        let header = html``;
 | 
			
		||||
                                        if (ls.status === TaskStatusEnum.Warning) {
 | 
			
		||||
                                        if (ls.status === StatusEnum.Warning) {
 | 
			
		||||
                                            header = html`<p>${t`Task finished with warnings`}</p>`;
 | 
			
		||||
                                        } else if (status === TaskStatusEnum.Error) {
 | 
			
		||||
                                        } else if (status === StatusEnum.Error) {
 | 
			
		||||
                                            header = html`<p>${t`Task finished with errors`}</p>`;
 | 
			
		||||
                                        } else {
 | 
			
		||||
                                            header = html`<p>${t`Last sync: ${ls.taskFinishTimestamp.toLocaleString()}`}</p>`;
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import { OAuthSource, SourcesApi, FlowsApi, FlowDesignationEnum, OAuthSourceUserMatchingModeEnum } from "authentik-api";
 | 
			
		||||
import { OAuthSource, SourcesApi, FlowsApi, FlowDesignationEnum, UserMatchingModeEnum } from "authentik-api";
 | 
			
		||||
import { t } from "@lingui/macro";
 | 
			
		||||
import { customElement, property } from "lit-element";
 | 
			
		||||
import { html, TemplateResult } from "lit-html";
 | 
			
		||||
@ -139,19 +139,19 @@ export class OAuthSourceForm extends ModelForm<OAuthSource, string> {
 | 
			
		||||
                ?required=${true}
 | 
			
		||||
                name="userMatchingMode">
 | 
			
		||||
                <select class="pf-c-form-control">
 | 
			
		||||
                    <option value=${OAuthSourceUserMatchingModeEnum.Identifier} ?selected=${this.instance?.userMatchingMode === OAuthSourceUserMatchingModeEnum.Identifier}>
 | 
			
		||||
                    <option value=${UserMatchingModeEnum.Identifier} ?selected=${this.instance?.userMatchingMode === UserMatchingModeEnum.Identifier}>
 | 
			
		||||
                        ${t`Link users on unique identifier`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                    <option value=${OAuthSourceUserMatchingModeEnum.UsernameLink} ?selected=${this.instance?.userMatchingMode === OAuthSourceUserMatchingModeEnum.UsernameLink}>
 | 
			
		||||
                    <option value=${UserMatchingModeEnum.UsernameLink} ?selected=${this.instance?.userMatchingMode === UserMatchingModeEnum.UsernameLink}>
 | 
			
		||||
                        ${t`Link to a user with identical email address. Can have security implications when a source doesn't validate email addresses`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                    <option value=${OAuthSourceUserMatchingModeEnum.UsernameDeny} ?selected=${this.instance?.userMatchingMode === OAuthSourceUserMatchingModeEnum.UsernameDeny}>
 | 
			
		||||
                    <option value=${UserMatchingModeEnum.UsernameDeny} ?selected=${this.instance?.userMatchingMode === UserMatchingModeEnum.UsernameDeny}>
 | 
			
		||||
                        ${t`Use the user's email address, but deny enrollment when the email address already exists.`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                    <option value=${OAuthSourceUserMatchingModeEnum.EmailLink} ?selected=${this.instance?.userMatchingMode === OAuthSourceUserMatchingModeEnum.EmailLink}>
 | 
			
		||||
                    <option value=${UserMatchingModeEnum.EmailLink} ?selected=${this.instance?.userMatchingMode === UserMatchingModeEnum.EmailLink}>
 | 
			
		||||
                        ${t`Link to a user with identical username address. Can have security implications when a username is used with another source.`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                    <option value=${OAuthSourceUserMatchingModeEnum.EmailDeny} ?selected=${this.instance?.userMatchingMode === OAuthSourceUserMatchingModeEnum.EmailDeny}>
 | 
			
		||||
                    <option value=${UserMatchingModeEnum.EmailDeny} ?selected=${this.instance?.userMatchingMode === UserMatchingModeEnum.EmailDeny}>
 | 
			
		||||
                        ${t`Use the user's username, but deny enrollment when the username already exists.`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                </select>
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import { PlexSource, SourcesApi, FlowsApi, FlowDesignationEnum, PlexSourceUserMatchingModeEnum } from "authentik-api";
 | 
			
		||||
import { PlexSource, SourcesApi, FlowsApi, FlowDesignationEnum, UserMatchingModeEnum } from "authentik-api";
 | 
			
		||||
import { t } from "@lingui/macro";
 | 
			
		||||
import { customElement, property } from "lit-element";
 | 
			
		||||
import { html, TemplateResult } from "lit-html";
 | 
			
		||||
@ -137,19 +137,19 @@ export class PlexSourceForm extends ModelForm<PlexSource, string> {
 | 
			
		||||
                ?required=${true}
 | 
			
		||||
                name="userMatchingMode">
 | 
			
		||||
                <select class="pf-c-form-control">
 | 
			
		||||
                    <option value=${PlexSourceUserMatchingModeEnum.Identifier} ?selected=${this.instance?.userMatchingMode === PlexSourceUserMatchingModeEnum.Identifier}>
 | 
			
		||||
                    <option value=${UserMatchingModeEnum.Identifier} ?selected=${this.instance?.userMatchingMode === UserMatchingModeEnum.Identifier}>
 | 
			
		||||
                        ${t`Link users on unique identifier`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                    <option value=${PlexSourceUserMatchingModeEnum.UsernameLink} ?selected=${this.instance?.userMatchingMode === PlexSourceUserMatchingModeEnum.UsernameLink}>
 | 
			
		||||
                    <option value=${UserMatchingModeEnum.UsernameLink} ?selected=${this.instance?.userMatchingMode === UserMatchingModeEnum.UsernameLink}>
 | 
			
		||||
                        ${t`Link to a user with identical email address. Can have security implications when a source doesn't validate email addresses`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                    <option value=${PlexSourceUserMatchingModeEnum.UsernameDeny} ?selected=${this.instance?.userMatchingMode === PlexSourceUserMatchingModeEnum.UsernameDeny}>
 | 
			
		||||
                    <option value=${UserMatchingModeEnum.UsernameDeny} ?selected=${this.instance?.userMatchingMode === UserMatchingModeEnum.UsernameDeny}>
 | 
			
		||||
                        ${t`Use the user's email address, but deny enrollment when the email address already exists.`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                    <option value=${PlexSourceUserMatchingModeEnum.EmailLink} ?selected=${this.instance?.userMatchingMode === PlexSourceUserMatchingModeEnum.EmailLink}>
 | 
			
		||||
                    <option value=${UserMatchingModeEnum.EmailLink} ?selected=${this.instance?.userMatchingMode === UserMatchingModeEnum.EmailLink}>
 | 
			
		||||
                        ${t`Link to a user with identical username address. Can have security implications when a username is used with another source.`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                    <option value=${PlexSourceUserMatchingModeEnum.EmailDeny} ?selected=${this.instance?.userMatchingMode === PlexSourceUserMatchingModeEnum.EmailDeny}>
 | 
			
		||||
                    <option value=${UserMatchingModeEnum.EmailDeny} ?selected=${this.instance?.userMatchingMode === UserMatchingModeEnum.EmailDeny}>
 | 
			
		||||
                        ${t`Use the user's username, but deny enrollment when the username already exists.`}
 | 
			
		||||
                    </option>
 | 
			
		||||
                </select>
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import { SAMLSource, SourcesApi, SAMLSourceBindingTypeEnum, SAMLSourceNameIdPolicyEnum, CryptoApi, SAMLSourceDigestAlgorithmEnum, SAMLSourceSignatureAlgorithmEnum, FlowsApi, FlowDesignationEnum } from "authentik-api";
 | 
			
		||||
import { SAMLSource, SourcesApi, BindingTypeEnum, NameIdPolicyEnum, CryptoApi, DigestAlgorithmEnum, SignatureAlgorithmEnum, FlowsApi, FlowDesignatio } from "authentik-api";
 | 
			
		||||
import { t } from "@lingui/macro";
 | 
			
		||||
import { customElement } from "lit-element";
 | 
			
		||||
import { html, TemplateResult } from "lit-html";
 | 
			
		||||
@ -92,13 +92,13 @@ export class SAMLSourceForm extends ModelForm<SAMLSource, string> {
 | 
			
		||||
                        ?required=${true}
 | 
			
		||||
                        name="bindingType">
 | 
			
		||||
                        <select class="pf-c-form-control">
 | 
			
		||||
                            <option value=${SAMLSourceBindingTypeEnum.Redirect} ?selected=${this.instance?.bindingType === SAMLSourceBindingTypeEnum.Redirect}>
 | 
			
		||||
                            <option value=${BindingTypeEnum.Redirect} ?selected=${this.instance?.bindingType === BindingTypeEnum.Redirect}>
 | 
			
		||||
                                ${t`Redirect binding`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLSourceBindingTypeEnum.PostAuto} ?selected=${this.instance?.bindingType === SAMLSourceBindingTypeEnum.PostAuto}>
 | 
			
		||||
                            <option value=${BindingTypeEnum.PostAuto} ?selected=${this.instance?.bindingType === BindingTypeEnum.PostAuto}>
 | 
			
		||||
                                ${t`Post binding (auto-submit)`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLSourceBindingTypeEnum.Post} ?selected=${this.instance?.bindingType === SAMLSourceBindingTypeEnum.Post}>
 | 
			
		||||
                            <option value=${BindingTypeEnum.Post} ?selected=${this.instance?.bindingType === BindingTypeEnum.Post}>
 | 
			
		||||
                                ${t`Post binding`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
@ -139,19 +139,19 @@ export class SAMLSourceForm extends ModelForm<SAMLSource, string> {
 | 
			
		||||
                        ?required=${true}
 | 
			
		||||
                        name="nameIdPolicy">
 | 
			
		||||
                        <select class="pf-c-form-control">
 | 
			
		||||
                            <option value=${SAMLSourceNameIdPolicyEnum._20nameidFormatpersistent} ?selected=${this.instance?.nameIdPolicy === SAMLSourceNameIdPolicyEnum._20nameidFormatpersistent}>
 | 
			
		||||
                            <option value=${NameIdPolicyEnum._20nameidFormatpersistent} ?selected=${this.instance?.nameIdPolicy === NameIdPolicyEnum._20nameidFormatpersistent}>
 | 
			
		||||
                                ${t`Persistent`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLSourceNameIdPolicyEnum._11nameidFormatemailAddress} ?selected=${this.instance?.nameIdPolicy === SAMLSourceNameIdPolicyEnum._11nameidFormatemailAddress}>
 | 
			
		||||
                            <option value=${NameIdPolicyEnum._11nameidFormatemailAddress} ?selected=${this.instance?.nameIdPolicy === NameIdPolicyEnum._11nameidFormatemailAddress}>
 | 
			
		||||
                                ${t`Email address`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLSourceNameIdPolicyEnum._20nameidFormatWindowsDomainQualifiedName} ?selected=${this.instance?.nameIdPolicy === SAMLSourceNameIdPolicyEnum._20nameidFormatWindowsDomainQualifiedName}>
 | 
			
		||||
                            <option value=${NameIdPolicyEnum._20nameidFormatWindowsDomainQualifiedName} ?selected=${this.instance?.nameIdPolicy === NameIdPolicyEnum._20nameidFormatWindowsDomainQualifiedName}>
 | 
			
		||||
                                ${t`Windows`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLSourceNameIdPolicyEnum._20nameidFormatX509SubjectName} ?selected=${this.instance?.nameIdPolicy === SAMLSourceNameIdPolicyEnum._20nameidFormatX509SubjectName}>
 | 
			
		||||
                            <option value=${NameIdPolicyEnum._20nameidFormatX509SubjectName} ?selected=${this.instance?.nameIdPolicy === NameIdPolicyEnum._20nameidFormatX509SubjectName}>
 | 
			
		||||
                                ${t`X509 Subject`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLSourceNameIdPolicyEnum._20nameidFormattransient} ?selected=${this.instance?.nameIdPolicy === SAMLSourceNameIdPolicyEnum._20nameidFormattransient}>
 | 
			
		||||
                            <option value=${NameIdPolicyEnum._20nameidFormattransient} ?selected=${this.instance?.nameIdPolicy === NameIdPolicyEnum._20nameidFormattransient}>
 | 
			
		||||
                                ${t`Transient`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
@ -168,16 +168,16 @@ export class SAMLSourceForm extends ModelForm<SAMLSource, string> {
 | 
			
		||||
                        ?required=${true}
 | 
			
		||||
                        name="digestAlgorithm">
 | 
			
		||||
                        <select class="pf-c-form-control">
 | 
			
		||||
                            <option value=${SAMLSourceDigestAlgorithmEnum._200009Xmldsigsha1} ?selected=${this.instance?.digestAlgorithm === SAMLSourceDigestAlgorithmEnum._200009Xmldsigsha1}>
 | 
			
		||||
                            <option value=${DigestAlgorithmEnum._200009Xmldsigsha1} ?selected=${this.instance?.digestAlgorithm === DigestAlgorithmEnum._200009Xmldsigsha1}>
 | 
			
		||||
                                ${t`SHA1`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLSourceDigestAlgorithmEnum._200104Xmlencsha256} ?selected=${this.instance?.digestAlgorithm === SAMLSourceDigestAlgorithmEnum._200104Xmlencsha256 || this.instance?.digestAlgorithm === undefined}>
 | 
			
		||||
                            <option value=${DigestAlgorithmEnum._200104Xmlencsha256} ?selected=${this.instance?.digestAlgorithm === DigestAlgorithmEnum._200104Xmlencsha256 || this.instance?.digestAlgorithm === undefined}>
 | 
			
		||||
                                ${t`SHA256`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLSourceDigestAlgorithmEnum._200104XmldsigMoresha384} ?selected=${this.instance?.digestAlgorithm === SAMLSourceDigestAlgorithmEnum._200104XmldsigMoresha384}>
 | 
			
		||||
                            <option value=${DigestAlgorithmEnum._200104XmldsigMoresha384} ?selected=${this.instance?.digestAlgorithm === DigestAlgorithmEnum._200104XmldsigMoresha384}>
 | 
			
		||||
                                ${t`SHA384`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLSourceDigestAlgorithmEnum._200104Xmlencsha512} ?selected=${this.instance?.digestAlgorithm === SAMLSourceDigestAlgorithmEnum._200104Xmlencsha512}>
 | 
			
		||||
                            <option value=${DigestAlgorithmEnum._200104Xmlencsha512} ?selected=${this.instance?.digestAlgorithm === DigestAlgorithmEnum._200104Xmlencsha512}>
 | 
			
		||||
                                ${t`SHA512`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
@ -187,19 +187,19 @@ export class SAMLSourceForm extends ModelForm<SAMLSource, string> {
 | 
			
		||||
                        ?required=${true}
 | 
			
		||||
                        name="signatureAlgorithm">
 | 
			
		||||
                        <select class="pf-c-form-control">
 | 
			
		||||
                            <option value=${SAMLSourceSignatureAlgorithmEnum._200009XmldsigrsaSha1} ?selected=${this.instance?.signatureAlgorithm === SAMLSourceSignatureAlgorithmEnum._200009XmldsigrsaSha1}>
 | 
			
		||||
                            <option value=${SignatureAlgorithmEnum._200009XmldsigrsaSha1} ?selected=${this.instance?.signatureAlgorithm === SignatureAlgorithmEnum._200009XmldsigrsaSha1}>
 | 
			
		||||
                                ${t`RSA-SHA1`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLSourceSignatureAlgorithmEnum._200104XmldsigMorersaSha256} ?selected=${this.instance?.signatureAlgorithm === SAMLSourceSignatureAlgorithmEnum._200104XmldsigMorersaSha256 || this.instance?.signatureAlgorithm === undefined}>
 | 
			
		||||
                            <option value=${SignatureAlgorithmEnum._200104XmldsigMorersaSha256} ?selected=${this.instance?.signatureAlgorithm === SignatureAlgorithmEnum._200104XmldsigMorersaSha256 || this.instance?.signatureAlgorithm === undefined}>
 | 
			
		||||
                                ${t`RSA-SHA256`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLSourceSignatureAlgorithmEnum._200104XmldsigMorersaSha384} ?selected=${this.instance?.signatureAlgorithm === SAMLSourceSignatureAlgorithmEnum._200104XmldsigMorersaSha384}>
 | 
			
		||||
                            <option value=${SignatureAlgorithmEnum._200104XmldsigMorersaSha384} ?selected=${this.instance?.signatureAlgorithm === SignatureAlgorithmEnum._200104XmldsigMorersaSha384}>
 | 
			
		||||
                                ${t`RSA-SHA384`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLSourceSignatureAlgorithmEnum._200104XmldsigMorersaSha512} ?selected=${this.instance?.signatureAlgorithm === SAMLSourceSignatureAlgorithmEnum._200104XmldsigMorersaSha512}>
 | 
			
		||||
                            <option value=${SignatureAlgorithmEnum._200104XmldsigMorersaSha512} ?selected=${this.instance?.signatureAlgorithm === SignatureAlgorithmEnum._200104XmldsigMorersaSha512}>
 | 
			
		||||
                                ${t`RSA-SHA512`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${SAMLSourceSignatureAlgorithmEnum._200009XmldsigdsaSha1} ?selected=${this.instance?.signatureAlgorithm === SAMLSourceSignatureAlgorithmEnum._200009XmldsigdsaSha1}>
 | 
			
		||||
                            <option value=${SignatureAlgorithmEnum._200009XmldsigdsaSha1} ?selected=${this.instance?.signatureAlgorithm === SignatureAlgorithmEnum._200009XmldsigdsaSha1}>
 | 
			
		||||
                                ${t`DSA-SHA1`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import { AuthenticatorValidateStage, AuthenticatorValidateStageNotConfiguredActionEnum, AuthenticatorValidateStageDeviceClassesEnum, StagesApi } from "authentik-api";
 | 
			
		||||
import { AuthenticatorValidateStage, NotConfiguredActionEnum, DeviceClassesEnum, StagesApi } from "authentik-api";
 | 
			
		||||
import { t } from "@lingui/macro";
 | 
			
		||||
import { customElement, property } from "lit-element";
 | 
			
		||||
import { html, TemplateResult } from "lit-html";
 | 
			
		||||
@ -16,7 +16,7 @@ export class AuthenticatorValidateStageForm extends ModelForm<AuthenticatorValid
 | 
			
		||||
        return new StagesApi(DEFAULT_CONFIG).stagesAuthenticatorValidateRetrieve({
 | 
			
		||||
            stageUuid: pk,
 | 
			
		||||
        }).then(stage => {
 | 
			
		||||
            this.showConfigureFlow = stage.notConfiguredAction === AuthenticatorValidateStageNotConfiguredActionEnum.Configure;
 | 
			
		||||
            this.showConfigureFlow = stage.notConfiguredAction === NotConfiguredActionEnum.Configure;
 | 
			
		||||
            return stage;
 | 
			
		||||
        });
 | 
			
		||||
    }
 | 
			
		||||
@ -45,7 +45,7 @@ export class AuthenticatorValidateStageForm extends ModelForm<AuthenticatorValid
 | 
			
		||||
        }
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    isDeviceClassSelected(field: AuthenticatorValidateStageDeviceClassesEnum): boolean {
 | 
			
		||||
    isDeviceClassSelected(field: DeviceClassesEnum): boolean {
 | 
			
		||||
        return (this.instance?.deviceClasses || []).filter(isField => {
 | 
			
		||||
            return field === isField;
 | 
			
		||||
        }).length > 0;
 | 
			
		||||
@ -73,19 +73,19 @@ export class AuthenticatorValidateStageForm extends ModelForm<AuthenticatorValid
 | 
			
		||||
                        name="notConfiguredAction">
 | 
			
		||||
                        <select class="pf-c-form-control" @change=${(ev: Event) => {
 | 
			
		||||
                            const target = ev.target as HTMLSelectElement;
 | 
			
		||||
                            if (target.selectedOptions[0].value === AuthenticatorValidateStageNotConfiguredActionEnum.Configure) {
 | 
			
		||||
                            if (target.selectedOptions[0].value === NotConfiguredActionEnum.Configure) {
 | 
			
		||||
                                this.showConfigureFlow = true;
 | 
			
		||||
                            } else {
 | 
			
		||||
                                this.showConfigureFlow = false;
 | 
			
		||||
                            }
 | 
			
		||||
                        }}>
 | 
			
		||||
                            <option value=${AuthenticatorValidateStageNotConfiguredActionEnum.Configure} ?selected=${this.instance?.notConfiguredAction === AuthenticatorValidateStageNotConfiguredActionEnum.Configure}>
 | 
			
		||||
                            <option value=${NotConfiguredActionEnum.Configure} ?selected=${this.instance?.notConfiguredAction === NotConfiguredActionEnum.Configure}>
 | 
			
		||||
                                ${t`Force the user to configure an authenticator`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${AuthenticatorValidateStageNotConfiguredActionEnum.Deny} ?selected=${this.instance?.notConfiguredAction === AuthenticatorValidateStageNotConfiguredActionEnum.Deny}>
 | 
			
		||||
                            <option value=${NotConfiguredActionEnum.Deny} ?selected=${this.instance?.notConfiguredAction === NotConfiguredActionEnum.Deny}>
 | 
			
		||||
                                ${t`Deny the user access`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${AuthenticatorValidateStageNotConfiguredActionEnum.Skip} ?selected=${this.instance?.notConfiguredAction === AuthenticatorValidateStageNotConfiguredActionEnum.Skip}>
 | 
			
		||||
                            <option value=${NotConfiguredActionEnum.Skip} ?selected=${this.instance?.notConfiguredAction === NotConfiguredActionEnum.Skip}>
 | 
			
		||||
                                ${t`Continue`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
@ -95,13 +95,13 @@ export class AuthenticatorValidateStageForm extends ModelForm<AuthenticatorValid
 | 
			
		||||
                        ?required=${true}
 | 
			
		||||
                        name="transports">
 | 
			
		||||
                        <select name="users" class="pf-c-form-control" multiple>
 | 
			
		||||
                            <option value=${AuthenticatorValidateStageDeviceClassesEnum.Static} ?selected=${this.isDeviceClassSelected(AuthenticatorValidateStageDeviceClassesEnum.Static)}>
 | 
			
		||||
                            <option value=${DeviceClassesEnum.Static} ?selected=${this.isDeviceClassSelected(DeviceClassesEnum.Static)}>
 | 
			
		||||
                                ${t`Static Tokens`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${AuthenticatorValidateStageDeviceClassesEnum.Totp} ?selected=${this.isDeviceClassSelected(AuthenticatorValidateStageDeviceClassesEnum.Totp)}>
 | 
			
		||||
                            <option value=${DeviceClassesEnum.Totp} ?selected=${this.isDeviceClassSelected(DeviceClassesEnum.Totp)}>
 | 
			
		||||
                                ${t`TOTP Authenticators`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${AuthenticatorValidateStageDeviceClassesEnum.Webauthn} ?selected=${this.isDeviceClassSelected(AuthenticatorValidateStageDeviceClassesEnum.Webauthn)}>
 | 
			
		||||
                            <option value=${DeviceClassesEnum.Webauthn} ?selected=${this.isDeviceClassSelected(DeviceClassesEnum.Webauthn)}>
 | 
			
		||||
                                ${t`WebAuthn Authenticators`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import { FlowDesignationEnum, FlowsApi, IdentificationStage, IdentificationStageUserFieldsEnum, StagesApi } from "authentik-api";
 | 
			
		||||
import { FlowDesignationEnum, FlowsApi, IdentificationStage, UserFieldsEnum, StagesApi } from "authentik-api";
 | 
			
		||||
import { t } from "@lingui/macro";
 | 
			
		||||
import { customElement } from "lit-element";
 | 
			
		||||
import { html, TemplateResult } from "lit-html";
 | 
			
		||||
@ -40,7 +40,7 @@ export class IdentificationStageForm extends ModelForm<IdentificationStage, stri
 | 
			
		||||
        }
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    isUserFieldSelected(field: IdentificationStageUserFieldsEnum): boolean {
 | 
			
		||||
    isUserFieldSelected(field: UserFieldsEnum): boolean {
 | 
			
		||||
        return (this.instance?.userFields || []).filter(isField => {
 | 
			
		||||
            return field === isField;
 | 
			
		||||
        }).length > 0;
 | 
			
		||||
@ -66,10 +66,10 @@ export class IdentificationStageForm extends ModelForm<IdentificationStage, stri
 | 
			
		||||
                        label=${t`User fields`}
 | 
			
		||||
                        name="userFields">
 | 
			
		||||
                        <select name="users" class="pf-c-form-control" multiple>
 | 
			
		||||
                            <option value=${IdentificationStageUserFieldsEnum.Username} ?selected=${this.isUserFieldSelected(IdentificationStageUserFieldsEnum.Username)}>
 | 
			
		||||
                            <option value=${UserFieldsEnum.Username} ?selected=${this.isUserFieldSelected(UserFieldsEnum.Username)}>
 | 
			
		||||
                                ${t`Username`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                            <option value=${IdentificationStageUserFieldsEnum.Email} ?selected=${this.isUserFieldSelected(IdentificationStageUserFieldsEnum.Email)}>
 | 
			
		||||
                            <option value=${UserFieldsEnum.Email} ?selected=${this.isUserFieldSelected(UserFieldsEnum.Email)}>
 | 
			
		||||
                                ${t`Email`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import { FlowDesignationEnum, FlowsApi, PasswordStage, PasswordStageBackendsEnum, StagesApi } from "authentik-api";
 | 
			
		||||
import { FlowDesignationEnum, FlowsApi, PasswordStage, BackendsEnum, StagesApi } from "authentik-api";
 | 
			
		||||
import { t } from "@lingui/macro";
 | 
			
		||||
import { customElement } from "lit-element";
 | 
			
		||||
import { html, TemplateResult } from "lit-html";
 | 
			
		||||
@ -40,7 +40,7 @@ export class PasswordStageForm extends ModelForm<PasswordStage, string> {
 | 
			
		||||
        }
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    isBackendSelected(field: PasswordStageBackendsEnum): boolean {
 | 
			
		||||
    isBackendSelected(field: BackendsEnum): boolean {
 | 
			
		||||
        return (this.instance?.backends || []).filter(isField => {
 | 
			
		||||
            return field === isField;
 | 
			
		||||
        }).length > 0;
 | 
			
		||||
@ -67,10 +67,10 @@ export class PasswordStageForm extends ModelForm<PasswordStage, string> {
 | 
			
		||||
                        ?required=${true}
 | 
			
		||||
                        name="backends">
 | 
			
		||||
                        <select name="users" class="pf-c-form-control" multiple>
 | 
			
		||||
                            <option value=${PasswordStageBackendsEnum.DjangoContribAuthBackendsModelBackend} ?selected=${this.isBackendSelected(PasswordStageBackendsEnum.DjangoContribAuthBackendsModelBackend)}>
 | 
			
		||||
                            <option value=${BackendsEnum.DjangoContribAuthBackendsModelBackend} ?selected=${this.isBackendSelected(BackendsEnum.DjangoContribAuthBackendsModelBackend)}>
 | 
			
		||||
                                ${t`authentik Builtin Database`}
 | 
			
		||||
                                </option>
 | 
			
		||||
                            <option value=${PasswordStageBackendsEnum.AuthentikSourcesLdapAuthLdapBackend} ?selected=${this.isBackendSelected(PasswordStageBackendsEnum.AuthentikSourcesLdapAuthLdapBackend)}>
 | 
			
		||||
                            <option value=${BackendsEnum.AuthentikSourcesLdapAuthLdapBackend} ?selected=${this.isBackendSelected(BackendsEnum.AuthentikSourcesLdapAuthLdapBackend)}>
 | 
			
		||||
                                ${t`authentik LDAP Backend`}
 | 
			
		||||
                            </option>
 | 
			
		||||
                        </select>
 | 
			
		||||
 | 
			
		||||
@ -7,7 +7,7 @@ import PFDescriptionList from "@patternfly/patternfly/components/DescriptionList
 | 
			
		||||
import "../../elements/buttons/SpinnerButton";
 | 
			
		||||
import "../../elements/buttons/ActionButton";
 | 
			
		||||
import { TableColumn } from "../../elements/table/Table";
 | 
			
		||||
import { AdminApi, Task, TaskStatusEnum } from "authentik-api";
 | 
			
		||||
import { AdminApi, Task, StatusEnum } from "authentik-api";
 | 
			
		||||
import { DEFAULT_CONFIG } from "../../api/Config";
 | 
			
		||||
import { PFColor } from "../../elements/Label";
 | 
			
		||||
 | 
			
		||||
@ -62,11 +62,11 @@ export class SystemTaskListPage extends TablePage<Task> {
 | 
			
		||||
 | 
			
		||||
    taskStatus(task: Task): TemplateResult {
 | 
			
		||||
        switch (task.status) {
 | 
			
		||||
            case TaskStatusEnum.Successful:
 | 
			
		||||
            case StatusEnum.Successful:
 | 
			
		||||
                return html`<ak-label color=${PFColor.Green} text=${t`Successful`}></ak-label>`;
 | 
			
		||||
            case TaskStatusEnum.Warning:
 | 
			
		||||
            case StatusEnum.Warning:
 | 
			
		||||
                return html`<ak-label color=${PFColor.Orange} text=${t`Warning`}></ak-label>`;
 | 
			
		||||
            case TaskStatusEnum.Error:
 | 
			
		||||
            case StatusEnum.Error:
 | 
			
		||||
                return html`<ak-label color=${PFColor.Red} text=${t`Error`}></ak-label>`;
 | 
			
		||||
            default:
 | 
			
		||||
                return html`<ak-label color=${PFColor.Grey} text=${t`Unknown`}></ak-label>`;
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user