Use AI-powered codemod studio and automate undifferentiated tasks for yourself, colleagues or the community.
This codemod replaces ctx.fetch(req)
with fetch(bypass(req))
.
MSW version >= 1.0.0
Run codemod using Intuita CLI or VS Code extension:
Intuita CLI:
Intuita VS Code extension:
ctx.fetch(req)
is now meant to be called as fetch(bypass(req))
where bypass
is a new function available in the msw
library. Changes applied by this codemod:
ctx.fetch(req)
is replaced with fetch(bypass(req))
.NOTE: The bypass
call is meant to wrap the new request
object available on the callback argument. This object is not being destructured in this codemod, so you will have to do it manually or run a callback-signature
codemod that will do that and replace the reference for you.
import { rest } from 'msw';
const handlers: RestHandler[] = [
rest.get('/user', async (req, res, ctx) => {
const originalRequest = await ctx.fetch(req);
return res(ctx.json({ firstName: 'John' }));
}),
]
import { rest } from 'msw';
const handlers: RestHandler[] = [
rest.get('/user', async (req, res, ctx) => {
const originalRequest = await fetch(bypass(req));
return res(ctx.json({ firstName: 'John' }));
}),
]
``` ### Links for more info - [msw v1 to v2 migration guide -> ctx fetch](https://mswjs.io/docs/migrations/1.x-to-2.x/#ctxfetch)
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.