@storybook/blocks 7.0.0-beta.25 → 7.0.0-beta.26

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/index.js CHANGED
@@ -22,4 +22,4 @@ var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropD
22
22
  `)}var storyIdToSanitizedStoryName=id2=>id2.replace(/^.*?--/,""),extract=(targetId,{source,locationsMap})=>{if(!locationsMap)return source;let sanitizedStoryName=storyIdToSanitizedStoryName(targetId),location=locationsMap[sanitizedStoryName];if(!location)return source;let lines=source.split(`
23
23
  `);return extractSource(location,lines)},enhanceSource=story=>{var _a;let{id:id2,parameters}=story,{storySource,docs={}}=parameters,{transformSource}=docs;if(!(storySource!=null&&storySource.source)||(_a=docs.source)!=null&&_a.code)return null;let input=extract(id2,storySource),code=transformSource?transformSource(input,story):input;return{docs:(0,import_preview_api2.combineParameters)(docs,{source:{code}})}};var SourceState=(SourceState2=>(SourceState2.OPEN="open",SourceState2.CLOSED="closed",SourceState2.NONE="none",SourceState2))(SourceState||{}),getSourceState=stories=>{let states=stories.map(story=>{var _a,_b;return(_b=(_a=story.parameters.docs)==null?void 0:_a.source)==null?void 0:_b.state}).filter(Boolean);return states.length===0?"closed":states[0]},getStorySource=(storyId,sourceContext)=>{let{sources}=sourceContext;return(sources==null?void 0:sources[storyId])||{code:"",format:!1}},getSnippet=(snippet,story)=>{var _a,_b,_c,_d,_e,_f,_g,_h,_i,_j;if(!story)return snippet;let{parameters}=story,isArgsStory=parameters.__isArgsStory,type=((_b=(_a=parameters.docs)==null?void 0:_a.source)==null?void 0:_b.type)||import_docs_tools2.SourceType.AUTO,userCode=(_d=(_c=parameters.docs)==null?void 0:_c.source)==null?void 0:_d.code;if(userCode!==void 0)return userCode;if(type===import_docs_tools2.SourceType.DYNAMIC)return((_f=(_e=parameters.docs)==null?void 0:_e.transformSource)==null?void 0:_f.call(_e,snippet,story))||snippet;if(type===import_docs_tools2.SourceType.AUTO&&snippet&&isArgsStory)return((_h=(_g=parameters.docs)==null?void 0:_g.transformSource)==null?void 0:_h.call(_g,snippet,story))||snippet;let enhanced=enhanceSource(story)||parameters;return((_j=(_i=enhanced==null?void 0:enhanced.docs)==null?void 0:_i.source)==null?void 0:_j.code)||""},useSourceProps=(props,docsContext,sourceContext)=>{let{id:primaryId,parameters}=docsContext.storyById(),codeProps=props,singleProps=props,multiProps=props,{format:format2,code:source}=codeProps,storyIds=(multiProps.ids||[singleProps.id||primaryId]).map(targetId=>targetId),stories=useStories(storyIds,docsContext);if(!stories.every(Boolean))return{error:"Oh no! The source is not available.",state:"none"};source||({format:format2}=getStorySource(storyIds[0],sourceContext),source=storyIds.map((storyId,idx)=>{let{code:storySource}=getStorySource(storyId,sourceContext),storyObj=stories[idx];return getSnippet(storySource,storyObj)}).join(`
24
24
 
