Deployed 09393cc3
to 0.141.5 with MkDocs 1.6.1 and mike 2.1.3
115
0.141.5/404.html
Normal file
0
0.141.5/__init__.py
Normal file
53
0.141.5/assets/_markdown_exec_pyodide.css
Normal file
|
@ -0,0 +1,53 @@
|
|||
html[data-theme="light"] {
|
||||
@import "https://cdn.jsdelivr.net/npm/highlightjs-themes@1.0.0/tomorrow.css"
|
||||
}
|
||||
|
||||
html[data-theme="dark"] {
|
||||
@import "https://cdn.jsdelivr.net/npm/highlightjs-themes@1.0.0/tomorrow-night-blue.min.css"
|
||||
}
|
||||
|
||||
|
||||
.ace_gutter {
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.pyodide-editor {
|
||||
width: 100%;
|
||||
font-size: .85em;
|
||||
}
|
||||
|
||||
.pyodide-editor-bar {
|
||||
color: var(--md-primary-bg-color);
|
||||
background-color: var(--md-primary-fg-color);
|
||||
width: 100%;
|
||||
font: monospace;
|
||||
font-size: 0.75em;
|
||||
padding: 2px 0 2px;
|
||||
}
|
||||
|
||||
.pyodide-bar-item {
|
||||
padding: 0 18px 0;
|
||||
display: inline-block;
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
.pyodide pre {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.pyodide-output {
|
||||
width: 100%;
|
||||
margin-bottom: -15px;
|
||||
min-height: 46px;
|
||||
max-height: 400px
|
||||
}
|
||||
|
||||
.pyodide-clickable {
|
||||
cursor: pointer;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
/* For themes other than Material. */
|
||||
.pyodide .twemoji svg {
|
||||
width: 1rem;
|
||||
}
|
131
0.141.5/assets/_markdown_exec_pyodide.js
Normal file
|
@ -0,0 +1,131 @@
|
|||
var _sessions = {};
|
||||
|
||||
function getSession(name, pyodide) {
|
||||
if (!(name in _sessions)) {
|
||||
_sessions[name] = pyodide.globals.get("dict")();
|
||||
}
|
||||
return _sessions[name];
|
||||
}
|
||||
|
||||
function writeOutput(element, string) {
|
||||
element.innerHTML += string + '\n';
|
||||
}
|
||||
|
||||
function clearOutput(element) {
|
||||
element.innerHTML = '';
|
||||
}
|
||||
|
||||
async function evaluatePython(pyodide, editor, output, session) {
|
||||
pyodide.setStdout({ batched: (string) => { writeOutput(output, new Option(string).innerHTML); } });
|
||||
let result, code = editor.getValue();
|
||||
clearOutput(output);
|
||||
try {
|
||||
result = await pyodide.runPythonAsync(code, { globals: getSession(session, pyodide) });
|
||||
} catch (error) {
|
||||
writeOutput(output, new Option(error.toString()).innerHTML);
|
||||
}
|
||||
if (result) writeOutput(output, new Option(result).innerHTML);
|
||||
hljs.highlightElement(output);
|
||||
}
|
||||
|
||||
async function initPyodide() {
|
||||
try {
|
||||
let pyodide = await loadPyodide();
|
||||
await pyodide.loadPackage("micropip");
|
||||
return pyodide;
|
||||
} catch(error) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
function getTheme() {
|
||||
return document.body.getAttribute('data-md-color-scheme');
|
||||
}
|
||||
|
||||
function setTheme(editor, currentTheme, light, dark) {
|
||||
// https://gist.github.com/RyanNutt/cb8d60997d97905f0b2aea6c3b5c8ee0
|
||||
if (currentTheme === "default") {
|
||||
editor.setTheme("ace/theme/" + light);
|
||||
document.querySelector(`link[title="light"]`).removeAttribute("disabled");
|
||||
document.querySelector(`link[title="dark"]`).setAttribute("disabled", "disabled");
|
||||
} else if (currentTheme === "slate") {
|
||||
editor.setTheme("ace/theme/" + dark);
|
||||
document.querySelector(`link[title="dark"]`).removeAttribute("disabled");
|
||||
document.querySelector(`link[title="light"]`).setAttribute("disabled", "disabled");
|
||||
}
|
||||
}
|
||||
|
||||
function updateTheme(editor, light, dark) {
|
||||
// Create a new MutationObserver instance
|
||||
const observer = new MutationObserver((mutations) => {
|
||||
// Loop through the mutations that occurred
|
||||
mutations.forEach((mutation) => {
|
||||
// Check if the mutation was a change to the data-md-color-scheme attribute
|
||||
if (mutation.attributeName === 'data-md-color-scheme') {
|
||||
// Get the new value of the attribute
|
||||
const newColorScheme = mutation.target.getAttribute('data-md-color-scheme');
|
||||
// Update the editor theme
|
||||
setTheme(editor, newColorScheme, light, dark);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// Configure the observer to watch for changes to the data-md-color-scheme attribute
|
||||
observer.observe(document.body, {
|
||||
attributes: true,
|
||||
attributeFilter: ['data-md-color-scheme'],
|
||||
});
|
||||
}
|
||||
|
||||
async function setupPyodide(
|
||||
idPrefix,
|
||||
install = null,
|
||||
themeLight = 'tomorrow',
|
||||
themeDark = 'tomorrow_night',
|
||||
session = null,
|
||||
minLines = 5,
|
||||
maxLines = 30,
|
||||
) {
|
||||
const editor = ace.edit(idPrefix + "editor");
|
||||
const run = document.getElementById(idPrefix + "run");
|
||||
const clear = document.getElementById(idPrefix + "clear");
|
||||
const output = document.getElementById(idPrefix + "output");
|
||||
|
||||
updateTheme(editor, themeLight, themeDark);
|
||||
|
||||
editor.session.setMode("ace/mode/python");
|
||||
setTheme(editor, getTheme(), themeLight, themeDark);
|
||||
|
||||
editor.setOption("minLines", minLines);
|
||||
editor.setOption("maxLines", maxLines);
|
||||
|
||||
// Force editor to resize after setting options
|
||||
editor.resize();
|
||||
|
||||
writeOutput(output, "Initializing...");
|
||||
let pyodide = await pyodidePromise;
|
||||
if (install && install.length) {
|
||||
try {
|
||||
micropip = pyodide.pyimport("micropip");
|
||||
for (const package of install)
|
||||
await micropip.install(package);
|
||||
clearOutput(output);
|
||||
} catch (error) {
|
||||
clearOutput(output);
|
||||
writeOutput(output, `Could not install one or more packages: ${install.join(", ")}\n`);
|
||||
writeOutput(output, new Option(error.toString()).innerHTML);
|
||||
}
|
||||
} else {
|
||||
clearOutput(output);
|
||||
}
|
||||
run.onclick = () => evaluatePython(pyodide, editor, output, session);
|
||||
clear.onclick = () => clearOutput(output);
|
||||
output.parentElement.parentElement.addEventListener("keydown", (event) => {
|
||||
if (event.ctrlKey && event.key.toLowerCase() === 'enter') {
|
||||
event.preventDefault();
|
||||
run.click();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
var pyodidePromise = initPyodide();
|
181
0.141.5/assets/_mkdocstrings.css
Normal file
|
@ -0,0 +1,181 @@
|
|||
|
||||
/* Avoid breaking parameter names, etc. in table cells. */
|
||||
.doc-contents td code {
|
||||
word-break: normal !important;
|
||||
}
|
||||
|
||||
/* No line break before first paragraph of descriptions. */
|
||||
.doc-md-description,
|
||||
.doc-md-description>p:first-child {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
/* No text transformation from Material for MkDocs for H5 headings. */
|
||||
.md-typeset h5 .doc-object-name {
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
/* Max width for docstring sections tables. */
|
||||
.doc .md-typeset__table,
|
||||
.doc .md-typeset__table table {
|
||||
display: table !important;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.doc .md-typeset__table tr {
|
||||
display: table-row;
|
||||
}
|
||||
|
||||
/* Defaults in Spacy table style. */
|
||||
.doc-param-default {
|
||||
float: right;
|
||||
}
|
||||
|
||||
/* Parameter headings must be inline, not blocks. */
|
||||
.doc-heading-parameter {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
/* Default font size for parameter headings. */
|
||||
.md-typeset .doc-heading-parameter {
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
/* Prefer space on the right, not the left of parameter permalinks. */
|
||||
.doc-heading-parameter .headerlink {
|
||||
margin-left: 0 !important;
|
||||
margin-right: 0.2rem;
|
||||
}
|
||||
|
||||
/* Backward-compatibility: docstring section titles in bold. */
|
||||
.doc-section-title {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/* Backlinks crumb separator. */
|
||||
.doc-backlink-crumb {
|
||||
display: inline-flex;
|
||||
gap: .2rem;
|
||||
white-space: nowrap;
|
||||
align-items: center;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.doc-backlink-crumb:not(:first-child)::before {
|
||||
background-color: var(--md-default-fg-color--lighter);
|
||||
content: "";
|
||||
display: inline;
|
||||
height: 1rem;
|
||||
--md-path-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M8.59 16.58 13.17 12 8.59 7.41 10 6l6 6-6 6z"/></svg>');
|
||||
-webkit-mask-image: var(--md-path-icon);
|
||||
mask-image: var(--md-path-icon);
|
||||
width: 1rem;
|
||||
}
|
||||
.doc-backlink-crumb.last {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/* Symbols in Navigation and ToC. */
|
||||
:root, :host,
|
||||
[data-md-color-scheme="default"] {
|
||||
--doc-symbol-parameter-fg-color: #df50af;
|
||||
--doc-symbol-attribute-fg-color: #953800;
|
||||
--doc-symbol-function-fg-color: #8250df;
|
||||
--doc-symbol-method-fg-color: #8250df;
|
||||
--doc-symbol-class-fg-color: #0550ae;
|
||||
--doc-symbol-module-fg-color: #5cad0f;
|
||||
|
||||
--doc-symbol-parameter-bg-color: #df50af1a;
|
||||
--doc-symbol-attribute-bg-color: #9538001a;
|
||||
--doc-symbol-function-bg-color: #8250df1a;
|
||||
--doc-symbol-method-bg-color: #8250df1a;
|
||||
--doc-symbol-class-bg-color: #0550ae1a;
|
||||
--doc-symbol-module-bg-color: #5cad0f1a;
|
||||
}
|
||||
|
||||
[data-md-color-scheme="slate"] {
|
||||
--doc-symbol-parameter-fg-color: #ffa8cc;
|
||||
--doc-symbol-attribute-fg-color: #ffa657;
|
||||
--doc-symbol-function-fg-color: #d2a8ff;
|
||||
--doc-symbol-method-fg-color: #d2a8ff;
|
||||
--doc-symbol-class-fg-color: #79c0ff;
|
||||
--doc-symbol-module-fg-color: #baff79;
|
||||
|
||||
--doc-symbol-parameter-bg-color: #ffa8cc1a;
|
||||
--doc-symbol-attribute-bg-color: #ffa6571a;
|
||||
--doc-symbol-function-bg-color: #d2a8ff1a;
|
||||
--doc-symbol-method-bg-color: #d2a8ff1a;
|
||||
--doc-symbol-class-bg-color: #79c0ff1a;
|
||||
--doc-symbol-module-bg-color: #baff791a;
|
||||
}
|
||||
|
||||
code.doc-symbol {
|
||||
border-radius: .1rem;
|
||||
font-size: .85em;
|
||||
padding: 0 .3em;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
code.doc-symbol-parameter,
|
||||
a code.doc-symbol-parameter {
|
||||
color: var(--doc-symbol-parameter-fg-color);
|
||||
background-color: var(--doc-symbol-parameter-bg-color);
|
||||
}
|
||||
|
||||
code.doc-symbol-parameter::after {
|
||||
content: "param";
|
||||
}
|
||||
|
||||
code.doc-symbol-attribute,
|
||||
a code.doc-symbol-attribute {
|
||||
color: var(--doc-symbol-attribute-fg-color);
|
||||
background-color: var(--doc-symbol-attribute-bg-color);
|
||||
}
|
||||
|
||||
code.doc-symbol-attribute::after {
|
||||
content: "attr";
|
||||
}
|
||||
|
||||
code.doc-symbol-function,
|
||||
a code.doc-symbol-function {
|
||||
color: var(--doc-symbol-function-fg-color);
|
||||
background-color: var(--doc-symbol-function-bg-color);
|
||||
}
|
||||
|
||||
code.doc-symbol-function::after {
|
||||
content: "func";
|
||||
}
|
||||
|
||||
code.doc-symbol-method,
|
||||
a code.doc-symbol-method {
|
||||
color: var(--doc-symbol-method-fg-color);
|
||||
background-color: var(--doc-symbol-method-bg-color);
|
||||
}
|
||||
|
||||
code.doc-symbol-method::after {
|
||||
content: "meth";
|
||||
}
|
||||
|
||||
code.doc-symbol-class,
|
||||
a code.doc-symbol-class {
|
||||
color: var(--doc-symbol-class-fg-color);
|
||||
background-color: var(--doc-symbol-class-bg-color);
|
||||
}
|
||||
|
||||
code.doc-symbol-class::after {
|
||||
content: "class";
|
||||
}
|
||||
|
||||
code.doc-symbol-module,
|
||||
a code.doc-symbol-module {
|
||||
color: var(--doc-symbol-module-fg-color);
|
||||
background-color: var(--doc-symbol-module-bg-color);
|
||||
}
|
||||
|
||||
code.doc-symbol-module::after {
|
||||
content: "mod";
|
||||
}
|
||||
|
||||
.doc-signature .autorefs {
|
||||
color: inherit;
|
||||
border-bottom: 1px dotted currentcolor;
|
||||
}
|
BIN
0.141.5/assets/images/favicon.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
0.141.5/assets/images/social/README.png
Normal file
After Width: | Height: | Size: 46 KiB |
BIN
0.141.5/assets/images/social/community/code_of_conduct.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
0.141.5/assets/images/social/community/contributing.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
0.141.5/assets/images/social/community/development.png
Normal file
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 37 KiB |
After Width: | Height: | Size: 33 KiB |
After Width: | Height: | Size: 43 KiB |
BIN
0.141.5/assets/images/social/community/help.png
Normal file
After Width: | Height: | Size: 36 KiB |
After Width: | Height: | Size: 37 KiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 37 KiB |
After Width: | Height: | Size: 40 KiB |
BIN
0.141.5/assets/images/social/concepts/advanced/extensions.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
0.141.5/assets/images/social/concepts/advanced/hooks.png
Normal file
After Width: | Height: | Size: 33 KiB |
After Width: | Height: | Size: 34 KiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 36 KiB |
After Width: | Height: | Size: 33 KiB |
BIN
0.141.5/assets/images/social/concepts/advanced/template_tags.png
Normal file
After Width: | Height: | Size: 40 KiB |
BIN
0.141.5/assets/images/social/concepts/advanced/testing.png
Normal file
After Width: | Height: | Size: 29 KiB |
After Width: | Height: | Size: 36 KiB |
After Width: | Height: | Size: 38 KiB |
After Width: | Height: | Size: 42 KiB |
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 35 KiB |
After Width: | Height: | Size: 39 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 39 KiB |
After Width: | Height: | Size: 42 KiB |
After Width: | Height: | Size: 39 KiB |
BIN
0.141.5/assets/images/social/concepts/fundamentals/slots.png
Normal file
After Width: | Height: | Size: 29 KiB |
After Width: | Height: | Size: 43 KiB |
After Width: | Height: | Size: 38 KiB |
After Width: | Height: | Size: 38 KiB |
BIN
0.141.5/assets/images/social/examples/overview.png
Normal file
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 35 KiB |
BIN
0.141.5/assets/images/social/getting_started/adding_slots.png
Normal file
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 40 KiB |
BIN
0.141.5/assets/images/social/getting_started/installation.png
Normal file
After Width: | Height: | Size: 29 KiB |
After Width: | Height: | Size: 42 KiB |
After Width: | Height: | Size: 39 KiB |
After Width: | Height: | Size: 42 KiB |
BIN
0.141.5/assets/images/social/guides/other/troubleshooting.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
0.141.5/assets/images/social/guides/setup/caching.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
0.141.5/assets/images/social/guides/setup/development_server.png
Normal file
After Width: | Height: | Size: 36 KiB |
After Width: | Height: | Size: 41 KiB |
BIN
0.141.5/assets/images/social/overview/compatibility.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
0.141.5/assets/images/social/overview/license.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/overview/performance.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
0.141.5/assets/images/social/overview/security_notes.png
Normal file
After Width: | Height: | Size: 37 KiB |
BIN
0.141.5/assets/images/social/overview/welcome.png
Normal file
After Width: | Height: | Size: 46 KiB |
BIN
0.141.5/assets/images/social/plugins/index.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/reference/api.png
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
0.141.5/assets/images/social/reference/commands.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
0.141.5/assets/images/social/reference/components.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
0.141.5/assets/images/social/reference/exceptions.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
0.141.5/assets/images/social/reference/extension_commands.png
Normal file
After Width: | Height: | Size: 42 KiB |
BIN
0.141.5/assets/images/social/reference/extension_hooks.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
0.141.5/assets/images/social/reference/extension_urls.png
Normal file
After Width: | Height: | Size: 35 KiB |
BIN
0.141.5/assets/images/social/reference/settings.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
0.141.5/assets/images/social/reference/signals.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
0.141.5/assets/images/social/reference/tag_formatters.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
0.141.5/assets/images/social/reference/template_tags.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
0.141.5/assets/images/social/reference/template_variables.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
0.141.5/assets/images/social/reference/testing_api.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
0.141.5/assets/images/social/reference/urls.png
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
0.141.5/assets/images/social/releases/index.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
0.141.5/assets/images/social/releases/v0.100.png
Normal file
After Width: | Height: | Size: 38 KiB |
BIN
0.141.5/assets/images/social/releases/v0.110.png
Normal file
After Width: | Height: | Size: 38 KiB |
BIN
0.141.5/assets/images/social/releases/v0.111.png
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
0.141.5/assets/images/social/releases/v0.112.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/releases/v0.113.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/releases/v0.114.png
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
0.141.5/assets/images/social/releases/v0.115.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/releases/v0.116.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/releases/v0.117.png
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
0.141.5/assets/images/social/releases/v0.118.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/releases/v0.119.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/releases/v0.120.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/releases/v0.121.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/releases/v0.122.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/releases/v0.123.png
Normal file
After Width: | Height: | Size: 29 KiB |
BIN
0.141.5/assets/images/social/releases/v0.124.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/releases/v0.125.png
Normal file
After Width: | Height: | Size: 29 KiB |
BIN
0.141.5/assets/images/social/releases/v0.126.png
Normal file
After Width: | Height: | Size: 30 KiB |
BIN
0.141.5/assets/images/social/releases/v0.127.png
Normal file
After Width: | Height: | Size: 29 KiB |
BIN
0.141.5/assets/images/social/releases/v0.128.png
Normal file
After Width: | Height: | Size: 30 KiB |
BIN
0.141.5/assets/images/social/releases/v0.129.png
Normal file
After Width: | Height: | Size: 29 KiB |
BIN
0.141.5/assets/images/social/releases/v0.130.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/releases/v0.131.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/releases/v0.132.png
Normal file
After Width: | Height: | Size: 29 KiB |
BIN
0.141.5/assets/images/social/releases/v0.133.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
0.141.5/assets/images/social/releases/v0.134.png
Normal file
After Width: | Height: | Size: 29 KiB |