diff options
Diffstat (limited to 'src/components/templates/page/page-sidebar.tsx')
| -rw-r--r-- | src/components/templates/page/page-sidebar.tsx | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/components/templates/page/page-sidebar.tsx b/src/components/templates/page/page-sidebar.tsx new file mode 100644 index 0000000..1b5ae97 --- /dev/null +++ b/src/components/templates/page/page-sidebar.tsx @@ -0,0 +1,20 @@ +import { type ForwardRefRenderFunction, forwardRef } from 'react'; +import { Aside, type AsideProps } from '../../atoms'; +import styles from './page.module.scss'; + +export type PageSidebarProps = AsideProps; + +const PageSidebarWithRef: ForwardRefRenderFunction< + HTMLElement, + PageSidebarProps +> = ({ children, className = '', ...props }, ref) => { + const sidebarClass = `${styles.sidebar} ${className}`; + + return ( + <Aside {...props} className={sidebarClass} ref={ref}> + <div className={styles.sidebar__body}>{children}</div> + </Aside> + ); +}; + +export const PageSidebar = forwardRef(PageSidebarWithRef); |
