-
Notifications
You must be signed in to change notification settings - Fork 134
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adding missing files reported in issues/783
#783 This 3 files were missing. Then when the files are added you can do a cd docs pip install --upgrade -r requirements.txt If requirements can not be compiled you need to download the right compiler and for windows it was not the latest visual studio but you need an older one from here: https://visualstudio.microsoft.com/af5d2e5f-18b8-450f-923a-52f595c61631 Check the option: Desktop Development with C++
- Loading branch information
Showing
3 changed files
with
280 additions
and
0 deletions.
There are no files selected for viewing
134 changes: 134 additions & 0 deletions
134
apps/_documentation/static/en/_static/_sphinx_javascript_frameworks_compat.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,134 @@ | ||
/* | ||
* _sphinx_javascript_frameworks_compat.js | ||
* ~~~~~~~~~~ | ||
* | ||
* Compatability shim for jQuery and underscores.js. | ||
* | ||
* WILL BE REMOVED IN Sphinx 6.0 | ||
* xref RemovedInSphinx60Warning | ||
* | ||
*/ | ||
|
||
/** | ||
* select a different prefix for underscore | ||
*/ | ||
$u = _.noConflict(); | ||
|
||
|
||
/** | ||
* small helper function to urldecode strings | ||
* | ||
* See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#Decoding_query_parameters_from_a_URL | ||
*/ | ||
jQuery.urldecode = function(x) { | ||
if (!x) { | ||
return x | ||
} | ||
return decodeURIComponent(x.replace(/\+/g, ' ')); | ||
}; | ||
|
||
/** | ||
* small helper function to urlencode strings | ||
*/ | ||
jQuery.urlencode = encodeURIComponent; | ||
|
||
/** | ||
* This function returns the parsed url parameters of the | ||
* current request. Multiple values per key are supported, | ||
* it will always return arrays of strings for the value parts. | ||
*/ | ||
jQuery.getQueryParameters = function(s) { | ||
if (typeof s === 'undefined') | ||
s = document.location.search; | ||
var parts = s.substr(s.indexOf('?') + 1).split('&'); | ||
var result = {}; | ||
for (var i = 0; i < parts.length; i++) { | ||
var tmp = parts[i].split('=', 2); | ||
var key = jQuery.urldecode(tmp[0]); | ||
var value = jQuery.urldecode(tmp[1]); | ||
if (key in result) | ||
result[key].push(value); | ||
else | ||
result[key] = [value]; | ||
} | ||
return result; | ||
}; | ||
|
||
/** | ||
* highlight a given string on a jquery object by wrapping it in | ||
* span elements with the given class name. | ||
*/ | ||
jQuery.fn.highlightText = function(text, className) { | ||
function highlight(node, addItems) { | ||
if (node.nodeType === 3) { | ||
var val = node.nodeValue; | ||
var pos = val.toLowerCase().indexOf(text); | ||
if (pos >= 0 && | ||
!jQuery(node.parentNode).hasClass(className) && | ||
!jQuery(node.parentNode).hasClass("nohighlight")) { | ||
var span; | ||
var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg"); | ||
if (isInSVG) { | ||
span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); | ||
} else { | ||
span = document.createElement("span"); | ||
span.className = className; | ||
} | ||
span.appendChild(document.createTextNode(val.substr(pos, text.length))); | ||
node.parentNode.insertBefore(span, node.parentNode.insertBefore( | ||
document.createTextNode(val.substr(pos + text.length)), | ||
node.nextSibling)); | ||
node.nodeValue = val.substr(0, pos); | ||
if (isInSVG) { | ||
var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect"); | ||
var bbox = node.parentElement.getBBox(); | ||
rect.x.baseVal.value = bbox.x; | ||
rect.y.baseVal.value = bbox.y; | ||
rect.width.baseVal.value = bbox.width; | ||
rect.height.baseVal.value = bbox.height; | ||
rect.setAttribute('class', className); | ||
addItems.push({ | ||
"parent": node.parentNode, | ||
"target": rect}); | ||
} | ||
} | ||
} | ||
else if (!jQuery(node).is("button, select, textarea")) { | ||
jQuery.each(node.childNodes, function() { | ||
highlight(this, addItems); | ||
}); | ||
} | ||
} | ||
var addItems = []; | ||
var result = this.each(function() { | ||
highlight(this, addItems); | ||
}); | ||
for (var i = 0; i < addItems.length; ++i) { | ||
jQuery(addItems[i].parent).before(addItems[i].target); | ||
} | ||
return result; | ||
}; | ||
|
||
/* | ||
* backward compatibility for jQuery.browser | ||
* This will be supported until firefox bug is fixed. | ||
*/ | ||
if (!jQuery.browser) { | ||
jQuery.uaMatch = function(ua) { | ||
ua = ua.toLowerCase(); | ||
|
||
var match = /(chrome)[ \/]([\w.]+)/.exec(ua) || | ||
/(webkit)[ \/]([\w.]+)/.exec(ua) || | ||
/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) || | ||
/(msie) ([\w.]+)/.exec(ua) || | ||
ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || | ||
[]; | ||
|
||
return { | ||
browser: match[ 1 ] || "", | ||
version: match[ 2 ] || "0" | ||
}; | ||
}; | ||
jQuery.browser = {}; | ||
jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true; | ||
} |
Large diffs are not rendered by default.
Oops, something went wrong.
144 changes: 144 additions & 0 deletions
144
apps/_documentation/static/en/_static/sphinx_highlight.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,144 @@ | ||
/* Highlighting utilities for Sphinx HTML documentation. */ | ||
"use strict"; | ||
|
||
const SPHINX_HIGHLIGHT_ENABLED = true | ||
|
||
/** | ||
* highlight a given string on a node by wrapping it in | ||
* span elements with the given class name. | ||
*/ | ||
const _highlight = (node, addItems, text, className) => { | ||
if (node.nodeType === Node.TEXT_NODE) { | ||
const val = node.nodeValue; | ||
const parent = node.parentNode; | ||
const pos = val.toLowerCase().indexOf(text); | ||
if ( | ||
pos >= 0 && | ||
!parent.classList.contains(className) && | ||
!parent.classList.contains("nohighlight") | ||
) { | ||
let span; | ||
|
||
const closestNode = parent.closest("body, svg, foreignObject"); | ||
const isInSVG = closestNode && closestNode.matches("svg"); | ||
if (isInSVG) { | ||
span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); | ||
} else { | ||
span = document.createElement("span"); | ||
span.classList.add(className); | ||
} | ||
|
||
span.appendChild(document.createTextNode(val.substr(pos, text.length))); | ||
parent.insertBefore( | ||
span, | ||
parent.insertBefore( | ||
document.createTextNode(val.substr(pos + text.length)), | ||
node.nextSibling | ||
) | ||
); | ||
node.nodeValue = val.substr(0, pos); | ||
|
||
if (isInSVG) { | ||
const rect = document.createElementNS( | ||
"http://www.w3.org/2000/svg", | ||
"rect" | ||
); | ||
const bbox = parent.getBBox(); | ||
rect.x.baseVal.value = bbox.x; | ||
rect.y.baseVal.value = bbox.y; | ||
rect.width.baseVal.value = bbox.width; | ||
rect.height.baseVal.value = bbox.height; | ||
rect.setAttribute("class", className); | ||
addItems.push({ parent: parent, target: rect }); | ||
} | ||
} | ||
} else if (node.matches && !node.matches("button, select, textarea")) { | ||
node.childNodes.forEach((el) => _highlight(el, addItems, text, className)); | ||
} | ||
}; | ||
const _highlightText = (thisNode, text, className) => { | ||
let addItems = []; | ||
_highlight(thisNode, addItems, text, className); | ||
addItems.forEach((obj) => | ||
obj.parent.insertAdjacentElement("beforebegin", obj.target) | ||
); | ||
}; | ||
|
||
/** | ||
* Small JavaScript module for the documentation. | ||
*/ | ||
const SphinxHighlight = { | ||
|
||
/** | ||
* highlight the search words provided in localstorage in the text | ||
*/ | ||
highlightSearchWords: () => { | ||
if (!SPHINX_HIGHLIGHT_ENABLED) return; // bail if no highlight | ||
|
||
// get and clear terms from localstorage | ||
const url = new URL(window.location); | ||
const highlight = | ||
localStorage.getItem("sphinx_highlight_terms") | ||
|| url.searchParams.get("highlight") | ||
|| ""; | ||
localStorage.removeItem("sphinx_highlight_terms") | ||
url.searchParams.delete("highlight"); | ||
window.history.replaceState({}, "", url); | ||
|
||
// get individual terms from highlight string | ||
const terms = highlight.toLowerCase().split(/\s+/).filter(x => x); | ||
if (terms.length === 0) return; // nothing to do | ||
|
||
// There should never be more than one element matching "div.body" | ||
const divBody = document.querySelectorAll("div.body"); | ||
const body = divBody.length ? divBody[0] : document.querySelector("body"); | ||
window.setTimeout(() => { | ||
terms.forEach((term) => _highlightText(body, term, "highlighted")); | ||
}, 10); | ||
|
||
const searchBox = document.getElementById("searchbox"); | ||
if (searchBox === null) return; | ||
searchBox.appendChild( | ||
document | ||
.createRange() | ||
.createContextualFragment( | ||
'<p class="highlight-link">' + | ||
'<a href="javascript:SphinxHighlight.hideSearchWords()">' + | ||
_("Hide Search Matches") + | ||
"</a></p>" | ||
) | ||
); | ||
}, | ||
|
||
/** | ||
* helper function to hide the search marks again | ||
*/ | ||
hideSearchWords: () => { | ||
document | ||
.querySelectorAll("#searchbox .highlight-link") | ||
.forEach((el) => el.remove()); | ||
document | ||
.querySelectorAll("span.highlighted") | ||
.forEach((el) => el.classList.remove("highlighted")); | ||
localStorage.removeItem("sphinx_highlight_terms") | ||
}, | ||
|
||
initEscapeListener: () => { | ||
// only install a listener if it is really needed | ||
if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) return; | ||
|
||
document.addEventListener("keydown", (event) => { | ||
// bail for input elements | ||
if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return; | ||
// bail with special keys | ||
if (event.shiftKey || event.altKey || event.ctrlKey || event.metaKey) return; | ||
if (DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS && (event.key === "Escape")) { | ||
SphinxHighlight.hideSearchWords(); | ||
event.preventDefault(); | ||
} | ||
}); | ||
}, | ||
}; | ||
|
||
_ready(SphinxHighlight.highlightSearchWords); | ||
_ready(SphinxHighlight.initEscapeListener); |