cal/apps/web/lib/buildLegacyCtx.tsx
Benny Joo 31c0804386
chore: [app-router-migration-8] Migrate all pages in `/video` directory (#12623)
* chore: migrate trpc, ssgInit, ssrInit

* intuita codemod: remove-get-static-props

* intuita codemod: app-directory-boilerplate-calcom

* manual: refactor and add title/description metadata

* intuita codemod: app-directory-boilerplate-calcom

* manual: refactor and add metadata

* manual: add ab test redirect

* fix: restore emails

* fix linter and ts issues

---------

Co-authored-by: Dmytro Hryshyn <dev.dmytroh@gmail.com>
Co-authored-by: zomars <zomars@me.com>
2023-12-19 14:47:47 -07:00

24 lines
796 B
TypeScript

import { type Params } from "app/_types";
import { type ReadonlyHeaders } from "next/dist/server/web/spec-extension/adapters/headers";
import { type ReadonlyRequestCookies } from "next/dist/server/web/spec-extension/adapters/request-cookies";
// returns query object same as ctx.query but for app dir
export const getQuery = (url: string, params: Params) => {
if (!url.length) {
return params;
}
const { searchParams } = new URL(url);
const searchParamsObj = Object.fromEntries(searchParams.entries());
return { ...searchParamsObj, ...params };
};
export const buildLegacyCtx = (headers: ReadonlyHeaders, cookies: ReadonlyRequestCookies, params: Params) => {
return {
query: getQuery(headers.get("x-url") ?? "", params),
params,
req: { headers, cookies },
};
};