refactor(auth): 重构认证流程和会话管理
This commit is contained in:
@@ -4,6 +4,7 @@ import {useMutation, useQuery, useQueryClient} from '@tanstack/react-query'
|
||||
import {addressAdd, addressDelete, addressEdit, addressList} from '@/api/address.ts'
|
||||
import {validateAddressFormSubmission} from '@/features/addressBook/addressValidation'
|
||||
import {notifyError} from '@/features/notifications'
|
||||
import {ensureSessionForAction} from '@/lib/authGuard'
|
||||
import {queryKeys} from '@/lib/queryKeys.ts'
|
||||
import {useUserStore} from '@/store/user.ts'
|
||||
import type {AddressListItem} from '@/types/address.type.ts'
|
||||
@@ -65,7 +66,6 @@ export function useAddressBook(options?: UseAddressBookOptions) {
|
||||
session_id: sessionId!,
|
||||
receiver_name: addressForm.name.trim(),
|
||||
phone: addressForm.phone.trim(),
|
||||
region: editingAddress ? editingAddress.region.map((part) => part.trim()).filter(Boolean).join(', ') : '',
|
||||
detail_address: addressForm.detailedAddress.trim(),
|
||||
default_setting: addressForm.isDefault ? '1' : '0',
|
||||
} as const
|
||||
@@ -138,7 +138,7 @@ export function useAddressBook(options?: UseAddressBookOptions) {
|
||||
}
|
||||
|
||||
const saveAddress = async (editingAddress?: AddressListItem | null) => {
|
||||
if (!sessionId) {
|
||||
if (!ensureSessionForAction() || !sessionId) {
|
||||
return null
|
||||
}
|
||||
|
||||
@@ -163,7 +163,7 @@ export function useAddressBook(options?: UseAddressBookOptions) {
|
||||
}
|
||||
|
||||
const removeAddress = async (addressId: string) => {
|
||||
if (!sessionId) {
|
||||
if (!ensureSessionForAction() || !sessionId) {
|
||||
return null
|
||||
}
|
||||
|
||||
@@ -182,7 +182,7 @@ export function useAddressBook(options?: UseAddressBookOptions) {
|
||||
sessionId,
|
||||
addresses,
|
||||
addressOptions,
|
||||
loading: addressListQuery.isPending || loadAddressesLoading,
|
||||
loading: Boolean(sessionId) && (addressListQuery.isPending || loadAddressesLoading),
|
||||
addressForm,
|
||||
isAddressFormValid,
|
||||
submitLoading: saveAddressMutation.isPending,
|
||||
|
||||
Reference in New Issue
Block a user