diff --git a/apps/web/.storybook/preview.tsx b/apps/web/.storybook/preview.tsx index f9e535907..918535a27 100644 --- a/apps/web/.storybook/preview.tsx +++ b/apps/web/.storybook/preview.tsx @@ -1,3 +1,8 @@ +/** + * Storybook preview: MSW intercepts all API calls when run via `npm run storybook` / `npm run build-storybook`. + * Those scripts set VITE_API_URL=/api/v1 (same-origin) and VITE_STORYBOOK=true (logger does not send to backend). + * Do not run Storybook with an absolute API URL or MSW will not intercept. + */ import type { Preview } from '@storybook/react'; import { initialize, mswLoader } from 'msw-storybook-addon'; import { handlers } from '../src/mocks/handlers'; @@ -7,22 +12,7 @@ import '../src/styles/global-effects.css'; import '../src/styles/header.css'; import '../src/lib/i18n'; // Initialize i18n import React from 'react'; -import { ThemeProvider } from '../src/components/theme/ThemeProvider'; -import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; -import { MemoryRouter } from 'react-router-dom'; -import { ToastProvider } from '../src/components/feedback/ToastProvider'; -import { AudioProvider } from '../src/context/AudioContext'; -import { AuthProvider } from '../src/providers/AuthProvider'; - -// Create a client for stories -const queryClient = new QueryClient({ - defaultOptions: { - queries: { - retry: false, - staleTime: Infinity, - }, - }, -}); +import { AppProvidersForStorybook } from './AppProvidersForStorybook'; // Custom viewports for responsive testing const customViewports = { @@ -51,7 +41,7 @@ const customViewports = { // Initialize MSW initialize({ - onUnhandledRequest: 'bypass', + onUnhandledRequest: 'warn', serviceWorker: { url: './mockServiceWorker.js', }, @@ -88,29 +78,13 @@ const preview: Preview = { toc: true, // Enable table of contents in docs }, }, - - decorators: [ - // Global providers decorator (Story, context) => { - // Apply dark class based on background selection const isDark = context.globals.backgrounds?.value !== '#ffffff'; return ( - -
- - - - - - - - - - - -
-
+ + + ); }, ],