Skip to content

update storybook #7327

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jun 12, 2025
Merged

update storybook #7327

merged 1 commit into from
Jun 12, 2025

Conversation

jnsdls
Copy link
Member

@jnsdls jnsdls commented Jun 12, 2025

PR-Codex overview

This PR primarily updates various Storybook stories across the apps/dashboard and packages/thirdweb directories to use @storybook/nextjs and @storybook/react-vite instead of @storybook/react. It also includes some updates to dependencies.

Detailed summary

  • Changed imports from @storybook/react to @storybook/nextjs in multiple files.
  • Updated imports from @storybook/react to @storybook/react-vite in specific story files.
  • Modified dependency versions in package.json and pnpm-lock.yaml for Storybook packages.
  • Added new types and utility imports in several story files.
  • Adjusted existing story metadata and structure for consistency with the new Storybook setup.

The following files were skipped due to too many changes: pnpm-lock.yaml

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

Summary by CodeRabbit

  • Chores
    • Upgraded Storybook and related dependencies to the latest major version across dashboard and thirdweb packages.
    • Updated Storybook configuration to use the latest addons and removed deprecated ones.
    • Aligned import paths for Storybook types and utilities to match new package structures and Next.js/Vite integrations.
    • Made minor adjustments to type assertions and import syntax for improved compatibility and linting.
  • Style
    • No visible user-facing changes; updates are internal and maintain consistency with updated tooling.

Copy link

changeset-bot bot commented Jun 12, 2025

⚠️ No Changeset found

Latest commit: 3d516c5

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link

vercel bot commented Jun 12, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
docs-v2 ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jun 12, 2025 4:51am
login ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jun 12, 2025 4:51am
thirdweb_playground ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jun 12, 2025 4:51am
thirdweb-www ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jun 12, 2025 4:51am
wallet-ui ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jun 12, 2025 4:51am

Copy link
Contributor

coderabbitai bot commented Jun 12, 2025

Walkthrough

This update migrates Storybook dependencies and configurations across the codebase to Storybook 9.x, replacing deprecated or removed addons and updating import paths for Storybook types to match new package structures. TypeScript import conventions and internal type assertions are also modernized for compatibility with the latest Storybook and Next.js/Vite integrations.

Changes

Files/Groups Change Summary
apps/dashboard/.storybook/main.ts, packages/thirdweb/.storybook/main.ts Storybook config: removed @storybook/addon-essentials/@storybook/addon-interactions, added @storybook/addon-docs.
apps/dashboard/package.json, packages/thirdweb/package.json Upgraded Storybook and Chromatic packages to 9.0.8, removed deprecated addons, added @storybook/addon-docs.
apps/dashboard/.storybook/preview.tsx, apps/dashboard/src/@/components/**/*.stories.tsx, ... Changed Storybook type imports from @storybook/react to @storybook/nextjs in dashboard stories and preview.
packages/thirdweb/.storybook/preview.tsx Changed type import from @storybook/react to @storybook/react-vite, updated React import style.
packages/thirdweb/src/stories/**/*.stories.tsx Changed Storybook type imports from @storybook/react to @storybook/react-vite.
apps/dashboard/knip.json Removed @storybook/blocks from ignored dependencies.
apps/dashboard/src/@/actions/createTeam.ts Changed crypto import from node:crypto to crypto, added linter suppression comment.
apps/dashboard/src/stories/utils.tsx Changed INITIAL_VIEWPORTS import to storybook/viewport.
packages/thirdweb/scripts/wallets/generate.ts Changed JSX-style type assertion <const> to as const satisfies MinimalWalletInfo[].

Sequence Diagram(s)

sequenceDiagram
    participant Developer
    participant StorybookConfig
    participant StorybookCore
    participant NextjsIntegration
    participant ViteIntegration

    Developer->>StorybookConfig: Update addons and import paths
    StorybookConfig->>StorybookCore: Load with new addons (docs, links, onboarding)
    StorybookCore->>NextjsIntegration: Use @storybook/nextjs for dashboard stories
    StorybookCore->>ViteIntegration: Use @storybook/react-vite for thirdweb stories
    NextjsIntegration-->>StorybookCore: Provide Next.js-specific story support
    ViteIntegration-->>StorybookCore: Provide Vite-specific story support
    StorybookCore-->>Developer: Serve updated Storybook with new configuration
Loading
✨ Finishing Touches
  • 📝 Generate Docstrings

🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@github-actions github-actions bot added Dashboard Involves changes to the Dashboard. packages SDK Involves changes to the thirdweb SDK labels Jun 12, 2025
Copy link
Member Author

jnsdls commented Jun 12, 2025


How to use the Graphite Merge Queue

Add either label to this PR to merge it via the merge queue:

  • merge-queue - adds this PR to the back of the merge queue
  • hotfix - for urgent hot fixes, skip the queue and merge this PR next

You must have a Graphite account in order to use the merge queue. Sign up using this link.

An organization admin has enabled the Graphite Merge Queue in this repository.

Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue.

This stack of pull requests is managed by Graphite. Learn more about stacking.

This was referenced Jun 12, 2025
@jnsdls jnsdls marked this pull request as ready for review June 12, 2025 02:31
@jnsdls jnsdls requested review from joaquim-verges and a team as code owners June 12, 2025 02:31
Copy link

socket-security bot commented Jun 12, 2025

@jnsdls jnsdls force-pushed the 06-11-update_dependencies branch from 9ebdd0b to 80e93ea Compare June 12, 2025 02:32
@jnsdls jnsdls force-pushed the 06-11-update_storybook branch from 90b0bc4 to 4fb953e Compare June 12, 2025 02:32
@jnsdls jnsdls changed the base branch from 06-11-update_dependencies to graphite-base/7327 June 12, 2025 02:34
cursor-com[bot]

