From 3a627cc26d2a0aad4cbc87a81416b7d70268d8b8 Mon Sep 17 00:00:00 2001 From: Andrey Kislyuk Date: Sun, 14 Apr 2024 14:26:56 -0700 Subject: [PATCH] Docs for v3.3.0 --- .buildinfo | 4 + .doctrees/changelog.doctree | Bin 0 -> 85724 bytes .doctrees/environment.pickle | Bin 0 -> 2507173 bytes .doctrees/index.doctree | Bin 0 -> 148100 bytes .nojekyll | 0 _modules/argcomplete/completers.html | 382 ++++++++ _modules/argcomplete/exceptions.html | 230 +++++ _modules/argcomplete/finders.html | 861 +++++++++++++++++ _modules/argcomplete/io.html | 270 ++++++ _modules/argcomplete/shell_integration.html | 429 +++++++++ _modules/index.html | 230 +++++ _sources/changelog.rst.txt | 3 + _sources/index.rst.txt | 20 + _static/basic.css | 925 +++++++++++++++++++ _static/check-solid.svg | 4 + _static/clipboard.min.js | 7 + _static/copy-button.svg | 5 + _static/copybutton.css | 94 ++ _static/copybutton.js | 248 +++++ _static/copybutton_funcs.js | 73 ++ _static/debug.css | 69 ++ _static/doctools.js | 156 ++++ _static/documentation_options.js | 13 + _static/file.png | Bin 0 -> 286 bytes _static/language_data.js | 199 ++++ _static/minus.png | Bin 0 -> 90 bytes _static/plus.png | Bin 0 -> 90 bytes _static/pygments.css | 249 +++++ _static/scripts/furo-extensions.js | 0 _static/scripts/furo.js | 3 + _static/scripts/furo.js.LICENSE.txt | 7 + _static/scripts/furo.js.map | 1 + _static/searchtools.js | 574 ++++++++++++ _static/skeleton.css | 296 ++++++ _static/sphinx_highlight.js | 154 ++++ _static/styles/furo-extensions.css | 2 + _static/styles/furo-extensions.css.map | 1 + _static/styles/furo.css | 2 + _static/styles/furo.css.map | 1 + changelog.html | 879 ++++++++++++++++++ genindex.html | 398 ++++++++ index.html | 974 ++++++++++++++++++++ objects.inv | Bin 0 -> 573 bytes py-modindex.html | 243 +++++ search.html | 236 +++++ searchindex.js | 1 + 46 files changed, 8243 insertions(+) create mode 100644 .buildinfo create mode 100644 .doctrees/changelog.doctree create mode 100644 .doctrees/environment.pickle create mode 100644 .doctrees/index.doctree create mode 100644 .nojekyll create mode 100644 _modules/argcomplete/completers.html create mode 100644 _modules/argcomplete/exceptions.html create mode 100644 _modules/argcomplete/finders.html create mode 100644 _modules/argcomplete/io.html create mode 100644 _modules/argcomplete/shell_integration.html create mode 100644 _modules/index.html create mode 100644 _sources/changelog.rst.txt create mode 100644 _sources/index.rst.txt create mode 100644 _static/basic.css create mode 100644 _static/check-solid.svg create mode 100644 _static/clipboard.min.js create mode 100644 _static/copy-button.svg create mode 100644 _static/copybutton.css create mode 100644 _static/copybutton.js create mode 100644 _static/copybutton_funcs.js create mode 100644 _static/debug.css create mode 100644 _static/doctools.js create mode 100644 _static/documentation_options.js create mode 100644 _static/file.png create mode 100644 _static/language_data.js create mode 100644 _static/minus.png create mode 100644 _static/plus.png create mode 100644 _static/pygments.css create mode 100644 _static/scripts/furo-extensions.js create mode 100644 _static/scripts/furo.js create mode 100644 _static/scripts/furo.js.LICENSE.txt create mode 100644 _static/scripts/furo.js.map create mode 100644 _static/searchtools.js create mode 100644 _static/skeleton.css create mode 100644 _static/sphinx_highlight.js create mode 100644 _static/styles/furo-extensions.css create mode 100644 _static/styles/furo-extensions.css.map create mode 100644 _static/styles/furo.css create mode 100644 _static/styles/furo.css.map create mode 100644 changelog.html create mode 100644 genindex.html create mode 100644 index.html create mode 100644 objects.inv create mode 100644 py-modindex.html create mode 100644 search.html create mode 100644 searchindex.js diff --git a/.buildinfo b/.buildinfo new file mode 100644 index 00000000..6b4375ba --- /dev/null +++ b/.buildinfo @@ -0,0 +1,4 @@ +# Sphinx build info version 1 +# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. +config: 5dfb9f45d5004f1a158e3340823a5e8f +tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/.doctrees/changelog.doctree b/.doctrees/changelog.doctree new file mode 100644 index 0000000000000000000000000000000000000000..ca274672fd930e20975b6b38d1f1af22c8f70287 GIT binary patch literal 85724 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

9-7gW2zr~Mm%k0GR6iDha;U?|<^;c`? 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

qGoW)7z#&H*xWG-})a`Vky+6n@~QqKj* zr_|SX#nc0X`4tff=IkQ5e{e^!MqW!=O(`v|GoY!wJ!<7d4`4oR_7{cf_fZw6h%=ZJ zL{g-*N0iJ;HHVVB6`1U7DXDc_pFFkQpE6Y%IxB9^N`l?LPiO zjzDOrataL!+3&_Q2v5a~L}L?SG|U7vWN z_Bf(0xrA!)1!T$vwX7%KHxBKN6{}!~(yT$WF7_i(`)n~_dCo1$Zb*pQ#Sy5DO!Bw` z+Yte`oEOBHbsjIDG*&7B$*A;2LF-pM5hH$iXGiR3bNnr8n4OtEThZctp9I<)j_GD< zte~iKKEmbB@USE!6qU2_0)eE)V*1$qP6@vHNeuq&ogI7@Kq%_I6%8jd5QD)0P4Wd= zCzDp{1I%j7fv5nQXJS$VzKNk!*fEbD(X&X0Ya|)ixZ=Y?0?(g{X)K9Y1(D=@6pgl? zysM#(Fr`G!UDAOShaAg{NRq1X4NQ?FDACIae-D-9F4C_Px4iN9P+y!D3V#n(&K!mw zKs;CqEcsq7X}_q(14d3{>siG!O}$#gS<0*RzjVi5ExzllSIg6j6d%_euhtHA+9aJ* zYarICWw+e2PwR#A;nNC%H-$@U&@#g9cC*^fB^x-#XLYLmrJS(BUJz>atgEASbc7CR z$76Mx-Cg5^B4wzuEW(=*!ZOY!gp&F8CamA>ote9#SRN}>`$MF$Nyhq+!FjZ`=C_kE>P|Wn zZX+zRGvVpD3v(ufsSnqea7hcp4|631Xr~O_QwR(%Rw|Jzp?X~*H#Rd}DvshzBKCPb zf+$ylPNhJreJm*v7F`%EB8&Z4W@HxoxcVt#4*G�YyZ-Bw9m*8FC7Ei%K1Uup>PL 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

