UNPKG

@storybook/nextjs-vite

Version:

Storybook for Next.js and Vite: Develop, document, and test UI components in isolation

11 lines (8 loc) 2.31 kB
import '../../chunk-XP5HYGXS.mjs'; import { NextjsRouterMocksNotAvailable } from 'storybook/internal/preview-errors'; import * as singletonRouter from 'next/dist/client/router'; import singletonRouter__default from 'next/dist/client/router'; export * from 'next/dist/client/router'; import { fn } from 'storybook/test'; var defaultRouterState={route:"/",asPath:"/",basePath:"/",pathname:"/",query:{},isFallback:!1,isLocaleDomain:!1,isReady:!0,isPreview:!1},routerAPI,createRouter=overrides=>{let routerActions={push:fn((..._args)=>Promise.resolve(!0)).mockName("next/router::useRouter().push"),replace:fn((..._args)=>Promise.resolve(!0)).mockName("next/router::useRouter().replace"),reload:fn((..._args)=>{}).mockName("next/router::useRouter().reload"),back:fn((..._args)=>{}).mockName("next/router::useRouter().back"),forward:fn(()=>{}).mockName("next/router::useRouter().forward"),prefetch:fn((..._args)=>Promise.resolve()).mockName("next/router::useRouter().prefetch"),beforePopState:fn((..._args)=>{}).mockName("next/router::useRouter().beforePopState")},routerEvents={on:fn((..._args)=>{}).mockName("next/router::useRouter().events.on"),off:fn((..._args)=>{}).mockName("next/router::useRouter().events.off"),emit:fn((..._args)=>{}).mockName("next/router::useRouter().events.emit")};return overrides&&Object.keys(routerActions).forEach(key=>{key in overrides&&(routerActions[key]=fn((...args)=>overrides[key](...args)).mockName(`useRouter().${key}`));}),overrides?.events&&Object.keys(routerEvents).forEach(key=>{key in routerEvents&&(routerEvents[key]=fn((...args)=>overrides.events[key](...args)).mockName(`useRouter().events.${key}`));}),routerAPI={...defaultRouterState,...overrides,...routerActions,events:routerEvents},singletonRouter__default.router=routerAPI,singletonRouter__default.readyCallbacks.forEach(cb=>cb()),singletonRouter__default.readyCallbacks=[],routerAPI},getRouter=()=>{if(!routerAPI)throw new NextjsRouterMocksNotAvailable({importType:"next/router"});return routerAPI},router_default=singletonRouter__default,useRouter2=fn(singletonRouter.useRouter).mockName("next/router::useRouter"),withRouter2=fn(singletonRouter.withRouter).mockName("next/router::withRouter"); export { createRouter, router_default as default, getRouter, useRouter2 as useRouter, withRouter2 as withRouter };