Skip to content

Theming: Export interface declaration for ThemesGlobals#33343

Merged
kasperpeulen merged 3 commits into
storybookjs:nextfrom
icopp:patch-3
Jan 27, 2026
Merged

Theming: Export interface declaration for ThemesGlobals#33343
kasperpeulen merged 3 commits into
storybookjs:nextfrom
icopp:patch-3

Conversation

@icopp
Copy link
Copy Markdown
Contributor

@icopp icopp commented Dec 12, 2025

Relates to #32898

What I did

This interface has to be exported to prevent "Default export of the module has or is using private name" errors when attempting to use meta.story().

Checklist for Contributors

Testing

The changes in this PR are covered in the following automated tests:

  • stories
  • unit tests
  • integration tests
  • end-to-end tests

Manual testing

  • Using a project with "composite": true
  • Create a simple preview.tsx for a Storybook project, for example:
    import { definePreview } from "@storybook/nextjs";
    
    export default definePreview({
      addons: [
        addonThemes()
      ]
    });
    
  • Create a simple story, for example:
    const meta = preview.meta({
      component: () => null
    });
    export default meta;
    
    export const SomeStory = meta.story();
    
  • See that there is a type error for ThemesGlobals before this change, and no type error for ThemesGlobals after this change

Documentation

  • Add or update documentation reflecting your changes
  • If you are deprecating/removing a feature, make sure to update
    MIGRATION.MD

Checklist for Maintainers

  • When this PR is ready for testing, make sure to add ci:normal, ci:merged or ci:daily GH label to it to run a specific set of sandboxes. The particular set of sandboxes can be found in code/lib/cli-storybook/src/sandbox-templates.ts

  • Make sure this PR contains one of the labels below:

    Available labels
    • bug: Internal changes that fixes incorrect behavior.
    • maintenance: User-facing maintenance tasks.
    • dependencies: Upgrading (sometimes downgrading) dependencies.
    • build: Internal-facing build tooling & test updates. Will not show up in release changelog.
    • cleanup: Minor cleanup style change. Will not show up in release changelog.
    • documentation: Documentation only changes. Will not show up in release changelog.
    • feature request: Introducing a new feature.
    • BREAKING CHANGE: Changes that break compatibility in some way with current major version.
    • other: Changes that don't fit in the above categories.

🦋 Canary release

This PR does not have a canary release associated. You can request a canary release of this pull request by mentioning the @storybookjs/core team here.

core team members can create a canary release here or locally with gh workflow run --repo storybookjs/storybook publish.yml --field pr=<PR_NUMBER>

Summary by CodeRabbit

  • New Features
    • Expanded public API with additional theme type exports now available for integration.
    • Decorator utilities are now directly accessible from the main addon export.

✏️ Tip: You can customize this high-level summary in your review settings.

This interface has to be exported to prevent "Default export of the module has or is using private name" errors when attempting to use `meta.story()`.
@nx-cloud
Copy link
Copy Markdown

nx-cloud Bot commented Dec 15, 2025

View your CI Pipeline Execution ↗ for commit f8a0aaa

Command Status Duration Result
nx run-many --targets compile ✅ Succeeded 33s View ↗

☁️ Nx Cloud last updated this comment at 2025-12-24 09:54:56 UTC

@nx-cloud
Copy link
Copy Markdown

nx-cloud Bot commented Dec 15, 2025

View your CI Pipeline Execution ↗ for commit 339a6bc


☁️ Nx Cloud last updated this comment at 2025-12-15 14:08:24 UTC

1 similar comment
@nx-cloud
Copy link
Copy Markdown

nx-cloud Bot commented Dec 15, 2025

View your CI Pipeline Execution ↗ for commit 339a6bc


☁️ Nx Cloud last updated this comment at 2025-12-15 14:08:24 UTC

@coderabbitai

This comment was marked as spam.

coderabbitai[bot]

This comment was marked as spam.

@storybook-app-bot
Copy link
Copy Markdown

storybook-app-bot Bot commented Dec 15, 2025

Package Benchmarks

Commit: 2fb4ad6, ran on 20 January 2026 at 18:32:50 UTC

The following packages have significant changes to their size or dependencies:

