summaryrefslogtreecommitdiff
path: root/smoke/docs-main/src/components/LeftSidebar/SidebarSectionToggle.tsx
blob: 13fc8f74cdbddcd2a1b8414da92cb3bbc4cba96d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import { h } from 'preact';
import { useState } from 'preact/hooks';
import './SidebarSectionToggle.css';

const SidebarSectionToggle = ({ defaultActiveTab }) => {
	const [activeTab, setActiveTab] = useState(defaultActiveTab);
	function toggleType(type: 'learn' | 'api') {
		document.querySelectorAll(`li.nav-group`).forEach((el) => el.classList.remove('active'));
		document.querySelectorAll(`li.nav-group.${type}`).forEach((el) => el.classList.add('active'));
		setActiveTab(type);
	}
	return (
		<div class="SidebarSectionToggle">
			<button class={activeTab === 'learn' ? 'active' : ''} onClick={() => toggleType('learn')}>
				Learn
			</button>
			<button class={activeTab === 'api' ? 'active' : ''} onClick={() => toggleType('api')}>
				API
			</button>
		</div>
	);
};

export default SidebarSectionToggle;