This comment was marked as outdated.

cursor-com[bot]

This comment was marked as outdated.

Copy link
Contributor

github-actions bot commented Jun 12, 2025

size-limit report 📦

Path Size Loading time (3g) Running time (snapdragon) Total time
thirdweb (esm) 62.44 KB (0%) 1.3 s (0%) 127 ms (+239.29% 🔺) 1.4 s
thirdweb (cjs) 350.62 KB (0%) 7.1 s (0%) 350 ms (+16.27% 🔺) 7.4 s
thirdweb (minimal + tree-shaking) 5.7 KB (0%) 114 ms (0%) 73 ms (+3283.52% 🔺) 187 ms
thirdweb/chains (tree-shaking) 531 B (0%) 11 ms (0%) 12 ms (+1356.53% 🔺) 22 ms
thirdweb/react (minimal + tree-shaking) 19.59 KB (0%) 392 ms (0%) 42 ms (+675.28% 🔺) 434 ms

Copy link

codecov bot commented Jun 12, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 55.57%. Comparing base (cda390e) to head (3d516c5).
Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #7327   +/-   ##
=======================================
  Coverage   55.57%   55.57%           
=======================================
  Files         909      909           
  Lines       58675    58675           
  Branches     4163     4162    -1     
=======================================
  Hits        32610    32610           
  Misses      25958    25958           
  Partials      107      107           
Flag Coverage Δ
packages 55.57% <ø> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@jnsdls jnsdls force-pushed the 06-11-update_storybook branch from 4fb953e to dea5774 Compare June 12, 2025 02:40
@jnsdls jnsdls force-pushed the graphite-base/7327 branch from 80e93ea to be62c5d Compare June 12, 2025 02:40
@jnsdls jnsdls changed the base branch from graphite-base/7327 to 06-11-update_dependencies June 12, 2025 02:41
cursor-com[bot]

This comment was marked as outdated.

cursor-com[bot]

This comment was marked as outdated.

cursor-com[bot]

This comment was marked as outdated.

cursor-com[bot]

This comment was marked as outdated.

@jnsdls jnsdls force-pushed the 06-11-update_storybook branch from 9b5d625 to 3d516c5 Compare June 12, 2025 04:29
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

♻️ Duplicate comments (1)
apps/dashboard/package.json (1)

112-120: Same Storybook addon concerns as noted for packages/thirdweb

The dashboard app received the same upgrade & addon removal. Please apply the verification steps mentioned in the previous comment to ensure no regressions.

Also applies to: 137-137, 141-141

🧹 Nitpick comments (3)
apps/dashboard/src/@/actions/createTeam.ts (1)

4-5: Consider a conditional import instead of disabling the lint rule
Disabling useNodejsImportProtocol globally hides accidental regressions elsewhere. A small helper that falls back to "crypto" only when Storybook is running keeps the linter active for the rest of the codebase:

-// biome-ignore lint/style/useNodejsImportProtocol: breaks storybook if it's `node:` prefixed
-import { randomBytes } from "crypto";
+// Storybook (Web pack) chokes on the `node:` protocol, so fall back at runtime.
+// eslint-disable-next-line import/no-unresolved
+const { randomBytes } =
+  // @ts-ignore – webpack alias for browser env will replace this.
+  (process.env.STORYBOOK ? require("crypto") : require("node:crypto"));

With this approach you:

  1. Keep the rule enabled for the rest of the repo.
  2. Avoid surprising tree-shaking/Bundler resolution issues in non-Storybook builds.
apps/dashboard/.storybook/main.ts (1)

17-18: Addon swap: ensure loss of Essentials doesn’t drop required sub-addons

@storybook/addon-essentials previously bundled Controls, Actions, and Backgrounds. After removing it and adding only addon-docs, those capabilities disappear unless added individually. Verify design-time UX still meets your needs; if not, re-add the specific sub-addons.

+    // If you still need controls/actions:
+    // getAbsolutePath("@storybook/addon-controls"),
+    // getAbsolutePath("@storybook/addon-actions"),
packages/thirdweb/.storybook/preview.tsx (1)

1-7: React namespace import probably unnecessary

If your tsconfig uses "jsx": "react-jsx" (default for TS >= 4.4) the extra import can be removed, eliminating the lint suppress comment.

-import type { Preview } from "@storybook/react-vite";
-// biome-ignore lint/correctness/noUnusedImports: needed for typescript to not complain
-import * as React from "react";
+import type { Preview } from "@storybook/react-vite";

Keeps the file terser and avoids unused-import work-arounds.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between cda390e and 3d516c5.

