Closed BenoitSafari closed 2 months ago
Installer Storybook et y integrer les composants existants.
https://storybook.js.org/
src/components/<component_name>/story.tsx
handleClassNames
Installer les packages suivants
npm i -D storybook @storybook/test @storybook/react-vite @storybook/react @storybook/blocks @storybook/addon-links @storybook/addon-essentials
Creer les fichiers suivants:
| src/ ---| .storybook/ ------| main.ts ------| preview.tsx
Configuration de storybook
import path from 'path'; export default { stories: ['patternVersFichiersStory'], // Expressions de resolution vers les fichiers story.tsx addons: ['@storybook/addon-links', '@storybook/addon-essentials'], // Ajout des addons installés framework: { name: '@storybook/react-vite' }, // Ajout du framework installé async viteFinal(config) { // Resolution des aliases (voir tsconfig.json et vite.config.ts) if (config?.resolve?.alias) { config.resolve.alias = { ...config.resolve.alias, '@': path.resolve(__dirname, '..'), }; } return config; }, };
Configuration de la page de rendu des Stories
import { Preview, StoryFn } from '@storybook/react'; import React from 'react'; import '../styles.global.css'; const Decorator = (Story: StoryFn) => { // Enveloppe les stories return ( <div style={{ boxSizing: 'border-box', display: 'flex', padding: '2rem' }}> <Story /> </div> ); }; const preview: Preview = { decorators: [Decorator], parameters: { actions: { argTypesRegex: '^on[A-Z].*' }, controls: { matchers: { color: /(background|color)$/i, date: /Date$/, }, }, layout: 'fullscreen', options: { storySort: { order: ['*'], }, }, }, }; export default preview;
Terminé par => https://github.com/horameus/Lupokedex/pull/11
Installer Storybook
Installer Storybook et y integrer les composants existants.
https://storybook.js.org/
Criteres d'acceptation
src/components/<component_name>/story.tsx
handleClassNames
qui rend toujours la props "disabled" est corrigéhandleClassNames
est couverte par un nouveau test unitaireLe composant https://github.com/horameus/Lupokedex/issues/3 est integré dans storybookInstallation
Installer les packages suivants
Configuration
Creer les fichiers suivants:
main.ts
Configuration de storybook
preview.tsx
Configuration de la page de rendu des Stories