diff --git a/Makefile b/Makefile index 6d54cdb42..f48736ff9 100644 --- a/Makefile +++ b/Makefile @@ -30,13 +30,8 @@ clean: ## Clean docs build directory cd $(DOCS_DIR) && rm -rf $(BUILDDIR)/ .PHONY: distclean -distclean: ## Clean docs build directory and Python virtual environment, then install requirements - cd $(DOCS_DIR) && rm -rf $(BUILDDIR)/ - python3 -m venv venv --clear - venv/bin/pip install -r requirements-initial.txt - venv/bin/pip install -r requirements.txt - @echo - @echo "Installation of requirements completed." +distclean: clean ## Clean docs build directory and Python virtual environment + rm -rf venv venv/bin/python: ## Setup up Python virtual environment and install requirements python3 -m venv venv diff --git a/docs/_static/custom.css b/docs/_static/custom.css deleted file mode 100644 index 6242c425c..000000000 --- a/docs/_static/custom.css +++ /dev/null @@ -1,467 +0,0 @@ -:root { - /* Add Font Awesome 5 icon and color for todo */ - --pst-icon-clipboard-list: '\f46d'; - --pst-icon-admonition-todo: var(--pst-icon-clipboard-list); - --pst-color-admonition-todo: 161, 46, 233; - --target-color: #b9ee9e; - --codeblock-color: #aad993; -} - -.visuallyhidden { - display: none; -} - -pre { - border-radius: 0; - background-color: white; - box-shadow: none; -} - -a, -a:visited, -main.bd-content #main-content a, -main.bd-content #main-content a:visited { - color: #2980b9; -} - -a:hover, -main.bd-content #main-content a:hover { - color: #1a567e; - text-decoration: none; -} - -ul { - list-style-type: square; -} - -ul li>p { - margin-bottom: 0.3rem; -} - -ol li>p { - margin-bottom: 0.3rem; -} - -img { - margin: 1rem 0; -} - -figure img, -img.figure, -.figure img { - box-shadow: 0 6px 24px 0 rgba(153, 153, 153, 0.3); -} - -.sidebar img.logo { - box-shadow: none; - width: 200px; - margin-bottom: 1rem; -} - -img.inline { - margin: 0; - height: 1em; -} - -span.linenos { - padding-right: 1em; -} - -p.ploneorglink img { - vertical-align: bottom; -} - -dt:target, -span.highlighted, -ul.search li span.highlighted { - background-color: var(--target-color); -} - -.bd-sidebar .nav ul { - padding: 0 0 0 1rem; -} - -.bd-sidebar .nav .toctree-checkbox~label i { - transform: rotate(90deg); -} - -.bd-sidebar .nav .toctree-checkbox:checked~label i { - transform: rotate(0deg); -} - -.toctree-wrapper .caption { - font-weight: bold; - font-size: 1.2em; - margin-top: 3rem; -} - -.toctree-wrapper ul { - list-style: none; -} - -section:not(#glossary) h1~dl { - display: grid; - grid-template-columns: max-content auto; -} - -section:not(#glossary) h1~dl dd { - margin-bottom: unset !important; -} - -div.section { - margin-bottom: 5rem; -} - -div.section div.section { - margin-bottom: 5rem; -} - -div.section div.section div.section { - margin-bottom: 2rem; -} - -/* admonitions */ -.admonition { - border-radius: 0; - border: none; - border-left: .2rem solid; - border-left-color: rgba(var(--pst-color-admonition-default), 1); -} - -.admonition .admonition-title { - margin-bottom: 1.5rem !important; -} - -/* admonition todo */ -.admonition.admonition-todo, -div.admonition.admonition-todo { - border-color: rgba(var(--pst-color-admonition-todo), 1); -} - -.admonition.admonition-todo>.admonition-title, -div.admonition.admonition-todo>.admonition-title { - background-color: rgba(var(--pst-color-admonition-todo), .1); -} - -.admonition.admonition-todo>.admonition-title::before, -div.admonition.admonition-todo>.admonition-title::before { - color: rgba(var(--pst-color-admonition-todo), 1); - content: var(--pst-icon-admonition-todo); -} - -.admonition-github-only.admonition { - display: none; -} - -/* admonition margin */ -.admonition.margin ul, -.admonition.margin ol { - padding-left: 1rem; -} - -.topic { - padding: 1.5em 1em .5em 1em; -} - -.topic-title { - font-weight: bold; -} - - -/* Bootstrap */ -.btn-primary { - color: #fff; - background-color: #2980b9; - border-color: #2980b9; -} - -.btn-primary { - background-color: #1f86ca; - border-color: #2980b9; -} - -/* Search */ - -/* Show search form. It is hidden by default. */ -#search-documentation, -#search-documentation~form, -#search-documentation~p { - display: block; -} - -#search-form:focus-within #shortcut-page, -.bd-search:focus-within #shortcut { - display: none; -} - -#shortcut-page.input-group-text { - padding-top: 0; - padding-bottom: 0; -} - -input#q { - border-radius: .25rem 0 0 .25rem; -} - -.form-control:focus { - box-shadow: none; - border-width: 2px; -} - -ul.search { - margin-left: 0; -} - -p.search-summary { - margin: 1em 0 2rem 0; -} - -#search-results ul { - list-style-type: none; - padding-left: 0; -} - -#search-results ul li, -ul.search li { - margin-bottom: 2rem; - padding: 0; - background-image: none; - border-bottom: none; -} - -#search-results ul li h3 { - margin: 0.4rem 0 .5rem; - font-size: 1.5rem; -} - -#search-results ul li .breadcrumbs { - display: flex; - flex-direction: row; - flex-wrap: wrap; -} - -#search-results ul li .breadcrumbs a { - font-weight: normal; -} - -#search-results ul li .breadcrumbs .lastbreadcrumb { - white-space: nowrap; - display: inline-block; - max-width: 12rem; - overflow: hidden; - /* "overflow"-Wert darf nicht "visible" sein */ - - text-overflow: ellipsis; -} - -ul.search li p.context { - margin-left: 0; -} - -/* Search form sidebar */ - -.bd-search { - font-size: .8rem; -} - -.bd-search:focus-within #search-input { - border-radius: .25rem; -} - -#shortcut.input-group-text { - padding-top: 0; - padding-bottom: 0; -} - -.bd-search input, -.bd-search .input-group-text { - font-size: .8rem; - padding-left: .5em; -} - -input#search-input { - padding-left: 2.1875rem; - border-radius: .25rem 0 0 .25rem; -} - -.search-icon { - position: absolute; - color: #a4a6a7; - left: .625rem; - z-index: 100; - align-self: center; -} - -.input-group-text kbd { - padding: 0rem 0.4rem; - font-size: 135%; -} - -.pathseparator { - padding: 0 0.7rem; -} - -/* header-article */ -div.header-article__label { - display: flex; - align-items: center; - margin: 0 auto 0 1em; - font-size: 80%; - overflow: hidden; - white-space: nowrap; -} - -/* submenu */ -.bd-toc { - box-shadow: 0 .2rem .5rem rgba(0, 0, 0, .05), 0 0 .0625rem rgba(0, 0, 0, .1); -} - -/* extra sidebar */ -div.sidebar:not(.margin) { - width: 40%; - float: right; - clear: right; - margin: .3rem 0 .3rem 0.5em; - padding: 2rem 0 1.5rem 1rem !important; - background-color: rgba(var(--pst-color-admonition-note), .1); - border: none; - border-left: 8px rgba(var(--pst-color-admonition-default), 1) solid; - border-radius: .2rem; - box-shadow: 0 .2rem .5rem rgba(0, 0, 0, .05), 0 0 .0625rem rgba(0, 0, 0, .1); -} - -div.sidebar:not(.margin) .figure { - margin-top: 0; - padding-top: 0; - margin-left: 0; - padding-left: 0; -} - -div.sidebar:not(.margin) img.logo { - margin-top: 0; - margin-bottom: .3rem; -} - -div.sidebar:not(.margin) p { - margin-bottom: 0; -} - -div.sidebar:not(.margin) p.sidebar-title { - display: none; -} - -div.sidebar:not(.margin) div.topic { - padding: .5em 0; - background-color: transparent; - border: none; -} - -div.sidebar:not(.margin) pre { - margin: .5em 0 1.5em 0; -} - -div.sidebar:not(.margin) div[class*="highlight-"] { - margin-right: .5em; -} - -div.sidebar:not(.margin) .admonition { - margin-right: .5em; - background-color: #ffffff; -} - -@media (min-width:768px) { - div.sidebar:not(.margin) { - width: 50%; - margin-left: 1.5em; - margin-right: -28%; - } -} - - -main.bd-content #main-content dl.simple dt { - margin-top: .8em; -} - -main.bd-content #main-content dl.simple dt:nth-of-type(1) { - margin-top: 0; -} - -main.bd-content #main-content dl.simple dd { - margin-top: .8em; -} - -main.bd-content #main-content dl.simple dt+dd { - margin-top: 0; -} - -.prev-next-bottom { - margin: 20px 0 30px 0; -} - -.prev-next-bottom a.left-prev, -.prev-next-bottom a.right-next { - padding: 5px 10px; - border: 1px solid rgba(0, 0, 0, .2); - max-width: 45%; - overflow-x: hidden; - color: rgba(0, 0, 0, .65); - border-radius: 10px; -} - -/* Local navigation */ -li.nav-item.toc-entry { - line-height: 1.25em; - margin-bottom: 0.25em; -} - -span.guilabel, -span.menuselection { - border: none; - background: #e7f2fa; - border-radius: 4px; - padding: 4px 5px; - font-size: 90%; - font-weight: bold; - white-space: nowrap; -} - - -/* - * extensions - */ - -/* definitions */ -dl.py.function { - margin-bottom: 5rem; -} - -dl.py.function>dt { - background-color: var(--codeblock-color); - padding: 4px 5px; -} - -dl.py.function>dt:target { - background-color: var(--target-color); -} - -dl.field-list>dt { - padding-left: 0; -} - -/* code blocks */ -div.viewcode-block:target { - padding: 10px 10px; - background-color: var(--codeblock-color); - border-top: 1px solid var(--codeblock-color); - border-bottom: 1px solid var(--codeblock-color); -} - -/* Fix paragraphs in list items. */ -#main-content ol > li > p:nth-child(n+2), -#main-content ul > li > p:nth-child(n+2) { - margin-top: 1em; -} - -video { - width: 100%; -} diff --git a/docs/_static/patch_scrollToActive.js b/docs/_static/patch_scrollToActive.js deleted file mode 100644 index 6cad65df0..000000000 --- a/docs/_static/patch_scrollToActive.js +++ /dev/null @@ -1,41 +0,0 @@ -/** - * Patch of scrollToActive of sphinxbook theme - * Scroll to active navigation item - */ - -/** - * A helper function to load scripts when the DOM is loaded. - * This waits for everything to be on the page first before running, since - * some functionality doesn't behave properly until everything is ready. - */ - var sbRunWhenDOMLoaded = (cb) => { - if (document.readyState != "loading") { - cb(); - } else if (document.addEventListener) { - document.addEventListener("DOMContentLoaded", cb); - } else { - document.attachEvent("onreadystatechange", function () { - if (document.readyState == "complete") cb(); - }); - } -}; - -/** - * Sidebar scroll on load. - * - * Detect the active page in the sidebar, and scroll so that it is centered on - * the screen. - */ - -var scrollToActive = () => { - let navbar_scrollable = $("#site-navigation").children()[0]; - let active_navigation_item = $("#site-navigation .active").last(); - if (active_navigation_item) { - if (active_navigation_item.offset().top > $(window).height() * 0.5) { - navbar_scrollable.scrollTop = active_navigation_item.offset().top - $(window).height() * 0.2; - } - } -}; - - -sbRunWhenDOMLoaded(scrollToActive); diff --git a/docs/_static/search_shortcut.js b/docs/_static/search_shortcut.js deleted file mode 100644 index 177bf7f1a..000000000 --- a/docs/_static/search_shortcut.js +++ /dev/null @@ -1,35 +0,0 @@ -/** - * Add shortcut `ctrl+k` to focus on search field - */ - - $(document).ready(() => { - if (window.location.pathname === '/search.html') { - $('form.bd-search .input-group').hide(); // Hide Sidebar Search field - - $(document).keydown(function(event) { - if ((event.ctrlKey || event.metaKey) && event.key == "k") { - event.preventDefault(); - $('#q').focus(); - } - }); - } else { - $(document).keydown(function(event) { - if ((event.ctrlKey || event.metaKey) && event.key == "k") { - event.preventDefault(); - $('#search-input').focus(); - } - }); - } - - // if OS isn't Mac change visual indication of search field - if (navigator.platform.indexOf('Mac') === -1) { - $('#search-shortcut').html("^"); - $('#search-page-shortcut').html("^"); - } - -}); - -function onReset() { - $('#search-form').trigger('reset'); - $('#search-form').trigger('submit'); -} \ No newline at end of file diff --git a/docs/_static/searchtools.js b/docs/_static/searchtools.js deleted file mode 100644 index a9b62c7e9..000000000 --- a/docs/_static/searchtools.js +++ /dev/null @@ -1,604 +0,0 @@ -/* - * searchtools.js - * ~~~~~~~~~~~~~~~~ - * - * Sphinx JavaScript utilities for the full-text search. - * - * :copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -var title_documentation = 'Plone Documentation'; - -if (!Scorer) { - /** - * Simple result scoring code. - */ - var Scorer = { - // Implement the following function to further tweak the score for each result - // The function takes a result array [filename, title, anchor, descr, score] - // and returns the new score. - /* - score: function(result) { - return result[4]; - }, - */ - - // query matches the full name of an object - objNameMatch: 11, - // or matches in the last dotted part of the object name - objPartialMatch: 6, - // Additive scores depending on the priority of the object - objPrio: {0: 15, // used to be importantResults - 1: 5, // used to be objectResults - 2: -5}, // used to be unimportantResults - // Used when the priority is not in the mapping. - objPrioDefault: 0, - - // query found in title - title: 15, - partialTitle: 7, - // query found in terms - term: 5, - partialTerm: 2 - }; -} - -if (!splitQuery) { - function splitQuery(query) { - return query.split(/\s+/); - } -} - -/** - * Search Module - */ -var Search = { - - _index : null, - _queued_query : null, - _pulse_status : -1, - - htmlToText : function(htmlString) { - var virtualDocument = document.implementation.createHTMLDocument('virtual'); - var htmlElement = $(htmlString, virtualDocument); - htmlElement.find('.headerlink').remove(); - docContent = htmlElement.find('[role=main]')[0]; - if(docContent === undefined) { - console.warn("Content block not found. Sphinx search tries to obtain it " + - "via '[role=main]'. Could you check your theme or template."); - return ""; - } - return docContent.textContent || docContent.innerText; - }, - - init : function() { - var params = $.getQueryParameters(); - let doc_section = params.doc_section ? params.doc_section[0] : 'all'; - $('input[id="doc_section_' + doc_section + '"]').prop("checked", true) - if (params.q) { - var query = params.q[0]; - $('input[name="q"]')[0].value = query; - $('input[name="q"]')[1].value = query; - this.performSearch(query, doc_section); - } - }, - - loadIndex : function(url) { - $.ajax({type: "GET", url: url, data: null, - dataType: "script", cache: true, - complete: function(jqxhr, textstatus) { - if (textstatus != "success") { - document.getElementById("searchindexloader").src = url; - } - }}); - }, - - setIndex : function(index) { - var q; - this._index = index; - if ((q = this._queued_query) !== null) { - this._queued_query = null; - Search.query(q); - } - }, - - hasIndex : function() { - return this._index !== null; - }, - - deferQuery : function(query) { - this._queued_query = query; - }, - - stopPulse : function() { - this._pulse_status = 0; - }, - - startPulse : function() { - if (this._pulse_status >= 0) - return; - function pulse() { - var i; - Search._pulse_status = (Search._pulse_status + 1) % 4; - var dotString = ''; - for (i = 0; i < Search._pulse_status; i++) - dotString += '.'; - Search.dots.text(dotString); - if (Search._pulse_status > -1) - window.setTimeout(pulse, 500); - } - pulse(); - }, - - /** - * perform a search for something (or wait until index is loaded) - */ - performSearch : function(query, doc_section) { - // create the required interface elements - this.out = $('#search-results'); - this.title = $('').appendTo(this.out); - this.dots = $('').appendTo(this.title); - this.status = $('

 

').appendTo(this.out); - this.output = $('