⛔ Files ignored due to path filters (2)
  • packages/thirdweb/src/wallets/__generated__/wallet-infos.ts is excluded by !**/__generated__/**
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (111)
  • apps/dashboard/.storybook/main.ts (1 hunks)
  • apps/dashboard/.storybook/preview.tsx (1 hunks)
  • apps/dashboard/knip.json (0 hunks)
  • apps/dashboard/package.json (2 hunks)
  • apps/dashboard/src/@/actions/createTeam.ts (1 hunks)
  • apps/dashboard/src/@/components/blocks/Avatars/GradientAvatar.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/Avatars/ProjectAvatar.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/DangerSettingCard.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/Img.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/MultiNetworkSelector.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/SettingsCard.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/SidebarLayout.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/SingleNetworkSelector.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/TokenSelector.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/UpsellBannerCard.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/code-segment.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/drop-zone/drop-zone.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/multi-select.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/multi-step-status/multi-step-status.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/blocks/select-with-search.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/pagination-buttons.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/ui/button.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/ui/code/code.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/ui/code/plaintext-code.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/ui/select.stories.tsx (1 hunks)
  • apps/dashboard/src/@/components/ui/table.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/batchMetadata.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/claimable.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/mintable.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/module-card.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/openEditionMetadata.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/royalty.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/transferable.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/overview/components/LatestEvents.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/overview/components/PermissionsTable.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/public-pages/erc20/_components/ContractHeader.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/public-pages/erc20/_components/claim-tokens/claim-tokens-ui.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/account/components/AccountHeaderUI.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/account/overview/AccountTeamsUI.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/account/settings/AccountSettingsPageUI.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/account/wallets/LinkWalletsUI.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/join/team/[team_slug]/[invite_id]/JoinTeamPage.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/login/onboarding/LinkWalletPrompt/LinkWalletPrompt.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/login/onboarding/LoginOrSignup/LoginOrSignup.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/login/onboarding/VerifyEmail/VerifyEmail.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/login/onboarding/account-onboarding.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/login/onboarding/team-onboarding/InviteTeamMembers.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/login/onboarding/team-onboarding/TeamInfoForm.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/(team)/_components/BillingAlertBanner.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/analytics/components/EcosystemWalletUsersChartCard.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/settings/billing/components/PlanInfoCard.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/settings/general/GeneralSettingsPage.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/settings/general/Sidebar.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/settings/members/InviteSection.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/settings/members/ManageInvitesSection.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/settings/members/TeamMembersSettingsPage.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/usage/overview/components/SponsoredTransactionsTableUI.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/assets/create/nft/upload-nfts/upload-nfts.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/assets/create/token/create-token-page.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/components/EngineCloudChartCard/EngineCloudBarChartCard.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/components/ProjectFTUX/ProjectFTUX.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/components/RpcMethodBarChartCard/RpcMethodBarChartCard.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/engine/dedicated/(general)/EngineFooterCard.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/engine/dedicated/(general)/import/EngineImportPage.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/engine/dedicated/(general)/overview/engine-instances-table.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/engine/dedicated/(instance)/[engineId]/alerts/components/ManageEngineAlerts.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/engine/dedicated/(instance)/[engineId]/alerts/components/RecentEngineAlerts.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/nebula/components/analytics/nebula-analytics-ui.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/settings/ProjectGeneralSettingsPage.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/components/Analytics/BarChart.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/components/Analytics/CombinedBarChartCard.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/components/Analytics/CombinedStatBreakdownCard.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/components/Analytics/EmptyState.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/components/Analytics/EmptyStateCard.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/components/Analytics/PieChart.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/components/Analytics/PieChartCard.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/components/Analytics/Stat.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/components/Analytics/StatBreakdown.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/components/Analytics/StatBreakdownCard.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/components/HeaderLoggedOut/HeaderLoggedOut.stories.tsx (1 hunks)
  • apps/dashboard/src/app/(app)/team/components/TeamHeader/TeamHeaderUI.stories.tsx (1 hunks)
  • apps/dashboard/src/app/nebula-app/(app)/chat/history/ChatHistoryPage.stories.tsx (1 hunks)
  • apps/dashboard/src/app/nebula-app/(app)/components/AssetsSection/AssetsSection.stories.tsx (1 hunks)
  • apps/dashboard/src/app/nebula-app/(app)/components/ChatPageLayout.stories.tsx (1 hunks)
  • apps/dashboard/src/app/nebula-app/(app)/components/Chatbar.stories.tsx (1 hunks)
  • apps/dashboard/src/app/nebula-app/(app)/components/Chats.stories.tsx (1 hunks)
  • apps/dashboard/src/app/nebula-app/(app)/components/EmptyStateChatPageContent.stories.tsx (1 hunks)
  • apps/dashboard/src/app/nebula-app/(app)/components/ExecuteTransactionCard.stories.tsx (1 hunks)
  • apps/dashboard/src/app/nebula-app/(app)/components/Reasoning/Reasoning.stories.tsx (1 hunks)
  • apps/dashboard/src/app/nebula-app/(app)/components/Swap/SwapCards.stories.tsx (1 hunks)
  • apps/dashboard/src/app/nebula-app/(app)/components/TransactionsSection/TransactionsSection.stories.tsx (1 hunks)
  • apps/dashboard/src/components/buttons/TransactionButton.stories.tsx (1 hunks)
  • apps/dashboard/src/components/contract-components/contract-deploy-form/add-to-project-card.stories.tsx (1 hunks)
  • apps/dashboard/src/components/contract-components/published-contract/markdown-renderer.stories.tsx (1 hunks)
  • apps/dashboard/src/components/contract-components/tables/contract-table.stories.tsx (1 hunks)
  • apps/dashboard/src/components/dashboard/StepsCard.stories.tsx (1 hunks)
  • apps/dashboard/src/components/embedded-wallets/Analytics/InAppWalletUsersChartCard.stories.tsx (1 hunks)
  • apps/dashboard/src/components/embedded-wallets/Configure/InAppWalletSettingsUI.stories.tsx (1 hunks)
  • apps/dashboard/src/components/settings/Account/Billing/GatedSwitch.stories.tsx (1 hunks)
  • apps/dashboard/src/components/settings/Account/Billing/SubscriptionCoupons/Coupons.stories.tsx (1 hunks)
  • apps/dashboard/src/components/settings/ApiKeys/Create/CreateApiKeyModal.stories.tsx (1 hunks)
  • apps/dashboard/src/components/smart-wallets/AccountAbstractionAnalytics/SponsoredTransactionsChartCard.stories.tsx (1 hunks)
  • apps/dashboard/src/components/smart-wallets/AccountAbstractionAnalytics/TotalSponsoredChartCard.stories.tsx (1 hunks)
  • apps/dashboard/src/stories/utils.tsx (1 hunks)
  • packages/thirdweb/.storybook/main.ts (1 hunks)
  • packages/thirdweb/.storybook/preview.tsx (1 hunks)
  • packages/thirdweb/package.json (2 hunks)
  • packages/thirdweb/scripts/wallets/generate.ts (1 hunks)
  • packages/thirdweb/src/stories/ConnectButton/hideButtons.stories.tsx (1 hunks)
  • packages/thirdweb/src/stories/ConnectButton/themes.stories.tsx (1 hunks)
  • packages/thirdweb/src/stories/PayEmbed.stories.ts (1 hunks)
💤 Files with no reviewable changes (1)
  • apps/dashboard/knip.json
⏰ Context from checks skipped due to timeout of 90000ms (8)
  • GitHub Check: Size
  • GitHub Check: Build Packages
  • GitHub Check: E2E Tests (pnpm, vite)
  • GitHub Check: E2E Tests (pnpm, esbuild)
  • GitHub Check: E2E Tests (pnpm, webpack)
  • GitHub Check: Unit Tests
  • GitHub Check: Lint Packages
  • GitHub Check: Analyze (javascript)
🔇 Additional comments (106)
packages/thirdweb/scripts/wallets/generate.ts (1)

241-245: Type-safety upgrade looks good
Switching from the deprecated <const> assertion to as const satisfies is idiomatic TS 5.x and preserves literal inference without a cast. No issues spotted.

apps/dashboard/src/components/smart-wallets/AccountAbstractionAnalytics/SponsoredTransactionsChartCard.stories.tsx (1)

1-1: Import migration acknowledged
@storybook/nextjs is the correct target for SB 9 with the Next.js builder. Story renders should behave identically.

apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/components/RpcMethodBarChartCard/RpcMethodBarChartCard.stories.tsx (1)

1-1: Good switch to @storybook/nextjs
Import path update is correct; no further changes required.

apps/dashboard/src/app/(app)/team/components/Analytics/CombinedBarChartCard.stories.tsx (1)

1-1: Next.js-compatible Storybook import confirmed
Change aligns with the global Storybook 9 migration. Looks fine.

apps/dashboard/src/stories/utils.tsx (1)

3-3: Verify import path for INITIAL_VIEWPORTS
Ensure that "storybook/viewport" actually resolves in Storybook v9. The official import for viewports may now live under @storybook/preview or a different package—please confirm and update accordingly.

packages/thirdweb/src/stories/ConnectButton/themes.stories.tsx (1)

1-1: Switch to @storybook/react-vite for Vite integration
This aligns the type imports with the Vite-based Storybook builder configured in packages/thirdweb/.storybook.

packages/thirdweb/src/stories/PayEmbed.stories.ts (1)

1-1: Update Storybook types import to @storybook/react-vite
Matches the Vite integration and ensures consistency with other story files.

apps/dashboard/.storybook/preview.tsx (1)

1-1: Use @storybook/nextjs Preview type for Next.js integration
Reflects the migration to the Next.js-specific Storybook package in apps/dashboard.

apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/assets/create/nft/upload-nfts/upload-nfts.stories.tsx (1)

1-1: Import Storybook types from @storybook/nextjs
Aligns the story file with the dashboard’s Next.js-oriented Storybook setup.

apps/dashboard/src/@/components/blocks/MultiNetworkSelector.stories.tsx (1)

1-1: Storybook import updated to Next.js package
Importing types from @storybook/nextjs instead of @storybook/react aligns with the Storybook v9 Next.js integration.

apps/dashboard/src/@/components/blocks/SidebarLayout.stories.tsx (1)

1-1: Storybook import updated to Next.js package
Switching the type import to @storybook/nextjs ensures compatibility with Storybook v9 for Next.js.

apps/dashboard/src/@/components/blocks/UpsellBannerCard.stories.tsx (1)

1-1: Storybook import updated to Next.js package
Updated the Storybook types import to @storybook/nextjs to match the v9 Next.js setup.

apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/components/ProjectFTUX/ProjectFTUX.stories.tsx (1)

1-1: Storybook import updated to Next.js package
Changing the import source to @storybook/nextjs fixes alignment with the upgraded Storybook v9 configuration.

apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/engine/dedicated/(general)/EngineFooterCard.stories.tsx (1)

1-1: Storybook import updated to Next.js package
Repointing the Meta and StoryObj import to @storybook/nextjs completes the migration to Storybook v9 for Next.js.

apps/dashboard/src/app/(app)/team/components/Analytics/BarChart.stories.tsx (1)

1-1: Updated Storybook type import
The import of Meta and StoryObj has been correctly switched to @storybook/nextjs to align with Storybook 9’s Next.js integration.

apps/dashboard/src/app/nebula-app/(app)/components/AssetsSection/AssetsSection.stories.tsx (1)

1-1: Updated Storybook type import
Switched Meta and StoryObj import to @storybook/nextjs as required by Storybook 9 for Next.js.

apps/dashboard/src/@/components/blocks/Img.stories.tsx (1)

1-1: Updated Storybook type import
The import is now from @storybook/nextjs, matching the migration to Storybook 9 for Next.js.

apps/dashboard/src/@/components/blocks/TokenSelector.stories.tsx (1)

1-1: Updated Storybook type import
Changed Meta and StoryObj to be imported from @storybook/nextjs in line with the upgrade to Storybook 9.

apps/dashboard/src/@/components/blocks/multi-select.stories.tsx (1)

1-1: Updated Storybook type import
The import path has been updated to @storybook/nextjs, ensuring compatibility with Storybook 9’s Next.js support.

apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/components/EngineCloudChartCard/EngineCloudBarChartCard.stories.tsx (1)

1-1: Use Next.js-specific Storybook imports
Changed the import from @storybook/react to @storybook/nextjs to match Storybook 9’s Next.js integration.

apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/nebula/components/analytics/nebula-analytics-ui.stories.tsx (1)

1-1: Swap to Next.js Storybook types
The import update to @storybook/nextjs aligns this story with the new Storybook 9 Next.js adapter.

apps/dashboard/src/app/(app)/team/components/Analytics/EmptyState.stories.tsx (1)

1-1: Import Storybook types from Next.js
Switching to @storybook/nextjs ensures compatibility with the upgraded Storybook version and Next.js setup.

apps/dashboard/src/app/nebula-app/(app)/components/ChatPageLayout.stories.tsx (1)

1-1: Update to Next.js Storybook adapter
Replacing @storybook/react with @storybook/nextjs is correct for Storybook 9 in Next.js contexts.

apps/dashboard/src/app/nebula-app/(app)/components/EmptyStateChatPageContent.stories.tsx (1)

1-1: Migrate Storybook types to Next.js
The change to @storybook/nextjs aligns this file with the global Storybook 9 migration.

apps/dashboard/src/app/nebula-app/(app)/components/Reasoning/Reasoning.stories.tsx (1)

1-1: Updated imports for Storybook Next.js types
Aligns with Storybook 9 migration by importing Meta and StoryObj from @storybook/nextjs.

apps/dashboard/src/components/embedded-wallets/Analytics/InAppWalletUsersChartCard.stories.tsx (1)

1-1: Updated imports for Storybook Next.js types
Aligns with Storybook 9 migration by importing Meta and StoryObj from @storybook/nextjs.

apps/dashboard/src/@/components/ui/code/code.stories.tsx (1)

1-1: Updated imports for Storybook Next.js types
Aligns with Storybook 9 migration by importing Meta and StoryObj from @storybook/nextjs.

apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/module-card.stories.tsx (1)

2-2: Updated imports for Storybook Next.js types
Aligns with Storybook 9 migration by importing Meta and StoryObj from @storybook/nextjs.

apps/dashboard/src/app/(app)/account/overview/AccountTeamsUI.stories.tsx (1)

1-1: Updated imports for Storybook Next.js types
Aligns with Storybook 9 migration by importing Meta and StoryObj from @storybook/nextjs.

apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/overview/components/PermissionsTable.stories.tsx (1)

1-1: Migration to Storybook Next.js import
The Storybook type imports have been correctly updated to @storybook/nextjs, aligning this story with the new Next.js integration in Storybook 9.x.

apps/dashboard/src/app/(app)/team/[team_slug]/(team)/_components/BillingAlertBanner.stories.tsx (1)

1-1: Migrate Storybook types to Next.js package
Importing Meta and StoryObj from @storybook/nextjs is correct for the updated Storybook configuration.

apps/dashboard/src/app/(app)/team/components/Analytics/PieChart.stories.tsx (1)

1-1: Update Storybook type imports for Next.js
Switching the type import to @storybook/nextjs is consistent with the overall migration to Storybook 9 in the dashboard app.

apps/dashboard/src/@/components/blocks/Avatars/ProjectAvatar.stories.tsx (1)

1-1: Use Next.js Storybook types
The import change to @storybook/nextjs correctly enables Next.js-specific typings for this story.

apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/engine/dedicated/(general)/import/EngineImportPage.stories.tsx (1)

1-1: Align Storybook imports with Next.js framework
Updating the type imports to @storybook/nextjs ensures compatibility with the new Storybook 9 setup.

apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/engine/dedicated/(instance)/[engineId]/alerts/components/RecentEngineAlerts.stories.tsx (1)

1-1: Update Storybook type imports
The type-only import from @storybook/nextjs replaces @storybook/react, aligning this story with Storybook 9.0.8’s Next.js integration.

apps/dashboard/src/app/(app)/team/components/Analytics/StatBreakdown.stories.tsx (1)

1-1: Update Storybook type imports
Switching the import to @storybook/nextjs ensures compatibility with the upgraded Storybook v9 Next.js setup.

apps/dashboard/src/app/nebula-app/(app)/components/Chats.stories.tsx (1)

1-1: Update Storybook type imports
Importing Meta and StoryObj from @storybook/nextjs reflects the migration to Storybook 9’s Next.js-specific package.

apps/dashboard/src/components/contract-components/contract-deploy-form/add-to-project-card.stories.tsx (1)

1-1: Update Storybook type imports
The move to @storybook/nextjs aligns this story file with the new Storybook v9 Next.js integration.

apps/dashboard/src/components/smart-wallets/AccountAbstractionAnalytics/TotalSponsoredChartCard.stories.tsx (1)

1-1: Update Storybook type imports
Using @storybook/nextjs for Meta and StoryObj matches the project-wide upgrade to Storybook 9.0.8 with Next.js support.

apps/dashboard/src/app/(app)/team/components/Analytics/PieChartCard.stories.tsx (1)

1-1: Align Storybook types import to Next.js
Updated the import to @storybook/nextjs to leverage the Next.js-specific Storybook API in version 9.x.

apps/dashboard/src/app/(app)/login/onboarding/VerifyEmail/VerifyEmail.stories.tsx (1)

1-1: Migrate Storybook type imports for Next.js
Switched from @storybook/react to @storybook/nextjs to ensure compatibility with Storybook 9.0.8 and Next.js.

apps/dashboard/src/app/(app)/login/onboarding/team-onboarding/TeamInfoForm.stories.tsx (1)

1-1: Update Storybook import to Next.js variant
Importing Meta and StoryObj from @storybook/nextjs aligns this story with the new dashboard Storybook configuration.

apps/dashboard/src/@/components/blocks/DangerSettingCard.stories.tsx (1)

1-1: Switch Storybook types import to Next.js
Changed the import path to @storybook/nextjs for consistency with other upgraded stories and the dashboard config.

apps/dashboard/src/@/components/ui/code/plaintext-code.stories.tsx (1)

1-1: Use Next.js Storybook types import
Updated the type import to @storybook/nextjs to support the latest Storybook 9 integration with Next.js.

apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/overview/components/LatestEvents.stories.tsx (1)

1-1: Import Storybook types from @storybook/nextjs
Updated the type import to use Next.js-specific Storybook integration (@storybook/nextjs) instead of @storybook/react. This aligns with the PR goal and is correct.

apps/dashboard/src/app/(app)/team/components/Analytics/CombinedStatBreakdownCard.stories.tsx (1)

1-1: Import Storybook types from @storybook/nextjs
The change to import Meta and StoryObj from @storybook/nextjs is right for Next.js compatibility and matches the rest of the migration.

apps/dashboard/src/app/nebula-app/(app)/components/TransactionsSection/TransactionsSection.stories.tsx (1)

1-1: Import Storybook types from @storybook/nextjs
Switching the type source to @storybook/nextjs correctly updates the Storybook setup for Next.js. Consistent with other story files.

apps/dashboard/src/@/components/blocks/SettingsCard.stories.tsx (1)

1-1: Import Storybook types from @storybook/nextjs
This change updates the Storybook type imports to the Next.js preset and aligns with the project’s standardized configuration.

apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/assets/create/token/create-token-page.stories.tsx (1)

1-1: Import Storybook types from @storybook/nextjs
Migrating the import to @storybook/nextjs ensures the story uses the Next.js integration, fulfilling the PR objective.

apps/dashboard/src/components/contract-components/published-contract/markdown-renderer.stories.tsx (1)

1-1: Switch Storybook import to Next.js preset
Aligns this story with the Dashboard app’s Storybook 9.x Next.js integration.

apps/dashboard/src/components/dashboard/StepsCard.stories.tsx (1)

1-1: Updated Storybook types import to Next.js integration
Ensures compatibility with the upgraded Storybook 9.x setup for Next.js in the dashboard.

packages/thirdweb/src/stories/ConnectButton/hideButtons.stories.tsx (1)

1-1: Switched Storybook import to React-Vite preset
Reflects the migration to Storybook 9.x with Vite support in the thirdweb package.

apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/openEditionMetadata.stories.tsx (1)

2-2: Updated Storybook types import to Next.js preset
Keeps this story aligned with the dashboard’s Storybook 9.x Next.js configuration.

apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/royalty.stories.tsx (1)

2-2: Updated Storybook types import to Next.js preset
Consistent with the broader Storybook 9.x migration across the dashboard app.

apps/dashboard/src/app/(app)/account/wallets/LinkWalletsUI.stories.tsx (1)

2-2: Updated Storybook import
Importing Meta and StoryObj from @storybook/nextjs correctly aligns this story with Storybook 9’s Next.js integration.

apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/analytics/components/EcosystemWalletUsersChartCard.stories.tsx (1)

1-1: Updated Storybook import
Switching the Meta and StoryObj types to @storybook/nextjs is consistent with the dashboard’s migration to Storybook 9.0.8.

apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/settings/billing/components/PlanInfoCard.stories.tsx (1)

2-2: Updated Storybook import
Importing Meta and StoryObj from @storybook/nextjs ensures compatibility with the new Next.js preset in Storybook 9.x.

apps/dashboard/src/components/settings/Account/Billing/SubscriptionCoupons/Coupons.stories.tsx (1)

4-4: Updated Storybook import
Changing the type imports to @storybook/nextjs aligns this story with the updated Storybook configuration and addon ecosystem.

apps/dashboard/src/@/components/blocks/drop-zone/drop-zone.stories.tsx (1)

1-1: Updated Storybook import
Migrating the Meta and StoryObj imports to @storybook/nextjs is correct for Storybook v9 with Next.js support.

apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/transferable.stories.tsx (1)

2-2: Imported Storybook types from Next.js variant
The import has been correctly updated to @storybook/nextjs, aligning with the Storybook 9 Next.js setup and ensuring proper type support.

apps/dashboard/src/@/components/ui/button.stories.tsx (1)

2-2: Switched to Next.js Storybook types
Updating the type import to @storybook/nextjs is consistent with the dashboard’s Storybook 9 migration and keeps type definitions accurate.

apps/dashboard/src/app/(app)/account/components/AccountHeaderUI.stories.tsx (1)

2-2: Use Next.js-specific Storybook types
The type import change to @storybook/nextjs correctly reflects the updated config and ensures proper typings for Next.js-based stories.

apps/dashboard/src/@/components/blocks/code-segment.stories.tsx (1)

9-9: Updated Storybook type import
Importing Meta and StoryObj from @storybook/nextjs matches the upgraded Storybook 9 configuration and Next.js integration.

apps/dashboard/src/@/components/ui/select.stories.tsx (1)

10-10: Migrated to Next.js Storybook types
Changing the import path to @storybook/nextjs aligns with the overall migration and retains correct type definitions.

apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/settings/members/ManageInvitesSection.stories.tsx (1)

3-3: Updated Storybook types import
Switching to @storybook/nextjs for Meta and StoryObj aligns with Storybook 9’s Next.js integration.

apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/settings/members/TeamMembersSettingsPage.stories.tsx (1)

2-2: Migrated Storybook import to Next.js
Importing Meta and StoryObj from @storybook/nextjs matches the new Storybook 9 setup.

apps/dashboard/src/app/(app)/team/components/Analytics/StatBreakdownCard.stories.tsx (1)

1-1: Switched Storybook types to Next.js package
Updating the import to @storybook/nextjs ensures compatibility with the upgraded Storybook 9 Next.js integration.

apps/dashboard/src/app/(app)/team/components/HeaderLoggedOut/HeaderLoggedOut.stories.tsx (1)

1-1: Use Next.js Storybook types
Changing the import to @storybook/nextjs aligns this story with the dashboard’s Storybook 9 Next.js configuration.

apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/batchMetadata.stories.tsx (1)

2-2: Updated Storybook import path
Importing Meta and StoryObj from @storybook/nextjs matches the new Storybook 9 Next.js integration across the dashboard.

apps/dashboard/src/app/(app)/login/onboarding/team-onboarding/InviteTeamMembers.stories.tsx (1)

2-2: Consistent Storybook import update
The import from @storybook/nextjs correctly replaces the deprecated @storybook/react, aligning with Storybook 9.x and Next.js integration.

apps/dashboard/src/@/components/ui/table.stories.tsx (1)

11-11: Updated Storybook types import
Importing Meta and StoryObj from @storybook/nextjs is appropriate for Storybook v9 in the Next.js context.

apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/mintable.stories.tsx (1)

10-10: Storybook type imports migrated
The refactoring to use @storybook/nextjs for Meta and StoryObj matches the overall migration strategy and updated config.

apps/dashboard/src/app/(app)/login/onboarding/account-onboarding.stories.tsx (1)

1-1: Storybook import path updated
Replacing @storybook/react with @storybook/nextjs correctly aligns with the dashboard Storybook configuration.

apps/dashboard/src/@/components/blocks/SingleNetworkSelector.stories.tsx (1)

1-1: Storybook Next.js import applied
The import from @storybook/nextjs is correctly applied for Meta and StoryObj types across story files.

apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/settings/ProjectGeneralSettingsPage.stories.tsx (1)

1-1: Import correctly switched to @storybook/nextjs.

The updated path is required for SB 9 + Next.js integration and compiles as expected.
No further action needed.

apps/dashboard/src/components/contract-components/tables/contract-table.stories.tsx (1)

1-1: Next-js Storybook types import looks good.

The migration to @storybook/nextjs is consistent with the rest of the PR and should prevent mixed-package type errors.

apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/settings/general/GeneralSettingsPage.stories.tsx (1)

1-1: Import path updated correctly.

No issues – the switch keeps the story aligned with the new SB 9 preset.

apps/dashboard/src/app/nebula-app/(app)/components/Chatbar.stories.tsx (1)

1-1: Good upgrade to @storybook/nextjs.

Nothing else to flag for this line.

apps/dashboard/src/@/components/blocks/Avatars/GradientAvatar.stories.tsx (1)

1-1: Import change is correct.

The story now relies on the dedicated Next.js Storybook package, matching the new config.

apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/settings/general/Sidebar.stories.tsx (1)

1-1: Updated import for Storybook types
Import path correctly switched from @storybook/react to @storybook/nextjs to align with Storybook v9’s Next.js integration. No residual references to @storybook/react remain.

apps/dashboard/src/@/components/blocks/select-with-search.stories.tsx (1)

1-1: Updated import for Storybook types
Import path correctly switched from @storybook/react to @storybook/nextjs to align with Storybook v9’s Next.js integration. No residual references to @storybook/react remain.

apps/dashboard/src/@/components/blocks/multi-step-status/multi-step-status.stories.tsx (1)

1-1: Updated import for Storybook types
Import path correctly switched from @storybook/react to @storybook/nextjs to align with Storybook v9’s Next.js integration. No residual references to @storybook/react remain.

apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/modules/components/claimable.stories.tsx (1)

9-9: Updated import for Storybook types
Import path correctly switched from @storybook/react to @storybook/nextjs to align with Storybook v9’s Next.js integration. No residual references to @storybook/react remain.

apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/engine/dedicated/(instance)/[engineId]/alerts/components/ManageEngineAlerts.stories.tsx (1)

5-5: Updated import for Storybook types
Import path correctly switched from @storybook/react to @storybook/nextjs to align with Storybook v9’s Next.js integration. No residual references to @storybook/react remain.

apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/usage/overview/components/SponsoredTransactionsTableUI.stories.tsx (1)

3-3: Correct import target for Storybook 9
Switching the source of Meta/StoryObj to @storybook/nextjs is the required step for SB 9 when running inside a Next.js project. No issues spotted.

apps/dashboard/src/app/(app)/team/components/TeamHeader/TeamHeaderUI.stories.tsx (1)

4-4: Consistent migration to @storybook/nextjs
Import looks good. Double-check that the new package is listed in apps/dashboard/package.json under devDependencies; otherwise Storybook will fail at runtime.

apps/dashboard/src/app/(app)/team/[team_slug]/[project_slug]/(sidebar)/engine/dedicated/(general)/overview/engine-instances-table.stories.tsx (1)

2-2: 👍 Storybook import updated correctly
The file now references the proper typings for SB 9 + Next. No further action needed.

apps/dashboard/src/app/(app)/team/[team_slug]/(team)/~/settings/members/InviteSection.stories.tsx (1)

4-4: Import path updated – verify lockfile
Looks correct. After bumping many Storybook packages, ensure pnpm install was run so that the lockfile reflects the new dependency; otherwise CI may produce mismatched versions.

apps/dashboard/src/components/embedded-wallets/Configure/InAppWalletSettingsUI.stories.tsx (1)

2-2: Good catch converting to Next.js-specific typings
Nothing else to flag for this change.

apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/public-pages/erc20/_components/claim-tokens/claim-tokens-ui.stories.tsx (1)

1-1:

✅ Verification successful

Import correctly migrated to @storybook/nextjs; double-check for remaining legacy imports.

The switch is required for Storybook 9’s Next.js framework and looks good.
To ensure consistency across the repo, please verify that no story files still import from @storybook/react.


🏁 Script executed:

#!/bin/bash
# List any files that still import the old Storybook React framework
rg --line-number '@storybook/react"' --glob "*.stories.*" --glob ".storybook/*" || true

Length of output: 88


No legacy @storybook/react imports detected

Ran the provided ripgrep command across all story files and the .storybook directory and found no remaining imports of @storybook/react. The migration to @storybook/nextjs is complete—approving these changes.

apps/dashboard/src/app/(app)/account/settings/AccountSettingsPageUI.stories.tsx (1)

10-10: Good migration to @storybook/nextjs.

The type import is now aligned with the upgraded framework. No further issues spotted here.

apps/dashboard/src/components/buttons/TransactionButton.stories.tsx (1)

11-11: Storybook type import updated correctly.

Change is minimal and accurate; nothing else to flag.

apps/dashboard/src/app/nebula-app/(app)/chat/history/ChatHistoryPage.stories.tsx (1)

1-1: Import path modernised – looks good.

The story now targets the correct Next.js Storybook types.

apps/dashboard/src/app/(app)/login/onboarding/LinkWalletPrompt/LinkWalletPrompt.stories.tsx (1)

1-1: Framework import updated successfully.

No additional concerns; the story should compile fine with Storybook 9.

apps/dashboard/src/app/(app)/team/components/Analytics/EmptyStateCard.stories.tsx (1)

1-1: Update of Storybook type imports is correct
Importing Meta and StoryObj from @storybook/nextjs aligns this story file with the new Storybook 9 Next.js integration.

apps/dashboard/src/app/(app)/team/components/Analytics/Stat.stories.tsx (1)

1-1: Storybook types now sourced from @storybook/nextjs
This change correctly updates the type imports to match the v9 Next.js adapter.

apps/dashboard/src/app/(app)/login/onboarding/LoginOrSignup/LoginOrSignup.stories.tsx (1)

1-1: Imported Meta/StoryObj from Next.js adapter
Switching to @storybook/nextjs for type imports is in line with the dashboard app’s migration to Storybook 9.0.8.

apps/dashboard/src/app/(app)/(dashboard)/(chain)/[chain_id]/[contractAddress]/public-pages/erc20/_components/ContractHeader.stories.tsx (1)

1-1: Type imports updated for Next.js support
Using @storybook/nextjs here correctly enables the Next.js-specific Storybook features.

apps/dashboard/src/@/components/pagination-buttons.stories.tsx (1)

1-1: Switched Storybook types to Next.js package
This aligns the pagination buttons stories with the updated Storybook 9 Next.js setup.

apps/dashboard/src/app/nebula-app/(app)/components/ExecuteTransactionCard.stories.tsx (1)

1-1: Import switch to @storybook/nextjs LGTM

Aligns the story with the Next .js framework entry in main.ts. No further action required here.

apps/dashboard/src/app/(app)/join/team/[team_slug]/[invite_id]/JoinTeamPage.stories.tsx (1)

1-1: Consistent migration to @storybook/nextjs confirmed

Import path now matches the new Storybook 9 / Next .js setup—looks good.

apps/dashboard/src/components/settings/ApiKeys/Create/CreateApiKeyModal.stories.tsx (1)

2-2: Import updated correctly, but validate @storybook/nextjs is in devDependencies

The switch itself is fine; just double-check that every workspace listing this story has @storybook/nextjs (v9.0.8) declared so CI doesn’t fail.

apps/dashboard/src/components/settings/Account/Billing/GatedSwitch.stories.tsx (1)

10-10: Import path migration acknowledged

Matches the rest of the Storybook upgrade—no issues spotted.

apps/dashboard/src/app/nebula-app/(app)/components/Swap/SwapCards.stories.tsx (1)

1-1: Import shifted to @storybook/nextjs looks correct
The update aligns the story with the new Next-specific framework in Storybook 9. ✅

packages/thirdweb/.storybook/main.ts (1)

15-20: Re-evaluate addon line-up after dropping addon-essentials

@storybook/addon-docs is now included, but removing addon-essentials also drops actions, backgrounds, viewport, etc.
Because your preview config still references parameters.controls, confirm that the required sub-addons are still bundled (in Storybook 9 they aren’t unless you add them explicitly).

   addons: [
     getAbsolutePath("@storybook/addon-onboarding"),
     getAbsolutePath("@storybook/addon-links"),
     getAbsolutePath("@chromatic-com/storybook"),
+    // you may still need e.g.
+    // getAbsolutePath("@storybook/addon-controls"),
     getAbsolutePath("@storybook/addon-docs")
   ],
packages/thirdweb/package.json (1)

321-331: Confirm compatibility of upgraded Storybook packages

Upgrading to Storybook 9 (and replacing addon-essentials/interactions with addon-docs) changes the default addon set.
Before merging, open a Storybook session locally and verify that:

  1. Docs & Controls panels render as expected.
  2. No stories rely on the old @storybook/addon-actions, interactions, or viewport.
  3. Chromatic 4.0 snapshots still pass (new major release).

Consider adding any missing standalone addons (@storybook/addon-controls, @storybook/addon-viewport, etc.) if features disappeared.

Also applies to: 360-360

Copy link

@cursor-com cursor-com bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ BugBot reviewed your changes and found no bugs!


Was this report helpful? Give feedback by reacting with 👍 or 👎

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Dashboard Involves changes to the Dashboard. packages SDK Involves changes to the thirdweb SDK
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant