@storybook/svelte 9.0.0-alpha.7 → 9.0.0-alpha.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  import { ArgTypesExtractor } from 'storybook/internal/docs-tools';
2
2
  import { DecoratorFunction, ArgTypesEnhancer } from 'storybook/internal/types';
3
- import { S as SvelteRenderer } from './types-3695f681.js';
3
+ import { S as SvelteRenderer } from './types-b7d0039b.js';
4
4
  import 'svelte';
5
5
 
6
6
  declare const parameters: {
@@ -1,5 +1,5 @@
1
1
  import { RenderContext, ArgsStoryFn, BaseAnnotations } from 'storybook/internal/types';
2
- import { S as SvelteRenderer } from './types-3695f681.js';
2
+ import { S as SvelteRenderer } from './types-b7d0039b.js';
3
3
  import 'svelte';
4
4
 
5
5
  declare function renderToCanvas(renderContext: RenderContext<SvelteRenderer>, canvasElement: SvelteRenderer['canvasElement']): () => void;
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { Args, ComponentAnnotations, AnnotatedStoryFn, ArgsStoryFn, ArgsFromMeta, StoryAnnotations, StrictArgs, DecoratorFunction, LoaderFunction, StoryContext as StoryContext$1, ProjectAnnotations, NamedOrDefaultProjectAnnotations, NormalizedProjectAnnotations, StoryAnnotationsOrFn, Store_CSFExports, StoriesWithPartialProps, ComposedStoryFn } from 'storybook/internal/types';
2
2
  export { ArgTypes, Args, Parameters, StrictArgs } from 'storybook/internal/types';
3
- import { SvelteComponent, ComponentType, ComponentProps } from 'svelte';
3
+ import { SvelteComponent, ComponentProps, ComponentType } from 'svelte';
4
4
  import { Simplify, SetOptional } from 'type-fest';
5
- import { S as SvelteRenderer } from './types-3695f681.js';
5
+ import { a as Svelte5ComponentType, S as SvelteRenderer } from './types-b7d0039b.js';
6
6
  import PreviewRender from '@storybook/svelte/internal/PreviewRender.svelte';
7
7
 
8
8
  /**
@@ -10,13 +10,13 @@ import PreviewRender from '@storybook/svelte/internal/PreviewRender.svelte';
10
10
  *
11
11
  * @see [Default export](https://storybook.js.org/docs/api/csf#default-export)
12
12
  */
13
- type Meta<CmpOrArgs = Args> = CmpOrArgs extends SvelteComponent<infer Props> ? ComponentAnnotations<SvelteRenderer<CmpOrArgs>, Props> : ComponentAnnotations<SvelteRenderer, CmpOrArgs>;
13
+ type Meta<CmpOrArgs = Args> = CmpOrArgs extends SvelteComponent<infer Props> | Svelte5ComponentType<infer Props> ? ComponentAnnotations<SvelteRenderer<CmpOrArgs>, Props> : ComponentAnnotations<SvelteRenderer, CmpOrArgs>;
14
14
  /**
15
15
  * Story function that represents a CSFv2 component example.
16
16
  *
17
17
  * @see [Named Story exports](https://storybook.js.org/docs/api/csf#named-story-exports)
18
18
  */
19
- type StoryFn<TCmpOrArgs = Args> = TCmpOrArgs extends SvelteComponent<infer Props> ? AnnotatedStoryFn<SvelteRenderer, Props> : AnnotatedStoryFn<SvelteRenderer, TCmpOrArgs>;
19
+ type StoryFn<TCmpOrArgs = Args> = TCmpOrArgs extends SvelteComponent<infer Props> | Svelte5ComponentType<infer Props> ? AnnotatedStoryFn<SvelteRenderer, Props> : AnnotatedStoryFn<SvelteRenderer, TCmpOrArgs>;
20
20
  /**
21
21
  * Story object that represents a CSFv3 component example.
22
22
  *
@@ -24,9 +24,9 @@ type StoryFn<TCmpOrArgs = Args> = TCmpOrArgs extends SvelteComponent<infer Props
24
24
  */
25
25
  type StoryObj<MetaOrCmpOrArgs = Args> = MetaOrCmpOrArgs extends {
26
26
  render?: ArgsStoryFn<SvelteRenderer, any>;
27
- component?: ComponentType<infer Component>;
27
+ component: infer Comp;
28
28
  args?: infer DefaultArgs;
29
- } ? Simplify<ComponentProps<Component> & ArgsFromMeta<SvelteRenderer, MetaOrCmpOrArgs>> extends infer TArgs ? StoryAnnotations<SvelteRenderer<Component>, TArgs, SetOptional<TArgs, Extract<keyof TArgs, keyof DefaultArgs>>> : never : MetaOrCmpOrArgs extends SvelteComponent ? StoryAnnotations<SvelteRenderer<MetaOrCmpOrArgs>, ComponentProps<MetaOrCmpOrArgs>> : StoryAnnotations<SvelteRenderer, MetaOrCmpOrArgs>;
29
+ } ? Simplify<ComponentProps<Comp extends ComponentType<infer Component> ? Component : Comp extends Svelte5ComponentType ? Comp : never> & ArgsFromMeta<SvelteRenderer, MetaOrCmpOrArgs>> extends infer TArgs ? StoryAnnotations<SvelteRenderer<Comp extends ComponentType<infer Component> ? Component : Comp extends Svelte5ComponentType ? Comp : never>, TArgs, SetOptional<TArgs, Extract<keyof TArgs, keyof DefaultArgs>>> : never : MetaOrCmpOrArgs extends SvelteComponent | Svelte5ComponentType ? StoryAnnotations<SvelteRenderer<MetaOrCmpOrArgs>, ComponentProps<MetaOrCmpOrArgs>> : StoryAnnotations<SvelteRenderer, MetaOrCmpOrArgs>;
30
30
 
