Merged in feat/sw-3418-add-routerprovider-to-partner-sas (pull request #2777)
feat(SW-3418): Add RouterProvider to partner-sas * Add RouterProvider Approved-by: Joakim Jäderberg
This commit is contained in:
@@ -10,6 +10,7 @@ import { NuqsAdapter } from "@scandic-hotels/booking-flow/utils/nuqs"
|
||||
import { Lang } from "@scandic-hotels/common/constants/language"
|
||||
import { TrpcProvider } from "@scandic-hotels/trpc/Provider"
|
||||
|
||||
import { RACRouterProvider } from "@/components/RACRouterProvider"
|
||||
import { getMessages } from "@/i18n"
|
||||
import ClientIntlProvider from "@/i18n/Provider"
|
||||
import { setLang } from "@/i18n/serverContext"
|
||||
@@ -62,26 +63,28 @@ export default async function RootLayout(props: RootLayoutProps) {
|
||||
<NuqsAdapter>
|
||||
{/* TODO handle onError */}
|
||||
<TrpcProvider>
|
||||
<BookingFlowContextProvider
|
||||
data={{
|
||||
// TODO
|
||||
isLoggedIn: false,
|
||||
}}
|
||||
>
|
||||
<BookingFlowTrackingProvider
|
||||
trackingFunctions={{
|
||||
trackBookingSearchClick,
|
||||
trackAccordionItemOpen,
|
||||
trackOpenSidePeek,
|
||||
trackGenericEvent,
|
||||
<RACRouterProvider>
|
||||
<BookingFlowContextProvider
|
||||
data={{
|
||||
// TODO
|
||||
isLoggedIn: false,
|
||||
}}
|
||||
>
|
||||
<Header />
|
||||
{props.bookingwidget}
|
||||
<main>{children}</main>
|
||||
<Footer />
|
||||
</BookingFlowTrackingProvider>
|
||||
</BookingFlowContextProvider>
|
||||
<BookingFlowTrackingProvider
|
||||
trackingFunctions={{
|
||||
trackBookingSearchClick,
|
||||
trackAccordionItemOpen,
|
||||
trackOpenSidePeek,
|
||||
trackGenericEvent,
|
||||
}}
|
||||
>
|
||||
<Header />
|
||||
{props.bookingwidget}
|
||||
<main>{children}</main>
|
||||
<Footer />
|
||||
</BookingFlowTrackingProvider>
|
||||
</BookingFlowContextProvider>
|
||||
</RACRouterProvider>
|
||||
</TrpcProvider>
|
||||
</NuqsAdapter>
|
||||
</ClientIntlProvider>
|
||||
|
||||
22
apps/partner-sas/components/RACRouterProvider.tsx
Normal file
22
apps/partner-sas/components/RACRouterProvider.tsx
Normal file
@@ -0,0 +1,22 @@
|
||||
// https://react-spectrum.adobe.com/react-aria/routing.html#app-router
|
||||
|
||||
"use client"
|
||||
|
||||
import { useRouter } from "next/navigation"
|
||||
import { RouterProvider } from "react-aria-components"
|
||||
|
||||
import type { PropsWithChildren } from "react"
|
||||
|
||||
declare module "react-aria-components" {
|
||||
interface RouterConfig {
|
||||
routerOptions: NonNullable<
|
||||
Parameters<ReturnType<typeof useRouter>["push"]>[1]
|
||||
>
|
||||
}
|
||||
}
|
||||
|
||||
export function RACRouterProvider({ children }: PropsWithChildren) {
|
||||
const router = useRouter()
|
||||
|
||||
return <RouterProvider navigate={router.push}>{children}</RouterProvider>
|
||||
}
|
||||
Reference in New Issue
Block a user