storage.ts 1.2 KB

1234567891011121314151617181920212223242526272829303132
  1. import { AppTheme } from '@/constants/theme'
  2. import WebStorage from '@/utils/storage'
  3. function createLocalData() {
  4. return {
  5. appLanguage: navigator.language,
  6. appTheme: AppTheme.Default,
  7. loginInfo: <Model.LoginRsp | undefined>undefined,
  8. autoLoginEncryptedData: '',
  9. settings: <Model.LocalSetting[]>([]),
  10. reportAgree: <{ loginId: number; isAgree: boolean; agreedTime: string }[]>([]), // 结算单弹窗提示
  11. androidPermissions: {
  12. READ_EXTERNAL_STORAGE: 0, // -1 永久拒绝,0 未授权,1已授权
  13. CAMERA: 0,
  14. RECORD_AUDIO: 0
  15. }
  16. }
  17. }
  18. function createSessionData() {
  19. return {
  20. loginInfo: <Model.LoginRsp | undefined>undefined,
  21. userRoutes: <Model.UserRoutes[]>[],
  22. allEnums: <Model.EnumRsp[]>[], // 枚举信息
  23. errorInfos: <Model.ErrorInfosRsp[]>[], // 错误信息
  24. performanceStepTypes: <Model.WrPerformanceStepTypeRsp[]>[], // 履约步骤枚举
  25. performanceTemplates: <Model.PermancePlanTmpRsp[]>[], // 履约模板
  26. }
  27. }
  28. export const localData = new WebStorage(localStorage, createLocalData(), 'muchinfo@')
  29. export const sessionData = new WebStorage(sessionStorage, createSessionData(), 'muchinfo@')