From 4d690dd0e9a0f2fe0ff5e7be9083b2320b12effa Mon Sep 17 00:00:00 2001 From: Yordis Prieto Date: Thu, 26 Sep 2024 22:50:55 -0400 Subject: [PATCH] chore: follow adrs --- apps/login/src/app/(login)/accounts/page.tsx | 4 ++-- apps/login/src/app/(login)/error.tsx | 8 +++---- .../(login)/idp/[provider]/failure/page.tsx | 2 +- .../(login)/idp/[provider]/success/page.tsx | 6 ++--- apps/login/src/app/(login)/idp/page.tsx | 8 +++---- apps/login/src/app/(login)/loginname/page.tsx | 10 ++++---- .../app/(login)/me/change-password/page.tsx | 8 +++---- apps/login/src/app/(login)/mfa/page.tsx | 10 ++++---- apps/login/src/app/(login)/mfa/set/page.tsx | 10 ++++---- .../src/app/(login)/otp/[method]/page.tsx | 8 +++---- .../src/app/(login)/otp/[method]/set/page.tsx | 16 ++++++------- apps/login/src/app/(login)/passkey/page.tsx | 8 +++---- .../src/app/(login)/passkey/set/page.tsx | 8 +++---- apps/login/src/app/(login)/password/page.tsx | 8 +++---- apps/login/src/app/(login)/register/page.tsx | 6 ++--- apps/login/src/app/(login)/signedin/page.tsx | 6 ++--- apps/login/src/app/(login)/u2f/page.tsx | 8 +++---- apps/login/src/app/(login)/u2f/set/page.tsx | 10 ++++---- apps/login/src/app/(login)/verify/page.tsx | 6 ++--- apps/login/src/app/layout.tsx | 12 ++++++---- apps/login/src/app/login/route.ts | 17 +++++++------- .../address-bar.tsx} | 6 ++--- .../{ui/Alert.tsx => components/alert.tsx} | 7 +++--- .../auth-methods.tsx} | 4 ++-- .../authentication-method-radio.tsx} | 2 +- .../{ui/Avatar.tsx => components/avatar.tsx} | 2 +- .../back-button.tsx} | 4 ++-- .../Boundary.tsx => components/boundary.tsx} | 8 +++---- .../{ui/Button.tsx => components/button.tsx} | 2 +- .../change-password-form.tsx} | 18 +++++++-------- .../Checkbox.tsx => components/checkbox.tsx} | 0 .../choose-second-factor-to-setup.tsx} | 4 ++-- .../choose-second-factor.tsx} | 4 ++-- .../copy-to-clipboard.tsx} | 2 +- .../default-tags.tsx} | 0 .../dynamic-theme.tsx} | 10 ++++---- .../external-link.tsx} | 3 ++- .../global-nav.tsx} | 6 ++--- .../idp-signin.tsx} | 6 ++--- .../src/{ui => components}/idps/classes.tsx | 4 ++-- .../idps/sign-in-with-apple.tsx} | 0 .../idps/sign-in-with-azure-ad.tsx} | 4 ++-- .../idps/sign-in-with-generic.tsx} | 0 .../idps/sign-in-with-github.tsx} | 0 .../idps/sign-in-with-gitlab.test.tsx} | 2 +- .../idps/sign-in-with-gitlab.tsx} | 0 .../idps/sign-in-with-google.test.tsx} | 2 +- .../idps/sign-in-with-google.tsx} | 0 .../{ui/Input.tsx => components/input.tsx} | 2 +- .../layout-providers.tsx} | 3 ++- .../LoginOTP.tsx => components/login-otp.tsx} | 12 +++++----- .../login-passkey.tsx} | 12 +++++----- .../src/{ui/Logo.tsx => components/logo.tsx} | 0 .../mobile-nav-toggle.tsx} | 23 ++++++++++++------- .../password-complexity.test.tsx} | 2 +- .../password-complexity.tsx} | 4 ++-- .../password-form.tsx} | 12 +++++----- .../privacy-policy-checkboxes.tsx} | 2 +- .../register-form-without-password.tsx} | 19 +++++++-------- .../register-passkey.tsx} | 12 +++++----- .../register-u2f.tsx} | 12 +++++----- .../self-service-menu.tsx} | 2 +- .../session-item.tsx} | 4 ++-- .../sessions-list.tsx} | 6 ++--- .../set-password-form.tsx} | 18 +++++++-------- .../sign-in-with-idp.tsx} | 22 +++++++++--------- .../skeleton-card.tsx} | 2 +- .../Spinner.tsx => components/spinner.tsx} | 0 .../state-badge.tsx} | 2 +- .../TabGroup.tsx => components/tab-group.tsx} | 2 +- .../src/{ui/Tab.tsx => components/tab.tsx} | 4 ++-- .../theme-provider.tsx} | 2 +- .../theme-wrapper.tsx} | 6 ++--- .../{ui/Theme.tsx => components/theme.tsx} | 4 +--- .../totp-register.tsx} | 12 +++++----- .../user-avatar.tsx} | 4 ++-- .../username-form.tsx} | 12 +++++----- .../verify-email-form.tsx} | 10 ++++---- .../zitadel-logo-dark.tsx} | 0 .../zitadel-logo-light.tsx} | 0 .../zitadel-logo.tsx} | 0 apps/login/src/{utils => helpers}/base64.ts | 0 apps/login/src/{utils => helpers}/colors.ts | 0 .../src/{utils => helpers}/validators.ts | 0 packages/eslint-config-zitadel/index.js | 5 ---- 85 files changed, 257 insertions(+), 254 deletions(-) rename apps/login/src/{ui/AddressBar.tsx => components/address-bar.tsx} (93%) rename apps/login/src/{ui/Alert.tsx => components/alert.tsx} (88%) rename apps/login/src/{ui/AuthMethods.tsx => components/auth-methods.tsx} (98%) rename apps/login/src/{ui/AuthenticationMethodRadio.tsx => components/authentication-method-radio.tsx} (98%) rename apps/login/src/{ui/Avatar.tsx => components/avatar.tsx} (97%) rename apps/login/src/{ui/BackButton.tsx => components/back-button.tsx} (73%) rename apps/login/src/{ui/Boundary.tsx => components/boundary.tsx} (95%) rename apps/login/src/{ui/Button.tsx => components/button.tsx} (99%) rename apps/login/src/{ui/ChangePasswordForm.tsx => components/change-password-form.tsx} (92%) rename apps/login/src/{ui/Checkbox.tsx => components/checkbox.tsx} (100%) rename apps/login/src/{ui/ChooseSecondFactorToSetup.tsx => components/choose-second-factor-to-setup.tsx} (95%) rename apps/login/src/{ui/ChooseSecondFactor.tsx => components/choose-second-factor.tsx} (93%) rename apps/login/src/{ui/CopyToClipboard.tsx => components/copy-to-clipboard.tsx} (93%) rename apps/login/src/{ui/DefaultTags.tsx => components/default-tags.tsx} (100%) rename apps/login/src/{ui/DynamicTheme.tsx => components/dynamic-theme.tsx} (85%) rename apps/login/src/{ui/ExternalLink.tsx => components/external-link.tsx} (87%) rename apps/login/src/{ui/GlobalNav.tsx => components/global-nav.tsx} (96%) rename apps/login/src/{ui/IdpSignin.tsx => components/idp-signin.tsx} (94%) rename apps/login/src/{ui => components}/idps/classes.tsx (86%) rename apps/login/src/{ui/idps/SignInWithApple.tsx => components/idps/sign-in-with-apple.tsx} (100%) rename apps/login/src/{ui/idps/SignInWithAzureAD.tsx => components/idps/sign-in-with-azure-ad.tsx} (91%) rename apps/login/src/{ui/idps/SignInWithGeneric.tsx => components/idps/sign-in-with-generic.tsx} (100%) rename apps/login/src/{ui/idps/SignInWithGithub.tsx => components/idps/sign-in-with-github.tsx} (100%) rename apps/login/src/{ui/idps/SignInWithGitlab.test.tsx => components/idps/sign-in-with-gitlab.test.tsx} (92%) rename apps/login/src/{ui/idps/SignInWithGitlab.tsx => components/idps/sign-in-with-gitlab.tsx} (100%) rename apps/login/src/{ui/idps/SignInWithGoogle.test.tsx => components/idps/sign-in-with-google.test.tsx} (92%) rename apps/login/src/{ui/idps/SignInWithGoogle.tsx => components/idps/sign-in-with-google.tsx} (100%) rename apps/login/src/{ui/Input.tsx => components/input.tsx} (99%) rename apps/login/src/{ui/LayoutProviders.tsx => components/layout-providers.tsx} (84%) rename apps/login/src/{ui/LoginOTP.tsx => components/login-otp.tsx} (96%) rename apps/login/src/{ui/LoginPasskey.tsx => components/login-passkey.tsx} (96%) rename apps/login/src/{ui/Logo.tsx => components/logo.tsx} (100%) rename apps/login/src/{ui/MobileNavToggle.tsx => components/mobile-nav-toggle.tsx} (75%) rename apps/login/src/{ui/PasswordComplexity.test.tsx => components/password-complexity.test.tsx} (97%) rename apps/login/src/{ui/PasswordComplexity.tsx => components/password-complexity.tsx} (97%) rename apps/login/src/{ui/PasswordForm.tsx => components/password-form.tsx} (96%) rename apps/login/src/{ui/PrivacyPolicyCheckboxes.tsx => components/privacy-policy-checkboxes.tsx} (98%) rename apps/login/src/{ui/RegisterFormWithoutPassword.tsx => components/register-form-without-password.tsx} (92%) rename apps/login/src/{ui/RegisterPasskey.tsx => components/register-passkey.tsx} (94%) rename apps/login/src/{ui/RegisterU2F.tsx => components/register-u2f.tsx} (95%) rename apps/login/src/{ui/SelfServiceMenu.tsx => components/self-service-menu.tsx} (92%) rename apps/login/src/{ui/SessionItem.tsx => components/session-item.tsx} (98%) rename apps/login/src/{ui/SessionsList.tsx => components/sessions-list.tsx} (84%) rename apps/login/src/{ui/SetPasswordForm.tsx => components/set-password-form.tsx} (94%) rename apps/login/src/{ui/SignInWithIDP.tsx => components/sign-in-with-idp.tsx} (90%) rename apps/login/src/{ui/SkeletonCard.tsx => components/skeleton-card.tsx} (95%) rename apps/login/src/{ui/Spinner.tsx => components/spinner.tsx} (100%) rename apps/login/src/{ui/StateBadge.tsx => components/state-badge.tsx} (98%) rename apps/login/src/{ui/TabGroup.tsx => components/tab-group.tsx} (89%) rename apps/login/src/{ui/Tab.tsx => components/tab.tsx} (90%) rename apps/login/src/{ui/ThemeProvider.tsx => components/theme-provider.tsx} (78%) rename apps/login/src/{ui/ThemeWrapper.tsx => components/theme-wrapper.tsx} (77%) rename apps/login/src/{ui/Theme.tsx => components/theme.tsx} (96%) rename apps/login/src/{ui/TOTPRegister.tsx => components/totp-register.tsx} (94%) rename apps/login/src/{ui/UserAvatar.tsx => components/user-avatar.tsx} (95%) rename apps/login/src/{ui/UsernameForm.tsx => components/username-form.tsx} (93%) rename apps/login/src/{ui/VerifyEmailForm.tsx => components/verify-email-form.tsx} (94%) rename apps/login/src/{ui/ZitadelLogoDark.tsx => components/zitadel-logo-dark.tsx} (100%) rename apps/login/src/{ui/ZitadelLogoLight.tsx => components/zitadel-logo-light.tsx} (100%) rename apps/login/src/{ui/ZitadelLogo.tsx => components/zitadel-logo.tsx} (100%) rename apps/login/src/{utils => helpers}/base64.ts (100%) rename apps/login/src/{utils => helpers}/colors.ts (100%) rename apps/login/src/{utils => helpers}/validators.ts (100%) diff --git a/apps/login/src/app/(login)/accounts/page.tsx b/apps/login/src/app/(login)/accounts/page.tsx index 8ba2e32d89b..fc50d2846bf 100644 --- a/apps/login/src/app/(login)/accounts/page.tsx +++ b/apps/login/src/app/(login)/accounts/page.tsx @@ -1,7 +1,7 @@ +import { DynamicTheme } from "@/components/dynamic-theme"; +import { SessionsList } from "@/components/sessions-list"; import { getAllSessionCookieIds } from "@/lib/cookies"; import { getBrandingSettings, listSessions } from "@/lib/zitadel"; -import DynamicTheme from "@/ui/DynamicTheme"; -import SessionsList from "@/ui/SessionsList"; import { UserPlusIcon } from "@heroicons/react/24/outline"; import Link from "next/link"; diff --git a/apps/login/src/app/(login)/error.tsx b/apps/login/src/app/(login)/error.tsx index 47b2e505ce7..0053f6ed71a 100644 --- a/apps/login/src/app/(login)/error.tsx +++ b/apps/login/src/app/(login)/error.tsx @@ -1,11 +1,11 @@ "use client"; -import { Boundary } from "@/ui/Boundary"; -import { Button } from "@/ui/Button"; -import React from "react"; +import { Boundary } from "@/components/boundary"; +import { Button } from "@/components/button"; +import { useEffect } from "react"; export default function Error({ error, reset }: any) { - React.useEffect(() => { + useEffect(() => { console.log("logging error:", error); }, [error]); diff --git a/apps/login/src/app/(login)/idp/[provider]/failure/page.tsx b/apps/login/src/app/(login)/idp/[provider]/failure/page.tsx index 2be2c54b019..237feebecc3 100644 --- a/apps/login/src/app/(login)/idp/[provider]/failure/page.tsx +++ b/apps/login/src/app/(login)/idp/[provider]/failure/page.tsx @@ -1,5 +1,5 @@ +import { DynamicTheme } from "@/components/dynamic-theme"; import { getBrandingSettings } from "@/lib/zitadel"; -import DynamicTheme from "@/ui/DynamicTheme"; import { IdentityProviderType } from "@zitadel/proto/zitadel/settings/v2/login_settings_pb"; // This configuration shows the given name in the respective IDP button as fallback diff --git a/apps/login/src/app/(login)/idp/[provider]/success/page.tsx b/apps/login/src/app/(login)/idp/[provider]/success/page.tsx index e8c4f9a2cc2..1c8039def60 100644 --- a/apps/login/src/app/(login)/idp/[provider]/success/page.tsx +++ b/apps/login/src/app/(login)/idp/[provider]/success/page.tsx @@ -1,3 +1,6 @@ +import { Alert, AlertType } from "@/components/alert"; +import { DynamicTheme } from "@/components/dynamic-theme"; +import { IdpSignin } from "@/components/idp-signin"; import { idpTypeToIdentityProviderType, PROVIDER_MAPPING } from "@/lib/idp"; import { addIDPLink, @@ -7,9 +10,6 @@ import { listUsers, retrieveIDPIntent, } from "@/lib/zitadel"; -import Alert, { AlertType } from "@/ui/Alert"; -import DynamicTheme from "@/ui/DynamicTheme"; -import IdpSignin from "@/ui/IdpSignin"; import { AutoLinkingOption } from "@zitadel/proto/zitadel/idp/v2/idp_pb"; export default async function Page({ diff --git a/apps/login/src/app/(login)/idp/page.tsx b/apps/login/src/app/(login)/idp/page.tsx index a41fad781d7..8a2d65f380a 100644 --- a/apps/login/src/app/(login)/idp/page.tsx +++ b/apps/login/src/app/(login)/idp/page.tsx @@ -1,6 +1,6 @@ +import { DynamicTheme } from "@/components/dynamic-theme"; +import { SignInWithIdp } from "@/components/sign-in-with-idp"; import { getBrandingSettings, settingsService } from "@/lib/zitadel"; -import DynamicTheme from "@/ui/DynamicTheme"; -import { SignInWithIDP } from "@/ui/SignInWithIDP"; import { makeReqCtx } from "@zitadel/client/v2"; function getIdentityProviders(orgId?: string) { @@ -36,12 +36,12 @@ export default async function Page({

{identityProviders && ( - + > )} diff --git a/apps/login/src/app/(login)/loginname/page.tsx b/apps/login/src/app/(login)/loginname/page.tsx index 7c87474cd15..e1847cbcf83 100644 --- a/apps/login/src/app/(login)/loginname/page.tsx +++ b/apps/login/src/app/(login)/loginname/page.tsx @@ -1,12 +1,12 @@ +import { DynamicTheme } from "@/components/dynamic-theme"; +import { SignInWithIdp } from "@/components/sign-in-with-idp"; +import { UsernameForm } from "@/components/username-form"; import { getBrandingSettings, getLegalAndSupportSettings, getLoginSettings, settingsService, } from "@/lib/zitadel"; -import DynamicTheme from "@/ui/DynamicTheme"; -import { SignInWithIDP } from "@/ui/SignInWithIDP"; -import UsernameForm from "@/ui/UsernameForm"; import { makeReqCtx } from "@zitadel/client/v2"; function getIdentityProviders(orgId?: string) { @@ -52,12 +52,12 @@ export default async function Page({ allowRegister={!!loginSettings?.allowRegister} > {legal && identityProviders && process.env.ZITADEL_API_URL && ( - + > )} diff --git a/apps/login/src/app/(login)/me/change-password/page.tsx b/apps/login/src/app/(login)/me/change-password/page.tsx index febd9e0b995..d87f184ac99 100644 --- a/apps/login/src/app/(login)/me/change-password/page.tsx +++ b/apps/login/src/app/(login)/me/change-password/page.tsx @@ -1,13 +1,13 @@ +import { Alert } from "@/components/alert"; +import { ChangePasswordForm } from "@/components/change-password-form"; +import { DynamicTheme } from "@/components/dynamic-theme"; +import { UserAvatar } from "@/components/user-avatar"; import { getSessionCookieById } from "@/lib/cookies"; import { getBrandingSettings, getPasswordComplexitySettings, getSession, } from "@/lib/zitadel"; -import Alert from "@/ui/Alert"; -import ChangePasswordForm from "@/ui/ChangePasswordForm"; -import DynamicTheme from "@/ui/DynamicTheme"; -import UserAvatar from "@/ui/UserAvatar"; export default async function Page({ searchParams, diff --git a/apps/login/src/app/(login)/mfa/page.tsx b/apps/login/src/app/(login)/mfa/page.tsx index f469fbf38b3..4186311fd39 100644 --- a/apps/login/src/app/(login)/mfa/page.tsx +++ b/apps/login/src/app/(login)/mfa/page.tsx @@ -1,3 +1,8 @@ +import { Alert } from "@/components/alert"; +import { BackButton } from "@/components/back-button"; +import { ChooseSecondFactor } from "@/components/choose-second-factor"; +import { DynamicTheme } from "@/components/dynamic-theme"; +import { UserAvatar } from "@/components/user-avatar"; import { getSessionCookieById } from "@/lib/cookies"; import { loadMostRecentSession } from "@/lib/session"; import { @@ -5,11 +10,6 @@ import { getSession, listAuthenticationMethodTypes, } from "@/lib/zitadel"; -import Alert from "@/ui/Alert"; -import BackButton from "@/ui/BackButton"; -import ChooseSecondFactor from "@/ui/ChooseSecondFactor"; -import DynamicTheme from "@/ui/DynamicTheme"; -import UserAvatar from "@/ui/UserAvatar"; export default async function Page({ searchParams, diff --git a/apps/login/src/app/(login)/mfa/set/page.tsx b/apps/login/src/app/(login)/mfa/set/page.tsx index 1e1c13fc9a3..5696c724bd1 100644 --- a/apps/login/src/app/(login)/mfa/set/page.tsx +++ b/apps/login/src/app/(login)/mfa/set/page.tsx @@ -1,3 +1,8 @@ +import { Alert } from "@/components/alert"; +import { BackButton } from "@/components/back-button"; +import { ChooseSecondFactorToSetup } from "@/components/choose-second-factor-to-setup"; +import { DynamicTheme } from "@/components/dynamic-theme"; +import { UserAvatar } from "@/components/user-avatar"; import { getSessionCookieById } from "@/lib/cookies"; import { loadMostRecentSession } from "@/lib/session"; import { @@ -7,11 +12,6 @@ import { getUserByID, listAuthenticationMethodTypes, } from "@/lib/zitadel"; -import Alert from "@/ui/Alert"; -import BackButton from "@/ui/BackButton"; -import ChooseSecondFactorToSetup from "@/ui/ChooseSecondFactorToSetup"; -import DynamicTheme from "@/ui/DynamicTheme"; -import UserAvatar from "@/ui/UserAvatar"; import { Timestamp, timestampDate } from "@zitadel/client"; import { Session } from "@zitadel/proto/zitadel/session/v2/session_pb"; diff --git a/apps/login/src/app/(login)/otp/[method]/page.tsx b/apps/login/src/app/(login)/otp/[method]/page.tsx index 55af60f66bb..db1efa2a003 100644 --- a/apps/login/src/app/(login)/otp/[method]/page.tsx +++ b/apps/login/src/app/(login)/otp/[method]/page.tsx @@ -1,9 +1,9 @@ +import { Alert } from "@/components/alert"; +import { DynamicTheme } from "@/components/dynamic-theme"; +import { LoginOTP } from "@/components/login-otp"; +import { UserAvatar } from "@/components/user-avatar"; import { loadMostRecentSession } from "@/lib/session"; import { getBrandingSettings } from "@/lib/zitadel"; -import Alert from "@/ui/Alert"; -import DynamicTheme from "@/ui/DynamicTheme"; -import LoginOTP from "@/ui/LoginOTP"; -import UserAvatar from "@/ui/UserAvatar"; export default async function Page({ searchParams, diff --git a/apps/login/src/app/(login)/otp/[method]/set/page.tsx b/apps/login/src/app/(login)/otp/[method]/set/page.tsx index ee657c5737a..3e1b4dca8b4 100644 --- a/apps/login/src/app/(login)/otp/[method]/set/page.tsx +++ b/apps/login/src/app/(login)/otp/[method]/set/page.tsx @@ -1,3 +1,9 @@ +import { Alert } from "@/components/alert"; +import { BackButton } from "@/components/back-button"; +import { Button, ButtonVariants } from "@/components/button"; +import { DynamicTheme } from "@/components/dynamic-theme"; +import { TotpRegister } from "@/components/totp-register"; +import { UserAvatar } from "@/components/user-avatar"; import { loadMostRecentSession } from "@/lib/session"; import { addOTPEmail, @@ -5,12 +11,6 @@ import { getBrandingSettings, registerTOTP, } from "@/lib/zitadel"; -import Alert from "@/ui/Alert"; -import BackButton from "@/ui/BackButton"; -import { Button, ButtonVariants } from "@/ui/Button"; -import DynamicTheme from "@/ui/DynamicTheme"; -import TOTPRegister from "@/ui/TOTPRegister"; -import UserAvatar from "@/ui/UserAvatar"; import { RegisterTOTPResponse } from "@zitadel/proto/zitadel/user/v2/user_service_pb"; import Link from "next/link"; import { redirect } from "next/navigation"; @@ -129,7 +129,7 @@ export default async function Page({ Scan the QR Code or navigate to the URL manually.

- + >
{" "} ) : ( diff --git a/apps/login/src/app/(login)/passkey/page.tsx b/apps/login/src/app/(login)/passkey/page.tsx index eec5389f709..6cb3e43b84b 100644 --- a/apps/login/src/app/(login)/passkey/page.tsx +++ b/apps/login/src/app/(login)/passkey/page.tsx @@ -1,10 +1,10 @@ +import { Alert } from "@/components/alert"; +import { DynamicTheme } from "@/components/dynamic-theme"; +import { LoginPasskey } from "@/components/login-passkey"; +import { UserAvatar } from "@/components/user-avatar"; import { getSessionCookieById } from "@/lib/cookies"; import { loadMostRecentSession } from "@/lib/session"; import { getBrandingSettings, getSession } from "@/lib/zitadel"; -import Alert from "@/ui/Alert"; -import DynamicTheme from "@/ui/DynamicTheme"; -import LoginPasskey from "@/ui/LoginPasskey"; -import UserAvatar from "@/ui/UserAvatar"; const title = "Authenticate with a passkey"; const description = diff --git a/apps/login/src/app/(login)/passkey/set/page.tsx b/apps/login/src/app/(login)/passkey/set/page.tsx index 15aaa6436a9..140f1d74e29 100644 --- a/apps/login/src/app/(login)/passkey/set/page.tsx +++ b/apps/login/src/app/(login)/passkey/set/page.tsx @@ -1,9 +1,9 @@ +import { Alert, AlertType } from "@/components/alert"; +import { DynamicTheme } from "@/components/dynamic-theme"; +import { RegisterPasskey } from "@/components/register-passkey"; +import { UserAvatar } from "@/components/user-avatar"; import { loadMostRecentSession } from "@/lib/session"; import { getBrandingSettings } from "@/lib/zitadel"; -import Alert, { AlertType } from "@/ui/Alert"; -import DynamicTheme from "@/ui/DynamicTheme"; -import RegisterPasskey from "@/ui/RegisterPasskey"; -import UserAvatar from "@/ui/UserAvatar"; export default async function Page({ searchParams, diff --git a/apps/login/src/app/(login)/password/page.tsx b/apps/login/src/app/(login)/password/page.tsx index 81e6ba240af..5da2bd6016a 100644 --- a/apps/login/src/app/(login)/password/page.tsx +++ b/apps/login/src/app/(login)/password/page.tsx @@ -1,9 +1,9 @@ +import { Alert } from "@/components/alert"; +import { DynamicTheme } from "@/components/dynamic-theme"; +import { PasswordForm } from "@/components/password-form"; +import { UserAvatar } from "@/components/user-avatar"; import { loadMostRecentSession } from "@/lib/session"; import { getBrandingSettings, getLoginSettings } from "@/lib/zitadel"; -import Alert from "@/ui/Alert"; -import DynamicTheme from "@/ui/DynamicTheme"; -import PasswordForm from "@/ui/PasswordForm"; -import UserAvatar from "@/ui/UserAvatar"; import { PasskeysType } from "@zitadel/proto/zitadel/settings/v2/login_settings_pb"; export default async function Page({ diff --git a/apps/login/src/app/(login)/register/page.tsx b/apps/login/src/app/(login)/register/page.tsx index 700173e9dc7..ab8a8eddfba 100644 --- a/apps/login/src/app/(login)/register/page.tsx +++ b/apps/login/src/app/(login)/register/page.tsx @@ -1,11 +1,11 @@ +import { DynamicTheme } from "@/components/dynamic-theme"; +import { RegisterFormWithoutPassword } from "@/components/register-form-without-password"; +import { SetPasswordForm } from "@/components/set-password-form"; import { getBrandingSettings, getLegalAndSupportSettings, getPasswordComplexitySettings, } from "@/lib/zitadel"; -import DynamicTheme from "@/ui/DynamicTheme"; -import RegisterFormWithoutPassword from "@/ui/RegisterFormWithoutPassword"; -import SetPasswordForm from "@/ui/SetPasswordForm"; export default async function Page({ searchParams, diff --git a/apps/login/src/app/(login)/signedin/page.tsx b/apps/login/src/app/(login)/signedin/page.tsx index 13715c2c02f..da65d60eccb 100644 --- a/apps/login/src/app/(login)/signedin/page.tsx +++ b/apps/login/src/app/(login)/signedin/page.tsx @@ -1,8 +1,8 @@ +import { DynamicTheme } from "@/components/dynamic-theme"; +import { SelfServiceMenu } from "@/components/self-service-menu"; +import { UserAvatar } from "@/components/user-avatar"; import { getMostRecentCookieWithLoginname } from "@/lib/cookies"; import { createCallback, getBrandingSettings, getSession } from "@/lib/zitadel"; -import DynamicTheme from "@/ui/DynamicTheme"; -import SelfServiceMenu from "@/ui/SelfServiceMenu"; -import UserAvatar from "@/ui/UserAvatar"; import { create } from "@zitadel/client"; import { CreateCallbackRequestSchema, diff --git a/apps/login/src/app/(login)/u2f/page.tsx b/apps/login/src/app/(login)/u2f/page.tsx index 0390f1c50f8..77a1e6e9a25 100644 --- a/apps/login/src/app/(login)/u2f/page.tsx +++ b/apps/login/src/app/(login)/u2f/page.tsx @@ -1,10 +1,10 @@ +import { Alert } from "@/components/alert"; +import { DynamicTheme } from "@/components/dynamic-theme"; +import { LoginPasskey } from "@/components/login-passkey"; +import { UserAvatar } from "@/components/user-avatar"; import { getSessionCookieById } from "@/lib/cookies"; import { loadMostRecentSession } from "@/lib/session"; import { getBrandingSettings, getSession } from "@/lib/zitadel"; -import Alert from "@/ui/Alert"; -import DynamicTheme from "@/ui/DynamicTheme"; -import LoginPasskey from "@/ui/LoginPasskey"; -import UserAvatar from "@/ui/UserAvatar"; export default async function Page({ searchParams, diff --git a/apps/login/src/app/(login)/u2f/set/page.tsx b/apps/login/src/app/(login)/u2f/set/page.tsx index ccd99dcb1bf..97120424e1c 100644 --- a/apps/login/src/app/(login)/u2f/set/page.tsx +++ b/apps/login/src/app/(login)/u2f/set/page.tsx @@ -1,9 +1,9 @@ +import { Alert } from "@/components/alert"; +import { DynamicTheme } from "@/components/dynamic-theme"; +import { RegisterU2f } from "@/components/register-u2f"; +import { UserAvatar } from "@/components/user-avatar"; import { loadMostRecentSession } from "@/lib/session"; import { getBrandingSettings } from "@/lib/zitadel"; -import Alert from "@/ui/Alert"; -import DynamicTheme from "@/ui/DynamicTheme"; -import RegisterU2F from "@/ui/RegisterU2F"; -import UserAvatar from "@/ui/UserAvatar"; export default async function Page({ searchParams, @@ -48,7 +48,7 @@ export default async function Page({ )} {sessionFactors?.id && ( - { const response = await listSessions( ids.filter((id: string | undefined) => !!id), diff --git a/apps/login/src/ui/AddressBar.tsx b/apps/login/src/components/address-bar.tsx similarity index 93% rename from apps/login/src/ui/AddressBar.tsx rename to apps/login/src/components/address-bar.tsx index e749bcb67a6..7e7bda6bd05 100644 --- a/apps/login/src/ui/AddressBar.tsx +++ b/apps/login/src/components/address-bar.tsx @@ -1,7 +1,7 @@ "use client"; import { usePathname } from "next/navigation"; -import React from "react"; +import { Fragment } from "react"; type Props = { domain: string; @@ -39,7 +39,7 @@ export function AddressBar({ domain }: Props) { .filter((s) => !!s) .map((segment) => { return ( - + / - + ); })} diff --git a/apps/login/src/ui/Alert.tsx b/apps/login/src/components/alert.tsx similarity index 88% rename from apps/login/src/ui/Alert.tsx rename to apps/login/src/components/alert.tsx index b6a093bab02..417e67934eb 100644 --- a/apps/login/src/ui/Alert.tsx +++ b/apps/login/src/components/alert.tsx @@ -2,10 +2,11 @@ import { ExclamationTriangleIcon, InformationCircleIcon, } from "@heroicons/react/24/outline"; -import clsx from "clsx"; +import { clsx } from "clsx"; +import { ReactNode } from "react"; type Props = { - children: React.ReactNode; + children: ReactNode; type?: AlertType; }; @@ -21,7 +22,7 @@ const red = const neutral = "border-divider-light dark:border-divider-dark bg-black/5 text-gray-600 dark:bg-white/10 dark:text-gray-200"; -export default function Alert({ children, type = AlertType.ALERT }: Props) { +export function Alert({ children, type = AlertType.ALERT }: Props) { return (
clsx( diff --git a/apps/login/src/ui/AuthenticationMethodRadio.tsx b/apps/login/src/components/authentication-method-radio.tsx similarity index 98% rename from apps/login/src/ui/AuthenticationMethodRadio.tsx rename to apps/login/src/components/authentication-method-radio.tsx index 1eb12ce6685..d5c52068ec7 100644 --- a/apps/login/src/ui/AuthenticationMethodRadio.tsx +++ b/apps/login/src/components/authentication-method-radio.tsx @@ -13,7 +13,7 @@ export const methods = [ }, ]; -export default function AuthenticationMethodRadio({ +export function AuthenticationMethodRadio({ selected, selectionChanged, }: { diff --git a/apps/login/src/ui/Avatar.tsx b/apps/login/src/components/avatar.tsx similarity index 97% rename from apps/login/src/ui/Avatar.tsx rename to apps/login/src/components/avatar.tsx index e42e6017af7..3f340e09b70 100644 --- a/apps/login/src/ui/Avatar.tsx +++ b/apps/login/src/components/avatar.tsx @@ -1,6 +1,6 @@ "use client"; -import { ColorShade, getColorHash } from "@/utils/colors"; +import { ColorShade, getColorHash } from "@/helpers/colors"; import { useTheme } from "next-themes"; import Image from "next/image"; diff --git a/apps/login/src/ui/BackButton.tsx b/apps/login/src/components/back-button.tsx similarity index 73% rename from apps/login/src/ui/BackButton.tsx rename to apps/login/src/components/back-button.tsx index b2f04ad5844..5697877bd58 100644 --- a/apps/login/src/ui/BackButton.tsx +++ b/apps/login/src/components/back-button.tsx @@ -1,9 +1,9 @@ "use client"; import { useRouter } from "next/navigation"; -import { Button, ButtonVariants } from "./Button"; +import { Button, ButtonVariants } from "./button"; -export default function BackButton() { +export function BackButton() { const router = useRouter(); return (