25
- `));let state=getSourceState(stories),{docs:docsParameters={}}=parameters,{source:sourceParameters={}}=docsParameters,{language:docsLanguage=null}=sourceParameters;return source?{code:source,state,format:format2,language:props.language||docsLanguage||"jsx",dark:props.dark||!1}:{error:"Oh no! The source is not available.",state}},Source2=props=>{let sourceContext=(0,import_react41.useContext)(SourceContext),docsContext=(0,import_react41.useContext)(DocsContext),sourceProps=useSourceProps(props,docsContext,sourceContext);return import_react41.default.createElement(Source,{...sourceProps})};var import_react42=__toESM(require("react"));var storyBlockIdFromId=storyId=>`story--${storyId}`,getStoryId2=(props,context)=>{let{id:id2,of,meta}=props;if(of){meta&&context.referenceMeta(meta,!1);let resolved=context.resolveModuleExport(of);if(resolved.type!=="story")throw new Error("Unexpected component/module/meta exports passed to `Story` block.");return resolved.story.id}let{name}=props;return id2||context.storyIdByName(name)},getStoryProps=({height,inline},story)=>{let{name:storyName,parameters={}}=story||{},{docs={}}=parameters;if(docs.disable)return null;let{inlineStories=!1,iframeHeight=100}=docs,storyIsInline=typeof inline=="boolean"?inline:inlineStories;return{inline:storyIsInline,id:story==null?void 0:story.id,height:height||(storyIsInline?void 0:iframeHeight),title:storyName,...storyIsInline&&{parameters}}},Story2=props=>{let context=(0,import_react42.useContext)(DocsContext),storyRef=(0,import_react42.useRef)(),storyId=getStoryId2(props,context),story=useStory(storyId,context),[showLoader,setShowLoader]=(0,import_react42.useState)(!0);if((0,import_react42.useEffect)(()=>{if(!(story&&storyRef.current))return()=>{};let element=storyRef.current,{autoplay}=story.parameters.docs||{},cleanup=context.renderStoryToElement(story,element,{autoplay});return setShowLoader(!1),()=>{cleanup()}},[context,story]),!story)return import_react42.default.createElement(StorySkeleton,null);let storyProps=getStoryProps(props,story);if(!storyProps)return null;if(storyProps.inline){let htmlContents="<span></span>",{height}=storyProps;return import_react42.default.createElement("div",{id:storyBlockIdFromId(story.id),className:"sb-story"},height?import_react42.default.createElement("style",null,`#story--${story.id} { min-height: ${height}; transform: translateZ(0); overflow: auto }`):null,showLoader&&import_react42.default.createElement(StorySkeleton,null),import_react42.default.createElement("div",{ref:storyRef,"data-name":story.name,dangerouslySetInnerHTML:{__html:htmlContents}}))}return import_react42.default.createElement("div",{id:storyBlockIdFromId(story.id)},import_react42.default.createElement(Story,{...storyProps}))};var usePreviewProps=({withSource,mdxSource,children,...props},docsContext,sourceContext)=>{let storyIds=import_react43.Children.toArray(children).filter(c=>c.props&&(c.props.id||c.props.name||c.props.of)).map(c=>getStoryId2(c.props,docsContext)),isLoading=useStories(storyIds,docsContext).some(s=>!s),sourceProps=useSourceProps(mdxSource?{code:decodeURI(mdxSource)}:{ids:storyIds},docsContext,sourceContext);return withSource==="none"?{isLoading,previewProps:props}:{isLoading,previewProps:{...props,withSource:sourceProps,isExpanded:(withSource||sourceProps.state)==="open"}}},Canvas=props=>{let docsContext=(0,import_react43.useContext)(DocsContext),sourceContext=(0,import_react43.useContext)(SourceContext),{isLoading,previewProps}=usePreviewProps(props,docsContext,sourceContext),{children}=props;return isLoading?import_react43.default.createElement(PreviewSkeleton,null):import_react43.default.createElement(Preview,{...previewProps},children)};var import_react45=__toESM(require("react")),import_docs_tools3=require("@storybook/docs-tools"),import_client_logger5=require("@storybook/client-logger"),import_preview_api3=require("@storybook/preview-api");var import_react44=require("react");var useOf=(of,validTypes=[])=>{let context=(0,import_react44.useContext)(DocsContext),resolved=context.resolveModuleExport(of);if(validTypes.length&&!validTypes.includes(resolved.type)){let prettyType=resolved.type==="component"?"component or unknown":resolved.type;throw new Error(`Invalid value passed to the 'of' prop. The value was resolved to a '${prettyType}' type but the only types for this block are: ${validTypes.join(", ")}`)}return{...resolved,projectAnnotations:context.projectAnnotations}};var DescriptionType=(DescriptionType2=>(DescriptionType2.INFO="info",DescriptionType2.NOTES="notes",DescriptionType2.DOCGEN="docgen",DescriptionType2.AUTO="auto",DescriptionType2))(DescriptionType||{}),DEPRECATION_MIGRATION_LINK="https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#description-block-parametersnotes-and-parametersinfo",getNotes=notes=>notes&&(typeof notes=="string"?notes:(0,import_docs_tools3.str)(notes.markdown)||(0,import_docs_tools3.str)(notes.text)),getInfo=info=>info&&(typeof info=="string"?info:(0,import_docs_tools3.str)(info.text)),noDescription=component=>null,getDescriptionFromResolvedOf=resolvedOf=>{var _a,_b,_c,_d,_e,_f;let{projectAnnotations,...resolvedModule}=resolvedOf;switch(resolvedModule.type){case"story":return((_b=(_a=resolvedModule.story.parameters.docs)==null?void 0:_a.description)==null?void 0:_b.story)||null;case"meta":{let{meta}=resolvedModule.csfFile,metaDescription=(_d=(_c=meta.parameters.docs)==null?void 0:_c.description)==null?void 0:_d.component;return metaDescription||((_e=projectAnnotations.parameters.docs)==null?void 0:_e.extractComponentDescription(meta.component,{component:meta.component,...(0,import_preview_api3.combineParameters)(projectAnnotations.parameters,meta.parameters)}))||null}case"component":{let{component}=resolvedModule;return((_f=projectAnnotations.parameters.docs)==null?void 0:_f.extractComponentDescription(component,{component,...projectAnnotations.parameters}))||null}default:throw new Error(`Unrecognized module type resolved from 'useOf', got: ${resolvedModule.type}`)}},getDescriptionFromDeprecatedProps=({type,markdown,children},{storyById})=>{let{component,parameters}=storyById();if(children||markdown)return children||markdown;let{notes,info,docs}=parameters;(Boolean(notes)||Boolean(info))&&(0,import_client_logger5.deprecate)(`Using 'parameters.notes' or 'parameters.info' properties to describe stories is deprecated. See ${DEPRECATION_MIGRATION_LINK}`);let{extractComponentDescription=noDescription,description}=docs||{},componentDescriptionParameter=description==null?void 0:description.component;if(componentDescriptionParameter)return componentDescriptionParameter;switch(type){case"info":return getInfo(info);case"notes":return getNotes(notes);case"docgen":case"auto":default:return extractComponentDescription(component,{component,...parameters})}},DescriptionContainer=props=>{let{of,type,markdown:markdownProp,children}=props,context=(0,import_react45.useContext)(DocsContext),resolvedOf=useOf(of||"meta"),markdown;return type||markdownProp||children?markdown=getDescriptionFromDeprecatedProps(props,context):markdown=getDescriptionFromResolvedOf(resolvedOf),type&&(0,import_client_logger5.deprecate)(`Manually specifying description type is deprecated. See ${DEPRECATION_MIGRATION_LINK}`),markdownProp&&(0,import_client_logger5.deprecate)(`The 'markdown' prop on the Description block is deprecated. See ${DEPRECATION_MIGRATION_LINK}`),children&&(0,import_client_logger5.deprecate)(`The 'children' prop on the Description block is deprecated. See ${DEPRECATION_MIGRATION_LINK}`),markdown?import_react45.default.createElement(Description,{markdown}):null};var import_react56=__toESM(require("react"));var import_react46=__toESM(require("react")),import_global6=require("@storybook/global"),import_theming26=require("@storybook/theming");var{document:document2,window:globalWindow3}=import_global6.global,DocsContainer=({context,theme,children})=>((0,import_react46.useEffect)(()=>{let url;try{if(url=new URL(globalWindow3.parent.location.toString()),url.hash){let element=document2.getElementById(url.hash.substring(1));element&&setTimeout(()=>{scrollToElement(element)},200)}}catch{}}),import_react46.default.createElement(DocsContext.Provider,{value:context},import_react46.default.createElement(SourceContainer,{channel:context.channel},import_react46.default.createElement(import_theming26.ThemeProvider,{theme:(0,import_theming26.ensure)(theme)},import_react46.default.createElement(DocsWrapper,{className:"sbdocs sbdocs-wrapper"},import_react46.default.createElement(DocsContent,{className:"sbdocs sbdocs-content"},children))))));var import_react55=__toESM(require("react"));var import_react47=__toESM(require("react"));var STORY_KIND_PATH_SEPARATOR=/\s*\/\s*/,extractTitle=title=>{let groups=title.trim().split(STORY_KIND_PATH_SEPARATOR);return groups&&groups[groups.length-1]||title},Title2=({children})=>{let context=(0,import_react47.useContext)(DocsContext),text=children;return text||(text=extractTitle(context.storyById().title)),text?import_react47.default.createElement(Title,{className:"sbdocs-title"},text):null};var import_react48=__toESM(require("react"));var Subtitle2=({children})=>{let docsContext=(0,import_react48.useContext)(DocsContext),{parameters}=docsContext.storyById(),text=children;return text||(text=parameters==null?void 0:parameters.componentSubtitle),text?import_react48.default.createElement(Subtitle,{className:"sbdocs-subtitle"},text):null};var import_react52=__toESM(require("react"));var import_react51=__toESM(require("react"));var import_react50=__toESM(require("react")),import_components36=require("@storybook/components");var import_react49=__toESM(require("react")),import_core_events2=require("@storybook/core-events"),import_components34=require("@storybook/components"),import_global7=require("@storybook/global"),import_theming27=require("@storybook/theming");var{document:document3}=import_global7.global,assertIsFn=val=>{if(typeof val!="function")throw new Error(`Expected story function, got: ${val}`);return val},AddContext=props=>{let{children,...rest}=props,parentContext=import_react49.default.useContext(DocsContext);return import_react49.default.createElement(DocsContext.Provider,{value:{...parentContext,...rest}},children)},CodeOrSourceMdx=({className,children,...rest})=>{if(typeof className!="string"&&(typeof children!="string"||!children.match(/[\n\r]/g)))return import_react49.default.createElement(import_components34.Code,null,children);let language=className&&className.split("-");return import_react49.default.createElement(Source,{language:language&&language[1]||"plaintext",format:!1,code:children,...rest})};function navigate(context,url){context.channel.emit(import_core_events2.NAVIGATE_URL,url)}var A=import_components34.components.a,AnchorInPage=({hash,children})=>{let context=(0,import_react49.useContext)(DocsContext);return import_react49.default.createElement(A,{href:hash,target:"_self",onClick:event=>{let id2=hash.substring(1);document3.getElementById(id2)&&navigate(context,hash)}},children)},AnchorMdx=props=>{let{href,target,children,...rest}=props,context=(0,import_react49.useContext)(DocsContext);if(href){if(href.startsWith("#"))return import_react49.default.createElement(AnchorInPage,{hash:href},children);if(target!=="_blank"&&!href.startsWith("https://"))return import_react49.default.createElement(A,{href,onClick:event=>{event.preventDefault(),navigate(context,event.currentTarget.getAttribute("href"))},target,...rest},children)}return import_react49.default.createElement(A,{...props})},SUPPORTED_MDX_HEADERS=["h1","h2","h3","h4","h5","h6"],OcticonHeaders=SUPPORTED_MDX_HEADERS.reduce((acc,headerType)=>({...acc,[headerType]:(0,import_theming27.styled)(import_components34.components[headerType])({"& svg":{visibility:"hidden"},"&:hover svg":{visibility:"visible"}})}),{}),OcticonAnchor=import_theming27.styled.a(()=>({float:"left",paddingRight:"4px",marginLeft:"-20px",color:"inherit"})),HeaderWithOcticonAnchor=({as,id:id2,children,...rest})=>{let context=(0,import_react49.useContext)(DocsContext),OcticonHeader=OcticonHeaders[as],hash=`#${id2}`;return import_react49.default.createElement(OcticonHeader,{id:id2,...rest},import_react49.default.createElement(OcticonAnchor,{"aria-hidden":"true",href:hash,tabIndex:-1,target:"_self",onClick:event=>{document3.getElementById(id2)&&navigate(context,hash)}},import_react49.default.createElement("svg",{viewBox:"0 0 16 16",version:"1.1",width:"16",height:"16","aria-hidden":"true",fill:"currentColor"},import_react49.default.createElement("path",{fillRule:"evenodd",d:"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"}))),children)},HeaderMdx=props=>{let{as,id:id2,children,...rest}=props;if(id2)return import_react49.default.createElement(HeaderWithOcticonAnchor,{as,id:id2,...rest},children);let Header=import_components34.components[as];return import_react49.default.createElement(Header,{...props})},HeadersMdx=SUPPORTED_MDX_HEADERS.reduce((acc,headerType)=>({...acc,[headerType]:props=>import_react49.default.createElement(HeaderMdx,{as:headerType,...props})}),{});var Subheading=({children,disableAnchor})=>{if(disableAnchor||typeof children!="string")return import_react50.default.createElement(import_components36.H3,null,children);let tagID=children.toLowerCase().replace(/[^a-z0-9]/gi,"-");return import_react50.default.createElement(HeaderMdx,{as:"h3",id:tagID},children)};var DocsStory=({id:id2,name,expanded=!0,withToolbar=!1,parameters={}})=>{var _a;let description,{docs}=parameters;expanded&&docs&&(description=(_a=docs.description)==null?void 0:_a.story);let subheading=expanded&&name;return import_react51.default.createElement(Anchor,{storyId:id2},subheading&&import_react51.default.createElement(Subheading,null,subheading),description&&import_react51.default.createElement(DescriptionContainer,{markdown:description}),import_react51.default.createElement(Canvas,{withToolbar},import_react51.default.createElement(Story2,{id:id2,parameters})))};var Primary=({name})=>{let docsContext=(0,import_react52.useContext)(DocsContext),storyId=name&&docsContext.storyIdByName(name),story=docsContext.storyById(storyId);return story?import_react52.default.createElement(DocsStory,{...story,expanded:!1,withToolbar:!0}):null};var import_react54=__toESM(require("react"));var import_react53=__toESM(require("react")),import_components37=require("@storybook/components");var Heading=({children,disableAnchor})=>{if(disableAnchor||typeof children!="string")return import_react53.default.createElement(import_components37.H2,null,children);let tagID=children.toLowerCase().replace(/[^a-z0-9]/gi,"-");return import_react53.default.createElement(HeaderMdx,{as:"h2",id:tagID},children)};var Stories=({title,includePrimary=!1})=>{let{componentStories}=(0,import_react54.useContext)(DocsContext),stories=componentStories();return stories=stories.filter(story=>{var _a,_b;return!((_b=(_a=story.parameters)==null?void 0:_a.docs)!=null&&_b.disable)}),includePrimary||(stories=stories.slice(1)),!stories||stories.length===0?null:import_react54.default.createElement(import_react54.default.Fragment,null,import_react54.default.createElement(Heading,null,title),stories.map(story=>story&&import_react54.default.createElement(DocsStory,{key:story.id,...story,expanded:!0})))};Stories.defaultProps={title:"Stories"};var DocsPage=()=>import_react55.default.createElement(import_react55.default.Fragment,null,import_react55.default.createElement(Title2,null),import_react55.default.createElement(Subtitle2,null),import_react55.default.createElement(DescriptionContainer,null),import_react55.default.createElement(Primary,null),import_react55.default.createElement(ArgsTable2,{story:PRIMARY_STORY}),import_react55.default.createElement(Stories,null));var Docs=({docsParameter,context})=>{let Container=docsParameter.container||DocsContainer,Page=docsParameter.page||DocsPage;return import_react56.default.createElement(Container,{context,theme:docsParameter.theme},import_react56.default.createElement(Page,null))};var import_react57=__toESM(require("react")),import_preview_api6=require("@storybook/preview-api");var import_preview_api5=require("@storybook/preview-api"),import_channels=require("@storybook/channels");var import_preview_api4=require("@storybook/preview-api"),ExternalDocsContext=class extends import_preview_api4.DocsContext{constructor(channel,store,renderStoryToElement,processMetaExports){super(channel,store,renderStoryToElement,[]);this.channel=channel;this.store=store;this.renderStoryToElement=renderStoryToElement;this.processMetaExports=processMetaExports;this.referenceMeta=(metaExports,attach)=>{let csfFile=this.processMetaExports(metaExports);this.referenceCSFFile(csfFile),super.referenceMeta(metaExports,attach)}}};var ConstantMap=class{constructor(prefix){this.prefix=prefix;this.entries=new Map}get(key){return this.entries.has(key)||this.entries.set(key,`${this.prefix}${this.entries.size}`),this.entries.get(key)}},ExternalPreview=class extends import_preview_api5.Preview{constructor(projectAnnotations){super(new import_channels.Channel);this.projectAnnotations=projectAnnotations;this.importPaths=new ConstantMap("./importPath/");this.titles=new ConstantMap("title-");this.storyIndex={v:4,entries:{}};this.moduleExportsByImportPath={};this.processMetaExports=metaExports=>{let importPath=this.importPaths.get(metaExports);this.moduleExportsByImportPath[importPath]=metaExports;let title=metaExports.default.title||this.titles.get(metaExports),csfFile=this.storyStore.processCSFFileWithCache(metaExports,importPath,title);return Object.values(csfFile.stories).forEach(({id:id2,name})=>{this.storyIndex.entries[id2]={id:id2,importPath,title,name,type:"story"}}),this.onStoriesChanged({storyIndex:this.storyIndex}),csfFile};this.docsContext=()=>new ExternalDocsContext(this.channel,this.storyStore,this.renderStoryToElement.bind(this),this.processMetaExports.bind(this));this.initialize({getStoryIndex:()=>this.storyIndex,importFn:path=>Promise.resolve(this.moduleExportsByImportPath[path]),getProjectAnnotations:()=>(0,import_preview_api5.composeConfigs)([{parameters:{docs:{inlineStories:!0}}},this.projectAnnotations])})}};function usePreview(projectAnnotations){let previewRef=(0,import_react57.useRef)();return previewRef.current||(previewRef.current=new ExternalPreview(projectAnnotations)),previewRef.current}var ExternalDocs=({projectAnnotationsList,children})=>{var _a;let projectAnnotations=(0,import_preview_api6.composeConfigs)(projectAnnotationsList),preview2=usePreview(projectAnnotations),docsParameter={...(_a=projectAnnotations.parameters)==null?void 0:_a.docs,page:()=>children};return import_react57.default.createElement(Docs,{docsParameter,context:preview2.docsContext()})};var import_react58=__toESM(require("react")),import_theming28=require("@storybook/theming");var preview,ExternalDocsContainer=({projectAnnotations,children})=>(preview||(preview=new ExternalPreview(projectAnnotations)),import_react58.default.createElement(DocsContext.Provider,{value:preview.docsContext()},import_react58.default.createElement(import_theming28.ThemeProvider,{theme:(0,import_theming28.ensure)(import_theming28.themes.light)},children)));var import_react59=__toESM(require("react"));var Meta=({of})=>{let context=(0,import_react59.useContext)(DocsContext);of&&context.referenceMeta(of,!0);try{let primary=context.storyById();return import_react59.default.createElement(Anchor,{storyId:primary.id})}catch{return null}};var import_react60=__toESM(require("react")),Unstyled=props=>import_react60.default.createElement("div",{...props,className:"sb-unstyled"});var import_react61=__toESM(require("react")),Wrapper9=({children})=>import_react61.default.createElement("div",{style:{fontFamily:"sans-serif"}},children);0&&(module.exports={AddContext,Anchor,AnchorMdx,ArgsTable,BooleanControl,Canvas,CodeOrSourceMdx,ColorControl,ColorItem,ColorPalette,ComponentsTable,DateControl,Description,DescriptionType,Docs,DocsContainer,DocsContext,DocsPage,DocsStory,ExternalDocs,ExternalDocsContainer,FilesControl,HeaderMdx,HeadersMdx,Heading,IconGallery,IconItem,Meta,NoControlsWarning,NumberControl,ObjectControl,OptionsControl,PRIMARY_STORY,Primary,PureArgsTable,RangeControl,Source,SourceContainer,SourceContext,SourceState,Stories,Story,StoryTable,Subheading,Subtitle,TextControl,Title,Typeset,Unstyled,Wrapper,anchorBlockIdFromId,assertIsFn,extractComponentArgTypes,extractTitle,format,formatDate,formatTime,getComponent,getStoryId,getStoryProps,parse,parseDate,parseTime,storyBlockIdFromId,useOf,useSourceProps});
25
+ `));let state=getSourceState(stories),{docs:docsParameters={}}=parameters,{source:sourceParameters={}}=docsParameters,{language:docsLanguage=null}=sourceParameters;return source?{code:source,state,format:format2,language:props.language||docsLanguage||"jsx",dark:props.dark||!1}:{error:"Oh no! The source is not available.",state}},Source2=props=>{let sourceContext=(0,import_react41.useContext)(SourceContext),docsContext=(0,import_react41.useContext)(DocsContext),sourceProps=useSourceProps(props,docsContext,sourceContext);return import_react41.default.createElement(Source,{...sourceProps})};var import_react42=__toESM(require("react"));var storyBlockIdFromId=storyId=>`story--${storyId}`,getStoryId2=(props,context)=>{let{id:id2,of,meta}=props;if(of){meta&&context.referenceMeta(meta,!1);let resolved=context.resolveModuleExport(of);if(resolved.type!=="story")throw new Error("Unexpected component/module/meta exports passed to `Story` block.");return resolved.story.id}let{name}=props;return id2||context.storyIdByName(name)},getStoryProps=({height,inline},story)=>{let{name:storyName,parameters={}}=story||{},{docs={}}=parameters;if(docs.disable)return null;let{inlineStories=!1,iframeHeight=100}=docs,storyIsInline=typeof inline=="boolean"?inline:inlineStories;return{inline:storyIsInline,id:story==null?void 0:story.id,height:height||(storyIsInline?void 0:iframeHeight),title:storyName,...storyIsInline&&{parameters}}},Story2=props=>{let context=(0,import_react42.useContext)(DocsContext),storyRef=(0,import_react42.useRef)(),storyId=getStoryId2(props,context),story=useStory(storyId,context),[showLoader,setShowLoader]=(0,import_react42.useState)(!0);if((0,import_react42.useEffect)(()=>{if(!(story&&storyRef.current))return()=>{};let element=storyRef.current,{autoplay}=story.parameters.docs||{},cleanup=context.renderStoryToElement(story,element,{autoplay});return setShowLoader(!1),()=>{cleanup()}},[context,story]),!story)return import_react42.default.createElement(StorySkeleton,null);let storyProps=getStoryProps(props,story);if(!storyProps)return null;if(storyProps.inline){let htmlContents="<span></span>",{height}=storyProps;return import_react42.default.createElement("div",{id:storyBlockIdFromId(story.id),className:"sb-story"},height?import_react42.default.createElement("style",null,`#story--${story.id} { min-height: ${height}; transform: translateZ(0); overflow: auto }`):null,showLoader&&import_react42.default.createElement(StorySkeleton,null),import_react42.default.createElement("div",{ref:storyRef,"data-name":story.name,dangerouslySetInnerHTML:{__html:htmlContents}}))}return import_react42.default.createElement("div",{id:storyBlockIdFromId(story.id)},import_react42.default.createElement(Story,{...storyProps}))};var usePreviewProps=({withSource,mdxSource,children,...props},docsContext,sourceContext)=>{let storyIds=import_react43.Children.toArray(children).filter(c=>c.props&&(c.props.id||c.props.name||c.props.of)).map(c=>getStoryId2(c.props,docsContext)),isLoading=useStories(storyIds,docsContext).some(s=>!s),sourceProps=useSourceProps(mdxSource?{code:decodeURI(mdxSource)}:{ids:storyIds},docsContext,sourceContext);return withSource==="none"?{isLoading,previewProps:props}:{isLoading,previewProps:{...props,withSource:sourceProps,isExpanded:(withSource||sourceProps.state)==="open"}}},Canvas=props=>{let docsContext=(0,import_react43.useContext)(DocsContext),sourceContext=(0,import_react43.useContext)(SourceContext),{isLoading,previewProps}=usePreviewProps(props,docsContext,sourceContext),{children}=props;return isLoading?import_react43.default.createElement(PreviewSkeleton,null):import_react43.default.createElement(Preview,{...previewProps},children)};var import_react45=__toESM(require("react")),import_docs_tools3=require("@storybook/docs-tools"),import_client_logger5=require("@storybook/client-logger"),import_preview_api3=require("@storybook/preview-api");var import_react44=require("react");var useOf=(of,validTypes=[])=>{let context=(0,import_react44.useContext)(DocsContext),resolved=context.resolveModuleExport(of);if(validTypes.length&&!validTypes.includes(resolved.type)){let prettyType=resolved.type==="component"?"component or unknown":resolved.type;throw new Error(`Invalid value passed to the 'of' prop. The value was resolved to a '${prettyType}' type but the only types for this block are: ${validTypes.join(", ")}`)}return{...resolved,projectAnnotations:context.projectAnnotations}};var DescriptionType=(DescriptionType2=>(DescriptionType2.INFO="info",DescriptionType2.NOTES="notes",DescriptionType2.DOCGEN="docgen",DescriptionType2.AUTO="auto",DescriptionType2))(DescriptionType||{}),DEPRECATION_MIGRATION_LINK="https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#description-block-parametersnotes-and-parametersinfo",getNotes=notes=>notes&&(typeof notes=="string"?notes:(0,import_docs_tools3.str)(notes.markdown)||(0,import_docs_tools3.str)(notes.text)),getInfo=info=>info&&(typeof info=="string"?info:(0,import_docs_tools3.str)(info.text)),noDescription=component=>null,getDescriptionFromResolvedOf=resolvedOf=>{var _a,_b,_c,_d,_e,_f,_g,_h;let{projectAnnotations,...resolvedModule}=resolvedOf;switch(resolvedModule.type){case"story":return((_b=(_a=resolvedModule.story.parameters.docs)==null?void 0:_a.description)==null?void 0:_b.story)||null;case"meta":{let{meta}=resolvedModule.csfFile,metaDescription=(_d=(_c=meta.parameters.docs)==null?void 0:_c.description)==null?void 0:_d.component;return metaDescription||((_f=(_e=projectAnnotations.parameters.docs)==null?void 0:_e.extractComponentDescription)==null?void 0:_f.call(_e,meta.component,{component:meta.component,...(0,import_preview_api3.combineParameters)(projectAnnotations.parameters,meta.parameters)}))||null}case"component":{let{component}=resolvedModule;return((_h=(_g=projectAnnotations.parameters.docs)==null?void 0:_g.extractComponentDescription)==null?void 0:_h.call(_g,component,{component,...projectAnnotations.parameters}))||null}default:throw new Error(`Unrecognized module type resolved from 'useOf', got: ${resolvedModule.type}`)}},getDescriptionFromDeprecatedProps=({type,markdown,children},{storyById})=>{let{component,parameters}=storyById();if(children||markdown)return children||markdown;let{notes,info,docs}=parameters;(Boolean(notes)||Boolean(info))&&(0,import_client_logger5.deprecate)(`Using 'parameters.notes' or 'parameters.info' properties to describe stories is deprecated. See ${DEPRECATION_MIGRATION_LINK}`);let{extractComponentDescription=noDescription,description}=docs||{},componentDescriptionParameter=description==null?void 0:description.component;if(componentDescriptionParameter)return componentDescriptionParameter;switch(type){case"info":return getInfo(info);case"notes":return getNotes(notes);case"docgen":case"auto":default:return extractComponentDescription(component,{component,...parameters})}},DescriptionContainer=props=>{let{of,type,markdown:markdownProp,children}=props,context=(0,import_react45.useContext)(DocsContext),resolvedOf=useOf(of||"meta"),markdown;return type||markdownProp||children?markdown=getDescriptionFromDeprecatedProps(props,context):markdown=getDescriptionFromResolvedOf(resolvedOf),type&&(0,import_client_logger5.deprecate)(`Manually specifying description type is deprecated. See ${DEPRECATION_MIGRATION_LINK}`),markdownProp&&(0,import_client_logger5.deprecate)(`The 'markdown' prop on the Description block is deprecated. See ${DEPRECATION_MIGRATION_LINK}`),children&&(0,import_client_logger5.deprecate)(`The 'children' prop on the Description block is deprecated. See ${DEPRECATION_MIGRATION_LINK}`),markdown?import_react45.default.createElement(Description,{markdown}):null};var import_react56=__toESM(require("react"));var import_react46=__toESM(require("react")),import_global6=require("@storybook/global"),import_theming26=require("@storybook/theming");var{document:document2,window:globalWindow3}=import_global6.global,DocsContainer=({context,theme,children})=>((0,import_react46.useEffect)(()=>{let url;try{if(url=new URL(globalWindow3.parent.location.toString()),url.hash){let element=document2.getElementById(url.hash.substring(1));element&&setTimeout(()=>{scrollToElement(element)},200)}}catch{}}),import_react46.default.createElement(DocsContext.Provider,{value:context},import_react46.default.createElement(SourceContainer,{channel:context.channel},import_react46.default.createElement(import_theming26.ThemeProvider,{theme:(0,import_theming26.ensure)(theme)},import_react46.default.createElement(DocsWrapper,{className:"sbdocs sbdocs-wrapper"},import_react46.default.createElement(DocsContent,{className:"sbdocs sbdocs-content"},children))))));var import_react55=__toESM(require("react"));var import_react47=__toESM(require("react"));var STORY_KIND_PATH_SEPARATOR=/\s*\/\s*/,extractTitle=title=>{let groups=title.trim().split(STORY_KIND_PATH_SEPARATOR);return groups&&groups[groups.length-1]||title},Title2=({children})=>{let context=(0,import_react47.useContext)(DocsContext),text=children;return text||(text=extractTitle(context.storyById().title)),text?import_react47.default.createElement(Title,{className:"sbdocs-title"},text):null};var import_react48=__toESM(require("react"));var Subtitle2=({children})=>{let docsContext=(0,import_react48.useContext)(DocsContext),{parameters}=docsContext.storyById(),text=children;return text||(text=parameters==null?void 0:parameters.componentSubtitle),text?import_react48.default.createElement(Subtitle,{className:"sbdocs-subtitle"},text):null};var import_react52=__toESM(require("react"));var import_react51=__toESM(require("react"));var import_react50=__toESM(require("react")),import_components36=require("@storybook/components");var import_react49=__toESM(require("react")),import_core_events2=require("@storybook/core-events"),import_components34=require("@storybook/components"),import_global7=require("@storybook/global"),import_theming27=require("@storybook/theming");var{document:document3}=import_global7.global,assertIsFn=val=>{if(typeof val!="function")throw new Error(`Expected story function, got: ${val}`);return val},AddContext=props=>{let{children,...rest}=props,parentContext=import_react49.default.useContext(DocsContext);return import_react49.default.createElement(DocsContext.Provider,{value:{...parentContext,...rest}},children)},CodeOrSourceMdx=({className,children,...rest})=>{if(typeof className!="string"&&(typeof children!="string"||!children.match(/[\n\r]/g)))return import_react49.default.createElement(import_components34.Code,null,children);let language=className&&className.split("-");return import_react49.default.createElement(Source,{language:language&&language[1]||"plaintext",format:!1,code:children,...rest})};function navigate(context,url){context.channel.emit(import_core_events2.NAVIGATE_URL,url)}var A=import_components34.components.a,AnchorInPage=({hash,children})=>{let context=(0,import_react49.useContext)(DocsContext);return import_react49.default.createElement(A,{href:hash,target:"_self",onClick:event=>{let id2=hash.substring(1);document3.getElementById(id2)&&navigate(context,hash)}},children)},AnchorMdx=props=>{let{href,target,children,...rest}=props,context=(0,import_react49.useContext)(DocsContext);if(href){if(href.startsWith("#"))return import_react49.default.createElement(AnchorInPage,{hash:href},children);if(target!=="_blank"&&!href.startsWith("https://"))return import_react49.default.createElement(A,{href,onClick:event=>{event.preventDefault(),navigate(context,event.currentTarget.getAttribute("href"))},target,...rest},children)}return import_react49.default.createElement(A,{...props})},SUPPORTED_MDX_HEADERS=["h1","h2","h3","h4","h5","h6"],OcticonHeaders=SUPPORTED_MDX_HEADERS.reduce((acc,headerType)=>({...acc,[headerType]:(0,import_theming27.styled)(import_components34.components[headerType])({"& svg":{visibility:"hidden"},"&:hover svg":{visibility:"visible"}})}),{}),OcticonAnchor=import_theming27.styled.a(()=>({float:"left",paddingRight:"4px",marginLeft:"-20px",color:"inherit"})),HeaderWithOcticonAnchor=({as,id:id2,children,...rest})=>{let context=(0,import_react49.useContext)(DocsContext),OcticonHeader=OcticonHeaders[as],hash=`#${id2}`;return import_react49.default.createElement(OcticonHeader,{id:id2,...rest},import_react49.default.createElement(OcticonAnchor,{"aria-hidden":"true",href:hash,tabIndex:-1,target:"_self",onClick:event=>{document3.getElementById(id2)&&navigate(context,hash)}},import_react49.default.createElement("svg",{viewBox:"0 0 16 16",version:"1.1",width:"16",height:"16","aria-hidden":"true",fill:"currentColor"},import_react49.default.createElement("path",{fillRule:"evenodd",d:"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"}))),children)},HeaderMdx=props=>{let{as,id:id2,children,...rest}=props;if(id2)return import_react49.default.createElement(HeaderWithOcticonAnchor,{as,id:id2,...rest},children);let Header=import_components34.components[as];return import_react49.default.createElement(Header,{...props})},HeadersMdx=SUPPORTED_MDX_HEADERS.reduce((acc,headerType)=>({...acc,[headerType]:props=>import_react49.default.createElement(HeaderMdx,{as:headerType,...props})}),{});var Subheading=({children,disableAnchor})=>{if(disableAnchor||typeof children!="string")return import_react50.default.createElement(import_components36.H3,null,children);let tagID=children.toLowerCase().replace(/[^a-z0-9]/gi,"-");return import_react50.default.createElement(HeaderMdx,{as:"h3",id:tagID},children)};var DocsStory=({id:id2,name,expanded=!0,withToolbar=!1,parameters={}})=>{var _a;let description,{docs}=parameters;expanded&&docs&&(description=(_a=docs.description)==null?void 0:_a.story);let subheading=expanded&&name;return import_react51.default.createElement(Anchor,{storyId:id2},subheading&&import_react51.default.createElement(Subheading,null,subheading),description&&import_react51.default.createElement(DescriptionContainer,{markdown:description}),import_react51.default.createElement(Canvas,{withToolbar},import_react51.default.createElement(Story2,{id:id2,parameters})))};var Primary=({name})=>{let docsContext=(0,import_react52.useContext)(DocsContext),storyId=name&&docsContext.storyIdByName(name),story=docsContext.storyById(storyId);return story?import_react52.default.createElement(DocsStory,{...story,expanded:!1,withToolbar:!0}):null};var import_react54=__toESM(require("react"));var import_react53=__toESM(require("react")),import_components37=require("@storybook/components");var Heading=({children,disableAnchor})=>{if(disableAnchor||typeof children!="string")return import_react53.default.createElement(import_components37.H2,null,children);let tagID=children.toLowerCase().replace(/[^a-z0-9]/gi,"-");return import_react53.default.createElement(HeaderMdx,{as:"h2",id:tagID},children)};var Stories=({title,includePrimary=!1})=>{let{componentStories}=(0,import_react54.useContext)(DocsContext),stories=componentStories();return stories=stories.filter(story=>{var _a,_b;return!((_b=(_a=story.parameters)==null?void 0:_a.docs)!=null&&_b.disable)}),includePrimary||(stories=stories.slice(1)),!stories||stories.length===0?null:import_react54.default.createElement(import_react54.default.Fragment,null,import_react54.default.createElement(Heading,null,title),stories.map(story=>story&&import_react54.default.createElement(DocsStory,{key:story.id,...story,expanded:!0})))};Stories.defaultProps={title:"Stories"};var DocsPage=()=>import_react55.default.createElement(import_react55.default.Fragment,null,import_react55.default.createElement(Title2,null),import_react55.default.createElement(Subtitle2,null),import_react55.default.createElement(DescriptionContainer,null),import_react55.default.createElement(Primary,null),import_react55.default.createElement(ArgsTable2,{story:PRIMARY_STORY}),import_react55.default.createElement(Stories,null));var Docs=({docsParameter,context})=>{let Container=docsParameter.container||DocsContainer,Page=docsParameter.page||DocsPage;return import_react56.default.createElement(Container,{context,theme:docsParameter.theme},import_react56.default.createElement(Page,null))};var import_react57=__toESM(require("react")),import_preview_api6=require("@storybook/preview-api");var import_preview_api5=require("@storybook/preview-api"),import_channels=require("@storybook/channels");var import_preview_api4=require("@storybook/preview-api"),ExternalDocsContext=class extends import_preview_api4.DocsContext{constructor(channel,store,renderStoryToElement,processMetaExports){super(channel,store,renderStoryToElement,[]);this.channel=channel;this.store=store;this.renderStoryToElement=renderStoryToElement;this.processMetaExports=processMetaExports;this.referenceMeta=(metaExports,attach)=>{let csfFile=this.processMetaExports(metaExports);this.referenceCSFFile(csfFile),super.referenceMeta(metaExports,attach)}}};var ConstantMap=class{constructor(prefix){this.prefix=prefix;this.entries=new Map}get(key){return this.entries.has(key)||this.entries.set(key,`${this.prefix}${this.entries.size}`),this.entries.get(key)}},ExternalPreview=class extends import_preview_api5.Preview{constructor(projectAnnotations){super(new import_channels.Channel);this.projectAnnotations=projectAnnotations;this.importPaths=new ConstantMap("./importPath/");this.titles=new ConstantMap("title-");this.storyIndex={v:4,entries:{}};this.moduleExportsByImportPath={};this.processMetaExports=metaExports=>{let importPath=this.importPaths.get(metaExports);this.moduleExportsByImportPath[importPath]=metaExports;let title=metaExports.default.title||this.titles.get(metaExports),csfFile=this.storyStore.processCSFFileWithCache(metaExports,importPath,title);return Object.values(csfFile.stories).forEach(({id:id2,name})=>{this.storyIndex.entries[id2]={id:id2,importPath,title,name,type:"story"}}),this.onStoriesChanged({storyIndex:this.storyIndex}),csfFile};this.docsContext=()=>new ExternalDocsContext(this.channel,this.storyStore,this.renderStoryToElement.bind(this),this.processMetaExports.bind(this));this.initialize({getStoryIndex:()=>this.storyIndex,importFn:path=>Promise.resolve(this.moduleExportsByImportPath[path]),getProjectAnnotations:()=>(0,import_preview_api5.composeConfigs)([{parameters:{docs:{inlineStories:!0}}},this.projectAnnotations])})}};function usePreview(projectAnnotations){let previewRef=(0,import_react57.useRef)();return previewRef.current||(previewRef.current=new ExternalPreview(projectAnnotations)),previewRef.current}var ExternalDocs=({projectAnnotationsList,children})=>{var _a;let projectAnnotations=(0,import_preview_api6.composeConfigs)(projectAnnotationsList),preview2=usePreview(projectAnnotations),docsParameter={...(_a=projectAnnotations.parameters)==null?void 0:_a.docs,page:()=>children};return import_react57.default.createElement(Docs,{docsParameter,context:preview2.docsContext()})};var import_react58=__toESM(require("react")),import_theming28=require("@storybook/theming");var preview,ExternalDocsContainer=({projectAnnotations,children})=>(preview||(preview=new ExternalPreview(projectAnnotations)),import_react58.default.createElement(DocsContext.Provider,{value:preview.docsContext()},import_react58.default.createElement(import_theming28.ThemeProvider,{theme:(0,import_theming28.ensure)(import_theming28.themes.light)},children)));var import_react59=__toESM(require("react"));var Meta=({of})=>{let context=(0,import_react59.useContext)(DocsContext);of&&context.referenceMeta(of,!0);try{let primary=context.storyById();return import_react59.default.createElement(Anchor,{storyId:primary.id})}catch{return null}};var import_react60=__toESM(require("react")),Unstyled=props=>import_react60.default.createElement("div",{...props,className:"sb-unstyled"});var import_react61=__toESM(require("react")),Wrapper9=({children})=>import_react61.default.createElement("div",{style:{fontFamily:"sans-serif"}},children);0&&(module.exports={AddContext,Anchor,AnchorMdx,ArgsTable,BooleanControl,Canvas,CodeOrSourceMdx,ColorControl,ColorItem,ColorPalette,ComponentsTable,DateControl,Description,DescriptionType,Docs,DocsContainer,DocsContext,DocsPage,DocsStory,ExternalDocs,ExternalDocsContainer,FilesControl,HeaderMdx,HeadersMdx,Heading,IconGallery,IconItem,Meta,NoControlsWarning,NumberControl,ObjectControl,OptionsControl,PRIMARY_STORY,Primary,PureArgsTable,RangeControl,Source,SourceContainer,SourceContext,SourceState,Stories,Story,StoryTable,Subheading,Subtitle,TextControl,Title,Typeset,Unstyled,Wrapper,anchorBlockIdFromId,assertIsFn,extractComponentArgTypes,extractTitle,format,formatDate,formatTime,getComponent,getStoryId,getStoryProps,parse,parseDate,parseTime,storyBlockIdFromId,useOf,useSourceProps});
package/dist/index.mjs CHANGED
@@ -22,4 +22,4 @@ import{getControlId,getControlSetterButtonId}from"./chunk-GWAJ4KRU.mjs";import R
22
22
  `)}var storyIdToSanitizedStoryName=id=>id.replace(/^.*?--/,""),extract=(targetId,{source,locationsMap})=>{if(!locationsMap)return source;let sanitizedStoryName=storyIdToSanitizedStoryName(targetId),location=locationsMap[sanitizedStoryName];if(!location)return source;let lines=source.split(`
23
23
  `);return extractSource(location,lines)},enhanceSource=story=>{let{id,parameters}=story,{storySource,docs={}}=parameters,{transformSource}=docs;if(!storySource?.source||docs.source?.code)return null;let input=extract(id,storySource),code=transformSource?transformSource(input,story):input;return{docs:combineParameters(docs,{source:{code}})}};var SourceState=(SourceState2=>(SourceState2.OPEN="open",SourceState2.CLOSED="closed",SourceState2.NONE="none",SourceState2))(SourceState||{}),getSourceState=stories=>{let states=stories.map(story=>story.parameters.docs?.source?.state).filter(Boolean);return states.length===0?"closed":states[0]},getStorySource=(storyId,sourceContext)=>{let{sources}=sourceContext;return sources?.[storyId]||{code:"",format:!1}},getSnippet=(snippet,story)=>{if(!story)return snippet;let{parameters}=story,isArgsStory=parameters.__isArgsStory,type=parameters.docs?.source?.type||SourceType.AUTO,userCode=parameters.docs?.source?.code;return userCode!==void 0?userCode:type===SourceType.DYNAMIC||type===SourceType.AUTO&&snippet&&isArgsStory?parameters.docs?.transformSource?.(snippet,story)||snippet:(enhanceSource(story)||parameters)?.docs?.source?.code||""},useSourceProps=(props,docsContext,sourceContext)=>{let{id:primaryId,parameters}=docsContext.storyById(),codeProps=props,singleProps=props,multiProps=props,{format:format2,code:source}=codeProps,storyIds=(multiProps.ids||[singleProps.id||primaryId]).map(targetId=>targetId),stories=useStories(storyIds,docsContext);if(!stories.every(Boolean))return{error:"Oh no! The source is not available.",state:"none"};source||({format:format2}=getStorySource(storyIds[0],sourceContext),source=storyIds.map((storyId,idx)=>{let{code:storySource}=getStorySource(storyId,sourceContext),storyObj=stories[idx];return getSnippet(storySource,storyObj)}).join(`
24
24
 
25
- `));let state=getSourceState(stories),{docs:docsParameters={}}=parameters,{source:sourceParameters={}}=docsParameters,{language:docsLanguage=null}=sourceParameters;return source?{code:source,state,format:format2,language:props.language||docsLanguage||"jsx",dark:props.dark||!1}:{error:"Oh no! The source is not available.",state}},Source2=props=>{let sourceContext=useContext2(SourceContext),docsContext=useContext2(DocsContext),sourceProps=useSourceProps(props,docsContext,sourceContext);return React37.createElement(Source,{...sourceProps})};import React38,{useContext as useContext3,useRef as useRef5,useEffect as useEffect10,useState as useState13}from"react";var storyBlockIdFromId=storyId=>`story--${storyId}`,getStoryId2=(props,context)=>{let{id,of,meta}=props;if(of){meta&&context.referenceMeta(meta,!1);let resolved=context.resolveModuleExport(of);if(resolved.type!=="story")throw new Error("Unexpected component/module/meta exports passed to `Story` block.");return resolved.story.id}let{name}=props;return id||context.storyIdByName(name)},getStoryProps=({height,inline},story)=>{let{name:storyName,parameters={}}=story||{},{docs={}}=parameters;if(docs.disable)return null;let{inlineStories=!1,iframeHeight=100}=docs,storyIsInline=typeof inline=="boolean"?inline:inlineStories;return{inline:storyIsInline,id:story?.id,height:height||(storyIsInline?void 0:iframeHeight),title:storyName,...storyIsInline&&{parameters}}},Story2=props=>{let context=useContext3(DocsContext),storyRef=useRef5(),storyId=getStoryId2(props,context),story=useStory(storyId,context),[showLoader,setShowLoader]=useState13(!0);if(useEffect10(()=>{if(!(story&&storyRef.current))return()=>{};let element=storyRef.current,{autoplay}=story.parameters.docs||{},cleanup=context.renderStoryToElement(story,element,{autoplay});return setShowLoader(!1),()=>{cleanup()}},[context,story]),!story)return React38.createElement(StorySkeleton,null);let storyProps=getStoryProps(props,story);if(!storyProps)return null;if(storyProps.inline){let htmlContents="<span></span>",{height}=storyProps;return React38.createElement("div",{id:storyBlockIdFromId(story.id),className:"sb-story"},height?React38.createElement("style",null,`#story--${story.id} { min-height: ${height}; transform: translateZ(0); overflow: auto }`):null,showLoader&&React38.createElement(StorySkeleton,null),React38.createElement("div",{ref:storyRef,"data-name":story.name,dangerouslySetInnerHTML:{__html:htmlContents}}))}return React38.createElement("div",{id:storyBlockIdFromId(story.id)},React38.createElement(Story,{...storyProps}))};var usePreviewProps=({withSource,mdxSource,children,...props},docsContext,sourceContext)=>{let storyIds=Children2.toArray(children).filter(c=>c.props&&(c.props.id||c.props.name||c.props.of)).map(c=>getStoryId2(c.props,docsContext)),isLoading=useStories(storyIds,docsContext).some(s=>!s),sourceProps=useSourceProps(mdxSource?{code:decodeURI(mdxSource)}:{ids:storyIds},docsContext,sourceContext);return withSource==="none"?{isLoading,previewProps:props}:{isLoading,previewProps:{...props,withSource:sourceProps,isExpanded:(withSource||sourceProps.state)==="open"}}},Canvas=props=>{let docsContext=useContext4(DocsContext),sourceContext=useContext4(SourceContext),{isLoading,previewProps}=usePreviewProps(props,docsContext,sourceContext),{children}=props;return isLoading?React39.createElement(PreviewSkeleton,null):React39.createElement(Preview,{...previewProps},children)};import React40,{useContext as useContext6}from"react";import{str}from"@storybook/docs-tools";import{deprecate}from"@storybook/client-logger";import{combineParameters as combineParameters2}from"@storybook/preview-api";import{useContext as useContext5}from"react";var useOf=(of,validTypes=[])=>{let context=useContext5(DocsContext),resolved=context.resolveModuleExport(of);if(validTypes.length&&!validTypes.includes(resolved.type)){let prettyType=resolved.type==="component"?"component or unknown":resolved.type;throw new Error(`Invalid value passed to the 'of' prop. The value was resolved to a '${prettyType}' type but the only types for this block are: ${validTypes.join(", ")}`)}return{...resolved,projectAnnotations:context.projectAnnotations}};var DescriptionType=(DescriptionType2=>(DescriptionType2.INFO="info",DescriptionType2.NOTES="notes",DescriptionType2.DOCGEN="docgen",DescriptionType2.AUTO="auto",DescriptionType2))(DescriptionType||{}),DEPRECATION_MIGRATION_LINK="https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#description-block-parametersnotes-and-parametersinfo",getNotes=notes=>notes&&(typeof notes=="string"?notes:str(notes.markdown)||str(notes.text)),getInfo=info=>info&&(typeof info=="string"?info:str(info.text)),noDescription=component=>null,getDescriptionFromResolvedOf=resolvedOf=>{let{projectAnnotations,...resolvedModule}=resolvedOf;switch(resolvedModule.type){case"story":return resolvedModule.story.parameters.docs?.description?.story||null;case"meta":{let{meta}=resolvedModule.csfFile,metaDescription=meta.parameters.docs?.description?.component;return metaDescription||projectAnnotations.parameters.docs?.extractComponentDescription(meta.component,{component:meta.component,...combineParameters2(projectAnnotations.parameters,meta.parameters)})||null}case"component":{let{component}=resolvedModule;return projectAnnotations.parameters.docs?.extractComponentDescription(component,{component,...projectAnnotations.parameters})||null}default:throw new Error(`Unrecognized module type resolved from 'useOf', got: ${resolvedModule.type}`)}},getDescriptionFromDeprecatedProps=({type,markdown,children},{storyById})=>{let{component,parameters}=storyById();if(children||markdown)return children||markdown;let{notes,info,docs}=parameters;(Boolean(notes)||Boolean(info))&&deprecate(`Using 'parameters.notes' or 'parameters.info' properties to describe stories is deprecated. See ${DEPRECATION_MIGRATION_LINK}`);let{extractComponentDescription=noDescription,description}=docs||{},componentDescriptionParameter=description?.component;if(componentDescriptionParameter)return componentDescriptionParameter;switch(type){case"info":return getInfo(info);case"notes":return getNotes(notes);case"docgen":case"auto":default:return extractComponentDescription(component,{component,...parameters})}},DescriptionContainer=props=>{let{of,type,markdown:markdownProp,children}=props,context=useContext6(DocsContext),resolvedOf=useOf(of||"meta"),markdown;return type||markdownProp||children?markdown=getDescriptionFromDeprecatedProps(props,context):markdown=getDescriptionFromResolvedOf(resolvedOf),type&&deprecate(`Manually specifying description type is deprecated. See ${DEPRECATION_MIGRATION_LINK}`),markdownProp&&deprecate(`The 'markdown' prop on the Description block is deprecated. See ${DEPRECATION_MIGRATION_LINK}`),children&&deprecate(`The 'children' prop on the Description block is deprecated. See ${DEPRECATION_MIGRATION_LINK}`),markdown?React40.createElement(Description,{markdown}):null};import React51 from"react";import React41,{useEffect as useEffect11}from"react";import{global as global6}from"@storybook/global";import{ThemeProvider as ThemeProvider2,ensure as ensureTheme}from"@storybook/theming";var{document:document2,window:globalWindow3}=global6,DocsContainer=({context,theme,children})=>(useEffect11(()=>{let url;try{if(url=new URL(globalWindow3.parent.location.toString()),url.hash){let element=document2.getElementById(url.hash.substring(1));element&&setTimeout(()=>{scrollToElement(element)},200)}}catch{}}),React41.createElement(DocsContext.Provider,{value:context},React41.createElement(SourceContainer,{channel:context.channel},React41.createElement(ThemeProvider2,{theme:ensureTheme(theme)},React41.createElement(DocsWrapper,{className:"sbdocs sbdocs-wrapper"},React41.createElement(DocsContent,{className:"sbdocs sbdocs-content"},children))))));import React50 from"react";import React42,{useContext as useContext7}from"react";var STORY_KIND_PATH_SEPARATOR=/\s*\/\s*/,extractTitle=title=>{let groups=title.trim().split(STORY_KIND_PATH_SEPARATOR);return groups&&groups[groups.length-1]||title},Title2=({children})=>{let context=useContext7(DocsContext),text=children;return text||(text=extractTitle(context.storyById().title)),text?React42.createElement(Title,{className:"sbdocs-title"},text):null};import React43,{useContext as useContext8}from"react";var Subtitle2=({children})=>{let docsContext=useContext8(DocsContext),{parameters}=docsContext.storyById(),text=children;return text||(text=parameters?.componentSubtitle),text?React43.createElement(Subtitle,{className:"sbdocs-subtitle"},text):null};import React47,{useContext as useContext10}from"react";import React46 from"react";import React45 from"react";import{H3}from"@storybook/components";import React44,{useContext as useContext9}from"react";import{NAVIGATE_URL}from"@storybook/core-events";import{Code,components as components2}from"@storybook/components";import{global as global7}from"@storybook/global";import{styled as styled25}from"@storybook/theming";var{document:document3}=global7,assertIsFn=val=>{if(typeof val!="function")throw new Error(`Expected story function, got: ${val}`);return val},AddContext=props=>{let{children,...rest}=props,parentContext=React44.useContext(DocsContext);return React44.createElement(DocsContext.Provider,{value:{...parentContext,...rest}},children)},CodeOrSourceMdx=({className,children,...rest})=>{if(typeof className!="string"&&(typeof children!="string"||!children.match(/[\n\r]/g)))return React44.createElement(Code,null,children);let language=className&&className.split("-");return React44.createElement(Source,{language:language&&language[1]||"plaintext",format:!1,code:children,...rest})};function navigate(context,url){context.channel.emit(NAVIGATE_URL,url)}var A=components2.a,AnchorInPage=({hash,children})=>{let context=useContext9(DocsContext);return React44.createElement(A,{href:hash,target:"_self",onClick:event=>{let id=hash.substring(1);document3.getElementById(id)&&navigate(context,hash)}},children)},AnchorMdx=props=>{let{href,target,children,...rest}=props,context=useContext9(DocsContext);if(href){if(href.startsWith("#"))return React44.createElement(AnchorInPage,{hash:href},children);if(target!=="_blank"&&!href.startsWith("https://"))return React44.createElement(A,{href,onClick:event=>{event.preventDefault(),navigate(context,event.currentTarget.getAttribute("href"))},target,...rest},children)}return React44.createElement(A,{...props})},SUPPORTED_MDX_HEADERS=["h1","h2","h3","h4","h5","h6"],OcticonHeaders=SUPPORTED_MDX_HEADERS.reduce((acc,headerType)=>({...acc,[headerType]:styled25(components2[headerType])({"& svg":{visibility:"hidden"},"&:hover svg":{visibility:"visible"}})}),{}),OcticonAnchor=styled25.a(()=>({float:"left",paddingRight:"4px",marginLeft:"-20px",color:"inherit"})),HeaderWithOcticonAnchor=({as,id,children,...rest})=>{let context=useContext9(DocsContext),OcticonHeader=OcticonHeaders[as],hash=`#${id}`;return React44.createElement(OcticonHeader,{id,...rest},React44.createElement(OcticonAnchor,{"aria-hidden":"true",href:hash,tabIndex:-1,target:"_self",onClick:event=>{document3.getElementById(id)&&navigate(context,hash)}},React44.createElement("svg",{viewBox:"0 0 16 16",version:"1.1",width:"16",height:"16","aria-hidden":"true",fill:"currentColor"},React44.createElement("path",{fillRule:"evenodd",d:"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"}))),children)},HeaderMdx=props=>{let{as,id,children,...rest}=props;if(id)return React44.createElement(HeaderWithOcticonAnchor,{as,id,...rest},children);let Header=components2[as];return React44.createElement(Header,{...props})},HeadersMdx=SUPPORTED_MDX_HEADERS.reduce((acc,headerType)=>({...acc,[headerType]:props=>React44.createElement(HeaderMdx,{as:headerType,...props})}),{});var Subheading=({children,disableAnchor})=>{if(disableAnchor||typeof children!="string")return React45.createElement(H3,null,children);let tagID=children.toLowerCase().replace(/[^a-z0-9]/gi,"-");return React45.createElement(HeaderMdx,{as:"h3",id:tagID},children)};var DocsStory=({id,name,expanded=!0,withToolbar=!1,parameters={}})=>{let description,{docs}=parameters;expanded&&docs&&(description=docs.description?.story);let subheading=expanded&&name;return React46.createElement(Anchor,{storyId:id},subheading&&React46.createElement(Subheading,null,subheading),description&&React46.createElement(DescriptionContainer,{markdown:description}),React46.createElement(Canvas,{withToolbar},React46.createElement(Story2,{id,parameters})))};var Primary=({name})=>{let docsContext=useContext10(DocsContext),storyId=name&&docsContext.storyIdByName(name),story=docsContext.storyById(storyId);return story?React47.createElement(DocsStory,{...story,expanded:!1,withToolbar:!0}):null};import React49,{useContext as useContext11}from"react";import React48 from"react";import{H2}from"@storybook/components";var Heading=({children,disableAnchor})=>{if(disableAnchor||typeof children!="string")return React48.createElement(H2,null,children);let tagID=children.toLowerCase().replace(/[^a-z0-9]/gi,"-");return React48.createElement(HeaderMdx,{as:"h2",id:tagID},children)};var Stories=({title,includePrimary=!1})=>{let{componentStories}=useContext11(DocsContext),stories=componentStories();return stories=stories.filter(story=>!story.parameters?.docs?.disable),includePrimary||(stories=stories.slice(1)),!stories||stories.length===0?null:React49.createElement(React49.Fragment,null,React49.createElement(Heading,null,title),stories.map(story=>story&&React49.createElement(DocsStory,{key:story.id,...story,expanded:!0})))};Stories.defaultProps={title:"Stories"};var DocsPage=()=>React50.createElement(React50.Fragment,null,React50.createElement(Title2,null),React50.createElement(Subtitle2,null),React50.createElement(DescriptionContainer,null),React50.createElement(Primary,null),React50.createElement(ArgsTable2,{story:PRIMARY_STORY}),React50.createElement(Stories,null));var Docs=({docsParameter,context})=>{let Container=docsParameter.container||DocsContainer,Page=docsParameter.page||DocsPage;return React51.createElement(Container,{context,theme:docsParameter.theme},React51.createElement(Page,null))};import React52,{useRef as useRef6}from"react";import{composeConfigs as composeConfigs2}from"@storybook/preview-api";import{Preview as Preview2,composeConfigs}from"@storybook/preview-api";import{Channel}from"@storybook/channels";import{DocsContext as DocsContext2}from"@storybook/preview-api";var ExternalDocsContext=class extends DocsContext2{constructor(channel,store,renderStoryToElement,processMetaExports){super(channel,store,renderStoryToElement,[]);this.channel=channel;this.store=store;this.renderStoryToElement=renderStoryToElement;this.processMetaExports=processMetaExports;this.referenceMeta=(metaExports,attach)=>{let csfFile=this.processMetaExports(metaExports);this.referenceCSFFile(csfFile),super.referenceMeta(metaExports,attach)}}};var ConstantMap=class{constructor(prefix){this.prefix=prefix;this.entries=new Map}get(key){return this.entries.has(key)||this.entries.set(key,`${this.prefix}${this.entries.size}`),this.entries.get(key)}},ExternalPreview=class extends Preview2{constructor(projectAnnotations){super(new Channel);this.projectAnnotations=projectAnnotations;this.importPaths=new ConstantMap("./importPath/");this.titles=new ConstantMap("title-");this.storyIndex={v:4,entries:{}};this.moduleExportsByImportPath={};this.processMetaExports=metaExports=>{let importPath=this.importPaths.get(metaExports);this.moduleExportsByImportPath[importPath]=metaExports;let title=metaExports.default.title||this.titles.get(metaExports),csfFile=this.storyStore.processCSFFileWithCache(metaExports,importPath,title);return Object.values(csfFile.stories).forEach(({id,name})=>{this.storyIndex.entries[id]={id,importPath,title,name,type:"story"}}),this.onStoriesChanged({storyIndex:this.storyIndex}),csfFile};this.docsContext=()=>new ExternalDocsContext(this.channel,this.storyStore,this.renderStoryToElement.bind(this),this.processMetaExports.bind(this));this.initialize({getStoryIndex:()=>this.storyIndex,importFn:path=>Promise.resolve(this.moduleExportsByImportPath[path]),getProjectAnnotations:()=>composeConfigs([{parameters:{docs:{inlineStories:!0}}},this.projectAnnotations])})}};function usePreview(projectAnnotations){let previewRef=useRef6();return previewRef.current||(previewRef.current=new ExternalPreview(projectAnnotations)),previewRef.current}var ExternalDocs=({projectAnnotationsList,children})=>{let projectAnnotations=composeConfigs2(projectAnnotationsList),preview2=usePreview(projectAnnotations),docsParameter={...projectAnnotations.parameters?.docs,page:()=>children};return React52.createElement(Docs,{docsParameter,context:preview2.docsContext()})};import React53 from"react";import{ThemeProvider as ThemeProvider3,themes as themes2,ensure}from"@storybook/theming";var preview,ExternalDocsContainer=({projectAnnotations,children})=>(preview||(preview=new ExternalPreview(projectAnnotations)),React53.createElement(DocsContext.Provider,{value:preview.docsContext()},React53.createElement(ThemeProvider3,{theme:ensure(themes2.light)},children)));import React54,{useContext as useContext12}from"react";var Meta=({of})=>{let context=useContext12(DocsContext);of&&context.referenceMeta(of,!0);try{let primary=context.storyById();return React54.createElement(Anchor,{storyId:primary.id})}catch{return null}};import React55 from"react";var Unstyled=props=>React55.createElement("div",{...props,className:"sb-unstyled"});import React56 from"react";var Wrapper8=({children})=>React56.createElement("div",{style:{fontFamily:"sans-serif"}},children);export{AddContext,Anchor,AnchorMdx,ArgsTable2 as ArgsTable,BooleanControl,Canvas,CodeOrSourceMdx,ColorControl,ColorItem,ColorPalette,ComponentsTable,DateControl,DescriptionContainer as Description,DescriptionType,Docs,DocsContainer,DocsContext,DocsPage,DocsStory,ExternalDocs,ExternalDocsContainer,FilesControl,HeaderMdx,HeadersMdx,Heading,IconGallery,IconItem,Meta,NoControlsWarning,NumberControl,ObjectControl,OptionsControl,PRIMARY_STORY,Primary,ArgsTable as PureArgsTable,RangeControl,Source2 as Source,SourceContainer,SourceContext,SourceState,Stories,Story2 as Story,StoryTable,Subheading,Subtitle2 as Subtitle,TextControl,Title2 as Title,Typeset,Unstyled,Wrapper8 as Wrapper,anchorBlockIdFromId,assertIsFn,extractComponentArgTypes,extractTitle,format,formatDate,formatTime,getComponent,getStoryId2 as getStoryId,getStoryProps,parse2 as parse,parseDate,parseTime,storyBlockIdFromId,useOf,useSourceProps};
25
+ `));let state=getSourceState(stories),{docs:docsParameters={}}=parameters,{source:sourceParameters={}}=docsParameters,{language:docsLanguage=null}=sourceParameters;return source?{code:source,state,format:format2,language:props.language||docsLanguage||"jsx",dark:props.dark||!1}:{error:"Oh no! The source is not available.",state}},Source2=props=>{let sourceContext=useContext2(SourceContext),docsContext=useContext2(DocsContext),sourceProps=useSourceProps(props,docsContext,sourceContext);return React37.createElement(Source,{...sourceProps})};import React38,{useContext as useContext3,useRef as useRef5,useEffect as useEffect10,useState as useState13}from"react";var storyBlockIdFromId=storyId=>`story--${storyId}`,getStoryId2=(props,context)=>{let{id,of,meta}=props;if(of){meta&&context.referenceMeta(meta,!1);let resolved=context.resolveModuleExport(of);if(resolved.type!=="story")throw new Error("Unexpected component/module/meta exports passed to `Story` block.");return resolved.story.id}let{name}=props;return id||context.storyIdByName(name)},getStoryProps=({height,inline},story)=>{let{name:storyName,parameters={}}=story||{},{docs={}}=parameters;if(docs.disable)return null;let{inlineStories=!1,iframeHeight=100}=docs,storyIsInline=typeof inline=="boolean"?inline:inlineStories;return{inline:storyIsInline,id:story?.id,height:height||(storyIsInline?void 0:iframeHeight),title:storyName,...storyIsInline&&{parameters}}},Story2=props=>{let context=useContext3(DocsContext),storyRef=useRef5(),storyId=getStoryId2(props,context),story=useStory(storyId,context),[showLoader,setShowLoader]=useState13(!0);if(useEffect10(()=>{if(!(story&&storyRef.current))return()=>{};let element=storyRef.current,{autoplay}=story.parameters.docs||{},cleanup=context.renderStoryToElement(story,element,{autoplay});return setShowLoader(!1),()=>{cleanup()}},[context,story]),!story)return React38.createElement(StorySkeleton,null);let storyProps=getStoryProps(props,story);if(!storyProps)return null;if(storyProps.inline){let htmlContents="<span></span>",{height}=storyProps;return React38.createElement("div",{id:storyBlockIdFromId(story.id),className:"sb-story"},height?React38.createElement("style",null,`#story--${story.id} { min-height: ${height}; transform: translateZ(0); overflow: auto }`):null,showLoader&&React38.createElement(StorySkeleton,null),React38.createElement("div",{ref:storyRef,"data-name":story.name,dangerouslySetInnerHTML:{__html:htmlContents}}))}return React38.createElement("div",{id:storyBlockIdFromId(story.id)},React38.createElement(Story,{...storyProps}))};var usePreviewProps=({withSource,mdxSource,children,...props},docsContext,sourceContext)=>{let storyIds=Children2.toArray(children).filter(c=>c.props&&(c.props.id||c.props.name||c.props.of)).map(c=>getStoryId2(c.props,docsContext)),isLoading=useStories(storyIds,docsContext).some(s=>!s),sourceProps=useSourceProps(mdxSource?{code:decodeURI(mdxSource)}:{ids:storyIds},docsContext,sourceContext);return withSource==="none"?{isLoading,previewProps:props}:{isLoading,previewProps:{...props,withSource:sourceProps,isExpanded:(withSource||sourceProps.state)==="open"}}},Canvas=props=>{let docsContext=useContext4(DocsContext),sourceContext=useContext4(SourceContext),{isLoading,previewProps}=usePreviewProps(props,docsContext,sourceContext),{children}=props;return isLoading?React39.createElement(PreviewSkeleton,null):React39.createElement(Preview,{...previewProps},children)};import React40,{useContext as useContext6}from"react";import{str}from"@storybook/docs-tools";import{deprecate}from"@storybook/client-logger";import{combineParameters as combineParameters2}from"@storybook/preview-api";import{useContext as useContext5}from"react";var useOf=(of,validTypes=[])=>{let context=useContext5(DocsContext),resolved=context.resolveModuleExport(of);if(validTypes.length&&!validTypes.includes(resolved.type)){let prettyType=resolved.type==="component"?"component or unknown":resolved.type;throw new Error(`Invalid value passed to the 'of' prop. The value was resolved to a '${prettyType}' type but the only types for this block are: ${validTypes.join(", ")}`)}return{...resolved,projectAnnotations:context.projectAnnotations}};var DescriptionType=(DescriptionType2=>(DescriptionType2.INFO="info",DescriptionType2.NOTES="notes",DescriptionType2.DOCGEN="docgen",DescriptionType2.AUTO="auto",DescriptionType2))(DescriptionType||{}),DEPRECATION_MIGRATION_LINK="https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#description-block-parametersnotes-and-parametersinfo",getNotes=notes=>notes&&(typeof notes=="string"?notes:str(notes.markdown)||str(notes.text)),getInfo=info=>info&&(typeof info=="string"?info:str(info.text)),noDescription=component=>null,getDescriptionFromResolvedOf=resolvedOf=>{let{projectAnnotations,...resolvedModule}=resolvedOf;switch(resolvedModule.type){case"story":return resolvedModule.story.parameters.docs?.description?.story||null;case"meta":{let{meta}=resolvedModule.csfFile,metaDescription=meta.parameters.docs?.description?.component;return metaDescription||projectAnnotations.parameters.docs?.extractComponentDescription?.(meta.component,{component:meta.component,...combineParameters2(projectAnnotations.parameters,meta.parameters)})||null}case"component":{let{component}=resolvedModule;return projectAnnotations.parameters.docs?.extractComponentDescription?.(component,{component,...projectAnnotations.parameters})||null}default:throw new Error(`Unrecognized module type resolved from 'useOf', got: ${resolvedModule.type}`)}},getDescriptionFromDeprecatedProps=({type,markdown,children},{storyById})=>{let{component,parameters}=storyById();if(children||markdown)return children||markdown;let{notes,info,docs}=parameters;(Boolean(notes)||Boolean(info))&&deprecate(`Using 'parameters.notes' or 'parameters.info' properties to describe stories is deprecated. See ${DEPRECATION_MIGRATION_LINK}`);let{extractComponentDescription=noDescription,description}=docs||{},componentDescriptionParameter=description?.component;if(componentDescriptionParameter)return componentDescriptionParameter;switch(type){case"info":return getInfo(info);case"notes":return getNotes(notes);case"docgen":case"auto":default:return extractComponentDescription(component,{component,...parameters})}},DescriptionContainer=props=>{let{of,type,markdown:markdownProp,children}=props,context=useContext6(DocsContext),resolvedOf=useOf(of||"meta"),markdown;return type||markdownProp||children?markdown=getDescriptionFromDeprecatedProps(props,context):markdown=getDescriptionFromResolvedOf(resolvedOf),type&&deprecate(`Manually specifying description type is deprecated. See ${DEPRECATION_MIGRATION_LINK}`),markdownProp&&deprecate(`The 'markdown' prop on the Description block is deprecated. See ${DEPRECATION_MIGRATION_LINK}`),children&&deprecate(`The 'children' prop on the Description block is deprecated. See ${DEPRECATION_MIGRATION_LINK}`),markdown?React40.createElement(Description,{markdown}):null};import React51 from"react";import React41,{useEffect as useEffect11}from"react";import{global as global6}from"@storybook/global";import{ThemeProvider as ThemeProvider2,ensure as ensureTheme}from"@storybook/theming";var{document:document2,window:globalWindow3}=global6,DocsContainer=({context,theme,children})=>(useEffect11(()=>{let url;try{if(url=new URL(globalWindow3.parent.location.toString()),url.hash){let element=document2.getElementById(url.hash.substring(1));element&&setTimeout(()=>{scrollToElement(element)},200)}}catch{}}),React41.createElement(DocsContext.Provider,{value:context},React41.createElement(SourceContainer,{channel:context.channel},React41.createElement(ThemeProvider2,{theme:ensureTheme(theme)},React41.createElement(DocsWrapper,{className:"sbdocs sbdocs-wrapper"},React41.createElement(DocsContent,{className:"sbdocs sbdocs-content"},children))))));import React50 from"react";import React42,{useContext as useContext7}from"react";var STORY_KIND_PATH_SEPARATOR=/\s*\/\s*/,extractTitle=title=>{let groups=title.trim().split(STORY_KIND_PATH_SEPARATOR);return groups&&groups[groups.length-1]||title},Title2=({children})=>{let context=useContext7(DocsContext),text=children;return text||(text=extractTitle(context.storyById().title)),text?React42.createElement(Title,{className:"sbdocs-title"},text):null};import React43,{useContext as useContext8}from"react";var Subtitle2=({children})=>{let docsContext=useContext8(DocsContext),{parameters}=docsContext.storyById(),text=children;return text||(text=parameters?.componentSubtitle),text?React43.createElement(Subtitle,{className:"sbdocs-subtitle"},text):null};import React47,{useContext as useContext10}from"react";import React46 from"react";import React45 from"react";import{H3}from"@storybook/components";import React44,{useContext as useContext9}from"react";import{NAVIGATE_URL}from"@storybook/core-events";import{Code,components as components2}from"@storybook/components";import{global as global7}from"@storybook/global";import{styled as styled25}from"@storybook/theming";var{document:document3}=global7,assertIsFn=val=>{if(typeof val!="function")throw new Error(`Expected story function, got: ${val}`);return val},AddContext=props=>{let{children,...rest}=props,parentContext=React44.useContext(DocsContext);return React44.createElement(DocsContext.Provider,{value:{...parentContext,...rest}},children)},CodeOrSourceMdx=({className,children,...rest})=>{if(typeof className!="string"&&(typeof children!="string"||!children.match(/[\n\r]/g)))return React44.createElement(Code,null,children);let language=className&&className.split("-");return React44.createElement(Source,{language:language&&language[1]||"plaintext",format:!1,code:children,...rest})};function navigate(context,url){context.channel.emit(NAVIGATE_URL,url)}var A=components2.a,AnchorInPage=({hash,children})=>{let context=useContext9(DocsContext);return React44.createElement(A,{href:hash,target:"_self",onClick:event=>{let id=hash.substring(1);document3.getElementById(id)&&navigate(context,hash)}},children)},AnchorMdx=props=>{let{href,target,children,...rest}=props,context=useContext9(DocsContext);if(href){if(href.startsWith("#"))return React44.createElement(AnchorInPage,{hash:href},children);if(target!=="_blank"&&!href.startsWith("https://"))return React44.createElement(A,{href,onClick:event=>{event.preventDefault(),navigate(context,event.currentTarget.getAttribute("href"))},target,...rest},children)}return React44.createElement(A,{...props})},SUPPORTED_MDX_HEADERS=["h1","h2","h3","h4","h5","h6"],OcticonHeaders=SUPPORTED_MDX_HEADERS.reduce((acc,headerType)=>({...acc,[headerType]:styled25(components2[headerType])({"& svg":{visibility:"hidden"},"&:hover svg":{visibility:"visible"}})}),{}),OcticonAnchor=styled25.a(()=>({float:"left",paddingRight:"4px",marginLeft:"-20px",color:"inherit"})),HeaderWithOcticonAnchor=({as,id,children,...rest})=>{let context=useContext9(DocsContext),OcticonHeader=OcticonHeaders[as],hash=`#${id}`;return React44.createElement(OcticonHeader,{id,...rest},React44.createElement(OcticonAnchor,{"aria-hidden":"true",href:hash,tabIndex:-1,target:"_self",onClick:event=>{document3.getElementById(id)&&navigate(context,hash)}},React44.createElement("svg",{viewBox:"0 0 16 16",version:"1.1",width:"16",height:"16","aria-hidden":"true",fill:"currentColor"},React44.createElement("path",{fillRule:"evenodd",d:"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"}))),children)},HeaderMdx=props=>{let{as,id,children,...rest}=props;if(id)return React44.createElement(HeaderWithOcticonAnchor,{as,id,...rest},children);let Header=components2[as];return React44.createElement(Header,{...props})},HeadersMdx=SUPPORTED_MDX_HEADERS.reduce((acc,headerType)=>({...acc,[headerType]:props=>React44.createElement(HeaderMdx,{as:headerType,...props})}),{});var Subheading=({children,disableAnchor})=>{if(disableAnchor||typeof children!="string")return React45.createElement(H3,null,children);let tagID=children.toLowerCase().replace(/[^a-z0-9]/gi,"-");return React45.createElement(HeaderMdx,{as:"h3",id:tagID},children)};var DocsStory=({id,name,expanded=!0,withToolbar=!1,parameters={}})=>{let description,{docs}=parameters;expanded&&docs&&(description=docs.description?.story);let subheading=expanded&&name;return React46.createElement(Anchor,{storyId:id},subheading&&React46.createElement(Subheading,null,subheading),description&&React46.createElement(DescriptionContainer,{markdown:description}),React46.createElement(Canvas,{withToolbar},React46.createElement(Story2,{id,parameters})))};var Primary=({name})=>{let docsContext=useContext10(DocsContext),storyId=name&&docsContext.storyIdByName(name),story=docsContext.storyById(storyId);return story?React47.createElement(DocsStory,{...story,expanded:!1,withToolbar:!0}):null};import React49,{useContext as useContext11}from"react";import React48 from"react";import{H2}from"@storybook/components";var Heading=({children,disableAnchor})=>{if(disableAnchor||typeof children!="string")return React48.createElement(H2,null,children);let tagID=children.toLowerCase().replace(/[^a-z0-9]/gi,"-");return React48.createElement(HeaderMdx,{as:"h2",id:tagID},children)};var Stories=({title,includePrimary=!1})=>{let{componentStories}=useContext11(DocsContext),stories=componentStories();return stories=stories.filter(story=>!story.parameters?.docs?.disable),includePrimary||(stories=stories.slice(1)),!stories||stories.length===0?null:React49.createElement(React49.Fragment,null,React49.createElement(Heading,null,title),stories.map(story=>story&&React49.createElement(DocsStory,{key:story.id,...story,expanded:!0})))};Stories.defaultProps={title:"Stories"};var DocsPage=()=>React50.createElement(React50.Fragment,null,React50.createElement(Title2,null),React50.createElement(Subtitle2,null),React50.createElement(DescriptionContainer,null),React50.createElement(Primary,null),React50.createElement(ArgsTable2,{story:PRIMARY_STORY}),React50.createElement(Stories,null));var Docs=({docsParameter,context})=>{let Container=docsParameter.container||DocsContainer,Page=docsParameter.page||DocsPage;return React51.createElement(Container,{context,theme:docsParameter.theme},React51.createElement(Page,null))};import React52,{useRef as useRef6}from"react";import{composeConfigs as composeConfigs2}from"@storybook/preview-api";import{Preview as Preview2,composeConfigs}from"@storybook/preview-api";import{Channel}from"@storybook/channels";import{DocsContext as DocsContext2}from"@storybook/preview-api";var ExternalDocsContext=class extends DocsContext2{constructor(channel,store,renderStoryToElement,processMetaExports){super(channel,store,renderStoryToElement,[]);this.channel=channel;this.store=store;this.renderStoryToElement=renderStoryToElement;this.processMetaExports=processMetaExports;this.referenceMeta=(metaExports,attach)=>{let csfFile=this.processMetaExports(metaExports);this.referenceCSFFile(csfFile),super.referenceMeta(metaExports,attach)}}};var ConstantMap=class{constructor(prefix){this.prefix=prefix;this.entries=new Map}get(key){return this.entries.has(key)||this.entries.set(key,`${this.prefix}${this.entries.size}`),this.entries.get(key)}},ExternalPreview=class extends Preview2{constructor(projectAnnotations){super(new Channel);this.projectAnnotations=projectAnnotations;this.importPaths=new ConstantMap("./importPath/");this.titles=new ConstantMap("title-");this.storyIndex={v:4,entries:{}};this.moduleExportsByImportPath={};this.processMetaExports=metaExports=>{let importPath=this.importPaths.get(metaExports);this.moduleExportsByImportPath[importPath]=metaExports;let title=metaExports.default.title||this.titles.get(metaExports),csfFile=this.storyStore.processCSFFileWithCache(metaExports,importPath,title);return Object.values(csfFile.stories).forEach(({id,name})=>{this.storyIndex.entries[id]={id,importPath,title,name,type:"story"}}),this.onStoriesChanged({storyIndex:this.storyIndex}),csfFile};this.docsContext=()=>new ExternalDocsContext(this.channel,this.storyStore,this.renderStoryToElement.bind(this),this.processMetaExports.bind(this));this.initialize({getStoryIndex:()=>this.storyIndex,importFn:path=>Promise.resolve(this.moduleExportsByImportPath[path]),getProjectAnnotations:()=>composeConfigs([{parameters:{docs:{inlineStories:!0}}},this.projectAnnotations])})}};function usePreview(projectAnnotations){let previewRef=useRef6();return previewRef.current||(previewRef.current=new ExternalPreview(projectAnnotations)),previewRef.current}var ExternalDocs=({projectAnnotationsList,children})=>{let projectAnnotations=composeConfigs2(projectAnnotationsList),preview2=usePreview(projectAnnotations),docsParameter={...projectAnnotations.parameters?.docs,page:()=>children};return React52.createElement(Docs,{docsParameter,context:preview2.docsContext()})};import React53 from"react";import{ThemeProvider as ThemeProvider3,themes as themes2,ensure}from"@storybook/theming";var preview,ExternalDocsContainer=({projectAnnotations,children})=>(preview||(preview=new ExternalPreview(projectAnnotations)),React53.createElement(DocsContext.Provider,{value:preview.docsContext()},React53.createElement(ThemeProvider3,{theme:ensure(themes2.light)},children)));import React54,{useContext as useContext12}from"react";var Meta=({of})=>{let context=useContext12(DocsContext);of&&context.referenceMeta(of,!0);try{let primary=context.storyById();return React54.createElement(Anchor,{storyId:primary.id})}catch{return null}};import React55 from"react";var Unstyled=props=>React55.createElement("div",{...props,className:"sb-unstyled"});import React56 from"react";var Wrapper8=({children})=>React56.createElement("div",{style:{fontFamily:"sans-serif"}},children);export{AddContext,Anchor,AnchorMdx,ArgsTable2 as ArgsTable,BooleanControl,Canvas,CodeOrSourceMdx,ColorControl,ColorItem,ColorPalette,ComponentsTable,DateControl,DescriptionContainer as Description,DescriptionType,Docs,DocsContainer,DocsContext,DocsPage,DocsStory,ExternalDocs,ExternalDocsContainer,FilesControl,HeaderMdx,HeadersMdx,Heading,IconGallery,IconItem,Meta,NoControlsWarning,NumberControl,ObjectControl,OptionsControl,PRIMARY_STORY,Primary,ArgsTable as PureArgsTable,RangeControl,Source2 as Source,SourceContainer,SourceContext,SourceState,Stories,Story2 as Story,StoryTable,Subheading,Subtitle2 as Subtitle,TextControl,Title2 as Title,Typeset,Unstyled,Wrapper8 as Wrapper,anchorBlockIdFromId,assertIsFn,extractComponentArgTypes,extractTitle,format,formatDate,formatTime,getComponent,getStoryId2 as getStoryId,getStoryProps,parse2 as parse,parseDate,parseTime,storyBlockIdFromId,useOf,useSourceProps};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storybook/blocks",
3
- "version": "7.0.0-beta.25",
3
+ "version": "7.0.0-beta.26",
4
4
  "description": "Storybook Doc Blocks",
