Files
bonch-md-client/src/store/useStore.ts
antigravity-xd 7cbe5ab6e2 feat: Add mock mode for UI-only development
- Created mock API implementation in src/api/mock.ts
- Added isMockMode toggle to useStore
- Implemented switching between real and mock API in client.ts
- Added Mock Mode toggle to Login page
- Added 'npm run dev:mock' command

Co-Authored-By: Claude <noreply@anthropic.com>
2026-04-11 00:51:43 +03:00

30 lines
770 B
TypeScript

import { create } from 'zustand';
import { persist } from 'zustand/middleware';
interface AppState {
apiDomain: string;
apiKey: string;
isMockMode: boolean;
setApiDomain: (domain: string) => void;
setApiKey: (key: string) => void;
setMockMode: (isMock: boolean) => void;
reset: () => void;
}
export const useStore = create<AppState>()(
persist(
(set) => ({
apiDomain: import.meta.env.VITE_API_DOMAIN || '',
apiKey: '',
isMockMode: import.meta.env.VITE_MOCK_MODE === 'true',
setApiDomain: (apiDomain) => set({ apiDomain }),
setApiKey: (apiKey) => set({ apiKey }),
setMockMode: (isMockMode) => set({ isMockMode }),
reset: () => set({ apiKey: '' }),
}),
{
name: 'bonch-md-storage',
}
)
);