Files
landing_page/qdrant-landing/themes/qdrant-2024/assets/js/documentation.js
T
aa1acf0acb Created Dev-portal pages (#1219)
* 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>
2024-11-14 18:59:28 +01:00

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');
}
});