Files
WeChatDataAnalysis/frontend/stores/privacy.js
T
Alfred Tang a79ff81be0 fix: resolve chat messages not loading due to Nuxt auto-import bug and WCDB timeout
- Move frontend/utils/ to frontend/lib/ to avoid Nuxt unimport scanner
  incorrectly extracting function parameter names (value, fallback) as
  module-level exports, which injected phantom imports that broke all
  client-side JavaScript execution
- Update all import paths across 13 files from ~/utils/ to ~/lib/
- Add timeout (5s) and negative cache (60s TTL) to WCDB realtime
  ensure_connected() to prevent open_account() from hanging indefinitely
  when the WeChat database is locked
- Reorder selectContact() to fire loadMessages() before navigateTo() so
  the message fetch starts before route navigation triggers Suspense
- Add watch: false to SSR useAsyncData calls to prevent unnecessary
  re-fetching on client-side route changes
2026-03-14 17:17:10 +08:00

32 lines
609 B
JavaScript

import { defineStore } from 'pinia'
import { readPrivacyMode, writePrivacyMode } from '~/lib/privacy-mode'
export const usePrivacyStore = defineStore('privacy', () => {
const privacyMode = ref(false)
const initialized = ref(false)
const init = () => {
if (initialized.value) return
initialized.value = true
privacyMode.value = readPrivacyMode(false)
}
const set = (enabled) => {
privacyMode.value = !!enabled
writePrivacyMode(privacyMode.value)
}
const toggle = () => {
set(!privacyMode.value)
}
return {
privacyMode,
init,
set,
toggle,
}
})