diff --git a/.github/workflows/prepare-patch-release.yml b/.github/workflows/prepare-patch-release.yml
index 5cdc1ba44fcf..91be3acf6f92 100644
--- a/.github/workflows/prepare-patch-release.yml
+++ b/.github/workflows/prepare-patch-release.yml
@@ -33,7 +33,7 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v3
with:
- node-version-file: '.nvmrc'
+ node-version-file: ".nvmrc"
- name: Cache dependencies
uses: actions/cache@v3
@@ -89,7 +89,7 @@ jobs:
yarn release:pick-patches
- name: Cancel when no patches to pick
- if: steps.pick-patches.outputs.pr-count == '0' && steps.pick-patches.outputs.pr-count != null
+ if: steps.pick-patches.outputs.no-patch-prs == 'true'
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# From https://stackoverflow.com/a/75809743
@@ -123,7 +123,7 @@ jobs:
run: |
yarn release:write-changelog ${{ steps.versions.outputs.next }} --unpicked-patches --verbose
- - name: 'Commit changes to branch: version-patch-from-${{ steps.versions.outputs.current }}'
+ - name: "Commit changes to branch: version-patch-from-${{ steps.versions.outputs.current }}"
working-directory: .
run: |
git config --global user.name 'storybook-bot'
@@ -185,4 +185,4 @@ jobs:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_MONITORING_URL }}
uses: Ilshidur/action-discord@master
with:
- args: 'The GitHub Action for preparing the release pull request bumping from v${{ steps.versions.outputs.current }} to v${{ steps.versions.outputs.next }} (triggered by ${{ github.triggering_actor }}) failed! See run at: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}'
+ args: "The GitHub Action for preparing the release pull request bumping from v${{ steps.versions.outputs.current }} to v${{ steps.versions.outputs.next }} (triggered by ${{ github.triggering_actor }}) failed! See run at: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
diff --git a/CHANGELOG.md b/CHANGELOG.md
index c1a25029e92c..5c0d554b6714 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,18 @@
+## 7.6.15
+
+- Interaction: Make sure that adding spies doesn't cause infinite loops with self referencing args [#26019](https://github.com/storybookjs/storybook/pull/26019), thanks @kasperpeulen!
+
+## 7.6.14
+
+- Core: Fix boolean `true` args in URL getting ignored - [#25950](https://github.com/storybookjs/storybook/pull/25950), thanks [@JReinhold](https://github.com/JReinhold)!
+
+## 7.6.13
+
+- Next.js: Fix frameworkOptions resolution - [#25907](https://github.com/storybookjs/storybook/pull/25907), thanks [@valentinpalkovic](https://github.com/valentinpalkovic)!
+- React Native: Fix init fails when package is already installed - [#25908](https://github.com/storybookjs/storybook/pull/25908), thanks [@dannyhw](https://github.com/dannyhw)!
+- React Native: Remove watcher from init - [#25895](https://github.com/storybookjs/storybook/pull/25895), thanks [@dannyhw](https://github.com/dannyhw)!
+- Webpack: Update StorybookConfig import in core-webpack types.ts - [#25740](https://github.com/storybookjs/storybook/pull/25740), thanks [@valentinpalkovic](https://github.com/valentinpalkovic)!
+
## 7.6.12
- CLI: Fix `upgrade` detecting the wrong version of existing Storybooks - [#25752](https://github.com/storybookjs/storybook/pull/25752), thanks [@JReinhold](https://github.com/JReinhold)!
diff --git a/CHANGELOG.prerelease.md b/CHANGELOG.prerelease.md
index 840c5ee3edb8..620e9307a8a7 100644
--- a/CHANGELOG.prerelease.md
+++ b/CHANGELOG.prerelease.md
@@ -1,3 +1,31 @@
+## 8.0.0-beta.2
+
+- Core: Fix boolean `true` args in URL getting ignored - [#25950](https://github.com/storybookjs/storybook/pull/25950), thanks [@JReinhold](https://github.com/JReinhold)!
+- Core: Move @types packages to dev deps in core-common - [#25387](https://github.com/storybookjs/storybook/pull/25387), thanks [@kyletsang](https://github.com/kyletsang)!
+- Maintenance: Rename testing-utils paths to portable-stories - [#25888](https://github.com/storybookjs/storybook/pull/25888), thanks [@yannbf](https://github.com/yannbf)!
+- Portable stories: Pass story context to the play function of a composed story - [#25943](https://github.com/storybookjs/storybook/pull/25943), thanks [@yannbf](https://github.com/yannbf)!
+- UI: Fix `display=true` warning in console - [#25951](https://github.com/storybookjs/storybook/pull/25951), thanks [@JReinhold](https://github.com/JReinhold)!
+- UI: Update deprecated Icons with the new @storybook/icons in addons - [#25822](https://github.com/storybookjs/storybook/pull/25822), thanks [@cdedreuille](https://github.com/cdedreuille)!
+- Vite: Add a `rollup-plugin-webpack-stats` to allow stats from preview builds - [#25923](https://github.com/storybookjs/storybook/pull/25923), thanks [@tmeasday](https://github.com/tmeasday)!
+
+## 8.0.0-beta.1
+
+- Addon-docs: Fix MDX components not applied in Vite and theme loading twice - [#25925](https://github.com/storybookjs/storybook/pull/25925), thanks [@JReinhold](https://github.com/JReinhold)!
+- Core: Fix React peer dependency warnings - [#25926](https://github.com/storybookjs/storybook/pull/25926), thanks [@JReinhold](https://github.com/JReinhold)!
+- Core: Remove CSF batching, as it isn't required any more - [#25872](https://github.com/storybookjs/storybook/pull/25872), thanks [@tmeasday](https://github.com/tmeasday)!
+- Next.js: Fix frameworkOptions resolution - [#25907](https://github.com/storybookjs/storybook/pull/25907), thanks [@valentinpalkovic](https://github.com/valentinpalkovic)!
+- React Native: Fix init fails when package is already installed - [#25908](https://github.com/storybookjs/storybook/pull/25908), thanks [@dannyhw](https://github.com/dannyhw)!
+- React Native: Remove watcher from init - [#25895](https://github.com/storybookjs/storybook/pull/25895), thanks [@dannyhw](https://github.com/dannyhw)!
+- Test: Fix jest-dom matcher type imports - [#25869](https://github.com/storybookjs/storybook/pull/25869), thanks [@alitas](https://github.com/alitas)!
+- UI: Fix overlapping on the ref button in the sidebar - [#25914](https://github.com/storybookjs/storybook/pull/25914), thanks [@cdedreuille](https://github.com/cdedreuille)!
+- UI: Remove keyboard shortcut hint in search bar on mobile viewports - [#25866](https://github.com/storybookjs/storybook/pull/25866), thanks [@tusharwebd](https://github.com/tusharwebd)!
+
+## 8.0.0-beta.0
+
+- CLI: Add Visual Tests addon to `init` - [#25850](https://github.com/storybookjs/storybook/pull/25850), thanks [@shilman](https://github.com/shilman)!
+- CLI: Upgrade boxen library - [#25713](https://github.com/storybookjs/storybook/pull/25713), thanks [@yannbf](https://github.com/yannbf)!
+- UI: Fix custom tabs not showing in the manager - [#25792](https://github.com/storybookjs/storybook/pull/25792), thanks [@ndelangen](https://github.com/ndelangen)!
+
## 8.0.0-alpha.17
- CLI: Fix add command for non monorepo deps - [#25791](https://github.com/storybookjs/storybook/pull/25791), thanks [@valentinpalkovic](https://github.com/valentinpalkovic)!
diff --git a/MIGRATION.md b/MIGRATION.md
index bc3727aa4528..391c868cfa5b 100644
--- a/MIGRATION.md
+++ b/MIGRATION.md
@@ -1,12 +1,20 @@
Migration
- [From version 7.x to 8.0.0](#from-version-7x-to-800)
+ - [Type change in `composeStories` API](#type-change-in-composestories-api)
- [Tab addons are now routed to a query parameter](#tab-addons-are-now-routed-to-a-query-parameter)
- [Default keyboard shortcuts changed](#default-keyboard-shortcuts-changed)
- [Manager addons are now rendered with React 18](#manager-addons-are-now-rendered-with-react-18)
- [Removal of `storiesOf`-API](#removal-of-storiesof-api)
- [Removed deprecated shim packages](#removed-deprecated-shim-packages)
- [Framework-specific Vite plugins have to be explicitly added](#framework-specific-vite-plugins-have-to-be-explicitly-added)
+ - [For React:](#for-react)
+ - [For Vue:](#for-vue)
+ - [For Svelte (without Sveltekit):](#for-svelte-without-sveltekit)
+ - [For Preact:](#for-preact)
+ - [For Solid:](#for-solid)
+ - [For Qwik:](#for-qwik)
+ - [TurboSnap Vite plugin is no longer needed](#turbosnap-vite-plugin-is-no-longer-needed)
- [Implicit actions can not be used during rendering (for example in the play function)](#implicit-actions-can-not-be-used-during-rendering-for-example-in-the-play-function)
- [MDX related changes](#mdx-related-changes)
- [MDX is upgraded to v3](#mdx-is-upgraded-to-v3)
@@ -28,6 +36,7 @@
- [Removed stories.json](#removed-storiesjson)
- [Removed `sb babelrc` command](#removed-sb-babelrc-command)
- [Changed interfaces for `@storybook/router` components](#changed-interfaces-for-storybookrouter-components)
+ - [Extract no longer batches](#extract-no-longer-batches)
- [Framework-specific changes](#framework-specific-changes)
- [React](#react)
- [`react-docgen` component analysis by default](#react-docgen-component-analysis-by-default)
@@ -35,6 +44,8 @@
- [Require Next.js 13.5 and up](#require-nextjs-135-and-up)
- [Automatic SWC mode detection](#automatic-swc-mode-detection)
- [RSC config moved to React renderer](#rsc-config-moved-to-react-renderer)
+ - [Vue](#vue)
+ - [Require Vue 3 and up](#require-vue-3-and-up)
- [Angular](#angular)
- [Require Angular 15 and up](#require-angular-15-and-up)
- [Svelte](#svelte)
@@ -388,6 +399,23 @@
## From version 7.x to 8.0.0
+### Type change in `composeStories` API
+
+There is a TypeScript type change in the `play` function returned from `composeStories` or `composeStory` in `@storybook/react` or `@storybook/vue3`, where before it was always defined, now it is potentially undefined. This means that you might have to make a small change in your code, such as:
+
+```ts
+const { Primary } = composeStories(stories)
+
+// before
+await Primary.play(...)
+
+// after
+await Primary.play?.(...) // if you don't care whether the play function exists
+await Primary.play!(...) // if you want a runtime error when the play function does not exist
+```
+
+There are plans to make the type of the play function be inferred based on your imported story's play function in a near future, so the types will be 100% accurate.
+
### Tab addons are now routed to a query parameter
The URL of a tab used to be: `http://localhost:6006/?path=/my-addon-tab/my-story`.
@@ -447,16 +475,78 @@ This section explains the rationale, and the required changed you might have to
In Storybook 7, we would automatically add frameworks-specific Vite plugins, e.g. `@vitejs/plugin-react` if not installed.
In Storybook 8 those plugins have to be added explicitly in the user's `vite.config.ts`:
+#### For React:
+
```ts
import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
-// https://vitejs.dev/config/
export default defineConfig({
plugins: [react()],
});
```
+#### For Vue:
+
+```ts
+import { defineConfig } from "vite";
+import vue from "@vitejs/plugin-vue";
+
+export default defineConfig({
+ plugins: [vue()],
+});
+```
+
+#### For Svelte (without Sveltekit):
+
+```ts
+import { defineConfig } from "vite";
+import svelte from "@sveltejs/vite-plugin-svelte";
+
+export default defineConfig({
+ plugins: [svelte()],
+});
+```
+
+#### For Preact:
+
+```ts
+import { defineConfig } from "vite";
+import preact from "@preact/preset-vite";
+
+export default defineConfig({
+ plugins: [preact()],
+});
+```
+
+#### For Solid:
+
+```ts
+import { defineConfig } from "vite";
+import solid from "vite-plugin-solid";
+
+export default defineConfig({
+ plugins: [solid()],
+});
+```
+
+#### For Qwik:
+
+```ts
+import { defineConfig } from "vite";
+import qwik from "vite-plugin-qwik";
+
+export default defineConfig({
+ plugins: [qwik()],
+});
+```
+
+### TurboSnap Vite plugin is no longer needed
+
+At least in build mode, `builder-vite` now supports the `--webpack-stats-json` flag and will output `preview-stats.json`.
+
+This means https://github.com/IanVS/vite-plugin-turbosnap is no longer necessary, and duplicative, and the plugin will automatically be removed if found.
+
### Implicit actions can not be used during rendering (for example in the play function)
In Storybook 7, we inferred if the component accepts any action props,
@@ -710,6 +800,10 @@ The reasoning behind is to condense and provide some clarity to what's happened
The `hideOnly` prop has been removed from the `` component in `@storybook/router`. If needed this can be implemented manually with the `` component.
+#### Extract no longer batches
+
+`Preview.extract()` no longer loads CSF files in batches. This was a workaround for resource limitations that slowed down extract. This shouldn't affect behaviour.
+
### Framework-specific changes
#### React
@@ -749,6 +843,12 @@ Storybook 7.6 introduced a new feature flag, `experimentalNextRSC`, to enable Re
These flags have been renamed to `experimentalRSC` and `react.rsc`, respectively. This is a breaking change to accommodate RSC support in other, non-Next.js frameworks. For now, `@storybook/nextjs` is the only framework that supports it, and does so experimentally.
+#### Vue
+
+##### Require Vue 3 and up
+
+Starting in 8.0, Storybook requires Vue 3 and up.
+
#### Angular
##### Require Angular 15 and up
@@ -1480,7 +1580,7 @@ Storybook uses `react` in a variety of docs-related packages. In the past, we've
To upgrade manually, add any version of `react` and `react-dom` as devDependencies using your package manager of choice, e.g.
```
-npm add react react-dom --dev
+npm add react react-dom --save-dev
```
#### start-storybook / build-storybook binaries removed
diff --git a/code/addons/a11y/package.json b/code/addons/a11y/package.json
index d415ec8e1740..ae09048b7f43 100644
--- a/code/addons/a11y/package.json
+++ b/code/addons/a11y/package.json
@@ -1,6 +1,6 @@
{
"name": "@storybook/addon-a11y",
- "version": "8.0.0-alpha.17",
+ "version": "8.0.0-beta.2",
"description": "Test component compliance with web accessibility standards",
"keywords": [
"a11y",
@@ -60,7 +60,7 @@
"@storybook/client-logger": "workspace:*",
"@storybook/components": "workspace:*",
"@storybook/global": "^5.0.0",
- "@storybook/icons": "^1.2.3",
+ "@storybook/icons": "^1.2.5",
"@storybook/manager-api": "workspace:*",
"@storybook/preview-api": "workspace:*",
"@storybook/theming": "workspace:*",
diff --git a/code/addons/a11y/src/components/Report/Item.tsx b/code/addons/a11y/src/components/Report/Item.tsx
index 2d34ee58d745..1830a10771fc 100644
--- a/code/addons/a11y/src/components/Report/Item.tsx
+++ b/code/addons/a11y/src/components/Report/Item.tsx
@@ -1,7 +1,6 @@
import React, { Fragment, useState } from 'react';
import { styled } from '@storybook/theming';
-import { Icons } from '@storybook/components';
import type { Result } from 'axe-core';
import { Info } from './Info';
@@ -11,6 +10,7 @@ import { Tags } from './Tags';
import type { RuleType } from '../A11YPanel';
import HighlightToggle from './HighlightToggle';
+import { ChevronSmallDownIcon } from '@storybook/icons';
const Wrapper = styled.div(({ theme }) => ({
display: 'flex',
@@ -21,10 +21,7 @@ const Wrapper = styled.div(({ theme }) => ({
},
}));
-const Icon = styled(Icons)({
- height: 10,
- width: 10,
- minWidth: 10,
+const Icon = styled(ChevronSmallDownIcon)({
marginRight: 10,
transition: 'transform 0.1s ease-in-out',
verticalAlign: 'inherit',
@@ -75,7 +72,6 @@ export const Item = (props: ItemProps) => {
onToggle(!open)} role="button">
{
const { mdxPlugin } = await import('./plugins/mdx-plugin');
// Use the resolvedReact preset to alias react and react-dom to either the users version or the version shipped with addon-docs
- const { react, reactDom } = await getResolvedReact(options);
+ const { react, reactDom, mdx } = await getResolvedReact(options);
- const reactAliasPlugin = {
- name: 'storybook:react-alias',
+ const packageDeduplicationPlugin = {
+ name: 'storybook:package-deduplication',
enforce: 'pre',
config: () => ({
resolve: {
alias: {
react,
'react-dom': reactDom,
+ '@mdx-js/react': mdx,
+ /**
+ * The following aliases are used to ensure a single instance of these packages are used in situations where they are duplicated
+ * The packages will be duplicated by the package manager when the user has react installed with another version than 18.2.0
+ */
+ '@storybook/theming': dirname(require.resolve('@storybook/theming')),
+ '@storybook/components': dirname(require.resolve('@storybook/components')),
+ '@storybook/blocks': dirname(require.resolve('@storybook/blocks')),
},
},
}),
@@ -155,7 +163,7 @@ export const viteFinal = async (config: any, options: Options) => {
// add alias plugin early to ensure any other plugins that also add the aliases will override this
// eg. the preact vite plugin adds its own aliases
- plugins.unshift(reactAliasPlugin);
+ plugins.unshift(packageDeduplicationPlugin);
plugins.push(mdxPlugin(options));
return config;
diff --git a/code/addons/essentials/package.json b/code/addons/essentials/package.json
index b4cbc9f7ca5f..6ff40fb86d80 100644
--- a/code/addons/essentials/package.json
+++ b/code/addons/essentials/package.json
@@ -1,6 +1,6 @@
{
"name": "@storybook/addon-essentials",
- "version": "8.0.0-alpha.17",
+ "version": "8.0.0-beta.2",
"description": "Curated addons to bring out the best of Storybook",
"keywords": [
"addon",
diff --git a/code/addons/gfm/package.json b/code/addons/gfm/package.json
index 7a8b2ddbc899..b80b72c7fc93 100644
--- a/code/addons/gfm/package.json
+++ b/code/addons/gfm/package.json
@@ -1,6 +1,6 @@
{
"name": "@storybook/addon-mdx-gfm",
- "version": "8.0.0-alpha.17",
+ "version": "8.0.0-beta.2",
"description": "GitHub Flavored Markdown in Storybook",
"keywords": [
"addon",
diff --git a/code/addons/highlight/package.json b/code/addons/highlight/package.json
index 0948688d48b8..00aaed7b475f 100644
--- a/code/addons/highlight/package.json
+++ b/code/addons/highlight/package.json
@@ -1,6 +1,6 @@
{
"name": "@storybook/addon-highlight",
- "version": "8.0.0-alpha.17",
+ "version": "8.0.0-beta.2",
"description": "Highlight DOM nodes within your stories",
"keywords": [
"storybook-addons",
diff --git a/code/addons/interactions/package.json b/code/addons/interactions/package.json
index 978de9bf4c24..0cf9b95103fd 100644
--- a/code/addons/interactions/package.json
+++ b/code/addons/interactions/package.json
@@ -1,6 +1,6 @@
{
"name": "@storybook/addon-interactions",
- "version": "8.0.0-alpha.17",
+ "version": "8.0.0-beta.2",
"description": "Automate, test and debug user interactions",
"keywords": [
"storybook-addons",
@@ -50,7 +50,6 @@
},
"dependencies": {
"@storybook/global": "^5.0.0",
- "@storybook/icons": "^1.2.3",
"@storybook/types": "workspace:*",
"jest-mock": "^27.0.6",
"polished": "^4.2.2",
@@ -62,6 +61,7 @@
"@storybook/components": "workspace:*",
"@storybook/core-common": "workspace:*",
"@storybook/core-events": "workspace:*",
+ "@storybook/icons": "^1.2.5",
"@storybook/instrumenter": "workspace:*",
"@storybook/manager-api": "workspace:*",
"@storybook/preview-api": "workspace:*",
diff --git a/code/addons/interactions/src/components/List.tsx b/code/addons/interactions/src/components/List.tsx
index 8c420d37102a..75db1d21d99e 100644
--- a/code/addons/interactions/src/components/List.tsx
+++ b/code/addons/interactions/src/components/List.tsx
@@ -1,6 +1,6 @@
import React, { Fragment, useState } from 'react';
import { styled, themes, convert } from '@storybook/theming';
-import { Icons, type IconsProps } from '@storybook/components';
+import { ChevronSmallDownIcon } from '@storybook/icons';
const ListWrapper = styled.ul({
listStyle: 'none',
@@ -18,10 +18,7 @@ const Wrapper = styled.div({
},
});
-const Icon = styled(Icons)({
- height: 10,
- width: 10,
- minWidth: 10,
+const Icon = styled(ChevronSmallDownIcon)({
color: convert(themes.light).textMutedColor,
marginRight: 10,
transition: 'transform 0.1s ease-in-out',
@@ -68,7 +65,6 @@ export const ListItem: React.FC = ({ item }) => {
onToggle(!open)} role="button">
(({ theme, status }) => {
- const color = {
- [CallStates.DONE]: theme.color.positive,
- [CallStates.ERROR]: theme.color.negative,
- [CallStates.ACTIVE]: theme.color.secondary,
- [CallStates.WAITING]: transparentize(0.5, gray[500]),
- }[status];
- return {
- width: status === CallStates.WAITING ? 6 : 12,
- height: status === CallStates.WAITING ? 6 : 12,
- color,
- justifySelf: 'center',
- };
+const WarningContainer = styled.div({
+ width: 14,
+ height: 14,
+ display: 'flex',
+ alignItems: 'center',
+ justifyContent: 'center',
});
-export const StatusIcon: React.FC = ({ status, className }) => {
- const icon = {
- [CallStates.DONE]: 'check',
- [CallStates.ERROR]: 'stopalt',
- [CallStates.ACTIVE]: 'play',
- [CallStates.WAITING]: 'circle',
- }[status] as IconsProps['icon'];
- return (
-
- );
+export const StatusIcon: React.FC = ({ status }) => {
+ const theme = useTheme();
+
+ switch (status) {
+ case CallStates.DONE: {
+ return ;
+ }
+ case CallStates.ERROR: {
+ return ;
+ }
+ case CallStates.ACTIVE: {
+ return ;
+ }
+ case CallStates.WAITING: {
+ return (
+
+
+
+ );
+ }
+ default: {
+ return null;
+ }
+ }
};
diff --git a/code/addons/jest/package.json b/code/addons/jest/package.json
index f59367de098d..dc65c436571a 100644
--- a/code/addons/jest/package.json
+++ b/code/addons/jest/package.json
@@ -1,6 +1,6 @@
{
"name": "@storybook/addon-jest",
- "version": "8.0.0-alpha.17",
+ "version": "8.0.0-beta.2",
"description": "React storybook addon that show component jest report",
"keywords": [
"addon",
@@ -62,6 +62,7 @@
"@storybook/client-logger": "workspace:*",
"@storybook/components": "workspace:*",
"@storybook/core-events": "workspace:*",
+ "@storybook/icons": "^1.2.5",
"@storybook/manager-api": "workspace:*",
"@storybook/preview-api": "workspace:*",
"@storybook/theming": "workspace:*",
diff --git a/code/addons/jest/src/components/Result.tsx b/code/addons/jest/src/components/Result.tsx
index d50fa6f34a1a..61bacd9e6af7 100644
--- a/code/addons/jest/src/components/Result.tsx
+++ b/code/addons/jest/src/components/Result.tsx
@@ -1,8 +1,8 @@
import React, { Fragment, useState } from 'react';
import { styled, themes, convert } from '@storybook/theming';
-import { Icons } from '@storybook/components';
// eslint-disable-next-line import/no-named-as-default
import Message from './Message';
+import { ChevronSmallDownIcon } from '@storybook/icons';
const Wrapper = styled.div<{ status: string }>(({ theme, status }) => ({
display: 'flex',
@@ -30,10 +30,7 @@ const HeaderBar = styled.div<{ status: string }>(({ theme, status }) => ({
},
}));
-const Icon = styled(Icons)(({ theme }) => ({
- height: 10,
- width: 10,
- minWidth: 10,
+const Icon = styled(ChevronSmallDownIcon)(({ theme }) => ({
color: theme.textMutedColor,
marginRight: 10,
transition: 'transform 0.1s ease-in-out',
@@ -66,7 +63,6 @@ export function Result(props: ResultProps) {
{status === `failed` ? (
void;
}
+// We can't remove the Icons component just yet because there's no way for now to import icons
+// in the preview directly. Before having a better solution, we are going to keep the Icons component
+// for now and remove the deprecated warning.
+
export const ToolbarMenuButton: FC = ({
active,
title,
@@ -19,7 +23,7 @@ export const ToolbarMenuButton: FC = ({
}) => {
return (
- {icon && }
+ {icon && }
{title ? `\xa0${title}` : null}
);
diff --git a/code/addons/viewport/package.json b/code/addons/viewport/package.json
index 03315ce7d262..3f8ed938ff27 100644
--- a/code/addons/viewport/package.json
+++ b/code/addons/viewport/package.json
@@ -1,6 +1,6 @@
{
"name": "@storybook/addon-viewport",
- "version": "8.0.0-alpha.17",
+ "version": "8.0.0-beta.2",
"description": "Build responsive components by adjusting Storybook’s viewport size and orientation",
"keywords": [
"addon",
@@ -55,7 +55,7 @@
"@storybook/components": "workspace:*",
"@storybook/core-events": "workspace:*",
"@storybook/global": "^5.0.0",
- "@storybook/icons": "^1.2.3",
+ "@storybook/icons": "^1.2.5",
"@storybook/manager-api": "workspace:*",
"@storybook/preview-api": "workspace:*",
"@storybook/theming": "workspace:*",
diff --git a/code/builders/builder-manager/package.json b/code/builders/builder-manager/package.json
index d085f2c6e6ed..bac171608295 100644
--- a/code/builders/builder-manager/package.json
+++ b/code/builders/builder-manager/package.json
@@ -1,6 +1,6 @@
{
"name": "@storybook/builder-manager",
- "version": "8.0.0-alpha.17",
+ "version": "8.0.0-beta.2",
"description": "Storybook manager builder",
"keywords": [
"storybook"
diff --git a/code/builders/builder-vite/input/iframe.html b/code/builders/builder-vite/input/iframe.html
index dd976d6c4ab4..7720ef6b9482 100644
--- a/code/builders/builder-vite/input/iframe.html
+++ b/code/builders/builder-vite/input/iframe.html
@@ -1,44 +1,66 @@
-
+
+
+
+ Storybook
+
-
-
- Storybook
-
+
+
+
+
+
-
-
-
-
-
+
+
+
- // We do this so that "module && module.hot" etc. in Storybook source code
- // doesn't fail (it will simply be disabled)
- window.module = undefined;
- window.global = window;
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
+
+
+
+
+
+
+
+