@storybook/builder-webpack5

Before After Difference
Dependency count 192 192 0
Self size 75 KB 75 KB 🎉 -6 B 🎉
Dependency size 32.24 MB 32.25 MB 🚨 +11 KB 🚨
Bundle Size Analyzer Link Link

storybook

Before After Difference
Dependency count 49 49 0
Self size 20.30 MB 20.32 MB 🚨 +21 KB 🚨
Dependency size 16.52 MB 16.52 MB 🎉 -4 B 🎉
Bundle Size Analyzer Link Link

@storybook/ember

Before After Difference
Dependency count 196 196 0
Self size 15 KB 15 KB 🚨 +12 B 🚨
Dependency size 28.96 MB 28.97 MB 🚨 +11 KB 🚨
Bundle Size Analyzer Link Link

@storybook/nextjs

Before After Difference
Dependency count 538 538 0
Self size 646 KB 646 KB 🎉 -10 B 🎉
Dependency size 59.22 MB 59.73 MB 🚨 +505 KB 🚨
Bundle Size Analyzer Link Link

@storybook/nextjs-vite

Before After Difference
Dependency count 127 127 0
Self size 1.12 MB 1.12 MB 🚨 +50 B 🚨
Dependency size 21.82 MB 22.32 MB 🚨 +496 KB 🚨
Bundle Size Analyzer Link Link

@storybook/react-native-web-vite

Before After Difference
Dependency count 159 159 0
Self size 30 KB 30 KB 🚨 +8 B 🚨
Dependency size 23.00 MB 23.61 MB 🚨 +610 KB 🚨
Bundle Size Analyzer Link Link

@storybook/react-vite

Before After Difference
Dependency count 117 117 0
Self size 35 KB 35 KB 🚨 +10 B 🚨
Dependency size 19.62 MB 20.11 MB 🚨 +496 KB 🚨
Bundle Size Analyzer Link Link

@storybook/react-webpack5

Before After Difference
Dependency count 278 278 0
Self size 24 KB 24 KB 🚨 +2 B 🚨
Dependency size 44.13 MB 44.64 MB 🚨 +505 KB 🚨
Bundle Size Analyzer Link Link

@storybook/server-webpack5

Before After Difference
Dependency count 204 204 0
Self size 16 KB 16 KB 🎉 -10 B 🎉
Dependency size 33.49 MB 33.50 MB 🚨 +11 KB 🚨
Bundle Size Analyzer Link Link

@storybook/cli

Before After Difference
Dependency count 183 183 0
Self size 775 KB 776 KB 🚨 +303 B 🚨
Dependency size 67.38 MB 67.47 MB 🚨 +92 KB 🚨
Bundle Size Analyzer Link Link

@storybook/codemod

Before After Difference
Dependency count 176 176 0
Self size 30 KB 30 KB 🎉 -40 B 🎉
Dependency size 65.95 MB 66.05 MB 🚨 +92 KB 🚨
Bundle Size Analyzer Link Link

create-storybook

Before After Difference
Dependency count 50 50 0
Self size 1000 KB 999 KB 🎉 -48 B 🎉
Dependency size 36.82 MB 36.84 MB 🚨 +21 KB 🚨
Bundle Size Analyzer node node

@storybook/preset-react-webpack

Before After Difference
Dependency count 170 170 0
Self size 18 KB 18 KB 🚨 +18 B 🚨
Dependency size 31.26 MB 31.28 MB 🚨 +11 KB 🚨
Bundle Size Analyzer Link Link

@storybook/react

Before After Difference
Dependency count 57 57 0
Self size 732 KB 1.23 MB 🚨 +494 KB 🚨
Dependency size 12.94 MB 12.94 MB 🚨 +2 KB 🚨
Bundle Size Analyzer Link Link

@ndelangen ndelangen changed the title Fix export interface declaration for ThemesGlobals Theming: Export interface declaration for ThemesGlobals Dec 24, 2025
@github-actions github-actions Bot added the Stale label Jan 7, 2026
@icopp
Copy link
Copy Markdown
Contributor Author

icopp commented Jan 13, 2026

Just to note, I don't have permissions to merge this, so somebody else will have to do that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants