diff --git a/packages/logos-docusaurus-theme/src/client/theme/TOCCollapsible/CollapseButton/index.tsx b/packages/logos-docusaurus-theme/src/client/theme/TOCCollapsible/CollapseButton/index.tsx new file mode 100644 index 0000000..4c9aedb --- /dev/null +++ b/packages/logos-docusaurus-theme/src/client/theme/TOCCollapsible/CollapseButton/index.tsx @@ -0,0 +1,30 @@ +import React from 'react' +import clsx from 'clsx' +import Translate from '@docusaurus/Translate' +import styles from './styles.module.css' +import { ArrowDownIcon, ArrowUpIcon, Typography } from '@acid-info/lsd-react' +export default function TOCCollapsibleCollapseButton({ collapsed, ...props }) { + return ( + + ) +} diff --git a/packages/logos-docusaurus-theme/src/client/theme/TOCCollapsible/CollapseButton/styles.module.css b/packages/logos-docusaurus-theme/src/client/theme/TOCCollapsible/CollapseButton/styles.module.css new file mode 100644 index 0000000..ee35c40 --- /dev/null +++ b/packages/logos-docusaurus-theme/src/client/theme/TOCCollapsible/CollapseButton/styles.module.css @@ -0,0 +1,13 @@ +.tocCollapsibleButton { + font-size: inherit; + display: flex; + justify-content: space-between; + align-items: center; + padding: 0.4rem 0.8rem; + width: 100%; + border: 1px solid rgb(var(--lsd-border-primary)); +} + +.tocCollapsibleButtonExpanded::after { + transform: none; +} diff --git a/packages/logos-docusaurus-theme/src/client/theme/TOCCollapsible/index.tsx b/packages/logos-docusaurus-theme/src/client/theme/TOCCollapsible/index.tsx new file mode 100644 index 0000000..c201063 --- /dev/null +++ b/packages/logos-docusaurus-theme/src/client/theme/TOCCollapsible/index.tsx @@ -0,0 +1,38 @@ +import React from 'react' +import clsx from 'clsx' +import { useCollapsible, Collapsible } from '@docusaurus/theme-common' +import TOCItems from '@theme/TOCItems' +import CollapseButton from '@theme/TOCCollapsible/CollapseButton' +import styles from './styles.module.css' +export default function TOCCollapsible({ + toc, + className, + minHeadingLevel, + maxHeadingLevel, +}) { + const { collapsed, toggleCollapsed } = useCollapsible({ + initialState: true, + }) + return ( +