frontend/stores/useRedirectUrl.ts (view raw)
1import {create} from 'zustand';
2import {persist} from 'zustand/middleware';
3
4type State = {
5 redirectUrl: string | null;
6 setRedirectUrl: (redirectUrl: string) => void;
7 getRedirectUrl: () => string;
8};
9
10const useRedirectUrlStore = create<State>()(
11 persist(
12 (set, get) => ({
13 redirectUrl: null,
14 setRedirectUrl: redirectUrl => set({redirectUrl}),
15 getRedirectUrl: () => {
16 const redirectUrl = get().redirectUrl;
17 set({redirectUrl: null});
18 return redirectUrl;
19 },
20 }),
21 {
22 name: 'REDIRECT_URL_STORE',
23 }
24 )
25);
26
27export default useRedirectUrlStore;