*k9cNS{VR%JSGc91GxA^_PotU0|qKf5iR#< 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

SzK{Dj*l(!)gB!%Hf1p)G= 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℞bfNx7ZBj6o;)t2)~ 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 a)~P?-{WZHGLnA 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 literal 0 HcmV?d00001 diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/_modules/argcomplete/completers.html b/_modules/argcomplete/completers.html new file mode 100644 index 00000000..4ccc44b8 --- /dev/null +++ b/_modules/argcomplete/completers.html @@ -0,0 +1,382 @@ + + + + + + + + argcomplete.completers - argcomplete documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for argcomplete.completers

+# Copyright 2012-2023, Andrey Kislyuk and argcomplete contributors.
+# Licensed under the Apache License. See https://github.com/kislyuk/argcomplete for more info.
+
+import argparse
+import os
+import subprocess
+
+
+def _call(*args, **kwargs):
+    # TODO: replace "universal_newlines" with "text" once 3.6 support is dropped
+    kwargs["universal_newlines"] = True
+    try:
+        return subprocess.check_output(*args, **kwargs).splitlines()
+    except subprocess.CalledProcessError:
+        return []
+
+
+class BaseCompleter:
+    """
+    This is the base class that all argcomplete completers should subclass.
+    """
+
+    def __call__(
+        self, *, prefix: str, action: argparse.Action, parser: argparse.ArgumentParser, parsed_args: argparse.Namespace
+    ):
+        raise NotImplementedError("This method should be implemented by a subclass.")
+
+
+
+[docs] +class ChoicesCompleter(BaseCompleter): +
+[docs] + def __init__(self, choices): + self.choices = choices
+ + + def _convert(self, choice): + if not isinstance(choice, str): + choice = str(choice) + return choice + +
+[docs] + def __call__(self, **kwargs): + return (self._convert(c) for c in self.choices)
+
+ + + +EnvironCompleter = ChoicesCompleter(os.environ) + + +
+[docs] +class FilesCompleter(BaseCompleter): + """ + File completer class, optionally takes a list of allowed extensions + """ + +
+[docs] + def __init__(self, allowednames=(), directories=True): + # Fix if someone passes in a string instead of a list + if isinstance(allowednames, (str, bytes)): + allowednames = [allowednames] + + self.allowednames = [x.lstrip("*").lstrip(".") for x in allowednames] + self.directories = directories
+ + +
+[docs] + def __call__(self, prefix, **kwargs): + completion = [] + if self.allowednames: + if self.directories: + files = _call(["bash", "-c", "compgen -A directory -- '{p}'".format(p=prefix)]) + completion += [f + "/" for f in files] + for x in self.allowednames: + completion += _call(["bash", "-c", "compgen -A file -X '!*.{0}' -- '{p}'".format(x, p=prefix)]) + else: + completion += _call(["bash", "-c", "compgen -A file -- '{p}'".format(p=prefix)]) + anticomp = _call(["bash", "-c", "compgen -A directory -- '{p}'".format(p=prefix)]) + completion = list(set(completion) - set(anticomp)) + + if self.directories: + completion += [f + "/" for f in anticomp] + return completion
+
+ + + +class _FilteredFilesCompleter(BaseCompleter): + def __init__(self, predicate): + """ + Create the completer + + A predicate accepts as its only argument a candidate path and either + accepts it or rejects it. + """ + assert predicate, "Expected a callable predicate" + self.predicate = predicate + + def __call__(self, prefix, **kwargs): + """ + Provide completions on prefix + """ + target_dir = os.path.dirname(prefix) + try: + names = os.listdir(target_dir or ".") + except Exception: + return # empty iterator + incomplete_part = os.path.basename(prefix) + # Iterate on target_dir entries and filter on given predicate + for name in names: + if not name.startswith(incomplete_part): + continue + candidate = os.path.join(target_dir, name) + if not self.predicate(candidate): + continue + yield candidate + "/" if os.path.isdir(candidate) else candidate + + +
+[docs] +class DirectoriesCompleter(_FilteredFilesCompleter): +
+[docs] + def __init__(self): + _FilteredFilesCompleter.__init__(self, predicate=os.path.isdir)
+
+ + + +
+[docs] +class SuppressCompleter(BaseCompleter): + """ + A completer used to suppress the completion of specific arguments + """ + +
+[docs] + def __init__(self): + pass
+ + +
+[docs] + def suppress(self): + """ + Decide if the completion should be suppressed + """ + return True
+
+ +
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + + + \ No newline at end of file diff --git a/_modules/argcomplete/exceptions.html b/_modules/argcomplete/exceptions.html new file mode 100644 index 00000000..c0916a7f --- /dev/null +++ b/_modules/argcomplete/exceptions.html @@ -0,0 +1,230 @@ + + + + + + + + argcomplete.exceptions - argcomplete documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for argcomplete.exceptions

+
+[docs] +class ArgcompleteException(Exception): + "Exception raised when the shell argument completion process fails."
+ +
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + + + \ No newline at end of file diff --git a/_modules/argcomplete/finders.html b/_modules/argcomplete/finders.html new file mode 100644 index 00000000..538ecee1 --- /dev/null +++ b/_modules/argcomplete/finders.html @@ -0,0 +1,861 @@ + + + + + + + + argcomplete.finders - argcomplete documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for argcomplete.finders

+# Copyright 2012-2023, Andrey Kislyuk and argcomplete contributors. Licensed under the terms of the
+# `Apache License, Version 2.0 <http://www.apache.org/licenses/LICENSE-2.0>`_. Distribution of the LICENSE and NOTICE
+# files with source copies of this package and derivative works is **REQUIRED** as specified by the Apache License.
+# See https://github.com/kislyuk/argcomplete for more info.
+
+import argparse
+import os
+import sys
+from collections.abc import Mapping
+from typing import Callable, Dict, List, Optional, Sequence, Union
+
+from . import io as _io
+from .completers import ChoicesCompleter, FilesCompleter, SuppressCompleter
+from .io import debug, mute_stderr
+from .lexers import split_line
+from .packages._argparse import IntrospectiveArgumentParser, action_is_greedy, action_is_open, action_is_satisfied
+
+safe_actions = {
+    argparse._StoreAction,
+    argparse._StoreConstAction,
+    argparse._StoreTrueAction,
+    argparse._StoreFalseAction,
+    argparse._AppendAction,
+    argparse._AppendConstAction,
+    argparse._CountAction,
+}
+
+
+def default_validator(completion, prefix):
+    return completion.startswith(prefix)
+
+
+
+[docs] +class CompletionFinder(object): + """ + Inherit from this class if you wish to override any of the stages below. Otherwise, use + ``argcomplete.autocomplete()`` directly (it's a convenience instance of this class). It has the same signature as + :meth:`CompletionFinder.__call__()`. + """ + +
+[docs] + def __init__( + self, + argument_parser=None, + always_complete_options=True, + exclude=None, + validator=None, + print_suppressed=False, + default_completer=FilesCompleter(), + append_space=None, + ): + self._parser = argument_parser + self.always_complete_options = always_complete_options + self.exclude = exclude + if validator is None: + validator = default_validator + self.validator = validator + self.print_suppressed = print_suppressed + self.completing = False + self._display_completions: Dict[str, str] = {} + self.default_completer = default_completer + if append_space is None: + append_space = os.environ.get("_ARGCOMPLETE_SUPPRESS_SPACE") != "1" + self.append_space = append_space
+ + +
+[docs] + def __call__( + self, + argument_parser: argparse.ArgumentParser, + always_complete_options: Union[bool, str] = True, + exit_method: Callable = os._exit, + output_stream=None, + exclude: Optional[Sequence[str]] = None, + validator: Optional[Callable] = None, + print_suppressed: bool = False, + append_space: Optional[bool] = None, + default_completer=FilesCompleter(), + ): + """ + :param argument_parser: The argument parser to autocomplete on + :param always_complete_options: + Controls the autocompletion of option strings if an option string opening character (normally ``-``) has not + been entered. If ``True`` (default), both short (``-x``) and long (``--x``) option strings will be + suggested. If ``False``, no option strings will be suggested. If ``long``, long options and short options + with no long variant will be suggested. If ``short``, short options and long options with no short variant + will be suggested. + :param exit_method: + Method used to stop the program after printing completions. Defaults to :meth:`os._exit`. If you want to + perform a normal exit that calls exit handlers, use :meth:`sys.exit`. + :param exclude: List of strings representing options to be omitted from autocompletion + :param validator: + Function to filter all completions through before returning (called with two string arguments, completion + and prefix; return value is evaluated as a boolean) + :param print_suppressed: + Whether or not to autocomplete options that have the ``help=argparse.SUPPRESS`` keyword argument set. + :param append_space: + Whether to append a space to unique matches. The default is ``True``. + + .. note:: + If you are not subclassing CompletionFinder to override its behaviors, + use :meth:`argcomplete.autocomplete()` directly. It has the same signature as this method. + + Produces tab completions for ``argument_parser``. See module docs for more info. + + Argcomplete only executes actions if their class is known not to have side effects. Custom action classes can be + added to argcomplete.safe_actions, if their values are wanted in the ``parsed_args`` completer argument, or + their execution is otherwise desirable. + """ + self.__init__( # type: ignore + argument_parser, + always_complete_options=always_complete_options, + exclude=exclude, + validator=validator, + print_suppressed=print_suppressed, + append_space=append_space, + default_completer=default_completer, + ) + + if "_ARGCOMPLETE" not in os.environ: + # not an argument completion invocation + return + + self._init_debug_stream() + + if output_stream is None: + filename = os.environ.get("_ARGCOMPLETE_STDOUT_FILENAME") + if filename is not None: + debug("Using output file {}".format(filename)) + output_stream = open(filename, "w") + + if output_stream is None: + try: + output_stream = os.fdopen(8, "w") + except Exception: + debug("Unable to open fd 8 for writing, quitting") + exit_method(1) + + ifs = os.environ.get("_ARGCOMPLETE_IFS", "\013") + if len(ifs) != 1: + debug("Invalid value for IFS, quitting [{v}]".format(v=ifs)) + exit_method(1) + + dfs = os.environ.get("_ARGCOMPLETE_DFS") + if dfs and len(dfs) != 1: + debug("Invalid value for DFS, quitting [{v}]".format(v=dfs)) + exit_method(1) + + comp_line = os.environ["COMP_LINE"] + comp_point = int(os.environ["COMP_POINT"]) + + cword_prequote, cword_prefix, cword_suffix, comp_words, last_wordbreak_pos = split_line(comp_line, comp_point) + + # _ARGCOMPLETE is set by the shell script to tell us where comp_words + # should start, based on what we're completing. + # 1: <script> [args] + # 2: python <script> [args] + # 3: python -m <module> [args] + start = int(os.environ["_ARGCOMPLETE"]) - 1 + comp_words = comp_words[start:] + + if cword_prefix and cword_prefix[0] in self._parser.prefix_chars and "=" in cword_prefix: + # Special case for when the current word is "--optional=PARTIAL_VALUE". Give the optional to the parser. + comp_words.append(cword_prefix.split("=", 1)[0]) + + debug( + "\nLINE: {!r}".format(comp_line), + "\nPOINT: {!r}".format(comp_point), + "\nPREQUOTE: {!r}".format(cword_prequote), + "\nPREFIX: {!r}".format(cword_prefix), + "\nSUFFIX: {!r}".format(cword_suffix), + "\nWORDS:", + comp_words, + ) + + completions = self._get_completions(comp_words, cword_prefix, cword_prequote, last_wordbreak_pos) + + if dfs: + display_completions = { + key: value.replace(ifs, " ") if value else "" for key, value in self._display_completions.items() + } + completions = [dfs.join((key, display_completions.get(key) or "")) for key in completions] + + if os.environ.get("_ARGCOMPLETE_SHELL") == "zsh": + completions = [f"{c}:{self._display_completions.get(c)}" for c in completions] + + debug("\nReturning completions:", completions) + output_stream.write(ifs.join(completions)) + output_stream.flush() + _io.debug_stream.flush() + exit_method(0)
+ + + def _init_debug_stream(self): + """Initialize debug output stream + + By default, writes to file descriptor 9, or stderr if that fails. + This can be overridden by derived classes, for example to avoid + clashes with file descriptors being used elsewhere (such as in pytest). + """ + try: + _io.debug_stream = os.fdopen(9, "w") + except Exception: + _io.debug_stream = sys.stderr + debug() + + def _get_completions(self, comp_words, cword_prefix, cword_prequote, last_wordbreak_pos): + active_parsers = self._patch_argument_parser() + + parsed_args = argparse.Namespace() + self.completing = True + + try: + debug("invoking parser with", comp_words[1:]) + with mute_stderr(): + a = self._parser.parse_known_args(comp_words[1:], namespace=parsed_args) + debug("parsed args:", a) + except BaseException as e: + debug("\nexception", type(e), str(e), "while parsing args") + + self.completing = False + + if "--" in comp_words: + self.always_complete_options = False + + completions = self.collect_completions(active_parsers, parsed_args, cword_prefix) + completions = self.filter_completions(completions) + completions = self.quote_completions(completions, cword_prequote, last_wordbreak_pos) + return completions + + def _patch_argument_parser(self): + """ + Since argparse doesn't support much introspection, we monkey-patch it to replace the parse_known_args method and + all actions with hooks that tell us which action was last taken or about to be taken, and let us have the parser + figure out which subparsers need to be activated (then recursively monkey-patch those). + We save all active ArgumentParsers to extract all their possible option names later. + """ + self.active_parsers: List[argparse.ArgumentParser] = [] + self.visited_positionals: List[argparse.Action] = [] + + completer = self + + def patch(parser): + completer.visited_positionals.append(parser) + completer.active_parsers.append(parser) + + if isinstance(parser, IntrospectiveArgumentParser): + return + + classname = "MonkeyPatchedIntrospectiveArgumentParser" + + parser.__class__ = type(classname, (IntrospectiveArgumentParser, parser.__class__), {}) + + for action in parser._actions: + if hasattr(action, "_orig_class"): + continue + + # TODO: accomplish this with super + class IntrospectAction(action.__class__): # type: ignore + def __call__(self, parser, namespace, values, option_string=None): + debug("Action stub called on", self) + debug("\targs:", parser, namespace, values, option_string) + debug("\torig class:", self._orig_class) + debug("\torig callable:", self._orig_callable) + + if not completer.completing: + self._orig_callable(parser, namespace, values, option_string=option_string) + elif issubclass(self._orig_class, argparse._SubParsersAction): + debug("orig class is a subparsers action: patching and running it") + patch(self._name_parser_map[values[0]]) + self._orig_callable(parser, namespace, values, option_string=option_string) + elif self._orig_class in safe_actions: + if not self.option_strings: + completer.visited_positionals.append(self) + + self._orig_callable(parser, namespace, values, option_string=option_string) + + action._orig_class = action.__class__ + action._orig_callable = action.__call__ + action.__class__ = IntrospectAction + + patch(self._parser) + + debug("Active parsers:", self.active_parsers) + debug("Visited positionals:", self.visited_positionals) + + return self.active_parsers + + def _get_subparser_completions(self, parser, cword_prefix): + aliases_by_parser: Dict[argparse.ArgumentParser, List[str]] = {} + for key in parser.choices.keys(): + p = parser.choices[key] + aliases_by_parser.setdefault(p, []).append(key) + + for action in parser._get_subactions(): + for alias in aliases_by_parser[parser.choices[action.dest]]: + if alias.startswith(cword_prefix): + self._display_completions[alias] = action.help or "" + + completions = [subcmd for subcmd in parser.choices.keys() if subcmd.startswith(cword_prefix)] + return completions + + def _include_options(self, action, cword_prefix): + if len(cword_prefix) > 0 or self.always_complete_options is True: + return [opt for opt in action.option_strings if opt.startswith(cword_prefix)] + long_opts = [opt for opt in action.option_strings if len(opt) > 2] + short_opts = [opt for opt in action.option_strings if len(opt) <= 2] + if self.always_complete_options == "long": + return long_opts if long_opts else short_opts + elif self.always_complete_options == "short": + return short_opts if short_opts else long_opts + return [] + + def _get_option_completions(self, parser, cword_prefix): + for action in parser._actions: + if action.option_strings: + for option_string in action.option_strings: + if option_string.startswith(cword_prefix): + self._display_completions[option_string] = action.help or "" + + option_completions = [] + for action in parser._actions: + if not self.print_suppressed: + completer = getattr(action, "completer", None) + if isinstance(completer, SuppressCompleter) and completer.suppress(): + continue + if action.help == argparse.SUPPRESS: + continue + if not self._action_allowed(action, parser): + continue + if not isinstance(action, argparse._SubParsersAction): + option_completions += self._include_options(action, cword_prefix) + return option_completions + + @staticmethod + def _action_allowed(action, parser): + # Logic adapted from take_action in ArgumentParser._parse_known_args + # (members are saved by vendor._argparse.IntrospectiveArgumentParser) + for conflict_action in parser._action_conflicts.get(action, []): + if conflict_action in parser._seen_non_default_actions: + return False + return True + + def _complete_active_option(self, parser, next_positional, cword_prefix, parsed_args, completions): + debug("Active actions (L={l}): {a}".format(l=len(parser.active_actions), a=parser.active_actions)) + + isoptional = cword_prefix and cword_prefix[0] in parser.prefix_chars + optional_prefix = "" + greedy_actions = [x for x in parser.active_actions if action_is_greedy(x, isoptional)] + if greedy_actions: + assert len(greedy_actions) == 1, "expect at most 1 greedy action" + # This means the action will fail to parse if the word under the cursor is not given + # to it, so give it exclusive control over completions (flush previous completions) + debug("Resetting completions because", greedy_actions[0], "must consume the next argument") + self._display_completions = {} + completions = [] + elif isoptional: + if "=" in cword_prefix: + # Special case for when the current word is "--optional=PARTIAL_VALUE". + # The completer runs on PARTIAL_VALUE. The prefix is added back to the completions + # (and chopped back off later in quote_completions() by the COMP_WORDBREAKS logic). + optional_prefix, _, cword_prefix = cword_prefix.partition("=") + else: + # Only run completers if current word does not start with - (is not an optional) + return completions + + complete_remaining_positionals = False + # Use the single greedy action (if there is one) or all active actions. + for active_action in greedy_actions or parser.active_actions: + if not active_action.option_strings: # action is a positional + if action_is_open(active_action): + # Any positional arguments after this may slide down into this action + # if more arguments are added (since the user may not be done yet), + # so it is extremely difficult to tell which completers to run. + # Running all remaining completers will probably show more than the user wants + # but it also guarantees we won't miss anything. + complete_remaining_positionals = True + if not complete_remaining_positionals: + if action_is_satisfied(active_action) and not action_is_open(active_action): + debug("Skipping", active_action) + continue + + debug("Activating completion for", active_action, active_action._orig_class) + # completer = getattr(active_action, "completer", DefaultCompleter()) + completer = getattr(active_action, "completer", None) + + if completer is None: + if active_action.choices is not None and not isinstance(active_action, argparse._SubParsersAction): + completer = ChoicesCompleter(active_action.choices) + elif not isinstance(active_action, argparse._SubParsersAction): + completer = self.default_completer + + if completer: + if isinstance(completer, SuppressCompleter) and completer.suppress(): + continue + + if callable(completer): + completer_output = completer( + prefix=cword_prefix, action=active_action, parser=parser, parsed_args=parsed_args + ) + if isinstance(completer_output, Mapping): + for completion, description in completer_output.items(): + if self.validator(completion, cword_prefix): + completions.append(completion) + self._display_completions[completion] = description + else: + for completion in completer_output: + if self.validator(completion, cword_prefix): + completions.append(completion) + if isinstance(completer, ChoicesCompleter): + self._display_completions[completion] = active_action.help or "" + else: + self._display_completions[completion] = "" + else: + debug("Completer is not callable, trying the readline completer protocol instead") + for i in range(9999): + next_completion = completer.complete(cword_prefix, i) # type: ignore + if next_completion is None: + break + if self.validator(next_completion, cword_prefix): + self._display_completions[next_completion] = "" + completions.append(next_completion) + if optional_prefix: + completions = [optional_prefix + "=" + completion for completion in completions] + debug("Completions:", completions) + return completions + +
+[docs] + def collect_completions( + self, active_parsers: List[argparse.ArgumentParser], parsed_args: argparse.Namespace, cword_prefix: str + ) -> List[str]: + """ + Visits the active parsers and their actions, executes their completers or introspects them to collect their + option strings. Returns the resulting completions as a list of strings. + + This method is exposed for overriding in subclasses; there is no need to use it directly. + """ + completions: List[str] = [] + + debug("all active parsers:", active_parsers) + active_parser = active_parsers[-1] + debug("active_parser:", active_parser) + if self.always_complete_options or (len(cword_prefix) > 0 and cword_prefix[0] in active_parser.prefix_chars): + completions += self._get_option_completions(active_parser, cword_prefix) + debug("optional options:", completions) + + next_positional = self._get_next_positional() + debug("next_positional:", next_positional) + + if isinstance(next_positional, argparse._SubParsersAction): + completions += self._get_subparser_completions(next_positional, cword_prefix) + + completions = self._complete_active_option( + active_parser, next_positional, cword_prefix, parsed_args, completions + ) + debug("active options:", completions) + debug("display completions:", self._display_completions) + + return completions
+ + + def _get_next_positional(self): + """ + Get the next positional action if it exists. + """ + active_parser = self.active_parsers[-1] + last_positional = self.visited_positionals[-1] + + all_positionals = active_parser._get_positional_actions() + if not all_positionals: + return None + + if active_parser == last_positional: + return all_positionals[0] + + i = 0 + for i in range(len(all_positionals)): + if all_positionals[i] == last_positional: + break + + if i + 1 < len(all_positionals): + return all_positionals[i + 1] + + return None + +
+[docs] + def filter_completions(self, completions: List[str]) -> List[str]: + """ + De-duplicates completions and excludes those specified by ``exclude``. + Returns the filtered completions as a list. + + This method is exposed for overriding in subclasses; there is no need to use it directly. + """ + filtered_completions = [] + for completion in completions: + if self.exclude is not None: + if completion in self.exclude: + continue + if completion not in filtered_completions: + filtered_completions.append(completion) + return filtered_completions
+ + +
+[docs] + def quote_completions( + self, completions: List[str], cword_prequote: str, last_wordbreak_pos: Optional[int] + ) -> List[str]: + """ + If the word under the cursor started with a quote (as indicated by a nonempty ``cword_prequote``), escapes + occurrences of that quote character in the completions, and adds the quote to the beginning of each completion. + Otherwise, escapes all characters that bash splits words on (``COMP_WORDBREAKS``), and removes portions of + completions before the first colon if (``COMP_WORDBREAKS``) contains a colon. + + If there is only one completion, and it doesn't end with a **continuation character** (``/``, ``:``, or ``=``), + adds a space after the completion. + + This method is exposed for overriding in subclasses; there is no need to use it directly. + """ + special_chars = "\\" + # If the word under the cursor was quoted, escape the quote char. + # Otherwise, escape all special characters and specially handle all COMP_WORDBREAKS chars. + if cword_prequote == "": + # Bash mangles completions which contain characters in COMP_WORDBREAKS. + # This workaround has the same effect as __ltrim_colon_completions in bash_completion + # (extended to characters other than the colon). + if last_wordbreak_pos: + completions = [c[last_wordbreak_pos + 1 :] for c in completions] + special_chars += "();<>|&!`$* \t\n\"'" + elif cword_prequote == '"': + special_chars += '"`$!' + + if os.environ.get("_ARGCOMPLETE_SHELL") in ("tcsh", "fish"): + # tcsh and fish escapes special characters itself. + special_chars = "" + elif cword_prequote == "'": + # Nothing can be escaped in single quotes, so we need to close + # the string, escape the single quote, then open a new string. + special_chars = "" + completions = [c.replace("'", r"'\''") for c in completions] + + # PowerShell uses ` as escape character. + if os.environ.get("_ARGCOMPLETE_SHELL") == "powershell": + escape_char = '`' + special_chars = special_chars.replace('`', '') + else: + escape_char = "\\" + if os.environ.get("_ARGCOMPLETE_SHELL") == "zsh": + # zsh uses colon as a separator between a completion and its description. + special_chars += ":" + + escaped_completions = [] + for completion in completions: + escaped_completion = completion + for char in special_chars: + escaped_completion = escaped_completion.replace(char, escape_char + char) + escaped_completions.append(escaped_completion) + if completion in self._display_completions: + self._display_completions[escaped_completion] = self._display_completions[completion] + + if self.append_space: + # Similar functionality in bash was previously turned off by supplying the "-o nospace" option to complete. + # Now it is conditionally disabled using "compopt -o nospace" if the match ends in a continuation character. + # This code is retained for environments where this isn't done natively. + continuation_chars = "=/:" + if len(escaped_completions) == 1 and escaped_completions[0][-1] not in continuation_chars: + if cword_prequote == "": + escaped_completions[0] += " " + + return escaped_completions
+ + +
+[docs] + def rl_complete(self, text, state): + """ + Alternate entry point for using the argcomplete completer in a readline-based REPL. See also + `rlcompleter <https://docs.python.org/3/library/rlcompleter.html#completer-objects>`_. + Usage: + + .. code-block:: python + + import argcomplete, argparse, readline + parser = argparse.ArgumentParser() + ... + completer = argcomplete.CompletionFinder(parser) + readline.set_completer_delims("") + readline.set_completer(completer.rl_complete) + readline.parse_and_bind("tab: complete") + result = input("prompt> ") + """ + if state == 0: + cword_prequote, cword_prefix, cword_suffix, comp_words, first_colon_pos = split_line(text) + comp_words.insert(0, sys.argv[0]) + matches = self._get_completions(comp_words, cword_prefix, cword_prequote, first_colon_pos) + self._rl_matches = [text + match[len(cword_prefix) :] for match in matches] + + if state < len(self._rl_matches): + return self._rl_matches[state] + else: + return None
+ + +
+[docs] + def get_display_completions(self): + """ + This function returns a mapping of completions to their help strings for displaying to the user. + """ + return self._display_completions
+
+ + + +
+[docs] +class ExclusiveCompletionFinder(CompletionFinder): + @staticmethod + def _action_allowed(action, parser): + if not CompletionFinder._action_allowed(action, parser): + return False + + append_classes = (argparse._AppendAction, argparse._AppendConstAction) + if action._orig_class in append_classes: + return True + + if action not in parser._seen_non_default_actions: + return True + + return False
+ +
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + + + \ No newline at end of file diff --git a/_modules/argcomplete/io.html b/_modules/argcomplete/io.html new file mode 100644 index 00000000..45a3eb82 --- /dev/null +++ b/_modules/argcomplete/io.html @@ -0,0 +1,270 @@ + + + + + + + + argcomplete.io - argcomplete documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for argcomplete.io

+import contextlib
+import os
+import sys
+
+_DEBUG = "_ARC_DEBUG" in os.environ
+
+debug_stream = sys.stderr
+
+
+def debug(*args):
+    if _DEBUG:
+        print(file=debug_stream, *args)
+
+
+@contextlib.contextmanager
+def mute_stdout():
+    stdout = sys.stdout
+    sys.stdout = open(os.devnull, "w")
+    try:
+        yield
+    finally:
+        sys.stdout = stdout
+
+
+@contextlib.contextmanager
+def mute_stderr():
+    stderr = sys.stderr
+    sys.stderr = open(os.devnull, "w")
+    try:
+        yield
+    finally:
+        sys.stderr.close()
+        sys.stderr = stderr
+
+
+
+[docs] +def warn(*args): + """ + Prints **args** to standard error when running completions. This will interrupt the user's command line interaction; + use it to indicate an error condition that is preventing your completer from working. + """ + print(file=debug_stream) + print(file=debug_stream, *args)
+ +
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + + + \ No newline at end of file diff --git a/_modules/argcomplete/shell_integration.html b/_modules/argcomplete/shell_integration.html new file mode 100644 index 00000000..fce6532e --- /dev/null +++ b/_modules/argcomplete/shell_integration.html @@ -0,0 +1,429 @@ + + + + + + + + argcomplete.shell_integration - argcomplete documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+
+

Source code for argcomplete.shell_integration

+# Copyright 2012-2023, Andrey Kislyuk and argcomplete contributors. Licensed under the terms of the
+# `Apache License, Version 2.0 <http://www.apache.org/licenses/LICENSE-2.0>`_. Distribution of the LICENSE and NOTICE
+# files with source copies of this package and derivative works is **REQUIRED** as specified by the Apache License.
+# See https://github.com/kislyuk/argcomplete for more info.
+
+from shlex import quote
+
+bashcode = r"""#compdef %(executables)s
+# Run something, muting output or redirecting it to the debug stream
+# depending on the value of _ARC_DEBUG.
+# If ARGCOMPLETE_USE_TEMPFILES is set, use tempfiles for IPC.
+__python_argcomplete_run() {
+    if [[ -z "${ARGCOMPLETE_USE_TEMPFILES-}" ]]; then
+        __python_argcomplete_run_inner "$@"
+        return
+    fi
+    local tmpfile="$(mktemp)"
+    _ARGCOMPLETE_STDOUT_FILENAME="$tmpfile" __python_argcomplete_run_inner "$@"
+    local code=$?
+    cat "$tmpfile"
+    rm "$tmpfile"
+    return $code
+}
+
+__python_argcomplete_run_inner() {
+    if [[ -z "${_ARC_DEBUG-}" ]]; then
+        "$@" 8>&1 9>&2 1>/dev/null 2>&1
+    else
+        "$@" 8>&1 9>&2 1>&9 2>&1
+    fi
+}
+
+_python_argcomplete%(function_suffix)s() {
+    local IFS=$'\013'
+    local script="%(argcomplete_script)s"
+    if [[ -n "${ZSH_VERSION-}" ]]; then
+        local completions
+        completions=($(IFS="$IFS" \
+            COMP_LINE="$BUFFER" \
+            COMP_POINT="$CURSOR" \
+            _ARGCOMPLETE=1 \
+            _ARGCOMPLETE_SHELL="zsh" \
+            _ARGCOMPLETE_SUPPRESS_SPACE=1 \
+            __python_argcomplete_run ${script:-${words[1]}}))
+        local nosort=()
+        local nospace=()
+        if is-at-least 5.8; then
+            nosort=(-o nosort)
+        fi
+        if [[ "${completions-}" =~ ([^\\]): && "${match[1]}" =~ [=/:] ]]; then
+            nospace=(-S '')
+        fi
+        _describe "${words[1]}" completions "${nosort[@]}" "${nospace[@]}"
+    else
+        local SUPPRESS_SPACE=0
+        if compopt +o nospace 2> /dev/null; then
+            SUPPRESS_SPACE=1
+        fi
+        COMPREPLY=($(IFS="$IFS" \
+            COMP_LINE="$COMP_LINE" \
+            COMP_POINT="$COMP_POINT" \
+            COMP_TYPE="$COMP_TYPE" \
+            _ARGCOMPLETE_COMP_WORDBREAKS="$COMP_WORDBREAKS" \
+            _ARGCOMPLETE=1 \
+            _ARGCOMPLETE_SHELL="bash" \
+            _ARGCOMPLETE_SUPPRESS_SPACE=$SUPPRESS_SPACE \
+            __python_argcomplete_run ${script:-$1}))
+        if [[ $? != 0 ]]; then
+            unset COMPREPLY
+        elif [[ $SUPPRESS_SPACE == 1 ]] && [[ "${COMPREPLY-}" =~ [=/:]$ ]]; then
+            compopt -o nospace
+        fi
+    fi
+}
+if [[ -z "${ZSH_VERSION-}" ]]; then
+    complete %(complete_opts)s -F _python_argcomplete%(function_suffix)s %(executables)s
+else
+    # When called by the Zsh completion system, this will end with
+    # "loadautofunc" when initially autoloaded and "shfunc" later on, otherwise,
+    # the script was "eval"-ed so use "compdef" to register it with the
+    # completion system
+    autoload is-at-least
+    if [[ $zsh_eval_context == *func ]]; then
+        _python_argcomplete%(function_suffix)s "$@"
+    else
+        compdef _python_argcomplete%(function_suffix)s %(executables)s
+    fi
+fi
+"""
+
+tcshcode = """\
+complete "%(executable)s" 'p@*@`python-argcomplete-tcsh "%(argcomplete_script)s"`@' ;
+"""
+
+fishcode = r"""
+function __fish_%(function_name)s_complete
+    set -x _ARGCOMPLETE 1
+    set -x _ARGCOMPLETE_DFS \t
+    set -x _ARGCOMPLETE_IFS \n
+    set -x _ARGCOMPLETE_SUPPRESS_SPACE 1
+    set -x _ARGCOMPLETE_SHELL fish
+    set -x COMP_LINE (commandline -p)
+    set -x COMP_POINT (string length (commandline -cp))
+    set -x COMP_TYPE
+    if set -q _ARC_DEBUG
+        %(argcomplete_script)s 8>&1 9>&2 1>&9 2>&1
+    else
+        %(argcomplete_script)s 8>&1 9>&2 1>/dev/null 2>&1
+    end
+end
+complete %(completion_arg)s %(executable)s -f -a '(__fish_%(function_name)s_complete)'
+"""
+
+powershell_code = r"""
+Register-ArgumentCompleter -Native -CommandName %(executable)s -ScriptBlock {
+    param($commandName, $wordToComplete, $cursorPosition)
+    $completion_file = New-TemporaryFile
+    $env:ARGCOMPLETE_USE_TEMPFILES = 1
+    $env:_ARGCOMPLETE_STDOUT_FILENAME = $completion_file
+    $env:COMP_LINE = $wordToComplete
+    $env:COMP_POINT = $cursorPosition
+    $env:_ARGCOMPLETE = 1
+    $env:_ARGCOMPLETE_SUPPRESS_SPACE = 0
+    $env:_ARGCOMPLETE_IFS = "`n"
+    $env:_ARGCOMPLETE_SHELL = "powershell"
+    %(argcomplete_script)s 2>&1 | Out-Null
+
+    Get-Content $completion_file | ForEach-Object {
+        [System.Management.Automation.CompletionResult]::new($_, $_, "ParameterValue", $_)
+    }
+    Remove-Item $completion_file, Env:\_ARGCOMPLETE_STDOUT_FILENAME, Env:\ARGCOMPLETE_USE_TEMPFILES, Env:\COMP_LINE, Env:\COMP_POINT, Env:\_ARGCOMPLETE, Env:\_ARGCOMPLETE_SUPPRESS_SPACE, Env:\_ARGCOMPLETE_IFS, Env:\_ARGCOMPLETE_SHELL
+}
+"""  # noqa: E501
+
+shell_codes = {"bash": bashcode, "tcsh": tcshcode, "fish": fishcode, "powershell": powershell_code}
+
+
+
+[docs] +def shellcode(executables, use_defaults=True, shell="bash", complete_arguments=None, argcomplete_script=None): + """ + Provide the shell code required to register a python executable for use with the argcomplete module. + + :param list(str) executables: Executables to be completed (when invoked exactly with this name) + :param bool use_defaults: Whether to fallback to readline's default completion when no matches are generated + (affects bash only) + :param str shell: Name of the shell to output code for + :param complete_arguments: Arguments to call complete with (affects bash only) + :type complete_arguments: list(str) or None + :param argcomplete_script: Script to call complete with, if not the executable to complete. + If supplied, will be used to complete *all* passed executables. + :type argcomplete_script: str or None + """ + + if complete_arguments is None: + complete_options = "-o nospace -o default -o bashdefault" if use_defaults else "-o nospace -o bashdefault" + else: + complete_options = " ".join(complete_arguments) + + if shell == "bash" or shell == "zsh": + quoted_executables = [quote(i) for i in executables] + executables_list = " ".join(quoted_executables) + script = argcomplete_script + if script: + function_suffix = "_" + script + else: + script = "" + function_suffix = "" + code = bashcode % dict( + complete_opts=complete_options, + executables=executables_list, + argcomplete_script=script, + function_suffix=function_suffix, + ) + elif shell == "fish": + code = "" + for executable in executables: + script = argcomplete_script or executable + completion_arg = "--path" if "/" in executable else "--command" # use path for absolute paths + function_name = executable.replace("/", "_") # / not allowed in function name + + code += fishcode % dict( + executable=executable, + argcomplete_script=script, + completion_arg=completion_arg, + function_name=function_name, + ) + elif shell == "powershell": + code = "" + for executable in executables: + script = argcomplete_script or executable + code += powershell_code % dict(executable=executable, argcomplete_script=script) + + else: + code = "" + for executable in executables: + script = argcomplete_script + # If no script was specified, default to the executable being completed. + if not script: + script = executable + code += shell_codes.get(shell, "") % dict(executable=executable, argcomplete_script=script) + + return code
+ +
+
+
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + + + \ No newline at end of file diff --git a/_modules/index.html b/_modules/index.html new file mode 100644 index 00000000..faf1c537 --- /dev/null +++ b/_modules/index.html @@ -0,0 +1,230 @@ + + + + + + + + Overview: module code - argcomplete documentation + + + + + + + + + + + + + + + + + Contents + + + + + + Menu + + + + + + + + Expand + + + + + + Light mode + + + + + + + + + + + + + + Dark mode + + + + + + + Auto light/dark mode + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + + Back to top + +
+
+ +
+ +
+ +
+
+ + +
+
+ + Made with Sphinx and @pradyunsg's + + Furo + +
+
+ +
+
+ +
+
+ +
+
+ + + + + + + \ No newline at end of file diff --git a/_sources/changelog.rst.txt b/_sources/changelog.rst.txt new file mode 100644 index 00000000..26f8d0ec --- /dev/null +++ b/_sources/changelog.rst.txt @@ -0,0 +1,3 @@ +Release Notes +============= +.. include:: ../Changes.rst diff --git a/_sources/index.rst.txt b/_sources/index.rst.txt new file mode 100644 index 00000000..dc72640e --- /dev/null +++ b/_sources/index.rst.txt @@ -0,0 +1,20 @@ +.. include:: ../README.rst + +API documentation +================= + +.. autofunction:: argcomplete.autocomplete + +.. automodule:: argcomplete + :members: + :imported-members: + :special-members: + :exclude-members: __weakref__ + +Change log +========== + +.. toctree:: + :maxdepth: 5 + + changelog diff --git a/_static/basic.css b/_static/basic.css new file mode 100644 index 00000000..30fee9d0 --- /dev/null +++ b/_static/basic.css @@ -0,0 +1,925 @@ +/* + * basic.css + * ~~~~~~~~~ + * + * Sphinx stylesheet -- basic theme. + * + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +/* -- main layout ----------------------------------------------------------- */ + +div.clearer { + clear: both; +} + +div.section::after { + display: block; + content: ''; + clear: left; +} + +/* -- relbar ---------------------------------------------------------------- */ + +div.related { + width: 100%; + font-size: 90%; +} + +div.related h3 { + display: none; +} + +div.related ul { + margin: 0; + padding: 0 0 0 10px; + list-style: none; +} + +div.related li { + display: inline; +} + +div.related li.right { + float: right; + margin-right: 5px; +} + +/* -- sidebar --------------------------------------------------------------- */ + +div.sphinxsidebarwrapper { + padding: 10px 5px 0 10px; +} + +div.sphinxsidebar { + float: left; + width: 230px; + margin-left: -100%; + font-size: 90%; + word-wrap: break-word; + overflow-wrap : break-word; +} + +div.sphinxsidebar ul { + list-style: none; +} + +div.sphinxsidebar ul ul, +div.sphinxsidebar ul.want-points { + margin-left: 20px; + list-style: square; +} + +div.sphinxsidebar ul ul { + margin-top: 0; + margin-bottom: 0; +} + +div.sphinxsidebar form { + margin-top: 10px; +} + +div.sphinxsidebar input { + border: 1px solid #98dbcc; + font-family: sans-serif; + font-size: 1em; +} + +div.sphinxsidebar #searchbox form.search { + overflow: hidden; +} + +div.sphinxsidebar #searchbox input[type="text"] { + float: left; + width: 80%; + padding: 0.25em; + box-sizing: border-box; +} + +div.sphinxsidebar #searchbox input[type="submit"] { + float: left; + width: 20%; + border-left: none; + padding: 0.25em; + box-sizing: border-box; +} + + +img { + border: 0; + max-width: 100%; +} + +/* -- search page ----------------------------------------------------------- */ + +ul.search { + margin: 10px 0 0 20px; + padding: 0; +} + +ul.search li { + padding: 5px 0 5px 20px; + background-image: url(file.png); + background-repeat: no-repeat; + background-position: 0 7px; +} + +ul.search li a { + font-weight: bold; +} + +ul.search li p.context { + color: #888; + margin: 2px 0 0 30px; + text-align: left; +} + +ul.keywordmatches li.goodmatch a { + font-weight: bold; +} + +/* -- index page ------------------------------------------------------------ */ + +table.contentstable { + width: 90%; + margin-left: auto; + margin-right: auto; +} + +table.contentstable p.biglink { + line-height: 150%; +} + +a.biglink { + font-size: 1.3em; +} + +span.linkdescr { + font-style: italic; + padding-top: 5px; + font-size: 90%; +} + +/* -- general index --------------------------------------------------------- */ + +table.indextable { + width: 100%; +} + +table.indextable td { + text-align: left; + vertical-align: top; +} + +table.indextable ul { + margin-top: 0; + margin-bottom: 0; + list-style-type: none; +} + +table.indextable > tbody > tr > td > ul { + padding-left: 0em; +} + +table.indextable tr.pcap { + height: 10px; +} + +table.indextable tr.cap { + margin-top: 10px; + background-color: #f2f2f2; +} + +img.toggler { + margin-right: 3px; + margin-top: 3px; + cursor: pointer; +} + +div.modindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +div.genindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +/* -- domain module index --------------------------------------------------- */ + +table.modindextable td { + padding: 2px; + border-collapse: collapse; +} + +/* -- general body styles --------------------------------------------------- */ + +div.body { + min-width: 360px; + max-width: 800px; +} + +div.body p, div.body dd, div.body li, div.body blockquote { + -moz-hyphens: auto; + -ms-hyphens: auto; + -webkit-hyphens: auto; + hyphens: auto; +} + +a.headerlink { + visibility: hidden; +} + +a:visited { + color: #551A8B; +} + +h1:hover > a.headerlink, +h2:hover > a.headerlink, +h3:hover > a.headerlink, +h4:hover > a.headerlink, +h5:hover > a.headerlink, +h6:hover > a.headerlink, +dt:hover > a.headerlink, +caption:hover > a.headerlink, +p.caption:hover > a.headerlink, +div.code-block-caption:hover > a.headerlink { + visibility: visible; +} + +div.body p.caption { + text-align: inherit; +} + +div.body td { + text-align: left; +} + +.first { + margin-top: 0 !important; +} + +p.rubric { + margin-top: 30px; + font-weight: bold; +} + +img.align-left, figure.align-left, .figure.align-left, object.align-left { + clear: left; + float: left; + margin-right: 1em; +} + +img.align-right, figure.align-right, .figure.align-right, object.align-right { + clear: right; + float: right; + margin-left: 1em; +} + +img.align-center, figure.align-center, .figure.align-center, object.align-center { + display: block; + margin-left: auto; + margin-right: auto; +} + +img.align-default, figure.align-default, .figure.align-default { + display: block; + margin-left: auto; + margin-right: auto; +} + +.align-left { + text-align: left; +} + +.align-center { + text-align: center; +} + +.align-default { + text-align: center; +} + +.align-right { + text-align: right; +} + +/* -- sidebars -------------------------------------------------------------- */ + +div.sidebar, +aside.sidebar { + margin: 0 0 0.5em 1em; + border: 1px solid #ddb; + padding: 7px; + background-color: #ffe; + width: 40%; + float: right; + clear: right; + overflow-x: auto; +} + +p.sidebar-title { + font-weight: bold; +} + +nav.contents, +aside.topic, +div.admonition, div.topic, blockquote { + clear: left; +} + +/* -- topics ---------------------------------------------------------------- */ + +nav.contents, +aside.topic, +div.topic { + border: 1px solid #ccc; + padding: 7px; + margin: 10px 0 10px 0; +} + +p.topic-title { + font-size: 1.1em; + font-weight: bold; + margin-top: 10px; +} + +/* -- admonitions ----------------------------------------------------------- */ + +div.admonition { + margin-top: 10px; + margin-bottom: 10px; + padding: 7px; +} + +div.admonition dt { + font-weight: bold; +} + +p.admonition-title { + margin: 0px 10px 5px 0px; + font-weight: bold; +} + +div.body p.centered { + text-align: center; + margin-top: 25px; +} + +/* -- content of sidebars/topics/admonitions -------------------------------- */ + +div.sidebar > :last-child, +aside.sidebar > :last-child, +nav.contents > :last-child, +aside.topic > :last-child, +div.topic > :last-child, +div.admonition > :last-child { + margin-bottom: 0; +} + +div.sidebar::after, +aside.sidebar::after, +nav.contents::after, +aside.topic::after, +div.topic::after, +div.admonition::after, +blockquote::after { + display: block; + content: ''; + clear: both; +} + +/* -- tables ---------------------------------------------------------------- */ + +table.docutils { + margin-top: 10px; + margin-bottom: 10px; + border: 0; + border-collapse: collapse; +} + +table.align-center { + margin-left: auto; + margin-right: auto; +} + +table.align-default { + margin-left: auto; + margin-right: auto; +} + +table caption span.caption-number { + font-style: italic; +} + +table caption span.caption-text { +} + +table.docutils td, table.docutils th { + padding: 1px 8px 1px 5px; + border-top: 0; + border-left: 0; + border-right: 0; + border-bottom: 1px solid #aaa; +} + +th { + text-align: left; + padding-right: 5px; +} + +table.citation { + border-left: solid 1px gray; + margin-left: 1px; +} + +table.citation td { + border-bottom: none; +} + +th > :first-child, +td > :first-child { + margin-top: 0px; +} + +th > :last-child, +td > :last-child { + margin-bottom: 0px; +} + +/* -- figures --------------------------------------------------------------- */ + +div.figure, figure { + margin: 0.5em; + padding: 0.5em; +} + +div.figure p.caption, figcaption { + padding: 0.3em; +} + +div.figure p.caption span.caption-number, +figcaption span.caption-number { + font-style: italic; +} + +div.figure p.caption span.caption-text, +figcaption span.caption-text { +} + +/* -- field list styles ----------------------------------------------------- */ + +table.field-list td, table.field-list th { + border: 0 !important; +} + +.field-list ul { + margin: 0; + padding-left: 1em; +} + +.field-list p { + margin: 0; +} + +.field-name { + -moz-hyphens: manual; + -ms-hyphens: manual; + -webkit-hyphens: manual; + hyphens: manual; +} + +/* -- hlist styles ---------------------------------------------------------- */ + +table.hlist { + margin: 1em 0; +} + +table.hlist td { + vertical-align: top; +} + +/* -- object description styles --------------------------------------------- */ + +.sig { + font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; +} + +.sig-name, code.descname { + background-color: transparent; + font-weight: bold; +} + +.sig-name { + font-size: 1.1em; +} + +code.descname { + font-size: 1.2em; +} + +.sig-prename, code.descclassname { + background-color: transparent; +} + +.optional { + font-size: 1.3em; +} + +.sig-paren { + font-size: larger; +} + +.sig-param.n { + font-style: italic; +} + +/* C++ specific styling */ + +.sig-inline.c-texpr, +.sig-inline.cpp-texpr { + font-family: unset; +} + +.sig.c .k, .sig.c .kt, +.sig.cpp .k, .sig.cpp .kt { + color: #0033B3; +} + +.sig.c .m, +.sig.cpp .m { + color: #1750EB; +} + +.sig.c .s, .sig.c .sc, +.sig.cpp .s, .sig.cpp .sc { + color: #067D17; +} + + +/* -- other body styles ----------------------------------------------------- */ + +ol.arabic { + list-style: decimal; +} + +ol.loweralpha { + list-style: lower-alpha; +} + +ol.upperalpha { + list-style: upper-alpha; +} + +ol.lowerroman { + list-style: lower-roman; +} + +ol.upperroman { + list-style: upper-roman; +} + +:not(li) > ol > li:first-child > :first-child, +:not(li) > ul > li:first-child > :first-child { + margin-top: 0px; +} + +:not(li) > ol > li:last-child > :last-child, +:not(li) > ul > li:last-child > :last-child { + margin-bottom: 0px; +} + +ol.simple ol p, +ol.simple ul p, +ul.simple ol p, +ul.simple ul p { + margin-top: 0; +} + +ol.simple > li:not(:first-child) > p, +ul.simple > li:not(:first-child) > p { + margin-top: 0; +} + +ol.simple p, +ul.simple p { + margin-bottom: 0; +} + +aside.footnote > span, +div.citation > span { + float: left; +} +aside.footnote > span:last-of-type, +div.citation > span:last-of-type { + padding-right: 0.5em; +} +aside.footnote > p { + margin-left: 2em; +} +div.citation > p { + margin-left: 4em; +} +aside.footnote > p:last-of-type, +div.citation > p:last-of-type { + margin-bottom: 0em; +} +aside.footnote > p:last-of-type:after, +div.citation > p:last-of-type:after { + content: ""; + clear: both; +} + +dl.field-list { + display: grid; + grid-template-columns: fit-content(30%) auto; +} + +dl.field-list > dt { + font-weight: bold; + word-break: break-word; + padding-left: 0.5em; + padding-right: 5px; +} + +dl.field-list > dd { + padding-left: 0.5em; + margin-top: 0em; + margin-left: 0em; + margin-bottom: 0em; +} + +dl { + margin-bottom: 15px; +} + +dd > :first-child { + margin-top: 0px; +} + +dd ul, dd table { + margin-bottom: 10px; +} + +dd { + margin-top: 3px; + margin-bottom: 10px; + margin-left: 30px; +} + +.sig dd { + margin-top: 0px; + margin-bottom: 0px; +} + +.sig dl { + margin-top: 0px; + margin-bottom: 0px; +} + +dl > dd:last-child, +dl > dd:last-child > :last-child { + margin-bottom: 0; +} + +dt:target, span.highlighted { + background-color: #fbe54e; +} + +rect.highlighted { + fill: #fbe54e; +} + +dl.glossary dt { + font-weight: bold; + font-size: 1.1em; +} + +.versionmodified { + font-style: italic; +} + +.system-message { + background-color: #fda; + padding: 5px; + border: 3px solid red; +} + +.footnote:target { + background-color: #ffa; +} + +.line-block { + display: block; + margin-top: 1em; + margin-bottom: 1em; +} + +.line-block .line-block { + margin-top: 0; + margin-bottom: 0; + margin-left: 1.5em; +} + +.guilabel, .menuselection { + font-family: sans-serif; +} + +.accelerator { + text-decoration: underline; +} + +.classifier { + font-style: oblique; +} + +.classifier:before { + font-style: normal; + margin: 0 0.5em; + content: ":"; + display: inline-block; +} + +abbr, acronym { + border-bottom: dotted 1px; + cursor: help; +} + +.translated { + background-color: rgba(207, 255, 207, 0.2) +} + +.untranslated { + background-color: rgba(255, 207, 207, 0.2) +} + +/* -- code displays --------------------------------------------------------- */ + +pre { + overflow: auto; + overflow-y: hidden; /* fixes display issues on Chrome browsers */ +} + +pre, div[class*="highlight-"] { + clear: both; +} + +span.pre { + -moz-hyphens: none; + -ms-hyphens: none; + -webkit-hyphens: none; + hyphens: none; + white-space: nowrap; +} + +div[class*="highlight-"] { + margin: 1em 0; +} + +td.linenos pre { + border: 0; + background-color: transparent; + color: #aaa; +} + +table.highlighttable { + display: block; +} + +table.highlighttable tbody { + display: block; +} + +table.highlighttable tr { + display: flex; +} + +table.highlighttable td { + margin: 0; + padding: 0; +} + +table.highlighttable td.linenos { + padding-right: 0.5em; +} + +table.highlighttable td.code { + flex: 1; + overflow: hidden; +} + +.highlight .hll { + display: block; +} + +div.highlight pre, +table.highlighttable pre { + margin: 0; +} + +div.code-block-caption + div { + margin-top: 0; +} + +div.code-block-caption { + margin-top: 1em; + padding: 2px 5px; + font-size: small; +} + +div.code-block-caption code { + background-color: transparent; +} + +table.highlighttable td.linenos, +span.linenos, +div.highlight span.gp { /* gp: Generic.Prompt */ + user-select: none; + -webkit-user-select: text; /* Safari fallback only */ + -webkit-user-select: none; /* Chrome/Safari */ + -moz-user-select: none; /* Firefox */ + -ms-user-select: none; /* IE10+ */ +} + +div.code-block-caption span.caption-number { + padding: 0.1em 0.3em; + font-style: italic; +} + +div.code-block-caption span.caption-text { +} + +div.literal-block-wrapper { + margin: 1em 0; +} + +code.xref, a code { + background-color: transparent; + font-weight: bold; +} + +h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { + background-color: transparent; +} + +.viewcode-link { + float: right; +} + +.viewcode-back { + float: right; + font-family: sans-serif; +} + +div.viewcode-block:target { + margin: -1px -10px; + padding: 0 10px; +} + +/* -- math display ---------------------------------------------------------- */ + +img.math { + vertical-align: middle; +} + +div.body div.math p { + text-align: center; +} + +span.eqno { + float: right; +} + +span.eqno a.headerlink { + position: absolute; + z-index: 1; +} + +div.math:hover a.headerlink { + visibility: visible; +} + +/* -- printout stylesheet --------------------------------------------------- */ + +@media print { + div.document, + div.documentwrapper, + div.bodywrapper { + margin: 0 !important; + width: 100%; + } + + div.sphinxsidebar, + div.related, + div.footer, + #top-link { + display: none; + } +} \ No newline at end of file diff --git a/_static/check-solid.svg b/_static/check-solid.svg new file mode 100644 index 00000000..92fad4b5 --- /dev/null +++ b/_static/check-solid.svg @@ -0,0 +1,4 @@ + + + + diff --git a/_static/clipboard.min.js b/_static/clipboard.min.js new file mode 100644 index 00000000..54b3c463 --- /dev/null +++ b/_static/clipboard.min.js @@ -0,0 +1,7 @@ +/*! + * clipboard.js v2.0.8 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return n={686:function(t,e,n){"use strict";n.d(e,{default:function(){return o}});var e=n(279),i=n.n(e),e=n(370),u=n.n(e),e=n(817),c=n.n(e);function a(t){try{return document.execCommand(t)}catch(t){return}}var f=function(t){t=c()(t);return a("cut"),t};var l=function(t){var e,n,o,r=1 + + + + diff --git a/_static/copybutton.css b/_static/copybutton.css new file mode 100644 index 00000000..f1916ec7 --- /dev/null +++ b/_static/copybutton.css @@ -0,0 +1,94 @@ +/* Copy buttons */ +button.copybtn { + position: absolute; + display: flex; + top: .3em; + right: .3em; + width: 1.7em; + height: 1.7em; + opacity: 0; + transition: opacity 0.3s, border .3s, background-color .3s; + user-select: none; + padding: 0; + border: none; + outline: none; + border-radius: 0.4em; + /* The colors that GitHub uses */ + border: #1b1f2426 1px solid; + background-color: #f6f8fa; + color: #57606a; +} + +button.copybtn.success { + border-color: #22863a; + color: #22863a; +} + +button.copybtn svg { + stroke: currentColor; + width: 1.5em; + height: 1.5em; + padding: 0.1em; +} + +div.highlight { + position: relative; +} + +/* Show the copybutton */ +.highlight:hover button.copybtn, button.copybtn.success { + opacity: 1; +} + +.highlight button.copybtn:hover { + background-color: rgb(235, 235, 235); +} + +.highlight button.copybtn:active { + background-color: rgb(187, 187, 187); +} + +/** + * A minimal CSS-only tooltip copied from: + * https://codepen.io/mildrenben/pen/rVBrpK + * + * To use, write HTML like the following: + * + *

Short

+ */ + .o-tooltip--left { + position: relative; + } + + .o-tooltip--left:after { + opacity: 0; + visibility: hidden; + position: absolute; + content: attr(data-tooltip); + padding: .2em; + font-size: .8em; + left: -.2em; + background: grey; + color: white; + white-space: nowrap; + z-index: 2; + border-radius: 2px; + transform: translateX(-102%) translateY(0); + transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1); +} + +.o-tooltip--left:hover:after { + display: block; + opacity: 1; + visibility: visible; + transform: translateX(-100%) translateY(0); + transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1); + transition-delay: .5s; +} + +/* By default the copy button shouldn't show up when printing a page */ +@media print { + button.copybtn { + display: none; + } +} diff --git a/_static/copybutton.js b/_static/copybutton.js new file mode 100644 index 00000000..2ea7ff3e --- /dev/null +++ b/_static/copybutton.js @@ -0,0 +1,248 @@ +// Localization support +const messages = { + 'en': { + 'copy': 'Copy', + 'copy_to_clipboard': 'Copy to clipboard', + 'copy_success': 'Copied!', + 'copy_failure': 'Failed to copy', + }, + 'es' : { + 'copy': 'Copiar', + 'copy_to_clipboard': 'Copiar al portapapeles', + 'copy_success': '¡Copiado!', + 'copy_failure': 'Error al copiar', + }, + 'de' : { + 'copy': 'Kopieren', + 'copy_to_clipboard': 'In die Zwischenablage kopieren', + 'copy_success': 'Kopiert!', + 'copy_failure': 'Fehler beim Kopieren', + }, + 'fr' : { + 'copy': 'Copier', + 'copy_to_clipboard': 'Copier dans le presse-papier', + 'copy_success': 'Copié !', + 'copy_failure': 'Échec de la copie', + }, + 'ru': { + 'copy': 'Скопировать', + 'copy_to_clipboard': 'Скопировать в буфер', + 'copy_success': 'Скопировано!', + 'copy_failure': 'Не удалось скопировать', + }, + 'zh-CN': { + 'copy': '复制', + 'copy_to_clipboard': '复制到剪贴板', + 'copy_success': '复制成功!', + 'copy_failure': '复制失败', + }, + 'it' : { + 'copy': 'Copiare', + 'copy_to_clipboard': 'Copiato negli appunti', + 'copy_success': 'Copiato!', + 'copy_failure': 'Errore durante la copia', + } +} + +let locale = 'en' +if( document.documentElement.lang !== undefined + && messages[document.documentElement.lang] !== undefined ) { + locale = document.documentElement.lang +} + +let doc_url_root = DOCUMENTATION_OPTIONS.URL_ROOT; +if (doc_url_root == '#') { + doc_url_root = ''; +} + +/** + * SVG files for our copy buttons + */ +let iconCheck = ` + ${messages[locale]['copy_success']} + + +` + +// If the user specified their own SVG use that, otherwise use the default +let iconCopy = ``; +if (!iconCopy) { + iconCopy = ` + ${messages[locale]['copy_to_clipboard']} + + + +` +} + +/** + * Set up copy/paste for code blocks + */ + +const runWhenDOMLoaded = cb => { + if (document.readyState != 'loading') { + cb() + } else if (document.addEventListener) { + document.addEventListener('DOMContentLoaded', cb) + } else { + document.attachEvent('onreadystatechange', function() { + if (document.readyState == 'complete') cb() + }) + } +} + +const codeCellId = index => `codecell${index}` + +// Clears selected text since ClipboardJS will select the text when copying +const clearSelection = () => { + if (window.getSelection) { + window.getSelection().removeAllRanges() + } else if (document.selection) { + document.selection.empty() + } +} + +// Changes tooltip text for a moment, then changes it back +// We want the timeout of our `success` class to be a bit shorter than the +// tooltip and icon change, so that we can hide the icon before changing back. +var timeoutIcon = 2000; +var timeoutSuccessClass = 1500; + +const temporarilyChangeTooltip = (el, oldText, newText) => { + el.setAttribute('data-tooltip', newText) + el.classList.add('success') + // Remove success a little bit sooner than we change the tooltip + // So that we can use CSS to hide the copybutton first + setTimeout(() => el.classList.remove('success'), timeoutSuccessClass) + setTimeout(() => el.setAttribute('data-tooltip', oldText), timeoutIcon) +} + +// Changes the copy button icon for two seconds, then changes it back +const temporarilyChangeIcon = (el) => { + el.innerHTML = iconCheck; + setTimeout(() => {el.innerHTML = iconCopy}, timeoutIcon) +} + +const addCopyButtonToCodeCells = () => { + // If ClipboardJS hasn't loaded, wait a bit and try again. This + // happens because we load ClipboardJS asynchronously. + if (window.ClipboardJS === undefined) { + setTimeout(addCopyButtonToCodeCells, 250) + return + } + + // Add copybuttons to all of our code cells + const COPYBUTTON_SELECTOR = 'div.highlight pre'; + const codeCells = document.querySelectorAll(COPYBUTTON_SELECTOR) + codeCells.forEach((codeCell, index) => { + const id = codeCellId(index) + codeCell.setAttribute('id', id) + + const clipboardButton = id => + `` + codeCell.insertAdjacentHTML('afterend', clipboardButton(id)) + }) + +function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string +} + +/** + * Removes excluded text from a Node. + * + * @param {Node} target Node to filter. + * @param {string} exclude CSS selector of nodes to exclude. + * @returns {DOMString} Text from `target` with text removed. + */ +function filterText(target, exclude) { + const clone = target.cloneNode(true); // clone as to not modify the live DOM + if (exclude) { + // remove excluded nodes + clone.querySelectorAll(exclude).forEach(node => node.remove()); + } + return clone.innerText; +} + +// Callback when a copy button is clicked. Will be passed the node that was clicked +// should then grab the text and replace pieces of text that shouldn't be used in output +function formatCopyText(textContent, copybuttonPromptText, isRegexp = false, onlyCopyPromptLines = true, removePrompts = true, copyEmptyLines = true, lineContinuationChar = "", hereDocDelim = "") { + var regexp; + var match; + + // Do we check for line continuation characters and "HERE-documents"? + var useLineCont = !!lineContinuationChar + var useHereDoc = !!hereDocDelim + + // create regexp to capture prompt and remaining line + if (isRegexp) { + regexp = new RegExp('^(' + copybuttonPromptText + ')(.*)') + } else { + regexp = new RegExp('^(' + escapeRegExp(copybuttonPromptText) + ')(.*)') + } + + const outputLines = []; + var promptFound = false; + var gotLineCont = false; + var gotHereDoc = false; + const lineGotPrompt = []; + for (const line of textContent.split('\n')) { + match = line.match(regexp) + if (match || gotLineCont || gotHereDoc) { + promptFound = regexp.test(line) + lineGotPrompt.push(promptFound) + if (removePrompts && promptFound) { + outputLines.push(match[2]) + } else { + outputLines.push(line) + } + gotLineCont = line.endsWith(lineContinuationChar) & useLineCont + if (line.includes(hereDocDelim) & useHereDoc) + gotHereDoc = !gotHereDoc + } else if (!onlyCopyPromptLines) { + outputLines.push(line) + } else if (copyEmptyLines && line.trim() === '') { + outputLines.push(line) + } + } + + // If no lines with the prompt were found then just use original lines + if (lineGotPrompt.some(v => v === true)) { + textContent = outputLines.join('\n'); + } + + // Remove a trailing newline to avoid auto-running when pasting + if (textContent.endsWith("\n")) { + textContent = textContent.slice(0, -1) + } + return textContent +} + + +var copyTargetText = (trigger) => { + var target = document.querySelector(trigger.attributes['data-clipboard-target'].value); + + // get filtered text + let exclude = '.linenos'; + + let text = filterText(target, exclude); + return formatCopyText(text, '', false, true, true, true, '', '') +} + + // Initialize with a callback so we can modify the text before copy + const clipboard = new ClipboardJS('.copybtn', {text: copyTargetText}) + + // Update UI with error/success messages + clipboard.on('success', event => { + clearSelection() + temporarilyChangeTooltip(event.trigger, messages[locale]['copy'], messages[locale]['copy_success']) + temporarilyChangeIcon(event.trigger) + }) + + clipboard.on('error', event => { + temporarilyChangeTooltip(event.trigger, messages[locale]['copy'], messages[locale]['copy_failure']) + }) +} + +runWhenDOMLoaded(addCopyButtonToCodeCells) \ No newline at end of file diff --git a/_static/copybutton_funcs.js b/_static/copybutton_funcs.js new file mode 100644 index 00000000..dbe1aaad --- /dev/null +++ b/_static/copybutton_funcs.js @@ -0,0 +1,73 @@ +function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string +} + +/** + * Removes excluded text from a Node. + * + * @param {Node} target Node to filter. + * @param {string} exclude CSS selector of nodes to exclude. + * @returns {DOMString} Text from `target` with text removed. + */ +export function filterText(target, exclude) { + const clone = target.cloneNode(true); // clone as to not modify the live DOM + if (exclude) { + // remove excluded nodes + clone.querySelectorAll(exclude).forEach(node => node.remove()); + } + return clone.innerText; +} + +// Callback when a copy button is clicked. Will be passed the node that was clicked +// should then grab the text and replace pieces of text that shouldn't be used in output +export function formatCopyText(textContent, copybuttonPromptText, isRegexp = false, onlyCopyPromptLines = true, removePrompts = true, copyEmptyLines = true, lineContinuationChar = "", hereDocDelim = "") { + var regexp; + var match; + + // Do we check for line continuation characters and "HERE-documents"? + var useLineCont = !!lineContinuationChar + var useHereDoc = !!hereDocDelim + + // create regexp to capture prompt and remaining line + if (isRegexp) { + regexp = new RegExp('^(' + copybuttonPromptText + ')(.*)') + } else { + regexp = new RegExp('^(' + escapeRegExp(copybuttonPromptText) + ')(.*)') + } + + const outputLines = []; + var promptFound = false; + var gotLineCont = false; + var gotHereDoc = false; + const lineGotPrompt = []; + for (const line of textContent.split('\n')) { + match = line.match(regexp) + if (match || gotLineCont || gotHereDoc) { + promptFound = regexp.test(line) + lineGotPrompt.push(promptFound) + if (removePrompts && promptFound) { + outputLines.push(match[2]) + } else { + outputLines.push(line) + } + gotLineCont = line.endsWith(lineContinuationChar) & useLineCont + if (line.includes(hereDocDelim) & useHereDoc) + gotHereDoc = !gotHereDoc + } else if (!onlyCopyPromptLines) { + outputLines.push(line) + } else if (copyEmptyLines && line.trim() === '') { + outputLines.push(line) + } + } + + // If no lines with the prompt were found then just use original lines + if (lineGotPrompt.some(v => v === true)) { + textContent = outputLines.join('\n'); + } + + // Remove a trailing newline to avoid auto-running when pasting + if (textContent.endsWith("\n")) { + textContent = textContent.slice(0, -1) + } + return textContent +} diff --git a/_static/debug.css b/_static/debug.css new file mode 100644 index 00000000..74d4aec3 --- /dev/null +++ b/_static/debug.css @@ -0,0 +1,69 @@ +/* + This CSS file should be overridden by the theme authors. It's + meant for debugging and developing the skeleton that this theme provides. +*/ +body { + font-family: -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, + "Apple Color Emoji", "Segoe UI Emoji"; + background: lavender; +} +.sb-announcement { + background: rgb(131, 131, 131); +} +.sb-announcement__inner { + background: black; + color: white; +} +.sb-header { + background: lightskyblue; +} +.sb-header__inner { + background: royalblue; + color: white; +} +.sb-header-secondary { + background: lightcyan; +} +.sb-header-secondary__inner { + background: cornflowerblue; + color: white; +} +.sb-sidebar-primary { + background: lightgreen; +} +.sb-main { + background: blanchedalmond; +} +.sb-main__inner { + background: antiquewhite; +} +.sb-header-article { + background: lightsteelblue; +} +.sb-article-container { + background: snow; +} +.sb-article-main { + background: white; +} +.sb-footer-article { + background: lightpink; +} +.sb-sidebar-secondary { + background: lightgoldenrodyellow; +} +.sb-footer-content { + background: plum; +} +.sb-footer-content__inner { + background: palevioletred; +} +.sb-footer { + background: pink; +} +.sb-footer__inner { + background: salmon; +} +.sb-article { + background: white; +} diff --git a/_static/doctools.js b/_static/doctools.js new file mode 100644 index 00000000..d06a71d7 --- /dev/null +++ b/_static/doctools.js @@ -0,0 +1,156 @@ +/* + * doctools.js + * ~~~~~~~~~~~ + * + * Base JavaScript utilities for all Sphinx HTML documentation. + * + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ +"use strict"; + +const BLACKLISTED_KEY_CONTROL_ELEMENTS = new Set([ + "TEXTAREA", + "INPUT", + "SELECT", + "BUTTON", +]); + +const _ready = (callback) => { + if (document.readyState !== "loading") { + callback(); + } else { + document.addEventListener("DOMContentLoaded", callback); + } +}; + +/** + * Small JavaScript module for the documentation. + */ +const Documentation = { + init: () => { + Documentation.initDomainIndexTable(); + Documentation.initOnKeyListeners(); + }, + + /** + * i18n support + */ + TRANSLATIONS: {}, + PLURAL_EXPR: (n) => (n === 1 ? 0 : 1), + LOCALE: "unknown", + + // gettext and ngettext don't access this so that the functions + // can safely bound to a different name (_ = Documentation.gettext) + gettext: (string) => { + const translated = Documentation.TRANSLATIONS[string]; + switch (typeof translated) { + case "undefined": + return string; // no translation + case "string": + return translated; // translation exists + default: + return translated[0]; // (singular, plural) translation tuple exists + } + }, + + ngettext: (singular, plural, n) => { + const translated = Documentation.TRANSLATIONS[singular]; + if (typeof translated !== "undefined") + return translated[Documentation.PLURAL_EXPR(n)]; + return n === 1 ? singular : plural; + }, + + addTranslations: (catalog) => { + Object.assign(Documentation.TRANSLATIONS, catalog.messages); + Documentation.PLURAL_EXPR = new Function( + "n", + `return (${catalog.plural_expr})` + ); + Documentation.LOCALE = catalog.locale; + }, + + /** + * helper function to focus on search bar + */ + focusSearchBar: () => { + document.querySelectorAll("input[name=q]")[0]?.focus(); + }, + + /** + * Initialise the domain index toggle buttons + */ + initDomainIndexTable: () => { + const toggler = (el) => { + const idNumber = el.id.substr(7); + const toggledRows = document.querySelectorAll(`tr.cg-${idNumber}`); + if (el.src.substr(-9) === "minus.png") { + el.src = `${el.src.substr(0, el.src.length - 9)}plus.png`; + toggledRows.forEach((el) => (el.style.display = "none")); + } else { + el.src = `${el.src.substr(0, el.src.length - 8)}minus.png`; + toggledRows.forEach((el) => (el.style.display = "")); + } + }; + + const togglerElements = document.querySelectorAll("img.toggler"); + togglerElements.forEach((el) => + el.addEventListener("click", (event) => toggler(event.currentTarget)) + ); + togglerElements.forEach((el) => (el.style.display = "")); + if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) togglerElements.forEach(toggler); + }, + + initOnKeyListeners: () => { + // only install a listener if it is really needed + if ( + !DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS && + !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.altKey || event.ctrlKey || event.metaKey) return; + + if (!event.shiftKey) { + switch (event.key) { + case "ArrowLeft": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const prevLink = document.querySelector('link[rel="prev"]'); + if (prevLink && prevLink.href) { + window.location.href = prevLink.href; + event.preventDefault(); + } + break; + case "ArrowRight": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const nextLink = document.querySelector('link[rel="next"]'); + if (nextLink && nextLink.href) { + window.location.href = nextLink.href; + event.preventDefault(); + } + break; + } + } + + // some keyboard layouts may need Shift to get / + switch (event.key) { + case "/": + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break; + Documentation.focusSearchBar(); + event.preventDefault(); + } + }); + }, +}; + +// quick alias for translations +const _ = Documentation.gettext; + +_ready(Documentation.init); diff --git a/_static/documentation_options.js b/_static/documentation_options.js new file mode 100644 index 00000000..7e4c114f --- /dev/null +++ b/_static/documentation_options.js @@ -0,0 +1,13 @@ +const DOCUMENTATION_OPTIONS = { + VERSION: '', + LANGUAGE: 'en', + COLLAPSE_INDEX: false, + BUILDER: 'html', + FILE_SUFFIX: '.html', + LINK_SUFFIX: '.html', + HAS_SOURCE: true, + SOURCELINK_SUFFIX: '.txt', + NAVIGATION_WITH_KEYS: false, + SHOW_SEARCH_SUMMARY: true, + ENABLE_SEARCH_SHORTCUTS: true, +}; \ No newline at end of file diff --git a/_static/file.png b/_static/file.png new file mode 100644 index 0000000000000000000000000000000000000000..a858a410e4faa62ce324d814e4b816fff83a6fb3 GIT binary patch literal 286 zcmV+(0pb3MP)s`hMrGg#P~ix$^RISR_I47Y|r1 z_CyJOe}D1){SET-^Amu_i71Lt6eYfZjRyw@I6OQAIXXHDfiX^GbOlHe=Ae4>0m)d(f|Me07*qoM6N<$f}vM^LjV8( literal 0 HcmV?d00001 diff --git a/_static/language_data.js b/_static/language_data.js new file mode 100644 index 00000000..250f5665 --- /dev/null +++ b/_static/language_data.js @@ -0,0 +1,199 @@ +/* + * language_data.js + * ~~~~~~~~~~~~~~~~ + * + * This script contains the language-specific data used by searchtools.js, + * namely the list of stopwords, stemmer, scorer and splitter. + * + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +var stopwords = ["a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "near", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"]; + + +/* Non-minified version is copied as a separate JS file, is available */ + +/** + * Porter Stemmer + */ +var Stemmer = function() { + + var step2list = { + ational: 'ate', + tional: 'tion', + enci: 'ence', + anci: 'ance', + izer: 'ize', + bli: 'ble', + alli: 'al', + entli: 'ent', + eli: 'e', + ousli: 'ous', + ization: 'ize', + ation: 'ate', + ator: 'ate', + alism: 'al', + iveness: 'ive', + fulness: 'ful', + ousness: 'ous', + aliti: 'al', + iviti: 'ive', + biliti: 'ble', + logi: 'log' + }; + + var step3list = { + icate: 'ic', + ative: '', + alize: 'al', + iciti: 'ic', + ical: 'ic', + ful: '', + ness: '' + }; + + var c = "[^aeiou]"; // consonant + var v = "[aeiouy]"; // vowel + var C = c + "[^aeiouy]*"; // consonant sequence + var V = v + "[aeiou]*"; // vowel sequence + + var mgr0 = "^(" + C + ")?" + V + C; // [C]VC... is m>0 + var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$"; // [C]VC[V] is m=1 + var mgr1 = "^(" + C + ")?" + V + C + V + C; // [C]VCVC... is m>1 + var s_v = "^(" + C + ")?" + v; // vowel in stem + + this.stemWord = function (w) { + var stem; + var suffix; + var firstch; + var origword = w; + + if (w.length < 3) + return w; + + var re; + var re2; + var re3; + var re4; + + firstch = w.substr(0,1); + if (firstch == "y") + w = firstch.toUpperCase() + w.substr(1); + + // Step 1a + re = /^(.+?)(ss|i)es$/; + re2 = /^(.+?)([^s])s$/; + + if (re.test(w)) + w = w.replace(re,"$1$2"); + else if (re2.test(w)) + w = w.replace(re2,"$1$2"); + + // Step 1b + re = /^(.+?)eed$/; + re2 = /^(.+?)(ed|ing)$/; + if (re.test(w)) { + var fp = re.exec(w); + re = new RegExp(mgr0); + if (re.test(fp[1])) { + re = /.$/; + w = w.replace(re,""); + } + } + else if (re2.test(w)) { + var fp = re2.exec(w); + stem = fp[1]; + re2 = new RegExp(s_v); + if (re2.test(stem)) { + w = stem; + re2 = /(at|bl|iz)$/; + re3 = new RegExp("([^aeiouylsz])\\1$"); + re4 = new RegExp("^" + C + v + "[^aeiouwxy]$"); + if (re2.test(w)) + w = w + "e"; + else if (re3.test(w)) { + re = /.$/; + w = w.replace(re,""); + } + else if (re4.test(w)) + w = w + "e"; + } + } + + // Step 1c + re = /^(.+?)y$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(s_v); + if (re.test(stem)) + w = stem + "i"; + } + + // Step 2 + re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + suffix = fp[2]; + re = new RegExp(mgr0); + if (re.test(stem)) + w = stem + step2list[suffix]; + } + + // Step 3 + re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + suffix = fp[2]; + re = new RegExp(mgr0); + if (re.test(stem)) + w = stem + step3list[suffix]; + } + + // Step 4 + re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/; + re2 = /^(.+?)(s|t)(ion)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(mgr1); + if (re.test(stem)) + w = stem; + } + else if (re2.test(w)) { + var fp = re2.exec(w); + stem = fp[1] + fp[2]; + re2 = new RegExp(mgr1); + if (re2.test(stem)) + w = stem; + } + + // Step 5 + re = /^(.+?)e$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(mgr1); + re2 = new RegExp(meq1); + re3 = new RegExp("^" + C + v + "[^aeiouwxy]$"); + if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) + w = stem; + } + re = /ll$/; + re2 = new RegExp(mgr1); + if (re.test(w) && re2.test(w)) { + re = /.$/; + w = w.replace(re,""); + } + + // and turn initial Y back to y + if (firstch == "y") + w = firstch.toLowerCase() + w.substr(1); + return w; + } +} + diff --git a/_static/minus.png b/_static/minus.png new file mode 100644 index 0000000000000000000000000000000000000000..d96755fdaf8bb2214971e0db9c1fd3077d7c419d GIT binary patch literal 90 zcmeAS@N?(olHy`uVBq!ia0vp^+#t*WBp7;*Yy1LIik>cxAr*|t7R?Mi>2?kWtu=nj kDsEF_5m^0CR;1wuP-*O&G^0G}KYk!hp00i_>zopr08q^qX#fBK literal 0 HcmV?d00001 diff --git a/_static/plus.png b/_static/plus.png new file mode 100644 index 0000000000000000000000000000000000000000..7107cec93a979b9a5f64843235a16651d563ce2d GIT binary patch literal 90 zcmeAS@N?(olHy`uVBq!ia0vp^+#t*WBp7;*Yy1LIik>cxAr*|t7R?Mi>2?kWtu>-2 m3q%Vub%g%s<8sJhVPMczOq}xhg9DJoz~JfX=d#Wzp$Pyb1r*Kz literal 0 HcmV?d00001 diff --git a/_static/pygments.css b/_static/pygments.css new file mode 100644 index 00000000..ed1f4cf6 --- /dev/null +++ b/_static/pygments.css @@ -0,0 +1,249 @@ +.highlight pre { line-height: 125%; } +.highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +.highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +.highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +.highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +.highlight .hll { background-color: #ffffcc } +.highlight { background: #eeffcc; } +.highlight .c { color: #408090; font-style: italic } /* Comment */ +.highlight .err { border: 1px solid #FF0000 } /* Error */ +.highlight .k { color: #007020; font-weight: bold } /* Keyword */ +.highlight .o { color: #666666 } /* Operator */ +.highlight .ch { color: #408090; font-style: italic } /* Comment.Hashbang */ +.highlight .cm { color: #408090; font-style: italic } /* Comment.Multiline */ +.highlight .cp { color: #007020 } /* Comment.Preproc */ +.highlight .cpf { color: #408090; font-style: italic } /* Comment.PreprocFile */ +.highlight .c1 { color: #408090; font-style: italic } /* Comment.Single */ +.highlight .cs { color: #408090; background-color: #fff0f0 } /* Comment.Special */ +.highlight .gd { color: #A00000 } /* Generic.Deleted */ +.highlight .ge { font-style: italic } /* Generic.Emph */ +.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */ +.highlight .gr { color: #FF0000 } /* Generic.Error */ +.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */ +.highlight .gi { color: #00A000 } /* Generic.Inserted */ +.highlight .go { color: #333333 } /* Generic.Output */ +.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */ +.highlight .gs { font-weight: bold } /* Generic.Strong */ +.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ +.highlight .gt { color: #0044DD } /* Generic.Traceback */ +.highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */ +.highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */ +.highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */ +.highlight .kp { color: #007020 } /* Keyword.Pseudo */ +.highlight .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */ +.highlight .kt { color: #902000 } /* Keyword.Type */ +.highlight .m { color: #208050 } /* Literal.Number */ +.highlight .s { color: #4070a0 } /* Literal.String */ +.highlight .na { color: #4070a0 } /* Name.Attribute */ +.highlight .nb { color: #007020 } /* Name.Builtin */ +.highlight .nc { color: #0e84b5; font-weight: bold } /* Name.Class */ +.highlight .no { color: #60add5 } /* Name.Constant */ +.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */ +.highlight .ni { color: #d55537; font-weight: bold } /* Name.Entity */ +.highlight .ne { color: #007020 } /* Name.Exception */ +.highlight .nf { color: #06287e } /* Name.Function */ +.highlight .nl { color: #002070; font-weight: bold } /* Name.Label */ +.highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */ +.highlight .nt { color: #062873; font-weight: bold } /* Name.Tag */ +.highlight .nv { color: #bb60d5 } /* Name.Variable */ +.highlight .ow { color: #007020; font-weight: bold } /* Operator.Word */ +.highlight .w { color: #bbbbbb } /* Text.Whitespace */ +.highlight .mb { color: #208050 } /* Literal.Number.Bin */ +.highlight .mf { color: #208050 } /* Literal.Number.Float */ +.highlight .mh { color: #208050 } /* Literal.Number.Hex */ +.highlight .mi { color: #208050 } /* Literal.Number.Integer */ +.highlight .mo { color: #208050 } /* Literal.Number.Oct */ +.highlight .sa { color: #4070a0 } /* Literal.String.Affix */ +.highlight .sb { color: #4070a0 } /* Literal.String.Backtick */ +.highlight .sc { color: #4070a0 } /* Literal.String.Char */ +.highlight .dl { color: #4070a0 } /* Literal.String.Delimiter */ +.highlight .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */ +.highlight .s2 { color: #4070a0 } /* Literal.String.Double */ +.highlight .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */ +.highlight .sh { color: #4070a0 } /* Literal.String.Heredoc */ +.highlight .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */ +.highlight .sx { color: #c65d09 } /* Literal.String.Other */ +.highlight .sr { color: #235388 } /* Literal.String.Regex */ +.highlight .s1 { color: #4070a0 } /* Literal.String.Single */ +.highlight .ss { color: #517918 } /* Literal.String.Symbol */ +.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */ +.highlight .fm { color: #06287e } /* Name.Function.Magic */ +.highlight .vc { color: #bb60d5 } /* Name.Variable.Class */ +.highlight .vg { color: #bb60d5 } /* Name.Variable.Global */ +.highlight .vi { color: #bb60d5 } /* Name.Variable.Instance */ +.highlight .vm { color: #bb60d5 } /* Name.Variable.Magic */ +.highlight .il { color: #208050 } /* Literal.Number.Integer.Long */ +@media not print { +body[data-theme="dark"] .highlight pre { line-height: 125%; } +body[data-theme="dark"] .highlight td.linenos .normal { color: #aaaaaa; background-color: transparent; padding-left: 5px; padding-right: 5px; } +body[data-theme="dark"] .highlight span.linenos { color: #aaaaaa; background-color: transparent; padding-left: 5px; padding-right: 5px; } +body[data-theme="dark"] .highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +body[data-theme="dark"] .highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +body[data-theme="dark"] .highlight .hll { background-color: #404040 } +body[data-theme="dark"] .highlight { background: #202020; color: #d0d0d0 } +body[data-theme="dark"] .highlight .c { color: #ababab; font-style: italic } /* Comment */ +body[data-theme="dark"] .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ +body[data-theme="dark"] .highlight .esc { color: #d0d0d0 } /* Escape */ +body[data-theme="dark"] .highlight .g { color: #d0d0d0 } /* Generic */ +body[data-theme="dark"] .highlight .k { color: #6ebf26; font-weight: bold } /* Keyword */ +body[data-theme="dark"] .highlight .l { color: #d0d0d0 } /* Literal */ +body[data-theme="dark"] .highlight .n { color: #d0d0d0 } /* Name */ +body[data-theme="dark"] .highlight .o { color: #d0d0d0 } /* Operator */ +body[data-theme="dark"] .highlight .x { color: #d0d0d0 } /* Other */ +body[data-theme="dark"] .highlight .p { color: #d0d0d0 } /* Punctuation */ +body[data-theme="dark"] .highlight .ch { color: #ababab; font-style: italic } /* Comment.Hashbang */ +body[data-theme="dark"] .highlight .cm { color: #ababab; font-style: italic } /* Comment.Multiline */ +body[data-theme="dark"] .highlight .cp { color: #ff3a3a; font-weight: bold } /* Comment.Preproc */ +body[data-theme="dark"] .highlight .cpf { color: #ababab; font-style: italic } /* Comment.PreprocFile */ +body[data-theme="dark"] .highlight .c1 { color: #ababab; font-style: italic } /* Comment.Single */ +body[data-theme="dark"] .highlight .cs { color: #e50808; font-weight: bold; background-color: #520000 } /* Comment.Special */ +body[data-theme="dark"] .highlight .gd { color: #d22323 } /* Generic.Deleted */ +body[data-theme="dark"] .highlight .ge { color: #d0d0d0; font-style: italic } /* Generic.Emph */ +body[data-theme="dark"] .highlight .ges { color: #d0d0d0; font-weight: bold; font-style: italic } /* Generic.EmphStrong */ +body[data-theme="dark"] .highlight .gr { color: #d22323 } /* Generic.Error */ +body[data-theme="dark"] .highlight .gh { color: #ffffff; font-weight: bold } /* Generic.Heading */ +body[data-theme="dark"] .highlight .gi { color: #589819 } /* Generic.Inserted */ +body[data-theme="dark"] .highlight .go { color: #cccccc } /* Generic.Output */ +body[data-theme="dark"] .highlight .gp { color: #aaaaaa } /* Generic.Prompt */ +body[data-theme="dark"] .highlight .gs { color: #d0d0d0; font-weight: bold } /* Generic.Strong */ +body[data-theme="dark"] .highlight .gu { color: #ffffff; text-decoration: underline } /* Generic.Subheading */ +body[data-theme="dark"] .highlight .gt { color: #d22323 } /* Generic.Traceback */ +body[data-theme="dark"] .highlight .kc { color: #6ebf26; font-weight: bold } /* Keyword.Constant */ +body[data-theme="dark"] .highlight .kd { color: #6ebf26; font-weight: bold } /* Keyword.Declaration */ +body[data-theme="dark"] .highlight .kn { color: #6ebf26; font-weight: bold } /* Keyword.Namespace */ +body[data-theme="dark"] .highlight .kp { color: #6ebf26 } /* Keyword.Pseudo */ +body[data-theme="dark"] .highlight .kr { color: #6ebf26; font-weight: bold } /* Keyword.Reserved */ +body[data-theme="dark"] .highlight .kt { color: #6ebf26; font-weight: bold } /* Keyword.Type */ +body[data-theme="dark"] .highlight .ld { color: #d0d0d0 } /* Literal.Date */ +body[data-theme="dark"] .highlight .m { color: #51b2fd } /* Literal.Number */ +body[data-theme="dark"] .highlight .s { color: #ed9d13 } /* Literal.String */ +body[data-theme="dark"] .highlight .na { color: #bbbbbb } /* Name.Attribute */ +body[data-theme="dark"] .highlight .nb { color: #2fbccd } /* Name.Builtin */ +body[data-theme="dark"] .highlight .nc { color: #71adff; text-decoration: underline } /* Name.Class */ +body[data-theme="dark"] .highlight .no { color: #40ffff } /* Name.Constant */ +body[data-theme="dark"] .highlight .nd { color: #ffa500 } /* Name.Decorator */ +body[data-theme="dark"] .highlight .ni { color: #d0d0d0 } /* Name.Entity */ +body[data-theme="dark"] .highlight .ne { color: #bbbbbb } /* Name.Exception */ +body[data-theme="dark"] .highlight .nf { color: #71adff } /* Name.Function */ +body[data-theme="dark"] .highlight .nl { color: #d0d0d0 } /* Name.Label */ +body[data-theme="dark"] .highlight .nn { color: #71adff; text-decoration: underline } /* Name.Namespace */ +body[data-theme="dark"] .highlight .nx { color: #d0d0d0 } /* Name.Other */ +body[data-theme="dark"] .highlight .py { color: #d0d0d0 } /* Name.Property */ +body[data-theme="dark"] .highlight .nt { color: #6ebf26; font-weight: bold } /* Name.Tag */ +body[data-theme="dark"] .highlight .nv { color: #40ffff } /* Name.Variable */ +body[data-theme="dark"] .highlight .ow { color: #6ebf26; font-weight: bold } /* Operator.Word */ +body[data-theme="dark"] .highlight .pm { color: #d0d0d0 } /* Punctuation.Marker */ +body[data-theme="dark"] .highlight .w { color: #666666 } /* Text.Whitespace */ +body[data-theme="dark"] .highlight .mb { color: #51b2fd } /* Literal.Number.Bin */ +body[data-theme="dark"] .highlight .mf { color: #51b2fd } /* Literal.Number.Float */ +body[data-theme="dark"] .highlight .mh { color: #51b2fd } /* Literal.Number.Hex */ +body[data-theme="dark"] .highlight .mi { color: #51b2fd } /* Literal.Number.Integer */ +body[data-theme="dark"] .highlight .mo { color: #51b2fd } /* Literal.Number.Oct */ +body[data-theme="dark"] .highlight .sa { color: #ed9d13 } /* Literal.String.Affix */ +body[data-theme="dark"] .highlight .sb { color: #ed9d13 } /* Literal.String.Backtick */ +body[data-theme="dark"] .highlight .sc { color: #ed9d13 } /* Literal.String.Char */ +body[data-theme="dark"] .highlight .dl { color: #ed9d13 } /* Literal.String.Delimiter */ +body[data-theme="dark"] .highlight .sd { color: #ed9d13 } /* Literal.String.Doc */ +body[data-theme="dark"] .highlight .s2 { color: #ed9d13 } /* Literal.String.Double */ +body[data-theme="dark"] .highlight .se { color: #ed9d13 } /* Literal.String.Escape */ +body[data-theme="dark"] .highlight .sh { color: #ed9d13 } /* Literal.String.Heredoc */ +body[data-theme="dark"] .highlight .si { color: #ed9d13 } /* Literal.String.Interpol */ +body[data-theme="dark"] .highlight .sx { color: #ffa500 } /* Literal.String.Other */ +body[data-theme="dark"] .highlight .sr { color: #ed9d13 } /* Literal.String.Regex */ +body[data-theme="dark"] .highlight .s1 { color: #ed9d13 } /* Literal.String.Single */ +body[data-theme="dark"] .highlight .ss { color: #ed9d13 } /* Literal.String.Symbol */ +body[data-theme="dark"] .highlight .bp { color: #2fbccd } /* Name.Builtin.Pseudo */ +body[data-theme="dark"] .highlight .fm { color: #71adff } /* Name.Function.Magic */ +body[data-theme="dark"] .highlight .vc { color: #40ffff } /* Name.Variable.Class */ +body[data-theme="dark"] .highlight .vg { color: #40ffff } /* Name.Variable.Global */ +body[data-theme="dark"] .highlight .vi { color: #40ffff } /* Name.Variable.Instance */ +body[data-theme="dark"] .highlight .vm { color: #40ffff } /* Name.Variable.Magic */ +body[data-theme="dark"] .highlight .il { color: #51b2fd } /* Literal.Number.Integer.Long */ +@media (prefers-color-scheme: dark) { +body:not([data-theme="light"]) .highlight pre { line-height: 125%; } +body:not([data-theme="light"]) .highlight td.linenos .normal { color: #aaaaaa; background-color: transparent; padding-left: 5px; padding-right: 5px; } +body:not([data-theme="light"]) .highlight span.linenos { color: #aaaaaa; background-color: transparent; padding-left: 5px; padding-right: 5px; } +body:not([data-theme="light"]) .highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +body:not([data-theme="light"]) .highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +body:not([data-theme="light"]) .highlight .hll { background-color: #404040 } +body:not([data-theme="light"]) .highlight { background: #202020; color: #d0d0d0 } +body:not([data-theme="light"]) .highlight .c { color: #ababab; font-style: italic } /* Comment */ +body:not([data-theme="light"]) .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ +body:not([data-theme="light"]) .highlight .esc { color: #d0d0d0 } /* Escape */ +body:not([data-theme="light"]) .highlight .g { color: #d0d0d0 } /* Generic */ +body:not([data-theme="light"]) .highlight .k { color: #6ebf26; font-weight: bold } /* Keyword */ +body:not([data-theme="light"]) .highlight .l { color: #d0d0d0 } /* Literal */ +body:not([data-theme="light"]) .highlight .n { color: #d0d0d0 } /* Name */ +body:not([data-theme="light"]) .highlight .o { color: #d0d0d0 } /* Operator */ +body:not([data-theme="light"]) .highlight .x { color: #d0d0d0 } /* Other */ +body:not([data-theme="light"]) .highlight .p { color: #d0d0d0 } /* Punctuation */ +body:not([data-theme="light"]) .highlight .ch { color: #ababab; font-style: italic } /* Comment.Hashbang */ +body:not([data-theme="light"]) .highlight .cm { color: #ababab; font-style: italic } /* Comment.Multiline */ +body:not([data-theme="light"]) .highlight .cp { color: #ff3a3a; font-weight: bold } /* Comment.Preproc */ +body:not([data-theme="light"]) .highlight .cpf { color: #ababab; font-style: italic } /* Comment.PreprocFile */ +body:not([data-theme="light"]) .highlight .c1 { color: #ababab; font-style: italic } /* Comment.Single */ +body:not([data-theme="light"]) .highlight .cs { color: #e50808; font-weight: bold; background-color: #520000 } /* Comment.Special */ +body:not([data-theme="light"]) .highlight .gd { color: #d22323 } /* Generic.Deleted */ +body:not([data-theme="light"]) .highlight .ge { color: #d0d0d0; font-style: italic } /* Generic.Emph */ +body:not([data-theme="light"]) .highlight .ges { color: #d0d0d0; font-weight: bold; font-style: italic } /* Generic.EmphStrong */ +body:not([data-theme="light"]) .highlight .gr { color: #d22323 } /* Generic.Error */ +body:not([data-theme="light"]) .highlight .gh { color: #ffffff; font-weight: bold } /* Generic.Heading */ +body:not([data-theme="light"]) .highlight .gi { color: #589819 } /* Generic.Inserted */ +body:not([data-theme="light"]) .highlight .go { color: #cccccc } /* Generic.Output */ +body:not([data-theme="light"]) .highlight .gp { color: #aaaaaa } /* Generic.Prompt */ +body:not([data-theme="light"]) .highlight .gs { color: #d0d0d0; font-weight: bold } /* Generic.Strong */ +body:not([data-theme="light"]) .highlight .gu { color: #ffffff; text-decoration: underline } /* Generic.Subheading */ +body:not([data-theme="light"]) .highlight .gt { color: #d22323 } /* Generic.Traceback */ +body:not([data-theme="light"]) .highlight .kc { color: #6ebf26; font-weight: bold } /* Keyword.Constant */ +body:not([data-theme="light"]) .highlight .kd { color: #6ebf26; font-weight: bold } /* Keyword.Declaration */ +body:not([data-theme="light"]) .highlight .kn { color: #6ebf26; font-weight: bold } /* Keyword.Namespace */ +body:not([data-theme="light"]) .highlight .kp { color: #6ebf26 } /* Keyword.Pseudo */ +body:not([data-theme="light"]) .highlight .kr { color: #6ebf26; font-weight: bold } /* Keyword.Reserved */ +body:not([data-theme="light"]) .highlight .kt { color: #6ebf26; font-weight: bold } /* Keyword.Type */ +body:not([data-theme="light"]) .highlight .ld { color: #d0d0d0 } /* Literal.Date */ +body:not([data-theme="light"]) .highlight .m { color: #51b2fd } /* Literal.Number */ +body:not([data-theme="light"]) .highlight .s { color: #ed9d13 } /* Literal.String */ +body:not([data-theme="light"]) .highlight .na { color: #bbbbbb } /* Name.Attribute */ +body:not([data-theme="light"]) .highlight .nb { color: #2fbccd } /* Name.Builtin */ +body:not([data-theme="light"]) .highlight .nc { color: #71adff; text-decoration: underline } /* Name.Class */ +body:not([data-theme="light"]) .highlight .no { color: #40ffff } /* Name.Constant */ +body:not([data-theme="light"]) .highlight .nd { color: #ffa500 } /* Name.Decorator */ +body:not([data-theme="light"]) .highlight .ni { color: #d0d0d0 } /* Name.Entity */ +body:not([data-theme="light"]) .highlight .ne { color: #bbbbbb } /* Name.Exception */ +body:not([data-theme="light"]) .highlight .nf { color: #71adff } /* Name.Function */ +body:not([data-theme="light"]) .highlight .nl { color: #d0d0d0 } /* Name.Label */ +body:not([data-theme="light"]) .highlight .nn { color: #71adff; text-decoration: underline } /* Name.Namespace */ +body:not([data-theme="light"]) .highlight .nx { color: #d0d0d0 } /* Name.Other */ +body:not([data-theme="light"]) .highlight .py { color: #d0d0d0 } /* Name.Property */ +body:not([data-theme="light"]) .highlight .nt { color: #6ebf26; font-weight: bold } /* Name.Tag */ +body:not([data-theme="light"]) .highlight .nv { color: #40ffff } /* Name.Variable */ +body:not([data-theme="light"]) .highlight .ow { color: #6ebf26; font-weight: bold } /* Operator.Word */ +body:not([data-theme="light"]) .highlight .pm { color: #d0d0d0 } /* Punctuation.Marker */ +body:not([data-theme="light"]) .highlight .w { color: #666666 } /* Text.Whitespace */ +body:not([data-theme="light"]) .highlight .mb { color: #51b2fd } /* Literal.Number.Bin */ +body:not([data-theme="light"]) .highlight .mf { color: #51b2fd } /* Literal.Number.Float */ +body:not([data-theme="light"]) .highlight .mh { color: #51b2fd } /* Literal.Number.Hex */ +body:not([data-theme="light"]) .highlight .mi { color: #51b2fd } /* Literal.Number.Integer */ +body:not([data-theme="light"]) .highlight .mo { color: #51b2fd } /* Literal.Number.Oct */ +body:not([data-theme="light"]) .highlight .sa { color: #ed9d13 } /* Literal.String.Affix */ +body:not([data-theme="light"]) .highlight .sb { color: #ed9d13 } /* Literal.String.Backtick */ +body:not([data-theme="light"]) .highlight .sc { color: #ed9d13 } /* Literal.String.Char */ +body:not([data-theme="light"]) .highlight .dl { color: #ed9d13 } /* Literal.String.Delimiter */ +body:not([data-theme="light"]) .highlight .sd { color: #ed9d13 } /* Literal.String.Doc */ +body:not([data-theme="light"]) .highlight .s2 { color: #ed9d13 } /* Literal.String.Double */ +body:not([data-theme="light"]) .highlight .se { color: #ed9d13 } /* Literal.String.Escape */ +body:not([data-theme="light"]) .highlight .sh { color: #ed9d13 } /* Literal.String.Heredoc */ +body:not([data-theme="light"]) .highlight .si { color: #ed9d13 } /* Literal.String.Interpol */ +body:not([data-theme="light"]) .highlight .sx { color: #ffa500 } /* Literal.String.Other */ +body:not([data-theme="light"]) .highlight .sr { color: #ed9d13 } /* Literal.String.Regex */ +body:not([data-theme="light"]) .highlight .s1 { color: #ed9d13 } /* Literal.String.Single */ +body:not([data-theme="light"]) .highlight .ss { color: #ed9d13 } /* Literal.String.Symbol */ +body:not([data-theme="light"]) .highlight .bp { color: #2fbccd } /* Name.Builtin.Pseudo */ +body:not([data-theme="light"]) .highlight .fm { color: #71adff } /* Name.Function.Magic */ +body:not([data-theme="light"]) .highlight .vc { color: #40ffff } /* Name.Variable.Class */ +body:not([data-theme="light"]) .highlight .vg { color: #40ffff } /* Name.Variable.Global */ +body:not([data-theme="light"]) .highlight .vi { color: #40ffff } /* Name.Variable.Instance */ +body:not([data-theme="light"]) .highlight .vm { color: #40ffff } /* Name.Variable.Magic */ +body:not([data-theme="light"]) .highlight .il { color: #51b2fd } /* Literal.Number.Integer.Long */ +} +} \ No newline at end of file diff --git a/_static/scripts/furo-extensions.js b/_static/scripts/furo-extensions.js new file mode 100644 index 00000000..e69de29b diff --git a/_static/scripts/furo.js b/_static/scripts/furo.js new file mode 100644 index 00000000..32e7c05b --- /dev/null +++ b/_static/scripts/furo.js @@ -0,0 +1,3 @@ +/*! For license information please see furo.js.LICENSE.txt */ +(()=>{var t={212:function(t,e,n){var o,r;r=void 0!==n.g?n.g:"undefined"!=typeof window?window:this,o=function(){return function(t){"use strict";var e={navClass:"active",contentClass:"active",nested:!1,nestedClass:"active",offset:0,reflow:!1,events:!0},n=function(t,e,n){if(n.settings.events){var o=new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:n});e.dispatchEvent(o)}},o=function(t){var e=0;if(t.offsetParent)for(;t;)e+=t.offsetTop,t=t.offsetParent;return e>=0?e:0},r=function(t){t&&t.sort((function(t,e){return o(t.content)=Math.max(document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight,document.body.clientHeight,document.documentElement.clientHeight)},l=function(t,e){var n=t[t.length-1];if(function(t,e){return!(!s()||!c(t.content,e,!0))}(n,e))return n;for(var o=t.length-1;o>=0;o--)if(c(t[o].content,e))return t[o]},a=function(t,e){if(e.nested&&t.parentNode){var n=t.parentNode.closest("li");n&&(n.classList.remove(e.nestedClass),a(n,e))}},i=function(t,e){if(t){var o=t.nav.closest("li");o&&(o.classList.remove(e.navClass),t.content.classList.remove(e.contentClass),a(o,e),n("gumshoeDeactivate",o,{link:t.nav,content:t.content,settings:e}))}},u=function(t,e){if(e.nested){var n=t.parentNode.closest("li");n&&(n.classList.add(e.nestedClass),u(n,e))}};return function(o,c){var s,a,d,f,m,v={setup:function(){s=document.querySelectorAll(o),a=[],Array.prototype.forEach.call(s,(function(t){var e=document.getElementById(decodeURIComponent(t.hash.substr(1)));e&&a.push({nav:t,content:e})})),r(a)},detect:function(){var t=l(a,m);t?d&&t.content===d.content||(i(d,m),function(t,e){if(t){var o=t.nav.closest("li");o&&(o.classList.add(e.navClass),t.content.classList.add(e.contentClass),u(o,e),n("gumshoeActivate",o,{link:t.nav,content:t.content,settings:e}))}}(t,m),d=t):d&&(i(d,m),d=null)}},h=function(e){f&&t.cancelAnimationFrame(f),f=t.requestAnimationFrame(v.detect)},g=function(e){f&&t.cancelAnimationFrame(f),f=t.requestAnimationFrame((function(){r(a),v.detect()}))};return v.destroy=function(){d&&i(d,m),t.removeEventListener("scroll",h,!1),m.reflow&&t.removeEventListener("resize",g,!1),a=null,s=null,d=null,f=null,m=null},m=function(){var t={};return Array.prototype.forEach.call(arguments,(function(e){for(var n in e){if(!e.hasOwnProperty(n))return;t[n]=e[n]}})),t}(e,c||{}),v.setup(),v.detect(),t.addEventListener("scroll",h,!1),m.reflow&&t.addEventListener("resize",g,!1),v}}(r)}.apply(e,[]),void 0===o||(t.exports=o)}},e={};function n(o){var r=e[o];if(void 0!==r)return r.exports;var c=e[o]={exports:{}};return t[o].call(c.exports,c,c.exports,n),c.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var o in e)n.o(e,o)&&!n.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),(()=>{"use strict";var t=n(212),e=n.n(t),o=null,r=null,c=window.pageYOffset||document.documentElement.scrollTop;const s=64;function l(){const t=localStorage.getItem("theme")||"auto";var e;"light"!==(e=window.matchMedia("(prefers-color-scheme: dark)").matches?"auto"===t?"light":"light"==t?"dark":"auto":"auto"===t?"dark":"dark"==t?"light":"auto")&&"dark"!==e&&"auto"!==e&&(console.error(`Got invalid theme mode: ${e}. Resetting to auto.`),e="auto"),document.body.dataset.theme=e,localStorage.setItem("theme",e),console.log(`Changed to ${e} mode.`)}function a(){!function(){const t=document.getElementsByClassName("theme-toggle");Array.from(t).forEach((t=>{t.addEventListener("click",l)}))}(),function(){let t=0,e=!1;window.addEventListener("scroll",(function(n){t=window.scrollY,e||(window.requestAnimationFrame((function(){var n;n=t,0==Math.floor(r.getBoundingClientRect().top)?r.classList.add("scrolled"):r.classList.remove("scrolled"),function(t){tc&&document.documentElement.classList.remove("show-back-to-top"),c=t}(n),function(t){null!==o&&(0==t?o.scrollTo(0,0):Math.ceil(t)>=Math.floor(document.documentElement.scrollHeight-window.innerHeight)?o.scrollTo(0,o.scrollHeight):document.querySelector(".scroll-current"))}(n),e=!1})),e=!0)})),window.scroll()}(),null!==o&&new(e())(".toc-tree a",{reflow:!0,recursive:!0,navClass:"scroll-current",offset:()=>{let t=parseFloat(getComputedStyle(document.documentElement).fontSize);return r.getBoundingClientRect().height+.5*t+1}})}document.addEventListener("DOMContentLoaded",(function(){document.body.parentNode.classList.remove("no-js"),r=document.querySelector("header"),o=document.querySelector(".toc-scroll"),a()}))})()})(); +//# sourceMappingURL=furo.js.map \ No newline at end of file diff --git a/_static/scripts/furo.js.LICENSE.txt b/_static/scripts/furo.js.LICENSE.txt new file mode 100644 index 00000000..1632189c --- /dev/null +++ b/_static/scripts/furo.js.LICENSE.txt @@ -0,0 +1,7 @@ +/*! + * gumshoejs v5.1.2 (patched by @pradyunsg) + * A simple, framework-agnostic scrollspy script. + * (c) 2019 Chris Ferdinandi + * MIT License + * http://github.com/cferdinandi/gumshoe + */ diff --git a/_static/scripts/furo.js.map b/_static/scripts/furo.js.map new file mode 100644 index 00000000..47053022 --- /dev/null +++ b/_static/scripts/furo.js.map @@ -0,0 +1 @@ +{"version":3,"file":"scripts/furo.js","mappings":"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","sources":["webpack:///./src/furo/assets/scripts/gumshoe-patched.js","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///./src/furo/assets/scripts/furo.js"],"sourcesContent":["/*!\n * gumshoejs v5.1.2 (patched by @pradyunsg)\n * A simple, framework-agnostic scrollspy script.\n * (c) 2019 Chris Ferdinandi\n * MIT License\n * http://github.com/cferdinandi/gumshoe\n */\n\n(function (root, factory) {\n if (typeof define === \"function\" && define.amd) {\n define([], function () {\n return factory(root);\n });\n } else if (typeof exports === \"object\") {\n module.exports = factory(root);\n } else {\n root.Gumshoe = factory(root);\n }\n})(\n typeof global !== \"undefined\"\n ? global\n : typeof window !== \"undefined\"\n ? window\n : this,\n function (window) {\n \"use strict\";\n\n //\n // Defaults\n //\n\n var defaults = {\n // Active classes\n navClass: \"active\",\n contentClass: \"active\",\n\n // Nested navigation\n nested: false,\n nestedClass: \"active\",\n\n // Offset & reflow\n offset: 0,\n reflow: false,\n\n // Event support\n events: true,\n };\n\n //\n // Methods\n //\n\n /**\n * Merge two or more objects together.\n * @param {Object} objects The objects to merge together\n * @returns {Object} Merged values of defaults and options\n */\n var extend = function () {\n var merged = {};\n Array.prototype.forEach.call(arguments, function (obj) {\n for (var key in obj) {\n if (!obj.hasOwnProperty(key)) return;\n merged[key] = obj[key];\n }\n });\n return merged;\n };\n\n /**\n * Emit a custom event\n * @param {String} type The event type\n * @param {Node} elem The element to attach the event to\n * @param {Object} detail Any details to pass along with the event\n */\n var emitEvent = function (type, elem, detail) {\n // Make sure events are enabled\n if (!detail.settings.events) return;\n\n // Create a new event\n var event = new CustomEvent(type, {\n bubbles: true,\n cancelable: true,\n detail: detail,\n });\n\n // Dispatch the event\n elem.dispatchEvent(event);\n };\n\n /**\n * Get an element's distance from the top of the Document.\n * @param {Node} elem The element\n * @return {Number} Distance from the top in pixels\n */\n var getOffsetTop = function (elem) {\n var location = 0;\n if (elem.offsetParent) {\n while (elem) {\n location += elem.offsetTop;\n elem = elem.offsetParent;\n }\n }\n return location >= 0 ? location : 0;\n };\n\n /**\n * Sort content from first to last in the DOM\n * @param {Array} contents The content areas\n */\n var sortContents = function (contents) {\n if (contents) {\n contents.sort(function (item1, item2) {\n var offset1 = getOffsetTop(item1.content);\n var offset2 = getOffsetTop(item2.content);\n if (offset1 < offset2) return -1;\n return 1;\n });\n }\n };\n\n /**\n * Get the offset to use for calculating position\n * @param {Object} settings The settings for this instantiation\n * @return {Float} The number of pixels to offset the calculations\n */\n var getOffset = function (settings) {\n // if the offset is a function run it\n if (typeof settings.offset === \"function\") {\n return parseFloat(settings.offset());\n }\n\n // Otherwise, return it as-is\n return parseFloat(settings.offset);\n };\n\n /**\n * Get the document element's height\n * @private\n * @returns {Number}\n */\n var getDocumentHeight = function () {\n return Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight,\n document.body.offsetHeight,\n document.documentElement.offsetHeight,\n document.body.clientHeight,\n document.documentElement.clientHeight,\n );\n };\n\n /**\n * Determine if an element is in view\n * @param {Node} elem The element\n * @param {Object} settings The settings for this instantiation\n * @param {Boolean} bottom If true, check if element is above bottom of viewport instead\n * @return {Boolean} Returns true if element is in the viewport\n */\n var isInView = function (elem, settings, bottom) {\n var bounds = elem.getBoundingClientRect();\n var offset = getOffset(settings);\n if (bottom) {\n return (\n parseInt(bounds.bottom, 10) <\n (window.innerHeight || document.documentElement.clientHeight)\n );\n }\n return parseInt(bounds.top, 10) <= offset;\n };\n\n /**\n * Check if at the bottom of the viewport\n * @return {Boolean} If true, page is at the bottom of the viewport\n */\n var isAtBottom = function () {\n if (\n Math.ceil(window.innerHeight + window.pageYOffset) >=\n getDocumentHeight()\n )\n return true;\n return false;\n };\n\n /**\n * Check if the last item should be used (even if not at the top of the page)\n * @param {Object} item The last item\n * @param {Object} settings The settings for this instantiation\n * @return {Boolean} If true, use the last item\n */\n var useLastItem = function (item, settings) {\n if (isAtBottom() && isInView(item.content, settings, true)) return true;\n return false;\n };\n\n /**\n * Get the active content\n * @param {Array} contents The content areas\n * @param {Object} settings The settings for this instantiation\n * @return {Object} The content area and matching navigation link\n */\n var getActive = function (contents, settings) {\n var last = contents[contents.length - 1];\n if (useLastItem(last, settings)) return last;\n for (var i = contents.length - 1; i >= 0; i--) {\n if (isInView(contents[i].content, settings)) return contents[i];\n }\n };\n\n /**\n * Deactivate parent navs in a nested navigation\n * @param {Node} nav The starting navigation element\n * @param {Object} settings The settings for this instantiation\n */\n var deactivateNested = function (nav, settings) {\n // If nesting isn't activated, bail\n if (!settings.nested || !nav.parentNode) return;\n\n // Get the parent navigation\n var li = nav.parentNode.closest(\"li\");\n if (!li) return;\n\n // Remove the active class\n li.classList.remove(settings.nestedClass);\n\n // Apply recursively to any parent navigation elements\n deactivateNested(li, settings);\n };\n\n /**\n * Deactivate a nav and content area\n * @param {Object} items The nav item and content to deactivate\n * @param {Object} settings The settings for this instantiation\n */\n var deactivate = function (items, settings) {\n // Make sure there are items to deactivate\n if (!items) return;\n\n // Get the parent list item\n var li = items.nav.closest(\"li\");\n if (!li) return;\n\n // Remove the active class from the nav and content\n li.classList.remove(settings.navClass);\n items.content.classList.remove(settings.contentClass);\n\n // Deactivate any parent navs in a nested navigation\n deactivateNested(li, settings);\n\n // Emit a custom event\n emitEvent(\"gumshoeDeactivate\", li, {\n link: items.nav,\n content: items.content,\n settings: settings,\n });\n };\n\n /**\n * Activate parent navs in a nested navigation\n * @param {Node} nav The starting navigation element\n * @param {Object} settings The settings for this instantiation\n */\n var activateNested = function (nav, settings) {\n // If nesting isn't activated, bail\n if (!settings.nested) return;\n\n // Get the parent navigation\n var li = nav.parentNode.closest(\"li\");\n if (!li) return;\n\n // Add the active class\n li.classList.add(settings.nestedClass);\n\n // Apply recursively to any parent navigation elements\n activateNested(li, settings);\n };\n\n /**\n * Activate a nav and content area\n * @param {Object} items The nav item and content to activate\n * @param {Object} settings The settings for this instantiation\n */\n var activate = function (items, settings) {\n // Make sure there are items to activate\n if (!items) return;\n\n // Get the parent list item\n var li = items.nav.closest(\"li\");\n if (!li) return;\n\n // Add the active class to the nav and content\n li.classList.add(settings.navClass);\n items.content.classList.add(settings.contentClass);\n\n // Activate any parent navs in a nested navigation\n activateNested(li, settings);\n\n // Emit a custom event\n emitEvent(\"gumshoeActivate\", li, {\n link: items.nav,\n content: items.content,\n settings: settings,\n });\n };\n\n /**\n * Create the Constructor object\n * @param {String} selector The selector to use for navigation items\n * @param {Object} options User options and settings\n */\n var Constructor = function (selector, options) {\n //\n // Variables\n //\n\n var publicAPIs = {};\n var navItems, contents, current, timeout, settings;\n\n //\n // Methods\n //\n\n /**\n * Set variables from DOM elements\n */\n publicAPIs.setup = function () {\n // Get all nav items\n navItems = document.querySelectorAll(selector);\n\n // Create contents array\n contents = [];\n\n // Loop through each item, get it's matching content, and push to the array\n Array.prototype.forEach.call(navItems, function (item) {\n // Get the content for the nav item\n var content = document.getElementById(\n decodeURIComponent(item.hash.substr(1)),\n );\n if (!content) return;\n\n // Push to the contents array\n contents.push({\n nav: item,\n content: content,\n });\n });\n\n // Sort contents by the order they appear in the DOM\n sortContents(contents);\n };\n\n /**\n * Detect which content is currently active\n */\n publicAPIs.detect = function () {\n // Get the active content\n var active = getActive(contents, settings);\n\n // if there's no active content, deactivate and bail\n if (!active) {\n if (current) {\n deactivate(current, settings);\n current = null;\n }\n return;\n }\n\n // If the active content is the one currently active, do nothing\n if (current && active.content === current.content) return;\n\n // Deactivate the current content and activate the new content\n deactivate(current, settings);\n activate(active, settings);\n\n // Update the currently active content\n current = active;\n };\n\n /**\n * Detect the active content on scroll\n * Debounced for performance\n */\n var scrollHandler = function (event) {\n // If there's a timer, cancel it\n if (timeout) {\n window.cancelAnimationFrame(timeout);\n }\n\n // Setup debounce callback\n timeout = window.requestAnimationFrame(publicAPIs.detect);\n };\n\n /**\n * Update content sorting on resize\n * Debounced for performance\n */\n var resizeHandler = function (event) {\n // If there's a timer, cancel it\n if (timeout) {\n window.cancelAnimationFrame(timeout);\n }\n\n // Setup debounce callback\n timeout = window.requestAnimationFrame(function () {\n sortContents(contents);\n publicAPIs.detect();\n });\n };\n\n /**\n * Destroy the current instantiation\n */\n publicAPIs.destroy = function () {\n // Undo DOM changes\n if (current) {\n deactivate(current, settings);\n }\n\n // Remove event listeners\n window.removeEventListener(\"scroll\", scrollHandler, false);\n if (settings.reflow) {\n window.removeEventListener(\"resize\", resizeHandler, false);\n }\n\n // Reset variables\n contents = null;\n navItems = null;\n current = null;\n timeout = null;\n settings = null;\n };\n\n /**\n * Initialize the current instantiation\n */\n var init = function () {\n // Merge user options into defaults\n settings = extend(defaults, options || {});\n\n // Setup variables based on the current DOM\n publicAPIs.setup();\n\n // Find the currently active content\n publicAPIs.detect();\n\n // Setup event listeners\n window.addEventListener(\"scroll\", scrollHandler, false);\n if (settings.reflow) {\n window.addEventListener(\"resize\", resizeHandler, false);\n }\n };\n\n //\n // Initialize and return the public APIs\n //\n\n init();\n return publicAPIs;\n };\n\n //\n // Return the Constructor\n //\n\n return Constructor;\n },\n);\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","import Gumshoe from \"./gumshoe-patched.js\";\n\n////////////////////////////////////////////////////////////////////////////////\n// Scroll Handling\n////////////////////////////////////////////////////////////////////////////////\nvar tocScroll = null;\nvar header = null;\nvar lastScrollTop = window.pageYOffset || document.documentElement.scrollTop;\nconst GO_TO_TOP_OFFSET = 64;\n\nfunction scrollHandlerForHeader() {\n if (Math.floor(header.getBoundingClientRect().top) == 0) {\n header.classList.add(\"scrolled\");\n } else {\n header.classList.remove(\"scrolled\");\n }\n}\n\nfunction scrollHandlerForBackToTop(positionY) {\n if (positionY < GO_TO_TOP_OFFSET) {\n document.documentElement.classList.remove(\"show-back-to-top\");\n } else {\n if (positionY < lastScrollTop) {\n document.documentElement.classList.add(\"show-back-to-top\");\n } else if (positionY > lastScrollTop) {\n document.documentElement.classList.remove(\"show-back-to-top\");\n }\n }\n lastScrollTop = positionY;\n}\n\nfunction scrollHandlerForTOC(positionY) {\n if (tocScroll === null) {\n return;\n }\n\n // top of page.\n if (positionY == 0) {\n tocScroll.scrollTo(0, 0);\n } else if (\n // bottom of page.\n Math.ceil(positionY) >=\n Math.floor(document.documentElement.scrollHeight - window.innerHeight)\n ) {\n tocScroll.scrollTo(0, tocScroll.scrollHeight);\n } else {\n // somewhere in the middle.\n const current = document.querySelector(\".scroll-current\");\n if (current == null) {\n return;\n }\n\n // https://github.com/pypa/pip/issues/9159 This breaks scroll behaviours.\n // // scroll the currently \"active\" heading in toc, into view.\n // const rect = current.getBoundingClientRect();\n // if (0 > rect.top) {\n // current.scrollIntoView(true); // the argument is \"alignTop\"\n // } else if (rect.bottom > window.innerHeight) {\n // current.scrollIntoView(false);\n // }\n }\n}\n\nfunction scrollHandler(positionY) {\n scrollHandlerForHeader();\n scrollHandlerForBackToTop(positionY);\n scrollHandlerForTOC(positionY);\n}\n\n////////////////////////////////////////////////////////////////////////////////\n// Theme Toggle\n////////////////////////////////////////////////////////////////////////////////\nfunction setTheme(mode) {\n if (mode !== \"light\" && mode !== \"dark\" && mode !== \"auto\") {\n console.error(`Got invalid theme mode: ${mode}. Resetting to auto.`);\n mode = \"auto\";\n }\n\n document.body.dataset.theme = mode;\n localStorage.setItem(\"theme\", mode);\n console.log(`Changed to ${mode} mode.`);\n}\n\nfunction cycleThemeOnce() {\n const currentTheme = localStorage.getItem(\"theme\") || \"auto\";\n const prefersDark = window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\n if (prefersDark) {\n // Auto (dark) -> Light -> Dark\n if (currentTheme === \"auto\") {\n setTheme(\"light\");\n } else if (currentTheme == \"light\") {\n setTheme(\"dark\");\n } else {\n setTheme(\"auto\");\n }\n } else {\n // Auto (light) -> Dark -> Light\n if (currentTheme === \"auto\") {\n setTheme(\"dark\");\n } else if (currentTheme == \"dark\") {\n setTheme(\"light\");\n } else {\n setTheme(\"auto\");\n }\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////\n// Setup\n////////////////////////////////////////////////////////////////////////////////\nfunction setupScrollHandler() {\n // Taken from https://developer.mozilla.org/en-US/docs/Web/API/Document/scroll_event\n let last_known_scroll_position = 0;\n let ticking = false;\n\n window.addEventListener(\"scroll\", function (e) {\n last_known_scroll_position = window.scrollY;\n\n if (!ticking) {\n window.requestAnimationFrame(function () {\n scrollHandler(last_known_scroll_position);\n ticking = false;\n });\n\n ticking = true;\n }\n });\n window.scroll();\n}\n\nfunction setupScrollSpy() {\n if (tocScroll === null) {\n return;\n }\n\n // Scrollspy -- highlight table on contents, based on scroll\n new Gumshoe(\".toc-tree a\", {\n reflow: true,\n recursive: true,\n navClass: \"scroll-current\",\n offset: () => {\n let rem = parseFloat(getComputedStyle(document.documentElement).fontSize);\n return header.getBoundingClientRect().height + 0.5 * rem + 1;\n },\n });\n}\n\nfunction setupTheme() {\n // Attach event handlers for toggling themes\n const buttons = document.getElementsByClassName(\"theme-toggle\");\n Array.from(buttons).forEach((btn) => {\n btn.addEventListener(\"click\", cycleThemeOnce);\n });\n}\n\nfunction setup() {\n setupTheme();\n setupScrollHandler();\n setupScrollSpy();\n}\n\n////////////////////////////////////////////////////////////////////////////////\n// Main entrypoint\n////////////////////////////////////////////////////////////////////////////////\nfunction main() {\n document.body.parentNode.classList.remove(\"no-js\");\n\n header = document.querySelector(\"header\");\n tocScroll = document.querySelector(\".toc-scroll\");\n\n setup();\n}\n\ndocument.addEventListener(\"DOMContentLoaded\", main);\n"],"names":["root","g","window","this","defaults","navClass","contentClass","nested","nestedClass","offset","reflow","events","emitEvent","type","elem","detail","settings","event","CustomEvent","bubbles","cancelable","dispatchEvent","getOffsetTop","location","offsetParent","offsetTop","sortContents","contents","sort","item1","item2","content","isInView","bottom","bounds","getBoundingClientRect","parseFloat","getOffset","parseInt","innerHeight","document","documentElement","clientHeight","top","isAtBottom","Math","ceil","pageYOffset","max","body","scrollHeight","offsetHeight","getActive","last","length","item","useLastItem","i","deactivateNested","nav","parentNode","li","closest","classList","remove","deactivate","items","link","activateNested","add","selector","options","navItems","current","timeout","publicAPIs","querySelectorAll","Array","prototype","forEach","call","getElementById","decodeURIComponent","hash","substr","push","active","activate","scrollHandler","cancelAnimationFrame","requestAnimationFrame","detect","resizeHandler","destroy","removeEventListener","merged","arguments","obj","key","hasOwnProperty","extend","setup","addEventListener","factory","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","n","getter","__esModule","d","a","definition","o","Object","defineProperty","enumerable","get","globalThis","Function","e","prop","tocScroll","header","lastScrollTop","scrollTop","GO_TO_TOP_OFFSET","cycleThemeOnce","currentTheme","localStorage","getItem","mode","matchMedia","matches","console","error","dataset","theme","setItem","log","buttons","getElementsByClassName","from","btn","setupTheme","last_known_scroll_position","ticking","scrollY","positionY","floor","scrollHandlerForBackToTop","scrollTo","querySelector","scrollHandlerForTOC","scroll","setupScrollHandler","recursive","rem","getComputedStyle","fontSize","height"],"sourceRoot":""} \ No newline at end of file diff --git a/_static/searchtools.js b/_static/searchtools.js new file mode 100644 index 00000000..7918c3fa --- /dev/null +++ b/_static/searchtools.js @@ -0,0 +1,574 @@ +/* + * searchtools.js + * ~~~~~~~~~~~~~~~~ + * + * Sphinx JavaScript utilities for the full-text search. + * + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ +"use strict"; + +/** + * Simple result scoring code. + */ +if (typeof Scorer === "undefined") { + var Scorer = { + // Implement the following function to further tweak the score for each result + // The function takes a result array [docname, title, anchor, descr, score, filename] + // and returns the new score. + /* + score: result => { + const [docname, title, anchor, descr, score, filename] = result + return score + }, + */ + + // 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, + }; +} + +const _removeChildren = (element) => { + while (element && element.lastChild) element.removeChild(element.lastChild); +}; + +/** + * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#escaping + */ +const _escapeRegExp = (string) => + string.replace(/[.*+\-?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string + +const _displayItem = (item, searchTerms, highlightTerms) => { + const docBuilder = DOCUMENTATION_OPTIONS.BUILDER; + const docFileSuffix = DOCUMENTATION_OPTIONS.FILE_SUFFIX; + const docLinkSuffix = DOCUMENTATION_OPTIONS.LINK_SUFFIX; + const showSearchSummary = DOCUMENTATION_OPTIONS.SHOW_SEARCH_SUMMARY; + const contentRoot = document.documentElement.dataset.content_root; + + const [docName, title, anchor, descr, score, _filename] = item; + + let listItem = document.createElement("li"); + let requestUrl; + let linkUrl; + if (docBuilder === "dirhtml") { + // dirhtml builder + let dirname = docName + "/"; + if (dirname.match(/\/index\/$/)) + dirname = dirname.substring(0, dirname.length - 6); + else if (dirname === "index/") dirname = ""; + requestUrl = contentRoot + dirname; + linkUrl = requestUrl; + } else { + // normal html builders + requestUrl = contentRoot + docName + docFileSuffix; + linkUrl = docName + docLinkSuffix; + } + let linkEl = listItem.appendChild(document.createElement("a")); + linkEl.href = linkUrl + anchor; + linkEl.dataset.score = score; + linkEl.innerHTML = title; + if (descr) { + listItem.appendChild(document.createElement("span")).innerHTML = + " (" + descr + ")"; + // highlight search terms in the description + if (SPHINX_HIGHLIGHT_ENABLED) // set in sphinx_highlight.js + highlightTerms.forEach((term) => _highlightText(listItem, term, "highlighted")); + } + else if (showSearchSummary) + fetch(requestUrl) + .then((responseData) => responseData.text()) + .then((data) => { + if (data) + listItem.appendChild( + Search.makeSearchSummary(data, searchTerms) + ); + // highlight search terms in the summary + if (SPHINX_HIGHLIGHT_ENABLED) // set in sphinx_highlight.js + highlightTerms.forEach((term) => _highlightText(listItem, term, "highlighted")); + }); + Search.output.appendChild(listItem); +}; +const _finishSearch = (resultCount) => { + Search.stopPulse(); + Search.title.innerText = _("Search Results"); + if (!resultCount) + Search.status.innerText = Documentation.gettext( + "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories." + ); + else + Search.status.innerText = _( + `Search finished, found ${resultCount} page(s) matching the search query.` + ); +}; +const _displayNextItem = ( + results, + resultCount, + searchTerms, + highlightTerms, +) => { + // results left, load the summary and display it + // this is intended to be dynamic (don't sub resultsCount) + if (results.length) { + _displayItem(results.pop(), searchTerms, highlightTerms); + setTimeout( + () => _displayNextItem(results, resultCount, searchTerms, highlightTerms), + 5 + ); + } + // search finished, update title and status message + else _finishSearch(resultCount); +}; + +/** + * Default splitQuery function. Can be overridden in ``sphinx.search`` with a + * custom function per language. + * + * The regular expression works by splitting the string on consecutive characters + * that are not Unicode letters, numbers, underscores, or emoji characters. + * This is the same as ``\W+`` in Python, preserving the surrogate pair area. + */ +if (typeof splitQuery === "undefined") { + var splitQuery = (query) => query + .split(/[^\p{Letter}\p{Number}_\p{Emoji_Presentation}]+/gu) + .filter(term => term) // remove remaining empty strings +} + +/** + * Search Module + */ +const Search = { + _index: null, + _queued_query: null, + _pulse_status: -1, + + htmlToText: (htmlString) => { + const htmlElement = new DOMParser().parseFromString(htmlString, 'text/html'); + htmlElement.querySelectorAll(".headerlink").forEach((el) => { el.remove() }); + const docContent = htmlElement.querySelector('[role="main"]'); + if (docContent !== undefined) return docContent.textContent; + console.warn( + "Content block not found. Sphinx search tries to obtain it via '[role=main]'. Could you check your theme or template." + ); + return ""; + }, + + init: () => { + const query = new URLSearchParams(window.location.search).get("q"); + document + .querySelectorAll('input[name="q"]') + .forEach((el) => (el.value = query)); + if (query) Search.performSearch(query); + }, + + loadIndex: (url) => + (document.body.appendChild(document.createElement("script")).src = url), + + setIndex: (index) => { + Search._index = index; + if (Search._queued_query !== null) { + const query = Search._queued_query; + Search._queued_query = null; + Search.query(query); + } + }, + + hasIndex: () => Search._index !== null, + + deferQuery: (query) => (Search._queued_query = query), + + stopPulse: () => (Search._pulse_status = -1), + + startPulse: () => { + if (Search._pulse_status >= 0) return; + + const pulse = () => { + Search._pulse_status = (Search._pulse_status + 1) % 4; + Search.dots.innerText = ".".repeat(Search._pulse_status); + if (Search._pulse_status >= 0) window.setTimeout(pulse, 500); + }; + pulse(); + }, + + /** + * perform a search for something (or wait until index is loaded) + */ + performSearch: (query) => { + // create the required interface elements + const searchText = document.createElement("h2"); + searchText.textContent = _("Searching"); + const searchSummary = document.createElement("p"); + searchSummary.classList.add("search-summary"); + searchSummary.innerText = ""; + const searchList = document.createElement("ul"); + searchList.classList.add("search"); + + const out = document.getElementById("search-results"); + Search.title = out.appendChild(searchText); + Search.dots = Search.title.appendChild(document.createElement("span")); + Search.status = out.appendChild(searchSummary); + Search.output = out.appendChild(searchList); + + const searchProgress = document.getElementById("search-progress"); + // Some themes don't use the search progress node + if (searchProgress) { + searchProgress.innerText = _("Preparing search..."); + } + Search.startPulse(); + + // index already loaded, the browser was quick! + if (Search.hasIndex()) Search.query(query); + else Search.deferQuery(query); + }, + + /** + * execute search (requires search index to be loaded) + */ + query: (query) => { + const filenames = Search._index.filenames; + const docNames = Search._index.docnames; + const titles = Search._index.titles; + const allTitles = Search._index.alltitles; + const indexEntries = Search._index.indexentries; + + // stem the search terms and add them to the correct list + const stemmer = new Stemmer(); + const searchTerms = new Set(); + const excludedTerms = new Set(); + const highlightTerms = new Set(); + const objectTerms = new Set(splitQuery(query.toLowerCase().trim())); + splitQuery(query.trim()).forEach((queryTerm) => { + const queryTermLower = queryTerm.toLowerCase(); + + // maybe skip this "word" + // stopwords array is from language_data.js + if ( + stopwords.indexOf(queryTermLower) !== -1 || + queryTerm.match(/^\d+$/) + ) + return; + + // stem the word + let word = stemmer.stemWord(queryTermLower); + // select the correct list + if (word[0] === "-") excludedTerms.add(word.substr(1)); + else { + searchTerms.add(word); + highlightTerms.add(queryTermLower); + } + }); + + if (SPHINX_HIGHLIGHT_ENABLED) { // set in sphinx_highlight.js + localStorage.setItem("sphinx_highlight_terms", [...highlightTerms].join(" ")) + } + + // console.debug("SEARCH: searching for:"); + // console.info("required: ", [...searchTerms]); + // console.info("excluded: ", [...excludedTerms]); + + // array of [docname, title, anchor, descr, score, filename] + let results = []; + _removeChildren(document.getElementById("search-progress")); + + const queryLower = query.toLowerCase(); + for (const [title, foundTitles] of Object.entries(allTitles)) { + if (title.toLowerCase().includes(queryLower) && (queryLower.length >= title.length/2)) { + for (const [file, id] of foundTitles) { + let score = Math.round(100 * queryLower.length / title.length) + results.push([ + docNames[file], + titles[file] !== title ? `${titles[file]} > ${title}` : title, + id !== null ? "#" + id : "", + null, + score, + filenames[file], + ]); + } + } + } + + // search for explicit entries in index directives + for (const [entry, foundEntries] of Object.entries(indexEntries)) { + if (entry.includes(queryLower) && (queryLower.length >= entry.length/2)) { + for (const [file, id] of foundEntries) { + let score = Math.round(100 * queryLower.length / entry.length) + results.push([ + docNames[file], + titles[file], + id ? "#" + id : "", + null, + score, + filenames[file], + ]); + } + } + } + + // lookup as object + objectTerms.forEach((term) => + results.push(...Search.performObjectSearch(term, objectTerms)) + ); + + // lookup as search terms in fulltext + results.push(...Search.performTermsSearch(searchTerms, excludedTerms)); + + // let the scorer override scores with a custom scoring function + if (Scorer.score) results.forEach((item) => (item[4] = Scorer.score(item))); + + // now sort the results by score (in opposite order of appearance, since the + // display function below uses pop() to retrieve items) and then + // alphabetically + results.sort((a, b) => { + const leftScore = a[4]; + const rightScore = b[4]; + if (leftScore === rightScore) { + // same score: sort alphabetically + const leftTitle = a[1].toLowerCase(); + const rightTitle = b[1].toLowerCase(); + if (leftTitle === rightTitle) return 0; + return leftTitle > rightTitle ? -1 : 1; // inverted is intentional + } + return leftScore > rightScore ? 1 : -1; + }); + + // remove duplicate search results + // note the reversing of results, so that in the case of duplicates, the highest-scoring entry is kept + let seen = new Set(); + results = results.reverse().reduce((acc, result) => { + let resultStr = result.slice(0, 4).concat([result[5]]).map(v => String(v)).join(','); + if (!seen.has(resultStr)) { + acc.push(result); + seen.add(resultStr); + } + return acc; + }, []); + + results = results.reverse(); + + // for debugging + //Search.lastresults = results.slice(); // a copy + // console.info("search results:", Search.lastresults); + + // print the results + _displayNextItem(results, results.length, searchTerms, highlightTerms); + }, + + /** + * search for object names + */ + performObjectSearch: (object, objectTerms) => { + const filenames = Search._index.filenames; + const docNames = Search._index.docnames; + const objects = Search._index.objects; + const objNames = Search._index.objnames; + const titles = Search._index.titles; + + const results = []; + + const objectSearchCallback = (prefix, match) => { + const name = match[4] + const fullname = (prefix ? prefix + "." : "") + name; + const fullnameLower = fullname.toLowerCase(); + if (fullnameLower.indexOf(object) < 0) return; + + let score = 0; + const parts = fullnameLower.split("."); + + // check for different match types: exact matches of full name or + // "last name" (i.e. last dotted part) + if (fullnameLower === object || parts.slice(-1)[0] === object) + score += Scorer.objNameMatch; + else if (parts.slice(-1)[0].indexOf(object) > -1) + score += Scorer.objPartialMatch; // matches in last name + + const objName = objNames[match[1]][2]; + const title = titles[match[0]]; + + // If more than one term searched for, we require other words to be + // found in the name/title/description + const otherTerms = new Set(objectTerms); + otherTerms.delete(object); + if (otherTerms.size > 0) { + const haystack = `${prefix} ${name} ${objName} ${title}`.toLowerCase(); + if ( + [...otherTerms].some((otherTerm) => haystack.indexOf(otherTerm) < 0) + ) + return; + } + + let anchor = match[3]; + if (anchor === "") anchor = fullname; + else if (anchor === "-") anchor = objNames[match[1]][1] + "-" + fullname; + + const descr = objName + _(", in ") + title; + + // add custom score for some objects according to scorer + if (Scorer.objPrio.hasOwnProperty(match[2])) + score += Scorer.objPrio[match[2]]; + else score += Scorer.objPrioDefault; + + results.push([ + docNames[match[0]], + fullname, + "#" + anchor, + descr, + score, + filenames[match[0]], + ]); + }; + Object.keys(objects).forEach((prefix) => + objects[prefix].forEach((array) => + objectSearchCallback(prefix, array) + ) + ); + return results; + }, + + /** + * search for full-text terms in the index + */ + performTermsSearch: (searchTerms, excludedTerms) => { + // prepare search + const terms = Search._index.terms; + const titleTerms = Search._index.titleterms; + const filenames = Search._index.filenames; + const docNames = Search._index.docnames; + const titles = Search._index.titles; + + const scoreMap = new Map(); + const fileMap = new Map(); + + // perform the search on the required terms + searchTerms.forEach((word) => { + const files = []; + const arr = [ + { files: terms[word], score: Scorer.term }, + { files: titleTerms[word], score: Scorer.title }, + ]; + // add support for partial matches + if (word.length > 2) { + const escapedWord = _escapeRegExp(word); + Object.keys(terms).forEach((term) => { + if (term.match(escapedWord) && !terms[word]) + arr.push({ files: terms[term], score: Scorer.partialTerm }); + }); + Object.keys(titleTerms).forEach((term) => { + if (term.match(escapedWord) && !titleTerms[word]) + arr.push({ files: titleTerms[word], score: Scorer.partialTitle }); + }); + } + + // no match but word was a required one + if (arr.every((record) => record.files === undefined)) return; + + // found search word in contents + arr.forEach((record) => { + if (record.files === undefined) return; + + let recordFiles = record.files; + if (recordFiles.length === undefined) recordFiles = [recordFiles]; + files.push(...recordFiles); + + // set score for the word in each file + recordFiles.forEach((file) => { + if (!scoreMap.has(file)) scoreMap.set(file, {}); + scoreMap.get(file)[word] = record.score; + }); + }); + + // create the mapping + files.forEach((file) => { + if (fileMap.has(file) && fileMap.get(file).indexOf(word) === -1) + fileMap.get(file).push(word); + else fileMap.set(file, [word]); + }); + }); + + // now check if the files don't contain excluded terms + const results = []; + for (const [file, wordList] of fileMap) { + // check if all requirements are matched + + // as search terms with length < 3 are discarded + const filteredTermCount = [...searchTerms].filter( + (term) => term.length > 2 + ).length; + if ( + wordList.length !== searchTerms.size && + wordList.length !== filteredTermCount + ) + continue; + + // ensure that none of the excluded terms is in the search result + if ( + [...excludedTerms].some( + (term) => + terms[term] === file || + titleTerms[term] === file || + (terms[term] || []).includes(file) || + (titleTerms[term] || []).includes(file) + ) + ) + break; + + // select one (max) score for the file. + const score = Math.max(...wordList.map((w) => scoreMap.get(file)[w])); + // add result to the result list + results.push([ + docNames[file], + titles[file], + "", + null, + score, + filenames[file], + ]); + } + return results; + }, + + /** + * helper function to return a node containing the + * search summary for a given text. keywords is a list + * of stemmed words. + */ + makeSearchSummary: (htmlText, keywords) => { + const text = Search.htmlToText(htmlText); + if (text === "") return null; + + const textLower = text.toLowerCase(); + const actualStartPosition = [...keywords] + .map((k) => textLower.indexOf(k.toLowerCase())) + .filter((i) => i > -1) + .slice(-1)[0]; + const startWithContext = Math.max(actualStartPosition - 120, 0); + + const top = startWithContext === 0 ? "" : "..."; + const tail = startWithContext + 240 < text.length ? "..." : ""; + + let summary = document.createElement("p"); + summary.classList.add("context"); + summary.textContent = top + text.substr(startWithContext, 240).trim() + tail; + + return summary; + }, +}; + +_ready(Search.init); diff --git a/_static/skeleton.css b/_static/skeleton.css new file mode 100644 index 00000000..467c878c --- /dev/null +++ b/_static/skeleton.css @@ -0,0 +1,296 @@ +/* Some sane resets. */ +html { + height: 100%; +} + +body { + margin: 0; + min-height: 100%; +} + +/* All the flexbox magic! */ +body, +.sb-announcement, +.sb-content, +.sb-main, +.sb-container, +.sb-container__inner, +.sb-article-container, +.sb-footer-content, +.sb-header, +.sb-header-secondary, +.sb-footer { + display: flex; +} + +/* These order things vertically */ +body, +.sb-main, +.sb-article-container { + flex-direction: column; +} + +/* Put elements in the center */ +.sb-header, +.sb-header-secondary, +.sb-container, +.sb-content, +.sb-footer, +.sb-footer-content { + justify-content: center; +} +/* Put elements at the ends */ +.sb-article-container { + justify-content: space-between; +} + +/* These elements grow. */ +.sb-main, +.sb-content, +.sb-container, +article { + flex-grow: 1; +} + +/* Because padding making this wider is not fun */ +article { + box-sizing: border-box; +} + +/* The announcements element should never be wider than the page. */ +.sb-announcement { + max-width: 100%; +} + +.sb-sidebar-primary, +.sb-sidebar-secondary { + flex-shrink: 0; + width: 17rem; +} + +.sb-announcement__inner { + justify-content: center; + + box-sizing: border-box; + height: 3rem; + + overflow-x: auto; + white-space: nowrap; +} + +/* Sidebars, with checkbox-based toggle */ +.sb-sidebar-primary, +.sb-sidebar-secondary { + position: fixed; + height: 100%; + top: 0; +} + +.sb-sidebar-primary { + left: -17rem; + transition: left 250ms ease-in-out; +} +.sb-sidebar-secondary { + right: -17rem; + transition: right 250ms ease-in-out; +} + +.sb-sidebar-toggle { + display: none; +} +.sb-sidebar-overlay { + position: fixed; + top: 0; + width: 0; + height: 0; + + transition: width 0ms ease 250ms, height 0ms ease 250ms, opacity 250ms ease; + + opacity: 0; + background-color: rgba(0, 0, 0, 0.54); +} + +#sb-sidebar-toggle--primary:checked + ~ .sb-sidebar-overlay[for="sb-sidebar-toggle--primary"], +#sb-sidebar-toggle--secondary:checked + ~ .sb-sidebar-overlay[for="sb-sidebar-toggle--secondary"] { + width: 100%; + height: 100%; + opacity: 1; + transition: width 0ms ease, height 0ms ease, opacity 250ms ease; +} + +#sb-sidebar-toggle--primary:checked ~ .sb-container .sb-sidebar-primary { + left: 0; +} +#sb-sidebar-toggle--secondary:checked ~ .sb-container .sb-sidebar-secondary { + right: 0; +} + +/* Full-width mode */ +.drop-secondary-sidebar-for-full-width-content + .hide-when-secondary-sidebar-shown { + display: none !important; +} +.drop-secondary-sidebar-for-full-width-content .sb-sidebar-secondary { + display: none !important; +} + +/* Mobile views */ +.sb-page-width { + width: 100%; +} + +.sb-article-container, +.sb-footer-content__inner, +.drop-secondary-sidebar-for-full-width-content .sb-article, +.drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 100vw; +} + +.sb-article, +.match-content-width { + padding: 0 1rem; + box-sizing: border-box; +} + +@media (min-width: 32rem) { + .sb-article, + .match-content-width { + padding: 0 2rem; + } +} + +/* Tablet views */ +@media (min-width: 42rem) { + .sb-article-container { + width: auto; + } + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 42rem; + } + .sb-article, + .match-content-width { + width: 42rem; + } +} +@media (min-width: 46rem) { + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 46rem; + } + .sb-article, + .match-content-width { + width: 46rem; + } +} +@media (min-width: 50rem) { + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 50rem; + } + .sb-article, + .match-content-width { + width: 50rem; + } +} + +/* Tablet views */ +@media (min-width: 59rem) { + .sb-sidebar-secondary { + position: static; + } + .hide-when-secondary-sidebar-shown { + display: none !important; + } + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 59rem; + } + .sb-article, + .match-content-width { + width: 42rem; + } +} +@media (min-width: 63rem) { + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 63rem; + } + .sb-article, + .match-content-width { + width: 46rem; + } +} +@media (min-width: 67rem) { + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 67rem; + } + .sb-article, + .match-content-width { + width: 50rem; + } +} + +/* Desktop views */ +@media (min-width: 76rem) { + .sb-sidebar-primary { + position: static; + } + .hide-when-primary-sidebar-shown { + display: none !important; + } + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 59rem; + } + .sb-article, + .match-content-width { + width: 42rem; + } +} + +/* Full desktop views */ +@media (min-width: 80rem) { + .sb-article, + .match-content-width { + width: 46rem; + } + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 63rem; + } +} + +@media (min-width: 84rem) { + .sb-article, + .match-content-width { + width: 50rem; + } + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 67rem; + } +} + +@media (min-width: 88rem) { + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 67rem; + } + .sb-page-width { + width: 88rem; + } +} diff --git a/_static/sphinx_highlight.js b/_static/sphinx_highlight.js new file mode 100644 index 00000000..8a96c69a --- /dev/null +++ b/_static/sphinx_highlight.js @@ -0,0 +1,154 @@ +/* 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))); + const rest = document.createTextNode(val.substr(pos + text.length)); + parent.insertBefore( + span, + parent.insertBefore( + rest, + node.nextSibling + ) + ); + node.nodeValue = val.substr(0, pos); + /* There may be more occurrences of search term in this node. So call this + * function recursively on the remaining fragment. + */ + _highlight(rest, addItems, text, className); + + 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( + '" + ) + ); + }, + + /** + * 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(() => { + /* Do not call highlightSearchWords() when we are on the search page. + * It will highlight words from the *previous* search query. + */ + if (typeof Search === "undefined") SphinxHighlight.highlightSearchWords(); + SphinxHighlight.initEscapeListener(); +}); diff --git a/_static/styles/furo-extensions.css b/_static/styles/furo-extensions.css new file mode 100644 index 00000000..bc447f22 --- /dev/null +++ b/_static/styles/furo-extensions.css @@ -0,0 +1,2 @@ +#furo-sidebar-ad-placement{padding:var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal)}#furo-sidebar-ad-placement .ethical-sidebar{background:var(--color-background-secondary);border:none;box-shadow:none}#furo-sidebar-ad-placement .ethical-sidebar:hover{background:var(--color-background-hover)}#furo-sidebar-ad-placement .ethical-sidebar a{color:var(--color-foreground-primary)}#furo-sidebar-ad-placement .ethical-callout a{color:var(--color-foreground-secondary)!important}#furo-readthedocs-versions{background:transparent;display:block;position:static;width:100%}#furo-readthedocs-versions .rst-versions{background:#1a1c1e}#furo-readthedocs-versions .rst-current-version{background:var(--color-sidebar-item-background);cursor:unset}#furo-readthedocs-versions .rst-current-version:hover{background:var(--color-sidebar-item-background)}#furo-readthedocs-versions .rst-current-version .fa-book{color:var(--color-foreground-primary)}#furo-readthedocs-versions>.rst-other-versions{padding:0}#furo-readthedocs-versions>.rst-other-versions small{opacity:1}#furo-readthedocs-versions .injected .rst-versions{position:unset}#furo-readthedocs-versions:focus-within,#furo-readthedocs-versions:hover{box-shadow:0 0 0 1px var(--color-sidebar-background-border)}#furo-readthedocs-versions:focus-within .rst-current-version,#furo-readthedocs-versions:hover .rst-current-version{background:#1a1c1e;font-size:inherit;height:auto;line-height:inherit;padding:12px;text-align:right}#furo-readthedocs-versions:focus-within .rst-current-version .fa-book,#furo-readthedocs-versions:hover .rst-current-version .fa-book{color:#fff;float:left}#furo-readthedocs-versions:focus-within .fa-caret-down,#furo-readthedocs-versions:hover .fa-caret-down{display:none}#furo-readthedocs-versions:focus-within .injected,#furo-readthedocs-versions:focus-within .rst-current-version,#furo-readthedocs-versions:focus-within .rst-other-versions,#furo-readthedocs-versions:hover .injected,#furo-readthedocs-versions:hover .rst-current-version,#furo-readthedocs-versions:hover .rst-other-versions{display:block}#furo-readthedocs-versions:focus-within>.rst-current-version,#furo-readthedocs-versions:hover>.rst-current-version{display:none}.highlight:hover button.copybtn{color:var(--color-code-foreground)}.highlight button.copybtn{align-items:center;background-color:var(--color-code-background);border:none;color:var(--color-background-item);cursor:pointer;height:1.25em;opacity:1;right:.5rem;top:.625rem;transition:color .3s,opacity .3s;width:1.25em}.highlight button.copybtn:hover{background-color:var(--color-code-background);color:var(--color-brand-content)}.highlight button.copybtn:after{background-color:transparent;color:var(--color-code-foreground);display:none}.highlight button.copybtn.success{color:#22863a;transition:color 0ms}.highlight button.copybtn.success:after{display:block}.highlight button.copybtn svg{padding:0}body{--sd-color-primary:var(--color-brand-primary);--sd-color-primary-highlight:var(--color-brand-content);--sd-color-primary-text:var(--color-background-primary);--sd-color-shadow:rgba(0,0,0,.05);--sd-color-card-border:var(--color-card-border);--sd-color-card-border-hover:var(--color-brand-content);--sd-color-card-background:var(--color-card-background);--sd-color-card-text:var(--color-foreground-primary);--sd-color-card-header:var(--color-card-marginals-background);--sd-color-card-footer:var(--color-card-marginals-background);--sd-color-tabs-label-active:var(--color-brand-content);--sd-color-tabs-label-hover:var(--color-foreground-muted);--sd-color-tabs-label-inactive:var(--color-foreground-muted);--sd-color-tabs-underline-active:var(--color-brand-content);--sd-color-tabs-underline-hover:var(--color-foreground-border);--sd-color-tabs-underline-inactive:var(--color-background-border);--sd-color-tabs-overline:var(--color-background-border);--sd-color-tabs-underline:var(--color-background-border)}.sd-tab-content{box-shadow:0 -2px var(--sd-color-tabs-overline),0 1px var(--sd-color-tabs-underline)}.sd-card{box-shadow:0 .1rem .25rem var(--sd-color-shadow),0 0 .0625rem rgba(0,0,0,.1)}.sd-shadow-sm{box-shadow:0 .1rem .25rem var(--sd-color-shadow),0 0 .0625rem rgba(0,0,0,.1)!important}.sd-shadow-md{box-shadow:0 .3rem .75rem var(--sd-color-shadow),0 0 .0625rem rgba(0,0,0,.1)!important}.sd-shadow-lg{box-shadow:0 .6rem 1.5rem var(--sd-color-shadow),0 0 .0625rem rgba(0,0,0,.1)!important}.sd-card-hover:hover{transform:none}.sd-cards-carousel{gap:.25rem;padding:.25rem}body{--tabs--label-text:var(--color-foreground-muted);--tabs--label-text--hover:var(--color-foreground-muted);--tabs--label-text--active:var(--color-brand-content);--tabs--label-text--active--hover:var(--color-brand-content);--tabs--label-background:transparent;--tabs--label-background--hover:transparent;--tabs--label-background--active:transparent;--tabs--label-background--active--hover:transparent;--tabs--padding-x:0.25em;--tabs--margin-x:1em;--tabs--border:var(--color-background-border);--tabs--label-border:transparent;--tabs--label-border--hover:var(--color-foreground-muted);--tabs--label-border--active:var(--color-brand-content);--tabs--label-border--active--hover:var(--color-brand-content)}[role=main] .container{max-width:none;padding-left:0;padding-right:0}.shadow.docutils{border:none;box-shadow:0 .2rem .5rem rgba(0,0,0,.05),0 0 .0625rem rgba(0,0,0,.1)!important}.sphinx-bs .card{background-color:var(--color-background-secondary);color:var(--color-foreground)} +/*# sourceMappingURL=furo-extensions.css.map*/ \ No newline at end of file diff --git a/_static/styles/furo-extensions.css.map b/_static/styles/furo-extensions.css.map new file mode 100644 index 00000000..9ba5637f --- /dev/null +++ b/_static/styles/furo-extensions.css.map @@ -0,0 +1 @@ +{"version":3,"file":"styles/furo-extensions.css","mappings":"AAGA,2BACE,oFACA,4CAKE,6CAHA,YACA,eAEA,CACA,kDACE,yCAEF,8CACE,sCAEJ,8CACE,kDAEJ,2BAGE,uBACA,cAHA,gBACA,UAEA,CAGA,yCACE,mBAEF,gDAEE,gDADA,YACA,CACA,sDACE,gDACF,yDACE,sCAEJ,+CACE,UACA,qDACE,UAGF,mDACE,eAEJ,yEAEE,4DAEA,mHASE,mBAPA,kBAEA,YADA,oBAGA,aADA,gBAIA,CAEA,qIAEE,WADA,UACA,CAEJ,uGACE,aAEF,iUAGE,cAEF,mHACE,aC1EJ,gCACE,mCAEF,0BAKE,mBAUA,8CACA,YAFA,mCAKA,eAZA,cALA,UASA,YADA,YAYA,iCAdA,YAcA,CAEA,gCAEE,8CADA,gCACA,CAEF,gCAGE,6BADA,mCADA,YAEA,CAEF,kCAEE,cADA,oBACA,CACA,wCACE,cAEJ,8BACE,UC5CN,KAEE,6CAA8C,CAC9C,uDAAwD,CACxD,uDAAwD,CAGxD,iCAAsC,CAGtC,+CAAgD,CAChD,uDAAwD,CACxD,uDAAwD,CACxD,oDAAqD,CACrD,6DAA8D,CAC9D,6DAA8D,CAG9D,uDAAwD,CACxD,yDAA0D,CAC1D,4DAA6D,CAC7D,2DAA4D,CAC5D,8DAA+D,CAC/D,iEAAkE,CAClE,uDAAwD,CACxD,wDAAyD,CAG3D,gBACE,qFAGF,SACE,6EAEF,cACE,uFAEF,cACE,uFAEF,cACE,uFAGF,qBACE,eAEF,mBACE,WACA,eChDF,KACE,gDAAiD,CACjD,uDAAwD,CACxD,qDAAsD,CACtD,4DAA6D,CAC7D,oCAAqC,CACrC,2CAA4C,CAC5C,4CAA6C,CAC7C,mDAAoD,CACpD,wBAAyB,CACzB,oBAAqB,CACrB,6CAA8C,CAC9C,gCAAiC,CACjC,yDAA0D,CAC1D,uDAAwD,CACxD,8DAA+D,CCbjE,uBACE,eACA,eACA,gBAGF,iBACE,YACA,+EAGF,iBACE,mDACA","sources":["webpack:///./src/furo/assets/styles/extensions/_readthedocs.sass","webpack:///./src/furo/assets/styles/extensions/_copybutton.sass","webpack:///./src/furo/assets/styles/extensions/_sphinx-design.sass","webpack:///./src/furo/assets/styles/extensions/_sphinx-inline-tabs.sass","webpack:///./src/furo/assets/styles/extensions/_sphinx-panels.sass"],"sourcesContent":["// This file contains the styles used for tweaking how ReadTheDoc's embedded\n// contents would show up inside the theme.\n\n#furo-sidebar-ad-placement\n padding: var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal)\n .ethical-sidebar\n // Remove the border and box-shadow.\n border: none\n box-shadow: none\n // Manage the background colors.\n background: var(--color-background-secondary)\n &:hover\n background: var(--color-background-hover)\n // Ensure the text is legible.\n a\n color: var(--color-foreground-primary)\n\n .ethical-callout a\n color: var(--color-foreground-secondary) !important\n\n#furo-readthedocs-versions\n position: static\n width: 100%\n background: transparent\n display: block\n\n // Make the background color fit with the theme's aesthetic.\n .rst-versions\n background: rgb(26, 28, 30)\n\n .rst-current-version\n cursor: unset\n background: var(--color-sidebar-item-background)\n &:hover\n background: var(--color-sidebar-item-background)\n .fa-book\n color: var(--color-foreground-primary)\n\n > .rst-other-versions\n padding: 0\n small\n opacity: 1\n\n .injected\n .rst-versions\n position: unset\n\n &:hover,\n &:focus-within\n box-shadow: 0 0 0 1px var(--color-sidebar-background-border)\n\n .rst-current-version\n // Undo the tweaks done in RTD's CSS\n font-size: inherit\n line-height: inherit\n height: auto\n text-align: right\n padding: 12px\n\n // Match the rest of the body\n background: #1a1c1e\n\n .fa-book\n float: left\n color: white\n\n .fa-caret-down\n display: none\n\n .rst-current-version,\n .rst-other-versions,\n .injected\n display: block\n\n > .rst-current-version\n display: none\n",".highlight\n &:hover button.copybtn\n color: var(--color-code-foreground)\n\n button.copybtn\n // Make it visible\n opacity: 1\n\n // Align things correctly\n align-items: center\n\n height: 1.25em\n width: 1.25em\n\n top: 0.625rem // $code-spacing-vertical\n right: 0.5rem\n\n // Make it look better\n color: var(--color-background-item)\n background-color: var(--color-code-background)\n border: none\n\n // Change to cursor to make it obvious that you can click on it\n cursor: pointer\n\n // Transition smoothly, for aesthetics\n transition: color 300ms, opacity 300ms\n\n &:hover\n color: var(--color-brand-content)\n background-color: var(--color-code-background)\n\n &::after\n display: none\n color: var(--color-code-foreground)\n background-color: transparent\n\n &.success\n transition: color 0ms\n color: #22863a\n &::after\n display: block\n\n svg\n padding: 0\n","body\n // Colors\n --sd-color-primary: var(--color-brand-primary)\n --sd-color-primary-highlight: var(--color-brand-content)\n --sd-color-primary-text: var(--color-background-primary)\n\n // Shadows\n --sd-color-shadow: rgba(0, 0, 0, 0.05)\n\n // Cards\n --sd-color-card-border: var(--color-card-border)\n --sd-color-card-border-hover: var(--color-brand-content)\n --sd-color-card-background: var(--color-card-background)\n --sd-color-card-text: var(--color-foreground-primary)\n --sd-color-card-header: var(--color-card-marginals-background)\n --sd-color-card-footer: var(--color-card-marginals-background)\n\n // Tabs\n --sd-color-tabs-label-active: var(--color-brand-content)\n --sd-color-tabs-label-hover: var(--color-foreground-muted)\n --sd-color-tabs-label-inactive: var(--color-foreground-muted)\n --sd-color-tabs-underline-active: var(--color-brand-content)\n --sd-color-tabs-underline-hover: var(--color-foreground-border)\n --sd-color-tabs-underline-inactive: var(--color-background-border)\n --sd-color-tabs-overline: var(--color-background-border)\n --sd-color-tabs-underline: var(--color-background-border)\n\n// Tabs\n.sd-tab-content\n box-shadow: 0 -2px var(--sd-color-tabs-overline), 0 1px var(--sd-color-tabs-underline)\n\n// Shadows\n.sd-card // Have a shadow by default\n box-shadow: 0 0.1rem 0.25rem var(--sd-color-shadow), 0 0 0.0625rem rgba(0, 0, 0, 0.1)\n\n.sd-shadow-sm\n box-shadow: 0 0.1rem 0.25rem var(--sd-color-shadow), 0 0 0.0625rem rgba(0, 0, 0, 0.1) !important\n\n.sd-shadow-md\n box-shadow: 0 0.3rem 0.75rem var(--sd-color-shadow), 0 0 0.0625rem rgba(0, 0, 0, 0.1) !important\n\n.sd-shadow-lg\n box-shadow: 0 0.6rem 1.5rem var(--sd-color-shadow), 0 0 0.0625rem rgba(0, 0, 0, 0.1) !important\n\n// Cards\n.sd-card-hover:hover // Don't change scale on hover\n transform: none\n\n.sd-cards-carousel // Have a bit of gap in the carousel by default\n gap: 0.25rem\n padding: 0.25rem\n","// This file contains styles to tweak sphinx-inline-tabs to work well with Furo.\n\nbody\n --tabs--label-text: var(--color-foreground-muted)\n --tabs--label-text--hover: var(--color-foreground-muted)\n --tabs--label-text--active: var(--color-brand-content)\n --tabs--label-text--active--hover: var(--color-brand-content)\n --tabs--label-background: transparent\n --tabs--label-background--hover: transparent\n --tabs--label-background--active: transparent\n --tabs--label-background--active--hover: transparent\n --tabs--padding-x: 0.25em\n --tabs--margin-x: 1em\n --tabs--border: var(--color-background-border)\n --tabs--label-border: transparent\n --tabs--label-border--hover: var(--color-foreground-muted)\n --tabs--label-border--active: var(--color-brand-content)\n --tabs--label-border--active--hover: var(--color-brand-content)\n","// This file contains styles to tweak sphinx-panels to work well with Furo.\n\n// sphinx-panels includes Bootstrap 4, which uses .container which can conflict\n// with docutils' `.. container::` directive.\n[role=\"main\"] .container\n max-width: initial\n padding-left: initial\n padding-right: initial\n\n// Make the panels look nicer!\n.shadow.docutils\n border: none\n box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.05), 0 0 0.0625rem rgba(0, 0, 0, 0.1) !important\n\n// Make panel colors respond to dark mode\n.sphinx-bs .card\n background-color: var(--color-background-secondary)\n color: var(--color-foreground)\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/_static/styles/furo.css b/_static/styles/furo.css new file mode 100644 index 00000000..3d29a218 --- /dev/null +++ b/_static/styles/furo.css @@ -0,0 +1,2 @@ +/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}@media print{.content-icon-container,.headerlink,.mobile-header,.related-pages{display:none!important}.highlight{border:.1pt solid var(--color-foreground-border)}a,blockquote,dl,ol,pre,table,ul{page-break-inside:avoid}caption,figure,h1,h2,h3,h4,h5,h6,img{page-break-after:avoid;page-break-inside:avoid}dl,ol,ul{page-break-before:avoid}}.visually-hidden{clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}:-moz-focusring{outline:auto}body{--font-stack:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;--font-stack--monospace:"SFMono-Regular",Menlo,Consolas,Monaco,Liberation Mono,Lucida Console,monospace;--font-size--normal:100%;--font-size--small:87.5%;--font-size--small--2:81.25%;--font-size--small--3:75%;--font-size--small--4:62.5%;--sidebar-caption-font-size:var(--font-size--small--2);--sidebar-item-font-size:var(--font-size--small);--sidebar-search-input-font-size:var(--font-size--small);--toc-font-size:var(--font-size--small--3);--toc-font-size--mobile:var(--font-size--normal);--toc-title-font-size:var(--font-size--small--4);--admonition-font-size:0.8125rem;--admonition-title-font-size:0.8125rem;--code-font-size:var(--font-size--small--2);--api-font-size:var(--font-size--small);--header-height:calc(var(--sidebar-item-line-height) + var(--sidebar-item-spacing-vertical)*4);--header-padding:0.5rem;--sidebar-tree-space-above:1.5rem;--sidebar-caption-space-above:1rem;--sidebar-item-line-height:1rem;--sidebar-item-spacing-vertical:0.5rem;--sidebar-item-spacing-horizontal:1rem;--sidebar-item-height:calc(var(--sidebar-item-line-height) + var(--sidebar-item-spacing-vertical)*2);--sidebar-expander-width:var(--sidebar-item-height);--sidebar-search-space-above:0.5rem;--sidebar-search-input-spacing-vertical:0.5rem;--sidebar-search-input-spacing-horizontal:0.5rem;--sidebar-search-input-height:1rem;--sidebar-search-icon-size:var(--sidebar-search-input-height);--toc-title-padding:0.25rem 0;--toc-spacing-vertical:1.5rem;--toc-spacing-horizontal:1.5rem;--toc-item-spacing-vertical:0.4rem;--toc-item-spacing-horizontal:1rem;--icon-search:url('data:image/svg+xml;charset=utf-8,');--icon-pencil:url('data:image/svg+xml;charset=utf-8,');--icon-abstract:url('data:image/svg+xml;charset=utf-8,');--icon-info:url('data:image/svg+xml;charset=utf-8,');--icon-flame:url('data:image/svg+xml;charset=utf-8,');--icon-question:url('data:image/svg+xml;charset=utf-8,');--icon-warning:url('data:image/svg+xml;charset=utf-8,');--icon-failure:url('data:image/svg+xml;charset=utf-8,');--icon-spark:url('data:image/svg+xml;charset=utf-8,');--color-admonition-title--caution:#ff9100;--color-admonition-title-background--caution:rgba(255,145,0,.2);--color-admonition-title--warning:#ff9100;--color-admonition-title-background--warning:rgba(255,145,0,.2);--color-admonition-title--danger:#ff5252;--color-admonition-title-background--danger:rgba(255,82,82,.2);--color-admonition-title--attention:#ff5252;--color-admonition-title-background--attention:rgba(255,82,82,.2);--color-admonition-title--error:#ff5252;--color-admonition-title-background--error:rgba(255,82,82,.2);--color-admonition-title--hint:#00c852;--color-admonition-title-background--hint:rgba(0,200,82,.2);--color-admonition-title--tip:#00c852;--color-admonition-title-background--tip:rgba(0,200,82,.2);--color-admonition-title--important:#00bfa5;--color-admonition-title-background--important:rgba(0,191,165,.2);--color-admonition-title--note:#00b0ff;--color-admonition-title-background--note:rgba(0,176,255,.2);--color-admonition-title--seealso:#448aff;--color-admonition-title-background--seealso:rgba(68,138,255,.2);--color-admonition-title--admonition-todo:grey;--color-admonition-title-background--admonition-todo:hsla(0,0%,50%,.2);--color-admonition-title:#651fff;--color-admonition-title-background:rgba(101,31,255,.2);--icon-admonition-default:var(--icon-abstract);--color-topic-title:#14b8a6;--color-topic-title-background:rgba(20,184,166,.2);--icon-topic-default:var(--icon-pencil);--color-problematic:#b30000;--color-foreground-primary:#000;--color-foreground-secondary:#5a5c63;--color-foreground-muted:#646776;--color-foreground-border:#878787;--color-background-primary:#fff;--color-background-secondary:#f8f9fb;--color-background-hover:#efeff4;--color-background-hover--transparent:#efeff400;--color-background-border:#eeebee;--color-background-item:#ccc;--color-announcement-background:#000000dd;--color-announcement-text:#eeebee;--color-brand-primary:#2962ff;--color-brand-content:#2a5adf;--color-api-background:var(--color-background-hover--transparent);--color-api-background-hover:var(--color-background-hover);--color-api-overall:var(--color-foreground-secondary);--color-api-name:var(--color-problematic);--color-api-pre-name:var(--color-problematic);--color-api-paren:var(--color-foreground-secondary);--color-api-keyword:var(--color-foreground-primary);--color-highlight-on-target:#ffc;--color-inline-code-background:var(--color-background-secondary);--color-highlighted-background:#def;--color-highlighted-text:var(--color-foreground-primary);--color-guilabel-background:#ddeeff80;--color-guilabel-border:#bedaf580;--color-guilabel-text:var(--color-foreground-primary);--color-admonition-background:transparent;--color-table-header-background:var(--color-background-secondary);--color-table-border:var(--color-background-border);--color-card-border:var(--color-background-secondary);--color-card-background:transparent;--color-card-marginals-background:var(--color-background-secondary);--color-header-background:var(--color-background-primary);--color-header-border:var(--color-background-border);--color-header-text:var(--color-foreground-primary);--color-sidebar-background:var(--color-background-secondary);--color-sidebar-background-border:var(--color-background-border);--color-sidebar-brand-text:var(--color-foreground-primary);--color-sidebar-caption-text:var(--color-foreground-muted);--color-sidebar-link-text:var(--color-foreground-secondary);--color-sidebar-link-text--top-level:var(--color-brand-primary);--color-sidebar-item-background:var(--color-sidebar-background);--color-sidebar-item-background--current:var( --color-sidebar-item-background );--color-sidebar-item-background--hover:linear-gradient(90deg,var(--color-background-hover--transparent) 0%,var(--color-background-hover) var(--sidebar-item-spacing-horizontal),var(--color-background-hover) 100%);--color-sidebar-item-expander-background:transparent;--color-sidebar-item-expander-background--hover:var( --color-background-hover );--color-sidebar-search-text:var(--color-foreground-primary);--color-sidebar-search-background:var(--color-background-secondary);--color-sidebar-search-background--focus:var(--color-background-primary);--color-sidebar-search-border:var(--color-background-border);--color-sidebar-search-icon:var(--color-foreground-muted);--color-toc-background:var(--color-background-primary);--color-toc-title-text:var(--color-foreground-muted);--color-toc-item-text:var(--color-foreground-secondary);--color-toc-item-text--hover:var(--color-foreground-primary);--color-toc-item-text--active:var(--color-brand-primary);--color-content-foreground:var(--color-foreground-primary);--color-content-background:transparent;--color-link:var(--color-brand-content);--color-link--hover:var(--color-brand-content);--color-link-underline:var(--color-background-border);--color-link-underline--hover:var(--color-foreground-border)}.only-light{display:block!important}html body .only-dark{display:none!important}@media not print{body[data-theme=dark]{--color-problematic:#ee5151;--color-foreground-primary:#ffffffcc;--color-foreground-secondary:#9ca0a5;--color-foreground-muted:#81868d;--color-foreground-border:#666;--color-background-primary:#131416;--color-background-secondary:#1a1c1e;--color-background-hover:#1e2124;--color-background-hover--transparent:#1e212400;--color-background-border:#303335;--color-background-item:#444;--color-announcement-background:#000000dd;--color-announcement-text:#eeebee;--color-brand-primary:#2b8cee;--color-brand-content:#368ce2;--color-highlighted-background:#083563;--color-guilabel-background:#08356380;--color-guilabel-border:#13395f80;--color-api-keyword:var(--color-foreground-secondary);--color-highlight-on-target:#330;--color-admonition-background:#18181a;--color-card-border:var(--color-background-secondary);--color-card-background:#18181a;--color-card-marginals-background:var(--color-background-hover)}html body[data-theme=dark] .only-light{display:none!important}body[data-theme=dark] .only-dark{display:block!important}@media(prefers-color-scheme:dark){body:not([data-theme=light]){--color-problematic:#ee5151;--color-foreground-primary:#ffffffcc;--color-foreground-secondary:#9ca0a5;--color-foreground-muted:#81868d;--color-foreground-border:#666;--color-background-primary:#131416;--color-background-secondary:#1a1c1e;--color-background-hover:#1e2124;--color-background-hover--transparent:#1e212400;--color-background-border:#303335;--color-background-item:#444;--color-announcement-background:#000000dd;--color-announcement-text:#eeebee;--color-brand-primary:#2b8cee;--color-brand-content:#368ce2;--color-highlighted-background:#083563;--color-guilabel-background:#08356380;--color-guilabel-border:#13395f80;--color-api-keyword:var(--color-foreground-secondary);--color-highlight-on-target:#330;--color-admonition-background:#18181a;--color-card-border:var(--color-background-secondary);--color-card-background:#18181a;--color-card-marginals-background:var(--color-background-hover)}html body:not([data-theme=light]) .only-light{display:none!important}body:not([data-theme=light]) .only-dark{display:block!important}}}body[data-theme=auto] .theme-toggle svg.theme-icon-when-auto,body[data-theme=dark] .theme-toggle svg.theme-icon-when-dark,body[data-theme=light] .theme-toggle svg.theme-icon-when-light{display:block}body{font-family:var(--font-stack)}code,kbd,pre,samp{font-family:var(--font-stack--monospace)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}article{line-height:1.5}h1,h2,h3,h4,h5,h6{border-radius:.5rem;font-weight:700;line-height:1.25;margin:.5rem -.5rem;padding-left:.5rem;padding-right:.5rem}h1+p,h2+p,h3+p,h4+p,h5+p,h6+p{margin-top:0}h1{font-size:2.5em;margin-bottom:1rem}h1,h2{margin-top:1.75rem}h2{font-size:2em}h3{font-size:1.5em}h4{font-size:1.25em}h5{font-size:1.125em}h6{font-size:1em}small{font-size:80%;opacity:75%}p{margin-bottom:.75rem;margin-top:.5rem}hr.docutils{background-color:var(--color-background-border);border:0;height:1px;margin:2rem 0;padding:0}.centered{text-align:center}a{color:var(--color-link);text-decoration:underline;text-decoration-color:var(--color-link-underline)}a:hover{color:var(--color-link--hover);text-decoration-color:var(--color-link-underline--hover)}a.muted-link{color:inherit}a.muted-link:hover{color:var(--color-link);text-decoration-color:var(--color-link-underline--hover)}html{overflow-x:hidden;overflow-y:scroll;scroll-behavior:smooth}.sidebar-scroll,.toc-scroll,article[role=main] *{scrollbar-color:var(--color-foreground-border) transparent;scrollbar-width:thin}.sidebar-scroll::-webkit-scrollbar,.toc-scroll::-webkit-scrollbar,article[role=main] ::-webkit-scrollbar{height:.25rem;width:.25rem}.sidebar-scroll::-webkit-scrollbar-thumb,.toc-scroll::-webkit-scrollbar-thumb,article[role=main] ::-webkit-scrollbar-thumb{background-color:var(--color-foreground-border);border-radius:.125rem}body,html{background:var(--color-background-primary);color:var(--color-foreground-primary);height:100%}article{background:var(--color-content-background);color:var(--color-content-foreground);overflow-wrap:break-word}.page{display:flex;min-height:100%}.mobile-header{background-color:var(--color-header-background);border-bottom:1px solid var(--color-header-border);color:var(--color-header-text);display:none;height:var(--header-height);width:100%;z-index:10}.mobile-header.scrolled{border-bottom:none;box-shadow:0 0 .2rem rgba(0,0,0,.1),0 .2rem .4rem rgba(0,0,0,.2)}.mobile-header .header-center a{color:var(--color-header-text);text-decoration:none}.main{display:flex;flex:1}.sidebar-drawer{background:var(--color-sidebar-background);border-right:1px solid var(--color-sidebar-background-border);box-sizing:border-box;display:flex;justify-content:flex-end;min-width:15em;width:calc(50% - 26em)}.sidebar-container,.toc-drawer{box-sizing:border-box;width:15em}.toc-drawer{background:var(--color-toc-background);padding-right:1rem}.sidebar-sticky,.toc-sticky{display:flex;flex-direction:column;height:min(100%,100vh);height:100vh;position:sticky;top:0}.sidebar-scroll,.toc-scroll{flex-grow:1;flex-shrink:1;overflow:auto;scroll-behavior:smooth}.content{display:flex;flex-direction:column;justify-content:space-between;padding:0 3em;width:46em}.icon{display:inline-block;height:1rem;width:1rem}.icon svg{height:100%;width:100%}.announcement{align-items:center;background-color:var(--color-announcement-background);color:var(--color-announcement-text);display:flex;height:var(--header-height);overflow-x:auto}.announcement+.page{min-height:calc(100% - var(--header-height))}.announcement-content{box-sizing:border-box;min-width:100%;padding:.5rem;text-align:center;white-space:nowrap}.announcement-content a{color:var(--color-announcement-text);text-decoration-color:var(--color-announcement-text)}.announcement-content a:hover{color:var(--color-announcement-text);text-decoration-color:var(--color-link--hover)}.no-js .theme-toggle-container{display:none}.theme-toggle-container{vertical-align:middle}.theme-toggle{background:transparent;border:none;cursor:pointer;padding:0}.theme-toggle svg{color:var(--color-foreground-primary);display:none;height:1rem;vertical-align:middle;width:1rem}.theme-toggle-header{float:left;padding:1rem .5rem}.nav-overlay-icon,.toc-overlay-icon{cursor:pointer;display:none}.nav-overlay-icon .icon,.toc-overlay-icon .icon{color:var(--color-foreground-secondary);height:1rem;width:1rem}.nav-overlay-icon,.toc-header-icon{align-items:center;justify-content:center}.toc-content-icon{height:1.5rem;width:1.5rem}.content-icon-container{display:flex;float:right;gap:.5rem;margin-bottom:1rem;margin-left:1rem;margin-top:1.5rem}.content-icon-container .edit-this-page svg{color:inherit;height:1rem;width:1rem}.sidebar-toggle{display:none;position:absolute}.sidebar-toggle[name=__toc]{left:20px}.sidebar-toggle:checked{left:40px}.overlay{background-color:rgba(0,0,0,.54);height:0;opacity:0;position:fixed;top:0;transition:width 0ms,height 0ms,opacity .25s ease-out;width:0}.sidebar-overlay{z-index:20}.toc-overlay{z-index:40}.sidebar-drawer{transition:left .25s ease-in-out;z-index:30}.toc-drawer{transition:right .25s ease-in-out;z-index:50}#__navigation:checked~.sidebar-overlay{height:100%;opacity:1;width:100%}#__navigation:checked~.page .sidebar-drawer{left:0;top:0}#__toc:checked~.toc-overlay{height:100%;opacity:1;width:100%}#__toc:checked~.page .toc-drawer{right:0;top:0}.back-to-top{background:var(--color-background-primary);border-radius:1rem;box-shadow:0 .2rem .5rem rgba(0,0,0,.05),0 0 1px 0 hsla(220,9%,46%,.502);display:none;font-size:.8125rem;left:0;margin-left:50%;padding:.5rem .75rem .5rem .5rem;position:fixed;text-decoration:none;top:1rem;transform:translateX(-50%);z-index:10}.back-to-top svg{fill:currentColor;display:inline-block;height:1rem;width:1rem}.back-to-top span{margin-left:.25rem}.show-back-to-top .back-to-top{align-items:center;display:flex}@media(min-width:97em){html{font-size:110%}}@media(max-width:82em){.toc-content-icon{display:flex}.toc-drawer{border-left:1px solid var(--color-background-muted);height:100vh;position:fixed;right:-15em;top:0}.toc-tree{border-left:none;font-size:var(--toc-font-size--mobile)}.sidebar-drawer{width:calc(50% - 18.5em)}}@media(max-width:67em){.nav-overlay-icon{display:flex}.sidebar-drawer{height:100vh;left:-15em;position:fixed;top:0;width:15em}.toc-header-icon{display:flex}.theme-toggle-content,.toc-content-icon{display:none}.theme-toggle-header{display:block}.mobile-header{align-items:center;display:flex;justify-content:space-between;position:sticky;top:0}.mobile-header .header-left,.mobile-header .header-right{display:flex;height:var(--header-height);padding:0 var(--header-padding)}.mobile-header .header-left label,.mobile-header .header-right label{height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.nav-overlay-icon .icon,.theme-toggle svg{height:1.25rem;width:1.25rem}:target{scroll-margin-top:var(--header-height)}.back-to-top{top:calc(var(--header-height) + .5rem)}.page{flex-direction:column;justify-content:center}.content{margin-left:auto;margin-right:auto}}@media(max-width:52em){.content{overflow-x:auto;width:100%}}@media(max-width:46em){.content{padding:0 1em}article aside.sidebar{float:none;margin:1rem 0;width:100%}}.admonition,.topic{background:var(--color-admonition-background);border-radius:.2rem;box-shadow:0 .2rem .5rem rgba(0,0,0,.05),0 0 .0625rem rgba(0,0,0,.1);font-size:var(--admonition-font-size);margin:1rem auto;overflow:hidden;padding:0 .5rem .5rem;page-break-inside:avoid}.admonition>:nth-child(2),.topic>:nth-child(2){margin-top:0}.admonition>:last-child,.topic>:last-child{margin-bottom:0}.admonition p.admonition-title,p.topic-title{font-size:var(--admonition-title-font-size);font-weight:500;line-height:1.3;margin:0 -.5rem .5rem;padding:.4rem .5rem .4rem 2rem;position:relative}.admonition p.admonition-title:before,p.topic-title:before{content:"";height:1rem;left:.5rem;position:absolute;width:1rem}p.admonition-title{background-color:var(--color-admonition-title-background)}p.admonition-title:before{background-color:var(--color-admonition-title);-webkit-mask-image:var(--icon-admonition-default);mask-image:var(--icon-admonition-default);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}p.topic-title{background-color:var(--color-topic-title-background)}p.topic-title:before{background-color:var(--color-topic-title);-webkit-mask-image:var(--icon-topic-default);mask-image:var(--icon-topic-default);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.admonition{border-left:.2rem solid var(--color-admonition-title)}.admonition.caution{border-left-color:var(--color-admonition-title--caution)}.admonition.caution>.admonition-title{background-color:var(--color-admonition-title-background--caution)}.admonition.caution>.admonition-title:before{background-color:var(--color-admonition-title--caution);-webkit-mask-image:var(--icon-spark);mask-image:var(--icon-spark)}.admonition.warning{border-left-color:var(--color-admonition-title--warning)}.admonition.warning>.admonition-title{background-color:var(--color-admonition-title-background--warning)}.admonition.warning>.admonition-title:before{background-color:var(--color-admonition-title--warning);-webkit-mask-image:var(--icon-warning);mask-image:var(--icon-warning)}.admonition.danger{border-left-color:var(--color-admonition-title--danger)}.admonition.danger>.admonition-title{background-color:var(--color-admonition-title-background--danger)}.admonition.danger>.admonition-title:before{background-color:var(--color-admonition-title--danger);-webkit-mask-image:var(--icon-spark);mask-image:var(--icon-spark)}.admonition.attention{border-left-color:var(--color-admonition-title--attention)}.admonition.attention>.admonition-title{background-color:var(--color-admonition-title-background--attention)}.admonition.attention>.admonition-title:before{background-color:var(--color-admonition-title--attention);-webkit-mask-image:var(--icon-warning);mask-image:var(--icon-warning)}.admonition.error{border-left-color:var(--color-admonition-title--error)}.admonition.error>.admonition-title{background-color:var(--color-admonition-title-background--error)}.admonition.error>.admonition-title:before{background-color:var(--color-admonition-title--error);-webkit-mask-image:var(--icon-failure);mask-image:var(--icon-failure)}.admonition.hint{border-left-color:var(--color-admonition-title--hint)}.admonition.hint>.admonition-title{background-color:var(--color-admonition-title-background--hint)}.admonition.hint>.admonition-title:before{background-color:var(--color-admonition-title--hint);-webkit-mask-image:var(--icon-question);mask-image:var(--icon-question)}.admonition.tip{border-left-color:var(--color-admonition-title--tip)}.admonition.tip>.admonition-title{background-color:var(--color-admonition-title-background--tip)}.admonition.tip>.admonition-title:before{background-color:var(--color-admonition-title--tip);-webkit-mask-image:var(--icon-info);mask-image:var(--icon-info)}.admonition.important{border-left-color:var(--color-admonition-title--important)}.admonition.important>.admonition-title{background-color:var(--color-admonition-title-background--important)}.admonition.important>.admonition-title:before{background-color:var(--color-admonition-title--important);-webkit-mask-image:var(--icon-flame);mask-image:var(--icon-flame)}.admonition.note{border-left-color:var(--color-admonition-title--note)}.admonition.note>.admonition-title{background-color:var(--color-admonition-title-background--note)}.admonition.note>.admonition-title:before{background-color:var(--color-admonition-title--note);-webkit-mask-image:var(--icon-pencil);mask-image:var(--icon-pencil)}.admonition.seealso{border-left-color:var(--color-admonition-title--seealso)}.admonition.seealso>.admonition-title{background-color:var(--color-admonition-title-background--seealso)}.admonition.seealso>.admonition-title:before{background-color:var(--color-admonition-title--seealso);-webkit-mask-image:var(--icon-info);mask-image:var(--icon-info)}.admonition.admonition-todo{border-left-color:var(--color-admonition-title--admonition-todo)}.admonition.admonition-todo>.admonition-title{background-color:var(--color-admonition-title-background--admonition-todo)}.admonition.admonition-todo>.admonition-title:before{background-color:var(--color-admonition-title--admonition-todo);-webkit-mask-image:var(--icon-pencil);mask-image:var(--icon-pencil)}.admonition-todo>.admonition-title{text-transform:uppercase}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd{margin-left:2rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd>:first-child{margin-top:.125rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .field-list,dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd>:last-child{margin-bottom:.75rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .field-list>dt{font-size:var(--font-size--small);text-transform:uppercase}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .field-list dd:empty{margin-bottom:.5rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .field-list dd>ul{margin-left:-1.2rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .field-list dd>ul>li>p:nth-child(2){margin-top:0}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .field-list dd>ul>li>p+p:last-child:empty{margin-bottom:0;margin-top:0}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt{color:var(--color-api-overall)}.sig:not(.sig-inline){background:var(--color-api-background);border-radius:.25rem;font-family:var(--font-stack--monospace);font-size:var(--api-font-size);font-weight:700;margin-left:-.25rem;margin-right:-.25rem;padding:.25rem .5rem .25rem 3em;text-indent:-2.5em;transition:background .1s ease-out}.sig:not(.sig-inline):hover{background:var(--color-api-background-hover)}.sig:not(.sig-inline) a.reference .viewcode-link{font-weight:400;width:3.5rem}em.property{font-style:normal}em.property:first-child{color:var(--color-api-keyword)}.sig-name{color:var(--color-api-name)}.sig-prename{color:var(--color-api-pre-name);font-weight:400}.sig-paren{color:var(--color-api-paren)}.sig-param{font-style:normal}.versionmodified{font-style:italic}div.deprecated p,div.versionadded p,div.versionchanged p{margin-bottom:.125rem;margin-top:.125rem}.viewcode-back,.viewcode-link{float:right;text-align:right}.line-block{margin-bottom:.75rem;margin-top:.5rem}.line-block .line-block{margin-bottom:0;margin-top:0;padding-left:1rem}.code-block-caption,article p.caption,table>caption{font-size:var(--font-size--small);text-align:center}.toctree-wrapper.compound .caption,.toctree-wrapper.compound :not(.caption)>.caption-text{font-size:var(--font-size--small);margin-bottom:0;text-align:initial;text-transform:uppercase}.toctree-wrapper.compound>ul{margin-bottom:0;margin-top:0}.sig-inline,code.literal{background:var(--color-inline-code-background);border-radius:.2em;font-size:var(--font-size--small--2);padding:.1em .2em}pre.literal-block .sig-inline,pre.literal-block code.literal{font-size:inherit;padding:0}p .sig-inline,p code.literal{border:1px solid var(--color-background-border)}.sig-inline{font-family:var(--font-stack--monospace)}div[class*=" highlight-"],div[class^=highlight-]{display:flex;margin:1em 0}div[class*=" highlight-"] .table-wrapper,div[class^=highlight-] .table-wrapper,pre{margin:0;padding:0}pre{overflow:auto}article[role=main] .highlight pre{line-height:1.5}.highlight pre,pre.literal-block{font-size:var(--code-font-size);padding:.625rem .875rem}pre.literal-block{background-color:var(--color-code-background);border-radius:.2rem;color:var(--color-code-foreground);margin-bottom:1rem;margin-top:1rem}.highlight{border-radius:.2rem;width:100%}.highlight .gp,.highlight span.linenos{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.highlight .hll{display:block;margin-left:-.875rem;margin-right:-.875rem;padding-left:.875rem;padding-right:.875rem}.code-block-caption{background-color:var(--color-code-background);border-bottom:1px solid;border-radius:.25rem;border-bottom-left-radius:0;border-bottom-right-radius:0;border-color:var(--color-background-border);color:var(--color-code-foreground);display:flex;font-weight:300;padding:.625rem .875rem}.code-block-caption+div[class]{margin-top:0}.code-block-caption+div[class] pre{border-top-left-radius:0;border-top-right-radius:0}.highlighttable{display:block;width:100%}.highlighttable tbody{display:block}.highlighttable tr{display:flex}.highlighttable td.linenos{background-color:var(--color-code-background);border-bottom-left-radius:.2rem;border-top-left-radius:.2rem;color:var(--color-code-foreground);padding:.625rem 0 .625rem .875rem}.highlighttable .linenodiv{box-shadow:-.0625rem 0 var(--color-foreground-border) inset;font-size:var(--code-font-size);padding-right:.875rem}.highlighttable td.code{display:block;flex:1;overflow:hidden;padding:0}.highlighttable td.code .highlight{border-bottom-left-radius:0;border-top-left-radius:0}.highlight span.linenos{box-shadow:-.0625rem 0 var(--color-foreground-border) inset;display:inline-block;margin-right:.875rem;padding-left:0;padding-right:.875rem}.footnote-reference{font-size:var(--font-size--small--4);vertical-align:super}dl.footnote.brackets{color:var(--color-foreground-secondary);display:grid;font-size:var(--font-size--small);grid-template-columns:max-content auto}dl.footnote.brackets dt{margin:0}dl.footnote.brackets dt>.fn-backref{margin-left:.25rem}dl.footnote.brackets dt:after{content:":"}dl.footnote.brackets dt .brackets:before{content:"["}dl.footnote.brackets dt .brackets:after{content:"]"}dl.footnote.brackets dd{margin:0;padding:0 1rem}aside.footnote{color:var(--color-foreground-secondary);font-size:var(--font-size--small)}aside.footnote>span,div.citation>span{float:left;font-weight:500;padding-right:.25rem}aside.footnote>p,div.citation>p{margin-left:2rem}img{box-sizing:border-box;height:auto;max-width:100%}article .figure,article figure{border-radius:.2rem;margin:0}article .figure :last-child,article figure :last-child{margin-bottom:0}article .align-left{clear:left;float:left;margin:0 1rem 1rem}article .align-right{clear:right;float:right;margin:0 1rem 1rem}article .align-center,article .align-default{display:block;margin-left:auto;margin-right:auto;text-align:center}article table.align-default{display:table;text-align:initial}.domainindex-jumpbox,.genindex-jumpbox{border-bottom:1px solid var(--color-background-border);border-top:1px solid var(--color-background-border);padding:.25rem}.domainindex-section h2,.genindex-section h2{margin-bottom:.5rem;margin-top:.75rem}.domainindex-section ul,.genindex-section ul{margin-bottom:0;margin-top:0}ol,ul{margin-bottom:1rem;margin-top:1rem;padding-left:1.2rem}ol li>p:first-child,ul li>p:first-child{margin-bottom:.25rem;margin-top:.25rem}ol li>p:last-child,ul li>p:last-child{margin-top:.25rem}ol li>ol,ol li>ul,ul li>ol,ul li>ul{margin-bottom:.5rem;margin-top:.5rem}ol.arabic{list-style:decimal}ol.loweralpha{list-style:lower-alpha}ol.upperalpha{list-style:upper-alpha}ol.lowerroman{list-style:lower-roman}ol.upperroman{list-style:upper-roman}.simple li>ol,.simple li>ul,.toctree-wrapper li>ol,.toctree-wrapper li>ul{margin-bottom:0;margin-top:0}.field-list dt,.option-list dt,dl.footnote dt,dl.glossary dt,dl.simple dt,dl:not([class]) dt{font-weight:500;margin-top:.25rem}.field-list dt+dt,.option-list dt+dt,dl.footnote dt+dt,dl.glossary dt+dt,dl.simple dt+dt,dl:not([class]) dt+dt{margin-top:0}.field-list dt .classifier:before,.option-list dt .classifier:before,dl.footnote dt .classifier:before,dl.glossary dt .classifier:before,dl.simple dt .classifier:before,dl:not([class]) dt .classifier:before{content:":";margin-left:.2rem;margin-right:.2rem}.field-list dd ul,.field-list dd>p:first-child,.option-list dd ul,.option-list dd>p:first-child,dl.footnote dd ul,dl.footnote dd>p:first-child,dl.glossary dd ul,dl.glossary dd>p:first-child,dl.simple dd ul,dl.simple dd>p:first-child,dl:not([class]) dd ul,dl:not([class]) dd>p:first-child{margin-top:.125rem}.field-list dd ul,.option-list dd ul,dl.footnote dd ul,dl.glossary dd ul,dl.simple dd ul,dl:not([class]) dd ul{margin-bottom:.125rem}.math-wrapper{overflow-x:auto;width:100%}div.math{position:relative;text-align:center}div.math .headerlink,div.math:focus .headerlink{display:none}div.math:hover .headerlink{display:inline-block}div.math span.eqno{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);z-index:1}abbr[title]{cursor:help}.problematic{color:var(--color-problematic)}kbd:not(.compound){background-color:var(--color-background-secondary);border:1px solid var(--color-foreground-border);border-radius:.2rem;box-shadow:0 .0625rem 0 rgba(0,0,0,.2),inset 0 0 0 .125rem var(--color-background-primary);color:var(--color-foreground-primary);display:inline-block;font-size:var(--font-size--small--3);margin:0 .2rem;padding:0 .2rem;vertical-align:text-bottom}blockquote{background:var(--color-background-secondary);border-left:4px solid var(--color-background-border);margin-left:0;margin-right:0;padding:.5rem 1rem}blockquote .attribution{font-weight:600;text-align:right}blockquote.highlights,blockquote.pull-quote{font-size:1.25em}blockquote.epigraph,blockquote.pull-quote{border-left-width:0;border-radius:.5rem}blockquote.highlights{background:transparent;border-left-width:0}p .reference img{vertical-align:middle}p.rubric{font-size:1.125em;font-weight:700;line-height:1.25}dd p.rubric{font-size:var(--font-size--small);font-weight:inherit;line-height:inherit;text-transform:uppercase}article .sidebar{background-color:var(--color-background-secondary);border:1px solid var(--color-background-border);border-radius:.2rem;clear:right;float:right;margin-left:1rem;margin-right:0;width:30%}article .sidebar>*{padding-left:1rem;padding-right:1rem}article .sidebar>ol,article .sidebar>ul{padding-left:2.2rem}article .sidebar .sidebar-title{border-bottom:1px solid var(--color-background-border);font-weight:500;margin:0;padding:.5rem 1rem}.table-wrapper{margin-bottom:.5rem;margin-top:1rem;overflow-x:auto;padding:.2rem .2rem .75rem;width:100%}table.docutils{border-collapse:collapse;border-radius:.2rem;border-spacing:0;box-shadow:0 .2rem .5rem rgba(0,0,0,.05),0 0 .0625rem rgba(0,0,0,.1)}table.docutils th{background:var(--color-table-header-background)}table.docutils td,table.docutils th{border-bottom:1px solid var(--color-table-border);border-left:1px solid var(--color-table-border);border-right:1px solid var(--color-table-border);padding:0 .25rem}table.docutils td p,table.docutils th p{margin:.25rem}table.docutils td:first-child,table.docutils th:first-child{border-left:none}table.docutils td:last-child,table.docutils th:last-child{border-right:none}table.docutils td.text-left,table.docutils th.text-left{text-align:left}table.docutils td.text-right,table.docutils th.text-right{text-align:right}table.docutils td.text-center,table.docutils th.text-center{text-align:center}:target{scroll-margin-top:.5rem}@media(max-width:67em){:target{scroll-margin-top:calc(.5rem + var(--header-height))}section>span:target{scroll-margin-top:calc(.8rem + var(--header-height))}}.headerlink{font-weight:100;-webkit-user-select:none;-moz-user-select:none;user-select:none}.code-block-caption>.headerlink,dl dt>.headerlink,figcaption p>.headerlink,h1>.headerlink,h2>.headerlink,h3>.headerlink,h4>.headerlink,h5>.headerlink,h6>.headerlink,p.caption>.headerlink,table>caption>.headerlink{margin-left:.5rem;visibility:hidden}.code-block-caption:hover>.headerlink,dl dt:hover>.headerlink,figcaption p:hover>.headerlink,h1:hover>.headerlink,h2:hover>.headerlink,h3:hover>.headerlink,h4:hover>.headerlink,h5:hover>.headerlink,h6:hover>.headerlink,p.caption:hover>.headerlink,table>caption:hover>.headerlink{visibility:visible}.code-block-caption>.toc-backref,dl dt>.toc-backref,figcaption p>.toc-backref,h1>.toc-backref,h2>.toc-backref,h3>.toc-backref,h4>.toc-backref,h5>.toc-backref,h6>.toc-backref,p.caption>.toc-backref,table>caption>.toc-backref{color:inherit;text-decoration-line:none}figure:hover>figcaption>p>.headerlink,table:hover>caption>.headerlink{visibility:visible}:target>h1:first-of-type,:target>h2:first-of-type,:target>h3:first-of-type,:target>h4:first-of-type,:target>h5:first-of-type,:target>h6:first-of-type,span:target~h1:first-of-type,span:target~h2:first-of-type,span:target~h3:first-of-type,span:target~h4:first-of-type,span:target~h5:first-of-type,span:target~h6:first-of-type{background-color:var(--color-highlight-on-target)}:target>h1:first-of-type code.literal,:target>h2:first-of-type code.literal,:target>h3:first-of-type code.literal,:target>h4:first-of-type code.literal,:target>h5:first-of-type code.literal,:target>h6:first-of-type code.literal,span:target~h1:first-of-type code.literal,span:target~h2:first-of-type code.literal,span:target~h3:first-of-type code.literal,span:target~h4:first-of-type code.literal,span:target~h5:first-of-type code.literal,span:target~h6:first-of-type code.literal{background-color:transparent}.literal-block-wrapper:target .code-block-caption,.this-will-duplicate-information-and-it-is-still-useful-here li :target,figure:target,table:target>caption{background-color:var(--color-highlight-on-target)}dt:target{background-color:var(--color-highlight-on-target)!important}.footnote-reference:target,.footnote>dt:target+dd{background-color:var(--color-highlight-on-target)}.guilabel{background-color:var(--color-guilabel-background);border:1px solid var(--color-guilabel-border);border-radius:.5em;color:var(--color-guilabel-text);font-size:.9em;padding:0 .3em}footer{display:flex;flex-direction:column;font-size:var(--font-size--small);margin-top:2rem}.bottom-of-page{align-items:center;border-top:1px solid var(--color-background-border);color:var(--color-foreground-secondary);display:flex;justify-content:space-between;line-height:1.5;margin-top:1rem;padding-bottom:1rem;padding-top:1rem}@media(max-width:46em){.bottom-of-page{flex-direction:column-reverse;gap:.25rem;text-align:center}}.bottom-of-page .left-details{font-size:var(--font-size--small)}.bottom-of-page .right-details{display:flex;flex-direction:column;gap:.25rem;text-align:right}.bottom-of-page .icons{display:flex;font-size:1rem;gap:.25rem;justify-content:flex-end}.bottom-of-page .icons a{text-decoration:none}.bottom-of-page .icons img,.bottom-of-page .icons svg{font-size:1.125rem;height:1em;width:1em}.related-pages a{align-items:center;display:flex;text-decoration:none}.related-pages a:hover .page-info .title{color:var(--color-link);text-decoration:underline;text-decoration-color:var(--color-link-underline)}.related-pages a svg.furo-related-icon,.related-pages a svg.furo-related-icon>use{color:var(--color-foreground-border);flex-shrink:0;height:.75rem;margin:0 .5rem;width:.75rem}.related-pages a.next-page{clear:right;float:right;max-width:50%;text-align:right}.related-pages a.prev-page{clear:left;float:left;max-width:50%}.related-pages a.prev-page svg{transform:rotate(180deg)}.page-info{display:flex;flex-direction:column;overflow-wrap:anywhere}.next-page .page-info{align-items:flex-end}.page-info .context{align-items:center;color:var(--color-foreground-muted);display:flex;font-size:var(--font-size--small);padding-bottom:.1rem;text-decoration:none}ul.search{list-style:none;padding-left:0}ul.search li{border-bottom:1px solid var(--color-background-border);padding:1rem 0}[role=main] .highlighted{background-color:var(--color-highlighted-background);color:var(--color-highlighted-text)}.sidebar-brand{display:flex;flex-direction:column;flex-shrink:0;padding:var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal);text-decoration:none}.sidebar-brand-text{color:var(--color-sidebar-brand-text);font-size:1.5rem;overflow-wrap:break-word}.sidebar-brand-text,.sidebar-logo-container{margin:var(--sidebar-item-spacing-vertical) 0}.sidebar-logo{display:block;margin:0 auto;max-width:100%}.sidebar-search-container{align-items:center;background:var(--color-sidebar-search-background);display:flex;margin-top:var(--sidebar-search-space-above);position:relative}.sidebar-search-container:focus-within,.sidebar-search-container:hover{background:var(--color-sidebar-search-background--focus)}.sidebar-search-container:before{background-color:var(--color-sidebar-search-icon);content:"";height:var(--sidebar-search-icon-size);left:var(--sidebar-item-spacing-horizontal);-webkit-mask-image:var(--icon-search);mask-image:var(--icon-search);position:absolute;width:var(--sidebar-search-icon-size)}.sidebar-search{background:transparent;border:none;border-bottom:1px solid var(--color-sidebar-search-border);border-top:1px solid var(--color-sidebar-search-border);box-sizing:border-box;color:var(--color-sidebar-search-foreground);padding:var(--sidebar-search-input-spacing-vertical) var(--sidebar-search-input-spacing-horizontal) var(--sidebar-search-input-spacing-vertical) calc(var(--sidebar-item-spacing-horizontal) + var(--sidebar-search-input-spacing-horizontal) + var(--sidebar-search-icon-size));width:100%;z-index:10}.sidebar-search:focus{outline:none}.sidebar-search::-moz-placeholder{font-size:var(--sidebar-search-input-font-size)}.sidebar-search::placeholder{font-size:var(--sidebar-search-input-font-size)}#searchbox .highlight-link{margin:0;padding:var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal) 0;text-align:center}#searchbox .highlight-link a{color:var(--color-sidebar-search-icon);font-size:var(--font-size--small--2)}.sidebar-tree{font-size:var(--sidebar-item-font-size);margin-bottom:var(--sidebar-item-spacing-vertical);margin-top:var(--sidebar-tree-space-above)}.sidebar-tree ul{display:flex;flex-direction:column;list-style:none;margin-bottom:0;margin-top:0;padding:0}.sidebar-tree li{margin:0;position:relative}.sidebar-tree li>ul{margin-left:var(--sidebar-item-spacing-horizontal)}.sidebar-tree .icon,.sidebar-tree .reference{color:var(--color-sidebar-link-text)}.sidebar-tree .reference{box-sizing:border-box;display:inline-block;height:100%;line-height:var(--sidebar-item-line-height);overflow-wrap:anywhere;padding:var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal);text-decoration:none;width:100%}.sidebar-tree .reference:hover{background:var(--color-sidebar-item-background--hover)}.sidebar-tree .reference.external:after{color:var(--color-sidebar-link-text);content:url("data:image/svg+xml;charset=utf-8,%3Csvg width='12' height='12' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23607D8B' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M0 0h24v24H0z' stroke='none'/%3E%3Cpath d='M11 7H6a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2-2v-5M10 14 20 4M15 4h5v5'/%3E%3C/svg%3E");margin:0 .25rem;vertical-align:middle}.sidebar-tree .current-page>.reference{font-weight:700}.sidebar-tree label{align-items:center;cursor:pointer;display:flex;height:var(--sidebar-item-height);justify-content:center;position:absolute;right:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:var(--sidebar-expander-width)}.sidebar-tree .caption,.sidebar-tree :not(.caption)>.caption-text{color:var(--color-sidebar-caption-text);font-size:var(--sidebar-caption-font-size);font-weight:700;margin:var(--sidebar-caption-space-above) 0 0 0;padding:var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal);text-transform:uppercase}.sidebar-tree li.has-children>.reference{padding-right:var(--sidebar-expander-width)}.sidebar-tree .toctree-l1>.reference,.sidebar-tree .toctree-l1>label .icon{color:var(--color-sidebar-link-text--top-level)}.sidebar-tree label{background:var(--color-sidebar-item-expander-background)}.sidebar-tree label:hover{background:var(--color-sidebar-item-expander-background--hover)}.sidebar-tree .current>.reference{background:var(--color-sidebar-item-background--current)}.sidebar-tree .current>.reference:hover{background:var(--color-sidebar-item-background--hover)}.toctree-checkbox{display:none;position:absolute}.toctree-checkbox~ul{display:none}.toctree-checkbox~label .icon svg{transform:rotate(90deg)}.toctree-checkbox:checked~ul{display:block}.toctree-checkbox:checked~label .icon svg{transform:rotate(-90deg)}.toc-title-container{padding:var(--toc-title-padding);padding-top:var(--toc-spacing-vertical)}.toc-title{color:var(--color-toc-title-text);font-size:var(--toc-title-font-size);padding-left:var(--toc-spacing-horizontal);text-transform:uppercase}.no-toc{display:none}.toc-tree-container{padding-bottom:var(--toc-spacing-vertical)}.toc-tree{border-left:1px solid var(--color-background-border);font-size:var(--toc-font-size);line-height:1.3;padding-left:calc(var(--toc-spacing-horizontal) - var(--toc-item-spacing-horizontal))}.toc-tree>ul>li:first-child{padding-top:0}.toc-tree>ul>li:first-child>ul{padding-left:0}.toc-tree>ul>li:first-child>a{display:none}.toc-tree ul{list-style-type:none;margin-bottom:0;margin-top:0;padding-left:var(--toc-item-spacing-horizontal)}.toc-tree li{padding-top:var(--toc-item-spacing-vertical)}.toc-tree li.scroll-current>.reference{color:var(--color-toc-item-text--active);font-weight:700}.toc-tree .reference{color:var(--color-toc-item-text);overflow-wrap:anywhere;text-decoration:none}.toc-scroll{max-height:100vh;overflow-y:scroll}.contents:not(.this-will-duplicate-information-and-it-is-still-useful-here){background:rgba(255,0,0,.25);color:var(--color-problematic)}.contents:not(.this-will-duplicate-information-and-it-is-still-useful-here):before{content:"ERROR: Adding a table of contents in Furo-based documentation is unnecessary, and does not work well with existing styling.Add a 'this-will-duplicate-information-and-it-is-still-useful-here' class, if you want an escape hatch."}.text-align\:left>p{text-align:left}.text-align\:center>p{text-align:center}.text-align\:right>p{text-align:right} +/*# sourceMappingURL=furo.css.map*/ \ No newline at end of file diff --git a/_static/styles/furo.css.map b/_static/styles/furo.css.map new file mode 100644 index 00000000..1924b333 --- /dev/null +++ b/_static/styles/furo.css.map @@ -0,0 +1 @@ +{"version":3,"file":"styles/furo.css","mappings":"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F,kBACA,CACE,wEACA,CARA,YACA,CAKF,mBAFF,MACE,CAIE,gBAJF,iCAJE,cAGJ,CANI,oBAEA,CAKF,SAIE,2BADA,UACA,kBAGF,sCACA,CAFF,WACE,WACA,mBACE,kDACA,0EACA,uDAKJ,aACE,mDAII,CAJJ,6CAII,4BACA,sCACE,kEACA,+CACE,aACA,WADA,+BACA,uEANN,YACE,mDAEE,mBADF,0CACE,CADF,qBACE,0DACA,YACE,4DACA,sEANN,YACE,8CACA,kBADA,UACA,2CACE,2EACA,cACE,kEACA,mEANN,yBACE,4DACA,sBACE,+EAEE,iEACA,qEANN,sCACE,CAGE,iBAHF,gBAGE,qBACE,CAJJ,uBACA,gDACE,wDACA,6DAHF,2CACA,CADA,gBACA,eACE,CAGE,sBANN,8BACE,CAII,iBAFF,4DACA,WACE,YADF,uCACE,6EACA,2BANN,8CACE,kDACA,0CACE,8BACA,yFACE,sBACA,sFALJ,mEACA,sBACE,kEACA,6EACE,uCACA,kEALJ,qGAEE,kEACA,6EACE,uCACA,kEALJ,8CACA,uDACE,sEACA,2EACE,sCACA,iEALJ,mGACA,qCACE,oDACA,0DACE,6GACA,gDAGR,yDCrEA,sEACE,CACA,6GACE,gEACF,iGAIF,wFACE,qDAGA,mGAEE,2CAEF,4FACE,gCACF,wGACE,8DAEE,6FAIA,iJAKN,6GACE,gDAKF,yDACA,qCAGA,6BACA,kBACA,qDAKA,oCAEA,+DAGA,2CAGE,oDAIA,oEAEE,qBAGJ,wDAEE,uCAEF,kEAGA,8CAEA,uDAKA,oCAEA,yDAEE,gEAKF,+CC5FA,0EAGE,CACA,qDCLJ,+DAIE,sCAIA,kEACE,yBACA,2FAMA,gBACA,yGCbF,mBAOA,2MAIA,4HAYA,0DACE,8GAYF,8HAQE,mBAEA,6HAOF,YAGA,mIAME,eACA,CAFF,YAEE,4FAMJ,8BAEE,uBAYA,sCAEE,CAJF,oBAEA,CARA,wCAEA,CAHA,8BACA,CAFA,eACA,CAGA,wCAEA,CAEA,mDAIE,kCACE,6BACA,4CAKJ,kDAIA,eACE,aAGF,8BACE,uDACA,sCACA,cAEA,+BACA,CA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","sources":["webpack:///./node_modules/normalize.css/normalize.css","webpack:///./src/furo/assets/styles/base/_print.sass","webpack:///./src/furo/assets/styles/base/_screen-readers.sass","webpack:///./src/furo/assets/styles/base/_theme.sass","webpack:///./src/furo/assets/styles/variables/_fonts.scss","webpack:///./src/furo/assets/styles/variables/_spacing.scss","webpack:///./src/furo/assets/styles/variables/_icons.scss","webpack:///./src/furo/assets/styles/variables/_admonitions.scss","webpack:///./src/furo/assets/styles/variables/_colors.scss","webpack:///./src/furo/assets/styles/base/_typography.sass","webpack:///./src/furo/assets/styles/_scaffold.sass","webpack:///./src/furo/assets/styles/content/_admonitions.sass","webpack:///./src/furo/assets/styles/content/_api.sass","webpack:///./src/furo/assets/styles/content/_blocks.sass","webpack:///./src/furo/assets/styles/content/_captions.sass","webpack:///./src/furo/assets/styles/content/_code.sass","webpack:///./src/furo/assets/styles/content/_footnotes.sass","webpack:///./src/furo/assets/styles/content/_images.sass","webpack:///./src/furo/assets/styles/content/_indexes.sass","webpack:///./src/furo/assets/styles/content/_lists.sass","webpack:///./src/furo/assets/styles/content/_math.sass","webpack:///./src/furo/assets/styles/content/_misc.sass","webpack:///./src/furo/assets/styles/content/_rubrics.sass","webpack:///./src/furo/assets/styles/content/_sidebar.sass","webpack:///./src/furo/assets/styles/content/_tables.sass","webpack:///./src/furo/assets/styles/content/_target.sass","webpack:///./src/furo/assets/styles/content/_gui-labels.sass","webpack:///./src/furo/assets/styles/components/_footer.sass","webpack:///./src/furo/assets/styles/components/_sidebar.sass","webpack:///./src/furo/assets/styles/components/_table_of_contents.sass","webpack:///./src/furo/assets/styles/_shame.sass"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n","// This file contains styles for managing print media.\n\n////////////////////////////////////////////////////////////////////////////////\n// Hide elements not relevant to print media.\n////////////////////////////////////////////////////////////////////////////////\n@media print\n // Hide icon container.\n .content-icon-container\n display: none !important\n\n // Hide showing header links if hovering over when printing.\n .headerlink\n display: none !important\n\n // Hide mobile header.\n .mobile-header\n display: none !important\n\n // Hide navigation links.\n .related-pages\n display: none !important\n\n////////////////////////////////////////////////////////////////////////////////\n// Tweaks related to decolorization.\n////////////////////////////////////////////////////////////////////////////////\n@media print\n // Apply a border around code which no longer have a color background.\n .highlight\n border: 0.1pt solid var(--color-foreground-border)\n\n////////////////////////////////////////////////////////////////////////////////\n// Avoid page break in some relevant cases.\n////////////////////////////////////////////////////////////////////////////////\n@media print\n ul, ol, dl, a, table, pre, blockquote\n page-break-inside: avoid\n\n h1, h2, h3, h4, h5, h6, img, figure, caption\n page-break-inside: avoid\n page-break-after: avoid\n\n ul, ol, dl\n page-break-before: avoid\n",".visually-hidden\n position: absolute !important\n width: 1px !important\n height: 1px !important\n padding: 0 !important\n margin: -1px !important\n overflow: hidden !important\n clip: rect(0,0,0,0) !important\n white-space: nowrap !important\n border: 0 !important\n\n:-moz-focusring\n outline: auto\n","// This file serves as the \"skeleton\" of the theming logic.\n//\n// This contains the bulk of the logic for handling dark mode, color scheme\n// toggling and the handling of color-scheme-specific hiding of elements.\n\nbody\n @include fonts\n @include spacing\n @include icons\n @include admonitions\n @include default-admonition(#651fff, \"abstract\")\n @include default-topic(#14B8A6, \"pencil\")\n\n @include colors\n\n.only-light\n display: block !important\nhtml body .only-dark\n display: none !important\n\n// Ignore dark-mode hints if print media.\n@media not print\n // Enable dark-mode, if requested.\n body[data-theme=\"dark\"]\n @include colors-dark\n\n html & .only-light\n display: none !important\n .only-dark\n display: block !important\n\n // Enable dark mode, unless explicitly told to avoid.\n @media (prefers-color-scheme: dark)\n body:not([data-theme=\"light\"])\n @include colors-dark\n\n html & .only-light\n display: none !important\n .only-dark\n display: block !important\n\n//\n// Theme toggle presentation\n//\nbody[data-theme=\"auto\"]\n .theme-toggle svg.theme-icon-when-auto\n display: block\n\nbody[data-theme=\"dark\"]\n .theme-toggle svg.theme-icon-when-dark\n display: block\n\nbody[data-theme=\"light\"]\n .theme-toggle svg.theme-icon-when-light\n display: block\n","// Fonts used by this theme.\n//\n// There are basically two things here -- using the system font stack and\n// defining sizes for various elements in %ages. We could have also used `em`\n// but %age is easier to reason about for me.\n\n@mixin fonts {\n // These are adapted from https://systemfontstack.com/\n --font-stack: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial,\n sans-serif, Apple Color Emoji, Segoe UI Emoji;\n --font-stack--monospace: \"SFMono-Regular\", Menlo, Consolas, Monaco,\n Liberation Mono, Lucida Console, monospace;\n\n --font-size--normal: 100%;\n --font-size--small: 87.5%;\n --font-size--small--2: 81.25%;\n --font-size--small--3: 75%;\n --font-size--small--4: 62.5%;\n\n // Sidebar\n --sidebar-caption-font-size: var(--font-size--small--2);\n --sidebar-item-font-size: var(--font-size--small);\n --sidebar-search-input-font-size: var(--font-size--small);\n\n // Table of Contents\n --toc-font-size: var(--font-size--small--3);\n --toc-font-size--mobile: var(--font-size--normal);\n --toc-title-font-size: var(--font-size--small--4);\n\n // Admonitions\n //\n // These aren't defined in terms of %ages, since nesting these is permitted.\n --admonition-font-size: 0.8125rem;\n --admonition-title-font-size: 0.8125rem;\n\n // Code\n --code-font-size: var(--font-size--small--2);\n\n // API\n --api-font-size: var(--font-size--small);\n}\n","// Spacing for various elements on the page\n//\n// If the user wants to tweak things in a certain way, they are permitted to.\n// They also have to deal with the consequences though!\n\n@mixin spacing {\n // Header!\n --header-height: calc(\n var(--sidebar-item-line-height) + 4 * #{var(--sidebar-item-spacing-vertical)}\n );\n --header-padding: 0.5rem;\n\n // Sidebar\n --sidebar-tree-space-above: 1.5rem;\n --sidebar-caption-space-above: 1rem;\n\n --sidebar-item-line-height: 1rem;\n --sidebar-item-spacing-vertical: 0.5rem;\n --sidebar-item-spacing-horizontal: 1rem;\n --sidebar-item-height: calc(\n var(--sidebar-item-line-height) + 2 *#{var(--sidebar-item-spacing-vertical)}\n );\n\n --sidebar-expander-width: var(--sidebar-item-height); // be square\n\n --sidebar-search-space-above: 0.5rem;\n --sidebar-search-input-spacing-vertical: 0.5rem;\n --sidebar-search-input-spacing-horizontal: 0.5rem;\n --sidebar-search-input-height: 1rem;\n --sidebar-search-icon-size: var(--sidebar-search-input-height);\n\n // Table of Contents\n --toc-title-padding: 0.25rem 0;\n --toc-spacing-vertical: 1.5rem;\n --toc-spacing-horizontal: 1.5rem;\n --toc-item-spacing-vertical: 0.4rem;\n --toc-item-spacing-horizontal: 1rem;\n}\n","// Expose theme icons as CSS variables.\n\n$icons: (\n // Adapted from tabler-icons\n // url: https://tablericons.com/\n \"search\":\n url('data:image/svg+xml;charset=utf-8,'),\n // Factored out from mkdocs-material on 24-Aug-2020.\n // url: https://squidfunk.github.io/mkdocs-material/reference/admonitions/\n \"pencil\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"abstract\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"info\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"flame\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"question\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"warning\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"failure\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"spark\":\n url('data:image/svg+xml;charset=utf-8,')\n);\n\n@mixin icons {\n @each $name, $glyph in $icons {\n --icon-#{$name}: #{$glyph};\n }\n}\n","// Admonitions\n\n// Structure of these is:\n// admonition-class: color \"icon-name\";\n//\n// The colors are translated into CSS variables below. The icons are\n// used directly in the main declarations to set the `mask-image` in\n// the title.\n\n// prettier-ignore\n$admonitions: (\n // Each of these has an reST directives for it.\n \"caution\": #ff9100 \"spark\",\n \"warning\": #ff9100 \"warning\",\n \"danger\": #ff5252 \"spark\",\n \"attention\": #ff5252 \"warning\",\n \"error\": #ff5252 \"failure\",\n \"hint\": #00c852 \"question\",\n \"tip\": #00c852 \"info\",\n \"important\": #00bfa5 \"flame\",\n \"note\": #00b0ff \"pencil\",\n \"seealso\": #448aff \"info\",\n \"admonition-todo\": #808080 \"pencil\"\n);\n\n@mixin default-admonition($color, $icon-name) {\n --color-admonition-title: #{$color};\n --color-admonition-title-background: #{rgba($color, 0.2)};\n\n --icon-admonition-default: var(--icon-#{$icon-name});\n}\n\n@mixin default-topic($color, $icon-name) {\n --color-topic-title: #{$color};\n --color-topic-title-background: #{rgba($color, 0.2)};\n\n --icon-topic-default: var(--icon-#{$icon-name});\n}\n\n@mixin admonitions {\n @each $name, $values in $admonitions {\n --color-admonition-title--#{$name}: #{nth($values, 1)};\n --color-admonition-title-background--#{$name}: #{rgba(\n nth($values, 1),\n 0.2\n )};\n }\n}\n","// Colors used throughout this theme.\n//\n// The aim is to give the user more control. Thus, instead of hard-coding colors\n// in various parts of the stylesheet, the approach taken is to define all\n// colors as CSS variables and reusing them in all the places.\n//\n// `colors-dark` depends on `colors` being included at a lower specificity.\n\n@mixin colors {\n --color-problematic: #b30000;\n\n // Base Colors\n --color-foreground-primary: black; // for main text and headings\n --color-foreground-secondary: #5a5c63; // for secondary text\n --color-foreground-muted: #646776; // for muted text\n --color-foreground-border: #878787; // for content borders\n\n --color-background-primary: white; // for content\n --color-background-secondary: #f8f9fb; // for navigation + ToC\n --color-background-hover: #efeff4ff; // for navigation-item hover\n --color-background-hover--transparent: #efeff400;\n --color-background-border: #eeebee; // for UI borders\n --color-background-item: #ccc; // for \"background\" items (eg: copybutton)\n\n // Announcements\n --color-announcement-background: #000000dd;\n --color-announcement-text: #eeebee;\n\n // Brand colors\n --color-brand-primary: #2962ff;\n --color-brand-content: #2a5adf;\n\n // API documentation\n --color-api-background: var(--color-background-hover--transparent);\n --color-api-background-hover: var(--color-background-hover);\n --color-api-overall: var(--color-foreground-secondary);\n --color-api-name: var(--color-problematic);\n --color-api-pre-name: var(--color-problematic);\n --color-api-paren: var(--color-foreground-secondary);\n --color-api-keyword: var(--color-foreground-primary);\n --color-highlight-on-target: #ffffcc;\n\n // Inline code background\n --color-inline-code-background: var(--color-background-secondary);\n\n // Highlighted text (search)\n --color-highlighted-background: #ddeeff;\n --color-highlighted-text: var(--color-foreground-primary);\n\n // GUI Labels\n --color-guilabel-background: #ddeeff80;\n --color-guilabel-border: #bedaf580;\n --color-guilabel-text: var(--color-foreground-primary);\n\n // Admonitions!\n --color-admonition-background: transparent;\n\n //////////////////////////////////////////////////////////////////////////////\n // Everything below this should be one of:\n // - var(...)\n // - *-gradient(...)\n // - special literal values (eg: transparent, none)\n //////////////////////////////////////////////////////////////////////////////\n\n // Tables\n --color-table-header-background: var(--color-background-secondary);\n --color-table-border: var(--color-background-border);\n\n // Cards\n --color-card-border: var(--color-background-secondary);\n --color-card-background: transparent;\n --color-card-marginals-background: var(--color-background-secondary);\n\n // Header\n --color-header-background: var(--color-background-primary);\n --color-header-border: var(--color-background-border);\n --color-header-text: var(--color-foreground-primary);\n\n // Sidebar (left)\n --color-sidebar-background: var(--color-background-secondary);\n --color-sidebar-background-border: var(--color-background-border);\n\n --color-sidebar-brand-text: var(--color-foreground-primary);\n --color-sidebar-caption-text: var(--color-foreground-muted);\n --color-sidebar-link-text: var(--color-foreground-secondary);\n --color-sidebar-link-text--top-level: var(--color-brand-primary);\n\n --color-sidebar-item-background: var(--color-sidebar-background);\n --color-sidebar-item-background--current: var(\n --color-sidebar-item-background\n );\n --color-sidebar-item-background--hover: linear-gradient(\n 90deg,\n var(--color-background-hover--transparent) 0%,\n var(--color-background-hover) var(--sidebar-item-spacing-horizontal),\n var(--color-background-hover) 100%\n );\n\n --color-sidebar-item-expander-background: transparent;\n --color-sidebar-item-expander-background--hover: var(\n --color-background-hover\n );\n\n --color-sidebar-search-text: var(--color-foreground-primary);\n --color-sidebar-search-background: var(--color-background-secondary);\n --color-sidebar-search-background--focus: var(--color-background-primary);\n --color-sidebar-search-border: var(--color-background-border);\n --color-sidebar-search-icon: var(--color-foreground-muted);\n\n // Table of Contents (right)\n --color-toc-background: var(--color-background-primary);\n --color-toc-title-text: var(--color-foreground-muted);\n --color-toc-item-text: var(--color-foreground-secondary);\n --color-toc-item-text--hover: var(--color-foreground-primary);\n --color-toc-item-text--active: var(--color-brand-primary);\n\n // Actual page contents\n --color-content-foreground: var(--color-foreground-primary);\n --color-content-background: transparent;\n\n // Links\n --color-link: var(--color-brand-content);\n --color-link--hover: var(--color-brand-content);\n --color-link-underline: var(--color-background-border);\n --color-link-underline--hover: var(--color-foreground-border);\n}\n\n@mixin colors-dark {\n --color-problematic: #ee5151;\n\n // Base Colors\n --color-foreground-primary: #ffffffcc; // for main text and headings\n --color-foreground-secondary: #9ca0a5; // for secondary text\n --color-foreground-muted: #81868d; // for muted text\n --color-foreground-border: #666666; // for content borders\n\n --color-background-primary: #131416; // for content\n --color-background-secondary: #1a1c1e; // for navigation + ToC\n --color-background-hover: #1e2124ff; // for navigation-item hover\n --color-background-hover--transparent: #1e212400;\n --color-background-border: #303335; // for UI borders\n --color-background-item: #444; // for \"background\" items (eg: copybutton)\n\n // Announcements\n --color-announcement-background: #000000dd;\n --color-announcement-text: #eeebee;\n\n // Brand colors\n --color-brand-primary: #2b8cee;\n --color-brand-content: #368ce2;\n\n // Highlighted text (search)\n --color-highlighted-background: #083563;\n\n // GUI Labels\n --color-guilabel-background: #08356380;\n --color-guilabel-border: #13395f80;\n\n // API documentation\n --color-api-keyword: var(--color-foreground-secondary);\n --color-highlight-on-target: #333300;\n\n // Admonitions\n --color-admonition-background: #18181a;\n\n // Cards\n --color-card-border: var(--color-background-secondary);\n --color-card-background: #18181a;\n --color-card-marginals-background: var(--color-background-hover);\n}\n","// This file contains the styling for making the content throughout the page,\n// including fonts, paragraphs, headings and spacing among these elements.\n\nbody\n font-family: var(--font-stack)\npre,\ncode,\nkbd,\nsamp\n font-family: var(--font-stack--monospace)\n\n// Make fonts look slightly nicer.\nbody\n -webkit-font-smoothing: antialiased\n -moz-osx-font-smoothing: grayscale\n\n// Line height from Bootstrap 4.1\narticle\n line-height: 1.5\n\n//\n// Headings\n//\nh1,\nh2,\nh3,\nh4,\nh5,\nh6\n line-height: 1.25\n font-weight: bold\n\n border-radius: 0.5rem\n margin-top: 0.5rem\n margin-bottom: 0.5rem\n margin-left: -0.5rem\n margin-right: -0.5rem\n padding-left: 0.5rem\n padding-right: 0.5rem\n\n + p\n margin-top: 0\n\nh1\n font-size: 2.5em\n margin-top: 1.75rem\n margin-bottom: 1rem\nh2\n font-size: 2em\n margin-top: 1.75rem\nh3\n font-size: 1.5em\nh4\n font-size: 1.25em\nh5\n font-size: 1.125em\nh6\n font-size: 1em\n\nsmall\n opacity: 75%\n font-size: 80%\n\n// Paragraph\np\n margin-top: 0.5rem\n margin-bottom: 0.75rem\n\n// Horizontal rules\nhr.docutils\n height: 1px\n padding: 0\n margin: 2rem 0\n background-color: var(--color-background-border)\n border: 0\n\n.centered\n text-align: center\n\n// Links\na\n text-decoration: underline\n\n color: var(--color-link)\n text-decoration-color: var(--color-link-underline)\n\n &:hover\n color: var(--color-link--hover)\n text-decoration-color: var(--color-link-underline--hover)\n &.muted-link\n color: inherit\n &:hover\n color: var(--color-link)\n text-decoration-color: var(--color-link-underline--hover)\n","// This file contains the styles for the overall layouting of the documentation\n// skeleton, including the responsive changes as well as sidebar toggles.\n//\n// This is implemented as a mobile-last design, which isn't ideal, but it is\n// reasonably good-enough and I got pretty tired by the time I'd finished this\n// to move the rules around to fix this. Shouldn't take more than 3-4 hours,\n// if you know what you're doing tho.\n\n// HACK: Not all browsers account for the scrollbar width in media queries.\n// This results in horizontal scrollbars in the breakpoint where we go\n// from displaying everything to hiding the ToC. We accomodate for this by\n// adding a bit of padding to the TOC drawer, disabling the horizontal\n// scrollbar and allowing the scrollbars to cover the padding.\n// https://www.456bereastreet.com/archive/201301/media_query_width_and_vertical_scrollbars/\n\n// HACK: Always having the scrollbar visible, prevents certain browsers from\n// causing the content to stutter horizontally between taller-than-viewport and\n// not-taller-than-viewport pages.\n\nhtml\n overflow-x: hidden\n overflow-y: scroll\n scroll-behavior: smooth\n\n.sidebar-scroll, .toc-scroll, article[role=main] *\n // Override Firefox scrollbar style\n scrollbar-width: thin\n scrollbar-color: var(--color-foreground-border) transparent\n\n // Override Chrome scrollbar styles\n &::-webkit-scrollbar\n width: 0.25rem\n height: 0.25rem\n &::-webkit-scrollbar-thumb\n background-color: var(--color-foreground-border)\n border-radius: 0.125rem\n\n//\n// Overalls\n//\nhtml,\nbody\n height: 100%\n color: var(--color-foreground-primary)\n background: var(--color-background-primary)\n\narticle\n color: var(--color-content-foreground)\n background: var(--color-content-background)\n overflow-wrap: break-word\n\n.page\n display: flex\n // fill the viewport for pages with little content.\n min-height: 100%\n\n.mobile-header\n width: 100%\n height: var(--header-height)\n background-color: var(--color-header-background)\n color: var(--color-header-text)\n border-bottom: 1px solid var(--color-header-border)\n\n // Looks like sub-script/super-script have this, and we need this to\n // be \"on top\" of those.\n z-index: 10\n\n // We don't show the header on large screens.\n display: none\n\n // Add shadow when scrolled\n &.scrolled\n border-bottom: none\n box-shadow: 0 0 0.2rem rgba(0, 0, 0, 0.1), 0 0.2rem 0.4rem rgba(0, 0, 0, 0.2)\n\n .header-center\n a\n color: var(--color-header-text)\n text-decoration: none\n\n.main\n display: flex\n flex: 1\n\n// Sidebar (left) also covers the entire left portion of screen.\n.sidebar-drawer\n box-sizing: border-box\n\n border-right: 1px solid var(--color-sidebar-background-border)\n background: var(--color-sidebar-background)\n\n display: flex\n justify-content: flex-end\n // These next two lines took me two days to figure out.\n width: calc((100% - #{$full-width}) / 2 + #{$sidebar-width})\n min-width: $sidebar-width\n\n// Scroll-along sidebars\n.sidebar-container,\n.toc-drawer\n box-sizing: border-box\n width: $sidebar-width\n\n.toc-drawer\n background: var(--color-toc-background)\n // See HACK described on top of this document\n padding-right: 1rem\n\n.sidebar-sticky,\n.toc-sticky\n position: sticky\n top: 0\n height: min(100%, 100vh)\n height: 100vh\n\n display: flex\n flex-direction: column\n\n.sidebar-scroll,\n.toc-scroll\n flex-grow: 1\n flex-shrink: 1\n\n overflow: auto\n scroll-behavior: smooth\n\n// Central items.\n.content\n padding: 0 $content-padding\n width: $content-width\n\n display: flex\n flex-direction: column\n justify-content: space-between\n\n.icon\n display: inline-block\n height: 1rem\n width: 1rem\n svg\n width: 100%\n height: 100%\n\n//\n// Accommodate announcement banner\n//\n.announcement\n background-color: var(--color-announcement-background)\n color: var(--color-announcement-text)\n\n height: var(--header-height)\n display: flex\n align-items: center\n overflow-x: auto\n & + .page\n min-height: calc(100% - var(--header-height))\n\n.announcement-content\n box-sizing: border-box\n padding: 0.5rem\n min-width: 100%\n white-space: nowrap\n text-align: center\n\n a\n color: var(--color-announcement-text)\n text-decoration-color: var(--color-announcement-text)\n\n &:hover\n color: var(--color-announcement-text)\n text-decoration-color: var(--color-link--hover)\n\n////////////////////////////////////////////////////////////////////////////////\n// Toggles for theme\n////////////////////////////////////////////////////////////////////////////////\n.no-js .theme-toggle-container // don't show theme toggle if there's no JS\n display: none\n\n.theme-toggle-container\n vertical-align: middle\n\n.theme-toggle\n cursor: pointer\n border: none\n padding: 0\n background: transparent\n\n.theme-toggle svg\n vertical-align: middle\n height: 1rem\n width: 1rem\n color: var(--color-foreground-primary)\n display: none\n\n.theme-toggle-header\n float: left\n padding: 1rem 0.5rem\n\n////////////////////////////////////////////////////////////////////////////////\n// Toggles for elements\n////////////////////////////////////////////////////////////////////////////////\n.toc-overlay-icon, .nav-overlay-icon\n display: none\n cursor: pointer\n\n .icon\n color: var(--color-foreground-secondary)\n height: 1rem\n width: 1rem\n\n.toc-header-icon, .nav-overlay-icon\n // for when we set display: flex\n justify-content: center\n align-items: center\n\n.toc-content-icon\n height: 1.5rem\n width: 1.5rem\n\n.content-icon-container\n float: right\n display: flex\n margin-top: 1.5rem\n margin-left: 1rem\n margin-bottom: 1rem\n gap: 0.5rem\n\n .edit-this-page svg\n color: inherit\n height: 1rem\n width: 1rem\n\n.sidebar-toggle\n position: absolute\n display: none\n// \n.sidebar-toggle[name=\"__toc\"]\n left: 20px\n.sidebar-toggle:checked\n left: 40px\n// \n\n.overlay\n position: fixed\n top: 0\n width: 0\n height: 0\n\n transition: width 0ms, height 0ms, opacity 250ms ease-out\n\n opacity: 0\n background-color: rgba(0, 0, 0, 0.54)\n.sidebar-overlay\n z-index: 20\n.toc-overlay\n z-index: 40\n\n// Keep things on top and smooth.\n.sidebar-drawer\n z-index: 30\n transition: left 250ms ease-in-out\n.toc-drawer\n z-index: 50\n transition: right 250ms ease-in-out\n\n// Show the Sidebar\n#__navigation:checked\n & ~ .sidebar-overlay\n width: 100%\n height: 100%\n opacity: 1\n & ~ .page\n .sidebar-drawer\n top: 0\n left: 0\n // Show the toc sidebar\n#__toc:checked\n & ~ .toc-overlay\n width: 100%\n height: 100%\n opacity: 1\n & ~ .page\n .toc-drawer\n top: 0\n right: 0\n\n////////////////////////////////////////////////////////////////////////////////\n// Back to top\n////////////////////////////////////////////////////////////////////////////////\n.back-to-top\n text-decoration: none\n\n display: none\n position: fixed\n left: 0\n top: 1rem\n padding: 0.5rem\n padding-right: 0.75rem\n border-radius: 1rem\n font-size: 0.8125rem\n\n background: var(--color-background-primary)\n box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.05), #6b728080 0px 0px 1px 0px\n\n z-index: 10\n\n margin-left: 50%\n transform: translateX(-50%)\n svg\n height: 1rem\n width: 1rem\n fill: currentColor\n display: inline-block\n\n span\n margin-left: 0.25rem\n\n .show-back-to-top &\n display: flex\n align-items: center\n\n////////////////////////////////////////////////////////////////////////////////\n// Responsive layouting\n////////////////////////////////////////////////////////////////////////////////\n// Make things a bit bigger on bigger screens.\n@media (min-width: $full-width + $sidebar-width)\n html\n font-size: 110%\n\n@media (max-width: $full-width)\n // Collapse \"toc\" into the icon.\n .toc-content-icon\n display: flex\n .toc-drawer\n position: fixed\n height: 100vh\n top: 0\n right: -$sidebar-width\n border-left: 1px solid var(--color-background-muted)\n .toc-tree\n border-left: none\n font-size: var(--toc-font-size--mobile)\n\n // Accomodate for a changed content width.\n .sidebar-drawer\n width: calc((100% - #{$full-width - $sidebar-width}) / 2 + #{$sidebar-width})\n\n@media (max-width: $full-width - $sidebar-width)\n // Collapse \"navigation\".\n .nav-overlay-icon\n display: flex\n .sidebar-drawer\n position: fixed\n height: 100vh\n width: $sidebar-width\n\n top: 0\n left: -$sidebar-width\n\n // Swap which icon is visible.\n .toc-header-icon\n display: flex\n .toc-content-icon, .theme-toggle-content\n display: none\n .theme-toggle-header\n display: block\n\n // Show the header.\n .mobile-header\n position: sticky\n top: 0\n display: flex\n justify-content: space-between\n align-items: center\n\n .header-left,\n .header-right\n display: flex\n height: var(--header-height)\n padding: 0 var(--header-padding)\n label\n height: 100%\n width: 100%\n user-select: none\n\n .nav-overlay-icon .icon,\n .theme-toggle svg\n height: 1.25rem\n width: 1.25rem\n\n // Add a scroll margin for the content\n :target\n scroll-margin-top: var(--header-height)\n\n // Show back-to-top below the header\n .back-to-top\n top: calc(var(--header-height) + 0.5rem)\n\n // Center the page, and accommodate for the header.\n .page\n flex-direction: column\n justify-content: center\n .content\n margin-left: auto\n margin-right: auto\n\n@media (max-width: $content-width + 2* $content-padding)\n // Content should respect window limits.\n .content\n width: 100%\n overflow-x: auto\n\n@media (max-width: $content-width)\n .content\n padding: 0 $content-padding--small\n // Don't float sidebars to the right.\n article aside.sidebar\n float: none\n width: 100%\n margin: 1rem 0\n","//\n// The design here is strongly inspired by mkdocs-material.\n.admonition, .topic\n margin: 1rem auto\n padding: 0 0.5rem 0.5rem 0.5rem\n\n background: var(--color-admonition-background)\n\n border-radius: 0.2rem\n box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.05), 0 0 0.0625rem rgba(0, 0, 0, 0.1)\n\n font-size: var(--admonition-font-size)\n\n overflow: hidden\n page-break-inside: avoid\n\n // First element should have no margin, since the title has it.\n > :nth-child(2)\n margin-top: 0\n\n // Last item should have no margin, since we'll control that w/ padding\n > :last-child\n margin-bottom: 0\n\n.admonition p.admonition-title,\np.topic-title\n position: relative\n margin: 0 -0.5rem 0.5rem\n padding-left: 2rem\n padding-right: .5rem\n padding-top: .4rem\n padding-bottom: .4rem\n\n font-weight: 500\n font-size: var(--admonition-title-font-size)\n line-height: 1.3\n\n // Our fancy icon\n &::before\n content: \"\"\n position: absolute\n left: 0.5rem\n width: 1rem\n height: 1rem\n\n// Default styles\np.admonition-title\n background-color: var(--color-admonition-title-background)\n &::before\n background-color: var(--color-admonition-title)\n mask-image: var(--icon-admonition-default)\n mask-repeat: no-repeat\n\np.topic-title\n background-color: var(--color-topic-title-background)\n &::before\n background-color: var(--color-topic-title)\n mask-image: var(--icon-topic-default)\n mask-repeat: no-repeat\n\n//\n// Variants\n//\n.admonition\n border-left: 0.2rem solid var(--color-admonition-title)\n\n @each $type, $value in $admonitions\n &.#{$type}\n border-left-color: var(--color-admonition-title--#{$type})\n > .admonition-title\n background-color: var(--color-admonition-title-background--#{$type})\n &::before\n background-color: var(--color-admonition-title--#{$type})\n mask-image: var(--icon-#{nth($value, 2)})\n\n.admonition-todo > .admonition-title\n text-transform: uppercase\n","// This file stylizes the API documentation (stuff generated by autodoc). It's\n// deeply nested due to how autodoc structures the HTML without enough classes\n// to select the relevant items.\n\n// API docs!\ndl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)\n // Tweak the spacing of all the things!\n dd\n margin-left: 2rem\n > :first-child\n margin-top: 0.125rem\n > :last-child\n margin-bottom: 0.75rem\n\n // This is used for the arguments\n .field-list\n margin-bottom: 0.75rem\n\n // \"Headings\" (like \"Parameters\" and \"Return\")\n > dt\n text-transform: uppercase\n font-size: var(--font-size--small)\n\n dd:empty\n margin-bottom: 0.5rem\n dd > ul\n margin-left: -1.2rem\n > li\n > p:nth-child(2)\n margin-top: 0\n // When the last-empty-paragraph follows a paragraph, it doesn't need\n // to augument the existing spacing.\n > p + p:last-child:empty\n margin-top: 0\n margin-bottom: 0\n\n // Colorize the elements\n > dt\n color: var(--color-api-overall)\n\n.sig:not(.sig-inline)\n font-weight: bold\n\n font-size: var(--api-font-size)\n font-family: var(--font-stack--monospace)\n\n margin-left: -0.25rem\n margin-right: -0.25rem\n padding-top: 0.25rem\n padding-bottom: 0.25rem\n padding-right: 0.5rem\n\n // These are intentionally em, to properly match the font size.\n padding-left: 3em\n text-indent: -2.5em\n\n border-radius: 0.25rem\n\n background: var(--color-api-background)\n transition: background 100ms ease-out\n\n &:hover\n background: var(--color-api-background-hover)\n\n // adjust the size of the [source] link on the right.\n a.reference\n .viewcode-link\n font-weight: normal\n width: 3.5rem\n\nem.property\n font-style: normal\n &:first-child\n color: var(--color-api-keyword)\n.sig-name\n color: var(--color-api-name)\n.sig-prename\n font-weight: normal\n color: var(--color-api-pre-name)\n.sig-paren\n color: var(--color-api-paren)\n.sig-param\n font-style: normal\n\n.versionmodified\n font-style: italic\ndiv.versionadded, div.versionchanged, div.deprecated\n p\n margin-top: 0.125rem\n margin-bottom: 0.125rem\n\n// Align the [docs] and [source] to the right.\n.viewcode-link, .viewcode-back\n float: right\n text-align: right\n",".line-block\n margin-top: 0.5rem\n margin-bottom: 0.75rem\n .line-block\n margin-top: 0rem\n margin-bottom: 0rem\n padding-left: 1rem\n","// Captions\narticle p.caption,\ntable > caption,\n.code-block-caption\n font-size: var(--font-size--small)\n text-align: center\n\n// Caption above a TOCTree\n.toctree-wrapper.compound\n .caption, :not(.caption) > .caption-text\n font-size: var(--font-size--small)\n text-transform: uppercase\n\n text-align: initial\n margin-bottom: 0\n\n > ul\n margin-top: 0\n margin-bottom: 0\n","// Inline code\ncode.literal, .sig-inline\n background: var(--color-inline-code-background)\n border-radius: 0.2em\n // Make the font smaller, and use padding to recover.\n font-size: var(--font-size--small--2)\n padding: 0.1em 0.2em\n\n pre.literal-block &\n font-size: inherit\n padding: 0\n\n p &\n border: 1px solid var(--color-background-border)\n\n.sig-inline\n font-family: var(--font-stack--monospace)\n\n// Code and Literal Blocks\n$code-spacing-vertical: 0.625rem\n$code-spacing-horizontal: 0.875rem\n\n// Wraps every literal block + line numbers.\ndiv[class*=\" highlight-\"],\ndiv[class^=\"highlight-\"]\n margin: 1em 0\n display: flex\n\n .table-wrapper\n margin: 0\n padding: 0\n\npre\n margin: 0\n padding: 0\n overflow: auto\n\n // Needed to have more specificity than pygments' \"pre\" selector. :(\n article[role=\"main\"] .highlight &\n line-height: 1.5\n\n &.literal-block,\n .highlight &\n font-size: var(--code-font-size)\n padding: $code-spacing-vertical $code-spacing-horizontal\n\n // Make it look like all the other blocks.\n &.literal-block\n margin-top: 1rem\n margin-bottom: 1rem\n\n border-radius: 0.2rem\n background-color: var(--color-code-background)\n color: var(--color-code-foreground)\n\n// All code is always contained in this.\n.highlight\n width: 100%\n border-radius: 0.2rem\n\n // Make line numbers and prompts un-selectable.\n .gp, span.linenos\n user-select: none\n pointer-events: none\n\n // Expand the line-highlighting.\n .hll\n display: block\n margin-left: -$code-spacing-horizontal\n margin-right: -$code-spacing-horizontal\n padding-left: $code-spacing-horizontal\n padding-right: $code-spacing-horizontal\n\n/* Make code block captions be nicely integrated */\n.code-block-caption\n display: flex\n padding: $code-spacing-vertical $code-spacing-horizontal\n\n border-radius: 0.25rem\n border-bottom-left-radius: 0\n border-bottom-right-radius: 0\n font-weight: 300\n border-bottom: 1px solid\n\n background-color: var(--color-code-background)\n color: var(--color-code-foreground)\n border-color: var(--color-background-border)\n\n + div[class]\n margin-top: 0\n pre\n border-top-left-radius: 0\n border-top-right-radius: 0\n\n// When `html_codeblock_linenos_style` is table.\n.highlighttable\n width: 100%\n display: block\n tbody\n display: block\n\n tr\n display: flex\n\n // Line numbers\n td.linenos\n background-color: var(--color-code-background)\n color: var(--color-code-foreground)\n padding: $code-spacing-vertical $code-spacing-horizontal\n padding-right: 0\n border-top-left-radius: 0.2rem\n border-bottom-left-radius: 0.2rem\n\n .linenodiv\n padding-right: $code-spacing-horizontal\n font-size: var(--code-font-size)\n box-shadow: -0.0625rem 0 var(--color-foreground-border) inset\n\n // Actual code\n td.code\n padding: 0\n display: block\n flex: 1\n overflow: hidden\n\n .highlight\n border-top-left-radius: 0\n border-bottom-left-radius: 0\n\n// When `html_codeblock_linenos_style` is inline.\n.highlight\n span.linenos\n display: inline-block\n padding-left: 0\n padding-right: $code-spacing-horizontal\n margin-right: $code-spacing-horizontal\n box-shadow: -0.0625rem 0 var(--color-foreground-border) inset\n","// Inline Footnote Reference\n.footnote-reference\n font-size: var(--font-size--small--4)\n vertical-align: super\n\n// Definition list, listing the content of each note.\n// docutils <= 0.17\ndl.footnote.brackets\n font-size: var(--font-size--small)\n color: var(--color-foreground-secondary)\n\n display: grid\n grid-template-columns: max-content auto\n dt\n margin: 0\n > .fn-backref\n margin-left: 0.25rem\n\n &:after\n content: \":\"\n\n .brackets\n &:before\n content: \"[\"\n &:after\n content: \"]\"\n\n dd\n margin: 0\n padding: 0 1rem\n\n// docutils >= 0.18\naside.footnote\n font-size: var(--font-size--small)\n color: var(--color-foreground-secondary)\n\naside.footnote > span,\ndiv.citation > span\n float: left\n font-weight: 500\n padding-right: 0.25rem\n\naside.footnote > p,\ndiv.citation > p\n margin-left: 2rem\n","//\n// Figures\n//\nimg\n box-sizing: border-box\n max-width: 100%\n height: auto\n\narticle\n figure, .figure\n border-radius: 0.2rem\n\n margin: 0\n :last-child\n margin-bottom: 0\n\n .align-left\n float: left\n clear: left\n margin: 0 1rem 1rem\n\n .align-right\n float: right\n clear: right\n margin: 0 1rem 1rem\n\n .align-default,\n .align-center\n display: block\n text-align: center\n margin-left: auto\n margin-right: auto\n\n // WELL, table needs to be stylised like a table.\n table.align-default\n display: table\n text-align: initial\n",".genindex-jumpbox, .domainindex-jumpbox\n border-top: 1px solid var(--color-background-border)\n border-bottom: 1px solid var(--color-background-border)\n padding: 0.25rem\n\n.genindex-section, .domainindex-section\n h2\n margin-top: 0.75rem\n margin-bottom: 0.5rem\n ul\n margin-top: 0\n margin-bottom: 0\n","ul,\nol\n padding-left: 1.2rem\n\n // Space lists out like paragraphs\n margin-top: 1rem\n margin-bottom: 1rem\n // reduce margins within li.\n li\n > p:first-child\n margin-top: 0.25rem\n margin-bottom: 0.25rem\n\n > p:last-child\n margin-top: 0.25rem\n\n > ul,\n > ol\n margin-top: 0.5rem\n margin-bottom: 0.5rem\n\nol\n &.arabic\n list-style: decimal\n &.loweralpha\n list-style: lower-alpha\n &.upperalpha\n list-style: upper-alpha\n &.lowerroman\n list-style: lower-roman\n &.upperroman\n list-style: upper-roman\n\n// Don't space lists out when they're \"simple\" or in a `.. toctree::`\n.simple,\n.toctree-wrapper\n li\n > ul,\n > ol\n margin-top: 0\n margin-bottom: 0\n\n// Definition Lists\n.field-list,\n.option-list,\ndl:not([class]),\ndl.simple,\ndl.footnote,\ndl.glossary\n dt\n font-weight: 500\n margin-top: 0.25rem\n + dt\n margin-top: 0\n\n .classifier::before\n content: \":\"\n margin-left: 0.2rem\n margin-right: 0.2rem\n\n dd\n > p:first-child,\n ul\n margin-top: 0.125rem\n\n ul\n margin-bottom: 0.125rem\n",".math-wrapper\n width: 100%\n overflow-x: auto\n\ndiv.math\n position: relative\n text-align: center\n\n .headerlink,\n &:focus .headerlink\n display: none\n\n &:hover .headerlink\n display: inline-block\n\n span.eqno\n position: absolute\n right: 0.5rem\n top: 50%\n transform: translate(0, -50%)\n z-index: 1\n","// Abbreviations\nabbr[title]\n cursor: help\n\n// \"Problematic\" content, as identified by Sphinx\n.problematic\n color: var(--color-problematic)\n\n// Keyboard / Mouse \"instructions\"\nkbd:not(.compound)\n margin: 0 0.2rem\n padding: 0 0.2rem\n border-radius: 0.2rem\n border: 1px solid var(--color-foreground-border)\n color: var(--color-foreground-primary)\n vertical-align: text-bottom\n\n font-size: var(--font-size--small--3)\n display: inline-block\n\n box-shadow: 0 0.0625rem 0 rgba(0, 0, 0, 0.2), inset 0 0 0 0.125rem var(--color-background-primary)\n\n background-color: var(--color-background-secondary)\n\n// Blockquote\nblockquote\n border-left: 4px solid var(--color-background-border)\n background: var(--color-background-secondary)\n\n margin-left: 0\n margin-right: 0\n padding: 0.5rem 1rem\n\n .attribution\n font-weight: 600\n text-align: right\n\n &.pull-quote,\n &.highlights\n font-size: 1.25em\n\n &.epigraph,\n &.pull-quote\n border-left-width: 0\n border-radius: 0.5rem\n\n &.highlights\n border-left-width: 0\n background: transparent\n\n// Center align embedded-in-text images\np .reference img\n vertical-align: middle\n","p.rubric\n line-height: 1.25\n font-weight: bold\n font-size: 1.125em\n\n // For Numpy-style documentation that's got rubrics within it.\n // https://github.com/pradyunsg/furo/discussions/505\n dd &\n line-height: inherit\n font-weight: inherit\n\n font-size: var(--font-size--small)\n text-transform: uppercase\n","article .sidebar\n float: right\n clear: right\n width: 30%\n\n margin-left: 1rem\n margin-right: 0\n\n border-radius: 0.2rem\n background-color: var(--color-background-secondary)\n border: var(--color-background-border) 1px solid\n\n > *\n padding-left: 1rem\n padding-right: 1rem\n\n > ul, > ol // lists need additional padding, because bullets.\n padding-left: 2.2rem\n\n .sidebar-title\n margin: 0\n padding: 0.5rem 1rem\n border-bottom: var(--color-background-border) 1px solid\n\n font-weight: 500\n\n// TODO: subtitle\n// TODO: dedicated variables?\n",".table-wrapper\n width: 100%\n overflow-x: auto\n margin-top: 1rem\n margin-bottom: 0.5rem\n padding: 0.2rem 0.2rem 0.75rem\n\ntable.docutils\n border-radius: 0.2rem\n border-spacing: 0\n border-collapse: collapse\n\n box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.05), 0 0 0.0625rem rgba(0, 0, 0, 0.1)\n\n th\n background: var(--color-table-header-background)\n\n td,\n th\n // Space things out properly\n padding: 0 0.25rem\n\n // Get the borders looking just-right.\n border-left: 1px solid var(--color-table-border)\n border-right: 1px solid var(--color-table-border)\n border-bottom: 1px solid var(--color-table-border)\n\n p\n margin: 0.25rem\n\n &:first-child\n border-left: none\n &:last-child\n border-right: none\n\n // MyST-parser tables set these classes for control of column alignment\n &.text-left\n text-align: left\n &.text-right\n text-align: right\n &.text-center\n text-align: center\n",":target\n scroll-margin-top: 0.5rem\n\n@media (max-width: $full-width - $sidebar-width)\n :target\n scroll-margin-top: calc(0.5rem + var(--header-height))\n\n // When a heading is selected\n section > span:target\n scroll-margin-top: calc(0.8rem + var(--header-height))\n\n// Permalinks\n.headerlink\n font-weight: 100\n user-select: none\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\ndl dt,\np.caption,\nfigcaption p,\ntable > caption,\n.code-block-caption\n > .headerlink\n margin-left: 0.5rem\n visibility: hidden\n &:hover > .headerlink\n visibility: visible\n\n // Don't change to link-like, if someone adds the contents directive.\n > .toc-backref\n color: inherit\n text-decoration-line: none\n\n// Figure and table captions are special.\nfigure:hover > figcaption > p > .headerlink,\ntable:hover > caption > .headerlink\n visibility: visible\n\n:target >, // Regular section[id] style anchors\nspan:target ~ // Non-regular span[id] style \"extra\" anchors\n h1,\n h2,\n h3,\n h4,\n h5,\n h6\n &:nth-of-type(1)\n background-color: var(--color-highlight-on-target)\n // .headerlink\n // visibility: visible\n code.literal\n background-color: transparent\n\ntable:target > caption,\nfigure:target\n background-color: var(--color-highlight-on-target)\n\n// Inline page contents\n.this-will-duplicate-information-and-it-is-still-useful-here li :target\n background-color: var(--color-highlight-on-target)\n\n// Code block permalinks\n.literal-block-wrapper:target .code-block-caption\n background-color: var(--color-highlight-on-target)\n\n// When a definition list item is selected\n//\n// There isn't really an alternative to !important here, due to the\n// high-specificity of API documentation's selector.\ndt:target\n background-color: var(--color-highlight-on-target) !important\n\n// When a footnote reference is selected\n.footnote > dt:target + dd,\n.footnote-reference:target\n background-color: var(--color-highlight-on-target)\n",".guilabel\n background-color: var(--color-guilabel-background)\n border: 1px solid var(--color-guilabel-border)\n color: var(--color-guilabel-text)\n\n padding: 0 0.3em\n border-radius: 0.5em\n font-size: 0.9em\n","// This file contains the styles used for stylizing the footer that's shown\n// below the content.\n\nfooter\n font-size: var(--font-size--small)\n display: flex\n flex-direction: column\n\n margin-top: 2rem\n\n// Bottom of page information\n.bottom-of-page\n display: flex\n align-items: center\n justify-content: space-between\n\n margin-top: 1rem\n padding-top: 1rem\n padding-bottom: 1rem\n\n color: var(--color-foreground-secondary)\n border-top: 1px solid var(--color-background-border)\n\n line-height: 1.5\n\n @media (max-width: $content-width)\n text-align: center\n flex-direction: column-reverse\n gap: 0.25rem\n\n .left-details\n font-size: var(--font-size--small)\n\n .right-details\n display: flex\n flex-direction: column\n gap: 0.25rem\n text-align: right\n\n .icons\n display: flex\n justify-content: flex-end\n gap: 0.25rem\n font-size: 1rem\n\n a\n text-decoration: none\n\n svg,\n img\n font-size: 1.125rem\n height: 1em\n width: 1em\n\n// Next/Prev page information\n.related-pages\n a\n display: flex\n align-items: center\n\n text-decoration: none\n &:hover .page-info .title\n text-decoration: underline\n color: var(--color-link)\n text-decoration-color: var(--color-link-underline)\n\n svg.furo-related-icon,\n svg.furo-related-icon > use\n flex-shrink: 0\n\n color: var(--color-foreground-border)\n\n width: 0.75rem\n height: 0.75rem\n margin: 0 0.5rem\n\n &.next-page\n max-width: 50%\n\n float: right\n clear: right\n text-align: right\n\n &.prev-page\n max-width: 50%\n\n float: left\n clear: left\n\n svg\n transform: rotate(180deg)\n\n.page-info\n display: flex\n flex-direction: column\n overflow-wrap: anywhere\n\n .next-page &\n align-items: flex-end\n\n .context\n display: flex\n align-items: center\n\n padding-bottom: 0.1rem\n\n color: var(--color-foreground-muted)\n font-size: var(--font-size--small)\n text-decoration: none\n","// This file contains the styles for the contents of the left sidebar, which\n// contains the navigation tree, logo, search etc.\n\n////////////////////////////////////////////////////////////////////////////////\n// Brand on top of the scrollable tree.\n////////////////////////////////////////////////////////////////////////////////\n.sidebar-brand\n display: flex\n flex-direction: column\n flex-shrink: 0\n\n padding: var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal)\n text-decoration: none\n\n.sidebar-brand-text\n color: var(--color-sidebar-brand-text)\n overflow-wrap: break-word\n margin: var(--sidebar-item-spacing-vertical) 0\n font-size: 1.5rem\n\n.sidebar-logo-container\n margin: var(--sidebar-item-spacing-vertical) 0\n\n.sidebar-logo\n margin: 0 auto\n display: block\n max-width: 100%\n\n////////////////////////////////////////////////////////////////////////////////\n// Search\n////////////////////////////////////////////////////////////////////////////////\n.sidebar-search-container\n display: flex\n align-items: center\n margin-top: var(--sidebar-search-space-above)\n\n position: relative\n\n background: var(--color-sidebar-search-background)\n &:hover,\n &:focus-within\n background: var(--color-sidebar-search-background--focus)\n\n &::before\n content: \"\"\n position: absolute\n left: var(--sidebar-item-spacing-horizontal)\n width: var(--sidebar-search-icon-size)\n height: var(--sidebar-search-icon-size)\n\n background-color: var(--color-sidebar-search-icon)\n mask-image: var(--icon-search)\n\n.sidebar-search\n box-sizing: border-box\n\n border: none\n border-top: 1px solid var(--color-sidebar-search-border)\n border-bottom: 1px solid var(--color-sidebar-search-border)\n\n padding-top: var(--sidebar-search-input-spacing-vertical)\n padding-bottom: var(--sidebar-search-input-spacing-vertical)\n padding-right: var(--sidebar-search-input-spacing-horizontal)\n padding-left: calc(var(--sidebar-item-spacing-horizontal) + var(--sidebar-search-input-spacing-horizontal) + var(--sidebar-search-icon-size))\n\n width: 100%\n\n color: var(--color-sidebar-search-foreground)\n background: transparent\n z-index: 10\n\n &:focus\n outline: none\n\n &::placeholder\n font-size: var(--sidebar-search-input-font-size)\n\n//\n// Hide Search Matches link\n//\n#searchbox .highlight-link\n padding: var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal) 0\n margin: 0\n text-align: center\n\n a\n color: var(--color-sidebar-search-icon)\n font-size: var(--font-size--small--2)\n\n////////////////////////////////////////////////////////////////////////////////\n// Structure/Skeleton of the navigation tree (left)\n////////////////////////////////////////////////////////////////////////////////\n.sidebar-tree\n font-size: var(--sidebar-item-font-size)\n margin-top: var(--sidebar-tree-space-above)\n margin-bottom: var(--sidebar-item-spacing-vertical)\n\n ul\n padding: 0\n margin-top: 0\n margin-bottom: 0\n\n display: flex\n flex-direction: column\n\n list-style: none\n\n li\n position: relative\n margin: 0\n\n > ul\n margin-left: var(--sidebar-item-spacing-horizontal)\n\n .icon\n color: var(--color-sidebar-link-text)\n\n .reference\n box-sizing: border-box\n color: var(--color-sidebar-link-text)\n\n // Fill the parent.\n display: inline-block\n line-height: var(--sidebar-item-line-height)\n text-decoration: none\n\n // Don't allow long words to cause wrapping.\n overflow-wrap: anywhere\n\n height: 100%\n width: 100%\n\n padding: var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal)\n\n &:hover\n background: var(--color-sidebar-item-background--hover)\n\n // Add a nice little \"external-link\" arrow here.\n &.external::after\n content: url('data:image/svg+xml,')\n margin: 0 0.25rem\n vertical-align: middle\n color: var(--color-sidebar-link-text)\n\n // Make the current page reference bold.\n .current-page > .reference\n font-weight: bold\n\n label\n position: absolute\n top: 0\n right: 0\n height: var(--sidebar-item-height)\n width: var(--sidebar-expander-width)\n\n cursor: pointer\n user-select: none\n\n display: flex\n justify-content: center\n align-items: center\n\n .caption, :not(.caption) > .caption-text\n font-size: var(--sidebar-caption-font-size)\n color: var(--color-sidebar-caption-text)\n\n font-weight: bold\n text-transform: uppercase\n\n margin: var(--sidebar-caption-space-above) 0 0 0\n padding: var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal)\n\n // If it has children, add a bit more padding to wrap the content to avoid\n // overlapping with the