plain site; demo content added; re-terminal theme enabled; some theme customizations
This commit is contained in:
12
themes/re-terminal/assets/js/banner.js
Normal file
12
themes/re-terminal/assets/js/banner.js
Normal file
@@ -0,0 +1,12 @@
|
||||
const banner = document.getElementById("banner");
|
||||
const buttons = banner.getElementsByTagName("button");
|
||||
|
||||
if (buttons?.[0]) {
|
||||
const listener = buttons[0].addEventListener("click", () => {
|
||||
banner.remove();
|
||||
});
|
||||
|
||||
if (!document.getElementById("banner")) {
|
||||
removeEventListener("click", listener);
|
||||
}
|
||||
}
|
44
themes/re-terminal/assets/js/menu.js
Normal file
44
themes/re-terminal/assets/js/menu.js
Normal file
@@ -0,0 +1,44 @@
|
||||
const container = document.querySelector(".container");
|
||||
const allMenus = document.querySelectorAll(".menu");
|
||||
|
||||
// Hide menus on body click
|
||||
document.body.addEventListener("click", () => {
|
||||
allMenus.forEach(menu => {
|
||||
if (menu.classList.contains("open")) {
|
||||
menu.classList.remove("open");
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// Reset menus on resize
|
||||
window.addEventListener("resize", () => {
|
||||
allMenus.forEach(menu => {
|
||||
menu.classList.remove("open");
|
||||
});
|
||||
});
|
||||
|
||||
// Handle desktop menu
|
||||
allMenus.forEach(menu => {
|
||||
const trigger = menu.querySelector(".menu__trigger");
|
||||
const dropdown = menu.querySelector(".menu__dropdown");
|
||||
|
||||
trigger.addEventListener("click", e => {
|
||||
e.stopPropagation();
|
||||
|
||||
if (menu.classList.contains("open")) {
|
||||
menu.classList.remove("open");
|
||||
} else {
|
||||
// Close all menus...
|
||||
allMenus.forEach(m => m.classList.remove("open"));
|
||||
// ...before opening the current one
|
||||
menu.classList.add("open");
|
||||
}
|
||||
|
||||
if (dropdown.getBoundingClientRect().right > container.getBoundingClientRect().right) {
|
||||
dropdown.style.left = "auto";
|
||||
dropdown.style.right = 0;
|
||||
}
|
||||
});
|
||||
|
||||
dropdown.addEventListener("click", e => e.stopPropagation());
|
||||
});
|
80
themes/re-terminal/assets/js/prism.js
Normal file
80
themes/re-terminal/assets/js/prism.js
Normal file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user