diff --git a/packages/logos-docusaurus-theme/src/client/components/Button/ScrollToBottom/ScrollToBottom.tsx b/packages/logos-docusaurus-theme/src/client/components/Button/ScrollToBottom/ScrollToBottom.tsx new file mode 100644 index 0000000..e40a855 --- /dev/null +++ b/packages/logos-docusaurus-theme/src/client/components/Button/ScrollToBottom/ScrollToBottom.tsx @@ -0,0 +1,33 @@ +import { ArrowDownIcon, IconButton } from '@acid-info/lsd-react' +import clsx from 'clsx' +import React, { HTMLProps } from 'react' +import styles from './styles.module.scss' + +type TProps = { + bottom: number +} + +export const ScrollToBottom = ( + props: TProps & HTMLProps, +): JSX.Element => { + const { children, className, bottom, ...rest } = props + + const handleScrollToBottom = () => { + window.scrollTo({ + top: document.body.scrollHeight, + behavior: 'smooth', + }) + } + + return ( + + + + ) +} diff --git a/packages/logos-docusaurus-theme/src/client/components/Button/ScrollToBottom/index.ts b/packages/logos-docusaurus-theme/src/client/components/Button/ScrollToBottom/index.ts new file mode 100644 index 0000000..d50c418 --- /dev/null +++ b/packages/logos-docusaurus-theme/src/client/components/Button/ScrollToBottom/index.ts @@ -0,0 +1 @@ +export * from './ScrollToBottom' diff --git a/packages/logos-docusaurus-theme/src/client/components/Button/ScrollToBottom/styles.module.scss b/packages/logos-docusaurus-theme/src/client/components/Button/ScrollToBottom/styles.module.scss new file mode 100644 index 0000000..69731c1 --- /dev/null +++ b/packages/logos-docusaurus-theme/src/client/components/Button/ScrollToBottom/styles.module.scss @@ -0,0 +1,7 @@ +@use '../../../css/utils'; + +.scrollToBottom { + z-index: 100; + position: absolute; + background: rgb(var(--lsd-surface-primary)) !important; +} diff --git a/packages/logos-docusaurus-theme/src/client/components/mdx/HeroInfo/HeroInfo.tsx b/packages/logos-docusaurus-theme/src/client/components/mdx/HeroInfo/HeroInfo.tsx index ad77f2d..07ac44a 100644 --- a/packages/logos-docusaurus-theme/src/client/components/mdx/HeroInfo/HeroInfo.tsx +++ b/packages/logos-docusaurus-theme/src/client/components/mdx/HeroInfo/HeroInfo.tsx @@ -4,6 +4,7 @@ import { useHero } from '../Hero/Hero.context' import './HeroInfo.scss' import { useScrollY } from '../../../lib/useScrollY' import { calcScrollThreshold, mapFloat } from '../../../lib/ui.utils' +import { ScrollToBottom } from '@logos-theme/components/Button/ScrollToBottom' export type HeroInfoProps = PropsWithChildren< React.HTMLAttributes @@ -47,15 +48,18 @@ export const HeroInfo: React.FC = ({ }, []) return ( -
- {children} -
+ <> +
+ {children} +
+ + ) }