File size: 614 Bytes
c2c8c8d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import { create } from 'zustand';
import { persist, createJSONStorage } from 'zustand/middleware';

export type Environment = 'web' | 'java' | 'python' | null;

interface EnvState {
  environment: Environment;
  setEnvironment: (env: Environment) => void;
  resetEnvironment: () => void;
}

export const useEnvStore = create<EnvState>()(
  persist(
    (set) => ({
      environment: null,
      setEnvironment: (env) => set({ environment: env }),
      resetEnvironment: () => set({ environment: null }),
    }),
    {
      name: 'env-storage',
      storage: createJSONStorage(() => localStorage),
    }
  )
);