UNPKG

@storybook-community/storybook-source-link

Version:
2 lines 1.32 kB
import {useParameter,addons,types}from'storybook/internal/manager-api';import o,{memo}from'react';import {RepoIcon}from'@storybook/icons';import {IconButton,WithTooltip,TooltipMessage}from'storybook/internal/components';var n="storybook/source-link",i=`${n}/tool`,s="sourceLink",p="sourceLinkPrefix",c="https://github.com/Sirrine-Jonathan/storybook-source-link/blob/main/README.md";var y=()=>o.createElement(TooltipMessage,{title:"Source Link",desc:"No repository link set in this story",links:[{title:"More Info",onClick:()=>{window.open(c);}}]}),L=(t,r)=>r?(t&&(r=`${t}${r}`),r):null,a=memo(function(){let r=useParameter(s,null),k=useParameter(p,null),e=L(k,r);return e?o.createElement(IconButton,{key:i,title:`View Source Repository: ${e}`,active:true,onClick:()=>{e&&window.open(e);},"aria-label":`View Source Repository: ${e}`},o.createElement(RepoIcon,null)):o.createElement(WithTooltip,{placement:"top",trigger:"click",tooltip:o.createElement(y,null)},o.createElement(IconButton,{key:i,title:"View Source Repository","aria-label":"View Source Repository",active:false},o.createElement(RepoIcon,null)))});addons.register(n,()=>{addons.add(i,{type:types.TOOL,title:"Source Link",match:({viewMode:t})=>!!(t&&t.match(/^(story|docs)$/)),render:a});});//# sourceMappingURL=manager.js.map //# sourceMappingURL=manager.js.map