From 2c1cf66c6bc30fd73e6ac06aa715e29b0fb19e4d Mon Sep 17 00:00:00 2001 From: simeng-li Date: Fri, 17 Nov 2023 15:25:30 +0800 Subject: [PATCH] refactor(experience): reorg hooks location (#4877) reorg hooks location --- .../src/containers/SocialLinkAccount/index.tsx | 2 +- .../use-social-link-related-user.ts | 7 +++---- .../src/containers/SocialSignInList/index.tsx | 2 +- .../SocialSignInList}/use-social.ts | 5 ++--- .../experience/src/pages/Callback/index.tsx | 2 +- .../Callback}/use-social-callback-handler.ts | 0 .../src/pages/SocialLanding/index.tsx | 2 +- .../use-social-landing-handler.ts | 3 +-- .../pages/SocialSignInCallback/SingleSignOn.tsx | 4 ++-- .../pages/SocialSignInCallback/SocialSignIn.tsx | 4 ++-- .../use-single-sign-on-listener.ts | 7 +++---- .../use-social-sign-in-listener.ts | 17 ++++++++--------- 12 files changed, 25 insertions(+), 30 deletions(-) rename packages/experience/src/{hooks => containers/SocialLinkAccount}/use-social-link-related-user.ts (82%) rename packages/experience/src/{hooks => containers/SocialSignInList}/use-social.ts (95%) rename packages/experience/src/{hooks => pages/Callback}/use-social-callback-handler.ts (100%) rename packages/experience/src/{hooks => pages/SocialLanding}/use-social-landing-handler.ts (96%) rename packages/experience/src/{hooks => pages/SocialSignInCallback}/use-single-sign-on-listener.ts (94%) rename packages/experience/src/{hooks => pages/SocialSignInCallback}/use-social-sign-in-listener.ts (89%) diff --git a/packages/experience/src/containers/SocialLinkAccount/index.tsx b/packages/experience/src/containers/SocialLinkAccount/index.tsx index 8e771f738..ebcce5e69 100644 --- a/packages/experience/src/containers/SocialLinkAccount/index.tsx +++ b/packages/experience/src/containers/SocialLinkAccount/index.tsx @@ -7,12 +7,12 @@ import Button from '@/components/Button'; import Divider from '@/components/Divider'; import DynamicT from '@/components/DynamicT'; import { useSieMethods } from '@/hooks/use-sie'; -import useBindSocialRelatedUser from '@/hooks/use-social-link-related-user'; import useSocialRegister from '@/hooks/use-social-register'; import type { SocialRelatedUserInfo } from '@/types/guard'; import { maskEmail, maskPhone } from '@/utils/format'; import * as styles from './index.module.scss'; +import useBindSocialRelatedUser from './use-social-link-related-user'; type Props = { className?: string; diff --git a/packages/experience/src/hooks/use-social-link-related-user.ts b/packages/experience/src/containers/SocialLinkAccount/use-social-link-related-user.ts similarity index 82% rename from packages/experience/src/hooks/use-social-link-related-user.ts rename to packages/experience/src/containers/SocialLinkAccount/use-social-link-related-user.ts index 79d7eecb9..31cada941 100644 --- a/packages/experience/src/hooks/use-social-link-related-user.ts +++ b/packages/experience/src/containers/SocialLinkAccount/use-social-link-related-user.ts @@ -1,10 +1,9 @@ import { useCallback } from 'react'; import { bindSocialRelatedUser } from '@/apis/interaction'; - -import useApi from './use-api'; -import useErrorHandler from './use-error-handler'; -import usePreSignInErrorHandler from './use-pre-sign-in-error-handler'; +import useApi from '@/hooks/use-api'; +import useErrorHandler from '@/hooks/use-error-handler'; +import usePreSignInErrorHandler from '@/hooks/use-pre-sign-in-error-handler'; const useBindSocialRelatedUser = () => { const handleError = useErrorHandler(); diff --git a/packages/experience/src/containers/SocialSignInList/index.tsx b/packages/experience/src/containers/SocialSignInList/index.tsx index b5ca3c05c..401088665 100644 --- a/packages/experience/src/containers/SocialSignInList/index.tsx +++ b/packages/experience/src/containers/SocialSignInList/index.tsx @@ -3,10 +3,10 @@ import classNames from 'classnames'; import SocialLinkButton from '@/components/Button/SocialLinkButton'; import useNativeMessageListener from '@/hooks/use-native-message-listener'; -import useSocial from '@/hooks/use-social'; import { getLogoUrl } from '@/utils/logo'; import * as styles from './index.module.scss'; +import useSocial from './use-social'; type Props = { className?: string; diff --git a/packages/experience/src/hooks/use-social.ts b/packages/experience/src/containers/SocialSignInList/use-social.ts similarity index 95% rename from packages/experience/src/hooks/use-social.ts rename to packages/experience/src/containers/SocialSignInList/use-social.ts index 6ec0383eb..116a327b6 100644 --- a/packages/experience/src/hooks/use-social.ts +++ b/packages/experience/src/containers/SocialSignInList/use-social.ts @@ -3,12 +3,11 @@ import { useCallback, useContext } from 'react'; import PageContext from '@/Providers/PageContextProvider/PageContext'; import { getSocialAuthorizationUrl } from '@/apis/interaction'; +import useApi from '@/hooks/use-api'; +import useErrorHandler from '@/hooks/use-error-handler'; import { getLogtoNativeSdk, isNativeWebview } from '@/utils/native-sdk'; import { generateState, storeState, buildSocialLandingUri } from '@/utils/social-connectors'; -import useApi from './use-api'; -import useErrorHandler from './use-error-handler'; - const useSocial = () => { const { experienceSettings, theme } = useContext(PageContext); diff --git a/packages/experience/src/pages/Callback/index.tsx b/packages/experience/src/pages/Callback/index.tsx index e513581ba..c82f8a901 100644 --- a/packages/experience/src/pages/Callback/index.tsx +++ b/packages/experience/src/pages/Callback/index.tsx @@ -3,9 +3,9 @@ import { useParams } from 'react-router-dom'; import StaticPageLayout from '@/Layout/StaticPageLayout'; import SocialLanding from '@/containers/SocialLanding'; -import useSocialCallbackHandler from '@/hooks/use-social-callback-handler'; import * as styles from './index.module.scss'; +import useSocialCallbackHandler from './use-social-callback-handler'; type Parameters = { connectorId: string; diff --git a/packages/experience/src/hooks/use-social-callback-handler.ts b/packages/experience/src/pages/Callback/use-social-callback-handler.ts similarity index 100% rename from packages/experience/src/hooks/use-social-callback-handler.ts rename to packages/experience/src/pages/Callback/use-social-callback-handler.ts diff --git a/packages/experience/src/pages/SocialLanding/index.tsx b/packages/experience/src/pages/SocialLanding/index.tsx index 1aad83102..6f187a7b6 100644 --- a/packages/experience/src/pages/SocialLanding/index.tsx +++ b/packages/experience/src/pages/SocialLanding/index.tsx @@ -3,9 +3,9 @@ import { useParams } from 'react-router-dom'; import StaticPageLayout from '@/Layout/StaticPageLayout'; import SocialLandingContainer from '@/containers/SocialLanding'; -import useSocialLandingHandler from '@/hooks/use-social-landing-handler'; import * as styles from './index.module.scss'; +import useSocialLandingHandler from './use-social-landing-handler'; type Parameters = { connectorId: string; diff --git a/packages/experience/src/hooks/use-social-landing-handler.ts b/packages/experience/src/pages/SocialLanding/use-social-landing-handler.ts similarity index 96% rename from packages/experience/src/hooks/use-social-landing-handler.ts rename to packages/experience/src/pages/SocialLanding/use-social-landing-handler.ts index f061b89d2..5f3fc24f3 100644 --- a/packages/experience/src/hooks/use-social-landing-handler.ts +++ b/packages/experience/src/pages/SocialLanding/use-social-landing-handler.ts @@ -1,12 +1,11 @@ import { useState, useCallback } from 'react'; import { useTranslation } from 'react-i18next'; +import useToast from '@/hooks/use-toast'; import { SearchParameters } from '@/types'; import { getSearchParameters } from '@/utils'; import { storeCallbackLink } from '@/utils/social-connectors'; -import useToast from './use-toast'; - const useSocialLandingHandler = () => { const [loading, setLoading] = useState(true); const { setToast } = useToast(); diff --git a/packages/experience/src/pages/SocialSignInCallback/SingleSignOn.tsx b/packages/experience/src/pages/SocialSignInCallback/SingleSignOn.tsx index d49ddbcd1..6d4a38518 100644 --- a/packages/experience/src/pages/SocialSignInCallback/SingleSignOn.tsx +++ b/packages/experience/src/pages/SocialSignInCallback/SingleSignOn.tsx @@ -1,7 +1,7 @@ -import useSingleSignOnListener from '@/hooks/use-single-sign-on-listener'; - import SignIn from '../SignIn'; +import useSingleSignOnListener from './use-single-sign-on-listener'; + /** * Single sign-on callback page */ diff --git a/packages/experience/src/pages/SocialSignInCallback/SocialSignIn.tsx b/packages/experience/src/pages/SocialSignInCallback/SocialSignIn.tsx index 46ed70a49..ec0878111 100644 --- a/packages/experience/src/pages/SocialSignInCallback/SocialSignIn.tsx +++ b/packages/experience/src/pages/SocialSignInCallback/SocialSignIn.tsx @@ -1,7 +1,7 @@ -import useSocialSignInListener from '@/hooks/use-social-sign-in-listener'; - import SignIn from '../SignIn'; +import useSocialSignInListener from './use-social-sign-in-listener'; + /** * Social sign in callback page */ diff --git a/packages/experience/src/hooks/use-single-sign-on-listener.ts b/packages/experience/src/pages/SocialSignInCallback/use-single-sign-on-listener.ts similarity index 94% rename from packages/experience/src/hooks/use-single-sign-on-listener.ts rename to packages/experience/src/pages/SocialSignInCallback/use-single-sign-on-listener.ts index 5873941d5..8635cb3a7 100644 --- a/packages/experience/src/hooks/use-single-sign-on-listener.ts +++ b/packages/experience/src/pages/SocialSignInCallback/use-single-sign-on-listener.ts @@ -3,13 +3,12 @@ import { useTranslation } from 'react-i18next'; import { useSearchParams } from 'react-router-dom'; import { singleSignOnAuthorization } from '@/apis/single-sign-on'; +import useApi from '@/hooks/use-api'; +import useErrorHandler from '@/hooks/use-error-handler'; +import useToast from '@/hooks/use-toast'; import { parseQueryParameters } from '@/utils'; import { stateValidation } from '@/utils/social-connectors'; -import useApi from './use-api'; -import useErrorHandler from './use-error-handler'; -import useToast from './use-toast'; - /** * Single Sign On authentication callback handler. * diff --git a/packages/experience/src/hooks/use-social-sign-in-listener.ts b/packages/experience/src/pages/SocialSignInCallback/use-social-sign-in-listener.ts similarity index 89% rename from packages/experience/src/hooks/use-social-sign-in-listener.ts rename to packages/experience/src/pages/SocialSignInCallback/use-social-sign-in-listener.ts index 26fbd9b0a..d93dc51a0 100644 --- a/packages/experience/src/hooks/use-social-sign-in-listener.ts +++ b/packages/experience/src/pages/SocialSignInCallback/use-social-sign-in-listener.ts @@ -6,19 +6,18 @@ import { useNavigate, useSearchParams } from 'react-router-dom'; import { validate } from 'superstruct'; import { signInWithSocial } from '@/apis/interaction'; +import useApi from '@/hooks/use-api'; +import useErrorHandler from '@/hooks/use-error-handler'; +import type { ErrorHandlers } from '@/hooks/use-error-handler'; +import usePreSignInErrorHandler from '@/hooks/use-pre-sign-in-error-handler'; +import { useSieMethods } from '@/hooks/use-sie'; +import useSocialRegister from '@/hooks/use-social-register'; +import useTerms from '@/hooks/use-terms'; +import useToast from '@/hooks/use-toast'; import { socialAccountNotExistErrorDataGuard } from '@/types/guard'; import { parseQueryParameters } from '@/utils'; import { stateValidation } from '@/utils/social-connectors'; -import useApi from './use-api'; -import useErrorHandler from './use-error-handler'; -import type { ErrorHandlers } from './use-error-handler'; -import usePreSignInErrorHandler from './use-pre-sign-in-error-handler'; -import { useSieMethods } from './use-sie'; -import useSocialRegister from './use-social-register'; -import useTerms from './use-terms'; -import useToast from './use-toast'; - const useSocialSignInListener = (connectorId: string) => { const { setToast } = useToast(); const { signInMode } = useSieMethods();