@storybook/svelte 9.0.0-alpha.2 → 9.0.0-alpha.21
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.
- package/dist/chunk-2IXN2SLZ.mjs +11 -0
- package/dist/components/AddStorybookIdDecorator.svelte +3 -3
- package/dist/components/DecoratorHandler.svelte +20 -0
- package/dist/components/PreviewRender.svelte +14 -41
- package/dist/{createSvelte5Props.svelte.js → createReactiveProps.svelte.js} +1 -1
- package/dist/entry-preview-docs.d.ts +1 -1
- package/dist/entry-preview-docs.js +2 -2
- package/dist/entry-preview-docs.mjs +3 -3
- package/dist/entry-preview.d.ts +2 -2
- package/dist/entry-preview.js +1 -1
- package/dist/entry-preview.mjs +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.js +1 -1
- package/dist/index.mjs +4 -4
- package/dist/playwright.d.ts +1 -1
- package/dist/playwright.js +1 -1
- package/dist/playwright.mjs +1 -1
- package/dist/{types-3695f681.d.ts → types-b7d0039b.d.ts} +12 -8
- package/package.json +8 -9
- package/template/cli/{svelte-5-ts-3-8 → js}/Button.stories.svelte +2 -2
- package/template/cli/js/Button.svelte +11 -20
- package/template/cli/{svelte-5-ts-4-9 → js}/Header.stories.svelte +1 -1
- package/template/cli/js/Header.svelte +12 -17
- package/template/cli/{svelte-5-js → js}/Page.stories.svelte +2 -2
- package/template/cli/js/Page.svelte +4 -4
- package/template/cli/{svelte-5-ts-4-9 → ts}/Button.stories.svelte +2 -2
- package/template/cli/{svelte-5-ts-3-8 → ts}/Button.svelte +8 -7
- package/template/cli/{svelte-5-js → ts}/Header.stories.svelte +1 -1
- package/template/cli/{svelte-5-ts-4-9 → ts}/Header.svelte +3 -3
- package/template/cli/{svelte-5-ts-3-8 → ts}/Page.stories.svelte +2 -2
- package/template/stories/args.stories.js +23 -12
- package/template/stories/{slot-decorators.stories.js → decorators.stories.js} +21 -8
- package/dist/chunk-2VFJ3RAK.mjs +0 -12
- package/dist/components/SlotDecorator.svelte +0 -50
- package/template/cli/js/Button.stories.js +0 -43
- package/template/cli/js/Header.stories.js +0 -22
- package/template/cli/js/Page.stories.js +0 -28
- package/template/cli/svelte-5-js/Button.stories.svelte +0 -31
- package/template/cli/svelte-5-js/Button.svelte +0 -26
- package/template/cli/svelte-5-js/Header.svelte +0 -47
- package/template/cli/svelte-5-js/Page.svelte +0 -70
- package/template/cli/svelte-5-ts-3-8/Header.stories.svelte +0 -26
- package/template/cli/svelte-5-ts-3-8/Header.svelte +0 -45
- package/template/cli/svelte-5-ts-4-9/Button.svelte +0 -29
- package/template/cli/svelte-5-ts-4-9/Page.stories.svelte +0 -30
- package/template/cli/svelte-5-ts-4-9/Page.svelte +0 -70
- package/template/cli/ts-4-9/Button.stories.ts +0 -48
- package/template/cli/ts-4-9/Button.svelte +0 -34
- package/template/cli/ts-4-9/Header.stories.ts +0 -27
- package/template/cli/ts-4-9/Header.svelte +0 -52
- package/template/cli/ts-4-9/Page.stories.ts +0 -32
- package/template/cli/ts-4-9/Page.svelte +0 -70
- package/template/stories/decorators-runs-once.stories.js +0 -16
- package/template/stories/docs-jsdoc.stories.js +0 -9
- /package/template/cli/{svelte-5-ts-3-8 → ts}/Page.svelte +0 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { __export } from './chunk-CEH6MNVV.mjs';
|
|
2
|
+
import { RESET_STORY_ARGS } from 'storybook/internal/core-events';
|
|
3
|
+
import PreviewRender from '@storybook/svelte/internal/PreviewRender.svelte';
|
|
4
|
+
import { createReactiveProps } from '@storybook/svelte/internal/createReactiveProps';
|
|
5
|
+
import { addons, sanitizeStoryContextUpdate } from 'storybook/preview-api';
|
|
6
|
+
import * as svelte from 'svelte';
|
|
7
|
+
import DecoratorHandler from '@storybook/svelte/internal/DecoratorHandler.svelte';
|
|
8
|
+
|
|
9
|
+
var entry_preview_exports={};__export(entry_preview_exports,{applyDecorators:()=>decorateStory,mount:()=>mount2,parameters:()=>parameters,render:()=>render,renderToCanvas:()=>renderToCanvas});var storyIdsToRemountFromResetArgsEvent=new Set;addons.getChannel().on(RESET_STORY_ARGS,({storyId})=>{storyIdsToRemountFromResetArgsEvent.add(storyId);});var componentsByDomElement=new Map;function renderToCanvas({storyFn,title,name,showMain,showError,storyContext,forceRemount},canvasElement){function unmount2(canvasElementToUnmount){let{mountedComponent}=componentsByDomElement.get(canvasElementToUnmount)??{};mountedComponent&&(svelte.unmount(mountedComponent),componentsByDomElement.delete(canvasElementToUnmount));}let existingComponent=componentsByDomElement.get(canvasElement),remount=forceRemount;if(storyIdsToRemountFromResetArgsEvent.has(storyContext.id)&&(remount=!0,storyIdsToRemountFromResetArgsEvent.delete(storyContext.id)),remount&&unmount2(canvasElement),!existingComponent||remount){let props=createReactiveProps({storyFn,storyContext,name,title,showError}),mountedComponent=svelte.mount(PreviewRender,{target:canvasElement,props});componentsByDomElement.set(canvasElement,{mountedComponent,props});}else Object.assign(existingComponent.props,{storyFn,storyContext,name,title,showError});return showMain(),()=>{unmount2(canvasElement);}}var render=(args,context)=>{let{id,component:Component}=context;if(!Component)throw new Error(`Unable to render story ${id} as the component annotation is missing from the default export`);return {Component,props:args}};function unWrap(obj){return obj&&typeof obj=="object"&&"default"in obj?obj.default:obj}function prepareStory(context,rawStory,rawInnerStory){let story=unWrap(rawStory),innerStory=rawInnerStory&&unWrap(rawInnerStory),preparedStory;return !story||Object.keys(story).length===0?preparedStory={Component:context.component}:story.Component?preparedStory=story:preparedStory={Component:story},innerStory?{Component:DecoratorHandler,props:{...innerStory,decorator:preparedStory}}:{...preparedStory,argTypes:context.argTypes}}function decorateStory(storyFn,decorators){return decorators.reduce((decorated,decorator)=>context=>{let story,decoratedStory=decorator(update=>(story=decorated({...context,...sanitizeStoryContextUpdate(update)}),story),context);return story||(story=decorated(context)),decoratedStory===story?story:prepareStory(context,decoratedStory,story)},context=>prepareStory(context,storyFn(context)))}var mount2=context=>async(Component,options)=>(Component&&(context.originalStoryFn=()=>({Component,props:options&&"props"in options?options?.props:options})),await context.renderToCanvas(),context.canvas);var parameters={renderer:"svelte"};
|
|
10
|
+
|
|
11
|
+
export { decorateStory, entry_preview_exports, mount2 as mount, parameters, render, renderToCanvas };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<script>
|
|
2
|
+
const { decorator, Component, props } = $props();
|
|
3
|
+
|
|
4
|
+
/*
|
|
5
|
+
Svelte Docgen will create argTypes for events with the name 'event_eventName'
|
|
6
|
+
The Actions addon will convert these to args because they are type: 'action'
|
|
7
|
+
We need to filter these args out so they are not passed to the component
|
|
8
|
+
*/
|
|
9
|
+
let propsWithoutDocgenEvents = $derived(
|
|
10
|
+
Object.fromEntries(Object.entries(props).filter(([key]) => !key.startsWith('event_')))
|
|
11
|
+
);
|
|
12
|
+
</script>
|
|
13
|
+
|
|
14
|
+
{#if decorator}
|
|
15
|
+
<decorator.Component {...decorator.props}>
|
|
16
|
+
<Component {...propsWithoutDocgenEvents} />
|
|
17
|
+
</decorator.Component>
|
|
18
|
+
{:else}
|
|
19
|
+
<Component {...propsWithoutDocgenEvents} />
|
|
20
|
+
{/if}
|
|
@@ -1,56 +1,29 @@
|
|
|
1
1
|
<script>
|
|
2
|
-
import
|
|
2
|
+
import DecoratorHandler from './DecoratorHandler.svelte';
|
|
3
3
|
import { dedent } from 'ts-dedent';
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
export let title;
|
|
7
|
-
export let storyFn;
|
|
8
|
-
export let showError;
|
|
9
|
-
export let storyContext;
|
|
5
|
+
const { name, title, storyFn, showError } = $props();
|
|
10
6
|
|
|
11
7
|
let {
|
|
12
|
-
/** @type {SvelteComponent} */
|
|
8
|
+
/** @type {import('svelte').SvelteComponent} */
|
|
13
9
|
Component,
|
|
14
|
-
/** @type {any} */
|
|
15
10
|
props = {},
|
|
16
|
-
|
|
17
|
-
on,
|
|
18
|
-
/** @type {any} whether this level of the decorator chain is the last, ie. the actual story */
|
|
19
|
-
argTypes,
|
|
20
|
-
} = storyFn();
|
|
21
|
-
|
|
22
|
-
let firstTime = true;
|
|
23
|
-
|
|
24
|
-
// the first time we don't want to call storyFn two times so we just return the values
|
|
25
|
-
// we already have from the previous call. If storyFn changes this function will run
|
|
26
|
-
// again but this time firstTime will be false
|
|
27
|
-
function getStoryFnValue(storyFn) {
|
|
28
|
-
if (firstTime) {
|
|
29
|
-
firstTime = false;
|
|
30
|
-
return {
|
|
31
|
-
Component,
|
|
32
|
-
props,
|
|
33
|
-
on,
|
|
34
|
-
argTypes,
|
|
35
|
-
};
|
|
36
|
-
}
|
|
11
|
+
} = $derived.by(() => {
|
|
37
12
|
return storyFn();
|
|
38
|
-
}
|
|
13
|
+
});
|
|
39
14
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
showError({
|
|
46
|
-
title: `Expecting a Svelte component from the story: "${name}" of "${title}".`,
|
|
47
|
-
description: dedent`
|
|
15
|
+
$effect(() => {
|
|
16
|
+
if (!Component) {
|
|
17
|
+
showError({
|
|
18
|
+
title: `Expecting a Svelte component from the story: "${name}" of "${title}".`,
|
|
19
|
+
description: dedent`
|
|
48
20
|
Did you forget to return the Svelte component configuration from the story?
|
|
49
21
|
Use "() => ({ Component: YourComponent, props: {} })"
|
|
50
22
|
when defining the story.
|
|
51
23
|
`,
|
|
52
|
-
|
|
53
|
-
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
});
|
|
54
27
|
</script>
|
|
55
28
|
|
|
56
|
-
<
|
|
29
|
+
<DecoratorHandler {Component} {props} />
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* @param {TProps} data - The data to create Svelte 5 props from.
|
|
8
8
|
* @returns {TProps} - The created Svelte 5 props.
|
|
9
9
|
*/
|
|
10
|
-
export const
|
|
10
|
+
export const createReactiveProps = (data) => {
|
|
11
11
|
const props = $state(data);
|
|
12
12
|
return props;
|
|
13
13
|
};
|
|
@@ -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-
|
|
3
|
+
import { S as SvelteRenderer } from './types-b7d0039b.js';
|
|
4
4
|
import 'svelte';
|
|
5
5
|
|
|
6
6
|
declare const parameters: {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var entry_preview_docs_exports={};__export(entry_preview_docs_exports,{argTypesEnhancers:()=>argTypesEnhancers,decorators:()=>decorators,parameters:()=>parameters});module.exports=__toCommonJS(entry_preview_docs_exports);var import_docs_tools2=require("storybook/internal/docs-tools");var import_client_logger=require("storybook/internal/client-logger");function hasKeyword(keyword,keywords){return keywords?keywords.find(k=>k.name===keyword)!=null:!1}var extractArgTypes=component=>{try{let docgen=component.__docgen;if(docgen)return createArgTypes(docgen)}catch(err){import_client_logger.logger.log(`Error extracting argTypes: ${err}`)}return{}},createArgTypes=docgen=>{let results={};return docgen.data&&docgen.data.forEach(item=>{results[item.name]={...parseTypeToControl(item.type),name:item.name,description:item.description||void 0,type:{required:hasKeyword("required",item.keywords||[]),name:item.type?.text==="{}"?"object":item.type?.text},table:{type:{summary:item.type?.text},defaultValue:{summary:item.defaultValue},category:"properties"}}}),docgen.events&&docgen.events.forEach(item=>{results[`event_${item.name}`]={name:item.name,action:item.name,control:!1,...item.description?{description:item.description}:{},table:{category:"events"}}}),docgen.slots&&docgen.slots.forEach(item=>{results[`slot_${item.name}`]={name:item.name,control:!1,description:[item.description,item.params?.map(p=>`\`${p.name}\``).join(" ")].filter(p=>p).join(`
|
|
2
2
|
|
|
3
|
-
`),table:{category:"slots"}}}),results},parseTypeToControl=type=>{if(!type)return null;if(type.kind==="type")switch(type.type){case"string":return{control:{type:"text"}};case"any":return{control:{type:"object"}};default:return{control:{type:type.type}}}else if(type.kind==="union"){if(Array.isArray(type.type)&&!type.type.some(t=>t.kind!=="const"||!["string","number","null","undefined"].includes(t.type))){let options=type.type.map(t=>t.value);return{control:{type:"radio",labels:options.map(String)},options}}}else if(type.kind==="function")return{control:null};return null};function extractComponentDescription(component){if(!component)return"";let{__docgen={}}=component;return __docgen.description}var import_client_logger2=require("storybook/internal/client-logger"),import_docs_tools=require("storybook/internal/docs-tools"),import_preview_api=require("storybook/
|
|
3
|
+
`),table:{category:"slots"}}}),results},parseTypeToControl=type=>{if(!type)return null;if(type.kind==="type")switch(type.type){case"string":return{control:{type:"text"}};case"any":return{control:{type:"object"}};default:return{control:{type:type.type}}}else if(type.kind==="union"){if(Array.isArray(type.type)&&!type.type.some(t=>t.kind!=="const"||!["string","number","null","undefined"].includes(t.type))){let options=type.type.map(t=>t.value);return{control:{type:"radio",labels:options.map(String)},options}}}else if(type.kind==="function")return{control:null};return null};function extractComponentDescription(component){if(!component)return"";let{__docgen={}}=component;return __docgen.description}var import_client_logger2=require("storybook/internal/client-logger"),import_docs_tools=require("storybook/internal/docs-tools"),import_preview_api=require("storybook/preview-api"),skipSourceRender=context=>{let sourceParams=context?.parameters.docs?.source,isArgsStory=context?.parameters.__isArgsStory;return sourceParams?.type===import_docs_tools.SourceType.DYNAMIC?!1:!isArgsStory||sourceParams?.code||sourceParams?.type===import_docs_tools.SourceType.CODE};function toSvelteProperty(key,value,argTypes){if(value==null)return null;let argType=argTypes[key];return argType&&argType.defaultValue===value||argType&&argType.action?null:value===!0?key:typeof value=="string"?`${key}=${JSON.stringify(value)}`:typeof value=="function"?`${key}={<handler>}`:`${key}={${JSON.stringify(value)}}`}function getComponentName(component){if(component==null)return null;let{__docgen={}}=component,{name}=__docgen;return name?(name.endsWith(".svelte")&&(name=name.substring(0,name.length-7)),name):component.name}function generateSvelteSource(component,args,argTypes,slotProperty){let name=getComponentName(component);if(!name)return null;let propsArray=Object.entries(args).filter(([k])=>k!==slotProperty).map(([k,v])=>toSvelteProperty(k,v,argTypes)).filter(p=>p),props=propsArray.join(" "),multiline=props.length>50,slotValue=slotProperty?args[slotProperty]:null,srcStart=multiline?`<${name}
|
|
4
4
|
${propsArray.join(`
|
|
5
5
|
`)}`:`<${name} ${props}`;return slotValue?`${srcStart}>
|
|
6
6
|
${slotValue}
|
|
7
|
-
</${name}>`:`${srcStart}/>`}function getWrapperProperties(component){let{__docgen}=component||{};return __docgen?__docgen.keywords?.find(kw=>kw.name==="wrapper")?{wrapper:!0,slotProperty:__docgen.data?.find(prop=>prop.keywords.find(kw=>kw.name==="slot"))?.name}:{wrapper:!1}:{wrapper:!1}}var sourceDecorator=(storyFn,context)=>{let
|
|
7
|
+
</${name}>`:`${srcStart}/>`}function getWrapperProperties(component){let{__docgen}=component||{};return __docgen?__docgen.keywords?.find(kw=>kw.name==="wrapper")?{wrapper:!0,slotProperty:__docgen.data?.find(prop=>prop.keywords.find(kw=>kw.name==="slot"))?.name}:{wrapper:!1}:{wrapper:!1}}var sourceDecorator=(storyFn,context)=>{let skip=skipSourceRender(context),story=storyFn(),source=(0,import_preview_api.useRef)(void 0);return(0,import_preview_api.useEffect)(()=>{if(skip)return;let{parameters:parameters2={},args={},component:ctxComponent}=context||{},{Component:component}=context.originalStoryFn(args,context),{wrapper,slotProperty}=getWrapperProperties(component);wrapper&&(parameters2.component&&(0,import_client_logger2.deprecate)("parameters.component is deprecated. Using context.component instead."),component=ctxComponent);let generated=generateSvelteSource(component,args,context?.argTypes,slotProperty);generated&&source.current!==generated&&((0,import_preview_api.emitTransformCode)(generated,context),source.current=generated)}),story};var parameters={docs:{story:{inline:!0},extractArgTypes,extractComponentDescription}},decorators=[sourceDecorator],argTypesEnhancers=[import_docs_tools2.enhanceArgTypes];0&&(module.exports={argTypesEnhancers,decorators,parameters});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import './chunk-CEH6MNVV.mjs';
|
|
2
|
-
import { enhanceArgTypes,
|
|
2
|
+
import { enhanceArgTypes, SourceType } from 'storybook/internal/docs-tools';
|
|
3
3
|
import { logger, deprecate } from 'storybook/internal/client-logger';
|
|
4
|
-
import {
|
|
4
|
+
import { useRef, useEffect, emitTransformCode } from 'storybook/preview-api';
|
|
5
5
|
|
|
6
6
|
function hasKeyword(keyword,keywords){return keywords?keywords.find(k=>k.name===keyword)!=null:!1}var extractArgTypes=component=>{try{let docgen=component.__docgen;if(docgen)return createArgTypes(docgen)}catch(err){logger.log(`Error extracting argTypes: ${err}`);}return {}},createArgTypes=docgen=>{let results={};return docgen.data&&docgen.data.forEach(item=>{results[item.name]={...parseTypeToControl(item.type),name:item.name,description:item.description||void 0,type:{required:hasKeyword("required",item.keywords||[]),name:item.type?.text==="{}"?"object":item.type?.text},table:{type:{summary:item.type?.text},defaultValue:{summary:item.defaultValue},category:"properties"}};}),docgen.events&&docgen.events.forEach(item=>{results[`event_${item.name}`]={name:item.name,action:item.name,control:!1,...item.description?{description:item.description}:{},table:{category:"events"}};}),docgen.slots&&docgen.slots.forEach(item=>{results[`slot_${item.name}`]={name:item.name,control:!1,description:[item.description,item.params?.map(p=>`\`${p.name}\``).join(" ")].filter(p=>p).join(`
|
|
7
7
|
|
|
@@ -9,6 +9,6 @@ function hasKeyword(keyword,keywords){return keywords?keywords.find(k=>k.name===
|
|
|
9
9
|
${propsArray.join(`
|
|
10
10
|
`)}`:`<${name} ${props}`;return slotValue?`${srcStart}>
|
|
11
11
|
${slotValue}
|
|
12
|
-
</${name}>`:`${srcStart}/>`}function getWrapperProperties(component){let{__docgen}=component||{};return __docgen?__docgen.keywords?.find(kw=>kw.name==="wrapper")?{wrapper:!0,slotProperty:__docgen.data?.find(prop=>prop.keywords.find(kw=>kw.name==="slot"))?.name}:{wrapper:!1}:{wrapper:!1}}var sourceDecorator=(storyFn,context)=>{let
|
|
12
|
+
</${name}>`:`${srcStart}/>`}function getWrapperProperties(component){let{__docgen}=component||{};return __docgen?__docgen.keywords?.find(kw=>kw.name==="wrapper")?{wrapper:!0,slotProperty:__docgen.data?.find(prop=>prop.keywords.find(kw=>kw.name==="slot"))?.name}:{wrapper:!1}:{wrapper:!1}}var sourceDecorator=(storyFn,context)=>{let skip=skipSourceRender(context),story=storyFn(),source=useRef(void 0);return useEffect(()=>{if(skip)return;let{parameters:parameters2={},args={},component:ctxComponent}=context||{},{Component:component}=context.originalStoryFn(args,context),{wrapper,slotProperty}=getWrapperProperties(component);wrapper&&(parameters2.component&&deprecate("parameters.component is deprecated. Using context.component instead."),component=ctxComponent);let generated=generateSvelteSource(component,args,context?.argTypes,slotProperty);generated&&source.current!==generated&&(emitTransformCode(generated,context),source.current=generated);}),story};var parameters={docs:{story:{inline:!0},extractArgTypes,extractComponentDescription}},decorators=[sourceDecorator],argTypesEnhancers=[enhanceArgTypes];
|
|
13
13
|
|
|
14
14
|
export { argTypesEnhancers, decorators, parameters };
|
package/dist/entry-preview.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { RenderContext, ArgsStoryFn, BaseAnnotations } from 'storybook/internal/types';
|
|
2
|
-
import { S as SvelteRenderer } from './types-
|
|
2
|
+
import { S as SvelteRenderer } from './types-b7d0039b.js';
|
|
3
3
|
import 'svelte';
|
|
4
4
|
|
|
5
|
-
declare function renderToCanvas(
|
|
5
|
+
declare function renderToCanvas({ storyFn, title, name, showMain, showError, storyContext, forceRemount, }: RenderContext<SvelteRenderer>, canvasElement: SvelteRenderer['canvasElement']): () => void;
|
|
6
6
|
declare const render: ArgsStoryFn<SvelteRenderer>;
|
|
7
7
|
|
|
8
8
|
declare function decorateStory(storyFn: any, decorators: any[]): any;
|
package/dist/entry-preview.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var entry_preview_exports={};__export(entry_preview_exports,{applyDecorators:()=>decorateStory,mount:()=>mount2,parameters:()=>parameters,render:()=>render,renderToCanvas:()=>renderToCanvas});module.exports=__toCommonJS(entry_preview_exports);var import_core_events=require("storybook/internal/core-events"),
|
|
1
|
+
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var entry_preview_exports={};__export(entry_preview_exports,{applyDecorators:()=>decorateStory,mount:()=>mount2,parameters:()=>parameters,render:()=>render,renderToCanvas:()=>renderToCanvas});module.exports=__toCommonJS(entry_preview_exports);var import_core_events=require("storybook/internal/core-events"),import_PreviewRender=__toESM(require("@storybook/svelte/internal/PreviewRender.svelte")),import_createReactiveProps=require("@storybook/svelte/internal/createReactiveProps"),import_preview_api=require("storybook/preview-api"),svelte=__toESM(require("svelte")),storyIdsToRemountFromResetArgsEvent=new Set;import_preview_api.addons.getChannel().on(import_core_events.RESET_STORY_ARGS,({storyId})=>{storyIdsToRemountFromResetArgsEvent.add(storyId)});var componentsByDomElement=new Map;function renderToCanvas({storyFn,title,name,showMain,showError,storyContext,forceRemount},canvasElement){function unmount2(canvasElementToUnmount){let{mountedComponent}=componentsByDomElement.get(canvasElementToUnmount)??{};mountedComponent&&(svelte.unmount(mountedComponent),componentsByDomElement.delete(canvasElementToUnmount))}let existingComponent=componentsByDomElement.get(canvasElement),remount=forceRemount;if(storyIdsToRemountFromResetArgsEvent.has(storyContext.id)&&(remount=!0,storyIdsToRemountFromResetArgsEvent.delete(storyContext.id)),remount&&unmount2(canvasElement),!existingComponent||remount){let props=(0,import_createReactiveProps.createReactiveProps)({storyFn,storyContext,name,title,showError}),mountedComponent=svelte.mount(import_PreviewRender.default,{target:canvasElement,props});componentsByDomElement.set(canvasElement,{mountedComponent,props})}else Object.assign(existingComponent.props,{storyFn,storyContext,name,title,showError});return showMain(),()=>{unmount2(canvasElement)}}var render=(args,context)=>{let{id,component:Component}=context;if(!Component)throw new Error(`Unable to render story ${id} as the component annotation is missing from the default export`);return{Component,props:args}};var import_DecoratorHandler=__toESM(require("@storybook/svelte/internal/DecoratorHandler.svelte")),import_preview_api2=require("storybook/preview-api");function unWrap(obj){return obj&&typeof obj=="object"&&"default"in obj?obj.default:obj}function prepareStory(context,rawStory,rawInnerStory){let story=unWrap(rawStory),innerStory=rawInnerStory&&unWrap(rawInnerStory),preparedStory;return!story||Object.keys(story).length===0?preparedStory={Component:context.component}:story.Component?preparedStory=story:preparedStory={Component:story},innerStory?{Component:import_DecoratorHandler.default,props:{...innerStory,decorator:preparedStory}}:{...preparedStory,argTypes:context.argTypes}}function decorateStory(storyFn,decorators){return decorators.reduce((decorated,decorator)=>context=>{let story,decoratedStory=decorator(update=>(story=decorated({...context,...(0,import_preview_api2.sanitizeStoryContextUpdate)(update)}),story),context);return story||(story=decorated(context)),decoratedStory===story?story:prepareStory(context,decoratedStory,story)},context=>prepareStory(context,storyFn(context)))}var mount2=context=>async(Component,options)=>(Component&&(context.originalStoryFn=()=>({Component,props:options&&"props"in options?options?.props:options})),await context.renderToCanvas(),context.canvas);var parameters={renderer:"svelte"};0&&(module.exports={applyDecorators,mount,parameters,render,renderToCanvas});
|
package/dist/entry-preview.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { decorateStory as applyDecorators, mount, parameters, render, renderToCanvas } from './chunk-
|
|
1
|
+
export { decorateStory as applyDecorators, mount, parameters, render, renderToCanvas } from './chunk-2IXN2SLZ.mjs';
|
|
2
2
|
import './chunk-CEH6MNVV.mjs';
|
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,
|
|
3
|
+
import { SvelteComponent, ComponentProps, ComponentType } from 'svelte';
|
|
4
4
|
import { Simplify, SetOptional } from 'type-fest';
|
|
5
|
-
import { S as SvelteRenderer } from './types-
|
|
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
|
|
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>;
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var index_exports={};__export(index_exports,{INTERNAL_DEFAULT_PROJECT_ANNOTATIONS:()=>INTERNAL_DEFAULT_PROJECT_ANNOTATIONS,composeStories:()=>composeStories,composeStory:()=>composeStory,setProjectAnnotations:()=>setProjectAnnotations});module.exports=__toCommonJS(index_exports);globalThis.STORYBOOK_ENV="svelte";var
|
|
1
|
+
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var index_exports={};__export(index_exports,{INTERNAL_DEFAULT_PROJECT_ANNOTATIONS:()=>INTERNAL_DEFAULT_PROJECT_ANNOTATIONS,composeStories:()=>composeStories,composeStory:()=>composeStory,setProjectAnnotations:()=>setProjectAnnotations});module.exports=__toCommonJS(index_exports);globalThis.STORYBOOK_ENV="svelte";var import_PreviewRender2=__toESM(require("@storybook/svelte/internal/PreviewRender.svelte")),import_createReactiveProps2=require("@storybook/svelte/internal/createReactiveProps"),import_preview_api3=require("storybook/preview-api");var entry_preview_exports={};__export(entry_preview_exports,{applyDecorators:()=>decorateStory,mount:()=>mount2,parameters:()=>parameters,render:()=>render,renderToCanvas:()=>renderToCanvas});var import_core_events=require("storybook/internal/core-events"),import_PreviewRender=__toESM(require("@storybook/svelte/internal/PreviewRender.svelte")),import_createReactiveProps=require("@storybook/svelte/internal/createReactiveProps"),import_preview_api=require("storybook/preview-api"),svelte=__toESM(require("svelte")),storyIdsToRemountFromResetArgsEvent=new Set;import_preview_api.addons.getChannel().on(import_core_events.RESET_STORY_ARGS,({storyId})=>{storyIdsToRemountFromResetArgsEvent.add(storyId)});var componentsByDomElement=new Map;function renderToCanvas({storyFn,title,name,showMain,showError,storyContext,forceRemount},canvasElement){function unmount2(canvasElementToUnmount){let{mountedComponent}=componentsByDomElement.get(canvasElementToUnmount)??{};mountedComponent&&(svelte.unmount(mountedComponent),componentsByDomElement.delete(canvasElementToUnmount))}let existingComponent=componentsByDomElement.get(canvasElement),remount=forceRemount;if(storyIdsToRemountFromResetArgsEvent.has(storyContext.id)&&(remount=!0,storyIdsToRemountFromResetArgsEvent.delete(storyContext.id)),remount&&unmount2(canvasElement),!existingComponent||remount){let props=(0,import_createReactiveProps.createReactiveProps)({storyFn,storyContext,name,title,showError}),mountedComponent=svelte.mount(import_PreviewRender.default,{target:canvasElement,props});componentsByDomElement.set(canvasElement,{mountedComponent,props})}else Object.assign(existingComponent.props,{storyFn,storyContext,name,title,showError});return showMain(),()=>{unmount2(canvasElement)}}var render=(args,context)=>{let{id,component:Component}=context;if(!Component)throw new Error(`Unable to render story ${id} as the component annotation is missing from the default export`);return{Component,props:args}};var import_DecoratorHandler=__toESM(require("@storybook/svelte/internal/DecoratorHandler.svelte")),import_preview_api2=require("storybook/preview-api");function unWrap(obj){return obj&&typeof obj=="object"&&"default"in obj?obj.default:obj}function prepareStory(context,rawStory,rawInnerStory){let story=unWrap(rawStory),innerStory=rawInnerStory&&unWrap(rawInnerStory),preparedStory;return!story||Object.keys(story).length===0?preparedStory={Component:context.component}:story.Component?preparedStory=story:preparedStory={Component:story},innerStory?{Component:import_DecoratorHandler.default,props:{...innerStory,decorator:preparedStory}}:{...preparedStory,argTypes:context.argTypes}}function decorateStory(storyFn,decorators){return decorators.reduce((decorated,decorator)=>context=>{let story,decoratedStory=decorator(update=>(story=decorated({...context,...(0,import_preview_api2.sanitizeStoryContextUpdate)(update)}),story),context);return story||(story=decorated(context)),decoratedStory===story?story:prepareStory(context,decoratedStory,story)},context=>prepareStory(context,storyFn(context)))}var mount2=context=>async(Component,options)=>(Component&&(context.originalStoryFn=()=>({Component,props:options&&"props"in options?options?.props:options})),await context.renderToCanvas(),context.canvas);var parameters={renderer:"svelte"};function setProjectAnnotations(projectAnnotations){return(0,import_preview_api3.setDefaultProjectAnnotations)(INTERNAL_DEFAULT_PROJECT_ANNOTATIONS),(0,import_preview_api3.setProjectAnnotations)(projectAnnotations)}var INTERNAL_DEFAULT_PROJECT_ANNOTATIONS={...entry_preview_exports,renderToCanvas:(renderContext,canvasElement)=>{if(renderContext.storyContext.testingLibraryRender==null)return renderToCanvas(renderContext,canvasElement);let{storyFn,storyContext:{testingLibraryRender:render2}}=renderContext,{Component,props}=storyFn(),{unmount:unmount2}=render2(Component,{props,target:canvasElement});return unmount2}};function composeStory(story,componentAnnotations,projectAnnotations,exportsName){let composedStory=(0,import_preview_api3.composeStory)(story,componentAnnotations,projectAnnotations,globalThis.globalProjectAnnotations??INTERNAL_DEFAULT_PROJECT_ANNOTATIONS,exportsName),props=(0,import_createReactiveProps2.createReactiveProps)({storyFn:composedStory,storyContext:{...composedStory},name:composedStory.storyName,title:composedStory.id,showError:()=>{}}),renderable={Component:import_PreviewRender2.default,props};return Object.assign(renderable,composedStory),renderable}function composeStories(csfExports,projectAnnotations){return(0,import_preview_api3.composeStories)(csfExports,projectAnnotations,composeStory)}0&&(module.exports={INTERNAL_DEFAULT_PROJECT_ANNOTATIONS,composeStories,composeStory,setProjectAnnotations});
|
package/dist/index.mjs
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { entry_preview_exports, renderToCanvas
|
|
1
|
+
import { entry_preview_exports, renderToCanvas } from './chunk-2IXN2SLZ.mjs';
|
|
2
2
|
import './chunk-CEH6MNVV.mjs';
|
|
3
|
-
import { setDefaultProjectAnnotations, setProjectAnnotations as setProjectAnnotations$1, composeStory as composeStory$1, composeStories as composeStories$1 } from 'storybook/internal/preview-api';
|
|
4
3
|
import PreviewRender from '@storybook/svelte/internal/PreviewRender.svelte';
|
|
5
|
-
import {
|
|
4
|
+
import { createReactiveProps } from '@storybook/svelte/internal/createReactiveProps';
|
|
5
|
+
import { setDefaultProjectAnnotations, setProjectAnnotations as setProjectAnnotations$1, composeStory as composeStory$1, composeStories as composeStories$1 } from 'storybook/preview-api';
|
|
6
6
|
|
|
7
|
-
globalThis.STORYBOOK_ENV="svelte";function setProjectAnnotations(projectAnnotations){return setDefaultProjectAnnotations(INTERNAL_DEFAULT_PROJECT_ANNOTATIONS),setProjectAnnotations$1(projectAnnotations)}var INTERNAL_DEFAULT_PROJECT_ANNOTATIONS={...entry_preview_exports,renderToCanvas:(renderContext,canvasElement)=>{if(renderContext.storyContext.testingLibraryRender==null)return renderToCanvas(renderContext,canvasElement);let{storyFn,storyContext:{testingLibraryRender:render}}=renderContext,{Component,props}=storyFn(),{unmount}=render(Component,{props,target:canvasElement});return unmount}};function composeStory(story,componentAnnotations,projectAnnotations,exportsName){let composedStory=composeStory$1(story,componentAnnotations,projectAnnotations,globalThis.globalProjectAnnotations??INTERNAL_DEFAULT_PROJECT_ANNOTATIONS,exportsName),props={storyFn:composedStory,storyContext:{...composedStory},name:composedStory.storyName,title:composedStory.id,showError:()=>{}}
|
|
7
|
+
globalThis.STORYBOOK_ENV="svelte";function setProjectAnnotations(projectAnnotations){return setDefaultProjectAnnotations(INTERNAL_DEFAULT_PROJECT_ANNOTATIONS),setProjectAnnotations$1(projectAnnotations)}var INTERNAL_DEFAULT_PROJECT_ANNOTATIONS={...entry_preview_exports,renderToCanvas:(renderContext,canvasElement)=>{if(renderContext.storyContext.testingLibraryRender==null)return renderToCanvas(renderContext,canvasElement);let{storyFn,storyContext:{testingLibraryRender:render}}=renderContext,{Component,props}=storyFn(),{unmount}=render(Component,{props,target:canvasElement});return unmount}};function composeStory(story,componentAnnotations,projectAnnotations,exportsName){let composedStory=composeStory$1(story,componentAnnotations,projectAnnotations,globalThis.globalProjectAnnotations??INTERNAL_DEFAULT_PROJECT_ANNOTATIONS,exportsName),props=createReactiveProps({storyFn:composedStory,storyContext:{...composedStory},name:composedStory.storyName,title:composedStory.id,showError:()=>{}}),renderable={Component:PreviewRender,props};return Object.assign(renderable,composedStory),renderable}function composeStories(csfExports,projectAnnotations){return composeStories$1(csfExports,projectAnnotations,composeStory)}
|
|
8
8
|
|
|
9
9
|
export { INTERNAL_DEFAULT_PROJECT_ANNOTATIONS, composeStories, composeStory, setProjectAnnotations };
|
package/dist/playwright.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { createPlaywrightTest as createTest } from 'storybook/
|
|
1
|
+
export { createPlaywrightTest as createTest } from 'storybook/preview-api';
|
package/dist/playwright.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var playwright_exports={};__export(playwright_exports,{createTest:()=>import_preview_api.createPlaywrightTest});module.exports=__toCommonJS(playwright_exports);var import_preview_api=require("storybook/
|
|
1
|
+
"use strict";var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var playwright_exports={};__export(playwright_exports,{createTest:()=>import_preview_api.createPlaywrightTest});module.exports=__toCommonJS(playwright_exports);var import_preview_api=require("storybook/preview-api");0&&(module.exports={createTest});
|
package/dist/playwright.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import './chunk-CEH6MNVV.mjs';
|
|
2
|
-
export { createPlaywrightTest as createTest } from 'storybook/
|
|
2
|
+
export { createPlaywrightTest as createTest } from 'storybook/preview-api';
|
|
@@ -1,23 +1,27 @@
|
|
|
1
|
-
import
|
|
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
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
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.
|
|
3
|
+
"version": "9.0.0-alpha.21",
|
|
4
4
|
"description": "Storybook Svelte renderer",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"storybook"
|
|
@@ -35,9 +35,9 @@
|
|
|
35
35
|
"./dist/entry-preview-docs.mjs": "./dist/entry-preview-docs.mjs",
|
|
36
36
|
"./package.json": "./package.json",
|
|
37
37
|
"./internal/PreviewRender.svelte": "./dist/components/PreviewRender.svelte",
|
|
38
|
-
"./internal/
|
|
38
|
+
"./internal/DecoratorHandler.svelte": "./dist/components/DecoratorHandler.svelte",
|
|
39
39
|
"./internal/AddStorybookIdDecorator.svelte": "./dist/components/AddStorybookIdDecorator.svelte",
|
|
40
|
-
"./internal/
|
|
40
|
+
"./internal/createReactiveProps": "./dist/createReactiveProps.svelte.js"
|
|
41
41
|
},
|
|
42
42
|
"main": "dist/index.js",
|
|
43
43
|
"module": "dist/index.mjs",
|
|
@@ -55,7 +55,6 @@
|
|
|
55
55
|
"prep": "jiti ../../../scripts/prepare/bundle.ts"
|
|
56
56
|
},
|
|
57
57
|
"dependencies": {
|
|
58
|
-
"@storybook/csf": "0.1.12",
|
|
59
58
|
"@storybook/global": "^5.0.0",
|
|
60
59
|
"sveltedoc-parser": "^4.2.1",
|
|
61
60
|
"ts-dedent": "^2.0.0",
|
|
@@ -65,17 +64,17 @@
|
|
|
65
64
|
"@sveltejs/vite-plugin-svelte": "^5.0.3",
|
|
66
65
|
"@testing-library/svelte": "^5.2.4",
|
|
67
66
|
"expect-type": "^1.1.0",
|
|
68
|
-
"svelte": "^5.
|
|
67
|
+
"svelte": "^5.20.5",
|
|
69
68
|
"svelte-check": "^4.1.4",
|
|
70
69
|
"typescript": "^5.7.3",
|
|
71
|
-
"vite": "^6.
|
|
70
|
+
"vite": "^6.2.5"
|
|
72
71
|
},
|
|
73
72
|
"peerDependencies": {
|
|
74
|
-
"storybook": "^9.0.0-alpha.
|
|
75
|
-
"svelte": "^
|
|
73
|
+
"storybook": "^9.0.0-alpha.21",
|
|
74
|
+
"svelte": "^5.0.0"
|
|
76
75
|
},
|
|
77
76
|
"engines": {
|
|
78
|
-
"node": ">=
|
|
77
|
+
"node": ">=20.0.0"
|
|
79
78
|
},
|
|
80
79
|
"publishConfig": {
|
|
81
80
|
"access": "public"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script module>
|
|
2
2
|
import { defineMeta } from '@storybook/addon-svelte-csf';
|
|
3
3
|
import Button from './Button.svelte';
|
|
4
|
-
import { fn } from '
|
|
4
|
+
import { fn } from 'storybook/test';
|
|
5
5
|
|
|
6
6
|
// More on how to set up stories at: https://storybook.js.org/docs/writing-stories
|
|
7
7
|
const { Story } = defineMeta({
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
},
|
|
17
17
|
},
|
|
18
18
|
args: {
|
|
19
|
-
|
|
19
|
+
onclick: fn(),
|
|
20
20
|
}
|
|
21
21
|
});
|
|
22
22
|
</script>
|
|
@@ -2,35 +2,26 @@
|
|
|
2
2
|
import './button.css';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
5
|
+
* @typedef {Object} Props
|
|
6
|
+
* @property {boolean} [primary] Is this the principal call to action on the page?
|
|
7
|
+
* @property {string} [backgroundColor] What background color to use
|
|
8
|
+
* @property {'small' | 'medium' | 'large'} [size] How large should the button be?
|
|
9
|
+
* @property {string} label Button contents
|
|
10
|
+
* @property {() => void} [onclick] The onclick event handler
|
|
6
11
|
*/
|
|
7
|
-
export let primary = false;
|
|
8
12
|
|
|
9
|
-
/**
|
|
10
|
-
|
|
11
|
-
*/
|
|
12
|
-
export let backgroundColor = undefined;
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* @type {'small' | 'medium' | 'large'} How large should the button be?
|
|
16
|
-
*/
|
|
17
|
-
export let size = 'medium';
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* @type {string} Button contents
|
|
21
|
-
*/
|
|
22
|
-
export let label;
|
|
23
|
-
|
|
24
|
-
$: mode = primary ? 'storybook-button--primary' : 'storybook-button--secondary';
|
|
13
|
+
/** @type {Props} */
|
|
14
|
+
const { primary = false, backgroundColor, size = 'medium', label, ...props } = $props();
|
|
25
15
|
|
|
26
|
-
|
|
16
|
+
let mode = $derived(primary ? 'storybook-button--primary' : 'storybook-button--secondary');
|
|
17
|
+
let style = $derived(backgroundColor ? `background-color: ${backgroundColor}` : '');
|
|
27
18
|
</script>
|
|
28
19
|
|
|
29
20
|
<button
|
|
30
21
|
type="button"
|
|
31
22
|
class={['storybook-button', `storybook-button--${size}`, mode].join(' ')}
|
|
32
23
|
{style}
|
|
33
|
-
|
|
24
|
+
{...props}
|
|
34
25
|
>
|
|
35
26
|
{label}
|
|
36
27
|
</button>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script module>
|
|
2
2
|
import { defineMeta } from '@storybook/addon-svelte-csf';
|
|
3
3
|
import Header from './Header.svelte';
|
|
4
|
-
import { fn } from '
|
|
4
|
+
import { fn } from 'storybook/test';
|
|
5
5
|
|
|
6
6
|
// More on how to set up stories at: https://storybook.js.org/docs/writing-stories
|
|
7
7
|
const { Story } = defineMeta({
|
|
@@ -2,21 +2,16 @@
|
|
|
2
2
|
import './header.css';
|
|
3
3
|
import Button from './Button.svelte';
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* @typedef {Object} Props
|
|
7
|
+
* @property {{name: string}} [user] The user object
|
|
8
|
+
* @property {() => void} [onLogin] The login event handler
|
|
9
|
+
* @property {() => void} [onLogout] The logout event handler
|
|
10
|
+
* @property {() => void} [onCreateAccount] The account creation event handler
|
|
11
|
+
*/
|
|
6
12
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const dispatch = createEventDispatcher();
|
|
10
|
-
|
|
11
|
-
function onLogin(event) {
|
|
12
|
-
dispatch('login', event);
|
|
13
|
-
}
|
|
14
|
-
function onLogout(event) {
|
|
15
|
-
dispatch('logout', event);
|
|
16
|
-
}
|
|
17
|
-
function onCreateAccount(event) {
|
|
18
|
-
dispatch('createAccount', event);
|
|
19
|
-
}
|
|
13
|
+
/** @type {Props} */
|
|
14
|
+
const { user, onLogin, onLogout, onCreateAccount } = $props();
|
|
20
15
|
</script>
|
|
21
16
|
|
|
22
17
|
<header>
|
|
@@ -42,10 +37,10 @@
|
|
|
42
37
|
<span class="welcome">
|
|
43
38
|
Welcome, <b>{user.name}</b>!
|
|
44
39
|
</span>
|
|
45
|
-
<Button size="small"
|
|
40
|
+
<Button size="small" onclick={onLogout} label="Log out" />
|
|
46
41
|
{:else}
|
|
47
|
-
<Button size="small"
|
|
48
|
-
<Button primary size="small"
|
|
42
|
+
<Button size="small" onclick={onLogin} label="Log in" />
|
|
43
|
+
<Button primary size="small" onclick={onCreateAccount} label="Sign up" />
|
|
49
44
|
{/if}
|
|
50
45
|
</div>
|
|
51
46
|
</div>
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<script module>
|
|
2
2
|
import { defineMeta } from '@storybook/addon-svelte-csf';
|
|
3
|
-
import { expect, userEvent, waitFor, within } from '
|
|
3
|
+
import { expect, userEvent, waitFor, within } from 'storybook/test';
|
|
4
4
|
import Page from './Page.svelte';
|
|
5
|
-
import { fn } from '
|
|
5
|
+
import { fn } from 'storybook/test';
|
|
6
6
|
|
|
7
7
|
// More on how to set up stories at: https://storybook.js.org/docs/writing-stories
|
|
8
8
|
const { Story } = defineMeta({
|
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
import './page.css';
|
|
3
3
|
import Header from './Header.svelte';
|
|
4
4
|
|
|
5
|
-
let user = null;
|
|
5
|
+
let user = $state(null);
|
|
6
6
|
</script>
|
|
7
7
|
|
|
8
8
|
<article>
|
|
9
9
|
<Header
|
|
10
10
|
{user}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
onLogin={() => (user = { name: 'Jane Doe' })}
|
|
12
|
+
onLogout={() => (user = null)}
|
|
13
|
+
onCreateAccount={() => (user = { name: 'Jane Doe' })}
|
|
14
14
|
/>
|
|
15
15
|
|
|
16
16
|
<section class="storybook-page">
|