mirror of
https://github.com/bunny-lab-io/Borealis.git
synced 2025-07-27 12:48:29 -06:00
Removed the Requirement to Install Python and NodeJS (Now Bundled with Borealis)
This commit is contained in:
59
Dependencies/Python/Doc/html/_static/changelog_search.js
vendored
Normal file
59
Dependencies/Python/Doc/html/_static/changelog_search.js
vendored
Normal file
@ -0,0 +1,59 @@
|
||||
document.addEventListener("DOMContentLoaded", function () {
|
||||
// add the search form and bind the events
|
||||
document
|
||||
.querySelector("h1")
|
||||
.insertAdjacentHTML(
|
||||
"afterend",
|
||||
[
|
||||
"<p>Filter entries by content:",
|
||||
'<input type="text" value="" id="searchbox" style="width: 50%">',
|
||||
'<input type="submit" id="searchbox-submit" value="Filter"></p>',
|
||||
].join("\n"),
|
||||
);
|
||||
|
||||
function doFilter() {
|
||||
let query;
|
||||
try {
|
||||
query = new RegExp(document.querySelector("#searchbox").value, "i");
|
||||
} catch (e) {
|
||||
return; // not a valid regex (yet)
|
||||
}
|
||||
// find headers for the versions (What's new in Python X.Y.Z?)
|
||||
const h2s = document.querySelectorAll("#changelog h2");
|
||||
for (const h2 of h2s) {
|
||||
let sections_found = 0;
|
||||
// find headers for the sections (Core, Library, etc.)
|
||||
const h3s = h2.parentNode.querySelectorAll("h3");
|
||||
for (const h3 of h3s) {
|
||||
let entries_found = 0;
|
||||
// find all the entries
|
||||
const lis = h3.parentNode.querySelectorAll("li");
|
||||
for (let li of lis) {
|
||||
// check if the query matches the entry
|
||||
if (query.test(li.textContent)) {
|
||||
li.style.display = "block";
|
||||
entries_found++;
|
||||
} else {
|
||||
li.style.display = "none";
|
||||
}
|
||||
}
|
||||
// if there are entries, show the section, otherwise hide it
|
||||
if (entries_found > 0) {
|
||||
h3.parentNode.style.display = "block";
|
||||
sections_found++;
|
||||
} else {
|
||||
h3.parentNode.style.display = "none";
|
||||
}
|
||||
}
|
||||
if (sections_found > 0) {
|
||||
h2.parentNode.style.display = "block";
|
||||
} else {
|
||||
h2.parentNode.style.display = "none";
|
||||
}
|
||||
}
|
||||
}
|
||||
document.querySelector("#searchbox").addEventListener("keyup", doFilter);
|
||||
document
|
||||
.querySelector("#searchbox-submit")
|
||||
.addEventListener("click", doFilter);
|
||||
});
|
Reference in New Issue
Block a user