From b93d96a575b08cafc20979840eca598308e3f0b1 Mon Sep 17 00:00:00 2001 From: Kasper Peulen Date: Thu, 30 Jan 2025 12:53:04 +0100 Subject: [PATCH] Make storybook/internal/csf --- code/core/package.json | 8 ++++++++ code/core/scripts/entries.ts | 1 + .../{types/modules/csf-factories.ts => csf/index.ts} | 11 +++++++---- code/core/src/manager/globals/exports.ts | 6 +++--- code/core/src/types/index.ts | 1 - code/lib/cli/core/csf/index.cjs | 1 + code/lib/cli/core/csf/index.d.ts | 2 ++ code/lib/cli/core/csf/index.js | 1 + code/lib/cli/package.json | 8 ++++++++ code/renderers/react/src/preview.tsx | 11 +++++------ 10 files changed, 36 insertions(+), 14 deletions(-) rename code/core/src/{types/modules/csf-factories.ts => csf/index.ts} (96%) create mode 100644 code/lib/cli/core/csf/index.cjs create mode 100644 code/lib/cli/core/csf/index.d.ts create mode 100644 code/lib/cli/core/csf/index.js diff --git a/code/core/package.json b/code/core/package.json index 76008e354161..e6139d3f7667 100644 --- a/code/core/package.json +++ b/code/core/package.json @@ -97,6 +97,11 @@ "import": "./dist/csf-tools/index.js", "require": "./dist/csf-tools/index.cjs" }, + "./csf": { + "types": "./dist/csf/index.d.ts", + "import": "./dist/csf/index.js", + "require": "./dist/csf/index.cjs" + }, "./common": { "types": "./dist/common/index.d.ts", "import": "./dist/common/index.js", @@ -219,6 +224,9 @@ "csf-tools": [ "./dist/csf-tools/index.d.ts" ], + "csf": [ + "./dist/csf/index.d.ts" + ], "common": [ "./dist/common/index.d.ts" ], diff --git a/code/core/scripts/entries.ts b/code/core/scripts/entries.ts index a8588f13fd86..2b90e2c4b8a4 100644 --- a/code/core/scripts/entries.ts +++ b/code/core/scripts/entries.ts @@ -25,6 +25,7 @@ export const getEntries = (cwd: string) => { define('src/channels/index.ts', ['browser', 'node'], true), define('src/types/index.ts', ['browser', 'node'], true, ['react']), define('src/csf-tools/index.ts', ['node'], true), + define('src/csf/index.ts', ['browser', 'node'], true), define('src/common/index.ts', ['node'], true), define('src/builder-manager/index.ts', ['node'], true), define('src/telemetry/index.ts', ['node'], true), diff --git a/code/core/src/types/modules/csf-factories.ts b/code/core/src/csf/index.ts similarity index 96% rename from code/core/src/types/modules/csf-factories.ts rename to code/core/src/csf/index.ts index d997ac7fe9ff..20d0643b1b39 100644 --- a/code/core/src/types/modules/csf-factories.ts +++ b/code/core/src/csf/index.ts @@ -1,12 +1,15 @@ -import { composeConfigs, normalizeProjectAnnotations } from '@storybook/core/preview-api'; - -import type { Args, ComponentAnnotations, Renderer, StoryAnnotations } from './csf'; import type { + Args, + ComponentAnnotations, NormalizedComponentAnnotations, NormalizedProjectAnnotations, NormalizedStoryAnnotations, ProjectAnnotations, -} from './story'; + Renderer, + StoryAnnotations, +} from '@storybook/core/types'; + +import { composeConfigs, normalizeProjectAnnotations } from '@storybook/core/preview-api'; export interface Preview { readonly _tag: 'Preview'; diff --git a/code/core/src/manager/globals/exports.ts b/code/core/src/manager/globals/exports.ts index 037bf2504c57..4e34bb61244c 100644 --- a/code/core/src/manager/globals/exports.ts +++ b/code/core/src/manager/globals/exports.ts @@ -963,9 +963,9 @@ export default { 'UPDATE_QUERY_PARAMS', 'UPDATE_STORY_ARGS', ], - 'storybook/internal/types': ['Addon_TypesEnum', 'definePreview'], - '@storybook/types': ['Addon_TypesEnum', 'definePreview'], - '@storybook/core/types': ['Addon_TypesEnum', 'definePreview'], + 'storybook/internal/types': ['Addon_TypesEnum'], + '@storybook/types': ['Addon_TypesEnum'], + '@storybook/core/types': ['Addon_TypesEnum'], 'storybook/internal/manager-errors': [ 'Category', 'ProviderDoesNotExtendBaseProviderError', diff --git a/code/core/src/types/index.ts b/code/core/src/types/index.ts index b6a3088a0d64..1941cbe86872 100644 --- a/code/core/src/types/index.ts +++ b/code/core/src/types/index.ts @@ -1,7 +1,6 @@ /// export * from './modules/csf'; -export * from './modules/csf-factories'; export * from './modules/addons'; export * from './modules/story'; export * from './modules/core-common'; diff --git a/code/lib/cli/core/csf/index.cjs b/code/lib/cli/core/csf/index.cjs new file mode 100644 index 000000000000..19b144387019 --- /dev/null +++ b/code/lib/cli/core/csf/index.cjs @@ -0,0 +1 @@ +module.exports = require('@storybook/core/csf'); diff --git a/code/lib/cli/core/csf/index.d.ts b/code/lib/cli/core/csf/index.d.ts new file mode 100644 index 000000000000..2cc38939bb85 --- /dev/null +++ b/code/lib/cli/core/csf/index.d.ts @@ -0,0 +1,2 @@ +export * from '@storybook/core/csf'; +export type * from '@storybook/core/csf'; diff --git a/code/lib/cli/core/csf/index.js b/code/lib/cli/core/csf/index.js new file mode 100644 index 000000000000..ed1380489e93 --- /dev/null +++ b/code/lib/cli/core/csf/index.js @@ -0,0 +1 @@ +export * from '@storybook/core/csf'; diff --git a/code/lib/cli/package.json b/code/lib/cli/package.json index 53cf6294030e..09e35b685f74 100644 --- a/code/lib/cli/package.json +++ b/code/lib/cli/package.json @@ -103,6 +103,11 @@ "import": "./core/types/index.js", "require": "./core/types/index.cjs" }, + "./internal/csf": { + "types": "./core/csf/index.d.ts", + "import": "./core/csf/index.js", + "require": "./core/csf/index.cjs" + }, "./internal/csf-tools": { "types": "./core/csf-tools/index.d.ts", "import": "./core/csf-tools/index.js", @@ -233,6 +238,9 @@ "internal/core-server": [ "./core/core-server/index.d.ts" ], + "internal/csf": [ + "./core/csf/index.d.ts" + ], "internal/csf-tools": [ "./core/csf-tools/index.d.ts" ], diff --git a/code/renderers/react/src/preview.tsx b/code/renderers/react/src/preview.tsx index ba53e054ff5b..d2c435bf121c 100644 --- a/code/renderers/react/src/preview.tsx +++ b/code/renderers/react/src/preview.tsx @@ -1,16 +1,15 @@ import type { ComponentType } from 'react'; +import { definePreview as definePreviewBase } from 'storybook/internal/csf'; +import type { Meta, Preview, Story } from 'storybook/internal/csf'; import type { Args, + ArgsStoryFn, ComponentAnnotations, - Meta, - Preview, - Story, + DecoratorFunction, + Renderer, StoryAnnotations, } from 'storybook/internal/types'; -import { definePreview as definePreviewBase } from 'storybook/internal/types'; - -import type { ArgsStoryFn, DecoratorFunction, LoaderFunction, Renderer } from '@storybook/csf'; import type { AddMocks } from 'src/public-types'; import type { RemoveIndexSignature, SetOptional, Simplify, UnionToIntersection } from 'type-fest';