@@ -6,14 +6,19 @@ import { DualScrollSyncContext } from '@/contexts';
66import { useScrollSyncObserver , useValidateChildren } from '@/hooks' ;
77
88import styles from './DualScrollSync.module.scss' ;
9- import type { DualScrollSyncProps } from './DualScrollSync.types' ;
9+ import type { DualScrollSyncProps , DualScrollSyncType } from './DualScrollSync.types' ;
1010import { DualScrollSyncContent } from './DualScrollSyncContent' ;
1111import { DualScrollSyncContentSection } from './DualScrollSyncContentSection/DualScrollSyncContentSection' ;
1212import { DualScrollSyncLabel } from './DualScrollSyncLabel/DualScrollSyncLabel' ;
1313import { DualScrollSyncNav } from './DualScrollSyncNav' ;
1414import { DualScrollSyncNavItem } from './DualScrollSyncNavItem' ;
1515
16- export const DualScrollSync : FC < DualScrollSyncProps > = ( { children, id, items, onItemClick } ) => {
16+ export const DualScrollSyncBase : FC < DualScrollSyncProps > = ( {
17+ children,
18+ id,
19+ items,
20+ onItemClick
21+ } ) => {
1722 const baseId = id ?? 'dual-scroll-sync' ;
1823 const navId = `${ baseId } -nav` ;
1924 const contentId = `${ baseId } -content` ;
@@ -80,4 +85,12 @@ export const DualScrollSync: FC<DualScrollSyncProps> = ({ children, id, items, o
8085 ) ;
8186} ;
8287
83- DualScrollSync . displayName = 'DualScrollSync' ;
88+ DualScrollSyncBase . displayName = 'DualScrollSync' ;
89+
90+ export const DualScrollSync : DualScrollSyncType = Object . assign ( DualScrollSyncBase , {
91+ Nav : DualScrollSyncNav ,
92+ NavItem : DualScrollSyncNavItem ,
93+ Content : DualScrollSyncContent ,
94+ ContentSection : DualScrollSyncContentSection ,
95+ Label : DualScrollSyncLabel
96+ } ) ;
0 commit comments