onsitesurvey/src/app/layout.tsx

42 lines
1.0 KiB
TypeScript

import type { Metadata } from 'next'
import ReactQueryProviders from '@/providers/ReactQueryProvider'
import EdgeProvider from '@/providers/EdgeProvider'
import PopupController from '@/components/ui/PopupController'
import '@/styles/style.scss'
import type { ReactNode } from 'react'
export const metadata: Metadata = {
title: 'Create Next App',
description: 'Generated by create next app',
}
interface RootLayoutProps {
children: ReactNode
header: ReactNode
footer: ReactNode
floatBtn: ReactNode
}
export default async function RootLayout({ children, header, footer, floatBtn }: RootLayoutProps): Promise<ReactNode> {
return (
<ReactQueryProviders>
<EdgeProvider>
<html lang="ja" suppressHydrationWarning>
<body>
<div className="wrap">
{header}
{children}
{footer}
{floatBtn}
</div>
<PopupController />
</body>
</html>
</EdgeProvider>
</ReactQueryProviders>
)
}