4466ba436b
## Description This PR ensures that the default prettier config is used for examples and templates. This config is compatible with `prettier@3` as well (upgrading prettier is bigger change that can be a future PR). ## Changes - Updated `.prettierrc.json` in root with `"trailingComma": "es5"` (will be needed upgrading to prettier@3) - Added `examples/.prettierrc.json` with default config (this will change every example) - Added `packages/create-next-app/templates/.prettierrc.json` with default config (this will change every template) ## Related - Fixes #54402 - Closes #54409
22 lines
583 B
TypeScript
22 lines
583 B
TypeScript
import type { NextApiResponse } from "next";
|
|
import { serialize, CookieSerializeOptions } from "cookie";
|
|
|
|
/**
|
|
* This sets `cookie` using the `res` object
|
|
*/
|
|
|
|
export const setCookie = (
|
|
res: NextApiResponse,
|
|
name: string,
|
|
value: unknown,
|
|
options: CookieSerializeOptions = {},
|
|
) => {
|
|
const stringValue =
|
|
typeof value === "object" ? "j:" + JSON.stringify(value) : String(value);
|
|
|
|
if (typeof options.maxAge === "number") {
|
|
options.expires = new Date(Date.now() + options.maxAge * 1000);
|
|
}
|
|
|
|
res.setHeader("Set-Cookie", serialize(name, stringValue, options));
|
|
};
|