diff --git a/code/addons/docs/src/DocsRenderer.tsx b/code/addons/docs/src/DocsRenderer.tsx index 238cfbb27bb..afb3c1e1402 100644 --- a/code/addons/docs/src/DocsRenderer.tsx +++ b/code/addons/docs/src/DocsRenderer.tsx @@ -1,12 +1,15 @@ import type { PropsWithChildren } from 'react'; import React, { Component } from 'react'; + import type { DocsContextProps, DocsRenderFunction, Parameters, Renderer, } from 'storybook/internal/types'; + import { AnchorMdx, CodeOrSourceMdx, Docs, HeadersMdx } from '@storybook/blocks'; + import { renderElement, unmountElement } from '@storybook/react-dom-shim'; // TS doesn't like that we export a component with types that it doesn't know about (TS4203) diff --git a/code/addons/docs/src/compiler/index.test.ts b/code/addons/docs/src/compiler/index.test.ts index 4bac552fdff..6f4ec7b4bd8 100644 --- a/code/addons/docs/src/compiler/index.test.ts +++ b/code/addons/docs/src/compiler/index.test.ts @@ -1,5 +1,7 @@ import { describe, expect, it } from 'vitest'; + import { dedent } from 'ts-dedent'; + import { compile, compileSync } from './index'; expect.addSnapshotSerializer({ diff --git a/code/addons/docs/src/mdx-loader.ts b/code/addons/docs/src/mdx-loader.ts index 639fb0c70f0..3f8603457e0 100644 --- a/code/addons/docs/src/mdx-loader.ts +++ b/code/addons/docs/src/mdx-loader.ts @@ -1,5 +1,6 @@ import type { transformAsync } from '@babel/core'; import type { compile as mdxCompile } from '@mdx-js/mdx'; + import { compile } from './compiler'; export type MdxCompileOptions = Parameters[1]; diff --git a/code/addons/docs/src/plugins/mdx-plugin.ts b/code/addons/docs/src/plugins/mdx-plugin.ts index 1f9aa411689..ec36c994a3e 100644 --- a/code/addons/docs/src/plugins/mdx-plugin.ts +++ b/code/addons/docs/src/plugins/mdx-plugin.ts @@ -1,9 +1,11 @@ import type { Options } from 'storybook/internal/types'; + import { createFilter } from '@rollup/pluginutils'; import { dirname, join } from 'path'; import rehypeExternalLinks from 'rehype-external-links'; import rehypeSlug from 'rehype-slug'; import type { Plugin } from 'vite'; + import type { CompileOptions } from '../compiler'; import { compile } from '../compiler'; diff --git a/code/addons/docs/src/preset.ts b/code/addons/docs/src/preset.ts index 3c5d4fe554b..a9989b90d8c 100644 --- a/code/addons/docs/src/preset.ts +++ b/code/addons/docs/src/preset.ts @@ -1,9 +1,12 @@ import { logger } from 'storybook/internal/node-logger'; import type { DocsOptions, Options, PresetProperty } from 'storybook/internal/types'; + import type { CsfPluginOptions } from '@storybook/csf-plugin'; + import { dirname, isAbsolute, join } from 'path'; import rehypeExternalLinks from 'rehype-external-links'; import rehypeSlug from 'rehype-slug'; + import type { CompileOptions } from './compiler'; /** diff --git a/code/addons/docs/src/preview.ts b/code/addons/docs/src/preview.ts index bf3c0232958..735de9f7223 100644 --- a/code/addons/docs/src/preview.ts +++ b/code/addons/docs/src/preview.ts @@ -1,4 +1,5 @@ import type { PreparedStory } from 'storybook/internal/types'; + import { global } from '@storybook/global'; const excludeTags = Object.entries(global.TAGS_OPTIONS ?? {}).reduce( diff --git a/code/addons/docs/template/stories/docs2/resolved-react.stories.ts b/code/addons/docs/template/stories/docs2/resolved-react.stories.ts index 27b6ba55744..331b7e1dfd8 100644 --- a/code/addons/docs/template/stories/docs2/resolved-react.stories.ts +++ b/code/addons/docs/template/stories/docs2/resolved-react.stories.ts @@ -1,8 +1,9 @@ import * as ReactExport from 'react'; -import { expect, within } from '@storybook/test'; import * as ReactDom from 'react-dom'; import * as ReactDomServer from 'react-dom/server'; +import { expect, within } from '@storybook/test'; + /** * This component is used to display the resolved version of React and its related packages. * As long as `@storybook/addon-docs` is installed, `react` and `react-dom` should be available to import from and should resolve to the same version. diff --git a/code/addons/docs/template/stories/docspage/source.stories.ts b/code/addons/docs/template/stories/docspage/source.stories.ts index 373120eb005..faa8517dc54 100644 --- a/code/addons/docs/template/stories/docspage/source.stories.ts +++ b/code/addons/docs/template/stories/docspage/source.stories.ts @@ -1,5 +1,7 @@ import type { StoryContext } from 'storybook/internal/types'; + import { global as globalThis } from '@storybook/global'; + import { dedent } from 'ts-dedent'; export default { diff --git a/code/addons/docs/vitest.config.ts b/code/addons/docs/vitest.config.ts index 03172200442..7420176b2e4 100644 --- a/code/addons/docs/vitest.config.ts +++ b/code/addons/docs/vitest.config.ts @@ -1,4 +1,5 @@ import { defineConfig, mergeConfig } from 'vitest/config'; + import { vitestCommonConfig } from '../../vitest.workspace'; export default mergeConfig( diff --git a/code/addons/onboarding/src/components/Confetti/Confetti.tsx b/code/addons/onboarding/src/components/Confetti/Confetti.tsx index 4b48eac08e0..b9b816d3e05 100644 --- a/code/addons/onboarding/src/components/Confetti/Confetti.tsx +++ b/code/addons/onboarding/src/components/Confetti/Confetti.tsx @@ -1,10 +1,10 @@ import React, { useEffect } from 'react'; import { useState } from 'react'; +import { createPortal } from 'react-dom'; import { styled } from 'storybook/internal/theming'; import ReactConfetti from 'react-confetti'; -import { createPortal } from 'react-dom'; interface ConfettiProps extends Omit, 'drawShape'> { top?: number; diff --git a/code/addons/onboarding/src/manager.tsx b/code/addons/onboarding/src/manager.tsx index 40b1436420b..b4e2edebede 100644 --- a/code/addons/onboarding/src/manager.tsx +++ b/code/addons/onboarding/src/manager.tsx @@ -1,10 +1,9 @@ import React, { Suspense, lazy } from 'react'; +import ReactDOM from 'react-dom'; import { STORY_SPECIFIED } from 'storybook/internal/core-events'; import { addons } from 'storybook/internal/manager-api'; -import ReactDOM from 'react-dom'; - const Onboarding = lazy(() => import('./Onboarding')); // The addon is enabled only when: diff --git a/code/core/src/common/utils/check-addon-order.ts b/code/core/src/common/utils/check-addon-order.ts index 0669e0f6723..0922a8cce44 100644 --- a/code/core/src/common/utils/check-addon-order.ts +++ b/code/core/src/common/utils/check-addon-order.ts @@ -1,10 +1,11 @@ -import { logger } from '@storybook/core/node-logger'; import type { CoreCommon_AddonEntry, CoreCommon_AddonInfo, CoreCommon_OptionsEntry, } from '@storybook/core/types'; +import { logger } from '@storybook/core/node-logger'; + interface Options { before: CoreCommon_AddonInfo; after: CoreCommon_AddonInfo; diff --git a/code/core/src/components/components/tooltip/WithTooltip.tsx b/code/core/src/components/components/tooltip/WithTooltip.tsx index 28576bf6c20..17628604438 100644 --- a/code/core/src/components/components/tooltip/WithTooltip.tsx +++ b/code/core/src/components/components/tooltip/WithTooltip.tsx @@ -1,10 +1,10 @@ import type { ComponentProps, ReactNode } from 'react'; import React, { useCallback, useEffect, useState } from 'react'; +import ReactDOM from 'react-dom'; import { styled } from '@storybook/core/theming'; import { global } from '@storybook/global'; -import ReactDOM from 'react-dom'; import type { PopperOptions, Config as ReactPopperTooltipConfig } from 'react-popper-tooltip'; import { usePopperTooltip } from 'react-popper-tooltip'; diff --git a/code/core/src/core-server/presets/common-manager.ts b/code/core/src/core-server/presets/common-manager.ts index f12d1d66275..07b11bbaa50 100644 --- a/code/core/src/core-server/presets/common-manager.ts +++ b/code/core/src/core-server/presets/common-manager.ts @@ -1,6 +1,7 @@ -import { addons } from '@storybook/core/manager-api'; import { global } from '@storybook/global'; +import { addons } from '@storybook/core/manager-api'; + const STATIC_FILTER = 'static-filter'; addons.register(STATIC_FILTER, (api) => { diff --git a/code/core/src/manager-api/lib/request-response.ts b/code/core/src/manager-api/lib/request-response.ts index d76e1aca565..da7413f55b1 100644 --- a/code/core/src/manager-api/lib/request-response.ts +++ b/code/core/src/manager-api/lib/request-response.ts @@ -1,4 +1,5 @@ import type { Channel } from '@storybook/core/channels'; + import type { RequestData, ResponseData } from '@storybook/core/core-events'; export class RequestResponseError | void> extends Error { diff --git a/code/core/src/manager/components/sidebar/FIleSearchList.utils.tsx b/code/core/src/manager/components/sidebar/FIleSearchList.utils.tsx index 87c2297a44f..5ee7b3313a8 100644 --- a/code/core/src/manager/components/sidebar/FIleSearchList.utils.tsx +++ b/code/core/src/manager/components/sidebar/FIleSearchList.utils.tsx @@ -1,7 +1,8 @@ -import type { Virtualizer } from '@tanstack/react-virtual'; import { useEffect } from 'react'; import { flushSync } from 'react-dom'; +import type { Virtualizer } from '@tanstack/react-virtual'; + interface UseArrowKeyNavigationProps { rowVirtualizer: Virtualizer; parentRef: React.MutableRefObject; diff --git a/code/core/src/manager/globals/runtime.ts b/code/core/src/manager/globals/runtime.ts index 50fa1568e85..a52501db52c 100644 --- a/code/core/src/manager/globals/runtime.ts +++ b/code/core/src/manager/globals/runtime.ts @@ -1,4 +1,6 @@ import * as REACT from 'react'; +import * as REACT_DOM from 'react-dom'; +import * as REACT_DOM_CLIENT from 'react-dom/client'; import * as CHANNELS from '@storybook/core/channels'; import * as COMPONENTS from '@storybook/core/components'; @@ -13,9 +15,6 @@ import * as EVENTS from '@storybook/core/core-events'; import * as MANAGER_API from '@storybook/core/manager-api'; import * as EVENTS_MANAGER_ERRORS from '@storybook/core/manager-errors'; -import * as REACT_DOM from 'react-dom'; -import * as REACT_DOM_CLIENT from 'react-dom/client'; - import type { globalsNameReferenceMap } from './globals'; // Here we map the name of a module to their VALUE in the global scope. diff --git a/code/core/src/manager/index.tsx b/code/core/src/manager/index.tsx index fcdca0fa234..0880749eb3e 100644 --- a/code/core/src/manager/index.tsx +++ b/code/core/src/manager/index.tsx @@ -1,5 +1,6 @@ import type { ComponentProps, FC } from 'react'; import React, { useCallback, useMemo } from 'react'; +import { createRoot } from 'react-dom/client'; import { Location, LocationProvider, useNavigate } from '@storybook/core/router'; import { ThemeProvider, ensure as ensureTheme } from '@storybook/core/theming'; @@ -10,7 +11,6 @@ import { Provider as ManagerProvider, types } from '@storybook/core/manager-api' import type { Combo } from '@storybook/core/manager-api'; import { ProviderDoesNotExtendBaseProviderError } from '@storybook/core/manager-errors'; -import { createRoot } from 'react-dom/client'; import { HelmetProvider } from 'react-helmet-async'; import { App } from './App'; diff --git a/code/frameworks/ember/src/client/preview/docs/config.ts b/code/frameworks/ember/src/client/preview/docs/config.ts index d6b785a6310..7b59596a151 100644 --- a/code/frameworks/ember/src/client/preview/docs/config.ts +++ b/code/frameworks/ember/src/client/preview/docs/config.ts @@ -1,5 +1,6 @@ import { enhanceArgTypes } from 'storybook/internal/docs-tools'; import type { ArgTypesEnhancer } from 'storybook/internal/types'; + import { extractArgTypes, extractComponentDescription } from './jsondoc'; export const parameters: {} = { diff --git a/code/frameworks/nextjs/src/styledJsx/decorator.tsx b/code/frameworks/nextjs/src/styledJsx/decorator.tsx index 5e18664c965..69d5496283b 100644 --- a/code/frameworks/nextjs/src/styledJsx/decorator.tsx +++ b/code/frameworks/nextjs/src/styledJsx/decorator.tsx @@ -1,4 +1,5 @@ import * as React from 'react'; + import { StyleRegistry } from 'styled-jsx'; export const StyledJsxDecorator = (Story: React.FC): React.ReactNode => ( diff --git a/code/frameworks/nextjs/template/stories/DynamicImport.stories.jsx b/code/frameworks/nextjs/template/stories/DynamicImport.stories.jsx index 3c177d67073..e9efbd0f708 100644 --- a/code/frameworks/nextjs/template/stories/DynamicImport.stories.jsx +++ b/code/frameworks/nextjs/template/stories/DynamicImport.stories.jsx @@ -1,6 +1,7 @@ -import dynamic from 'next/dynamic'; import React, { Suspense } from 'react'; +import dynamic from 'next/dynamic'; + const DynamicComponent = dynamic(() => import('./dynamic-component'), { ssr: false, }); diff --git a/code/frameworks/nextjs/template/stories/RSC.jsx b/code/frameworks/nextjs/template/stories/RSC.jsx index 9c894710b43..a5771a6a920 100644 --- a/code/frameworks/nextjs/template/stories/RSC.jsx +++ b/code/frameworks/nextjs/template/stories/RSC.jsx @@ -1,4 +1,5 @@ import React from 'react'; + import 'server-only'; export const RSC = async ({ label }) => <>RSC {label}; diff --git a/code/frameworks/nextjs/template/stories_nextjs-default-js/GetImageProps.stories.jsx b/code/frameworks/nextjs/template/stories_nextjs-default-js/GetImageProps.stories.jsx index 7c8e75a0908..f3e7c0b7462 100644 --- a/code/frameworks/nextjs/template/stories_nextjs-default-js/GetImageProps.stories.jsx +++ b/code/frameworks/nextjs/template/stories_nextjs-default-js/GetImageProps.stories.jsx @@ -1,6 +1,7 @@ -import { getImageProps } from 'next/image'; import React from 'react'; +import { getImageProps } from 'next/image'; + import Accessibility from '../../assets/accessibility.svg'; import Testing from '../../assets/testing.png'; diff --git a/code/renderers/html/src/docs/sourceDecorator.test.ts b/code/renderers/html/src/docs/sourceDecorator.test.ts index e9c8ed114e1..568710a748b 100644 --- a/code/renderers/html/src/docs/sourceDecorator.test.ts +++ b/code/renderers/html/src/docs/sourceDecorator.test.ts @@ -1,7 +1,9 @@ import type { Mock } from 'vitest'; import { beforeEach, describe, expect, it, vi } from 'vitest'; + import { SNIPPET_RENDERED } from 'storybook/internal/docs-tools'; import { addons, useEffect } from 'storybook/internal/preview-api'; + import type { StoryContext } from '../types'; import { sourceDecorator } from './sourceDecorator'; diff --git a/code/renderers/html/src/docs/sourceDecorator.ts b/code/renderers/html/src/docs/sourceDecorator.ts index 191a86e4700..bedd631f145 100644 --- a/code/renderers/html/src/docs/sourceDecorator.ts +++ b/code/renderers/html/src/docs/sourceDecorator.ts @@ -2,6 +2,7 @@ import { SNIPPET_RENDERED, SourceType } from 'storybook/internal/docs-tools'; import { addons, useEffect } from 'storybook/internal/preview-api'; import type { DecoratorFunction } from 'storybook/internal/types'; + import type { StoryFn } from '../public-types'; import type { HtmlRenderer } from '../types'; diff --git a/code/renderers/react/src/docs/applyDecorators.ts b/code/renderers/react/src/docs/applyDecorators.ts index 0bc5b6ba975..1c425cf86ae 100644 --- a/code/renderers/react/src/docs/applyDecorators.ts +++ b/code/renderers/react/src/docs/applyDecorators.ts @@ -1,5 +1,6 @@ import { defaultDecorateStory } from 'storybook/internal/preview-api'; import type { DecoratorFunction, LegacyStoryFn } from 'storybook/internal/types'; + import type { ReactRenderer } from '../types'; import { jsxDecorator } from './jsxDecorator'; diff --git a/code/renderers/react/src/docs/extractArgTypes.test.ts b/code/renderers/react/src/docs/extractArgTypes.test.ts index 9bd66a7ebef..687fb9c0d13 100644 --- a/code/renderers/react/src/docs/extractArgTypes.test.ts +++ b/code/renderers/react/src/docs/extractArgTypes.test.ts @@ -1,12 +1,15 @@ import { describe, expect, it } from 'vitest'; + import { normalizeNewlines } from 'storybook/internal/docs-tools'; import { inferControls } from 'storybook/internal/preview-api'; import type { Renderer } from 'storybook/internal/types'; + import { transformFileSync, transformSync } from '@babel/core'; import fs from 'fs'; import path from 'path'; // @ts-expect-error (seems broken/missing) import requireFromString from 'require-from-string'; + import type { StoryContext } from '../types'; import { extractArgTypes } from './extractArgTypes'; import { extractProps } from './extractProps'; diff --git a/code/renderers/react/src/docs/extractArgTypes.ts b/code/renderers/react/src/docs/extractArgTypes.ts index 03babfdd61e..8f27f41f8a5 100644 --- a/code/renderers/react/src/docs/extractArgTypes.ts +++ b/code/renderers/react/src/docs/extractArgTypes.ts @@ -1,5 +1,6 @@ import type { ArgTypesExtractor, PropDef } from 'storybook/internal/docs-tools'; import type { StrictArgTypes } from 'storybook/internal/types'; + import { extractProps } from './extractProps'; export const extractArgTypes: ArgTypesExtractor = (component): StrictArgTypes | null => { diff --git a/code/renderers/react/src/docs/extractProps.ts b/code/renderers/react/src/docs/extractProps.ts index ca11f1b4e7b..bedaa45e018 100644 --- a/code/renderers/react/src/docs/extractProps.ts +++ b/code/renderers/react/src/docs/extractProps.ts @@ -4,7 +4,9 @@ import { extractComponentProps, hasDocgen, } from 'storybook/internal/docs-tools'; + import PropTypes from 'prop-types'; + import { isMemo } from './lib'; import { enhancePropTypesProps } from './propTypes/handleProp'; import { enhanceTypeScriptProps } from './typeScript/handleProp'; diff --git a/code/renderers/react/src/docs/jsxDecorator.test.tsx b/code/renderers/react/src/docs/jsxDecorator.test.tsx index 9f5c4c14690..817fd092968 100644 --- a/code/renderers/react/src/docs/jsxDecorator.test.tsx +++ b/code/renderers/react/src/docs/jsxDecorator.test.tsx @@ -1,11 +1,15 @@ /* eslint-disable no-underscore-dangle */ import type { Mock } from 'vitest'; import { beforeEach, describe, expect, it, vi } from 'vitest'; + import type { FC, PropsWithChildren } from 'react'; import React, { Profiler, StrictMode, createElement } from 'react'; + import { SNIPPET_RENDERED } from 'storybook/internal/docs-tools'; import { addons, useEffect } from 'storybook/internal/preview-api'; + import PropTypes from 'prop-types'; + import { getReactSymbolName, jsxDecorator, renderJsx } from './jsxDecorator'; vi.mock('storybook/internal/preview-api'); diff --git a/code/renderers/react/src/docs/jsxDecorator.tsx b/code/renderers/react/src/docs/jsxDecorator.tsx index bc03d366b90..9448ea7f754 100644 --- a/code/renderers/react/src/docs/jsxDecorator.tsx +++ b/code/renderers/react/src/docs/jsxDecorator.tsx @@ -1,12 +1,15 @@ /* eslint-disable no-underscore-dangle */ import type { ReactElement, ReactNode } from 'react'; import React, { createElement, isValidElement } from 'react'; + import { logger } from 'storybook/internal/client-logger'; import { SNIPPET_RENDERED, SourceType, getDocgenSection } from 'storybook/internal/docs-tools'; import { addons, useEffect } from 'storybook/internal/preview-api'; import type { ArgsStoryFn, PartialStoryFn, StoryContext } from 'storybook/internal/types'; + import type { Options } from 'react-element-to-jsx-string'; import reactElementToJSXString from 'react-element-to-jsx-string'; + import type { ReactRenderer } from '../types'; import { isForwardRef, isMemo } from './lib'; diff --git a/code/renderers/react/src/docs/lib/defaultValues/createDefaultValue.ts b/code/renderers/react/src/docs/lib/defaultValues/createDefaultValue.ts index 51b60ffba84..cf2adb2a78e 100644 --- a/code/renderers/react/src/docs/lib/defaultValues/createDefaultValue.ts +++ b/code/renderers/react/src/docs/lib/defaultValues/createDefaultValue.ts @@ -3,6 +3,7 @@ import { createSummaryValue, isTooLongForDefaultValueSummary, } from 'storybook/internal/docs-tools'; + import { ELEMENT_CAPTION, FUNCTION_CAPTION } from '../captions'; import { generateCode } from '../generateCode'; import type { diff --git a/code/renderers/react/src/docs/lib/defaultValues/createFromRawDefaultProp.ts b/code/renderers/react/src/docs/lib/defaultValues/createFromRawDefaultProp.ts index ef4bc9e36da..fa8ae48e3c8 100644 --- a/code/renderers/react/src/docs/lib/defaultValues/createFromRawDefaultProp.ts +++ b/code/renderers/react/src/docs/lib/defaultValues/createFromRawDefaultProp.ts @@ -5,10 +5,12 @@ import { createSummaryValue, isTooLongForDefaultValueSummary, } from 'storybook/internal/docs-tools'; + import isFunction from 'lodash/isFunction.js'; import isPlainObject from 'lodash/isPlainObject.js'; import isString from 'lodash/isString.js'; import reactElementToJSXString from 'react-element-to-jsx-string'; + import { ELEMENT_CAPTION, FUNCTION_CAPTION, OBJECT_CAPTION } from '../captions'; import type { InspectionFunction } from '../inspection'; import { inspectValue } from '../inspection'; diff --git a/code/renderers/react/src/docs/lib/defaultValues/generateArray.ts b/code/renderers/react/src/docs/lib/defaultValues/generateArray.ts index a59c3ab4b97..ea216db327e 100644 --- a/code/renderers/react/src/docs/lib/defaultValues/generateArray.ts +++ b/code/renderers/react/src/docs/lib/defaultValues/generateArray.ts @@ -3,6 +3,7 @@ import { createSummaryValue, isTooLongForDefaultValueSummary, } from 'storybook/internal/docs-tools'; + import { ARRAY_CAPTION } from '../captions'; import { generateArrayCode } from '../generateCode'; import type { InspectionArray, InspectionResult } from '../inspection'; diff --git a/code/renderers/react/src/docs/lib/defaultValues/generateObject.ts b/code/renderers/react/src/docs/lib/defaultValues/generateObject.ts index 940cbc684f5..ee09fc6c83c 100644 --- a/code/renderers/react/src/docs/lib/defaultValues/generateObject.ts +++ b/code/renderers/react/src/docs/lib/defaultValues/generateObject.ts @@ -3,6 +3,7 @@ import { createSummaryValue, isTooLongForDefaultValueSummary, } from 'storybook/internal/docs-tools'; + import { OBJECT_CAPTION } from '../captions'; import { generateObjectCode } from '../generateCode'; import type { InspectionArray, InspectionResult } from '../inspection'; diff --git a/code/renderers/react/src/docs/lib/inspection/acornParser.test.ts b/code/renderers/react/src/docs/lib/inspection/acornParser.test.ts index 8f5dc27ba3b..4fd3937b525 100644 --- a/code/renderers/react/src/docs/lib/inspection/acornParser.test.ts +++ b/code/renderers/react/src/docs/lib/inspection/acornParser.test.ts @@ -1,4 +1,5 @@ import { describe, expect, it } from 'vitest'; + import { parse } from './acornParser'; import type { InspectionArray, diff --git a/code/renderers/react/src/docs/lib/inspection/acornParser.ts b/code/renderers/react/src/docs/lib/inspection/acornParser.ts index 1af9bd2f73d..2ebac131c77 100644 --- a/code/renderers/react/src/docs/lib/inspection/acornParser.ts +++ b/code/renderers/react/src/docs/lib/inspection/acornParser.ts @@ -2,6 +2,7 @@ import { Parser } from 'acorn'; import jsx from 'acorn-jsx'; import * as acornWalk from 'acorn-walk'; import type estree from 'estree'; + import type { InspectionArray, InspectionClass, diff --git a/code/renderers/react/src/docs/propTypes/createType.ts b/code/renderers/react/src/docs/propTypes/createType.ts index d90239720ef..76ac4a302c1 100644 --- a/code/renderers/react/src/docs/propTypes/createType.ts +++ b/code/renderers/react/src/docs/propTypes/createType.ts @@ -1,5 +1,6 @@ import type { DocgenPropType, ExtractedProp, PropType } from 'storybook/internal/docs-tools'; import { createSummaryValue, isTooLongForTypeSummary } from 'storybook/internal/docs-tools'; + import { ARRAY_CAPTION, CLASS_CAPTION, diff --git a/code/renderers/react/src/docs/propTypes/generateFuncSignature.test.ts b/code/renderers/react/src/docs/propTypes/generateFuncSignature.test.ts index c6a5fbe1341..67e20897891 100644 --- a/code/renderers/react/src/docs/propTypes/generateFuncSignature.test.ts +++ b/code/renderers/react/src/docs/propTypes/generateFuncSignature.test.ts @@ -1,5 +1,7 @@ import { describe, expect, it } from 'vitest'; + import { parseJsDoc } from 'storybook/internal/docs-tools'; + import { generateFuncSignature, generateShortFuncSignature } from './generateFuncSignature'; describe('generateFuncSignature', () => { diff --git a/code/renderers/react/src/docs/propTypes/handleProp.test.tsx b/code/renderers/react/src/docs/propTypes/handleProp.test.tsx index f02c703794f..4cceced0a6d 100644 --- a/code/renderers/react/src/docs/propTypes/handleProp.test.tsx +++ b/code/renderers/react/src/docs/propTypes/handleProp.test.tsx @@ -1,13 +1,17 @@ /* eslint-disable no-underscore-dangle */ import { describe, expect, it } from 'vitest'; + import React from 'react'; + import { type DocgenInfo, type DocgenPropDefaultValue, type PropDef, extractComponentProps, } from 'storybook/internal/docs-tools'; + import PropTypes from 'prop-types'; + import { enhancePropTypesProp, enhancePropTypesProps } from './handleProp'; type Component = any; diff --git a/code/renderers/react/src/docs/propTypes/handleProp.ts b/code/renderers/react/src/docs/propTypes/handleProp.ts index 89221b4b632..39860e1c254 100644 --- a/code/renderers/react/src/docs/propTypes/handleProp.ts +++ b/code/renderers/react/src/docs/propTypes/handleProp.ts @@ -1,4 +1,5 @@ import type { ExtractedProp, PropDef } from 'storybook/internal/docs-tools'; + import { createDefaultValue, createDefaultValueFromRawDefaultProp } from '../lib/defaultValues'; import { createType } from './createType'; import { rawDefaultPropTypeResolvers } from './rawDefaultPropResolvers'; diff --git a/code/renderers/react/src/docs/propTypes/rawDefaultPropResolvers.ts b/code/renderers/react/src/docs/propTypes/rawDefaultPropResolvers.ts index 4d7a283b9e6..3fb3ba3228d 100644 --- a/code/renderers/react/src/docs/propTypes/rawDefaultPropResolvers.ts +++ b/code/renderers/react/src/docs/propTypes/rawDefaultPropResolvers.ts @@ -1,4 +1,5 @@ import { createSummaryValue } from 'storybook/internal/docs-tools'; + import { ELEMENT_CAPTION, FUNCTION_CAPTION } from '../lib'; import type { TypeResolver } from '../lib/defaultValues'; import { createTypeResolvers, extractFunctionName } from '../lib/defaultValues'; diff --git a/code/renderers/react/src/docs/typeScript/handleProp.test.tsx b/code/renderers/react/src/docs/typeScript/handleProp.test.tsx index 91e6a05a703..c61fe672bb6 100644 --- a/code/renderers/react/src/docs/typeScript/handleProp.test.tsx +++ b/code/renderers/react/src/docs/typeScript/handleProp.test.tsx @@ -1,12 +1,15 @@ /* eslint-disable no-underscore-dangle */ import { describe, expect, it } from 'vitest'; + import React from 'react'; + import { type DocgenInfo, type DocgenPropDefaultValue, type PropDef, extractComponentProps, } from 'storybook/internal/docs-tools'; + import { enhanceTypeScriptProp } from './handleProp'; type Component = any; diff --git a/code/renderers/react/src/docs/typeScript/handleProp.ts b/code/renderers/react/src/docs/typeScript/handleProp.ts index 2b00be88572..174b93e389e 100644 --- a/code/renderers/react/src/docs/typeScript/handleProp.ts +++ b/code/renderers/react/src/docs/typeScript/handleProp.ts @@ -1,4 +1,5 @@ import type { ExtractedProp, PropDef } from 'storybook/internal/docs-tools'; + import { createDefaultValue, createDefaultValueFromRawDefaultProp } from '../lib/defaultValues'; export function enhanceTypeScriptProp(extractedProp: ExtractedProp, rawDefaultProp?: any): PropDef { diff --git a/code/renderers/react/template/stories/docgen-components/9575-ts-camel-case/input.tsx b/code/renderers/react/template/stories/docgen-components/9575-ts-camel-case/input.tsx index b1c9aa57cd5..157df566750 100644 --- a/code/renderers/react/template/stories/docgen-components/9575-ts-camel-case/input.tsx +++ b/code/renderers/react/template/stories/docgen-components/9575-ts-camel-case/input.tsx @@ -1,7 +1,8 @@ -import PropTypes from 'prop-types'; import type { FC } from 'react'; import React from 'react'; +import PropTypes from 'prop-types'; + export interface IProps { /** * button color diff --git a/code/renderers/svelte/src/docs/extractArgTypes.test.ts b/code/renderers/svelte/src/docs/extractArgTypes.test.ts index 193eb457bbf..b30931a1e28 100644 --- a/code/renderers/svelte/src/docs/extractArgTypes.test.ts +++ b/code/renderers/svelte/src/docs/extractArgTypes.test.ts @@ -1,6 +1,8 @@ import { describe, expect, it } from 'vitest'; + import * as fs from 'fs'; import svelteDoc from 'sveltedoc-parser'; + import { createArgTypes } from './extractArgTypes'; const content = fs.readFileSync(`${__dirname}/sample/MockButton.svelte`, 'utf-8'); diff --git a/code/renderers/svelte/src/docs/extractArgTypes.ts b/code/renderers/svelte/src/docs/extractArgTypes.ts index 68139a8f6fd..df255c2fa8f 100644 --- a/code/renderers/svelte/src/docs/extractArgTypes.ts +++ b/code/renderers/svelte/src/docs/extractArgTypes.ts @@ -1,6 +1,7 @@ import { logger } from 'storybook/internal/client-logger'; import type { ArgTypesExtractor } from 'storybook/internal/docs-tools'; import type { SBScalarType, StrictArgTypes } from 'storybook/internal/types'; + import type { JSDocKeyword, JSDocType, diff --git a/code/renderers/svelte/src/docs/extractComponentDescription.test.ts b/code/renderers/svelte/src/docs/extractComponentDescription.test.ts index 89d592b4478..d77dbb782c1 100644 --- a/code/renderers/svelte/src/docs/extractComponentDescription.test.ts +++ b/code/renderers/svelte/src/docs/extractComponentDescription.test.ts @@ -1,4 +1,5 @@ import { describe, expect, it } from 'vitest'; + import { extractComponentDescription } from './extractComponentDescription'; describe('extractComponentDescription', () => { diff --git a/code/renderers/svelte/src/docs/sourceDecorator.test.ts b/code/renderers/svelte/src/docs/sourceDecorator.test.ts index a26bc828069..5363c9f8728 100644 --- a/code/renderers/svelte/src/docs/sourceDecorator.test.ts +++ b/code/renderers/svelte/src/docs/sourceDecorator.test.ts @@ -1,5 +1,7 @@ import { describe, expect, it } from 'vitest'; + import type { Args } from 'storybook/internal/types'; + import { generateSvelteSource } from './sourceDecorator'; expect.addSnapshotSerializer({ diff --git a/code/renderers/svelte/src/docs/sourceDecorator.ts b/code/renderers/svelte/src/docs/sourceDecorator.ts index 6a3af4c745e..3063b2e8c18 100644 --- a/code/renderers/svelte/src/docs/sourceDecorator.ts +++ b/code/renderers/svelte/src/docs/sourceDecorator.ts @@ -9,7 +9,9 @@ import type { DecoratorFunction, StoryContext, } from 'storybook/internal/types'; + import type { SvelteComponentDoc } from 'sveltedoc-parser'; + import type { SvelteRenderer, SvelteStoryResult } from '../types'; /** diff --git a/code/renderers/vue3/src/docs/extractArgTypes.test.ts b/code/renderers/vue3/src/docs/extractArgTypes.test.ts index 79f3a0ce374..f5637b56c55 100644 --- a/code/renderers/vue3/src/docs/extractArgTypes.test.ts +++ b/code/renderers/vue3/src/docs/extractArgTypes.test.ts @@ -1,6 +1,8 @@ import type { Mock } from 'vitest'; import { beforeEach, describe, expect, it, vi, vitest } from 'vitest'; + import { extractComponentProps, hasDocgen } from 'storybook/internal/docs-tools'; + import { extractArgTypes } from './extractArgTypes'; import { mockExtractComponentEventsReturn, diff --git a/code/renderers/vue3/src/docs/extractArgTypes.ts b/code/renderers/vue3/src/docs/extractArgTypes.ts index 448ed256454..878d0a6e25f 100644 --- a/code/renderers/vue3/src/docs/extractArgTypes.ts +++ b/code/renderers/vue3/src/docs/extractArgTypes.ts @@ -6,6 +6,7 @@ import { hasDocgen, } from 'storybook/internal/docs-tools'; import type { SBType, StrictArgTypes, StrictInputType } from 'storybook/internal/types'; + import type { VueDocgenInfo, VueDocgenInfoEntry, VueDocgenPlugin } from '@storybook/vue3-vite'; type PropertyMetaSchema = VueDocgenInfoEntry<'vue-component-meta', 'props'>['schema']; diff --git a/code/renderers/vue3/src/docs/sourceDecorator.test.ts b/code/renderers/vue3/src/docs/sourceDecorator.test.ts index 4f92bcd9cb2..1cd1ee9a2e0 100644 --- a/code/renderers/vue3/src/docs/sourceDecorator.test.ts +++ b/code/renderers/vue3/src/docs/sourceDecorator.test.ts @@ -1,5 +1,7 @@ import { expect, test } from 'vitest'; + import { h } from 'vue'; + import type { SourceCodeGeneratorContext } from './sourceDecorator'; import { generatePropsSourceCode, diff --git a/code/renderers/vue3/src/docs/sourceDecorator.ts b/code/renderers/vue3/src/docs/sourceDecorator.ts index 764aacf91fe..4182811f928 100644 --- a/code/renderers/vue3/src/docs/sourceDecorator.ts +++ b/code/renderers/vue3/src/docs/sourceDecorator.ts @@ -1,8 +1,10 @@ /* eslint-disable no-underscore-dangle */ import { SNIPPET_RENDERED, SourceType } from 'storybook/internal/docs-tools'; import { addons } from 'storybook/internal/preview-api'; + import type { VNode } from 'vue'; import { isVNode, watch } from 'vue'; + import type { Args, Decorator, StoryContext } from '../public-types'; /** diff --git a/code/renderers/vue3/src/docs/tests-meta-components/meta-components.ts b/code/renderers/vue3/src/docs/tests-meta-components/meta-components.ts index 57d62fa259c..10b687fb67b 100644 --- a/code/renderers/vue3/src/docs/tests-meta-components/meta-components.ts +++ b/code/renderers/vue3/src/docs/tests-meta-components/meta-components.ts @@ -1,4 +1,5 @@ import { TypeSystem } from 'storybook/internal/docs-tools'; + import type { VueDocgenInfo } from '../../../../../frameworks/vue3-vite/src'; type TestComponent = { __docgenInfo: VueDocgenInfo<'vue-component-meta'> }; diff --git a/code/renderers/vue3/src/docs/utils.ts b/code/renderers/vue3/src/docs/utils.ts index cc2f3fb8ba4..ff58244925b 100644 --- a/code/renderers/vue3/src/docs/utils.ts +++ b/code/renderers/vue3/src/docs/utils.ts @@ -1,4 +1,5 @@ import type { Args } from 'storybook/internal/types'; + import type { FunctionalComponent } from 'vue'; /** diff --git a/code/renderers/web-components/src/docs/__testfixtures__/lit-element-demo-card/input.js b/code/renderers/web-components/src/docs/__testfixtures__/lit-element-demo-card/input.js index 7944e89db18..3bd07d1871a 100644 --- a/code/renderers/web-components/src/docs/__testfixtures__/lit-element-demo-card/input.js +++ b/code/renderers/web-components/src/docs/__testfixtures__/lit-element-demo-card/input.js @@ -1,4 +1,5 @@ import { global } from '@storybook/global'; + import { LitElement, css, html } from 'lit-element'; const { CustomEvent } = global; diff --git a/code/renderers/web-components/src/docs/custom-elements.test.ts b/code/renderers/web-components/src/docs/custom-elements.test.ts index 85a083a3028..ca3262bd791 100644 --- a/code/renderers/web-components/src/docs/custom-elements.test.ts +++ b/code/renderers/web-components/src/docs/custom-elements.test.ts @@ -2,7 +2,9 @@ /* eslint-disable no-underscore-dangle */ import { afterEach, beforeEach, describe, expect, it } from 'vitest'; + import { global } from '@storybook/global'; + import customElementsManifest from './__testfixtures__/custom-elements.json'; import { extractArgTypes } from './custom-elements'; diff --git a/code/renderers/web-components/src/docs/custom-elements.ts b/code/renderers/web-components/src/docs/custom-elements.ts index a6dc53a63c4..48a462bf73b 100644 --- a/code/renderers/web-components/src/docs/custom-elements.ts +++ b/code/renderers/web-components/src/docs/custom-elements.ts @@ -1,6 +1,8 @@ import { logger } from 'storybook/internal/client-logger'; import type { ArgTypes, InputType } from 'storybook/internal/types'; + import invariant from 'tiny-invariant'; + import { getCustomElements, isValidComponent, isValidMetaData } from '..'; interface TagItem { diff --git a/code/renderers/web-components/src/docs/sourceDecorator.test.ts b/code/renderers/web-components/src/docs/sourceDecorator.test.ts index 56b14a1a91b..8a0c1f58a0a 100644 --- a/code/renderers/web-components/src/docs/sourceDecorator.test.ts +++ b/code/renderers/web-components/src/docs/sourceDecorator.test.ts @@ -1,10 +1,13 @@ // @vitest-environment happy-dom import type { Mock } from 'vitest'; import { beforeEach, describe, expect, it, vi } from 'vitest'; + import { SNIPPET_RENDERED } from 'storybook/internal/docs-tools'; import { addons, useEffect } from 'storybook/internal/preview-api'; + import { html, render } from 'lit'; import { styleMap } from 'lit/directives/style-map.js'; + import type { StoryContext } from '../types'; import { sourceDecorator } from './sourceDecorator'; diff --git a/code/renderers/web-components/src/docs/sourceDecorator.ts b/code/renderers/web-components/src/docs/sourceDecorator.ts index 3caa6aa49fe..8a74569a0a0 100644 --- a/code/renderers/web-components/src/docs/sourceDecorator.ts +++ b/code/renderers/web-components/src/docs/sourceDecorator.ts @@ -2,7 +2,9 @@ import { SNIPPET_RENDERED, SourceType } from 'storybook/internal/docs-tools'; import { addons, useEffect } from 'storybook/internal/preview-api'; import type { ArgsStoryFn, PartialStoryFn, StoryContext } from 'storybook/internal/types'; + import { render } from 'lit'; + import type { WebComponentsRenderer } from '../types'; // Taken from https://github.com/lit/lit/blob/main/packages/lit-html/src/test/test-utils/strip-markers.ts diff --git a/code/renderers/web-components/src/docs/web-components-properties.test.ts b/code/renderers/web-components/src/docs/web-components-properties.test.ts index 0a1fa425534..fdb4f96ebc2 100644 --- a/code/renderers/web-components/src/docs/web-components-properties.test.ts +++ b/code/renderers/web-components/src/docs/web-components-properties.test.ts @@ -1,9 +1,11 @@ // @vitest-environment happy-dom import { describe, expect, it, vi } from 'vitest'; + import { sync as spawnSync } from 'cross-spawn'; import fs from 'fs'; import path from 'path'; import tmp from 'tmp'; + import { extractArgTypesFromElements } from './custom-elements'; // File hierarchy: diff --git a/code/vitest.workspace.ts b/code/vitest.workspace.ts index f8e4730d006..b45bf25a486 100644 --- a/code/vitest.workspace.ts +++ b/code/vitest.workspace.ts @@ -1,4 +1,5 @@ -import { resolve } from 'path'; +import { resolve } from 'node:path'; + import { defineConfig, defineWorkspace } from 'vitest/config'; export default defineWorkspace([