5
5
  "keywords": [
6
6
  "storybook"
@@ -43,17 +43,17 @@
43
43
  "prep": "../../../scripts/prepare/bundle.ts"
44
44
  },
45
45
  "dependencies": {
46
- "@storybook/channels": "7.0.0-beta.25",
47
- "@storybook/client-logger": "7.0.0-beta.25",
48
- "@storybook/components": "7.0.0-beta.25",
49
- "@storybook/core-events": "7.0.0-beta.25",
46
+ "@storybook/channels": "7.0.0-beta.26",
47
+ "@storybook/client-logger": "7.0.0-beta.26",
48
+ "@storybook/components": "7.0.0-beta.26",
49
+ "@storybook/core-events": "7.0.0-beta.26",
50
50
  "@storybook/csf": "next",
51
- "@storybook/docs-tools": "7.0.0-beta.25",
51
+ "@storybook/docs-tools": "7.0.0-beta.26",
52
52
  "@storybook/global": "^5.0.0",
53
- "@storybook/manager-api": "7.0.0-beta.25",
54
- "@storybook/preview-api": "7.0.0-beta.25",
55
- "@storybook/theming": "7.0.0-beta.25",
56
- "@storybook/types": "7.0.0-beta.25",
53
+ "@storybook/manager-api": "7.0.0-beta.26",
54
+ "@storybook/preview-api": "7.0.0-beta.26",
55
+ "@storybook/theming": "7.0.0-beta.26",
56
+ "@storybook/types": "7.0.0-beta.26",
57
57
  "@types/lodash": "^4.14.167",
58
58
  "color-convert": "^2.0.1",
59
59
  "dequal": "^2.0.2",
@@ -66,7 +66,7 @@
66
66
  "util-deprecate": "^1.0.2"
67
67
  },
68
68
  "devDependencies": {
69
- "@storybook/addon-actions": "7.0.0-beta.25",
69
+ "@storybook/addon-actions": "7.0.0-beta.26",
70
70
  "@types/color-convert": "^2.0.0"
71
71
  },
72
72
  "peerDependencies": {
@@ -81,5 +81,5 @@
81
81
  "./src/index.ts"
82
82
  ]
83
83
  },
84
- "gitHead": "2109ab8d7c0667e686db757abf5afcbf3d48a6ec"
84
+ "gitHead": "4d3ed5ec2eb8db3e688955e2820001def09621c1"
85
85
  }