mirror of
https://github.com/mayswind/ezbookkeeping.git
synced 2026-05-15 15:37:33 +08:00
code refactor
This commit is contained in:
+27
-20
@@ -11,7 +11,14 @@ import { useOverviewStore } from './overview.js';
|
||||
import { useStatisticsStore } from './statistics.js';
|
||||
import { useExchangeRatesStore } from './exchangeRates.js';
|
||||
|
||||
import userState from '@/lib/userstate.ts';
|
||||
import {
|
||||
hasUserAppLockState,
|
||||
getUserAppLockState,
|
||||
updateCurrentToken,
|
||||
clearWebAuthnConfig,
|
||||
clearCurrentSessionToken,
|
||||
clearCurrentTokenAndUserInfo
|
||||
} from '@/lib/userstate.ts';
|
||||
import services from '@/lib/services.ts';
|
||||
import logger from '@/lib/logger.ts';
|
||||
import { isObject, isString } from '@/lib/common.ts';
|
||||
@@ -75,18 +82,18 @@ export const useRootStore = defineStore('root', {
|
||||
return;
|
||||
}
|
||||
|
||||
if (settingsStore.appSettings.applicationLock || userState.getUserAppLockState()) {
|
||||
const appLockState = userState.getUserAppLockState();
|
||||
if (settingsStore.appSettings.applicationLock || hasUserAppLockState()) {
|
||||
const appLockState = getUserAppLockState();
|
||||
|
||||
if (!appLockState || appLockState.username !== data.result.user.username) {
|
||||
userState.clearTokenAndUserInfo(true);
|
||||
clearCurrentTokenAndUserInfo(true);
|
||||
settingsStore.setEnableApplicationLock(false);
|
||||
settingsStore.setEnableApplicationLockWebAuthn(false);
|
||||
userState.clearWebAuthnConfig();
|
||||
clearWebAuthnConfig();
|
||||
}
|
||||
}
|
||||
|
||||
userState.updateToken(data.result.token);
|
||||
updateCurrentToken(data.result.token);
|
||||
|
||||
if (data.result.user && isObject(data.result.user)) {
|
||||
const userStore = useUserStore();
|
||||
@@ -136,18 +143,18 @@ export const useRootStore = defineStore('root', {
|
||||
return;
|
||||
}
|
||||
|
||||
if (settingsStore.appSettings.applicationLock || userState.getUserAppLockState()) {
|
||||
const appLockState = userState.getUserAppLockState();
|
||||
if (settingsStore.appSettings.applicationLock || hasUserAppLockState()) {
|
||||
const appLockState = getUserAppLockState();
|
||||
|
||||
if (!appLockState || appLockState.username !== data.result.user.username) {
|
||||
userState.clearTokenAndUserInfo(true);
|
||||
clearCurrentTokenAndUserInfo(true);
|
||||
settingsStore.setEnableApplicationLock(false);
|
||||
settingsStore.setEnableApplicationLockWebAuthn(false);
|
||||
userState.clearWebAuthnConfig();
|
||||
clearWebAuthnConfig();
|
||||
}
|
||||
}
|
||||
|
||||
userState.updateToken(data.result.token);
|
||||
updateCurrentToken(data.result.token);
|
||||
|
||||
if (data.result.user && isObject(data.result.user)) {
|
||||
const userStore = useUserStore();
|
||||
@@ -192,11 +199,11 @@ export const useRootStore = defineStore('root', {
|
||||
if (settingsStore.appSettings.applicationLock) {
|
||||
settingsStore.setEnableApplicationLock(false);
|
||||
settingsStore.setEnableApplicationLockWebAuthn(false);
|
||||
userState.clearWebAuthnConfig();
|
||||
clearWebAuthnConfig();
|
||||
}
|
||||
|
||||
if (data.result.token && isString(data.result.token)) {
|
||||
userState.updateToken(data.result.token);
|
||||
updateCurrentToken(data.result.token);
|
||||
}
|
||||
|
||||
if (data.result.user && isObject(data.result.user)) {
|
||||
@@ -219,7 +226,7 @@ export const useRootStore = defineStore('root', {
|
||||
});
|
||||
},
|
||||
lock() {
|
||||
userState.clearSessionToken();
|
||||
clearCurrentSessionToken();
|
||||
this.resetAllStates(false);
|
||||
},
|
||||
logout() {
|
||||
@@ -234,8 +241,8 @@ export const useRootStore = defineStore('root', {
|
||||
return;
|
||||
}
|
||||
|
||||
userState.clearTokenAndUserInfo(true);
|
||||
userState.clearWebAuthnConfig();
|
||||
clearCurrentTokenAndUserInfo(true);
|
||||
clearWebAuthnConfig();
|
||||
self.resetAllStates(true);
|
||||
|
||||
resolve(data.result);
|
||||
@@ -253,8 +260,8 @@ export const useRootStore = defineStore('root', {
|
||||
});
|
||||
},
|
||||
forceLogout() {
|
||||
userState.clearTokenAndUserInfo(true);
|
||||
userState.clearWebAuthnConfig();
|
||||
clearCurrentTokenAndUserInfo(true);
|
||||
clearWebAuthnConfig();
|
||||
this.resetAllStates(true);
|
||||
},
|
||||
verifyEmail({ token, requestNewToken }) {
|
||||
@@ -271,7 +278,7 @@ export const useRootStore = defineStore('root', {
|
||||
}
|
||||
|
||||
if (data.result.newToken && isString(data.result.newToken)) {
|
||||
userState.updateToken(data.result.newToken);
|
||||
updateCurrentToken(data.result.newToken);
|
||||
}
|
||||
|
||||
if (data.result.user && isObject(data.result.user)) {
|
||||
@@ -405,7 +412,7 @@ export const useRootStore = defineStore('root', {
|
||||
}
|
||||
|
||||
if (data.result.newToken && isString(data.result.newToken)) {
|
||||
userState.updateToken(data.result.newToken);
|
||||
updateCurrentToken(data.result.newToken);
|
||||
}
|
||||
|
||||
if (data.result.user && isObject(data.result.user)) {
|
||||
|
||||
+2
-2
@@ -2,7 +2,7 @@ import { defineStore } from 'pinia';
|
||||
|
||||
import { useUserStore } from './user.js';
|
||||
|
||||
import userState from '@/lib/userstate.ts';
|
||||
import { updateCurrentToken } from '@/lib/userstate.ts';
|
||||
import services from '@/lib/services.ts';
|
||||
import logger from '@/lib/logger.ts';
|
||||
import { isObject } from '@/lib/common.ts';
|
||||
@@ -46,7 +46,7 @@ export const useTokensStore = defineStore('tokens', {
|
||||
}
|
||||
|
||||
if (data && data.success && data.result && data.result.newToken) {
|
||||
userState.updateToken(data.result.newToken);
|
||||
updateCurrentToken(data.result.newToken);
|
||||
|
||||
if (data.result.oldTokenId) {
|
||||
self.revokeToken({
|
||||
|
||||
@@ -12,7 +12,11 @@ import { DateRange } from '@/core/datetime.ts';
|
||||
import { CategoryType } from '@/core/category.ts';
|
||||
import { TransactionType, TransactionTagFilterType } from '@/core/transaction.ts';
|
||||
import { TRANSACTION_MIN_AMOUNT, TRANSACTION_MAX_AMOUNT } from '@/consts/transaction.ts';
|
||||
import userState from '@/lib/userstate.ts';
|
||||
import {
|
||||
getUserTransactionDraft,
|
||||
updateUserTransactionDraft,
|
||||
clearUserTransactionDraft
|
||||
} from '@/lib/userstate.ts';
|
||||
import services from '@/lib/services.ts';
|
||||
import logger from '@/lib/logger.ts';
|
||||
import {
|
||||
@@ -366,7 +370,7 @@ function buildTransactionDraft(transaction) {
|
||||
|
||||
export const useTransactionsStore = defineStore('transactions', {
|
||||
state: () => ({
|
||||
transactionDraft: userState.getUserTransactionDraft(),
|
||||
transactionDraft: getUserTransactionDraft(),
|
||||
transactionsFilter: {
|
||||
dateType: DateRange.All.type,
|
||||
maxTime: 0,
|
||||
@@ -502,7 +506,7 @@ export const useTransactionsStore = defineStore('transactions', {
|
||||
const settingsStore = useSettingsStore();
|
||||
|
||||
if (settingsStore.appSettings.autoSaveTransactionDraft === 'enabled' || settingsStore.appSettings.autoSaveTransactionDraft === 'confirmation') {
|
||||
this.transactionDraft = userState.getUserTransactionDraft();
|
||||
this.transactionDraft = getUserTransactionDraft();
|
||||
} else {
|
||||
this.transactionDraft = null;
|
||||
}
|
||||
@@ -590,11 +594,11 @@ export const useTransactionsStore = defineStore('transactions', {
|
||||
this.transactionDraft = buildTransactionDraft(transaction);
|
||||
}
|
||||
|
||||
userState.updateUserTransactionDraft(this.transactionDraft);
|
||||
updateUserTransactionDraft(this.transactionDraft);
|
||||
},
|
||||
clearTransactionDraft() {
|
||||
this.transactionDraft = null;
|
||||
userState.clearUserTransactionDraft();
|
||||
clearUserTransactionDraft();
|
||||
},
|
||||
generateNewTransactionModel(type) {
|
||||
const settingsStore = useSettingsStore();
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { defineStore } from 'pinia';
|
||||
|
||||
import userState from '@/lib/userstate.ts';
|
||||
import { updateCurrentToken } from '@/lib/userstate.ts';
|
||||
import services from '@/lib/services.ts';
|
||||
import logger from '@/lib/logger.ts';
|
||||
import { isBoolean } from '@/lib/common.ts';
|
||||
@@ -69,7 +69,7 @@ export const useTwoFactorAuthStore = defineStore('twoFactorAuth', {
|
||||
}
|
||||
|
||||
if (data.result.token) {
|
||||
userState.updateToken(data.result.token);
|
||||
updateCurrentToken(data.result.token);
|
||||
}
|
||||
|
||||
resolve(data.result);
|
||||
|
||||
+8
-4
@@ -2,7 +2,11 @@ import { defineStore } from 'pinia';
|
||||
|
||||
import { useSettingsStore } from './setting.ts';
|
||||
|
||||
import userState from '@/lib/userstate.ts';
|
||||
import {
|
||||
getCurrentUserInfo,
|
||||
updateCurrentUserInfo,
|
||||
clearCurrentUserInfo
|
||||
} from '@/lib/userstate.ts';
|
||||
import services from '@/lib/services.ts';
|
||||
import logger from '@/lib/logger.ts';
|
||||
import {
|
||||
@@ -12,7 +16,7 @@ import {
|
||||
|
||||
export const useUserStore = defineStore('user', {
|
||||
state: () => ({
|
||||
currentUserBasicInfo: userState.getUserInfo()
|
||||
currentUserBasicInfo: getCurrentUserInfo()
|
||||
}),
|
||||
getters: {
|
||||
currentUserNickname(state) {
|
||||
@@ -99,11 +103,11 @@ export const useUserStore = defineStore('user', {
|
||||
},
|
||||
storeUserBasicInfo(userInfo) {
|
||||
this.currentUserBasicInfo = userInfo;
|
||||
userState.updateUserInfo(userInfo);
|
||||
updateCurrentUserInfo(userInfo);
|
||||
},
|
||||
resetUserBasicInfo() {
|
||||
this.currentUserBasicInfo = null;
|
||||
userState.clearUserInfo();
|
||||
clearCurrentUserInfo();
|
||||
},
|
||||
getCurrentUserProfile() {
|
||||
return new Promise((resolve, reject) => {
|
||||
|
||||
Reference in New Issue
Block a user