Browse Source

build based on d59c8c1

gh-pages
Documenter.jl 2 years ago
parent
commit
244765e0c9
  1. 1
      dev/.documenter-siteinfo.json
  2. 264
      dev/assets/documenter.js
  3. 472
      dev/assets/search.js
  4. 7701
      dev/assets/themes/documenter-dark.css
  5. 7735
      dev/assets/themes/documenter-light.css
  6. 78
      dev/assets/themeswap.js
  7. 49
      dev/assets/warner.js
  8. 4
      dev/customprocessing/index.html
  9. 4
      dev/documenter/index.html
  10. 4
      dev/fileformat/index.html
  11. 648
      dev/generated/example.ipynb
  12. 324
      dev/generated/example/index.html
  13. 2
      dev/generated/name/index.html
  14. 6
      dev/generated/notebook.ipynb
  15. 2
      dev/index.html
  16. 8
      dev/outputformats/index.html
  17. 4
      dev/pipeline/index.html
  18. 2
      dev/search/index.html
  19. 2
      dev/search_index.js
  20. 4
      dev/tips/index.html

1
dev/.documenter-siteinfo.json

@ -0,0 +1 @@
{"documenter":{"julia_version":"1.9.2","generation_timestamp":"2023-08-04T17:02:21","documenter_version":"0.28.0-DEV"}}

264
dev/assets/documenter.js

