UNPKG

iso-web

Version:

Isomorphic web apis utilities for fetch, event target, signals, crypto and doh.

31 lines (27 loc) 903 B
import { setupWorker } from 'msw/browser' /** @type {import('msw/browser').SetupWorker | null} */ globalThis.MSW_BROWSER_SERVER = null /** * @returns {import('./types.ts').BrowserNodeServer} */ export function setup() { // biome-ignore lint/complexity/noArguments: needed if (arguments.length > 0) { throw new Error( 'setup takes no arguments use server.use(...handlers) instead' ) } if (!globalThis.MSW_BROWSER_SERVER) { globalThis.MSW_BROWSER_SERVER = setupWorker() } const server = globalThis.MSW_BROWSER_SERVER return { start: (options) => server.start(options?.browser ?? { quiet: true }), stop: server.stop.bind(server), resetHandlers: server.resetHandlers.bind(server), use: server.use.bind(server), restoreHandlers: server.restoreHandlers.bind(server), listHandlers: server.listHandlers.bind(server), events: server.events, } }