import Cookies from 'js-cookie';
import { PUB } from '../const/index.mjs';

const Local = {
  // 查看 v2.4.3版本更新日志
  setKey(key) {
    return `${__NEXT_NAME__}:${key}`;
  },
  // 设置永久缓存
  set(key, val) {
    window.localStorage.setItem(Local.setKey(key), JSON.stringify(val));
  },
  // 获取永久缓存
  get(key) {
    let json = window.localStorage.getItem(Local.setKey(key));
    return JSON.parse(json);
  },
  // 移除永久缓存
  remove(key) {
    window.localStorage.removeItem(Local.setKey(key));
  },
  // 移除全部永久缓存
  clear() {
    var tid = Local.get(PUB.tId);
    window.localStorage.clear();
    Local.set(PUB.tId, tid);
  }
};
const Session = {
  // 设置临时缓存
  set(key, val) {
    if (key === PUB.token) return Cookies.set(key, val);
    window.sessionStorage.setItem(Local.setKey(key), JSON.stringify(val));
  },
  // 获取临时缓存
  get(key) {
    if (key === PUB.token) return Cookies.get(key);
    let json = window.sessionStorage.getItem(Local.setKey(key));
    return JSON.parse(json);
  },
  // 移除临时缓存
  remove(key) {
    if (key === PUB.token) return Cookies.remove(key);
    window.sessionStorage.removeItem(Local.setKey(key));
  },
  // 移除全部临时缓存
  clear() {
    Cookies.remove(PUB.token);
    Cookies.remove(PUB.userInfo);
    Cookies.remove(PUB.constList);
    window.sessionStorage.clear();
  }
};

export { Local, Session };