@ -1,15 +1,15 @@
// Generated by Documenter.jl // Generated by Documenter.jl
requirejs.config({ requirejs.config({
paths: { paths: {
'highlight-julia': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.1/languages/julia.min', 'highlight-julia': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.7.0/languages/julia.min',
'headroom': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/headroom.min', 'headroom': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/headroom.min',
'jqueryui': 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min', 'jqueryui': 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.13.2/jquery-ui.min',
'katex-auto-render': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.24/contrib/auto-render.min', 'katex-auto-render': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.4/contrib/auto-render.min',
'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min', 'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.4/jquery.min',
'headroom-jquery': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/jQuery.headroom.min', 'headroom-jquery': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/jQuery.headroom.min',
'katex': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.24/katex.min', 'katex': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.4/katex.min',
'highlight': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.1/highlight.min', 'highlight': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.7.0/highlight.min',
'highlight-julia-repl': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.1/languages/julia-repl.min', 'highlight-julia-repl': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.7.0/languages/julia-repl.min',
}, },
shim: { shim: {
"highlight-julia": { "highlight-julia": {
@ -70,13 +70,72 @@ $(document).ready(function() {
hljs.highlightAll(); hljs.highlightAll();
}) })
})
////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) {
var isExpanded = true;
$(document).on("click", ".docstring header", function () {
let articleToggleTitle = "Expand docstring";
if ($(this).siblings("section").is(":visible")) {
$(this)
.find(".docstring-article-toggle-button")
.removeClass("fa-chevron-down")
.addClass("fa-chevron-right");
} else {
$(this)
.find(".docstring-article-toggle-button")
.removeClass("fa-chevron-right")
.addClass("fa-chevron-down");
articleToggleTitle = "Collapse docstring";
}
$(this)
.find(".docstring-article-toggle-button")
.prop("title", articleToggleTitle);
$(this).siblings("section").slideToggle();
});
$(document).on("click", ".docs-article-toggle-button", function () {
let articleToggleTitle = "Expand docstring";
let navArticleToggleTitle = "Expand all docstrings";
if (isExpanded) {
$(this).removeClass("fa-chevron-up").addClass("fa-chevron-down");
$(".docstring-article-toggle-button")
.removeClass("fa-chevron-down")
.addClass("fa-chevron-right");
isExpanded = false;
$(".docstring section").slideUp();
} else {
$(this).removeClass("fa-chevron-down").addClass("fa-chevron-up");
$(".docstring-article-toggle-button")
.removeClass("fa-chevron-right")
.addClass("fa-chevron-down");
isExpanded = true;
articleToggleTitle = "Collapse docstring";
navArticleToggleTitle = "Collapse all docstrings";
$(".docstring section").slideDown();
}
$(this).prop("title", navArticleToggleTitle);
$(".docstring-article-toggle-button").prop("title", articleToggleTitle);
});
}) })
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
require([], function() { require([], function() {
function addCopyButtonCallbacks() { function addCopyButtonCallbacks() {
for (const el of document.getElementsByTagName("pre")) { for (const el of document.getElementsByTagName("pre")) {
const button = document.createElement("button"); const button = document.createElement("button");
button.classList.add("copy-button", "fas", "fa-copy"); button.classList.add("copy-button", "fa-solid", "fa-copy");
button.setAttribute("aria-label", "Copy this code block"); button.setAttribute("aria-label", "Copy this code block");
button.setAttribute("title", "Copy"); button.setAttribute("title", "Copy");
@ -88,7 +147,7 @@ function addCopyButtonCallbacks() {
}; };
const failure = function () { const failure = function () {
button.classList.add("error", "fa-times"); button.classList.add("error", "fa-xmark");
button.classList.remove("fa-copy"); button.classList.remove("fa-copy");
}; };
@ -97,7 +156,7 @@ function addCopyButtonCallbacks() {
setTimeout(function () { setTimeout(function () {
button.classList.add("fa-copy"); button.classList.add("fa-copy");
button.classList.remove("success", "fa-check", "fa-times"); button.classList.remove("success", "fa-check", "fa-xmark");
}, 5000); }, 5000);
}); });
} }
@ -141,181 +200,192 @@ require(['jquery', 'headroom', 'headroom-jquery'], function($, Headroom) {
// Manages the top navigation bar (hides it when the user starts scrolling down on the // Manages the top navigation bar (hides it when the user starts scrolling down on the
// mobile). // mobile).
window.Headroom = Headroom; // work around buggy module loading? window.Headroom = Headroom; // work around buggy module loading?
$(document).ready(function() { $(document).ready(function () {
$('#documenter .docs-navbar').headroom({ $("#documenter .docs-navbar").headroom({
"tolerance": {"up": 10, "down": 10}, tolerance: { up: 10, down: 10 },
}); });
}) });
}) })
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) { require(['jquery'], function($) {
// Modal settings dialog // Modal settings dialog
$(document).ready(function() { $(document).ready(function () {
var settings = $('#documenter-settings'); var settings = $("#documenter-settings");
$('#documenter-settings-button').click(function(){ $("#documenter-settings-button").click(function () {
settings.toggleClass('is-active'); settings.toggleClass("is-active");
}); });
// Close the dialog if X is clicked // Close the dialog if X is clicked
$('#documenter-settings button.delete').click(function(){ $("#documenter-settings button.delete").click(function () {
settings.removeClass('is-active'); settings.removeClass("is-active");
}); });
// Close dialog if ESC is pressed // Close dialog if ESC is pressed
$(document).keyup(function(e) { $(document).keyup(function (e) {
if (e.keyCode == 27) settings.removeClass('is-active'); if (e.keyCode == 27) settings.removeClass("is-active");
}); });
}); });
})
////////////////////////////////////////////////////////////////////////////////
require([], function() {
let searchbox = document.querySelector("#documenter-search-query");
let sidebar = document.querySelector(".docs-sidebar");
document.addEventListener("keydown", (event) => {
if ((event.ctrlKey || event.metaKey) && event.key === "/") {
if (!sidebar.classList.contains("visible")) {
sidebar.classList.add("visible");
}
searchbox.focus();
return false;
} else if (event.key === "Escape") {
if (sidebar.classList.contains("visible")) {
sidebar.classList.remove("visible");
}
searchbox.blur();
return false;
}
});
}) })
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) { require(['jquery'], function($) {
// Manages the showing and hiding of the sidebar. // Manages the showing and hiding of the sidebar.
$(document).ready(function() { $(document).ready(function () {
var sidebar = $("#documenter > .docs-sidebar"); var sidebar = $("#documenter > .docs-sidebar");
var sidebar_button = $("#documenter-sidebar-button") var sidebar_button = $("#documenter-sidebar-button");
sidebar_button.click(function(ev) { sidebar_button.click(function (ev) {
ev.preventDefault(); ev.preventDefault();
sidebar.toggleClass('visible'); sidebar.toggleClass("visible");
if (sidebar.hasClass('visible')) { if (sidebar.hasClass("visible")) {
// Makes sure that the current menu item is visible in the sidebar. // Makes sure that the current menu item is visible in the sidebar.
$("#documenter .docs-menu a.is-active").focus(); $("#documenter .docs-menu a.is-active").focus();
} }
}); });
$("#documenter > .docs-main").bind('click', function(ev) { $("#documenter > .docs-main").bind("click", function (ev) {
if ($(ev.target).is(sidebar_button)) { if ($(ev.target).is(sidebar_button)) {
return; return;
} }
if (sidebar.hasClass('visible')) { if (sidebar.hasClass("visible")) {
sidebar.removeClass('visible'); sidebar.removeClass("visible");
} }
}); });
}) });
// Resizes the package name / sitename in the sidebar if it is too wide. // Resizes the package name / sitename in the sidebar if it is too wide.
// Inspired by: https://github.com/davatron5000/FitText.js // Inspired by: https://github.com/davatron5000/FitText.js
$(document).ready(function() { $(document).ready(function () {
e = $("#documenter .docs-autofit"); e = $("#documenter .docs-autofit");
function resize() { function resize() {
var L = parseInt(e.css('max-width'), 10); var L = parseInt(e.css("max-width"), 10);
var L0 = e.width(); var L0 = e.width();
if(L0 > L) { if (L0 > L) {
var h0 = parseInt(e.css('font-size'), 10); var h0 = parseInt(e.css("font-size"), 10);
e.css('font-size', L * h0 / L0); e.css("font-size", (L * h0) / L0);
// TODO: make sure it survives resizes? // TODO: make sure it survives resizes?
} }
} }
// call once and then register events // call once and then register events
resize(); resize();
$(window).resize(resize); $(window).resize(resize);
$(window).on('orientationchange', resize); $(window).on("orientationchange", resize);
}); });
// Scroll the navigation bar to the currently selected menu item // Scroll the navigation bar to the currently selected menu item
$(document).ready(function() { $(document).ready(function () {
var sidebar = $("#documenter .docs-menu").get(0); var sidebar = $("#documenter .docs-menu").get(0);
var active = $("#documenter .docs-menu .is-active").get(0); var active = $("#documenter .docs-menu .is-active").get(0);
if(typeof active !== 'undefined') { if (typeof active !== "undefined") {
sidebar.scrollTop = active.offsetTop - sidebar.offsetTop - 15; sidebar.scrollTop = active.offsetTop - sidebar.offsetTop - 15;
} }
}) });
}) })
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) { require(['jquery'], function($) {
function set_theme(theme) {
var active = null;
var disabled = [];
for (var i = 0; i < document.styleSheets.length; i++) {
var ss = document.styleSheets[i];
var themename = ss.ownerNode.getAttribute("data-theme-name");
if(themename === null) continue; // ignore non-theme stylesheets
// Find the active theme
if(themename === theme) active = ss;
else disabled.push(ss);
}
if(active !== null) {
active.disabled = false;
if(active.ownerNode.getAttribute("data-theme-primary") === null) {
document.getElementsByTagName('html')[0].className = "theme--" + theme;
} else {
document.getElementsByTagName('html')[0].className = "";
}
disabled.forEach(function(ss){
ss.disabled = true;
});
}
// Store the theme in localStorage
if(typeof(window.localStorage) !== "undefined") {
window.localStorage.setItem("documenter-theme", theme);
} else {
console.error("Browser does not support window.localStorage");
}
}
// Theme picker setup // Theme picker setup
$(document).ready(function() { $(document).ready(function () {
// onchange callback // onchange callback
$('#documenter-themepicker').change(function themepick_callback(ev){ $("#documenter-themepicker").change(function themepick_callback(ev) {
var themename = $('#documenter-themepicker option:selected').attr('value'); var themename = $("#documenter-themepicker option:selected").attr("value");
set_theme(themename); if (themename === "auto") {
// set_theme(window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light');
window.localStorage.removeItem("documenter-theme");
} else {
// set_theme(themename);
window.localStorage.setItem("documenter-theme", themename);
}
// We re-use the global function from themeswap.js to actually do the swapping.
set_theme_from_local_storage();
}); });
// Make sure that the themepicker displays the correct theme when the theme is retrieved // Make sure that the themepicker displays the correct theme when the theme is retrieved
// from localStorage // from localStorage
if(typeof(window.localStorage) !== "undefined") { if (typeof window.localStorage !== "undefined") {
var theme = window.localStorage.getItem("documenter-theme"); var theme = window.localStorage.getItem("documenter-theme");
if(theme !== null) { if (theme !== null) {
$('#documenter-themepicker option').each(function(i,e) { $("#documenter-themepicker option").each(function (i, e) {
e.selected = (e.value === theme); e.selected = e.value === theme;
}) });
} else {
$('#documenter-themepicker option').each(function(i,e) {
e.selected = $("html").hasClass(`theme--${e.value}`);
})
} }
} }
}) });
}) })
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
require(['jquery'], function($) { require(['jquery'], function($) {
// update the version selector with info from the siteinfo.js and ../versions.js files // update the version selector with info from the siteinfo.js and ../versions.js files
$(document).ready(function() { $(document).ready(function () {
// If the version selector is disabled with DOCUMENTER_VERSION_SELECTOR_DISABLED in the // If the version selector is disabled with DOCUMENTER_VERSION_SELECTOR_DISABLED in the
// siteinfo.js file, we just return immediately and not display the version selector. // siteinfo.js file, we just return immediately and not display the version selector.
if (typeof DOCUMENTER_VERSION_SELECTOR_DISABLED === 'boolean' && DOCUMENTER_VERSION_SELECTOR_DISABLED) { if (
typeof DOCUMENTER_VERSION_SELECTOR_DISABLED === "boolean" &&
DOCUMENTER_VERSION_SELECTOR_DISABLED
) {
return; return;
} }
var version_selector = $("#documenter .docs-version-selector"); var version_selector = $("#documenter .docs-version-selector");
var version_selector_select = $("#documenter .docs-version-selector select"); var version_selector_select = $("#documenter .docs-version-selector select");
version_selector_select.change(function(x) { version_selector_select.change(function (x) {
target_href = version_selector_select.children("option:selected").get(0).value; target_href = version_selector_select
.children("option:selected")
.get(0).value;
window.location.href = target_href; window.location.href = target_href;
}); });
// add the current version to the selector based on siteinfo.js, but only if the selector is empty // add the current version to the selector based on siteinfo.js, but only if the selector is empty
if (typeof DOCUMENTER_CURRENT_VERSION !== 'undefined' && $('#version-selector > option').length == 0) { if (
var option = $("<option value='#' selected='selected'>" + DOCUMENTER_CURRENT_VERSION + "</option>"); typeof DOCUMENTER_CURRENT_VERSION !== "undefined" &&
$("#version-selector > option").length == 0
) {
var option = $(
"<option value='#' selected='selected'>" +
DOCUMENTER_CURRENT_VERSION +
"</option>"
);
version_selector_select.append(option); version_selector_select.append(option);
} }
if (typeof DOC_VERSIONS !== 'undefined') { if (typeof DOC_VERSIONS !== "undefined") {
var existing_versions = version_selector_select.children("option"); var existing_versions = version_selector_select.children("option");
var existing_versions_texts = existing_versions.map(function(i,x){return x.text}); var existing_versions_texts = existing_versions.map(function (i, x) {
DOC_VERSIONS.forEach(function(each) { return x.text;
var version_url = documenterBaseURL + "/../" + each; });
DOC_VERSIONS.forEach(function (each) {
var version_url = documenterBaseURL + "/../" + each + "/";
var existing_id = $.inArray(each, existing_versions_texts); var existing_id = $.inArray(each, existing_versions_texts);
// if not already in the version selector, add it as a new option, // if not already in the version selector, add it as a new option,
// otherwise update the old option with the URL and enable it // otherwise update the old option with the URL and enable it
if (existing_id == -1) { if (existing_id == -1) {
var option = $("<option value='" + version_url + "'>" + each + "</option>"); var option = $(
"<option value='" + version_url + "'>" + each + "</option>"
);
version_selector_select.append(option); version_selector_select.append(option);
} else { } else {
var option = existing_versions[existing_id]; var option = existing_versions[existing_id];
@ -329,6 +399,6 @@ $(document).ready(function() {
if (version_selector_select.children("option").length > 0) { if (version_selector_select.children("option").length > 0) {
version_selector.toggleClass("visible"); version_selector.toggleClass("visible");
} }
}) });
}) })

472
dev/assets/search.js

@ -1,19 +1,19 @@
// Generated by Documenter.jl // Generated by Documenter.jl
requirejs.config({ requirejs.config({
paths: { paths: {
'lunr': 'https://cdnjs.cloudflare.com/ajax/libs/lunr.js/2.3.9/lunr.min', 'minisearch': 'https://cdn.jsdelivr.net/npm/minisearch@6.1.0/dist/umd/index.min',
'lodash': 'https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min', 'lodash': 'https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min',
'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min', 'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.4/jquery.min',
} }
}); });
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
require(['jquery', 'lunr', 'lodash'], function($, lunr, _) { require(['jquery', 'minisearch', 'lodash'], function($, minisearch, _) {
$(document).ready(function() { $(function () {
// parseUri 1.2.2 // parseUri 1.2.2
// (c) Steven Levithan <stevenlevithan.com> // (c) Steven Levithan <stevenlevithan.com>
// MIT License // MIT License
function parseUri (str) { function parseUri(str) {
var o = parseUri.options, var o = parseUri.options,
m = o.parser[o.strictMode ? "strict" : "loose"].exec(str), m = o.parser[o.strictMode ? "strict" : "loose"].exec(str),
uri = {}, uri = {},
@ -27,241 +27,303 @@ $(document).ready(function() {
}); });
return uri; return uri;
}; }
parseUri.options = { parseUri.options = {
strictMode: false, strictMode: false,
key: ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"], key: [
"source",
"protocol",
"authority",
"userInfo",
"user",
"password",
"host",
"port",
"relative",
"path",
"directory",
"file",
"query",
"anchor",
],
q: { q: {
name: "queryKey", name: "queryKey",
parser: /(?:^|&)([^&=]*)=?([^&]*)/g parser: /(?:^|&)([^&=]*)=?([^&]*)/g,
}, },
parser: { parser: {
strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/, strict:
loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/ /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
} loose:
/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,
},
}; };
$("#search-form").submit(function(e) { $("#search-form").submit(function (e) {
e.preventDefault() e.preventDefault();
}) });
let ms_data = documenterSearchIndex["docs"].map((x, key) => {
x["id"] = key;
return x;
});
// list below is the lunr 2.1.3 list minus the intersect with names(Base) // list below is the lunr 2.1.3 list minus the intersect with names(Base)
// (all, any, get, in, is, only, which) and (do, else, for, let, where, while, with) // (all, any, get, in, is, only, which) and (do, else, for, let, where, while, with)
// ideally we'd just filter the original list but it's not available as a variable // ideally we'd just filter the original list but it's not available as a variable
lunr.stopWordFilter = lunr.generateStopWordFilter([ const stopWords = new Set([
'a', "a",
'able', "able",
'about', "about",
'across', "across",
'after', "after",
'almost', "almost",
'also', "also",
'am', "am",
'among', "among",
'an', "an",
'and', "and",
'are', "are",
'as', "as",
'at', "at",
'be', "be",
'because', "because",
'been', "been",
'but', "but",
'by', "by",
'can', "can",
'cannot', "cannot",
'could', "could",
'dear', "dear",
'did', "did",
'does', "does",
'either', "either",
'ever', "ever",
'every', "every",
'from', "from",
'got', "got",
'had', "had",
'has', "has",
'have', "have",
'he', "he",
'her', "her",
'hers', "hers",
'him', "him",
'his', "his",
'how', "how",
'however', "however",
'i', "i",
'if', "if",
'into', "into",
'it', "it",
'its', "its",
'just', "just",
'least', "least",
'like', "like",
'likely', "likely",
'may', "may",
'me', "me",
'might', "might",
'most', "most",
'must', "must",
'my', "my",
'neither', "neither",
'no', "no",
'nor', "nor",
'not', "not",
'of', "of",
'off', "off",
'often', "often",
'on', "on",
'or', "or",
'other', "other",
'our', "our",
'own', "own",
'rather', "rather",
'said', "said",
'say', "say",
'says', "says",
'she', "she",
'should', "should",
'since', "since",
'so', "so",
'some', "some",
'than', "than",
'that', "that",
'the', "the",
'their', "their",
'them', "them",
'then', "then",
'there', "there",
'these', "these",
'they', "they",
'this', "this",
'tis', "tis",
'to', "to",
'too', "too",
'twas', "twas",
'us', "us",
'wants', "wants",
'was', "was",
'we', "we",
'were', "were",
'what', "what",
'when', "when",
'who', "who",
'whom', "whom",
'why', "why",
'will', "will",
'would', "would",
'yet', "yet",
'you', "you",
'your' "your",
]) ]);
// add . as a separator, because otherwise "title": "Documenter.Anchors.add!"
// would not find anything if searching for "add!", only for the entire qualification
lunr.tokenizer.separator = /[\s\-\.]+/
let index = new minisearch({
fields: ["title", "text"], // fields to index for full-text search
storeFields: ["location", "title", "text", "category", "page"], // fields to return with search results
processTerm: (term) => {
let word = stopWords.has(term) ? null : term;
if (word) {
// custom trimmer that doesn't strip @ and !, which are used in julia macro and function names // custom trimmer that doesn't strip @ and !, which are used in julia macro and function names
lunr.trimmer = function (token) { word = word
return token.update(function (s) { .replace(/^[^a-zA-Z0-9@!]+/, "")
return s.replace(/^[^a-zA-Z0-9@!]+/, '').replace(/[^a-zA-Z0-9@!]+$/, '') .replace(/[^a-zA-Z0-9@!]+$/, "");
})
} }
lunr.Pipeline.registerFunction(lunr.stopWordFilter, 'juliaStopWordFilter') return word ?? null;
lunr.Pipeline.registerFunction(lunr.trimmer, 'juliaTrimmer') },
// add . as a separator, because otherwise "title": "Documenter.Anchors.add!", would not find anything if searching for "add!", only for the entire qualification
tokenize: (string) => string.split(/[\s\-\.]+/),
searchOptions: {
boost: { title: 100 },
fuzzy: 2,
processTerm: (term) => {
let word = stopWords.has(term) ? null : term;
if (word) {
word = word
.replace(/^[^a-zA-Z0-9@!]+/, "")
.replace(/[^a-zA-Z0-9@!]+$/, "");
}
return word ?? null;
},
tokenize: (string) => string.split(/[\s\-\.]+/),
},
});
var index = lunr(function () { index.addAll(ms_data);
this.ref('location')
this.field('title',{boost: 100})
this.field('text')
documenterSearchIndex['docs'].forEach(function(e) {
this.add(e)
}, this)
})
var store = {}
documenterSearchIndex['docs'].forEach(function(e) { searchresults = $("#documenter-search-results");
store[e.location] = {title: e.title, category: e.category, page: e.page} searchinfo = $("#documenter-search-info");
}) searchbox = $("#documenter-search-query");
searchform = $(".docs-search");
sidebar = $(".docs-sidebar");
$(function(){
searchresults = $('#documenter-search-results');
searchinfo = $('#documenter-search-info');
searchbox = $('#documenter-search-query');
searchform = $('.docs-search');
sidebar = $('.docs-sidebar');
function update_search(querystring) { function update_search(querystring) {
tokens = lunr.tokenizer(querystring) let results = [];
results = index.query(function (q) { results = index.search(querystring, {
tokens.forEach(function (t) { filter: (result) => result.score >= 1,
q.term(t.toString(), { });
fields: ["title"],
boost: 100, searchresults.empty();
usePipeline: true,
editDistance: 0, let links = [];
wildcard: lunr.Query.wildcard.NONE let count = 0;
})
q.term(t.toString(), { results.forEach(function (result) {
fields: ["title"], if (result.location) {
boost: 10, if (!links.includes(result.location)) {
usePipeline: true, searchresults.append(make_search_result(result, querystring));
editDistance: 2, count++;
wildcard: lunr.Query.wildcard.NONE }
})
q.term(t.toString(), { links.push(result.location);
fields: ["text"], }
boost: 1, });
usePipeline: true,
editDistance: 0, searchinfo.text("Number of results: " + count);
wildcard: lunr.Query.wildcard.NONE
})
})
})
searchinfo.text("Number of results: " + results.length)
searchresults.empty()
results.forEach(function(result) {
data = store[result.ref]
link = $('<a class="docs-label">'+data.title+'</a>')
link.attr('href', documenterBaseURL+'/'+result.ref)
if (data.category != "page"){
cat = $('<span class="docs-category">('+data.category+', '+data.page+')</span>')
} else {
cat = $('<span class="docs-category">('+data.category+')</span>')
} }
li = $('<li>').append(link).append(" ").append(cat)
searchresults.append(li) function make_search_result(result, querystring) {
}) let display_link =
result.location.slice(Math.max(0), Math.min(50, result.location.length)) +
(result.location.length > 30 ? "..." : "");
let textindex = new RegExp(`\\b${querystring}\\b`, "i").exec(result.text);
let text =
textindex !== null
? result.text.slice(
Math.max(textindex.index - 100, 0),
Math.min(
textindex.index + querystring.length + 100,
result.text.length
)
)
: "";
let display_result = text.length
? "..." +
text.replace(
new RegExp(`\\b${querystring}\\b`, "i"), // For first occurrence
'<span class="search-result-highlight p-1">$&</span>'
) +
"..."
: "";
let result_div = `
<a href="${
documenterBaseURL + "/" + result.location
}" class="search-result-link px-4 py-2 w-100 is-flex is-flex-direction-column gap-2 my-4">
<div class="w-100 is-flex is-flex-wrap-wrap is-justify-content-space-between is-align-items-center">
<div class="search-result-title has-text-weight-semi-bold">${
result.title
}</div>
<div class="property-search-result-badge">${result.category}</div>
</div>
<p>
${display_result}
</p>
<div
class="has-text-left"
style="font-size: smaller;"
title="${result.location}"
>
<i class="fas fa-link"></i> ${display_link}
</div>
</a>
<div class="search-divider"></div>
`;
return result_div;
} }
function update_search_box() { function update_search_box() {
querystring = searchbox.val() querystring = searchbox.val();
update_search(querystring) update_search(querystring);
} }
searchbox.keyup(_.debounce(update_search_box, 250)) searchbox.keyup(_.debounce(update_search_box, 250));
searchbox.change(update_search_box) searchbox.change(update_search_box);
// Disable enter-key form submission for the searchbox on the search page // Disable enter-key form submission for the searchbox on the search page
// and just re-run search rather than refresh the whole page. // and just re-run search rather than refresh the whole page.
searchform.keypress( searchform.keypress(function (event) {
function(event){ if (event.which == "13") {
if (event.which == '13') { if (sidebar.hasClass("visible")) {
if (sidebar.hasClass('visible')) { sidebar.removeClass("visible");
sidebar.removeClass('visible');
} }
update_search_box(); update_search_box();
event.preventDefault(); event.preventDefault();
} }
} });
);
search_query_uri = parseUri(window.location).queryKey["q"] search_query_uri = parseUri(window.location).queryKey["q"];
if(search_query_uri !== undefined) {
search_query = decodeURIComponent(search_query_uri.replace(/\+/g, '%20')) if (search_query_uri !== undefined) {
searchbox.val(search_query) search_query = decodeURIComponent(search_query_uri.replace(/\+/g, "%20"));
searchbox.val(search_query);
} }
update_search_box(); update_search_box();
}) });
})
}) })

7701
dev/assets/themes/documenter-dark.css

File diff suppressed because one or more lines are too long

7735
dev/assets/themes/documenter-light.css

File diff suppressed because one or more lines are too long

78
dev/assets/themeswap.js

@ -1,20 +1,17 @@
// Small function to quickly swap out themes. Gets put into the <head> tag.. // Small function to quickly swap out themes. Gets put into the <head> tag..
function set_theme_from_local_storage() { function set_theme_from_local_storage() {
// Intialize the theme to null, which means default // Initialize the theme to null, which means default
var theme = null; var theme = null;
// If the browser supports the localstorage and is not disabled then try to get the // If the browser supports the localstorage and is not disabled then try to get the
// documenter theme // documenter theme
if(window.localStorage != null) { if (window.localStorage != null) {
// Get the user-picked theme from localStorage. May be `null`, which means the default // Get the user-picked theme from localStorage. May be `null`, which means the default
// theme. // theme.
theme = window.localStorage.getItem("documenter-theme"); theme = window.localStorage.getItem("documenter-theme");
} }
// Check if the browser supports user color preference
var darkPreference = false;
// Check if the users preference is for dark color scheme // Check if the users preference is for dark color scheme
if(window.matchMedia('(prefers-color-scheme: dark)').matches === true) { var darkPreference =
darkPreference = true; window.matchMedia("(prefers-color-scheme: dark)").matches === true;
}
// Initialize a few variables for the loop: // Initialize a few variables for the loop:
// //
// - active: will contain the index of the theme that should be active. Note that there // - active: will contain the index of the theme that should be active. Note that there
@ -24,43 +21,64 @@ function set_theme_from_local_storage() {
// //
// - disabled: style sheets that should be disabled (i.e. all the theme style sheets // - disabled: style sheets that should be disabled (i.e. all the theme style sheets
// that are not the currently active theme) // that are not the currently active theme)
var active = null; var disabled = []; var darkTheme = null; var active = null;
var disabled = [];
var primaryLightTheme = null;
var primaryDarkTheme = null;
for (var i = 0; i < document.styleSheets.length; i++) { for (var i = 0; i < document.styleSheets.length; i++) {
var ss = document.styleSheets[i]; var ss = document.styleSheets[i];
// The <link> tag of each style sheet is expected to have a data-theme-name attribute // The <link> tag of each style sheet is expected to have a data-theme-name attribute
// which must contain the name of the theme. The names in localStorage much match this. // which must contain the name of the theme. The names in localStorage much match this.
var themename = ss.ownerNode.getAttribute("data-theme-name"); var themename = ss.ownerNode.getAttribute("data-theme-name");
// attribute not set => non-theme stylesheet => ignore // attribute not set => non-theme stylesheet => ignore
if(themename === null) continue; if (themename === null) continue;
// To distinguish the default (primary) theme, it needs to have the data-theme-primary // To distinguish the default (primary) theme, it needs to have the data-theme-primary
// attribute set. // attribute set.
var isprimary = (ss.ownerNode.getAttribute("data-theme-primary") !== null); if (ss.ownerNode.getAttribute("data-theme-primary") !== null) {
// Check if the theme is primary dark theme primaryLightTheme = themename;
var isDarkTheme = (ss.ownerNode.getAttribute("data-theme-primary-dark") !== null); }
// If ss is for dark theme then set the value of darkTheme to the name of the theme // Check if the theme is primary dark theme so that we could store its name in darkTheme
if(isDarkTheme) darkTheme = themename; if (ss.ownerNode.getAttribute("data-theme-primary-dark") !== null) {
primaryDarkTheme = themename;
}
// If we find a matching theme (and it's not the default), we'll set active to non-null // If we find a matching theme (and it's not the default), we'll set active to non-null
if(themename === theme) active = i; if (themename === theme) active = i;
// Store the style sheets of inactive themes so that we could disable them // Store the style sheets of inactive themes so that we could disable them
if(themename !== theme) disabled.push(ss); if (themename !== theme) disabled.push(ss);
} }
if(active !== null) { var activeTheme = null;
if (active !== null) {
// If we did find an active theme, we'll (1) add the theme--$(theme) class to <html> // If we did find an active theme, we'll (1) add the theme--$(theme) class to <html>
document.getElementsByTagName('html')[0].className = "theme--" + theme; document.getElementsByTagName("html")[0].className = "theme--" + theme;
// and (2) disable all the other theme stylesheets activeTheme = theme;
disabled.forEach(function(ss){ } else {
ss.disabled = true; // If we did _not_ find an active theme, then we need to fall back to the primary theme
}); // which can either be dark or light, depending on the user's OS preference.
var activeTheme = darkPreference ? primaryDarkTheme : primaryLightTheme;
// In case it somehow happens that the relevant primary theme was not found in the
// preceding loop, we abort without doing anything.
if (activeTheme === null) {
console.error("Unable to determine primary theme.");
return;
}
// When switching to the primary light theme, then we must not have a class name
// for the <html> tag. That's only for non-primary or the primary dark theme.
if (darkPreference) {
document.getElementsByTagName("html")[0].className =
"theme--" + activeTheme;
} else {
document.getElementsByTagName("html")[0].className = "";
} }
else if(darkTheme !== null && darkPreference === true) {
// If we did find an active theme, we'll (1) add the theme--$(theme) class to <html>
document.getElementsByTagName('html')[0].className = "theme--" + darkTheme;
// and (2) disable all the other theme stylesheets
disabled.forEach(function(ss){
if (ss.ownerNode.getAttribute("data-theme-name") !== darkTheme) {
ss.disabled = true;
} }
}); for (var i = 0; i < document.styleSheets.length; i++) {
var ss = document.styleSheets[i];
// The <link> tag of each style sheet is expected to have a data-theme-name attribute
// which must contain the name of the theme. The names in localStorage much match this.
var themename = ss.ownerNode.getAttribute("data-theme-name");
// attribute not set => non-theme stylesheet => ignore
if (themename === null) continue;
// we'll disable all the stylesheets, except for the active one
ss.disabled = !(themename == activeTheme);
} }
} }
set_theme_from_local_storage(); set_theme_from_local_storage();

49
dev/assets/warner.js

@ -1,4 +1,4 @@
function maybeAddWarning () { function maybeAddWarning() {
// DOCUMENTER_NEWEST is defined in versions.js, DOCUMENTER_CURRENT_VERSION and DOCUMENTER_STABLE // DOCUMENTER_NEWEST is defined in versions.js, DOCUMENTER_CURRENT_VERSION and DOCUMENTER_STABLE
// in siteinfo.js. // in siteinfo.js.
// If either of these are undefined something went horribly wrong, so we abort. // If either of these are undefined something went horribly wrong, so we abort.
@ -7,43 +7,46 @@ function maybeAddWarning () {
window.DOCUMENTER_CURRENT_VERSION === undefined || window.DOCUMENTER_CURRENT_VERSION === undefined ||
window.DOCUMENTER_STABLE === undefined window.DOCUMENTER_STABLE === undefined
) { ) {
return return;
}; }
// Current version is not a version number, so we can't tell if it's the newest version. Abort. // Current version is not a version number, so we can't tell if it's the newest version. Abort.
if (!/v(\d+\.)*\d+/.test(window.DOCUMENTER_CURRENT_VERSION)) { if (!/v(\d+\.)*\d+/.test(window.DOCUMENTER_CURRENT_VERSION)) {
return return;
}; }
// Current version is newest version, so no need to add a warning. // Current version is newest version, so no need to add a warning.
if (window.DOCUMENTER_NEWEST === window.DOCUMENTER_CURRENT_VERSION) { if (window.DOCUMENTER_NEWEST === window.DOCUMENTER_CURRENT_VERSION) {
return return;
}; }
// Add a noindex meta tag (unless one exists) so that search engines don't index this version of the docs. // Add a noindex meta tag (unless one exists) so that search engines don't index this version of the docs.
if (document.body.querySelector('meta[name="robots"]') === null) { if (document.body.querySelector('meta[name="robots"]') === null) {
const meta = document.createElement('meta'); const meta = document.createElement("meta");
meta.name = 'robots'; meta.name = "robots";
meta.content = 'noindex'; meta.content = "noindex";
document.getElementsByTagName('head')[0].appendChild(meta); document.getElementsByTagName("head")[0].appendChild(meta);
}; }
const div = document.createElement('div'); const div = document.createElement("div");
div.classList.add('outdated-warning-overlay'); div.classList.add("outdated-warning-overlay");
const closer = document.createElement('button'); const closer = document.createElement("button");
closer.classList.add('outdated-warning-closer', 'delete'); closer.classList.add("outdated-warning-closer", "delete");
closer.addEventListener('click', function () { closer.addEventListener("click", function () {
document.body.removeChild(div); document.body.removeChild(div);
}); });
const href = window.documenterBaseURL + '/../' + window.DOCUMENTER_STABLE; const href = window.documenterBaseURL + "/../" + window.DOCUMENTER_STABLE;
div.innerHTML = 'This documentation is not for the latest stable release, but for either the development version or an older release.<br><a href="' + href + '">Click here to go to the documentation for the latest stable release.</a>'; div.innerHTML =
'This documentation is not for the latest stable release, but for either the development version or an older release.<br><a href="' +
href +
'">Click here to go to the documentation for the latest stable release.</a>';
div.appendChild(closer); div.appendChild(closer);
document.body.appendChild(div); document.body.appendChild(div);
}; }
if (document.readyState === 'loading') { if (document.readyState === "loading") {
document.addEventListener('DOMContentLoaded', maybeAddWarning); document.addEventListener("DOMContentLoaded", maybeAddWarning);
} else { } else {
maybeAddWarning(); maybeAddWarning();
}; }

4
dev/customprocessing/index.html

File diff suppressed because one or more lines are too long

4
dev/documenter/index.html

File diff suppressed because one or more lines are too long

4
dev/fileformat/index.html

File diff suppressed because one or more lines are too long

648
dev/generated/example.ipynb

File diff suppressed because one or more lines are too long

324
dev/generated/example/index.html

File diff suppressed because one or more lines are too long

2
dev/generated/name/index.html

File diff suppressed because one or more lines are too long

6
dev/generated/notebook.ipynb

@ -87,11 +87,11 @@
"file_extension": ".jl", "file_extension": ".jl",
"mimetype": "application/julia", "mimetype": "application/julia",
"name": "julia", "name": "julia",
"version": "1.8.5" "version": "1.9.2"
}, },
"kernelspec": { "kernelspec": {
"name": "julia-1.8", "name": "julia-1.9",
"display_name": "Julia 1.8.5", "display_name": "Julia 1.9.2",
"language": "julia" "language": "julia"
} }
}, },

2
dev/index.html

File diff suppressed because one or more lines are too long

8
dev/outputformats/index.html

File diff suppressed because one or more lines are too long

4
dev/pipeline/index.html

File diff suppressed because one or more lines are too long

2
dev/search/index.html

File diff suppressed because one or more lines are too long

2
dev/search_index.js

File diff suppressed because one or more lines are too long

4
dev/tips/index.html

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save