11import React from "react" ;
2+ import FooterAbout , { FooterAboutProps } from "./FooterAbout" ;
3+ import FooterFeedback , { FooterFeedbackProps } from "./FooterFeedback" ;
4+ import { FooterSocials , FooterSocialsProps } from "./FooterSocials" ;
5+ import FooterPublic , { FooterPublicProps } from "./FooterPublic" ;
26import { FooterPartsPrimitiveProps } from "./types" ;
37
4- interface FooterRootProps extends FooterPartsPrimitiveProps < HTMLDivElement > {
8+ export interface FooterRootProps extends FooterPartsPrimitiveProps < HTMLDivElement > {
59 separator ?: React . ReactElement ;
610}
711
8- export const Separator = ( ) => (
12+ const Separator = ( ) => (
913 < div className = "h-5 border xl:h-6 xl:border-2 border-custom-stroke hidden xl:block" />
1014) ;
1115
12- const Footer = ( { children, className, separator, ...rest } : React . PropsWithChildren < FooterRootProps > ) => {
16+ const Footer : React . FC < FooterRootProps > & {
17+ About : React . FC < FooterAboutProps > ;
18+ Feedback : React . FC < FooterFeedbackProps > ;
19+ Socials : React . FC < FooterSocialsProps > ;
20+ Public : React . FC < FooterPublicProps > ;
21+ } = ( { children, className, separator, ...rest } ) => {
1322
1423 const viewSeparator = separator ?? < Separator /> ;
1524
@@ -28,12 +37,15 @@ const Footer = ({ children, className, separator, ...rest}: React.PropsWithChild
2837 } ;
2938
3039 return (
31- < div >
32- < div className = { `flex flex-col md:flex-row w-full justify-between sm:items-stretch md:items-center bg-white dark:bg-black gap-[20px] md:gap-[24px] mx-auto max-w-[1920px] p-2 ${ className } ` } >
33- { renderChildrenWithSeparator ( ) }
34- </ div >
40+ < div className = { `flex flex-col md:flex-row w-full justify-between sm:items-stretch md:items-center bg-white dark:bg-black gap-[20px] md:gap-[24px] mx-auto max-w-[1920px] p-2 ${ className } ` } { ...rest } >
41+ { renderChildrenWithSeparator ( ) }
3542 </ div >
3643 ) ;
3744} ;
3845
39- export default Footer ;
46+ Footer . About = FooterAbout ;
47+ Footer . Feedback = FooterFeedback ;
48+ Footer . Socials = FooterSocials ;
49+ Footer . Public = FooterPublic ;
50+
51+ export { Footer , Separator } ;
0 commit comments