UNPKG

1.57 kBJavaScriptView Raw
1var ADDON_ID="storybook/viewport",PARAM_KEY="viewport",UPDATE=`${ADDON_ID}/update`,CONFIGURE=`${ADDON_ID}/configure`,SET=`${ADDON_ID}/setStoryDefaultViewport`,CHANGED=`${ADDON_ID}/viewportChanged`;var getCurrentViewportIndex=(viewportsKeys,current)=>viewportsKeys.indexOf(current),getNextViewport=(viewportsKeys,current)=>{let currentViewportIndex=getCurrentViewportIndex(viewportsKeys,current);return currentViewportIndex===viewportsKeys.length-1?viewportsKeys[0]:viewportsKeys[currentViewportIndex+1]},getPreviousViewport=(viewportsKeys,current)=>{let currentViewportIndex=getCurrentViewportIndex(viewportsKeys,current);return currentViewportIndex<1?viewportsKeys[viewportsKeys.length-1]:viewportsKeys[currentViewportIndex-1]},registerShortcuts=async(api,setState,viewportsKeys)=>{await api.setAddonShortcut(ADDON_ID,{label:"Previous viewport",defaultShortcut:["shift","V"],actionName:"previous",action:()=>{let{selected,isRotated}=api.getAddonState(ADDON_ID);setState({selected:getPreviousViewport(viewportsKeys,selected),isRotated});}}),await api.setAddonShortcut(ADDON_ID,{label:"Next viewport",defaultShortcut:["V"],actionName:"next",action:()=>{let{selected,isRotated}=api.getAddonState(ADDON_ID);setState({selected:getNextViewport(viewportsKeys,selected),isRotated});}}),await api.setAddonShortcut(ADDON_ID,{label:"Reset viewport",defaultShortcut:["alt","V"],actionName:"reset",action:()=>{let{isRotated}=api.getAddonState(ADDON_ID);setState({selected:"reset",isRotated});}});};
2
3export { ADDON_ID, CHANGED, CONFIGURE, PARAM_KEY, SET, UPDATE, registerShortcuts };