UNPKG

remix-utils

Version:

This package contains simple utility functions to use with [React Router](https://reactrouter.com/).

44 lines (43 loc) 2.23 kB
import { z } from "zod"; declare const FetchDestSchema: z.ZodEnum<["audio", "audioworklet", "document", "embed", "empty", "font", "frame", "iframe", "image", "manifest", "object", "paintworklet", "report", "script", "serviceworker", "sharedworker", "style", "track", "video", "worker", "xslt"]>; export type FetchDest = z.output<typeof FetchDestSchema>; /** * Returns the value of the `Sec-Fetch-Dest` header. * * The `Sec-Fetch-Dest` header indicates the destination of the request and * can be used to know if the request came from a `fetch` call or not, among * other things. * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Fetch-Dest * @example * // Detect if the request came from a fetch call and return * // json, otherwise return a redirect * export async function action({ request }: ActionFunctionArgs) { * let dest = fetchDest(request); * if (dest === "empty") return json(data) * return redirect(destination) * } */ export declare function fetchDest(request: Request): FetchDest | null; export declare function fetchDest(headers: Headers): FetchDest | null; declare const FetchModeSchema: z.ZodEnum<["cors", "navigate", "no-cors", "same-origin", "websocket"]>; export type FetchMode = z.output<typeof FetchModeSchema>; /** * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Fetch-Mode */ export declare function fetchMode(request: Request): FetchMode | null; export declare function fetchMode(headers: Headers): FetchMode | null; declare const FetchSiteSchema: z.ZodEnum<["cross-site", "same-origin", "same-site", "none"]>; export type FetchSite = z.output<typeof FetchSiteSchema>; /** * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Fetch-Site */ export declare function fetchSite(request: Request): FetchSite | null; export declare function fetchSite(headers: Headers): FetchSite | null; declare const FetchUserSchema: z.ZodLiteral<"?1">; export type FetchUser = z.output<typeof FetchUserSchema>; /** * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Fetch-User */ export declare function isUserInitiated(request: Request): boolean; export declare function isUserInitiated(headers: Headers): boolean; export {};