(function () {
var e = document.querySelector(".menu-open");
e &&
e.addEventListener("click", function () {
document.body.classList.contains("is-menu-open") ? document.body.classList.remove("is-menu-open") : document.body.classList.add("is-menu-open");
});
var c = document.querySelector(".menu-close");
c &&
c.addEventListener("click", function () {
document.body.classList.contains("is-menu-open") ? document.body.classList.remove("is-menu-open") : document.body.classList.add("is-menu-open");
});
var s = document.querySelector(".search-open");
s &&
s.addEventListener("click", function () {
document.body.classList.contains("is-search-open") ? document.body.classList.remove("is-search-open") : document.body.classList.add("is-search-open");
});
var sc = document.querySelector(".search-close");
sc &&
sc.addEventListener("click", function () {
document.body.classList.contains("is-search-open") ? document.body.classList.remove("is-search-open") : document.body.classList.add("is-search-open");
});
})();
/* Copy to clipboard button on code blocks */
(function () {
function icon(paths) {
return (
'"
);
}
var copyIcon = icon('');
var doneIcon = icon('');
var failIcon = icon('');
if (!navigator.clipboard) return;
document.querySelectorAll("pre").forEach(function (block) {
var code = block.querySelector("code");
if (!code) return;
var button = document.createElement("button");
button.className = "copy-code";
button.type = "button";
button.innerHTML = copyIcon;
button.title = "Copy code";
button.setAttribute("aria-label", "Copy code to clipboard");
block.appendChild(button);
button.addEventListener("click", function () {
navigator.clipboard.writeText(code.innerText).then(
function () {
button.innerHTML = doneIcon;
button.title = "Copied!";
},
function () {
button.innerHTML = failIcon;
button.title = "Copy failed";
}
);
setTimeout(function () {
button.innerHTML = copyIcon;
button.title = "Copy code";
}, 1000);
});
// Keep the button in place while the block scrolls horizontally.
block.addEventListener("scroll", function () {
button.style.transform = "translateX(" + block.scrollLeft + "px)";
});
});
})();