Skip to content

[v3] Storybook error #476

@jordmccord

Description

@jordmccord

Description

When rendering a component with variants in Storybook I'm getting a Variants is undefined error.

Steps to Reproduce

  1. Start a new web Storybook project npx storybook@latest init choose react and vite
  2. Update .storybook/main.ts to include the following:
import type { StorybookConfig } from '@storybook/react-vite';

import { join, dirname } from 'path';
import react from '@vitejs/plugin-react';
import reactNativeWeb from 'vite-plugin-react-native-web';

function getAbsolutePath(value: string): any {
  return dirname(require.resolve(join(value, 'package.json')));
}

const config: StorybookConfig = {
  stories: ['../src/**/*.mdx', '../src/**/*.stories.@(js|jsx|mjs|ts|tsx)'],
  addons: [
    getAbsolutePath('@storybook/addon-essentials'),
    getAbsolutePath('@storybook/addon-react-native-web'),
    getAbsolutePath('@chromatic-com/storybook'),
    getAbsolutePath('@storybook/addon-interactions'),
    getAbsolutePath('@storybook/addon-a11y'),
  ],
  framework: {
    name: getAbsolutePath('@storybook/react-vite'),
    options: {},
  },
  async viteFinal(config) {
    const { mergeConfig } = await import('vite');

    return mergeConfig(config, {
      plugins: [
        reactNativeWeb(),
        react({
          babel: {
            presets: ['@babel/preset-react'],
            plugins: [
              'react-native-unistyles/plugin',
              '@babel/plugin-proposal-export-namespace-from',
              'react-native-reanimated/plugin',
            ],
          },
        }),
      ],
    });
  },
};

export default config;
  1. Create a Unistyles component with variants
  2. Import that component into one of the default stories

Snack or Repository Link (Optional)

No response

Unistyles Version

3.0.0-beta.4

React Native Version

0.76.5

Platforms

Web

Expo

Yes

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions