nfx-ui 0.23.0 → 0.24.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/apis/ip.d.ts +0 -3
- package/dist/apis/ip.d.ts.map +1 -1
- package/dist/apis/ip.js +0 -3
- package/dist/apis/ip.js.map +1 -1
- package/dist/apis/repositories/AuthRepository.d.ts +0 -8
- package/dist/apis/repositories/AuthRepository.d.ts.map +1 -1
- package/dist/apis/repositories/AuthRepository.js +0 -14
- package/dist/apis/repositories/AuthRepository.js.map +1 -1
- package/dist/enums/auth.d.ts +2 -3
- package/dist/enums/auth.d.ts.map +1 -1
- package/dist/enums/auth.js +1 -1
- package/dist/enums/auth.js.map +1 -1
- package/dist/hooks/auth.d.ts +3 -9
- package/dist/hooks/auth.d.ts.map +1 -1
- package/dist/hooks/auth.js +35 -62
- package/dist/hooks/auth.js.map +1 -1
- package/dist/hooks/index.js +8 -8
- package/dist/providers/DataProvider/index.d.ts.map +1 -1
- package/dist/providers/DataProvider/index.js +50 -20
- package/dist/providers/DataProvider/index.js.map +1 -1
- package/dist/types/domain/auth/login.d.ts +0 -15
- package/dist/types/domain/auth/login.d.ts.map +1 -1
- package/dist/types/domain/auth/profile.d.ts +2 -0
- package/dist/types/domain/auth/profile.d.ts.map +1 -1
- package/dist/types/domain/auth/signup.d.ts +2 -6
- package/dist/types/domain/auth/signup.d.ts.map +1 -1
- package/dist/utils/domain/buildProfilePatch.d.ts.map +1 -1
- package/dist/utils/domain/buildProfilePatch.js +7 -10
- package/dist/utils/domain/buildProfilePatch.js.map +1 -1
- package/package.json +1 -1
- package/src/apis/ip.ts +0 -3
- package/src/apis/repositories/AuthRepository.ts +0 -22
- package/src/enums/auth.ts +0 -1
- package/src/hooks/auth.ts +17 -59
- package/src/providers/DataProvider/index.tsx +34 -3
- package/src/types/domain/auth/login.ts +0 -18
- package/src/types/domain/auth/profile.ts +2 -0
- package/src/types/domain/auth/signup.ts +3 -6
- package/src/utils/domain/buildProfilePatch.ts +2 -7
package/dist/hooks/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","names":[],"sources":["../../src/hooks/auth.ts"],"sourcesContent":["/**\n * Auth hooks — 组件勿直接调 apis/auth\n */\nimport type { AxiosError } from \"axios\";\nimport type { CurrentProfileResult, Login, Profile, Signup } from \"@/types\";\n\nimport { useEffect } from \"react\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { useAuthRepository } from \"@/apis/repositories\";\nimport { AUTH_EMAILS, AUTH_ME, AUTH_PHONES, AUTH_PROFILES } from \"@/constants\";\nimport { AuthSignupPlatformEnum, LanguageEnum, ProfileKindEnum } from \"@/enums\";\nimport { authEventEmitter, authEvents } from \"@/events/auth\";\nimport { systemEventEmitter } from \"@/events/system\";\nimport {\n AuthStore,\n clearAuth,\n EMPTY_PROFILE_ID,\n hasSelectedProfile,\n setCurrentAccountId,\n setCurrentProfileId,\n setCurrentProfileKind,\n setIsAuthValid,\n setTokens,\n useAuthStore,\n} from \"@/stores/auth\";\nimport { ensureDeviceIdStorage } from \"@/stores/system\";\nimport { getApiErrorMessage } from \"@/utils/apiError\";\nimport { pickProfile } from \"@/utils/domain/account\";\nimport { useUnifiedQuery } from \"@/utils/factory\";\nimport { safeOr, safeStringable } from \"@/utils/safe\";\nimport { useTranslation } from \"react-i18next\";\n\nexport function useAuthQueryScope() {\n const aID = useAuthStore((s) => s.currentAccountId);\n const pID = useAuthStore((s) => s.currentProfileId);\n const isAuthValid = useAuthStore((s) => s.isAuthValid);\n const kind = useAuthStore((s) => s.currentProfileKind);\n return { aID, pID, isAuthValid, kind, profileScope: kind };\n}\n\nfunction useLogoutOnAuthError(isError: boolean, aID: string) {\n useEffect(() => {\n if (!isError || !AuthStore.getState().isAuthValid) return;\n if (!hasSelectedProfile(AuthStore.getState().currentProfileId)) return;\n authEventEmitter.emit(authEvents.LOGOUT, aID);\n clearAuth();\n }, [isError, aID]);\n}\n\nexport function useCurrentProfile(): CurrentProfileResult {\n const auth = useAuthRepository();\n const { aID, pID, isAuthValid, kind } = useAuthQueryScope();\n const result = useUnifiedQuery(\n ({ kind }: { kind: ProfileKindEnum }) => auth.GetCurrentFullAccountInformationWithProfile(kind),\n AUTH_ME(aID, pID),\n { kind },\n { enabled: isAuthValid && hasSelectedProfile(pID) },\n );\n useLogoutOnAuthError(result.isError, aID);\n return {\n kind,\n data: result.data,\n profile: pickProfile(kind, result.data),\n isLoading: result.isLoading,\n isError: result.isError,\n refetch: result.refetch,\n } as CurrentProfileResult;\n}\n\nexport const useSendVerificationCode = () => {\n const auth = useAuthRepository();\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: (params: Signup.Request.SendVerificationCode) => auth.SendVerificationCode(params),\n onSuccess: () => {\n systemEventEmitter.showSuccess(t(\"sendVerificationCodeSuccess\", { defaultValue: \"Code sent\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useSendVerificationCode] error\"));\n },\n });\n};\n\nexport const useSignupWithEmail = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: async ({\n rememberMe,\n ...params\n }: {\n rememberMe: boolean;\n } & Omit<Signup.Request.SignupWithEmail, \"deviceId\">) =>\n auth.SignupWithEmail({\n ...params,\n deviceId: await ensureDeviceIdStorage(),\n }),\n onSuccess: (result, variables) => {\n if (!result?.accessToken) return;\n setCurrentProfileId(result.profileId || EMPTY_PROFILE_ID);\n setTokens(\n {\n accessToken: result.accessToken,\n refreshToken: safeStringable(result.refreshToken),\n },\n { rememberMe: variables.rememberMe },\n );\n setIsAuthValid(true);\n if (result.accountId) setCurrentAccountId(result.accountId);\n if (result.profileId) {\n setCurrentProfileKind(ProfileKindEnum.FORGER);\n authEventEmitter.emit(authEvents.LOGIN_SUCCESS, result.accountId);\n }\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useSignup] error\"));\n },\n });\n};\n\nexport const useLoginWithEmail = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: async ({ rememberMe, ...params }: { email: string; password: string; rememberMe: boolean }) =>\n auth.LoginWithEmail({\n ...params,\n deviceId: await ensureDeviceIdStorage(),\n }),\n onSuccess: (result, variables) => {\n if (!result?.accessToken) return;\n setCurrentProfileId(EMPTY_PROFILE_ID);\n setTokens(\n {\n accessToken: result.accessToken,\n refreshToken: safeStringable(result.refreshToken),\n },\n { rememberMe: variables.rememberMe },\n );\n setIsAuthValid(true);\n if (result.accountId) setCurrentAccountId(result.accountId);\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useLogin] error\"));\n },\n });\n};\n\nexport const useSelectProfile = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: async ({ profileId, kind }: { profileId: string; kind: Login.ProfileKind }) =>\n auth.SelectProfile({\n profileId,\n kind,\n deviceId: await ensureDeviceIdStorage(),\n }),\n onSuccess: (result, variables) => {\n if (result?.accessToken) {\n setTokens({\n accessToken: result.accessToken,\n refreshToken: safeStringable(result.refreshToken),\n });\n setCurrentProfileKind(variables.kind);\n if (result.profileId) setCurrentProfileId(result.profileId);\n authEventEmitter.emit(authEvents.LOGIN_SUCCESS, result.accountId);\n }\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useSelectProfile] error\"));\n },\n });\n};\n\nexport const usePatchProfile = (options?: { silent?: boolean }) => {\n const auth = useAuthRepository();\n const { kind } = useAuthQueryScope();\n const silent = safeOr(options?.silent, false);\n const { t } = useTranslation(\"pages.User.Profile.Edit\");\n return useMutation({\n mutationFn: (body: Profile.Request.PatchProfile) => auth.PatchProfile(kind, body),\n onSuccess: () => {\n if (!silent) systemEventEmitter.showSuccess(t(\"saveSuccess\", { defaultValue: \"Saved\" }));\n const aID = AuthStore.getState().currentAccountId;\n authEventEmitter.invalidateProfiles({ aID, kind });\n },\n onError: (error: AxiosError) => {\n if (!silent) systemEventEmitter.showError(getApiErrorMessage(error, \"[usePatchProfile] error\"));\n },\n });\n};\n\nexport const useUpdateProfileSettings = () => {\n const auth = useAuthRepository();\n const { kind } = useAuthQueryScope();\n return useMutation({\n mutationFn: (body: Profile.Request.PatchProfileSettings) => auth.PatchProfileSettings(kind, body),\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useUpdateProfileSettings] error\"));\n },\n });\n};\n\nexport const useListProfiles = <K extends ProfileKindEnum>(kind: K) => {\n const auth = useAuthRepository();\n const { aID, isAuthValid } = useAuthQueryScope();\n return useUnifiedQuery(\n () => auth.ListProfiles(kind, { limit: 50, offset: 0 }),\n AUTH_PROFILES(aID, kind),\n undefined,\n { enabled: isAuthValid && Boolean(aID) },\n );\n};\n\nexport const useCreateForgerProfile = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: (body: Login.Request.CreateForgerProfile) => auth.CreateForgerProfile(body),\n onSuccess: () => {\n const aID = AuthStore.getState().currentAccountId;\n authEventEmitter.invalidateProfiles({ aID, kind: ProfileKindEnum.FORGER });\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useCreateForgerProfile] error\"));\n },\n });\n};\n\nexport const useCreateAuthorityProfile = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: (body: Login.Request.CreateAuthorityProfile) => auth.CreateAuthorityProfile(body),\n onSuccess: () => {\n const aID = AuthStore.getState().currentAccountId;\n authEventEmitter.invalidateProfiles({ aID, kind: ProfileKindEnum.AUTHORITY });\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useCreateAuthorityProfile] error\"));\n },\n });\n};\n\nexport const useDeleteProfile = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: ({ kind, profileId }: { kind: ProfileKindEnum; profileId: string }) => auth.DeleteProfile(kind, profileId),\n onSuccess: (_void, variables) => {\n const aID = AuthStore.getState().currentAccountId;\n authEventEmitter.invalidateProfiles({ aID, kind: variables.kind });\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useDeleteProfile] error\"));\n },\n });\n};\n\nexport const useGetGitHubAuthorizeUrl = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: () => auth.GetGitHubAuthorizeUrl(),\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useGetGitHubAuthorizeUrl] error\"));\n },\n });\n};\n\nexport const useLoginWithGitHub = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: async (params: { code: string; state: string; signupPlatform: AuthSignupPlatformEnum }) =>\n auth.LoginWithGitHub({\n ...params,\n deviceId: await ensureDeviceIdStorage(),\n }),\n onSuccess: (result) => {\n if (!result?.accessToken) return;\n setCurrentProfileId(EMPTY_PROFILE_ID);\n setTokens({\n accessToken: result.accessToken,\n refreshToken: safeStringable(result.refreshToken),\n });\n setIsAuthValid(true);\n if (result.accountId) setCurrentAccountId(result.accountId);\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useLoginWithGitHub] error\"));\n },\n });\n};\n\nexport const useLinkGitHub = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: (params: Login.Request.LinkGitHub) => auth.LinkGitHub(params),\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useLinkGitHub] error\"));\n },\n });\n};\n\nexport const useUnlinkGitHub = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: () => auth.UnlinkGitHub(),\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useUnlinkGitHub] error\"));\n },\n });\n};\n\nexport const useConfirmProfileAvatar = () => {\n const auth = useAuthRepository();\n const { kind } = useAuthQueryScope();\n return useMutation({\n mutationFn: (body: Profile.Request.ConfirmProfileAvatar) => auth.ConfirmProfileAvatar(kind, body),\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useConfirmProfileAvatar] error\"));\n },\n });\n};\n\nexport const useClearProfileAvatar = () => {\n const auth = useAuthRepository();\n const { kind } = useAuthQueryScope();\n return useMutation({\n mutationFn: () => auth.ClearProfileAvatar(kind),\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useClearProfileAvatar] error\"));\n },\n });\n};\n\nexport const useListEmails = () => {\n const auth = useAuthRepository();\n const { aID, isAuthValid } = useAuthQueryScope();\n return useUnifiedQuery(() => auth.ListEmails({ limit: 50, offset: 0 }), AUTH_EMAILS(aID), undefined, {\n enabled: isAuthValid && Boolean(aID),\n });\n};\n\nexport const useListPhones = () => {\n const auth = useAuthRepository();\n const { aID, isAuthValid } = useAuthQueryScope();\n return useUnifiedQuery(() => auth.ListPhones({ limit: 50, offset: 0 }), AUTH_PHONES(aID), undefined, {\n enabled: isAuthValid && Boolean(aID),\n });\n};\n\nexport const useCreateEmail = () => {\n const auth = useAuthRepository();\n const accountId = AuthStore.getState().currentAccountId;\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: (body: Login.Request.CreateEmail) => auth.CreateEmail(body),\n onSuccess: () => {\n authEventEmitter.invalidateEmails(accountId);\n systemEventEmitter.showSuccess(t(\"createEmailSuccess\", { defaultValue: \"Email added.\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useCreateEmail] error\"));\n },\n });\n};\n\nexport const useSendEmailVerificationCode = () => {\n const auth = useAuthRepository();\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: ({ emailId, lang }: { emailId: string; lang?: LanguageEnum }) => auth.SendEmailVerificationCode(emailId, { lang }),\n onSuccess: () => {\n systemEventEmitter.showSuccess(t(\"sendVerificationCodeSuccess\", { defaultValue: \"Code sent\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useSendEmailVerificationCode] error\"));\n },\n });\n};\n\nexport const useVerifyEmail = () => {\n const auth = useAuthRepository();\n const accountId = AuthStore.getState().currentAccountId;\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: ({ emailId, verificationCode }: { emailId: string; verificationCode: string }) =>\n auth.VerifyEmail(emailId, { verificationCode }),\n onSuccess: () => {\n authEventEmitter.invalidateEmails(accountId);\n systemEventEmitter.showSuccess(t(\"verifyEmailSuccess\", { defaultValue: \"Email verified.\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useVerifyEmail] error\"));\n },\n });\n};\n\nexport const useUpdateEmail = () => {\n const auth = useAuthRepository();\n const accountId = AuthStore.getState().currentAccountId;\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: ({ emailId, email }: { emailId: string; email: string }) => auth.UpdateEmail(emailId, { email }),\n onSuccess: () => {\n authEventEmitter.invalidateEmails(accountId);\n systemEventEmitter.showSuccess(t(\"updateEmailSuccess\", { defaultValue: \"Email updated.\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useUpdateEmail] error\"));\n },\n });\n};\n\nexport const useSetPrimaryEmail = () => {\n const auth = useAuthRepository();\n const accountId = AuthStore.getState().currentAccountId;\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: (emailId: string) => auth.SetPrimaryEmail(emailId),\n onSuccess: () => {\n authEventEmitter.invalidateEmails(accountId);\n authEventEmitter.emit(authEvents.UPDATE_ACCOUNT_SUCCESS, accountId);\n systemEventEmitter.showSuccess(t(\"setPrimaryEmailSuccess\", { defaultValue: \"Primary email updated.\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useSetPrimaryEmail] error\"));\n },\n });\n};\n\nexport const useDeleteEmail = () => {\n const auth = useAuthRepository();\n const accountId = AuthStore.getState().currentAccountId;\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: (emailId: string) => auth.DeleteEmail(emailId),\n onSuccess: () => {\n authEventEmitter.invalidateEmails(accountId);\n systemEventEmitter.showSuccess(t(\"deleteEmailSuccess\", { defaultValue: \"Email removed.\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useDeleteEmail] error\"));\n },\n });\n};\n\nexport const useSendChangePasswordVerificationCode = () => {\n const auth = useAuthRepository();\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: (body: Login.Request.SendChangePasswordVerificationCode = {}) => auth.SendChangePasswordVerificationCode(body),\n onSuccess: () => {\n systemEventEmitter.showSuccess(t(\"sendVerificationCodeSuccess\", { defaultValue: \"Code sent\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useSendChangePasswordVerificationCode] error\"));\n },\n });\n};\n\nexport const useChangePassword = () => {\n const auth = useAuthRepository();\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: (body: Login.Request.ChangePassword) => auth.ChangePassword(body),\n onSuccess: () => {\n systemEventEmitter.showSuccess(t(\"changePasswordSuccess\", { defaultValue: \"Password updated.\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useChangePassword] error\"));\n },\n });\n};\n\nexport const useConfirmProfileBackgrounds = () => {\n const auth = useAuthRepository();\n const { kind } = useAuthQueryScope();\n return useMutation({\n mutationFn: (body: Profile.Request.ConfirmProfileBackgrounds) => auth.ConfirmProfileBackgrounds(kind, body),\n onSuccess: () => {\n const aID = AuthStore.getState().currentAccountId;\n authEventEmitter.emit(authEvents.UPDATE_ACCOUNT_SUCCESS, aID);\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useConfirmProfileBackgrounds] error\"));\n },\n });\n};\n\nexport { hasSelectedProfile, AuthStore, useAuthStore };\nexport { LanguageEnum, AuthSignupPlatformEnum };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth.js","names":[],"sources":["../../src/hooks/auth.ts"],"sourcesContent":["/**\n * Auth hooks — 组件勿直接调 apis/auth\n */\nimport type { AxiosError } from \"axios\";\nimport type { CurrentProfileResult, Login, Profile, Signup } from \"@/types\";\n\nimport { useEffect } from \"react\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { useAuthRepository } from \"@/apis/repositories\";\nimport { AUTH_EMAILS, AUTH_ME, AUTH_PHONES, AUTH_PROFILES } from \"@/constants\";\nimport { AuthSignupPlatformEnum, LanguageEnum, ProfileKindEnum } from \"@/enums\";\nimport { authEventEmitter, authEvents } from \"@/events/auth\";\nimport { systemEventEmitter } from \"@/events/system\";\nimport {\n AuthStore,\n clearAuth,\n EMPTY_PROFILE_ID,\n hasSelectedProfile,\n setCurrentAccountId,\n setCurrentProfileId,\n setCurrentProfileKind,\n setIsAuthValid,\n setTokens,\n useAuthStore,\n} from \"@/stores/auth\";\nimport { ensureDeviceIdStorage } from \"@/stores/system\";\nimport { getApiErrorMessage } from \"@/utils/apiError\";\nimport { pickProfile } from \"@/utils/domain/account\";\nimport { useUnifiedQuery } from \"@/utils/factory\";\nimport { safeOr, safeStringable } from \"@/utils/safe\";\nimport { useTranslation } from \"react-i18next\";\n\nexport function useAuthQueryScope() {\n const aID = useAuthStore((s) => s.currentAccountId);\n const pID = useAuthStore((s) => s.currentProfileId);\n const isAuthValid = useAuthStore((s) => s.isAuthValid);\n const kind = useAuthStore((s) => s.currentProfileKind);\n return { aID, pID, isAuthValid, kind, profileScope: kind };\n}\n\nfunction useLogoutOnAuthError(isError: boolean, aID: string) {\n useEffect(() => {\n if (!isError || !AuthStore.getState().isAuthValid) return;\n if (!hasSelectedProfile(AuthStore.getState().currentProfileId)) return;\n authEventEmitter.emit(authEvents.LOGOUT, aID);\n clearAuth();\n }, [isError, aID]);\n}\n\nexport function useCurrentProfile(): CurrentProfileResult {\n const auth = useAuthRepository();\n const { aID, pID, isAuthValid, kind } = useAuthQueryScope();\n const result = useUnifiedQuery(\n ({ kind }: { kind: ProfileKindEnum }) => auth.GetCurrentFullAccountInformationWithProfile(kind),\n AUTH_ME(aID, pID),\n { kind },\n { enabled: isAuthValid && hasSelectedProfile(pID) },\n );\n useLogoutOnAuthError(result.isError, aID);\n return {\n kind,\n data: result.data,\n profile: pickProfile(kind, result.data),\n isLoading: result.isLoading,\n isError: result.isError,\n refetch: result.refetch,\n } as CurrentProfileResult;\n}\n\nexport const useSendVerificationCode = () => {\n const auth = useAuthRepository();\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: (params: Signup.Request.SendVerificationCode) => auth.SendVerificationCode(params),\n onSuccess: () => {\n systemEventEmitter.showSuccess(t(\"sendVerificationCodeSuccess\", { defaultValue: \"Code sent\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useSendVerificationCode] error\"));\n },\n });\n};\n\nexport const useSignupWithEmail = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: async ({\n rememberMe,\n ...params\n }: {\n rememberMe: boolean;\n } & Omit<Signup.Request.SignupWithEmail, \"deviceId\">): Promise<Signup.Response.SignupWithEmail & { profileId?: string }> => {\n const deviceId = await ensureDeviceIdStorage();\n const result = await auth.SignupWithEmail({\n ...params,\n deviceId,\n });\n const first = result.profiles?.find((p) => p.kind === ProfileKindEnum.FORGER) ?? result.profiles?.[0];\n if (!first) return result;\n const selected = await auth.SelectProfile({\n profileId: first.profileId,\n kind: first.kind,\n deviceId,\n });\n return { ...result, accessToken: selected.accessToken, refreshToken: selected.refreshToken, profileId: selected.profileId };\n },\n onSuccess: (result, variables) => {\n if (!result?.accessToken) return;\n setTokens(\n {\n accessToken: result.accessToken,\n refreshToken: safeStringable(result.refreshToken),\n },\n { rememberMe: variables.rememberMe },\n );\n setIsAuthValid(true);\n if (result.accountId) setCurrentAccountId(result.accountId);\n if (result.profileId) {\n setCurrentProfileId(result.profileId);\n setCurrentProfileKind(ProfileKindEnum.FORGER);\n authEventEmitter.emit(authEvents.LOGIN_SUCCESS, result.accountId);\n } else {\n setCurrentProfileId(EMPTY_PROFILE_ID);\n }\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useSignup] error\"));\n },\n });\n};\n\nexport const useLoginWithEmail = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: async ({ rememberMe, ...params }: { email: string; password: string; rememberMe: boolean }) =>\n auth.LoginWithEmail({\n ...params,\n deviceId: await ensureDeviceIdStorage(),\n }),\n onSuccess: (result, variables) => {\n if (!result?.accessToken) return;\n setCurrentProfileId(EMPTY_PROFILE_ID);\n setTokens(\n {\n accessToken: result.accessToken,\n refreshToken: safeStringable(result.refreshToken),\n },\n { rememberMe: variables.rememberMe },\n );\n setIsAuthValid(true);\n if (result.accountId) setCurrentAccountId(result.accountId);\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useLogin] error\"));\n },\n });\n};\n\nexport const useSelectProfile = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: async ({ profileId, kind }: { profileId: string; kind: Login.ProfileKind }) =>\n auth.SelectProfile({\n profileId,\n kind,\n deviceId: await ensureDeviceIdStorage(),\n }),\n onSuccess: (result, variables) => {\n if (result?.accessToken) {\n setTokens({\n accessToken: result.accessToken,\n refreshToken: safeStringable(result.refreshToken),\n });\n setCurrentProfileKind(variables.kind);\n if (result.profileId) setCurrentProfileId(result.profileId);\n authEventEmitter.emit(authEvents.LOGIN_SUCCESS, result.accountId);\n }\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useSelectProfile] error\"));\n },\n });\n};\n\nexport const usePatchProfile = (options?: { silent?: boolean }) => {\n const auth = useAuthRepository();\n const { kind } = useAuthQueryScope();\n const silent = safeOr(options?.silent, false);\n const { t } = useTranslation(\"pages.User.Profile.Edit\");\n return useMutation({\n mutationFn: (body: Profile.Request.PatchProfile) => auth.PatchProfile(kind, body),\n onSuccess: () => {\n if (!silent) systemEventEmitter.showSuccess(t(\"saveSuccess\", { defaultValue: \"Saved\" }));\n const aID = AuthStore.getState().currentAccountId;\n authEventEmitter.invalidateProfiles({ aID, kind });\n },\n onError: (error: AxiosError) => {\n if (!silent) systemEventEmitter.showError(getApiErrorMessage(error, \"[usePatchProfile] error\"));\n },\n });\n};\n\nexport const useUpdateProfileSettings = () => {\n const auth = useAuthRepository();\n const { kind } = useAuthQueryScope();\n return useMutation({\n mutationFn: (body: Profile.Request.PatchProfileSettings) => auth.PatchProfileSettings(kind, body),\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useUpdateProfileSettings] error\"));\n },\n });\n};\n\nexport const useListProfiles = <K extends ProfileKindEnum>(kind: K) => {\n const auth = useAuthRepository();\n const { aID, isAuthValid } = useAuthQueryScope();\n return useUnifiedQuery(\n () => auth.ListProfiles(kind, { limit: 50, offset: 0 }),\n AUTH_PROFILES(aID, kind),\n undefined,\n { enabled: isAuthValid && Boolean(aID) },\n );\n};\n\nexport const useCreateForgerProfile = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: (body: Login.Request.CreateForgerProfile) => auth.CreateForgerProfile(body),\n onSuccess: () => {\n const aID = AuthStore.getState().currentAccountId;\n authEventEmitter.invalidateProfiles({ aID, kind: ProfileKindEnum.FORGER });\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useCreateForgerProfile] error\"));\n },\n });\n};\n\nexport const useCreateAuthorityProfile = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: (body: Login.Request.CreateAuthorityProfile) => auth.CreateAuthorityProfile(body),\n onSuccess: () => {\n const aID = AuthStore.getState().currentAccountId;\n authEventEmitter.invalidateProfiles({ aID, kind: ProfileKindEnum.AUTHORITY });\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useCreateAuthorityProfile] error\"));\n },\n });\n};\n\nexport const useDeleteProfile = () => {\n const auth = useAuthRepository();\n return useMutation({\n mutationFn: ({ kind, profileId }: { kind: ProfileKindEnum; profileId: string }) => auth.DeleteProfile(kind, profileId),\n onSuccess: (_void, variables) => {\n const aID = AuthStore.getState().currentAccountId;\n authEventEmitter.invalidateProfiles({ aID, kind: variables.kind });\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useDeleteProfile] error\"));\n },\n });\n};\n\nexport const useConfirmProfileAvatar = () => {\n const auth = useAuthRepository();\n const { kind } = useAuthQueryScope();\n return useMutation({\n mutationFn: (body: Profile.Request.ConfirmProfileAvatar) => auth.ConfirmProfileAvatar(kind, body),\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useConfirmProfileAvatar] error\"));\n },\n });\n};\n\nexport const useClearProfileAvatar = () => {\n const auth = useAuthRepository();\n const { kind } = useAuthQueryScope();\n return useMutation({\n mutationFn: () => auth.ClearProfileAvatar(kind),\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useClearProfileAvatar] error\"));\n },\n });\n};\n\nexport const useListEmails = () => {\n const auth = useAuthRepository();\n const { aID, isAuthValid } = useAuthQueryScope();\n return useUnifiedQuery(() => auth.ListEmails({ limit: 50, offset: 0 }), AUTH_EMAILS(aID), undefined, {\n enabled: isAuthValid && Boolean(aID),\n });\n};\n\nexport const useListPhones = () => {\n const auth = useAuthRepository();\n const { aID, isAuthValid } = useAuthQueryScope();\n return useUnifiedQuery(() => auth.ListPhones({ limit: 50, offset: 0 }), AUTH_PHONES(aID), undefined, {\n enabled: isAuthValid && Boolean(aID),\n });\n};\n\nexport const useCreateEmail = () => {\n const auth = useAuthRepository();\n const accountId = AuthStore.getState().currentAccountId;\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: (body: Login.Request.CreateEmail) => auth.CreateEmail(body),\n onSuccess: () => {\n authEventEmitter.invalidateEmails(accountId);\n systemEventEmitter.showSuccess(t(\"createEmailSuccess\", { defaultValue: \"Email added.\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useCreateEmail] error\"));\n },\n });\n};\n\nexport const useSendEmailVerificationCode = () => {\n const auth = useAuthRepository();\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: ({ emailId, lang }: { emailId: string; lang?: LanguageEnum }) => auth.SendEmailVerificationCode(emailId, { lang }),\n onSuccess: () => {\n systemEventEmitter.showSuccess(t(\"sendVerificationCodeSuccess\", { defaultValue: \"Code sent\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useSendEmailVerificationCode] error\"));\n },\n });\n};\n\nexport const useVerifyEmail = () => {\n const auth = useAuthRepository();\n const accountId = AuthStore.getState().currentAccountId;\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: ({ emailId, verificationCode }: { emailId: string; verificationCode: string }) =>\n auth.VerifyEmail(emailId, { verificationCode }),\n onSuccess: () => {\n authEventEmitter.invalidateEmails(accountId);\n systemEventEmitter.showSuccess(t(\"verifyEmailSuccess\", { defaultValue: \"Email verified.\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useVerifyEmail] error\"));\n },\n });\n};\n\nexport const useUpdateEmail = () => {\n const auth = useAuthRepository();\n const accountId = AuthStore.getState().currentAccountId;\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: ({ emailId, email }: { emailId: string; email: string }) => auth.UpdateEmail(emailId, { email }),\n onSuccess: () => {\n authEventEmitter.invalidateEmails(accountId);\n systemEventEmitter.showSuccess(t(\"updateEmailSuccess\", { defaultValue: \"Email updated.\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useUpdateEmail] error\"));\n },\n });\n};\n\nexport const useSetPrimaryEmail = () => {\n const auth = useAuthRepository();\n const accountId = AuthStore.getState().currentAccountId;\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: (emailId: string) => auth.SetPrimaryEmail(emailId),\n onSuccess: () => {\n authEventEmitter.invalidateEmails(accountId);\n authEventEmitter.emit(authEvents.UPDATE_ACCOUNT_SUCCESS, accountId);\n systemEventEmitter.showSuccess(t(\"setPrimaryEmailSuccess\", { defaultValue: \"Primary email updated.\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useSetPrimaryEmail] error\"));\n },\n });\n};\n\nexport const useDeleteEmail = () => {\n const auth = useAuthRepository();\n const accountId = AuthStore.getState().currentAccountId;\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: (emailId: string) => auth.DeleteEmail(emailId),\n onSuccess: () => {\n authEventEmitter.invalidateEmails(accountId);\n systemEventEmitter.showSuccess(t(\"deleteEmailSuccess\", { defaultValue: \"Email removed.\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useDeleteEmail] error\"));\n },\n });\n};\n\nexport const useSendChangePasswordVerificationCode = () => {\n const auth = useAuthRepository();\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: (body: Login.Request.SendChangePasswordVerificationCode = {}) => auth.SendChangePasswordVerificationCode(body),\n onSuccess: () => {\n systemEventEmitter.showSuccess(t(\"sendVerificationCodeSuccess\", { defaultValue: \"Code sent\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useSendChangePasswordVerificationCode] error\"));\n },\n });\n};\n\nexport const useChangePassword = () => {\n const auth = useAuthRepository();\n const { t } = useTranslation(\"hooks\", { keyPrefix: \"account\" });\n return useMutation({\n mutationFn: (body: Login.Request.ChangePassword) => auth.ChangePassword(body),\n onSuccess: () => {\n systemEventEmitter.showSuccess(t(\"changePasswordSuccess\", { defaultValue: \"Password updated.\" }));\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useChangePassword] error\"));\n },\n });\n};\n\nexport const useConfirmProfileBackgrounds = () => {\n const auth = useAuthRepository();\n const { kind } = useAuthQueryScope();\n return useMutation({\n mutationFn: (body: Profile.Request.ConfirmProfileBackgrounds) => auth.ConfirmProfileBackgrounds(kind, body),\n onSuccess: () => {\n const aID = AuthStore.getState().currentAccountId;\n authEventEmitter.emit(authEvents.UPDATE_ACCOUNT_SUCCESS, aID);\n },\n onError: (error: AxiosError) => {\n systemEventEmitter.showError(getApiErrorMessage(error, \"[useConfirmProfileBackgrounds] error\"));\n },\n });\n};\n\nexport { hasSelectedProfile, AuthStore, useAuthStore };\nexport { LanguageEnum, AuthSignupPlatformEnum };\n"],"mappings":"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"}
|
package/dist/hooks/index.js
CHANGED
|
@@ -3,11 +3,11 @@ import { AuthSignupPlatformEnum as t } from "../enums/auth.js";
|
|
|
3
3
|
import { AuthStore as n, hasSelectedProfile as r, useAuthStore as i } from "../stores/auth.js";
|
|
4
4
|
import { makeCursorFetchFunction as a, makeStringCursorFetchFunction as o, useUnifiedInfiniteQuery as s, useUnifiedQuery as c, useUnifiedSuspenseInfiniteQuery as l, useUnifiedSuspenseQuery as u } from "../utils/factory/hooks.js";
|
|
5
5
|
import { useConfirmImageUpload as d, useConfirmUpload as f, useDeleteAsset as p, useDeleteImage as m, useListAssets as h, usePrepareImageUpload as g, usePrepareUpload as _ } from "./asset.js";
|
|
6
|
-
import { useAuthQueryScope as v, useChangePassword as y, useClearProfileAvatar as b, useConfirmProfileAvatar as x, useConfirmProfileBackgrounds as S, useCreateAuthorityProfile as C, useCreateEmail as w, useCreateForgerProfile as T, useCurrentProfile as E, useDeleteEmail as D, useDeleteProfile as O,
|
|
7
|
-
import { useDebouncedValue as
|
|
8
|
-
import { configurePreferenceSync as
|
|
9
|
-
import { getBaseDisplayName as
|
|
10
|
-
import { getLayoutDisplayName as
|
|
11
|
-
import { getPreferenceDisplayName as
|
|
12
|
-
import { getThemeDisplayName as
|
|
13
|
-
export { t as AuthSignupPlatformEnum, n as AuthStore, e as LanguageEnum,
|
|
6
|
+
import { useAuthQueryScope as v, useChangePassword as y, useClearProfileAvatar as b, useConfirmProfileAvatar as x, useConfirmProfileBackgrounds as S, useCreateAuthorityProfile as C, useCreateEmail as w, useCreateForgerProfile as T, useCurrentProfile as E, useDeleteEmail as D, useDeleteProfile as O, useListEmails as k, useListPhones as A, useListProfiles as j, useLoginWithEmail as M, usePatchProfile as N, useSelectProfile as P, useSendChangePasswordVerificationCode as F, useSendEmailVerificationCode as I, useSendVerificationCode as L, useSetPrimaryEmail as R, useSignupWithEmail as z, useUpdateEmail as B, useUpdateProfileSettings as V, useVerifyEmail as H } from "./auth.js";
|
|
7
|
+
import { useDebouncedValue as U, useLockDocumentScrollOnDesktop as W, useWheelHorizontalScroll as G } from "./dom.js";
|
|
8
|
+
import { configurePreferenceSync as K, useApplyPreferenceOnLoad as q, useResolvedAppearance as J, useSyncPreference as Y } from "./preference.js";
|
|
9
|
+
import { getBaseDisplayName as X, getLanguageDisplayName as Z, useBaseLabel as Q, useLanguageLabel as $ } from "../languages/hooks/useLanguageLabel.js";
|
|
10
|
+
import { getLayoutDisplayName as ee, useLayoutLabel as te } from "../languages/hooks/useLayoutLabel.js";
|
|
11
|
+
import { getPreferenceDisplayName as ne, usePreferenceLabel as re } from "../languages/hooks/usePreferenceLabel.js";
|
|
12
|
+
import { getThemeDisplayName as ie, useThemeLabel as ae } from "../languages/hooks/useThemeLabel.js";
|
|
13
|
+
export { t as AuthSignupPlatformEnum, n as AuthStore, e as LanguageEnum, K as configurePreferenceSync, X as getBaseDisplayName, Z as getLanguageDisplayName, ee as getLayoutDisplayName, ne as getPreferenceDisplayName, ie as getThemeDisplayName, r as hasSelectedProfile, a as makeCursorFetchFunction, o as makeStringCursorFetchFunction, q as useApplyPreferenceOnLoad, v as useAuthQueryScope, i as useAuthStore, Q as useBaseLabel, y as useChangePassword, b as useClearProfileAvatar, d as useConfirmImageUpload, x as useConfirmProfileAvatar, S as useConfirmProfileBackgrounds, f as useConfirmUpload, C as useCreateAuthorityProfile, w as useCreateEmail, T as useCreateForgerProfile, E as useCurrentProfile, U as useDebouncedValue, p as useDeleteAsset, D as useDeleteEmail, m as useDeleteImage, O as useDeleteProfile, $ as useLanguageLabel, te as useLayoutLabel, h as useListAssets, k as useListEmails, A as useListPhones, j as useListProfiles, W as useLockDocumentScrollOnDesktop, M as useLoginWithEmail, N as usePatchProfile, re as usePreferenceLabel, g as usePrepareImageUpload, _ as usePrepareUpload, J as useResolvedAppearance, P as useSelectProfile, F as useSendChangePasswordVerificationCode, I as useSendEmailVerificationCode, L as useSendVerificationCode, R as useSetPrimaryEmail, z as useSignupWithEmail, Y as useSyncPreference, ae as useThemeLabel, s as useUnifiedInfiniteQuery, c as useUnifiedQuery, l as useUnifiedSuspenseInfiniteQuery, u as useUnifiedSuspenseQuery, B as useUpdateEmail, V as useUpdateProfileSettings, H as useVerifyEmail, G as useWheelHorizontalScroll };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/DataProvider/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/DataProvider/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAiBvC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,SAAS,CAAC;IACpB,YAAY,CAAC,EAAE,oBAAoB,CAAC;CACrC;AAyCD,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,iBAAiB,+BAUzE"}
|
|
@@ -1,34 +1,64 @@
|
|
|
1
1
|
import { setIdentityRepositories as e } from "../../apis/activeIdentityRepositories.js";
|
|
2
|
-
import { AuthStore as t,
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
2
|
+
import { AuthStore as t, hasSelectedProfile as n, subscribeAuthStorageSync as r } from "../../stores/auth.js";
|
|
3
|
+
import { parseServerPreference as i, toServerPreference as a } from "../../stores/preference.js";
|
|
4
|
+
import { scheduleAccessTokenRefresh as o } from "../../apis/authRefresh.js";
|
|
5
|
+
import { ApiAuthRepository as s } from "../../apis/repositories/AuthRepository.js";
|
|
6
|
+
import { ApiAssetRepository as c } from "../../apis/repositories/AssetRepository.js";
|
|
7
|
+
import { IdentityRepositoriesContext as l, useAuthRepository as u } from "../../apis/repositories/context.js";
|
|
8
|
+
import { useAuthQueryScope as d, useCurrentProfile as f } from "../../hooks/auth.js";
|
|
9
|
+
import { configurePreferenceSync as p, useApplyPreferenceOnLoad as m } from "../../hooks/preference.js";
|
|
10
|
+
import { useEffect as h, useMemo as g } from "react";
|
|
11
|
+
import { jsx as _, jsxs as v } from "react/jsx-runtime";
|
|
9
12
|
//#region src/providers/DataProvider/index.tsx
|
|
10
|
-
var
|
|
11
|
-
auth: new
|
|
12
|
-
asset: new
|
|
13
|
+
var y = {
|
|
14
|
+
auth: new s(),
|
|
15
|
+
asset: new c()
|
|
13
16
|
};
|
|
14
|
-
e(
|
|
15
|
-
function
|
|
16
|
-
return
|
|
17
|
+
e(y);
|
|
18
|
+
function b() {
|
|
19
|
+
return h(() => {
|
|
17
20
|
let e = t.getState().accessToken;
|
|
18
|
-
return e &&
|
|
21
|
+
return e && o(e), r(() => {
|
|
19
22
|
let e = t.getState().accessToken;
|
|
20
|
-
e &&
|
|
23
|
+
e && o(e);
|
|
21
24
|
});
|
|
22
25
|
}, []), null;
|
|
23
26
|
}
|
|
24
|
-
function
|
|
25
|
-
let r =
|
|
26
|
-
|
|
27
|
+
function x() {
|
|
28
|
+
let e = u(), { kind: t, isAuthValid: r, pID: o } = d(), { profile: s } = f();
|
|
29
|
+
h(() => {
|
|
30
|
+
if (!r || !n(o)) {
|
|
31
|
+
p(void 0);
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
return p((n) => {
|
|
35
|
+
e.UpdatePreference(t, JSON.stringify(a(n)));
|
|
36
|
+
}), () => p(void 0);
|
|
37
|
+
}, [
|
|
38
|
+
e,
|
|
39
|
+
t,
|
|
40
|
+
r,
|
|
41
|
+
o
|
|
42
|
+
]);
|
|
43
|
+
let c = g(() => s?.preference ? i(s.preference) : null, [s?.preference]);
|
|
44
|
+
return m({
|
|
45
|
+
isAuthValid: r && n(o),
|
|
46
|
+
applyKey: o,
|
|
47
|
+
serverPreference: c
|
|
48
|
+
}), null;
|
|
49
|
+
}
|
|
50
|
+
function S({ children: t, repositories: n }) {
|
|
51
|
+
let r = n ?? y;
|
|
52
|
+
return e(r), /* @__PURE__ */ v(l.Provider, {
|
|
27
53
|
value: r,
|
|
28
|
-
children: [
|
|
54
|
+
children: [
|
|
55
|
+
/* @__PURE__ */ _(b, {}),
|
|
56
|
+
/* @__PURE__ */ _(x, {}),
|
|
57
|
+
t
|
|
58
|
+
]
|
|
29
59
|
});
|
|
30
60
|
}
|
|
31
61
|
//#endregion
|
|
32
|
-
export {
|
|
62
|
+
export { S as DataProvider };
|
|
33
63
|
|
|
34
64
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../src/providers/DataProvider/index.tsx"],"sourcesContent":["import type { IdentityRepositories } from \"@/apis\";\nimport type { ReactNode } from \"react\";\n\nimport { useEffect } from \"react\";\nimport { ApiAssetRepository, ApiAuthRepository, IdentityRepositoriesContext, setIdentityRepositories } from \"@/apis\";\nimport { scheduleAccessTokenRefresh } from \"@/apis/authRefresh\";\nimport { AuthStore, subscribeAuthStorageSync } from \"@/stores/auth\";\n\nconst defaultIdentityRepositories: IdentityRepositories = {\n auth: new ApiAuthRepository(),\n asset: new ApiAssetRepository(),\n};\n\nsetIdentityRepositories(defaultIdentityRepositories);\n\nexport interface DataProviderProps {\n children: ReactNode;\n repositories?: IdentityRepositories;\n}\n\nfunction AuthSessionBootstrap() {\n useEffect(() => {\n const accessToken = AuthStore.getState().accessToken;\n if (accessToken) scheduleAccessTokenRefresh(accessToken);\n return subscribeAuthStorageSync(() => {\n const next = AuthStore.getState().accessToken;\n if (next) scheduleAccessTokenRefresh(next);\n });\n }, []);\n return null;\n}\n\nexport function DataProvider({ children, repositories }: DataProviderProps) {\n const value = repositories ?? defaultIdentityRepositories;\n setIdentityRepositories(value);\n return (\n <IdentityRepositoriesContext.Provider value={value}>\n <AuthSessionBootstrap />\n {children}\n </IdentityRepositoriesContext.Provider>\n );\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/providers/DataProvider/index.tsx"],"sourcesContent":["import type { IdentityRepositories } from \"@/apis\";\nimport type { ReactNode } from \"react\";\n\nimport { useEffect, useMemo } from \"react\";\nimport { ApiAssetRepository, ApiAuthRepository, IdentityRepositoriesContext, setIdentityRepositories, useAuthRepository } from \"@/apis\";\nimport { scheduleAccessTokenRefresh } from \"@/apis/authRefresh\";\nimport { useAuthQueryScope, useCurrentProfile } from \"@/hooks/auth\";\nimport { configurePreferenceSync, useApplyPreferenceOnLoad } from \"@/hooks/preference\";\nimport { AuthStore, hasSelectedProfile, subscribeAuthStorageSync } from \"@/stores/auth\";\nimport { parseServerPreference, toServerPreference } from \"@/stores/preference\";\n\nconst defaultIdentityRepositories: IdentityRepositories = {\n auth: new ApiAuthRepository(),\n asset: new ApiAssetRepository(),\n};\n\nsetIdentityRepositories(defaultIdentityRepositories);\n\nexport interface DataProviderProps {\n children: ReactNode;\n repositories?: IdentityRepositories;\n}\n\nfunction AuthSessionBootstrap() {\n useEffect(() => {\n const accessToken = AuthStore.getState().accessToken;\n if (accessToken) scheduleAccessTokenRefresh(accessToken);\n return subscribeAuthStorageSync(() => {\n const next = AuthStore.getState().accessToken;\n if (next) scheduleAccessTokenRefresh(next);\n });\n }, []);\n return null;\n}\n\nfunction AuthPreferenceSync() {\n const auth = useAuthRepository();\n const { kind, isAuthValid, pID } = useAuthQueryScope();\n const { profile } = useCurrentProfile();\n\n useEffect(() => {\n if (!isAuthValid || !hasSelectedProfile(pID)) {\n configurePreferenceSync(undefined);\n return;\n }\n configurePreferenceSync((state) => {\n void auth.UpdatePreference(kind, JSON.stringify(toServerPreference(state)));\n });\n return () => configurePreferenceSync(undefined);\n }, [auth, kind, isAuthValid, pID]);\n\n const serverPreference = useMemo(() => (profile?.preference ? parseServerPreference(profile.preference) : null), [profile?.preference]);\n\n useApplyPreferenceOnLoad({\n isAuthValid: isAuthValid && hasSelectedProfile(pID),\n applyKey: pID,\n serverPreference,\n });\n\n return null;\n}\n\nexport function DataProvider({ children, repositories }: DataProviderProps) {\n const value = repositories ?? defaultIdentityRepositories;\n setIdentityRepositories(value);\n return (\n <IdentityRepositoriesContext.Provider value={value}>\n <AuthSessionBootstrap />\n <AuthPreferenceSync />\n {children}\n </IdentityRepositoriesContext.Provider>\n );\n}\n"],"mappings":";;;;;;;;;;;;AAWA,IAAM,IAAoD;CACxD,MAAM,IAAI,EAAkB;CAC5B,OAAO,IAAI,EAAmB;AAChC;AAEA,EAAwB,CAA2B;AAOnD,SAAS,IAAuB;CAS9B,OARA,QAAgB;EACd,IAAM,IAAc,EAAU,SAAS,CAAC,CAAC;EAEzC,OADI,KAAa,EAA2B,CAAW,GAChD,QAA+B;GACpC,IAAM,IAAO,EAAU,SAAS,CAAC,CAAC;GAClC,AAAI,KAAM,EAA2B,CAAI;EAC3C,CAAC;CACH,GAAG,CAAC,CAAC,GACE;AACT;AAEA,SAAS,IAAqB;CAC5B,IAAM,IAAO,EAAkB,GACzB,EAAE,SAAM,gBAAa,WAAQ,EAAkB,GAC/C,EAAE,eAAY,EAAkB;CAEtC,QAAgB;EACd,IAAI,CAAC,KAAe,CAAC,EAAmB,CAAG,GAAG;GAC5C,EAAwB,KAAA,CAAS;GACjC;EACF;EAIA,OAHA,GAAyB,MAAU;GACjC,EAAU,iBAAiB,GAAM,KAAK,UAAU,EAAmB,CAAK,CAAC,CAAC;EAC5E,CAAC,SACY,EAAwB,KAAA,CAAS;CAChD,GAAG;EAAC;EAAM;EAAM;EAAa;CAAG,CAAC;CAEjC,IAAM,IAAmB,QAAe,GAAS,aAAa,EAAsB,EAAQ,UAAU,IAAI,MAAO,CAAC,GAAS,UAAU,CAAC;CAQtI,OANA,EAAyB;EACvB,aAAa,KAAe,EAAmB,CAAG;EAClD,UAAU;EACV;CACF,CAAC,GAEM;AACT;AAEA,SAAgB,EAAa,EAAE,aAAU,mBAAmC;CAC1E,IAAM,IAAQ,KAAgB;CAE9B,OADA,EAAwB,CAAK,GAE3B,kBAAC,EAA4B,UAA7B;EAA6C;EAA7C,UAAA;GACE,kBAAC,GAAD,CAAuB,CAAA;GACvB,kBAAC,GAAD,CAAqB,CAAA;GACpB;EACmC;;AAE1C"}
|
|
@@ -39,16 +39,6 @@ export declare namespace Login {
|
|
|
39
39
|
password: string;
|
|
40
40
|
deviceId: string;
|
|
41
41
|
}
|
|
42
|
-
interface LoginWithGitHub {
|
|
43
|
-
code: string;
|
|
44
|
-
state: string;
|
|
45
|
-
deviceId: string;
|
|
46
|
-
signupPlatform: string;
|
|
47
|
-
}
|
|
48
|
-
interface LinkGitHub {
|
|
49
|
-
code: string;
|
|
50
|
-
state: string;
|
|
51
|
-
}
|
|
52
42
|
interface SelectProfile {
|
|
53
43
|
profileId: string;
|
|
54
44
|
kind: ProfileKindEnum;
|
|
@@ -100,11 +90,6 @@ export declare namespace Login {
|
|
|
100
90
|
profiles: ProfileItem[];
|
|
101
91
|
}
|
|
102
92
|
type LoginWithPhone = LoginWithEmail;
|
|
103
|
-
type LoginWithGitHub = LoginWithEmail;
|
|
104
|
-
interface GitHubAuthorizeUrl {
|
|
105
|
-
authorizeUrl: string;
|
|
106
|
-
state: string;
|
|
107
|
-
}
|
|
108
93
|
interface SelectProfile {
|
|
109
94
|
accountId: string;
|
|
110
95
|
profileId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../../src/types/domain/auth/login.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAExD,yBAAiB,KAAK,CAAC;IACrB,KAAY,WAAW,GAAG,eAAe,CAAC;IAE1C,UAAiB,WAAW;QAC1B,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,WAAW,CAAC;QAClB,KAAK,EAAE,WAAW,EAAE,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9B,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACvB,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;KAC3B;IAED,UAAiB,SAAS;QACxB,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB;IAED,UAAiB,SAAS;QACxB,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB;IAED,UAAiB,OAAO,CAAC;QACvB,UAAiB,cAAc;YAC7B,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,EAAE,MAAM,CAAC;YACjB,QAAQ,EAAE,MAAM,CAAC;SAClB;QAED,UAAiB,cAAc;YAC7B,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,EAAE,MAAM,CAAC;YACjB,QAAQ,EAAE,MAAM,CAAC;SAClB;QAED,UAAiB,
|
|
1
|
+
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../../src/types/domain/auth/login.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAExD,yBAAiB,KAAK,CAAC;IACrB,KAAY,WAAW,GAAG,eAAe,CAAC;IAE1C,UAAiB,WAAW;QAC1B,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,WAAW,CAAC;QAClB,KAAK,EAAE,WAAW,EAAE,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9B,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACvB,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;KAC3B;IAED,UAAiB,SAAS;QACxB,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB;IAED,UAAiB,SAAS;QACxB,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB;IAED,UAAiB,OAAO,CAAC;QACvB,UAAiB,cAAc;YAC7B,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,EAAE,MAAM,CAAC;YACjB,QAAQ,EAAE,MAAM,CAAC;SAClB;QAED,UAAiB,cAAc;YAC7B,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,EAAE,MAAM,CAAC;YACjB,QAAQ,EAAE,MAAM,CAAC;SAClB;QAED,UAAiB,aAAa;YAC5B,SAAS,EAAE,MAAM,CAAC;YAClB,IAAI,EAAE,eAAe,CAAC;YACtB,QAAQ,EAAE,MAAM,CAAC;SAClB;QAED,UAAiB,mBAAmB;YAClC,WAAW,EAAE,MAAM,CAAC;YACpB,eAAe,EAAE,YAAY,CAAC;SAC/B;QAED,UAAiB,sBAAsB;YACrC,WAAW,EAAE,MAAM,CAAC;YACpB,eAAe,EAAE,YAAY,CAAC;SAC/B;QAED,UAAiB,WAAW;YAC1B,KAAK,EAAE,MAAM,CAAC;SACf;QAED,UAAiB,WAAW;YAC1B,KAAK,EAAE,MAAM,CAAC;SACf;QAED,UAAiB,WAAW;YAC1B,KAAK,EAAE,MAAM,CAAC;SACf;QAED,UAAiB,WAAW;YAC1B,gBAAgB,EAAE,MAAM,CAAC;SAC1B;QAED,UAAiB,WAAW;YAC1B,KAAK,EAAE,MAAM,CAAC;SACf;QAED,UAAiB,WAAW;YAC1B,gBAAgB,EAAE,MAAM,CAAC;SAC1B;QAED,UAAiB,yBAAyB;YACxC,IAAI,CAAC,EAAE,YAAY,CAAC;SACrB;QAED,UAAiB,kCAAkC;YACjD,IAAI,CAAC,EAAE,YAAY,CAAC;SACrB;QAED,UAAiB,cAAc;YAC7B,eAAe,EAAE,MAAM,CAAC;YACxB,WAAW,EAAE,MAAM,CAAC;YACpB,gBAAgB,EAAE,MAAM,CAAC;SAC1B;KACF;IAED,UAAiB,QAAQ,CAAC;QACxB,UAAiB,cAAc;YAC7B,SAAS,EAAE,MAAM,CAAC;YAClB,WAAW,EAAE,MAAM,CAAC;YACpB,YAAY,EAAE,MAAM,CAAC;YACrB,QAAQ,EAAE,WAAW,EAAE,CAAC;SACzB;QAED,KAAY,cAAc,GAAG,cAAc,CAAC;QAE5C,UAAiB,aAAa;YAC5B,SAAS,EAAE,MAAM,CAAC;YAClB,SAAS,EAAE,MAAM,CAAC;YAClB,WAAW,EAAE,MAAM,CAAC;YACpB,YAAY,EAAE,MAAM,CAAC;SACtB;QAED,UAAiB,mBAAmB;YAClC,SAAS,EAAE,MAAM,CAAC;SACnB;QAED,UAAiB,sBAAsB;YACrC,SAAS,EAAE,MAAM,CAAC;SACnB;QAED,UAAiB,WAAW;YAC1B,OAAO,EAAE,MAAM,CAAC;SACjB;QAED,UAAiB,WAAW;YAC1B,OAAO,EAAE,MAAM,CAAC;SACjB;KACF;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../../../src/types/domain/auth/profile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,UAAU,EACV,WAAW,EACX,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAEjB,yBAAiB,OAAO,CAAC;IACvB,UAAiB,OAAO,CAAC;QACvB,UAAiB,YAAY;YAC3B,eAAe,CAAC,EAAE,YAAY,CAAC;YAC/B,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC9B,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC3B,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC1B,IAAI,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YACvB,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YACzB,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC3B,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC3B,GAAG,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;SACvB;QAED,UAAiB,oBAAoB;YACnC,iBAAiB,CAAC,EAAE,OAAO,CAAC;SAC7B;QAED,UAAiB,oBAAoB;YACnC,OAAO,EAAE,MAAM,CAAC;SACjB;QAED,UAAiB,4BAA4B;YAC3C,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;SACnB;QAED,UAAiB,yBAAyB;YACxC,MAAM,EAAE,4BAA4B,EAAE,CAAC;SACxC;QAED,UAAiB,cAAc;YAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB;QAED,UAAiB,2BAA2B;YAC1C,cAAc,EAAE,qBAAqB,EAAE,CAAC;SACzC;KACF;IAED,UAAiB,QAAQ,CAAC;QACxB,UAAiB,eAAe;YAC9B,MAAM,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;YAC/B,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YAC3B,UAAU,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;YAClC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YAC1B,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;YAC5B,eAAe,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAC5C,UAAU,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACxC;QAED,UAAiB,UAAU;YACzB,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;YAC9B,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../../../src/types/domain/auth/profile.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { AuthSignupPlatformEnum, LanguageEnum } from '../../../enums';
|
|
2
|
+
import { Login } from './login';
|
|
2
3
|
export declare namespace Signup {
|
|
3
4
|
namespace Request {
|
|
4
5
|
interface SendVerificationCode {
|
|
@@ -15,12 +16,7 @@ export declare namespace Signup {
|
|
|
15
16
|
}
|
|
16
17
|
}
|
|
17
18
|
namespace Response {
|
|
18
|
-
|
|
19
|
-
accountId: string;
|
|
20
|
-
profileId: Maybe<string>;
|
|
21
|
-
accessToken: string;
|
|
22
|
-
refreshToken: string;
|
|
23
|
-
}
|
|
19
|
+
type SignupWithEmail = Login.Response.LoginWithEmail;
|
|
24
20
|
}
|
|
25
21
|
}
|
|
26
22
|
//# sourceMappingURL=signup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signup.d.ts","sourceRoot":"","sources":["../../../../src/types/domain/auth/signup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEpE,yBAAiB,MAAM,CAAC;IACtB,UAAiB,OAAO,CAAC;QACvB,UAAiB,oBAAoB;YACnC,KAAK,EAAE,MAAM,CAAC;YACd,IAAI,EAAE,YAAY,CAAC;SACpB;QAED,UAAiB,eAAe;YAC9B,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,EAAE,MAAM,CAAC;YACjB,gBAAgB,EAAE,MAAM,CAAC;YACzB,IAAI,EAAE,YAAY,CAAC;YACnB,QAAQ,EAAE,MAAM,CAAC;YACjB,cAAc,EAAE,sBAAsB,CAAC;SACxC;KACF;IAED,UAAiB,QAAQ,CAAC;QACxB,
|
|
1
|
+
{"version":3,"file":"signup.d.ts","sourceRoot":"","sources":["../../../../src/types/domain/auth/signup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAErC,yBAAiB,MAAM,CAAC;IACtB,UAAiB,OAAO,CAAC;QACvB,UAAiB,oBAAoB;YACnC,KAAK,EAAE,MAAM,CAAC;YACd,IAAI,EAAE,YAAY,CAAC;SACpB;QAED,UAAiB,eAAe;YAC9B,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,EAAE,MAAM,CAAC;YACjB,gBAAgB,EAAE,MAAM,CAAC;YACzB,IAAI,EAAE,YAAY,CAAC;YACnB,QAAQ,EAAE,MAAM,CAAC;YACjB,cAAc,EAAE,sBAAsB,CAAC;SACxC;KACF;IAED,UAAiB,QAAQ,CAAC;QACxB,KAAY,eAAe,GAAG,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC;KAC7D;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildProfilePatch.d.ts","sourceRoot":"","sources":["../../../src/utils/domain/buildProfilePatch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"buildProfilePatch.d.ts","sourceRoot":"","sources":["../../../src/utils/domain/buildProfilePatch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAOvC,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAwBrJ"}
|
|
@@ -3,18 +3,15 @@ import { Language as n } from "../../enums/language.js";
|
|
|
3
3
|
import { toDateInputValue as r } from "../time.js";
|
|
4
4
|
import { assignIfChanged as i, assignNullableString as a, normalizeOptionalString as o } from "../primitive/patch.js";
|
|
5
5
|
//#region src/utils/domain/buildProfilePatch.ts
|
|
6
|
-
function s(
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
if (i(u, "profileLanguage", l.profileLanguage, n(c?.profileLanguage)), a(u, "displayName", l.displayName, e(c?.displayName)), a(u, "firstName", l.firstName, e(c?.firstName)), a(u, "lastName", l.lastName, e(c?.lastName)), a(u, "country", l.country, e(c?.country)), a(u, "city", l.city, e(c?.city)), a(u, "gender", l.gender, e(c?.gender)), a(u, "website", l.website, e(c?.website)), a(u, "timezone", l.timezone, e(c?.timezone)), a(u, "bio", l.bio, e(c?.bio)), l.birthday !== void 0) {
|
|
12
|
-
let e = o(t(l.birthday));
|
|
13
|
-
e !== (c?.birthday ? r(c.birthday) : null) && (u.birthday = e ? s(e) : null);
|
|
6
|
+
function s(s, c) {
|
|
7
|
+
let l = {};
|
|
8
|
+
if (i(l, "profileLanguage", c.profileLanguage, n(s?.profileLanguage)), a(l, "displayName", c.displayName, e(s?.displayName)), a(l, "firstName", c.firstName, e(s?.firstName)), a(l, "lastName", c.lastName, e(s?.lastName)), a(l, "country", c.country, e(s?.country)), a(l, "city", c.city, e(s?.city)), a(l, "gender", c.gender, e(s?.gender)), a(l, "website", c.website, e(s?.website)), a(l, "timezone", c.timezone, e(s?.timezone)), a(l, "bio", c.bio, e(s?.bio)), c.birthday !== void 0) {
|
|
9
|
+
let e = o(t(c.birthday));
|
|
10
|
+
e !== (s?.birthday ? r(s.birthday) : null) && (l.birthday = e || null);
|
|
14
11
|
}
|
|
15
|
-
return
|
|
12
|
+
return l;
|
|
16
13
|
}
|
|
17
14
|
//#endregion
|
|
18
|
-
export {
|
|
15
|
+
export { s as buildProfilePatch };
|
|
19
16
|
|
|
20
17
|
//# sourceMappingURL=buildProfilePatch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildProfilePatch.js","names":[],"sources":["../../../src/utils/domain/buildProfilePatch.ts"],"sourcesContent":["import type { UserProfileEditFormData } from \"@/schemas\";\nimport type { Profile } from \"@/types\";\n\nimport { Language } from \"@/enums\";\nimport {
|
|
1
|
+
{"version":3,"file":"buildProfilePatch.js","names":[],"sources":["../../../src/utils/domain/buildProfilePatch.ts"],"sourcesContent":["import type { UserProfileEditFormData } from \"@/schemas\";\nimport type { Profile } from \"@/types\";\n\nimport { Language } from \"@/enums\";\nimport { assignIfChanged, assignNullableString, normalizeOptionalString } from \"@/utils/primitive/patch\";\nimport { safeNullable, safeStringable } from \"@/utils/safe\";\nimport { toDateInputValue } from \"@/utils/time\";\n\nexport function buildProfilePatch(original: Maybe<Profile.Response.ProfileBase>, form: Partial<UserProfileEditFormData>): Profile.Request.PatchProfile {\n const patch: Profile.Request.PatchProfile = {};\n\n assignIfChanged(patch, \"profileLanguage\", form.profileLanguage, Language(original?.profileLanguage));\n\n assignNullableString(patch, \"displayName\", form.displayName, safeNullable(original?.displayName));\n assignNullableString(patch, \"firstName\", form.firstName, safeNullable(original?.firstName));\n assignNullableString(patch, \"lastName\", form.lastName, safeNullable(original?.lastName));\n assignNullableString(patch, \"country\", form.country, safeNullable(original?.country));\n assignNullableString(patch, \"city\", form.city, safeNullable(original?.city));\n assignNullableString(patch, \"gender\", form.gender, safeNullable(original?.gender));\n assignNullableString(patch, \"website\", form.website, safeNullable(original?.website));\n assignNullableString(patch, \"timezone\", form.timezone, safeNullable(original?.timezone));\n assignNullableString(patch, \"bio\", form.bio, safeNullable(original?.bio));\n\n if (form.birthday !== undefined) {\n const nextBirthday = normalizeOptionalString(safeStringable(form.birthday));\n const previousBirthday = original?.birthday ? toDateInputValue(original.birthday) : null;\n if (nextBirthday !== previousBirthday) {\n patch.birthday = nextBirthday || null;\n }\n }\n\n return patch;\n}\n"],"mappings":";;;;;AAQA,SAAgB,EAAkB,GAA+C,GAAsE;CACrJ,IAAM,IAAsC,CAAC;CAc7C,IAZA,EAAgB,GAAO,mBAAmB,EAAK,iBAAiB,EAAS,GAAU,eAAe,CAAC,GAEnG,EAAqB,GAAO,eAAe,EAAK,aAAa,EAAa,GAAU,WAAW,CAAC,GAChG,EAAqB,GAAO,aAAa,EAAK,WAAW,EAAa,GAAU,SAAS,CAAC,GAC1F,EAAqB,GAAO,YAAY,EAAK,UAAU,EAAa,GAAU,QAAQ,CAAC,GACvF,EAAqB,GAAO,WAAW,EAAK,SAAS,EAAa,GAAU,OAAO,CAAC,GACpF,EAAqB,GAAO,QAAQ,EAAK,MAAM,EAAa,GAAU,IAAI,CAAC,GAC3E,EAAqB,GAAO,UAAU,EAAK,QAAQ,EAAa,GAAU,MAAM,CAAC,GACjF,EAAqB,GAAO,WAAW,EAAK,SAAS,EAAa,GAAU,OAAO,CAAC,GACpF,EAAqB,GAAO,YAAY,EAAK,UAAU,EAAa,GAAU,QAAQ,CAAC,GACvF,EAAqB,GAAO,OAAO,EAAK,KAAK,EAAa,GAAU,GAAG,CAAC,GAEpE,EAAK,aAAa,KAAA,GAAW;EAC/B,IAAM,IAAe,EAAwB,EAAe,EAAK,QAAQ,CAAC;EAE1E,AAAI,OADqB,GAAU,WAAW,EAAiB,EAAS,QAAQ,IAAI,UAElF,EAAM,WAAW,KAAgB;CAErC;CAEA,OAAO;AACT"}
|
package/package.json
CHANGED
package/src/apis/ip.ts
CHANGED
|
@@ -27,8 +27,6 @@ export const URL_PATHS = {
|
|
|
27
27
|
AUTH: path("/auth", {
|
|
28
28
|
LoginWithEmail: "/login/with-email",
|
|
29
29
|
LoginWithPhone: "/login/with-phone",
|
|
30
|
-
LoginGitHub: "/login/github",
|
|
31
|
-
LoginGitHubUrl: "/login/github/url",
|
|
32
30
|
SignupSendCode: "/signup/send-code",
|
|
33
31
|
SignupWithEmail: "/signup/with-email",
|
|
34
32
|
Refresh: "/refresh",
|
|
@@ -60,7 +58,6 @@ export const URL_PATHS = {
|
|
|
60
58
|
AuthorityProfiles: "/authority-profiles",
|
|
61
59
|
SearchAuthorityProfiles: "/authority-profiles/search",
|
|
62
60
|
AuthorityProfileById: (profileId: string) => `/authority-profiles/${profileId}`,
|
|
63
|
-
GitHub: "/github",
|
|
64
61
|
Emails: "/emails",
|
|
65
62
|
EmailById: (emailId: string) => `/emails/${emailId}`,
|
|
66
63
|
EmailSendVerificationCode: (emailId: string) => `/emails/${emailId}/send-verification-code`,
|
|
@@ -11,10 +11,6 @@ export interface AuthRepository {
|
|
|
11
11
|
SignupWithEmail(params: Signup.Request.SignupWithEmail): Promise<Signup.Response.SignupWithEmail>;
|
|
12
12
|
LoginWithEmail(params: Login.Request.LoginWithEmail): Promise<Login.Response.LoginWithEmail>;
|
|
13
13
|
LoginWithPhone(params: Login.Request.LoginWithPhone): Promise<Login.Response.LoginWithPhone>;
|
|
14
|
-
GetGitHubAuthorizeUrl(): Promise<Login.Response.GitHubAuthorizeUrl>;
|
|
15
|
-
LoginWithGitHub(params: Login.Request.LoginWithGitHub): Promise<Login.Response.LoginWithGitHub>;
|
|
16
|
-
LinkGitHub(params: Login.Request.LinkGitHub): Promise<void>;
|
|
17
|
-
UnlinkGitHub(): Promise<void>;
|
|
18
14
|
SelectProfile(params: Login.Request.SelectProfile): Promise<Login.Response.SelectProfile>;
|
|
19
15
|
GetCurrentFullAccountInformationWithProfile<K extends ProfileKindEnum>(kind: K): Promise<FullAccountInfoByKind<K>>;
|
|
20
16
|
PatchProfile(kind: ProfileKindEnum, body: Profile.Request.PatchProfile): Promise<void>;
|
|
@@ -78,24 +74,6 @@ export class ApiAuthRepository implements AuthRepository {
|
|
|
78
74
|
return data.data;
|
|
79
75
|
}
|
|
80
76
|
|
|
81
|
-
async GetGitHubAuthorizeUrl(): Promise<Login.Response.GitHubAuthorizeUrl> {
|
|
82
|
-
const { data } = await publicClient.get<DataResponse<Login.Response.GitHubAuthorizeUrl>>(URL_PATHS.AUTH.LoginGitHubUrl);
|
|
83
|
-
return data.data;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
async LoginWithGitHub(params: Login.Request.LoginWithGitHub): Promise<Login.Response.LoginWithGitHub> {
|
|
87
|
-
const { data } = await publicClient.post<DataResponse<Login.Response.LoginWithGitHub>>(URL_PATHS.AUTH.LoginGitHub, params);
|
|
88
|
-
return data.data;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
async LinkGitHub(params: Login.Request.LinkGitHub): Promise<void> {
|
|
92
|
-
await protectedClient.post(URL_PATHS.AUTH.Me.GitHub, params);
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
async UnlinkGitHub(): Promise<void> {
|
|
96
|
-
await protectedClient.delete(URL_PATHS.AUTH.Me.GitHub);
|
|
97
|
-
}
|
|
98
|
-
|
|
99
77
|
async SelectProfile(params: Login.Request.SelectProfile): Promise<Login.Response.SelectProfile> {
|
|
100
78
|
const { data } = await protectedClient.post<DataResponse<Login.Response.SelectProfile>>(URL_PATHS.AUTH.Me.SelectProfile, params);
|
|
101
79
|
return dataFromResponse(data, "SelectProfile");
|
package/src/enums/auth.ts
CHANGED
|
@@ -66,7 +66,6 @@ export const AuthSignupPlatform = (value: Nilable<string>) =>
|
|
|
66
66
|
|
|
67
67
|
export enum AuthIdentityProviderEnum {
|
|
68
68
|
PASSWORD = "password",
|
|
69
|
-
GITHUB = "github",
|
|
70
69
|
}
|
|
71
70
|
export const DEFAULT_AUTH_IDENTITY_PROVIDER = AuthIdentityProviderEnum.PASSWORD;
|
|
72
71
|
export const AUTH_IDENTITY_PROVIDER_VALUES = Object.values(AuthIdentityProviderEnum);
|
package/src/hooks/auth.ts
CHANGED
|
@@ -89,14 +89,23 @@ export const useSignupWithEmail = () => {
|
|
|
89
89
|
...params
|
|
90
90
|
}: {
|
|
91
91
|
rememberMe: boolean;
|
|
92
|
-
} & Omit<Signup.Request.SignupWithEmail, "deviceId">) =>
|
|
93
|
-
|
|
92
|
+
} & Omit<Signup.Request.SignupWithEmail, "deviceId">): Promise<Signup.Response.SignupWithEmail & { profileId?: string }> => {
|
|
93
|
+
const deviceId = await ensureDeviceIdStorage();
|
|
94
|
+
const result = await auth.SignupWithEmail({
|
|
94
95
|
...params,
|
|
95
|
-
deviceId
|
|
96
|
-
})
|
|
96
|
+
deviceId,
|
|
97
|
+
});
|
|
98
|
+
const first = result.profiles?.find((p) => p.kind === ProfileKindEnum.FORGER) ?? result.profiles?.[0];
|
|
99
|
+
if (!first) return result;
|
|
100
|
+
const selected = await auth.SelectProfile({
|
|
101
|
+
profileId: first.profileId,
|
|
102
|
+
kind: first.kind,
|
|
103
|
+
deviceId,
|
|
104
|
+
});
|
|
105
|
+
return { ...result, accessToken: selected.accessToken, refreshToken: selected.refreshToken, profileId: selected.profileId };
|
|
106
|
+
},
|
|
97
107
|
onSuccess: (result, variables) => {
|
|
98
108
|
if (!result?.accessToken) return;
|
|
99
|
-
setCurrentProfileId(result.profileId || EMPTY_PROFILE_ID);
|
|
100
109
|
setTokens(
|
|
101
110
|
{
|
|
102
111
|
accessToken: result.accessToken,
|
|
@@ -107,8 +116,11 @@ export const useSignupWithEmail = () => {
|
|
|
107
116
|
setIsAuthValid(true);
|
|
108
117
|
if (result.accountId) setCurrentAccountId(result.accountId);
|
|
109
118
|
if (result.profileId) {
|
|
119
|
+
setCurrentProfileId(result.profileId);
|
|
110
120
|
setCurrentProfileKind(ProfileKindEnum.FORGER);
|
|
111
121
|
authEventEmitter.emit(authEvents.LOGIN_SUCCESS, result.accountId);
|
|
122
|
+
} else {
|
|
123
|
+
setCurrentProfileId(EMPTY_PROFILE_ID);
|
|
112
124
|
}
|
|
113
125
|
},
|
|
114
126
|
onError: (error: AxiosError) => {
|
|
@@ -252,60 +264,6 @@ export const useDeleteProfile = () => {
|
|
|
252
264
|
});
|
|
253
265
|
};
|
|
254
266
|
|
|
255
|
-
export const useGetGitHubAuthorizeUrl = () => {
|
|
256
|
-
const auth = useAuthRepository();
|
|
257
|
-
return useMutation({
|
|
258
|
-
mutationFn: () => auth.GetGitHubAuthorizeUrl(),
|
|
259
|
-
onError: (error: AxiosError) => {
|
|
260
|
-
systemEventEmitter.showError(getApiErrorMessage(error, "[useGetGitHubAuthorizeUrl] error"));
|
|
261
|
-
},
|
|
262
|
-
});
|
|
263
|
-
};
|
|
264
|
-
|
|
265
|
-
export const useLoginWithGitHub = () => {
|
|
266
|
-
const auth = useAuthRepository();
|
|
267
|
-
return useMutation({
|
|
268
|
-
mutationFn: async (params: { code: string; state: string; signupPlatform: AuthSignupPlatformEnum }) =>
|
|
269
|
-
auth.LoginWithGitHub({
|
|
270
|
-
...params,
|
|
271
|
-
deviceId: await ensureDeviceIdStorage(),
|
|
272
|
-
}),
|
|
273
|
-
onSuccess: (result) => {
|
|
274
|
-
if (!result?.accessToken) return;
|
|
275
|
-
setCurrentProfileId(EMPTY_PROFILE_ID);
|
|
276
|
-
setTokens({
|
|
277
|
-
accessToken: result.accessToken,
|
|
278
|
-
refreshToken: safeStringable(result.refreshToken),
|
|
279
|
-
});
|
|
280
|
-
setIsAuthValid(true);
|
|
281
|
-
if (result.accountId) setCurrentAccountId(result.accountId);
|
|
282
|
-
},
|
|
283
|
-
onError: (error: AxiosError) => {
|
|
284
|
-
systemEventEmitter.showError(getApiErrorMessage(error, "[useLoginWithGitHub] error"));
|
|
285
|
-
},
|
|
286
|
-
});
|
|
287
|
-
};
|
|
288
|
-
|
|
289
|
-
export const useLinkGitHub = () => {
|
|
290
|
-
const auth = useAuthRepository();
|
|
291
|
-
return useMutation({
|
|
292
|
-
mutationFn: (params: Login.Request.LinkGitHub) => auth.LinkGitHub(params),
|
|
293
|
-
onError: (error: AxiosError) => {
|
|
294
|
-
systemEventEmitter.showError(getApiErrorMessage(error, "[useLinkGitHub] error"));
|
|
295
|
-
},
|
|
296
|
-
});
|
|
297
|
-
};
|
|
298
|
-
|
|
299
|
-
export const useUnlinkGitHub = () => {
|
|
300
|
-
const auth = useAuthRepository();
|
|
301
|
-
return useMutation({
|
|
302
|
-
mutationFn: () => auth.UnlinkGitHub(),
|
|
303
|
-
onError: (error: AxiosError) => {
|
|
304
|
-
systemEventEmitter.showError(getApiErrorMessage(error, "[useUnlinkGitHub] error"));
|
|
305
|
-
},
|
|
306
|
-
});
|
|
307
|
-
};
|
|
308
|
-
|
|
309
267
|
export const useConfirmProfileAvatar = () => {
|
|
310
268
|
const auth = useAuthRepository();
|
|
311
269
|
const { kind } = useAuthQueryScope();
|