You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

30 lines
775 B

  1. import { store } from "/@/store";
  2. import { defineStore } from "pinia";
  3. import { getConfig } from "/@/config";
  4. import { storageLocal } from "/@/utils/storage";
  5. export const useEpThemeStore = defineStore({
  6. id: "pure-epTheme",
  7. state: () => ({
  8. epThemeColor:
  9. storageLocal.getItem("responsive-layout")?.epThemeColor ??
  10. getConfig().EpThemeColor
  11. }),
  12. getters: {
  13. getEpThemeColor() {
  14. return this.epThemeColor;
  15. }
  16. },
  17. actions: {
  18. setEpThemeColor(newColor) {
  19. const layout = storageLocal.getItem("responsive-layout");
  20. this.epThemeColor = newColor;
  21. layout.epThemeColor = newColor;
  22. storageLocal.setItem("responsive-layout", layout);
  23. }
  24. }
  25. });
  26. export function useEpThemeStoreHook() {
  27. return useEpThemeStore(store);
  28. }