Merge branch 'adityatelange:master' into master

This commit is contained in:
Francesco
2023-01-11 12:48:35 +01:00
committed by GitHub
17 changed files with 220 additions and 96 deletions

View File

@ -72,6 +72,8 @@
.post-content a,
.toc a:hover {
box-shadow: 0 1px 0;
box-decoration-break: clone;
-webkit-box-decoration-break: clone;
}
.post-content a code {

View File

@ -1,21 +1,21 @@
import * as params from '@params';
var fuse; // holds our search engine
var resList = document.getElementById('searchResults');
var sInput = document.getElementById('searchInput');
var first, last, current_elem = null
var resultsAvailable = false;
let fuse; // holds our search engine
let resList = document.getElementById('searchResults');
let sInput = document.getElementById('searchInput');
let first, last, current_elem = null
let resultsAvailable = false;
// load our search index
window.onload = function () {
var xhr = new XMLHttpRequest();
let xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
if (xhr.status === 200) {
var data = JSON.parse(xhr.responseText);
let data = JSON.parse(xhr.responseText);
if (data) {
// fuse.js options; check fuse.js website for details
var options = {
let options = {
distance: 100,
threshold: 0.4,
ignoreLocation: true,
@ -28,17 +28,17 @@ window.onload = function () {
};
if (params.fuseOpts) {
options = {
isCaseSensitive: params.fuseOpts.iscasesensitive ? params.fuseOpts.iscasesensitive : false,
includeScore: params.fuseOpts.includescore ? params.fuseOpts.includescore : false,
includeMatches: params.fuseOpts.includematches ? params.fuseOpts.includematches : false,
minMatchCharLength: params.fuseOpts.minmatchcharlength ? params.fuseOpts.minmatchcharlength : 1,
shouldSort: params.fuseOpts.shouldsort ? params.fuseOpts.shouldsort : true,
findAllMatches: params.fuseOpts.findallmatches ? params.fuseOpts.findallmatches : false,
keys: params.fuseOpts.keys ? params.fuseOpts.keys : ['title', 'permalink', 'summary', 'content'],
location: params.fuseOpts.location ? params.fuseOpts.location : 0,
threshold: params.fuseOpts.threshold ? params.fuseOpts.threshold : 0.4,
distance: params.fuseOpts.distance ? params.fuseOpts.distance : 100,
ignoreLocation: params.fuseOpts.ignorelocation ? params.fuseOpts.ignorelocation : true
isCaseSensitive: params.fuseOpts.iscasesensitive ?? false,
includeScore: params.fuseOpts.includescore ?? false,
includeMatches: params.fuseOpts.includematches ?? false,
minMatchCharLength: params.fuseOpts.minmatchcharlength ?? 1,
shouldSort: params.fuseOpts.shouldsort ?? true,
findAllMatches: params.fuseOpts.findallmatches ?? false,
keys: params.fuseOpts.keys ?? ['title', 'permalink', 'summary', 'content'],
location: params.fuseOpts.location ?? 0,
threshold: params.fuseOpts.threshold ?? 0.4,
distance: params.fuseOpts.distance ?? 100,
ignoreLocation: params.fuseOpts.ignorelocation ?? true
}
}
fuse = new Fuse(data, options); // build the index from the json file
@ -106,12 +106,12 @@ sInput.addEventListener('search', function (e) {
// kb bindings
document.onkeydown = function (e) {
let key = e.key;
var ae = document.activeElement;
let ae = document.activeElement;
let inbox = document.getElementById("searchbox").contains(ae)
if (ae === sInput) {
var elements = document.getElementsByClassName('focus');
let elements = document.getElementsByClassName('focus');
while (elements.length > 0) {
elements[0].classList.remove('focus');
}