diff options
Diffstat (limited to 'src/components/Sidebar')
| -rw-r--r-- | src/components/Sidebar/Sidebar.module.scss | 43 | ||||
| -rw-r--r-- | src/components/Sidebar/Sidebar.tsx | 40 | 
2 files changed, 0 insertions, 83 deletions
| diff --git a/src/components/Sidebar/Sidebar.module.scss b/src/components/Sidebar/Sidebar.module.scss deleted file mode 100644 index fb6230d..0000000 --- a/src/components/Sidebar/Sidebar.module.scss +++ /dev/null @@ -1,43 +0,0 @@ -@use "@styles/abstracts/mixins" as mix; - -.wrapper { -  grid-column: 2; - -  &--left { -    margin: var(--spacing-md) 0; -  } - -  &--right { -    margin: var(--spacing-md) 0 0; -  } - -  @include mix.media("screen") { -    @include mix.dimensions("md") { -      align-self: stretch; -      margin: 0 var(--spacing-xs) var(--spacing-md); - -      &--right { -        grid-row: 2 / 4; -        grid-column: 3; -      } -    } - -    @include mix.dimensions("lg") { -      &--left { -        grid-row: 2 / 4; -        grid-column: 1; -      } -    } -  } -} - -.body { -  @include mix.media("screen") { -    @include mix.dimensions("md") { -      align-self: flex-start; -      width: 100%; -      position: sticky; -      top: var(--spacing-xs); -    } -  } -} diff --git a/src/components/Sidebar/Sidebar.tsx b/src/components/Sidebar/Sidebar.tsx deleted file mode 100644 index 9e2079d..0000000 --- a/src/components/Sidebar/Sidebar.tsx +++ /dev/null @@ -1,40 +0,0 @@ -import { Children, cloneElement, isValidElement, ReactNode } from 'react'; -import styles from './Sidebar.module.scss'; - -type SidebarPosition = 'left' | 'right'; - -const Sidebar = ({ -  children, -  position, -  ariaLabel, -  title, -}: { -  children: ReactNode; -  position: SidebarPosition; -  ariaLabel?: string; -  title?: string; -}) => { -  const childrenWithProps = Children.map(children, (child) => { -    if (isValidElement(child)) { -      return cloneElement(child, { titleLevel: title ? 3 : 2 }); -    } -    return child; -  }); - -  const positionClass = `wrapper--${position}`; - -  return ( -    <aside -      className={`${styles.wrapper} ${styles[positionClass]}`} -      aria-label={ariaLabel} -      aria-labelledby={title ? `${position}-sidebar-title` : undefined} -    > -      <div className={styles.body}> -        {title && <h2 id={`${position}-sidebar-title`}>{title}</h2>} -        {childrenWithProps} -      </div> -    </aside> -  ); -}; - -export default Sidebar; | 
