From ba5cd6e719a8bb6ec470adda9314da5a62dd5813 Mon Sep 17 00:00:00 2001 From: Jens L Date: Mon, 2 Jan 2023 14:51:44 +0100 Subject: [PATCH] web/admin: add Radio control, search-select fixes (#4333) * move search select to forms folder Signed-off-by: Jens Langhammer * add radio, migrate smaller lists Signed-off-by: Jens Langhammer * move dropdown when scrolling, hide when container out of frame Signed-off-by: Jens Langhammer Signed-off-by: Jens Langhammer --- .../ApplicationCheckAccessForm.ts | 2 +- web/src/admin/applications/ApplicationForm.ts | 34 +- .../TypeOAuthCodeApplicationWizardPage.ts | 2 +- web/src/admin/blueprints/BlueprintForm.ts | 2 +- web/src/admin/events/RuleForm.ts | 54 +- web/src/admin/events/TransportForm.ts | 2 +- web/src/admin/flows/FlowForm.ts | 479 +++++++++--------- web/src/admin/flows/StageBindingForm.ts | 83 +-- web/src/admin/groups/GroupForm.ts | 2 +- web/src/admin/outposts/OutpostForm.ts | 2 +- .../outposts/ServiceConnectionDockerForm.ts | 2 +- web/src/admin/policies/PolicyBindingForm.ts | 2 +- web/src/admin/policies/PolicyTestForm.ts | 2 +- .../event_matcher/EventMatcherPolicyForm.ts | 2 +- .../PropertyMappingTestForm.ts | 2 +- .../admin/providers/ldap/LDAPProviderForm.ts | 66 +-- .../providers/oauth2/OAuth2ProviderForm.ts | 33 +- .../providers/proxy/ProxyProviderForm.ts | 2 +- .../admin/providers/saml/SAMLProviderForm.ts | 151 +++--- .../providers/saml/SAMLProviderImportForm.ts | 2 +- web/src/admin/sources/ldap/LDAPSourceForm.ts | 2 +- .../admin/sources/oauth/OAuthSourceForm.ts | 2 +- web/src/admin/sources/plex/PlexSourceForm.ts | 2 +- web/src/admin/sources/saml/SAMLSourceForm.ts | 160 +++--- .../AuthenticatorDuoStageForm.ts | 2 +- .../authenticator_duo/DuoDeviceImportForm.ts | 2 +- .../AuthenticatorSMSStageForm.ts | 32 +- .../AuthenticatorStaticStageForm.ts | 2 +- .../AuthenticatorTOTPStageForm.ts | 2 +- .../AuthenticateWebAuthnStageForm.ts | 2 +- .../identification/IdentificationStageForm.ts | 2 +- .../admin/stages/invitation/InvitationForm.ts | 2 +- .../stages/password/PasswordStageForm.ts | 2 +- .../stages/user_write/UserWriteStageForm.ts | 2 +- web/src/admin/tenants/TenantForm.ts | 2 +- web/src/admin/tokens/TokenForm.ts | 34 +- web/src/admin/users/UserResetEmailForm.ts | 2 +- web/src/elements/forms/Form.ts | 2 +- .../elements/forms/HorizontalFormElement.ts | 1 + web/src/elements/forms/ModalForm.ts | 11 +- web/src/elements/forms/Radio.ts | 81 +++ web/src/elements/{ => forms}/SearchSelect.ts | 24 +- 42 files changed, 697 insertions(+), 602 deletions(-) create mode 100644 web/src/elements/forms/Radio.ts rename web/src/elements/{ => forms}/SearchSelect.ts (92%) diff --git a/web/src/admin/applications/ApplicationCheckAccessForm.ts b/web/src/admin/applications/ApplicationCheckAccessForm.ts index 9bd5bac2f..b2c7e8ab9 100644 --- a/web/src/admin/applications/ApplicationCheckAccessForm.ts +++ b/web/src/admin/applications/ApplicationCheckAccessForm.ts @@ -1,8 +1,8 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { PFColor } from "@goauthentik/elements/Label"; -import "@goauthentik/elements/SearchSelect"; import { Form } from "@goauthentik/elements/forms/Form"; import "@goauthentik/elements/forms/HorizontalFormElement"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/applications/ApplicationForm.ts b/web/src/admin/applications/ApplicationForm.ts index b3064e27b..44b735ee2 100644 --- a/web/src/admin/applications/ApplicationForm.ts +++ b/web/src/admin/applications/ApplicationForm.ts @@ -1,12 +1,13 @@ import "@goauthentik/admin/providers/ProviderWizard"; import { DEFAULT_CONFIG, config } from "@goauthentik/common/api/config"; import { first, groupBy } from "@goauthentik/common/utils"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import "@goauthentik/elements/forms/ModalForm"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; import "@goauthentik/elements/forms/ProxyForm"; +import "@goauthentik/elements/forms/Radio"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; @@ -153,20 +154,23 @@ export class ApplicationForm extends ModelForm { ?required=${true} name="policyEngineMode" > - + + ${t`UI settings`} diff --git a/web/src/admin/applications/wizard/oauth/TypeOAuthCodeApplicationWizardPage.ts b/web/src/admin/applications/wizard/oauth/TypeOAuthCodeApplicationWizardPage.ts index 0d40be61e..54adfd5f1 100644 --- a/web/src/admin/applications/wizard/oauth/TypeOAuthCodeApplicationWizardPage.ts +++ b/web/src/admin/applications/wizard/oauth/TypeOAuthCodeApplicationWizardPage.ts @@ -1,7 +1,7 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; -import "@goauthentik/elements/SearchSelect"; import { KeyUnknown } from "@goauthentik/elements/forms/Form"; import "@goauthentik/elements/forms/HorizontalFormElement"; +import "@goauthentik/elements/forms/SearchSelect"; import { WizardFormPage } from "@goauthentik/elements/wizard/WizardFormPage"; import "@goauthentik/elements/wizard/WizardFormPage"; diff --git a/web/src/admin/blueprints/BlueprintForm.ts b/web/src/admin/blueprints/BlueprintForm.ts index 867458631..8aa8ae793 100644 --- a/web/src/admin/blueprints/BlueprintForm.ts +++ b/web/src/admin/blueprints/BlueprintForm.ts @@ -2,10 +2,10 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { docLink } from "@goauthentik/common/global"; import { first } from "@goauthentik/common/utils"; import "@goauthentik/elements/CodeMirror"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/SearchSelect"; import YAML from "yaml"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/events/RuleForm.ts b/web/src/admin/events/RuleForm.ts index c7e2e6e2e..763358ee2 100644 --- a/web/src/admin/events/RuleForm.ts +++ b/web/src/admin/events/RuleForm.ts @@ -1,7 +1,8 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/Radio"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; @@ -48,29 +49,6 @@ export class RuleForm extends ModelForm { } }; - renderSeverity(): TemplateResult { - return html` - - - - `; - } - renderForm(): TemplateResult { return html`
@@ -107,10 +85,12 @@ export class RuleForm extends ModelForm { - ${until( new EventsApi(DEFAULT_CONFIG) - .eventsTransportsList({}) + .eventsTransportsList({ + ordering: "name", + }) .then((transports) => { return transports.results.map((transport) => { const selected = Array.from( @@ -137,9 +117,25 @@ export class RuleForm extends ModelForm {

- + +
`; } diff --git a/web/src/admin/events/TransportForm.ts b/web/src/admin/events/TransportForm.ts index bfc0fcb76..60a925974 100644 --- a/web/src/admin/events/TransportForm.ts +++ b/web/src/admin/events/TransportForm.ts @@ -1,8 +1,8 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { first } from "@goauthentik/common/utils"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/flows/FlowForm.ts b/web/src/admin/flows/FlowForm.ts index 3db763b8f..59ac8619f 100644 --- a/web/src/admin/flows/FlowForm.ts +++ b/web/src/admin/flows/FlowForm.ts @@ -2,8 +2,10 @@ import { DesignationToLabel, LayoutToLabel } from "@goauthentik/admin/flows/util import { AuthenticationEnum } from "@goauthentik/api/dist/models/AuthenticationEnum"; import { DEFAULT_CONFIG, config } from "@goauthentik/common/api/config"; import { first } from "@goauthentik/common/utils"; +import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/Radio"; import { t } from "@lingui/macro"; @@ -74,140 +76,6 @@ export class FlowForm extends ModelForm { return flow; }; - renderDesignations(): TemplateResult { - return html` - - - - - - - - `; - } - - renderDeniedAction(): TemplateResult { - return html` - - `; - } - - renderAuthentication(): TemplateResult { - return html` - - - - - `; - } - - renderLayout(): TemplateResult { - return html` - - - - - - `; - } - renderForm(): TemplateResult { return html`
@@ -236,38 +104,6 @@ export class FlowForm extends ModelForm { />

${t`Visible in the URL.`}

- - - - - -

- ${t`Required authentication level for this flow.`} -

-
{ - ${this.renderDesignations()} + + + + + + +

${t`Decides what this Flow is used for. For example, the Authentication flow is redirect to when an un-authenticated user visits authentik.`}

- ${t`Decides the response when a policy denies access to this flow for a user.`} + ${t`Required authentication level for this flow.`}

- - - - ${until( - config().then((c) => { - if (c.capabilities.includes(CapabilitiesEnum.SaveMedia)) { - return html` + ${t`Behavior settings`} +
+ +
+ + +
+

+ ${t`Increases compatibility with password managers and mobile devices.`} +

+
+ + + +

+ ${t`Decides the response when a policy denies access to this flow for a user.`} +

+
+ + + + +
+ + + ${t`Appearance settings`} +
+ + + + ${until( + config().then((c) => { + if (c.capabilities.includes(CapabilitiesEnum.SaveMedia)) { + return html` + + ${this.instance?.background + ? html` +

+ ${t`Currently set to:`} + ${this.instance?.background} +

+ ` + : html``} +

+ ${t`Background shown during execution.`} +

+
+ ${this.instance?.background + ? html` + +
+ { + const target = + ev.target as HTMLInputElement; + this.clearBackground = target.checked; + }} + /> + +
+

+ ${t`Delete currently set background image.`} +

+
+ ` + : html``}`; + } + return html` - - ${this.instance?.background - ? html` -

- ${t`Currently set to:`} ${this.instance?.background} -

- ` - : html``} +

${t`Background shown during execution.`}

-
- ${this.instance?.background - ? html` - -
- { - const target = ev.target as HTMLInputElement; - this.clearBackground = target.checked; - }} - /> - -
-

- ${t`Delete currently set background image.`} -

-
- ` - : html``}`; - } - return html` - -

- ${t`Background shown during execution.`} -

-
`; - }), - )} - -
- - + `; + }), + )}
-

- ${t`Enable compatibility mode, increases compatibility with password managers on mobile devices.`} -

-
+ `; } } diff --git a/web/src/admin/flows/StageBindingForm.ts b/web/src/admin/flows/StageBindingForm.ts index a56147d63..a41248cb0 100644 --- a/web/src/admin/flows/StageBindingForm.ts +++ b/web/src/admin/flows/StageBindingForm.ts @@ -1,8 +1,9 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { first, groupBy } from "@goauthentik/common/utils"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/Radio"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; @@ -165,35 +166,34 @@ export class StageBindingForm extends ModelForm {

- + +

- ${t`Configure how the flow executor should handle an invalid response to a challenge.`} + ${t`Configure how the flow executor should handle an invalid response to a challenge given by this bound stage.`}

{ ?required=${true} name="policyEngineMode" > - + + `; } diff --git a/web/src/admin/groups/GroupForm.ts b/web/src/admin/groups/GroupForm.ts index f6fd1bc39..208042e29 100644 --- a/web/src/admin/groups/GroupForm.ts +++ b/web/src/admin/groups/GroupForm.ts @@ -2,11 +2,11 @@ import "@goauthentik/admin/groups/MemberSelectModal"; import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { first } from "@goauthentik/common/utils"; import "@goauthentik/elements/CodeMirror"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/chips/Chip"; import "@goauthentik/elements/chips/ChipGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/SearchSelect"; import { UserOption } from "@goauthentik/elements/user/utils"; import YAML from "yaml"; diff --git a/web/src/admin/outposts/OutpostForm.ts b/web/src/admin/outposts/OutpostForm.ts index 5974a4dd3..3af777f86 100644 --- a/web/src/admin/outposts/OutpostForm.ts +++ b/web/src/admin/outposts/OutpostForm.ts @@ -2,9 +2,9 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { docLink } from "@goauthentik/common/global"; import { groupBy } from "@goauthentik/common/utils"; import "@goauthentik/elements/CodeMirror"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/SearchSelect"; import YAML from "yaml"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/outposts/ServiceConnectionDockerForm.ts b/web/src/admin/outposts/ServiceConnectionDockerForm.ts index 8b9c1b3ab..b09c5a5a8 100644 --- a/web/src/admin/outposts/ServiceConnectionDockerForm.ts +++ b/web/src/admin/outposts/ServiceConnectionDockerForm.ts @@ -1,8 +1,8 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { first } from "@goauthentik/common/utils"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/policies/PolicyBindingForm.ts b/web/src/admin/policies/PolicyBindingForm.ts index cc2815b56..d31724535 100644 --- a/web/src/admin/policies/PolicyBindingForm.ts +++ b/web/src/admin/policies/PolicyBindingForm.ts @@ -1,8 +1,8 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { first, groupBy } from "@goauthentik/common/utils"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/policies/PolicyTestForm.ts b/web/src/admin/policies/PolicyTestForm.ts index be0ae106d..157369dfc 100644 --- a/web/src/admin/policies/PolicyTestForm.ts +++ b/web/src/admin/policies/PolicyTestForm.ts @@ -2,9 +2,9 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { first } from "@goauthentik/common/utils"; import "@goauthentik/elements/CodeMirror"; import { PFColor } from "@goauthentik/elements/Label"; -import "@goauthentik/elements/SearchSelect"; import { Form } from "@goauthentik/elements/forms/Form"; import "@goauthentik/elements/forms/HorizontalFormElement"; +import "@goauthentik/elements/forms/SearchSelect"; import YAML from "yaml"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/policies/event_matcher/EventMatcherPolicyForm.ts b/web/src/admin/policies/event_matcher/EventMatcherPolicyForm.ts index 83f883a02..08a1dccab 100644 --- a/web/src/admin/policies/event_matcher/EventMatcherPolicyForm.ts +++ b/web/src/admin/policies/event_matcher/EventMatcherPolicyForm.ts @@ -1,9 +1,9 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { first } from "@goauthentik/common/utils"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/property-mappings/PropertyMappingTestForm.ts b/web/src/admin/property-mappings/PropertyMappingTestForm.ts index 46c5544bb..16dfa6b2f 100644 --- a/web/src/admin/property-mappings/PropertyMappingTestForm.ts +++ b/web/src/admin/property-mappings/PropertyMappingTestForm.ts @@ -1,9 +1,9 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { first } from "@goauthentik/common/utils"; import "@goauthentik/elements/CodeMirror"; -import "@goauthentik/elements/SearchSelect"; import { Form } from "@goauthentik/elements/forms/Form"; import "@goauthentik/elements/forms/HorizontalFormElement"; +import "@goauthentik/elements/forms/SearchSelect"; import YAML from "yaml"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/providers/ldap/LDAPProviderForm.ts b/web/src/admin/providers/ldap/LDAPProviderForm.ts index 2a458cd8d..e9f1f20d8 100644 --- a/web/src/admin/providers/ldap/LDAPProviderForm.ts +++ b/web/src/admin/providers/ldap/LDAPProviderForm.ts @@ -1,9 +1,10 @@ import { DEFAULT_CONFIG, tenant } from "@goauthentik/common/api/config"; import { first } from "@goauthentik/common/utils"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/Radio"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; @@ -146,44 +147,49 @@ export class LDAPProviderFormPage extends ModelForm {

- + +

${t`Configure how the outpost authenticates requests.`}

- + +

${t`Configure how the outpost queries the core authentik server's users.`}

- ${t`Protocol settings`}
diff --git a/web/src/admin/providers/oauth2/OAuth2ProviderForm.ts b/web/src/admin/providers/oauth2/OAuth2ProviderForm.ts index 348092197..a3432b9cd 100644 --- a/web/src/admin/providers/oauth2/OAuth2ProviderForm.ts +++ b/web/src/admin/providers/oauth2/OAuth2ProviderForm.ts @@ -1,9 +1,10 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { first, randomString } from "@goauthentik/common/utils"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/Radio"; +import "@goauthentik/elements/forms/SearchSelect"; import "@goauthentik/elements/utils/TimeDeltaHelp"; import { t } from "@lingui/macro"; @@ -365,21 +366,21 @@ ${this.instance?.redirectUris} - + +

${t`Configure how the issuer field of the ID Token should be filled.`}

diff --git a/web/src/admin/providers/proxy/ProxyProviderForm.ts b/web/src/admin/providers/proxy/ProxyProviderForm.ts index 8ccf2724f..250e8dbba 100644 --- a/web/src/admin/providers/proxy/ProxyProviderForm.ts +++ b/web/src/admin/providers/proxy/ProxyProviderForm.ts @@ -1,9 +1,9 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { first } from "@goauthentik/common/utils"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/SearchSelect"; import "@goauthentik/elements/utils/TimeDeltaHelp"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/providers/saml/SAMLProviderForm.ts b/web/src/admin/providers/saml/SAMLProviderForm.ts index bfad8c32a..f4abddd0a 100644 --- a/web/src/admin/providers/saml/SAMLProviderForm.ts +++ b/web/src/admin/providers/saml/SAMLProviderForm.ts @@ -1,8 +1,9 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/Radio"; +import "@goauthentik/elements/forms/SearchSelect"; import "@goauthentik/elements/utils/TimeDeltaHelp"; import { t } from "@lingui/macro"; @@ -130,20 +131,21 @@ export class SAMLProviderFormPage extends ModelForm { ?required=${true} name="spBinding" > - + +

${t`Determines how authentik sends the response back to the Service Provider.`}

@@ -366,81 +368,62 @@ export class SAMLProviderFormPage extends ModelForm { ?required=${true} name="digestAlgorithm" > - + + - + +
diff --git a/web/src/admin/providers/saml/SAMLProviderImportForm.ts b/web/src/admin/providers/saml/SAMLProviderImportForm.ts index e7e70429c..a18e97d76 100644 --- a/web/src/admin/providers/saml/SAMLProviderImportForm.ts +++ b/web/src/admin/providers/saml/SAMLProviderImportForm.ts @@ -1,8 +1,8 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { SentryIgnoredError } from "@goauthentik/common/errors"; -import "@goauthentik/elements/SearchSelect"; import { Form } from "@goauthentik/elements/forms/Form"; import "@goauthentik/elements/forms/HorizontalFormElement"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/sources/ldap/LDAPSourceForm.ts b/web/src/admin/sources/ldap/LDAPSourceForm.ts index a3b3520df..4ff02b2cf 100644 --- a/web/src/admin/sources/ldap/LDAPSourceForm.ts +++ b/web/src/admin/sources/ldap/LDAPSourceForm.ts @@ -1,9 +1,9 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { first } from "@goauthentik/common/utils"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/sources/oauth/OAuthSourceForm.ts b/web/src/admin/sources/oauth/OAuthSourceForm.ts index 6003c1b13..03a601850 100644 --- a/web/src/admin/sources/oauth/OAuthSourceForm.ts +++ b/web/src/admin/sources/oauth/OAuthSourceForm.ts @@ -2,10 +2,10 @@ import { UserMatchingModeToLabel } from "@goauthentik/admin/sources/oauth/utils" import { DEFAULT_CONFIG, config } from "@goauthentik/common/api/config"; import { first } from "@goauthentik/common/utils"; import "@goauthentik/elements/CodeMirror"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/sources/plex/PlexSourceForm.ts b/web/src/admin/sources/plex/PlexSourceForm.ts index 45c1a8d36..cc393aa22 100644 --- a/web/src/admin/sources/plex/PlexSourceForm.ts +++ b/web/src/admin/sources/plex/PlexSourceForm.ts @@ -2,10 +2,10 @@ import { UserMatchingModeToLabel } from "@goauthentik/admin/sources/oauth/utils" import { DEFAULT_CONFIG, config } from "@goauthentik/common/api/config"; import { PlexAPIClient, PlexResource, popupCenterScreen } from "@goauthentik/common/helpers/plex"; import { first, randomString } from "@goauthentik/common/utils"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/sources/saml/SAMLSourceForm.ts b/web/src/admin/sources/saml/SAMLSourceForm.ts index feccca1e9..37126f062 100644 --- a/web/src/admin/sources/saml/SAMLSourceForm.ts +++ b/web/src/admin/sources/saml/SAMLSourceForm.ts @@ -4,6 +4,7 @@ import { first } from "@goauthentik/common/utils"; import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/Radio"; import "@goauthentik/elements/utils/TimeDeltaHelp"; import { t } from "@lingui/macro"; @@ -242,26 +243,26 @@ export class SAMLSourceForm extends ModelForm { ?required=${true} name="bindingType" > - + + { ?required=${true} name="digestAlgorithm" > - + + - + +
diff --git a/web/src/admin/stages/authenticator_duo/AuthenticatorDuoStageForm.ts b/web/src/admin/stages/authenticator_duo/AuthenticatorDuoStageForm.ts index 430988110..b3e001bb3 100644 --- a/web/src/admin/stages/authenticator_duo/AuthenticatorDuoStageForm.ts +++ b/web/src/admin/stages/authenticator_duo/AuthenticatorDuoStageForm.ts @@ -1,9 +1,9 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { first } from "@goauthentik/common/utils"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/stages/authenticator_duo/DuoDeviceImportForm.ts b/web/src/admin/stages/authenticator_duo/DuoDeviceImportForm.ts index 5dcbd566a..906ca1623 100644 --- a/web/src/admin/stages/authenticator_duo/DuoDeviceImportForm.ts +++ b/web/src/admin/stages/authenticator_duo/DuoDeviceImportForm.ts @@ -1,11 +1,11 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { MessageLevel } from "@goauthentik/common/messages"; import "@goauthentik/elements/Divider"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/buttons/ActionButton"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModalForm } from "@goauthentik/elements/forms/ModalForm"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/SearchSelect"; import { showMessage } from "@goauthentik/elements/messages/MessageContainer"; import { t } from "@lingui/macro"; diff --git a/web/src/admin/stages/authenticator_sms/AuthenticatorSMSStageForm.ts b/web/src/admin/stages/authenticator_sms/AuthenticatorSMSStageForm.ts index 9781fb02c..fa5972b9d 100644 --- a/web/src/admin/stages/authenticator_sms/AuthenticatorSMSStageForm.ts +++ b/web/src/admin/stages/authenticator_sms/AuthenticatorSMSStageForm.ts @@ -1,9 +1,10 @@ import { DEFAULT_CONFIG } from "@goauthentik/common/api/config"; import { first } from "@goauthentik/common/utils"; -import "@goauthentik/elements/SearchSelect"; import "@goauthentik/elements/forms/FormGroup"; import "@goauthentik/elements/forms/HorizontalFormElement"; import { ModelForm } from "@goauthentik/elements/forms/ModelForm"; +import "@goauthentik/elements/forms/Radio"; +import "@goauthentik/elements/forms/SearchSelect"; import { t } from "@lingui/macro"; @@ -106,20 +107,21 @@ export class AuthenticatorSMSStageForm extends ModelForm - + +
{ - + + -
+
{ + window.dispatchEvent( + new CustomEvent("scroll", { + bubbles: true, + }), + ); + }} + >