Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

react-router

Package Overview
Dependencies
Maintainers
3
Versions
564
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-router - npm Package Compare versions

Comparing version 0.0.0-nightly-ec37db8f4-20240702 to 0.0.0-nightly-f47048541-20240813

dist/dom-export.d.ts

43

CHANGELOG.md
# `react-router`
## 6.26.0
### Minor Changes
- Add a new `replace(url, init?)` alternative to `redirect(url, init?)` that performs a `history.replaceState` instead of a `history.pushState` on client-side navigation redirects ([#11811](https://github.com/remix-run/react-router/pull/11811))
### Patch Changes
- Fix initial hydration behavior when using `future.v7_partialHydration` along with `unstable_patchRoutesOnMiss` ([#11838](https://github.com/remix-run/react-router/pull/11838))
- During initial hydration, `router.state.matches` will now include any partial matches so that we can render ancestor `HydrateFallback` components
- Updated dependencies:
- `@remix-run/router@1.19.0`
## 6.25.1
### Patch Changes
- Memoize some `RouterProvider` internals to reduce unnecessary re-renders ([#11803](https://github.com/remix-run/react-router/pull/11803))
## 6.25.0
### Minor Changes
- Stabilize `future.unstable_skipActionErrorRevalidation` as `future.v7_skipActionErrorRevalidation` ([#11769](https://github.com/remix-run/react-router/pull/11769))
- When this flag is enabled, actions will not automatically trigger a revalidation if they return/throw a `Response` with a `4xx`/`5xx` status code
- You may still opt-into revalidation via `shouldRevalidate`
- This also changes `shouldRevalidate`'s `unstable_actionStatus` parameter to `actionStatus`
### Patch Changes
- Fix regression and properly decode paths inside `useMatch` so matches/params reflect decoded params ([#11789](https://github.com/remix-run/react-router/pull/11789))
- Updated dependencies:
- `@remix-run/router@1.18.0`
## 6.24.1
### Patch Changes
- When using `future.v7_relativeSplatPath`, properly resolve relative paths in splat routes that are children of pathless routes ([#11633](https://github.com/remix-run/react-router/pull/11633))
- Updated dependencies:
- `@remix-run/router@1.17.1`
## 6.24.0

@@ -8,3 +50,2 @@

- Add support for Lazy Route Discovery (a.k.a. Fog of War) ([#11626](https://github.com/remix-run/react-router/pull/11626))
- RFC: <https://github.com/remix-run/react-router/discussions/11113>

@@ -11,0 +52,0 @@ - `unstable_patchRoutesOnMiss` docs: <https://reactrouter.com/en/main/routers/create-browser-router>

63

dist/index.d.ts

@@ -1,24 +0,18 @@

import type { ActionFunction, ActionFunctionArgs, Blocker, BlockerFunction, unstable_DataStrategyFunction, unstable_DataStrategyFunctionArgs, unstable_DataStrategyMatch, ErrorResponse, Fetcher, JsonFunction, LazyRouteFunction, LoaderFunction, LoaderFunctionArgs, Location, Navigation, NavigationStates, ParamParseKey, Params, Path, PathMatch, PathParam, PathPattern, RedirectFunction, RelativeRoutingType, ShouldRevalidateFunction, ShouldRevalidateFunctionArgs, To, UIMatch, unstable_HandlerResult } from "./lib/router";
import { Action as NavigationType, createPath, generatePath, isRouteErrorResponse, json, matchPath, matchRoutes, parsePath, redirect, redirectDocument, resolvePath, UNSAFE_ErrorResponseImpl } from "./lib/router";
import type { AwaitProps, IndexRouteProps, LayoutRouteProps, MemoryRouterProps, NavigateProps, OutletProps, PathRouteProps, RouteProps, RouterProps, RoutesProps, unstable_PatchRoutesOnMissFunction } from "./lib/components";
import { Await, MemoryRouter, Navigate, Outlet, Route, Router, Routes, createRoutesFromChildren, renderMatches, createMemoryRouter, mapRouteProperties } from "./lib/components";
import type { DataRouteMatch, DataRouteObject, IndexRouteObject, NavigateOptions, Navigator, NonIndexRouteObject, RouteMatch, RouteObject } from "./lib/context";
import { DataRouterContext, DataRouterStateContext, LocationContext, NavigationContext, RouteContext } from "./lib/context";
import type { NavigateFunction } from "./lib/hooks";
import { useActionData, useAsyncError, useAsyncValue, useBlocker, useHref, useInRouterContext, useLoaderData, useLocation, useMatch, useMatches, useNavigate, useNavigation, useNavigationType, useOutlet, useOutletContext, useParams, useResolvedPath, useRevalidator, useRouteError, useRouteId, useRouteLoaderData, useRoutes, useRoutesImpl } from "./lib/hooks";
type Hash = string;
type Pathname = string;
type Search = string;
export type { ActionFunction, ActionFunctionArgs, AwaitProps, DataRouteMatch, DataRouteObject, unstable_DataStrategyFunction, unstable_DataStrategyFunctionArgs, unstable_DataStrategyMatch, ErrorResponse, Fetcher, Hash, IndexRouteObject, IndexRouteProps, JsonFunction, LayoutRouteProps, LazyRouteFunction, LoaderFunction, LoaderFunctionArgs, Location, MemoryRouterProps, NavigateFunction, NavigateOptions, NavigateProps, Navigation, NavigationStates, Navigator, NonIndexRouteObject, OutletProps, ParamParseKey, Params, Path, PathMatch, PathParam, PathPattern, PathRouteProps, Pathname, RedirectFunction, RelativeRoutingType, RouteMatch, RouteObject, RouteProps, RouterProps, RoutesProps, Search, ShouldRevalidateFunction, ShouldRevalidateFunctionArgs, To, UIMatch, Blocker, BlockerFunction, unstable_HandlerResult, unstable_PatchRoutesOnMissFunction, };
export { Await, MemoryRouter, Navigate, NavigationType, Outlet, Route, Router, Routes, createMemoryRouter, createPath, createRoutesFromChildren, createRoutesFromChildren as createRoutesFromElements, generatePath, isRouteErrorResponse, json, matchPath, matchRoutes, parsePath, redirect, redirectDocument, renderMatches, resolvePath, useBlocker, useActionData, useAsyncError, useAsyncValue, useHref, useInRouterContext, useLoaderData, useLocation, useMatch, useMatches, useNavigate, useNavigation, useNavigationType, useOutlet, useOutletContext, useParams, useResolvedPath, useRevalidator, useRouteError, useRouteLoaderData, useRoutes, };
export type { AgnosticDataIndexRouteObject, AgnosticDataNonIndexRouteObject, AgnosticDataRouteMatch, AgnosticDataRouteObject, AgnosticIndexRouteObject, AgnosticNonIndexRouteObject, AgnosticRouteMatch, AgnosticRouteObject, HydrationState, InitialEntry, LowerCaseFormMethod, StaticHandler, TrackedPromise, FetcherStates, UpperCaseFormMethod, } from "./lib/router";
export { getStaticContextFromError, stripBasename, UNSAFE_convertRoutesToDataRoutes, } from "./lib/router";
export type { FormEncType, FormMethod, GetScrollRestorationKeyFunction, StaticHandlerContext, Submission, } from "./lib/router";
export type { BrowserRouterProps, HashRouterProps, HistoryRouterProps, LinkProps, NavLinkProps, NavLinkRenderProps, FetcherFormProps, FormProps, ScrollRestorationProps, SetURLSearchParams, SubmitFunction, FetcherSubmitFunction, FetcherWithComponents, RouterProviderProps, } from "./lib/dom/lib";
export { createBrowserRouter, createHashRouter, BrowserRouter, HashRouter, Link, UNSAFE_ViewTransitionContext, UNSAFE_FetchersContext, unstable_HistoryRouter, NavLink, Form, RouterProvider, ScrollRestoration, useLinkClickHandler, useSearchParams, useSubmit, useFormAction, useFetcher, useFetchers, UNSAFE_useScrollRestoration, useBeforeUnload, unstable_usePrompt, unstable_useViewTransitionState, } from "./lib/dom/lib";
export type { ParamKeyValuePair, SubmitOptions, URLSearchParamsInit, SubmitTarget, } from "./lib/dom/dom";
export type { InitialEntry, Location, Path, To } from "./lib/router/history";
export type { HydrationState, StaticHandler, GetScrollPositionFunction, GetScrollRestorationKeyFunction, StaticHandlerContext, Fetcher, Navigation, NavigationStates, RelativeRoutingType, Blocker, BlockerFunction, Router as RemixRouter, RouterState, RouterInit, RouterSubscriber, RouterNavigateOptions, RouterFetchOptions, RevalidationState, } from "./lib/router/router";
export type { ActionFunction, ActionFunctionArgs, DataStrategyFunction as unstable_DataStrategyFunction, DataStrategyFunctionArgs as unstable_DataStrategyFunctionArgs, DataStrategyMatch as unstable_DataStrategyMatch, DataWithResponseInit as UNSAFE_DataWithResponseInit, ErrorResponse, FormEncType, FormMethod, HandlerResult as unstable_HandlerResult, HTMLFormMethod, JsonFunction, LazyRouteFunction, LoaderFunction, LoaderFunctionArgs, ParamParseKey, Params, PathMatch, PathParam, PathPattern, RedirectFunction, ShouldRevalidateFunction, ShouldRevalidateFunctionArgs, UIMatch, } from "./lib/router/utils";
export { Action as NavigationType, createPath, parsePath, } from "./lib/router/history";
export { IDLE_NAVIGATION, IDLE_FETCHER, IDLE_BLOCKER, } from "./lib/router/router";
export { data as unstable_data, generatePath, isRouteErrorResponse, json, matchPath, matchRoutes, redirect, redirectDocument, replace, resolvePath, } from "./lib/router/utils";
export type { DataRouteMatch, DataRouteObject, IndexRouteObject, NavigateOptions, Navigator, NonIndexRouteObject, RouteMatch, RouteObject, } from "./lib/context";
export type { AwaitProps, IndexRouteProps, LayoutRouteProps, MemoryRouterProps, NavigateProps, OutletProps, PathRouteProps, RouteProps, RouterProps, RouterProviderProps, RoutesProps, PatchRoutesOnMissFunction as unstable_PatchRoutesOnMissFunction, } from "./lib/components";
export type { NavigateFunction } from "./lib/hooks";
export { Await, MemoryRouter, Navigate, Outlet, Route, Router, RouterProvider, Routes, createMemoryRouter, createRoutesFromChildren, createRoutesFromChildren as createRoutesFromElements, renderMatches, } from "./lib/components";
export { useBlocker, useActionData, useAsyncError, useAsyncValue, useHref, useInRouterContext, useLoaderData, useLocation, useMatch, useMatches, useNavigate, useNavigation, useNavigationType, useOutlet, useOutletContext, useParams, useResolvedPath, useRevalidator, useRouteError, useRouteLoaderData, useRoutes, } from "./lib/hooks";
export type { BrowserRouterProps, HashRouterProps, HistoryRouterProps, LinkProps, NavLinkProps, NavLinkRenderProps, FetcherFormProps, FormProps, ScrollRestorationProps, SetURLSearchParams, SubmitFunction, FetcherSubmitFunction, FetcherWithComponents, } from "./lib/dom/lib";
export { createBrowserRouter, createHashRouter, BrowserRouter, HashRouter, Link, HistoryRouter as unstable_HistoryRouter, NavLink, Form, ScrollRestoration, useLinkClickHandler, useSearchParams, useSubmit, useFormAction, useFetcher, useFetchers, useBeforeUnload, usePrompt as unstable_usePrompt, useViewTransitionState as unstable_useViewTransitionState, } from "./lib/dom/lib";
export type { FetcherSubmitOptions, ParamKeyValuePair, SubmitOptions, URLSearchParamsInit, SubmitTarget, } from "./lib/dom/dom";
export { createSearchParams } from "./lib/dom/dom";
export type { StaticRouterProps, StaticRouterProviderProps, } from "./lib/dom/server";
export { createStaticHandler, createStaticRouter, StaticRouter, StaticRouterProvider, } from "./lib/dom/server";
export { HydratedRouter } from "./lib/dom/ssr/browser";
export { Meta, Links, Scripts, PrefetchPageLinks, } from "./lib/dom/ssr/components";

@@ -33,3 +27,2 @@ export type { ScriptsProps } from "./lib/dom/ssr/components";

export { createRoutesStub } from "./lib/dom/ssr/routes-test-stub";
export { defineRoute, type Match, type MetaMatch, } from "./lib/router/define-route";
export { createCookieFactory, isCookie } from "./lib/server-runtime/cookies";

@@ -60,15 +53,33 @@ export { composeUploadHandlers as unstable_composeUploadHandlers, parseMultipartFormData as unstable_parseMultipartFormData, } from "./lib/server-runtime/formData";

export type { Session, SessionData, SessionIdStorageStrategy, SessionStorage, FlashSessionData, } from "./lib/server-runtime/sessions";
export { ServerMode as UNSAFE_ServerMode } from "./lib/server-runtime/mode";
/** @internal */
export { DataRouterContext as UNSAFE_DataRouterContext, DataRouterStateContext as UNSAFE_DataRouterStateContext, LocationContext as UNSAFE_LocationContext, NavigationContext as UNSAFE_NavigationContext, RouteContext as UNSAFE_RouteContext, mapRouteProperties as UNSAFE_mapRouteProperties, useRouteId as UNSAFE_useRouteId, useRoutesImpl as UNSAFE_useRoutesImpl, UNSAFE_ErrorResponseImpl, };
export { createBrowserHistory as UNSAFE_createBrowserHistory, invariant as UNSAFE_invariant, } from "./lib/router/history";
/** @internal */
export { createRouter as UNSAFE_createRouter } from "./lib/router/router";
/** @internal */
export { ErrorResponseImpl as UNSAFE_ErrorResponseImpl } from "./lib/router/utils";
/** @internal */
export { DataRouterContext as UNSAFE_DataRouterContext, DataRouterStateContext as UNSAFE_DataRouterStateContext, FetchersContext as UNSAFE_FetchersContext, LocationContext as UNSAFE_LocationContext, NavigationContext as UNSAFE_NavigationContext, RouteContext as UNSAFE_RouteContext, ViewTransitionContext as UNSAFE_ViewTransitionContext, } from "./lib/context";
/** @internal */
export { mapRouteProperties as UNSAFE_mapRouteProperties } from "./lib/components";
/** @internal */
export { FrameworkContext as UNSAFE_FrameworkContext } from "./lib/dom/ssr/components";
/** @internal */
export type { AssetsManifest as UNSAFE_AssetsManifest } from "./lib/dom/ssr/entry";
/** @internal */
export { deserializeErrors as UNSAFE_deserializeErrors } from "./lib/dom/ssr/errors";
/** @internal */
export { RemixErrorBoundary as UNSAFE_RemixErrorBoundary } from "./lib/dom/ssr/errorBoundaries";
/** @internal */
export { initFogOfWar as UNSAFE_initFogOfWar, useFogOFWarDiscovery as UNSAFE_useFogOFWarDiscovery, } from "./lib/dom/ssr/fog-of-war";
/** @internal */
export type { RouteModules as UNSAFE_RouteModules } from "./lib/dom/ssr/routeModules";
/** @internal */
export type { FutureConfig as UNSAFE_FutureConfig, AssetsManifest as UNSAFE_AssetsManifest, FrameworkContextObject as UNSAFE_FrameworkContextObject, } from "./lib/dom/ssr/entry";
export { createClientRoutes as UNSAFE_createClientRoutes, createClientRoutesWithHMRRevalidationOptOut as UNSAFE_createClientRoutesWithHMRRevalidationOptOut, shouldHydrateRouteLoader as UNSAFE_shouldHydrateRouteLoader, } from "./lib/dom/ssr/routes";
/** @internal */
export type { EntryRoute as UNSAFE_EntryRoute, RouteManifest as UNSAFE_RouteManifest, } from "./lib/dom/ssr/routes";
export { getSingleFetchDataStrategy as UNSAFE_getSingleFetchDataStrategy } from "./lib/dom/ssr/single-fetch";
/** @internal */
export type { SingleFetchRedirectResult as UNSAFE_SingleFetchRedirectResult, SingleFetchResult as UNSAFE_SingleFetchResult, SingleFetchResults as UNSAFE_SingleFetchResults, } from "./lib/dom/ssr/single-fetch";
export { decodeViaTurboStream as UNSAFE_decodeViaTurboStream, SingleFetchRedirectSymbol as UNSAFE_SingleFetchRedirectSymbol, } from "./lib/dom/ssr/single-fetch";
/** @internal */
export { ServerMode as UNSAFE_ServerMode } from "./lib/server-runtime/mode";
/** @internal */
export { useScrollRestoration as UNSAFE_useScrollRestoration } from "./lib/dom/lib";

@@ -1,4 +0,6 @@

import type { FutureConfig, HydrationState, InitialEntry, LazyRouteFunction, Location, RelativeRoutingType, Router as RemixRouter, To, TrackedPromise, unstable_DataStrategyFunction, unstable_AgnosticPatchRoutesOnMissFunction } from "./router";
import { Action as NavigationType } from "./router";
import * as React from "react";
import type { InitialEntry, Location, To } from "./router/history";
import { Action as NavigationType } from "./router/history";
import type { FutureConfig, HydrationState, RelativeRoutingType, Router as RemixRouter } from "./router/router";
import type { AgnosticPatchRoutesOnMissFunction, DataStrategyFunction, LazyRouteFunction, TrackedPromise } from "./router/utils";
import type { IndexRouteObject, Navigator, NonIndexRouteObject, RouteMatch, RouteObject } from "./context";

@@ -11,3 +13,3 @@ /**

};
export interface unstable_PatchRoutesOnMissFunction extends unstable_AgnosticPatchRoutesOnMissFunction<RouteMatch> {
export interface PatchRoutesOnMissFunction extends AgnosticPatchRoutesOnMissFunction<RouteMatch> {
}

@@ -23,6 +25,14 @@ /**

initialIndex?: number;
unstable_dataStrategy?: unstable_DataStrategyFunction;
unstable_patchRoutesOnMiss?: unstable_PatchRoutesOnMissFunction;
unstable_dataStrategy?: DataStrategyFunction;
unstable_patchRoutesOnMiss?: PatchRoutesOnMissFunction;
}): RemixRouter;
export interface RouterProviderProps {
router: RemixRouter;
flushSync?: (fn: () => unknown) => undefined;
}
/**
* Given a Remix Router instance, render the appropriate UI
*/
export declare function RouterProvider({ router, flushSync: reactDomFlushSyncImpl, }: RouterProviderProps): React.ReactElement;
/**
* @category Types

@@ -29,0 +39,0 @@ */

import * as React from "react";
import type { AgnosticIndexRouteObject, AgnosticNonIndexRouteObject, AgnosticRouteMatch, History, LazyRouteFunction, Location, Action as NavigationType, RelativeRoutingType, Router, StaticHandlerContext, To, TrackedPromise } from "./router";
import type { History, Action as NavigationType, Location, To } from "./router/history";
import type { RelativeRoutingType, Router, StaticHandlerContext } from "./router/router";
import type { AgnosticIndexRouteObject, AgnosticNonIndexRouteObject, AgnosticRouteMatch, LazyRouteFunction, TrackedPromise } from "./router/utils";
export interface IndexRouteObject {

@@ -55,3 +57,14 @@ caseSensitive?: AgnosticIndexRouteObject["caseSensitive"];

export declare const DataRouterContext: React.Context<DataRouterContextObject | null>;
export declare const DataRouterStateContext: React.Context<import("./router").RouterState | null>;
export declare const DataRouterStateContext: React.Context<import("./router/router").RouterState | null>;
export type ViewTransitionContextObject = {
isTransitioning: false;
} | {
isTransitioning: true;
flushSync: boolean;
currentLocation: Location;
nextLocation: Location;
};
export declare const ViewTransitionContext: React.Context<ViewTransitionContextObject>;
export type FetchersContextObject = Map<string, any>;
export declare const FetchersContext: React.Context<FetchersContextObject>;
export declare const AwaitContext: React.Context<TrackedPromise | null>;

@@ -58,0 +71,0 @@ export interface NavigateOptions {

@@ -1,2 +0,3 @@

import type { FormEncType, HTMLFormMethod, RelativeRoutingType } from "../router";
import type { RelativeRoutingType } from "../router/router";
import type { FormEncType, HTMLFormMethod } from "../router/utils";
export declare const defaultMethod: HTMLFormMethod;

@@ -3,0 +4,0 @@ export declare function isHtmlElement(object: any): object is HTMLElement;

@@ -1,7 +0,6 @@

import type { HydrationState, Router as RemixRouter } from "../router";
import type { ViewTransition } from "./lib";
import type { HydrationState, Router as RemixRouter } from "../router/router";
import type { AssetsManifest, FutureConfig as RemixFutureConfig } from "./ssr/entry";
import type { RouteModules } from "./ssr/routeModules";
export type WindowRemixContext = {
url: string;
ssrMatches: string[];
basename?: string;

@@ -20,2 +19,8 @@ state: HydrationState;

};
export interface ViewTransition {
finished: Promise<void>;
ready: Promise<void>;
updateCallbackDone: Promise<void>;
skipTransition(): void;
}
declare global {

@@ -22,0 +27,0 @@ var __staticRouterHydrationData: HydrationState | undefined;

import * as React from "react";
import type { unstable_DataStrategyFunction, Fetcher, FutureConfig, GetScrollRestorationKeyFunction, History, HTMLFormMethod, HydrationState, Router as RemixRouter, BlockerFunction, Location, RelativeRoutingType, To } from "../router";
import type { History, To } from "../router/history";
import type { BlockerFunction, Fetcher, FutureConfig, GetScrollRestorationKeyFunction, HydrationState, RelativeRoutingType, Router as RemixRouter } from "../router/router";
import type { DataStrategyFunction, HTMLFormMethod } from "../router/utils";
import "./global";
import type { SubmitOptions, URLSearchParamsInit, SubmitTarget, FetcherSubmitOptions } from "./dom";
import type { DiscoverBehavior, PrefetchBehavior, ScriptsProps } from "./ssr/components";
import type { unstable_PatchRoutesOnMissFunction } from "../components";
import type { PatchRoutesOnMissFunction } from "../components";
import type { RouteObject, NavigateOptions } from "../context";

@@ -12,4 +14,4 @@ interface DOMRouterOpts {

hydrationData?: HydrationState;
unstable_dataStrategy?: unstable_DataStrategyFunction;
unstable_patchRoutesOnMiss?: unstable_PatchRoutesOnMissFunction;
unstable_dataStrategy?: DataStrategyFunction;
unstable_patchRoutesOnMiss?: PatchRoutesOnMissFunction;
window?: Window;

@@ -25,29 +27,3 @@ }

export declare function createHashRouter(routes: RouteObject[], opts?: DOMRouterOpts): RemixRouter;
type ViewTransitionContextObject = {
isTransitioning: false;
} | {
isTransitioning: true;
flushSync: boolean;
currentLocation: Location;
nextLocation: Location;
};
declare const ViewTransitionContext: React.Context<ViewTransitionContextObject>;
export { ViewTransitionContext as UNSAFE_ViewTransitionContext };
type FetchersContextObject = Map<string, any>;
declare const FetchersContext: React.Context<FetchersContextObject>;
export { FetchersContext as UNSAFE_FetchersContext };
export interface ViewTransition {
finished: Promise<void>;
ready: Promise<void>;
updateCallbackDone: Promise<void>;
skipTransition(): void;
}
export interface RouterProviderProps {
router: RemixRouter;
}
/**
* Given a Remix Router instance, render the appropriate UI
*/
export declare function RouterProvider({ router, }: RouterProviderProps): React.ReactElement;
/**
* @category Types

@@ -95,9 +71,9 @@ */

*
* @name unstable_HistoryRouter
* @category Router Components
*/
declare function HistoryRouter({ basename, children, history }: HistoryRouterProps): React.JSX.Element;
declare namespace HistoryRouter {
export declare function HistoryRouter({ basename, children, history, }: HistoryRouterProps): React.JSX.Element;
export declare namespace HistoryRouter {
var displayName: string;
}
export { HistoryRouter as unstable_HistoryRouter };
/**

@@ -907,7 +883,6 @@ * @category Types

*/
declare function useScrollRestoration({ getKey, storageKey, }?: {
export declare function useScrollRestoration({ getKey, storageKey, }?: {
getKey?: GetScrollRestorationKeyFunction;
storageKey?: string;
}): void;
export { useScrollRestoration as UNSAFE_useScrollRestoration };
/**

@@ -955,8 +930,8 @@ * Setup a callback to be fired on the window's `beforeunload` event.

@category Hooks
@name unstable_usePrompt
*/
declare function usePrompt({ when, message, }: {
export declare function usePrompt({ when, message, }: {
when: boolean | BlockerFunction;
message: string;
}): void;
export { usePrompt as unstable_usePrompt };
/**

@@ -966,6 +941,7 @@ This hook returns `true` when there is an active [View Transition](https://developer.mozilla.org/en-US/docs/Web/API/View_Transitions_API) to the specified location. This can be used to apply finer-grained styles to elements to further customize the view transition. This requires that view transitions have been enabled for the given navigation via {@link LinkProps.unstable_viewTransition} (or the `Form`, `submit`, or `navigate` call)

@category Hooks
@name unstable_useViewTransitionState
*/
declare function useViewTransitionState(to: To, opts?: {
export declare function useViewTransitionState(to: To, opts?: {
relative?: RelativeRoutingType;
}): boolean;
export { useViewTransitionState as unstable_useViewTransitionState };
export {};
import * as React from "react";
import type { Location, Router as RemixRouter, StaticHandlerContext, CreateStaticHandlerOptions as RouterCreateStaticHandlerOptions, FutureConfig } from "../router";
import type { Location } from "../router/history";
import type { FutureConfig, Router as RemixRouter, CreateStaticHandlerOptions as RouterCreateStaticHandlerOptions, StaticHandlerContext } from "../router/router";
import type { RouteObject } from "../context";

@@ -33,3 +34,3 @@ export interface StaticRouterProps {

*/
export declare function createStaticHandler(routes: RouteObject[], opts?: CreateStaticHandlerOptions): import("../router").StaticHandler;
export declare function createStaticHandler(routes: RouteObject[], opts?: CreateStaticHandlerOptions): import("../router/router").StaticHandler;
/**

@@ -36,0 +37,0 @@ * @category Routers

@@ -1,2 +0,2 @@

import type { StaticHandlerContext } from "../../router";
import type { StaticHandlerContext } from "../../router/router";
import type { RouteManifest, EntryRoute } from "./routes";

@@ -33,5 +33,2 @@ import type { RouteModules } from "./routeModules";

export interface FutureConfig {
v3_fetcherPersist: boolean;
v3_relativeSplatPath: boolean;
v3_throwAbortReason: boolean;
}

@@ -38,0 +35,0 @@ export interface AssetsManifest {

@@ -1,2 +0,2 @@

import type { Router as RemixRouter } from "../../router";
import type { Router as RemixRouter } from "../../router/router";
export declare function deserializeErrors(errors: RemixRouter["state"]["errors"]): RemixRouter["state"]["errors"];

@@ -1,3 +0,3 @@

import type { Router } from "../../router";
import type { unstable_PatchRoutesOnMissFunction } from "../../components";
import type { PatchRoutesOnMissFunction } from "../../components";
import type { Router as RemixRouter } from "../../router/router";
import type { AssetsManifest } from "./entry";

@@ -18,3 +18,3 @@ import type { RouteModules } from "./routeModules";

export declare function isFogOfWarEnabled(isSpaMode: boolean): boolean;
export declare function getPartialManifest(manifest: AssetsManifest, router: Router): {
export declare function getPartialManifest(manifest: AssetsManifest, router: RemixRouter): {
routes: {};

@@ -34,6 +34,6 @@ entry: {

enabled: boolean;
patchRoutesOnMiss?: unstable_PatchRoutesOnMissFunction;
patchRoutesOnMiss?: PatchRoutesOnMissFunction;
};
export declare function useFogOFWarDiscovery(router: Router, manifest: AssetsManifest, routeModules: RouteModules, isSpaMode: boolean): void;
export declare function fetchAndApplyManifestPatches(paths: string[], _fogOfWar: FogOfWarInfo, manifest: AssetsManifest, routeModules: RouteModules, isSpaMode: boolean, basename: string | undefined, patchRoutes: Router["patchRoutes"]): Promise<void>;
export declare function useFogOFWarDiscovery(router: RemixRouter, manifest: AssetsManifest, routeModules: RouteModules, isSpaMode: boolean): void;
export declare function fetchAndApplyManifestPatches(paths: string[], _fogOfWar: FogOfWarInfo, manifest: AssetsManifest, routeModules: RouteModules, isSpaMode: boolean, basename: string | undefined, patchRoutes: RemixRouter["patchRoutes"]): Promise<void>;
export {};

@@ -1,2 +0,3 @@

import type { AgnosticDataRouteMatch, Location } from "../../router";
import type { Location } from "../../router/history";
import type { AgnosticDataRouteMatch } from "../../router/utils";
import type { AssetsManifest } from "./entry";

@@ -3,0 +4,0 @@ import type { RouteModules, RouteModule } from "./routeModules";

@@ -1,2 +0,2 @@

import type { HydrationState } from "../../router";
import type { HydrationState } from "../../router/router";
import type { RouteModule, RouteModules } from "./routeModules";

@@ -3,0 +3,0 @@ import type { FutureConfig } from "./entry";

import * as React from "react";
import type { unstable_DataStrategyFunction as DataStrategyFunction } from "../../router";
import type { DataStrategyFunction } from "../../router/utils";
import type { AssetsManifest, EntryContext } from "./entry";

@@ -12,2 +12,3 @@ import type { RouteModules } from "./routeModules";

reload: boolean;
replace: boolean;
};

@@ -14,0 +15,0 @@ export type SingleFetchResult = {

import * as React from "react";
import type { Blocker, BlockerFunction, Location, ParamParseKey, Params, Path, PathMatch, PathPattern, RelativeRoutingType, Router as RemixRouter, RevalidationState, To, UIMatch } from "./router";
import { Action as NavigationType } from "./router";
import type { NavigateOptions, RouteContextObject, RouteMatch, RouteObject } from "./context";
import type { Location, Path, To } from "./router/history";
import { Action as NavigationType } from "./router/history";
import type { Blocker, BlockerFunction, RelativeRoutingType, Router as RemixRouter, RevalidationState } from "./router/router";
import type { ParamParseKey, Params, PathMatch, PathPattern, UIMatch } from "./router/utils";
/**

@@ -235,3 +237,3 @@ Resolves a URL against the current location.

*/
export declare function useNavigation(): import("./router").Navigation;
export declare function useNavigation(): import("./router/router").Navigation;
/**

@@ -238,0 +240,0 @@ Revalidate the data on the page for reasons outside of normal data mutations like window focus or polling on an interval.

import type { History, Location, Path, To } from "./history";
import { Action as HistoryAction } from "./history";
import type { AgnosticDataRouteMatch, AgnosticDataRouteObject, AgnosticRouteObject, DataStrategyFunction, FormEncType, HTMLFormMethod, MapRoutePropertiesFunction, RouteData, Submission, UIMatch, AgnosticPatchRoutesOnMissFunction } from "./utils";
import { Action as NavigationType } from "./history";
import type { AgnosticDataRouteMatch, AgnosticDataRouteObject, AgnosticRouteObject, DataStrategyFunction, FormEncType, HTMLFormMethod, MapRoutePropertiesFunction, RouteData, Submission, UIMatch, AgnosticPatchRoutesOnMissFunction, DataWithResponseInit } from "./utils";
/**

@@ -197,3 +197,3 @@ * A Router instance manages all navigation and data loading/mutations

*/
historyAction: HistoryAction;
historyAction: NavigationType;
/**

@@ -260,3 +260,2 @@ * The current location reflected by the router

export interface FutureConfig {
unstable_skipActionErrorRevalidation: boolean;
}

@@ -520,3 +519,3 @@ /**

nextLocation: Location;
historyAction: HistoryAction;
historyAction: NavigationType;
}) => boolean;

@@ -543,2 +542,3 @@ export declare const IDLE_NAVIGATION: NavigationStates["Idle"];

export declare function getStaticContextFromError(routes: AgnosticDataRouteObject[], context: StaticHandlerContext, error: any): StaticHandlerContext;
export declare function isDataWithResponseInit(value: any): value is DataWithResponseInit<unknown>;
export {};

@@ -48,3 +48,2 @@ import type { Location, Path, To } from "./history";

result: unknown;
status?: number;
}

@@ -155,3 +154,3 @@ export type LowerCaseFormMethod = "get" | "post" | "put" | "patch" | "delete";

json?: Submission["json"];
unstable_actionStatus?: number;
actionStatus?: number;
actionResult?: any;

@@ -373,2 +372,3 @@ defaultShouldRevalidate: boolean;

export declare function matchPath<ParamKey extends ParamParseKey<Path>, Path extends string>(pattern: PathPattern<Path> | Path, pathname: string): PathMatch<ParamKey> | null;
export declare function decodePath(value: string): string;
/**

@@ -416,6 +416,2 @@ * @private

*/
export declare function getToPathname(to: To): string | undefined;
/**
* @private
*/
export declare const joinPaths: (paths: string[]) => string;

@@ -442,2 +438,15 @@ /**

export declare const json: JsonFunction;
export declare class DataWithResponseInit<D> {
type: string;
data: D;
init: ResponseInit | null;
constructor(data: D, init?: ResponseInit);
}
/**
* Create "responses" that contain `status`/`headers` without forcing
* serialization into an actual `Response` - used by Remix single fetch
*
* @category Utils
*/
export declare function data<D>(data: D, init?: number | ResponseInit): DataWithResponseInit<D>;
export interface TrackedPromise extends Promise<any> {

@@ -464,2 +473,11 @@ _tracked?: boolean;

export declare const redirectDocument: RedirectFunction;
/**
* A redirect response that will perform a `history.replaceState` instead of a
* `history.pushState` for client-side navigation redirects.
* Sets the status code and the `Location` header.
* Defaults to "302 Found".
*
* @category Utils
*/
export declare const replace: RedirectFunction;
export type ErrorResponse = {

@@ -466,0 +484,0 @@ status: number;

import type { ActionFunction, ActionFunctionArgs, LoaderFunction, LoaderFunctionArgs } from "./routeModules";
import type { ResponseStub } from "./single-fetch";
/**

@@ -16,3 +15,3 @@ * An object of unknown type for route loaders and actions provided by the

export type AppData = unknown;
export declare function callRouteAction({ loadContext, action, params, request, routeId, response, }: {
export declare function callRouteAction({ loadContext, action, params, request, routeId, }: {
request: Request;

@@ -23,5 +22,4 @@ action: ActionFunction;

routeId: string;
response: ResponseStub;
}): Promise<{} | Response | null>;
export declare function callRouteLoader({ loadContext, loader, params, request, routeId, response, }: {
export declare function callRouteLoader({ loadContext, loader, params, request, routeId, }: {
request: Request;

@@ -32,3 +30,2 @@ loader: LoaderFunction;

routeId: string;
response: ResponseStub;
}): Promise<{} | Response | null>;

@@ -1,2 +0,2 @@

import { type StaticHandlerContext } from "../router";
import type { StaticHandlerContext } from "../router/router";
import { ServerMode } from "./mode";

@@ -3,0 +3,0 @@ /**

@@ -28,4 +28,11 @@ export type JsonFunction = <Data>(data: Data, init?: number | ResponseInit) => TypedResponse<Data>;

export declare const redirectDocument: RedirectFunction;
/**
* A redirect response. Sets the status code and the `Location` header.
* Defaults to "302 Found".
*
* @see https://remix.run/utils/redirect
*/
export declare const replace: RedirectFunction;
export declare function isResponse(value: any): value is Response;
export declare function isRedirectStatusCode(statusCode: number): boolean;
export declare function isRedirectResponse(response: Response): boolean;

@@ -1,2 +0,2 @@

import type { Params } from "../router";
import type { Params } from "../router/utils";
import type { ServerRoute } from "./routes";

@@ -3,0 +3,0 @@ export interface RouteMatch<Route> {

@@ -1,6 +0,6 @@

import type { ActionFunction as RRActionFunction, ActionFunctionArgs as RRActionFunctionArgs, AgnosticRouteMatch, LoaderFunction as RRLoaderFunction, LoaderFunctionArgs as RRLoaderFunctionArgs, Location, Params } from "../router";
import type { Location } from "../router/history";
import type { ActionFunction as RRActionFunction, ActionFunctionArgs as RRActionFunctionArgs, AgnosticRouteMatch, LoaderFunction as RRLoaderFunction, LoaderFunctionArgs as RRLoaderFunctionArgs, Params } from "../router/utils";
import type { AppData, AppLoadContext } from "./data";
import type { LinkDescriptor } from "./links";
import type { SerializeFrom } from "../dom/ssr/components";
import type { ResponseStub } from "./single-fetch";
export interface RouteModules<RouteModule> {

@@ -24,3 +24,2 @@ [routeId: string]: RouteModule | undefined;

context: AppLoadContext;
response?: ResponseStub;
};

@@ -48,3 +47,2 @@ /**

context: AppLoadContext;
response?: ResponseStub;
};

@@ -51,0 +49,0 @@ /**

@@ -1,2 +0,2 @@

import type { AgnosticDataRouteObject } from "../router";
import type { AgnosticDataRouteObject } from "../router/utils";
import type { FutureConfig } from "../dom/ssr/entry";

@@ -3,0 +3,0 @@ import type { ServerRouteModule } from "./routeModules";

@@ -1,2 +0,2 @@

import type { HydrationState } from "../router";
import type { HydrationState } from "../router/router";
import type { FutureConfig } from "../dom/ssr/entry";

@@ -7,3 +7,3 @@ type ValidateShape<T, Shape> = T extends Shape ? Exclude<keyof T, keyof Shape> extends never ? T : never : never;

criticalCss?: string;
url: string;
ssrMatches: string[];
basename: string | undefined;

@@ -10,0 +10,0 @@ future: FutureConfig;

@@ -1,36 +0,15 @@

import { type StaticHandler, type unstable_DataStrategyFunction as DataStrategyFunction, type StaticHandlerContext, UNSAFE_ErrorResponseImpl as ErrorResponseImpl } from "../router";
import type { StaticHandler } from "../router/router";
import type { DataStrategyFunction } from "../router/utils";
import { type SingleFetchRedirectResult, type SingleFetchResult, type SingleFetchResults, SingleFetchRedirectSymbol } from "../dom/ssr/single-fetch";
import type { AppLoadContext } from "./data";
import { ServerMode } from "./mode";
import type { ServerBuild } from "./build";
export type { SingleFetchResult, SingleFetchResults };
export { SingleFetchRedirectSymbol };
export type DataStrategyCtx = {
response: ResponseStub;
};
export declare const ResponseStubOperationsSymbol: unique symbol;
export type ResponseStubOperation = [
"set" | "append" | "delete",
string,
string?
];
/**
* A stubbed response to let you set the status/headers of your response from
* loader/action functions
*/
export type ResponseStub = {
status: number | undefined;
headers: Headers;
};
export type ResponseStubImpl = ResponseStub & {
[ResponseStubOperationsSymbol]: ResponseStubOperation[];
};
export declare const SINGLE_FETCH_REDIRECT_STATUS = 202;
export declare function getSingleFetchDataStrategy(responseStubs: ReturnType<typeof getResponseStubs>, { isActionDataRequest, loadRouteIds, }?: {
export declare function getSingleFetchDataStrategy({ isActionDataRequest, loadRouteIds, }?: {
isActionDataRequest?: boolean;
loadRouteIds?: string[];
}): DataStrategyFunction;
export declare function getSingleFetchResourceRouteDataStrategy({ responseStubs, }: {
responseStubs: ReturnType<typeof getResponseStubs>;
}): DataStrategyFunction;
export declare function singleFetchAction(serverMode: ServerMode, staticHandler: StaticHandler, request: Request, handlerUrl: URL, loadContext: AppLoadContext, handleError: (err: unknown) => void): Promise<{
export declare function singleFetchAction(build: ServerBuild, serverMode: ServerMode, staticHandler: StaticHandler, request: Request, handlerUrl: URL, loadContext: AppLoadContext, handleError: (err: unknown) => void): Promise<{
result: SingleFetchResult;

@@ -40,3 +19,3 @@ headers: Headers;

}>;
export declare function singleFetchLoaders(serverMode: ServerMode, staticHandler: StaticHandler, request: Request, handlerUrl: URL, loadContext: AppLoadContext, handleError: (err: unknown) => void): Promise<{
export declare function singleFetchLoaders(build: ServerBuild, serverMode: ServerMode, staticHandler: StaticHandler, request: Request, handlerUrl: URL, loadContext: AppLoadContext, handleError: (err: unknown) => void): Promise<{
result: SingleFetchResults;

@@ -46,13 +25,7 @@ headers: Headers;

}>;
export declare function isResponseStub(value: any): value is ResponseStubImpl;
export declare function getResponseStubs(): Record<string | symbol, ResponseStubImpl>;
export declare function proxyResponseStubHeadersToHeaders(stub: ResponseStubImpl, headers: Headers): Headers;
export declare function convertResponseStubToErrorResponse(stub: ResponseStub): ErrorResponseImpl;
export declare function mergeResponseStubs(context: StaticHandlerContext, responseStubs: ReturnType<typeof getResponseStubs>, { isActionDataRequest }?: {
isActionDataRequest?: boolean;
}): {
statusCode: number;
headers: Headers;
};
export declare function getSingleFetchRedirect(status: number, headers: Headers): SingleFetchRedirectResult;
type Serializable = undefined | null | boolean | string | symbol | number | Array<Serializable> | {
[key: PropertyKey]: Serializable;
} | bigint | Date | URL | RegExp | Error | Map<Serializable, Serializable> | Set<Serializable> | Promise<Serializable>;
export declare function data(value: Serializable, init?: number | ResponseInit): import("../router/utils").DataWithResponseInit<Serializable>;
export declare function encodeViaTurboStream(data: any, requestSignal: AbortSignal, streamTimeout: number | undefined, serverMode: ServerMode): ReadableStream<Uint8Array>;
/**
* React Router v0.0.0-nightly-ec37db8f4-20240702
* React Router v0.0.0-nightly-f47048541-20240813
*

@@ -4,0 +4,0 @@ * Copyright (c) Remix Software Inc.

{
"name": "react-router",
"version": "0.0.0-nightly-ec37db8f4-20240702",
"version": "0.0.0-nightly-f47048541-20240813",
"description": "Declarative routing for React",

@@ -23,4 +23,17 @@ "keywords": [

"unpkg": "./dist/umd/react-router.production.min.js",
"module": "./dist/index.js",
"module": "./dist/index.mjs",
"types": "./dist/index.d.ts",
"exports": {
".": {
"types": "./dist/index.d.ts",
"import": "./dist/index.mjs",
"require": "./dist/main.js"
},
"./dom": {
"types": "./dist/dom-export.d.ts",
"import": "./dist/dom-export.mjs",
"require": "./dist/main-dom-export.js"
},
"./package.json": "./package.json"
},
"dependencies": {

@@ -30,7 +43,9 @@ "@types/cookie": "^0.6.0",

"cookie": "^0.6.0",
"set-cookie-parser": "^2.6.0",
"source-map": "^0.7.3",
"turbo-stream": "^2.2.0",
"react-router": "0.0.0-nightly-ec37db8f4-20240702"
"react-router": "0.0.0-nightly-f47048541-20240813"
},
"devDependencies": {
"@types/set-cookie-parser": "^2.4.1",
"react": "^18.2.0",

@@ -37,0 +52,0 @@ "react-dom": "^18.2.0"

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc