From 09a5b5e59b1cff001de84fbcc46158c348c25d90 Mon Sep 17 00:00:00 2001 From: Philip Atkinson Date: Fri, 7 Oct 2022 13:24:39 -0400 Subject: [PATCH] Update Types to Match React Router Updates Fixes a type mismatch caused by change https://github.com/remix-run/react-router/pull/9366 in react-router code. --- packages/react/src/reactrouterv6.tsx | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/packages/react/src/reactrouterv6.tsx b/packages/react/src/reactrouterv6.tsx index af15f8916417..6025be8b156a 100644 --- a/packages/react/src/reactrouterv6.tsx +++ b/packages/react/src/reactrouterv6.tsx @@ -8,14 +8,24 @@ import React from 'react'; import { Action, Location } from './types'; -interface RouteObject { - caseSensitive?: boolean; - children?: RouteObject[]; - element?: React.ReactNode; - index?: boolean; - path?: string; +interface NonIndexRouteObject { + caseSensitive?: boolean; + children?: RouteObject[]; + element?: React.ReactNode | null; + index?: false; + path?: string; } +interface IndexRouteObject { + caseSensitive?: boolean; + children?: undefined; + element?: React.ReactNode | null; + index?: true; + path?: string; +} + +type RouteObject = IndexRouteObject | NonIndexRouteObject; + type Params = { readonly [key in Key]: string | undefined; };