From 97e6aaca65859c53fa72bbbe1a2142711bc13814 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9D=D0=B8=D0=BA=D0=B8=D1=82=D0=B8=D0=BD=20=D0=94=D0=BC?= =?UTF-8?q?=D0=B8=D1=82=D1=80=D0=B8=D0=B9=20=D0=90=D0=BB=D0=B5=D0=BA=D1=81?= =?UTF-8?q?=D0=B0=D0=BD=D0=B4=D1=80=D0=BE=D0=B2=D0=B8=D1=87?= Date: Tue, 28 Dec 2021 00:08:25 +0300 Subject: [PATCH] feat(*): added login-update-password --- .../generateFtl/generateFtl.ts | 1 + src/lib/components/KcApp.tsx | 3 + src/lib/components/LoginUpdatePassword.tsx | 117 ++++++++++++++++++ src/lib/getKcContext/KcContextBase.ts | 6 + .../kcContextMocks/kcContextMocks.ts | 5 + 5 files changed, 132 insertions(+) create mode 100644 src/lib/components/LoginUpdatePassword.tsx diff --git a/src/bin/build-keycloak-theme/generateFtl/generateFtl.ts b/src/bin/build-keycloak-theme/generateFtl/generateFtl.ts index a2e17203b..233bfd6ac 100644 --- a/src/bin/build-keycloak-theme/generateFtl/generateFtl.ts +++ b/src/bin/build-keycloak-theme/generateFtl/generateFtl.ts @@ -16,6 +16,7 @@ export const pageIds = [ "terms.ftl", "login-otp.ftl", "login-update-profile.ftl", + "login-update-password.ftl", "login-idp-link-confirm.ftl", ] as const; diff --git a/src/lib/components/KcApp.tsx b/src/lib/components/KcApp.tsx index 91190ebac..998b852d7 100644 --- a/src/lib/components/KcApp.tsx +++ b/src/lib/components/KcApp.tsx @@ -10,6 +10,7 @@ import { LoginResetPassword } from "./LoginResetPassword"; import { LoginVerifyEmail } from "./LoginVerifyEmail"; import { Terms } from "./Terms"; import { LoginOtp } from "./LoginOtp"; +import { LoginUpdatePassword } from "./LoginUpdatePassword"; import { LoginUpdateProfile } from "./LoginUpdateProfile"; import { LoginIdpLinkConfirm } from "./LoginIdpLinkConfirm"; @@ -33,6 +34,8 @@ export const KcApp = memo(({ kcContext, ...props }: { kcContext: KcContextBase } return ; case "login-otp.ftl": return ; + case "login-update-password.ftl": + return ; case "login-update-profile.ftl": return ; case "login-idp-link-confirm.ftl": diff --git a/src/lib/components/LoginUpdatePassword.tsx b/src/lib/components/LoginUpdatePassword.tsx new file mode 100644 index 000000000..379e2e6d3 --- /dev/null +++ b/src/lib/components/LoginUpdatePassword.tsx @@ -0,0 +1,117 @@ +import { memo } from "react"; +import { Template } from "./Template"; +import type { KcProps } from "./KcProps"; +import type { KcContextBase } from "../getKcContext/KcContextBase"; +import { useKcMessage } from "../i18n/useKcMessage"; +import { useCssAndCx } from "tss-react"; + +export const LoginUpdatePassword = memo(({ kcContext, ...props }: { kcContext: KcContextBase.LoginUpdatePassword } & KcProps) => { + const { cx } = useCssAndCx(); + + const { msg, msgStr } = useKcMessage(); + + const { url, messagesPerField, isAppInitiatedAction, username } = kcContext; + + return ( +