31
31
  type Decorator<TArgs = StrictArgs> = DecoratorFunction<SvelteRenderer, TArgs>;
32
32
  type Loader<TArgs = StrictArgs> = LoaderFunction<SvelteRenderer, TArgs>;
@@ -1,23 +1,27 @@
1
- import { WebRenderer, Canvas } from 'storybook/internal/types';
1
+ import * as svelte from 'svelte';
2
2
  import { SvelteComponent, ComponentEvents, ComponentConstructorOptions } from 'svelte';
3
+ import { WebRenderer, Canvas } from 'storybook/internal/types';
3
4
 
4
5
  type ComponentType<Props extends Record<string, any> = any, Events extends Record<string, any> = any> = new (options: ComponentConstructorOptions<Props>) => {
5
6
  [P in keyof SvelteComponent<Props> as P extends `$$${string}` ? never : P]: SvelteComponent<Props, Events>[P];
6
7
  };
7
- interface SvelteRenderer<C extends SvelteComponent = SvelteComponent> extends WebRenderer {
8
- component: ComponentType<this['T'] extends Record<string, any> ? this['T'] : any>;
9
- storyResult: this['T'] extends Record<string, any> ? SvelteStoryResult<this['T'], ComponentEvents<C>> : SvelteStoryResult;
10
- mount: (Component?: ComponentType, options?: Record<string, any> & {
8
+ type Svelte5ComponentType<Props extends Record<string, any> = any> = typeof svelte extends {
9
+ mount: any;
10
+ } ? svelte.Component<Props, any, any> : never;
11
+ interface SvelteRenderer<C extends SvelteComponent | Svelte5ComponentType = SvelteComponent> extends WebRenderer {
12
+ component: ComponentType<this['T'] extends Record<string, any> ? this['T'] : any> | Svelte5ComponentType<this['T'] extends Record<string, any> ? this['T'] : any>;
13
+ storyResult: this['T'] extends Record<string, any> ? SvelteStoryResult<this['T'], C extends SvelteComponent ? ComponentEvents<C> : {}> : SvelteStoryResult;
14
+ mount: (Component?: ComponentType | Svelte5ComponentType, options?: Record<string, any> & {
11
15
  props: Record<string, any>;
12
16
  }) => Promise<Canvas>;
13
17
  }
14
18
  interface SvelteStoryResult<Props extends Record<string, any> = any, Events extends Record<string, any> = any> {
15
- Component?: ComponentType<Props>;
19
+ Component?: ComponentType<Props> | Svelte5ComponentType<Props>;
16
20
  on?: Record<string, any> extends Events ? Record<string, (event: CustomEvent) => void> : {
17
21
  [K in keyof Events as string extends K ? never : K]?: (event: Events[K]) => void;
18
22
  };
19
23
  props?: Props;
20
- decorator?: ComponentType<Props>;
24
+ decorator?: ComponentType<Props> | Svelte5ComponentType<Props>;
21
25
  }
22
26
 
23
- export { SvelteRenderer as S };
27
+ export { SvelteRenderer as S, Svelte5ComponentType as a };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storybook/svelte",
3
- "version": "9.0.0-alpha.7",
3
+ "version": "9.0.0-alpha.8",
4
4
  "description": "Storybook Svelte renderer",
5
5
  "keywords": [
6
6
  "storybook"
@@ -71,7 +71,7 @@
71
71
  "vite": "^6.0.11"
72
72
  },
73
73
  "peerDependencies": {
74
- "storybook": "^9.0.0-alpha.7",
74
+ "storybook": "^9.0.0-alpha.8",
75
75
  "svelte": "^4.0.0 || ^5.0.0"
76
76
  },
77
77
  "engines": {