diff --git a/web/src/flow/providers/oauth2/DeviceCodeFinish.ts b/web/src/flow/providers/oauth2/DeviceCodeFinish.ts index c2f082b13..199b8aaaf 100644 --- a/web/src/flow/providers/oauth2/DeviceCodeFinish.ts +++ b/web/src/flow/providers/oauth2/DeviceCodeFinish.ts @@ -1,34 +1,14 @@ import "@goauthentik/elements/EmptyState"; import "@goauthentik/flow/FormStatic"; -import { BaseStage } from "@goauthentik/flow/stages/base"; +import { AccessDeniedStage } from "@goauthentik/flow/stages/access_denied/AccessDeniedStage"; import { t } from "@lingui/macro"; -import { CSSResult, TemplateResult, html } from "lit"; +import { TemplateResult, html } from "lit"; import { customElement } from "lit/decorators.js"; -import AKGlobal from "@goauthentik/common/styles/authentik.css"; -import PFForm from "@patternfly/patternfly/components/Form/form.css"; -import PFFormControl from "@patternfly/patternfly/components/FormControl/form-control.css"; -import PFList from "@patternfly/patternfly/components/List/list.css"; -import PFLogin from "@patternfly/patternfly/components/Login/login.css"; -import PFTitle from "@patternfly/patternfly/components/Title/title.css"; -import PFBase from "@patternfly/patternfly/patternfly-base.css"; - -import { - OAuthDeviceCodeFinishChallenge, - OAuthDeviceCodeFinishChallengeResponseRequest, -} from "@goauthentik/api"; - @customElement("ak-flow-provider-oauth2-code-finish") -export class DeviceCodeFinish extends BaseStage< - OAuthDeviceCodeFinishChallenge, - OAuthDeviceCodeFinishChallengeResponseRequest -> { - static get styles(): CSSResult[] { - return [PFBase, PFLogin, PFForm, PFList, PFFormControl, PFTitle, AKGlobal]; - } - +export class DeviceCodeFinish extends AccessDeniedStage { render(): TemplateResult { if (!this.challenge) { return html` `; @@ -39,10 +19,12 @@ export class DeviceCodeFinish extends BaseStage<
-

+

- ${t`You've successfully authenticated your device.`}

+

+ ${t`You've successfully authenticated your device.`} +


${t`You can close this tab now.`}

diff --git a/web/src/flow/stages/access_denied/AccessDeniedStage.ts b/web/src/flow/stages/access_denied/AccessDeniedStage.ts index db506fe44..cb74205f8 100644 --- a/web/src/flow/stages/access_denied/AccessDeniedStage.ts +++ b/web/src/flow/stages/access_denied/AccessDeniedStage.ts @@ -4,7 +4,7 @@ import { BaseStage } from "@goauthentik/flow/stages/base"; import { t } from "@lingui/macro"; -import { CSSResult, TemplateResult, html } from "lit"; +import { CSSResult, TemplateResult, css, html } from "lit"; import { customElement } from "lit/decorators.js"; import { ifDefined } from "lit/directives/if-defined.js"; @@ -24,7 +24,30 @@ export class AccessDeniedStage extends BaseStage< FlowChallengeResponseRequest > { static get styles(): CSSResult[] { - return [PFBase, PFLogin, PFForm, PFList, PFFormControl, PFTitle, AKGlobal]; + return [ + PFBase, + PFLogin, + PFForm, + PFList, + PFFormControl, + PFTitle, + AKGlobal, + css` + .big-icon { + display: flex; + width: 100%; + justify-content: center; + height: 5rem; + } + .big-icon i { + font-size: 3rem; + } + .reason { + margin-bottom: 1rem; + text-align: center; + } + `, + ]; } render(): TemplateResult { @@ -48,10 +71,10 @@ export class AccessDeniedStage extends BaseStage<
-

+

- ${t`Request has been denied.`}

+

${t`Request has been denied.`}

${this.challenge?.errorMessage && html`

${this.challenge.errorMessage}

`}