index.ts 987 B

12345678910111213141516171819202122232425262728
  1. import { Persistent, BasicKeys } from '/@/utils/cache/persistent';
  2. import { CacheTypeEnum } from '/@/enums/cacheEnum';
  3. import projectSetting from '/@/settings/projectSetting';
  4. import { JWT_TOKEN_KEY, REFRESH_TOKEN_KEY } from '/@/enums/cacheEnum';
  5. const { permissionCacheType } = projectSetting;
  6. const isLocal = permissionCacheType === CacheTypeEnum.LOCAL;
  7. export function getAuthCache<T>(key: BasicKeys) {
  8. const fn = isLocal ? Persistent.getLocal : Persistent.getSession;
  9. return fn(key) as T;
  10. }
  11. export function setAuthCache(key: BasicKeys, value) {
  12. const fn = isLocal ? Persistent.setLocal : Persistent.setSession;
  13. return fn(key, value, true);
  14. }
  15. export function clearAuthCache(immediate = true) {
  16. const fn = isLocal ? Persistent.clearLocal : Persistent.clearSession;
  17. return fn(immediate);
  18. }
  19. export function getJwtToken() {
  20. return getAuthCache(JWT_TOKEN_KEY);
  21. }
  22. export function getRefreshToken() {
  23. return getAuthCache(REFRESH_TOKEN_KEY);
  24. }