Skip to content
Merged
Show file tree
Hide file tree
Changes from 57 commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
89dad07
web: Add InvalidationFlow to Radius Provider dialogues
kensternberg-authentik Oct 23, 2024
914993a
Merge branch 'main' into dev
kensternberg-authentik Oct 30, 2024
f25a9c6
Merge branch 'main' into dev
kensternberg-authentik Nov 4, 2024
e0d5df8
Merge branch 'main' into dev
kensternberg-authentik Nov 4, 2024
7579090
Merge branch 'main' into dev
kensternberg-authentik Nov 4, 2024
3244276
Merge branch 'main' into dev
kensternberg-authentik Nov 7, 2024
5cc2c0f
Merge branch 'main' into dev
kensternberg-authentik Nov 7, 2024
831797b
Merge branch 'main' into dev
kensternberg-authentik Nov 12, 2024
36b10b4
:wqge branch 'main' into dev
kensternberg-authentik Nov 14, 2024
e7527c5
Merge branch 'main' into dev
kensternberg-authentik Nov 15, 2024
9809b94
Merge branch 'main' into dev
kensternberg-authentik Nov 20, 2024
67aed3e
Merge branch 'main' into dev
kensternberg-authentik Nov 22, 2024
5b8d86b
Merge branch 'main' into dev
kensternberg-authentik Nov 25, 2024
67b3274
Merge branch 'main' into dev
kensternberg-authentik Nov 25, 2024
20b66f8
Merge branch 'main' into dev
kensternberg-authentik Nov 26, 2024
fe9e452
Merge branch 'main' into dev
kensternberg-authentik Dec 2, 2024
9cc440e
Merge branch 'main' into dev
kensternberg-authentik Dec 5, 2024
7bb6a3d
Merge branch 'main' into dev
kensternberg-authentik Dec 9, 2024
1dcf910
Merge branch 'main' into dev
kensternberg-authentik Dec 10, 2024
6d7fc94
Merge branch 'main' into dev
kensternberg-authentik Dec 26, 2024
dddde09
This (temporary) change is needed to prevent the unit tests from fail…
kensternberg-authentik Dec 26, 2024
f6afb59
Revert "This (temporary) change is needed to prevent the unit tests f…
kensternberg-authentik Dec 26, 2024
bd0e81b
Merge branch 'main' into dev
kensternberg-authentik Jan 2, 2025
be349e2
Merge branch 'main' into dev
kensternberg-authentik Jan 3, 2025
854427e
Merge branch 'main' into dev
kensternberg-authentik Jan 6, 2025
7d972ec
Merge branch 'main' into dev
kensternberg-authentik Jan 8, 2025
50d2f69
Merge branch 'main' into dev
kensternberg-authentik Jan 11, 2025
25eefb7
Merge branch 'main' into dev
kensternberg-authentik Jan 21, 2025
457b61c
Merge branch 'main' into dev
kensternberg-authentik Jan 22, 2025
e338bef
Merge branch 'main' into dev
kensternberg-authentik Feb 13, 2025
675e60b
Merge branch 'main' into dev
kensternberg-authentik Feb 13, 2025
2279768
Merge branch 'main' into dev
kensternberg-authentik Feb 14, 2025
ffbe8fb
Merge branch 'main' into dev
kensternberg-authentik Feb 17, 2025
19f25d5
Merge branch 'main' into dev
kensternberg-authentik Feb 19, 2025
811e794
Merge branch 'main' into dev
kensternberg-authentik Mar 4, 2025
75c61af
Merge branch 'main' into dev
kensternberg-authentik Mar 5, 2025
aa20df5
Merge branch 'main' into dev
kensternberg-authentik Mar 6, 2025
5fe344f
Merge branch 'main' into dev
kensternberg-authentik Mar 7, 2025
6838736
Merge branch 'main' into dev
kensternberg-authentik Mar 11, 2025
0055882
Merge branch 'main' into dev
kensternberg-authentik Mar 11, 2025
9251e60
Merge branch 'main' into dev
kensternberg-authentik Mar 11, 2025
cd78fc0
Merge branch 'main' into dev
kensternberg-authentik Mar 14, 2025
fa994ae
Merge branch 'main' into dev
kensternberg-authentik Mar 17, 2025
61dbc93
Merge branch 'main' into dev
kensternberg-authentik Mar 24, 2025
f63b3c2
Merge branch 'main' into dev
kensternberg-authentik Mar 24, 2025
9cf551b
Merge branch 'main' into dev
kensternberg-authentik Apr 9, 2025
9a6ca4f
Merge branch 'main' into dev
kensternberg-authentik Apr 15, 2025
8b95840
Merge branch 'main' into dev
kensternberg-authentik Apr 22, 2025
baa64bc
Merge branch 'main' into dev
kensternberg-authentik Apr 23, 2025
518e9e1
Merge branch 'main' into dev
kensternberg-authentik Apr 24, 2025
5da3493
Merge branch 'main' into dev
kensternberg-authentik Apr 25, 2025
136e59c
Merge branch 'main' into dev
kensternberg-authentik May 2, 2025
cddc13f
Merge branch 'main' into dev
kensternberg-authentik May 5, 2025
38c4701
Merge branch 'main' into dev
kensternberg-authentik May 14, 2025
e340268
Merge branch 'main' into dev
kensternberg-authentik May 22, 2025
c8a0365
web/standards: use attribute naming scheme for attributes
kensternberg-authentik May 22, 2025
46244d2
web/maintenance: remove `writeOnly` hacks from Form and HorizontalFor…
kensternberg-authentik May 22, 2025
a6e1661
Found a few small things, like a missing import that might have broke…
kensternberg-authentik May 22, 2025
0a1ce4c
Merge branch 'main' into web/forms/remove-write-only-hacks
kensternberg-authentik Jun 6, 2025
bfde39a
web/admin: Update `private-text` field to pass new linting requirement.
kensternberg-authentik Jun 6, 2025
4652ca7
Merge branch 'main' into web/forms/remove-write-only-hacks
kensternberg-authentik Jun 6, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions web/src/admin/admin-settings/AdminSettingsForm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ export class AdminSettingsForm extends Form<SettingsRequest> {
name="avatars"
label=${msg("Avatars")}
value="${ifDefined(this._settings?.avatars)}"
inputHint="code"
input-hint="code"
.bighelp=${html`
<p class="pf-c-form__helper-text">
${msg(
Expand Down Expand Up @@ -159,7 +159,7 @@ export class AdminSettingsForm extends Form<SettingsRequest> {
<ak-text-input
name="eventRetention"
label=${msg("Event retention")}
inputHint="code"
input-hint="code"
required
value="${ifDefined(this._settings?.eventRetention)}"
.bighelp=${html`<p class="pf-c-form__helper-text">
Expand Down Expand Up @@ -237,7 +237,7 @@ export class AdminSettingsForm extends Form<SettingsRequest> {
<ak-text-input
name="defaultTokenDuration"
label=${msg("Default token duration")}
inputHint="code"
input-hint="code"
required
value="${ifDefined(this._settings?.defaultTokenDuration)}"
.bighelp=${html`<p class="pf-c-form__helper-text">
Expand Down
6 changes: 3 additions & 3 deletions web/src/admin/applications/ApplicationForm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ export class ApplicationForm extends WithCapabilitiesConfig(ModelForm<Applicatio
label=${msg("Slug")}
required
help=${msg("Internal application name used in URLs.")}
inputHint="code"
input-hint="code"
></ak-text-input>
<ak-text-input
name="group"
Expand All @@ -148,7 +148,7 @@ export class ApplicationForm extends WithCapabilitiesConfig(ModelForm<Applicatio
help=${msg(
"Optionally enter a group name. Applications with identical groups are shown grouped together.",
)}
inputHint="code"
input-hint="code"
></ak-text-input>
<ak-provider-search-input
name="provider"
Expand Down Expand Up @@ -189,7 +189,7 @@ export class ApplicationForm extends WithCapabilitiesConfig(ModelForm<Applicatio
help=${msg(
"If left empty, authentik will try to extract the launch URL based on the selected provider.",
)}
inputHint="code"
input-hint="code"
></ak-text-input>
<ak-switch-input
name="openInNewTab"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ export class ApplicationWizardApplicationStep extends ApplicationWizardStep {
?invalid=${errors.slug ?? this.errors.has("slug")}
.errorMessages=${this.errorMessages("slug")}
help=${msg("Internal application name used in URLs.")}
inputHint="code"
input-hint="code"
></ak-slug-input>
<ak-text-input
name="group"
Expand All @@ -138,7 +138,7 @@ export class ApplicationWizardApplicationStep extends ApplicationWizardStep {
help=${msg(
"Optionally enter a group name. Applications with identical groups are shown grouped together.",
)}
inputHint="code"
input-hint="code"
></ak-text-input>
<ak-radio-input
label=${msg("Policy engine mode")}
Expand All @@ -161,7 +161,7 @@ export class ApplicationWizardApplicationStep extends ApplicationWizardStep {
help=${msg(
"If left empty, authentik will try to extract the launch URL based on the selected provider.",
)}
inputHint="code"
input-hint="code"
></ak-text-input>
<ak-switch-input
name="openInNewTab"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ export class ApplicationWizardRACProviderForm extends ApplicationWizardProviderF
help=${msg(
"Determines how long a session lasts before being disconnected and requiring re-authorization.",
)}
inputHint="code"
input-hint="code"
></ak-text-input>

<ak-form-group .expanded=${true}>
Expand Down
44 changes: 16 additions & 28 deletions web/src/admin/crypto/CertificateKeyPairForm.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { DEFAULT_CONFIG } from "@goauthentik/common/api/config";
import "@goauthentik/components/ak-private-textarea-input.js";
import "@goauthentik/elements/CodeMirror";
import "@goauthentik/elements/forms/HorizontalFormElement";
import { ModelForm } from "@goauthentik/elements/forms/ModelForm";
Expand Down Expand Up @@ -45,37 +46,24 @@ export class CertificateKeyPairForm extends ModelForm<CertificateKeyPair, string
required
/>
</ak-form-element-horizontal>
<ak-form-element-horizontal
<ak-private-textarea-input
label=${msg("Certificate")}
name="certificateData"
?writeOnly=${this.instance !== undefined}
?required=${true}
>
<textarea
autocomplete="off"
spellcheck="false"
class="pf-c-form-control pf-m-monospace"
placeholder="-----BEGIN CERTIFICATE-----"
required
></textarea>
<p class="pf-c-form__helper-text">${msg("PEM-encoded Certificate data.")}</p>
</ak-form-element-horizontal>
<ak-form-element-horizontal
name="keyData"
?writeOnly=${this.instance !== undefined}
input-hint="code"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

where did this input-hint come from?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Many moons ago when we received customer feedback that certain inputs be in a monospace font for secret keys and such.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

input-hint="code" activates these three features in ak-private-textarea-input:

                    autocomplete="off"
                    spellcheck="false"
                    class="pf-c-form-control pf-m-monospace"

... which you can clearly see in the textarea we are replacing.

Since those are the common settings you, Jens, use when making a textarea work as a code space. Having an attribute instead of remembering the same three lines a dozen or so times seemed parsimonious.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Sigh... that comment had been "pending" for 2 weeks.)

placeholder="-----BEGIN CERTIFICATE-----"
required
?revealed=${this.instance === undefined}
help=${msg("PEM-encoded Certificate data.")}
></ak-private-textarea-input>
<ak-private-textarea-input
label=${msg("Private Key")}
>
<textarea
autocomplete="off"
class="pf-c-form-control pf-m-monospace"
spellcheck="false"
></textarea>
<p class="pf-c-form__helper-text">
${msg(
"Optional Private Key. If this is set, you can use this keypair for encryption.",
)}
</p>
</ak-form-element-horizontal>`;
name="keyData"
input-hint="code"
?revealed=${this.instance === undefined}
help=${msg(
"Optional Private Key. If this is set, you can use this keypair for encryption.",
)}
></ak-private-textarea-input>`;
}
}

Expand Down
13 changes: 5 additions & 8 deletions web/src/admin/enterprise/EnterpriseLicenseForm.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { DEFAULT_CONFIG } from "@goauthentik/common/api/config";
import { EVENT_REFRESH_ENTERPRISE } from "@goauthentik/common/constants";
import "@goauthentik/components/ak-private-textarea-input.js";
import "@goauthentik/elements/CodeMirror";
import "@goauthentik/elements/forms/HorizontalFormElement";
import { ModelForm } from "@goauthentik/elements/forms/ModelForm";
Expand Down Expand Up @@ -61,17 +62,13 @@ export class EnterpriseLicenseForm extends ModelForm<License, string> {
value="${ifDefined(this.installID)}"
/>
</ak-form-element-horizontal>
<ak-form-element-horizontal
<ak-private-textarea-input
name="key"
?writeOnly=${this.instance !== undefined}
?revealed=${this.instance === undefined}
label=${msg("License key")}
input-hint="code"
>
<textarea
class="pf-c-form-control pf-m-monospace"
autocomplete="off"
spellcheck="false"
></textarea>
</ak-form-element-horizontal>`;
</ak-private-textarea-input>`;
}
}

Expand Down
4 changes: 2 additions & 2 deletions web/src/admin/providers/ldap/LDAPProviderFormForm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ export function renderForm(
label=${msg("Base DN")}
required
value="${provider?.baseDn ?? "DC=ldap,DC=goauthentik,DC=io"}"
inputHint="code"
input-hint="code"
.errorMessages=${errors?.baseDn ?? []}
help=${msg(
"LDAP DN under which bind requests and search requests can be made.",
Expand All @@ -154,7 +154,7 @@ export function renderForm(
value="${provider?.tlsServerName ?? ""}"
.errorMessages=${errors?.tlsServerName ?? []}
help=${tlsServerNameHelp}
inputHint="code"
input-hint="code"
></ak-text-input>

<ak-number-input
Expand Down
10 changes: 5 additions & 5 deletions web/src/admin/providers/oauth2/OAuth2ProviderFormForm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -163,14 +163,14 @@ export function renderForm(
label=${msg("Client ID")}
value="${provider?.clientId ?? randomString(40, ascii_letters + digits)}"
required
inputHint="code"
input-hint="code"
>
</ak-text-input>
<ak-text-input
name="clientSecret"
label=${msg("Client Secret")}
value="${provider?.clientSecret ?? randomString(128, ascii_letters + digits)}"
inputHint="code"
input-hint="code"
?hidden=${!showClientSecret}
>
</ak-text-input>
Expand Down Expand Up @@ -252,7 +252,7 @@ export function renderForm(
<ak-text-input
name="accessCodeValidity"
label=${msg("Access code validity")}
inputHint="code"
input-hint="code"
required
value="${provider?.accessCodeValidity ?? "minutes=1"}"
.bighelp=${html`<p class="pf-c-form__helper-text">
Expand All @@ -265,7 +265,7 @@ export function renderForm(
name="accessTokenValidity"
label=${msg("Access Token validity")}
value="${provider?.accessTokenValidity ?? "minutes=5"}"
inputHint="code"
input-hint="code"
required
.bighelp=${html` <p class="pf-c-form__helper-text">
${msg("Configure how long access tokens are valid for.")}
Expand All @@ -278,7 +278,7 @@ export function renderForm(
name="refreshTokenValidity"
label=${msg("Refresh Token validity")}
value="${provider?.refreshTokenValidity ?? "days=30"}"
inputHint="code"
input-hint="code"
?required=${true}
.bighelp=${html` <p class="pf-c-form__helper-text">
${msg("Configure how long refresh tokens are valid for.")}
Expand Down
12 changes: 6 additions & 6 deletions web/src/admin/providers/proxy/ProxyProviderFormForm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ function renderHttpBasic(provider: Partial<ProxyProvider>) {
help=${msg(
"User/Group Attribute used for the user part of the HTTP-Basic Header. If not set, the user's Email address is used.",
)}
inputHint="code"
input-hint="code"
>
</ak-text-input>

Expand All @@ -57,7 +57,7 @@ function renderHttpBasic(provider: Partial<ProxyProvider>) {
label=${msg("HTTP-Basic Password Key")}
value="${ifDefined(provider?.basicAuthPasswordAttribute)}"
help=${msg("User/Group Attribute used for the password part of the HTTP-Basic Header.")}
inputHint="code"
input-hint="code"
>
</ak-text-input>`;
}
Expand Down Expand Up @@ -90,7 +90,7 @@ function renderProxySettings(provider: Partial<ProxyProvider>, errors?: Validati
help=${msg(
"The external URL you'll access the application at. Include any non-standard port.",
)}
inputHint="code"
input-hint="code"
></ak-text-input>
<ak-text-input
name="internalHost"
Expand All @@ -99,7 +99,7 @@ function renderProxySettings(provider: Partial<ProxyProvider>, errors?: Validati
required
.errorMessages=${errors?.internalHost ?? []}
help=${msg("Upstream host that the requests are forwarded to.")}
inputHint="code"
input-hint="code"
></ak-text-input>

<ak-switch-input
Expand All @@ -126,7 +126,7 @@ function renderForwardSingleSettings(provider: Partial<ProxyProvider>, errors?:
help=${msg(
"The external URL you'll access the application at. Include any non-standard port.",
)}
inputHint="code"
input-hint="code"
></ak-text-input>`;
}

Expand Down Expand Up @@ -225,7 +225,7 @@ export function renderForm(
.errorMessages=${errors?.accessTokenValidity ?? []}
required
.help=${msg("Configure how long tokens are valid for.")}
inputHint="code"
input-hint="code"
></ak-text-input>

<ak-form-group>
Expand Down
4 changes: 2 additions & 2 deletions web/src/admin/providers/radius/RadiusProviderFormForm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ export function renderForm(
.errorMessages=${errors?.sharedSecret ?? []}
value=${provider?.sharedSecret ?? randomString(128, ascii_letters + digits)}
required
inputHint="code"
input-hint="code"
></ak-text-input>
<ak-text-input
name="clientNetworks"
Expand All @@ -89,7 +89,7 @@ export function renderForm(
.errorMessages=${errors?.clientNetworks ?? []}
required
help=${clientNetworksHelp}
inputHint="code"
input-hint="code"
></ak-text-input>
<ak-form-element-horizontal
label=${msg("Property mappings")}
Expand Down
4 changes: 2 additions & 2 deletions web/src/admin/providers/scim/SCIMProviderFormForm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ export function renderForm(provider?: Partial<SCIMProvider>, errors: ValidationE
.errorMessages=${errors?.url ?? []}
required
help=${msg("SCIM base url, usually ends in /v2.")}
inputHint="code"
input-hint="code"
></ak-text-input>

<ak-switch-input
Expand All @@ -59,7 +59,7 @@ export function renderForm(provider?: Partial<SCIMProvider>, errors: ValidationE
help=${msg(
"Token to authenticate with. Currently only bearer authentication is supported.",
)}
inputHint="code"
input-hint="code"
></ak-text-input>
<ak-radio-input
name="compatibilityMode"
Expand Down
Loading