mirror of
https://github.com/qdrant/landing_page.git
synced 2026-09-29 16:08:32 +02:00
* Created Dev-portal pages * changed structure of documents for dev-portal section, renamed dev-portal to docs, related template changes * keeping learn section for future usage * update dev-portal and documents * added feedback and breadcrumbs components * used the docs-side menu partial on documentation pages, and added active state to the docs-header links * search console on docs * small fixes * assigned partitions, css fix * fix links on the core page * update links for cloud * update links for build * Reference -> API Reference * [WIP] Dev portal light theme (#1250) * light theme - docs side menu * background fix * wip: updating layout * layout update * light theme * card titles with a link * upd page-search package * simplified header * fixes * TOC scroll spy (#1259) * scroll spy on table of contents * packages versions fix * custom scroll spy for toc * make spy work again --------- Co-authored-by: generall <andrey@vasnetsov.com> * limit toc depth to 3 * thin scrollbar * No dev template (#1266) * divided the docs template into smaller partials, increased reusability * removed docs section, moved all to the documentation * review fixes * review fixes --------- Co-authored-by: generall <andrey@vasnetsov.com> * side panel more compact * toc margin bottom fix * Refactoring and renaming (#1277) * renamed and moved partials, fixed link * refactoring: docs-card * fix * fix urls * disable scrollbar on table of content * added scrollbar colors for light theme (#1280) * fix language * Dev portal fixes (#1285) * cards fixes * moved files, fixed paddings * fix for my fix * external header links * fix --------- Co-authored-by: trean <trean.mi@gmail.com> Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com> Co-authored-by: davidmyriel <davidmyriel@gmail.com>
41 lines
1.5 KiB
JavaScript
41 lines
1.5 KiB
JavaScript
import ThemeSwitch from './theme-switch.js';
|
|
import { XL_BREAKPOINT } from './constants';
|
|
import TableOfContents from './table-of-content';
|
|
|
|
const themeSwitch = new ThemeSwitch();
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
themeSwitch.initSwitcher();
|
|
const sidebar = document.getElementById('sidebar');
|
|
const sidebarToggle = document.getElementById('sidebar-toggle');
|
|
const searchbar = document.getElementsByClassName('docs-menu__input')[0];
|
|
const docsMenu = document.getElementsByClassName('docs-menu')[0];
|
|
|
|
sidebarToggle.addEventListener('click', () => {
|
|
sidebarToggle.classList.toggle('active');
|
|
sidebar.classList.toggle('active');
|
|
});
|
|
|
|
const moveSearchButton = function () {
|
|
const checkIfFirstChildIsSearch = (element) => {
|
|
return element.children.length > 0 && element.children[0].classList.contains('docs-menu__input');
|
|
};
|
|
|
|
const isMobile = window.innerWidth <= XL_BREAKPOINT;
|
|
if (isMobile && !checkIfFirstChildIsSearch(docsMenu)) {
|
|
docsMenu.before(searchbar);
|
|
} else if (!isMobile && !checkIfFirstChildIsSearch(sidebar)) {
|
|
sidebar.before(searchbar);
|
|
}
|
|
};
|
|
|
|
moveSearchButton();
|
|
|
|
window.addEventListener('resize', moveSearchButton);
|
|
|
|
// if #TableOfContents and .documentation-article exists on the page, initialize TableOfContents class
|
|
if (document.getElementById('TableOfContents') && document.querySelector('.documentation-article')) {
|
|
new TableOfContents('#TableOfContents', '.documentation-article');
|
|
}
|
|
});
|