Compare commits
	
		
			1 Commits
		
	
	
		
			slix-1.8.1
			...
			sleek-1.1.
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | 846f2bac5f | 
							
								
								
									
										13
									
								
								.github/pull_request_template.md
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										13
									
								
								.github/pull_request_template.md
									
									
									
									
										vendored
									
									
								
							| @@ -1,13 +0,0 @@ | ||||
| ################ Please use Gitlab instead of Github ################################### | ||||
|  | ||||
| Hello, thank you for contributing to slixmpp! | ||||
|  | ||||
| You’re about to open a pull request on github. However this github repository is not the official place for contributions on slixmpp. | ||||
|  | ||||
| Please open your merge request on https://lab.louiz.org/poezio/slixmpp/ | ||||
|  | ||||
| You should be able to log in there with your github credentials, clone the slixmpp repository in your namespace, push your existing pull request into a new branch, and then open a merge request with one click, within 3 minutes. | ||||
|  | ||||
| This will help us review your contribution, avoid spreading things everywhere and it will even run the tests automatically with your changes. | ||||
|  | ||||
| Thank you. | ||||
							
								
								
									
										12
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										12
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -1,4 +1,4 @@ | ||||
| *.py[co] | ||||
| *.pyc | ||||
| build/ | ||||
| dist/ | ||||
| MANIFEST | ||||
| @@ -6,12 +6,4 @@ docs/_build/ | ||||
| *.swp | ||||
| .tox/ | ||||
| .coverage | ||||
| slixmpp.egg-info/ | ||||
| .ropeproject/ | ||||
| 4913 | ||||
| *~ | ||||
| .baboon/ | ||||
| .DS_STORE | ||||
| .idea/ | ||||
| .vscode/ | ||||
| venv/ | ||||
| sleekxmpp.egg-info/ | ||||
|   | ||||
| @@ -1,70 +0,0 @@ | ||||
| stages: | ||||
|   - lint | ||||
|   - test | ||||
|   - trigger | ||||
|  | ||||
| mypy: | ||||
|   stage: lint | ||||
|   tags: | ||||
|     - docker | ||||
|   image: python:3 | ||||
|   script: | ||||
|     - pip3 install mypy | ||||
|     - mypy slixmpp | ||||
|  | ||||
| test: | ||||
|   stage: test | ||||
|   tags: | ||||
|     - docker | ||||
|   image: ubuntu:latest | ||||
|   script: | ||||
|     - apt update | ||||
|     - apt install -y python3 python3-pip cython3 gpg | ||||
|     - pip3 install emoji aiohttp | ||||
|     - ./run_tests.py | ||||
|  | ||||
| test-3.10: | ||||
|   stage: test | ||||
|   tags: | ||||
|     - docker | ||||
|   image: python:3.10 | ||||
|   script: | ||||
|     - apt update | ||||
|     - apt install -y python3 python3-pip cython3 gpg | ||||
|     - pip3 install emoji aiohttp | ||||
|     - ./run_tests.py | ||||
|  | ||||
| test-3.11: | ||||
|   stage: test | ||||
|   tags: | ||||
|     - docker | ||||
|   image: python:3.11-rc | ||||
|   allow_failure: true | ||||
|   script: | ||||
|     - apt update | ||||
|     - apt install -y python3 python3-pip cython3 gpg | ||||
|     - pip3 install emoji aiohttp | ||||
|     - ./run_tests.py | ||||
|  | ||||
| test_integration: | ||||
|   stage: test | ||||
|   tags: | ||||
|     - docker | ||||
|   image: ubuntu:latest | ||||
|   only: | ||||
|     variables: | ||||
|         - $CI_ACCOUNT1 | ||||
|         - $CI_ACCOUNT2 | ||||
|   script: | ||||
|     - apt update | ||||
|     - apt install -y python3 python3-pip cython3 gpg | ||||
|     - pip3 install emoji aiohttp aiodns | ||||
|     - ./run_integration_tests.py | ||||
|  | ||||
| trigger_poezio: | ||||
|   stage: trigger | ||||
|   tags: | ||||
|     - docker | ||||
|   image: curlimages/curl:7.79.1 | ||||
|   script: | ||||
|     - curl --request POST -F token="$SLIXMPP_TRIGGER_TOKEN" -F ref=master https://lab.louiz.org/api/v4/projects/18/trigger/pipeline | ||||
| @@ -1,7 +0,0 @@ | ||||
| language: python | ||||
| python: | ||||
|   - "3.7" | ||||
|   - "3.8-dev" | ||||
| install: | ||||
|   - "pip install ." | ||||
| script: testall.py | ||||
| @@ -1,14 +0,0 @@ | ||||
| Contributing to the Slixmpp project | ||||
| =================================== | ||||
|  | ||||
| To contribute, the preferred way is to commit your changes on some | ||||
| publicly-available git repository (on a fork `on github | ||||
| <https://github.com/poezio/slixmpp>`_ or on your own repository) and to | ||||
| notify the developers with either: | ||||
|  - a ticket `on the bug tracker <https://lab.louiz.org/poezio/slixmpp/issues/new>`_ | ||||
|  - a pull request on github | ||||
|  - a simple message on `the XMPP MUC <xmpp:slixmpp@muc.poez.io>`_ | ||||
|  | ||||
| Even though Slixmpp’s github repository is just a read-only mirror, we can | ||||
| still be notified of the pull requests and fetch your mirror manually to | ||||
| integrate your changes. | ||||
							
								
								
									
										6
									
								
								INSTALL
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								INSTALL
									
									
									
									
									
								
							| @@ -1,7 +1,5 @@ | ||||
| Pre-requisites: | ||||
| - Python 3.7+ | ||||
| - Cython 0.22 and libidn, optionally (making JID faster by compiling the stringprep module) | ||||
| - GnuPG, for testing | ||||
| - Python 3.1 or 2.6 | ||||
|  | ||||
| Install: | ||||
| > python3 setup.py install | ||||
| @@ -11,4 +9,4 @@ Root install: | ||||
|  | ||||
| To test: | ||||
| > cd examples | ||||
| > python3 echo_client.py -d -j [USER@example.com] -p [PASSWORD] | ||||
| > python echo_client.py -v -j [USER@example.com] -p [PASSWORD] | ||||
|   | ||||
							
								
								
									
										34
									
								
								LICENSE
									
									
									
									
									
								
							
							
						
						
									
										34
									
								
								LICENSE
									
									
									
									
									
								
							| @@ -69,8 +69,8 @@ modification, are permitted provided that the following conditions are met: | ||||
|     * Redistributions in binary form must reproduce the above copyright | ||||
|       notice, this list of conditions and the following disclaimer in the | ||||
|       documentation and/or other materials provided with the distribution. | ||||
|     * Neither the name of Red Innovation nor the names of its contributors | ||||
|       may be used to endorse or promote products derived from this software | ||||
|     * Neither the name of Red Innovation nor the names of its contributors  | ||||
|       may be used to endorse or promote products derived from this software  | ||||
|       without specific prior written permission. | ||||
|  | ||||
| THIS SOFTWARE IS PROVIDED BY RED INNOVATION ``AS IS'' AND ANY | ||||
| @@ -86,12 +86,40 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||
|  | ||||
|  | ||||
|  | ||||
| OrderedDict - A port of the Python 2.7+ OrderedDict to Python 2.6 | ||||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||||
|  | ||||
| Copyright (c) 2009 Raymond Hettinger | ||||
|  | ||||
| Permission is hereby granted, free of charge, to any person | ||||
| obtaining a copy of this software and associated documentation files | ||||
| (the "Software"), to deal in the Software without restriction, | ||||
| including without limitation the rights to use, copy, modify, merge, | ||||
| publish, distribute, sublicense, and/or sell copies of the Software, | ||||
| and to permit persons to whom the Software is furnished to do so, | ||||
| subject to the following conditions: | ||||
|  | ||||
|     The above copyright notice and this permission notice shall be | ||||
|     included in all copies or substantial portions of the Software. | ||||
|  | ||||
|     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||||
|     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||||
|     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||||
|     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||||
|     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||||
|     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||||
|     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||||
|     OTHER DEALINGS IN THE SOFTWARE. | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| SUELTA – A PURE-PYTHON SASL CLIENT LIBRARY | ||||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||||
|  | ||||
| This software is subject to "The MIT License" | ||||
|  | ||||
| Copyright 2004-2013 David Alan Cridland | ||||
| Copyright 2007-2010 David Alan Cridland | ||||
|  | ||||
| Permission is hereby granted, free of charge, to any person obtaining a copy | ||||
| of this software and associated documentation files (the "Software"), to deal | ||||
|   | ||||
| @@ -1,7 +1,6 @@ | ||||
| include README.rst | ||||
| include LICENSE | ||||
| include run_tests.py | ||||
| include slixmpp/stringprep.pyx | ||||
| include testall.py | ||||
| recursive-include docs Makefile *.bat *.py *.rst *.css *.ttf *.png | ||||
| recursive-include examples *.py | ||||
| recursive-include tests *.py | ||||
|   | ||||
							
								
								
									
										144
									
								
								README.rst
									
									
									
									
									
								
							
							
						
						
									
										144
									
								
								README.rst
									
									
									
									
									
								
							| @@ -1,21 +1,77 @@ | ||||
| Slixmpp | ||||
| SleekXMPP | ||||
| ######### | ||||
|  | ||||
| Slixmpp is an MIT licensed XMPP library for Python 3.7+. It is a fork of | ||||
| SleekXMPP. | ||||
| SleekXMPP is an MIT licensed XMPP library for Python 2.6/3.1+, | ||||
| and is featured in examples in | ||||
| `XMPP: The Definitive Guide <http://oreilly.com/catalog/9780596521271>`_  | ||||
| by Kevin Smith, Remko Tronçon, and Peter Saint-Andre. If you've arrived | ||||
| here from reading the Definitive Guide, please see the notes on updating | ||||
| the examples to the latest version of SleekXMPP. | ||||
|  | ||||
| Slixmpp's goals is to only rewrite the core of the library (the low level | ||||
| socket handling, the timers, the events dispatching) in order to remove all | ||||
| threads. | ||||
| SleekXMPP's design goals and philosphy are: | ||||
|  | ||||
| Building | ||||
| -------- | ||||
| **Low number of dependencies** | ||||
|     Installing and using SleekXMPP should be as simple as possible, without | ||||
|     having to deal with long dependency chains. | ||||
|  | ||||
| Slixmpp can make use of cython to improve performance on critical modules. | ||||
| To do that, **cython3** is necessary along with **libidn** headers. | ||||
| Otherwise, no compilation is needed. Building is done by running setup.py:: | ||||
|     As part of reducing the number of dependencies, some third party | ||||
|     modules are included with SleekXMPP in the ``thirdparty`` directory. | ||||
|     Imports from this module first try to import an existing installed | ||||
|     version before loading the packaged version, when possible. | ||||
|  | ||||
| **Every XEP as a plugin** | ||||
|     Following Python's "batteries included" approach, the goal is to | ||||
|     provide support for all currently active XEPs (final and draft). Since | ||||
|     adding XEP support is done through easy to create plugins, the hope is | ||||
|     to also provide a solid base for implementing and creating experimental | ||||
|     XEPs. | ||||
|  | ||||
| **Rewarding to work with** | ||||
|     As much as possible, SleekXMPP should allow things to "just work" using | ||||
|     sensible defaults and appropriate abstractions. XML can be ugly to work | ||||
|     with, but it doesn't have to be that way. | ||||
|  | ||||
|  | ||||
| Get the Code | ||||
| ------------ | ||||
|  | ||||
| Get the latest stable version from PyPI:: | ||||
|  | ||||
|     pip install sleekxmpp | ||||
|  | ||||
| The latest source code for SleekXMPP may be found on `Github | ||||
| <http://github.com/fritzy/SleekXMPP>`_. Releases can be found in the | ||||
| ``master`` branch, while the latest development version is in the | ||||
| ``develop`` branch. | ||||
|  | ||||
| **Latest Release** | ||||
|     - `1.1.10 <http://github.com/fritzy/SleekXMPP/zipball/1.1.10>`_ | ||||
|  | ||||
| **Develop Releases** | ||||
|     - `Latest Develop Version <http://github.com/fritzy/SleekXMPP/zipball/develop>`_ | ||||
|  | ||||
|  | ||||
| Installing DNSPython | ||||
| --------------------- | ||||
| If you are using Python3 and wish to use dnspython, you will have to checkout and | ||||
| install the ``python3`` branch:: | ||||
|  | ||||
|     git clone http://github.com/rthalley/dnspython | ||||
|     cd dnspython | ||||
|     git checkout python3 | ||||
|     python3 setup.py install | ||||
|  | ||||
| Discussion | ||||
| ---------- | ||||
| A mailing list and XMPP chat room are available for discussing and getting | ||||
| help with SleekXMPP. | ||||
|  | ||||
| **Mailing List** | ||||
|     `SleekXMPP Discussion on Google Groups <http://groups.google.com/group/sleekxmpp-discussion>`_ | ||||
|  | ||||
| **Chat** | ||||
|     `sleek@conference.jabber.org <xmpp:sleek@conference.jabber.org?join>`_ | ||||
|  | ||||
|     python3 setup.py build_ext --inplace | ||||
|  | ||||
| Documentation and Testing | ||||
| ------------------------- | ||||
| @@ -27,37 +83,22 @@ be in ``docs/_build/html``:: | ||||
|     make html | ||||
|     open _build/html/index.html | ||||
|  | ||||
| To run the test suite for Slixmpp:: | ||||
| To run the test suite for SleekXMPP:: | ||||
|  | ||||
|     python run_tests.py | ||||
|     python testall.py | ||||
|  | ||||
| Integration tests require the following environment variables to be set::: | ||||
|  | ||||
|     $CI_ACCOUNT1 | ||||
|     $CI_ACCOUNT1_PASSWORD | ||||
|     $CI_ACCOUNT2 | ||||
|     $CI_ACCOUNT2_PASSWORD | ||||
|     $CI_MUC_SERVER | ||||
|  | ||||
| where the account variables are JIDs of valid, existing accounts, and | ||||
| the passwords are the account passwords. The MUC server must allow room | ||||
| creation from those JIDs. | ||||
|  | ||||
| To run the integration test suite for Slixmpp:: | ||||
|  | ||||
|     python run_integration_tests.py | ||||
|  | ||||
| The Slixmpp Boilerplate | ||||
| The SleekXMPP Boilerplate | ||||
| ------------------------- | ||||
| Projects using Slixmpp tend to follow a basic pattern for setting up client/component | ||||
| connections and configuration. Here is the gist of the boilerplate needed for a Slixmpp | ||||
| based project. See the documentation or examples directory for more detailed archetypes for | ||||
| Slixmpp projects:: | ||||
| Projects using SleekXMPP tend to follow a basic pattern for setting up client/component | ||||
| connections and configuration. Here is the gist of the boilerplate needed for a SleekXMPP | ||||
| based project. See the documetation or examples directory for more detailed archetypes for | ||||
| SleekXMPP projects:: | ||||
|  | ||||
|     import logging | ||||
|  | ||||
|     from slixmpp import ClientXMPP | ||||
|     from slixmpp.exceptions import IqError, IqTimeout | ||||
|     from sleekxmpp import ClientXMPP | ||||
|     from sleekxmpp.exceptions import IqError, IqTimeout | ||||
|  | ||||
|  | ||||
|     class EchoBot(ClientXMPP): | ||||
| @@ -103,7 +144,7 @@ Slixmpp projects:: | ||||
|  | ||||
|  | ||||
|     if __name__ == '__main__': | ||||
|         # Ideally use optparse or argparse to get JID, | ||||
|         # Ideally use optparse or argparse to get JID,  | ||||
|         # password, and log level. | ||||
|  | ||||
|         logging.basicConfig(level=logging.DEBUG, | ||||
| @@ -111,38 +152,21 @@ Slixmpp projects:: | ||||
|  | ||||
|         xmpp = EchoBot('somejid@example.com', 'use_getpass') | ||||
|         xmpp.connect() | ||||
|         xmpp.process(forever=True) | ||||
|         xmpp.process(block=True) | ||||
|  | ||||
|  | ||||
| Slixmpp Credits | ||||
| --------------- | ||||
|  | ||||
| **Maintainers:** | ||||
|     - Florent Le Coz (`louiz@louiz.org <xmpp:louiz@louiz.org?message>`_), | ||||
|     - Mathieu Pasquet (`mathieui@mathieui.net <xmpp:mathieui@mathieui.net?message>`_), | ||||
|  | ||||
| **Contributors:** | ||||
|     - Emmanuel Gil Peyrot (`Link mauve <xmpp:linkmauve@linkmauve.fr?message>`_) | ||||
|     - Sam Whited (`Sam Whited <mailto:sam@samwhited.com>`_) | ||||
|     - Dan Sully (`Dan Sully <mailto:daniel@electricalrain.com>`_) | ||||
|     - Gasper Zejn (`Gasper Zejn <mailto:zejn@kiberpipa.org>`_) | ||||
|     - Krzysztof Kotlenga (`Krzysztof Kotlenga <mailto:pocek@users.sf.net>`_) | ||||
|     - Tsukasa Hiiragi (`Tsukasa Hiiragi <mailto:bakalolka@gmail.com>`_) | ||||
|     - Maxime Buquet (`pep <xmpp:pep@bouah.net?message>`_) | ||||
|  | ||||
| Credits (SleekXMPP) | ||||
| ------------------- | ||||
|  | ||||
| Credits | ||||
| ------- | ||||
| **Main Author:** Nathan Fritz | ||||
|     `fritzy@netflint.net <xmpp:fritzy@netflint.net?message>`_, | ||||
|     `fritzy@netflint.net <xmpp:fritzy@netflint.net?message>`_,  | ||||
|     `@fritzy <http://twitter.com/fritzy>`_ | ||||
|  | ||||
|     Nathan is also the author of XMPPHP and `Seesmic-AS3-XMPP | ||||
|     <http://code.google.com/p/seesmic-as3-xmpp/>`_, and a former member of | ||||
|     <http://code.google.com/p/seesmic-as3-xmpp/>`_, and a former member of  | ||||
|     the XMPP Council. | ||||
|  | ||||
| **Co-Author:** Lance Stout | ||||
|     `lancestout@gmail.com <xmpp:lancestout@gmail.com?message>`_, | ||||
|     `lancestout@gmail.com <xmpp:lancestout@gmail.com?message>`_,  | ||||
|     `@lancestout <http://twitter.com/lancestout>`_ | ||||
|  | ||||
| **Contributors:** | ||||
|   | ||||
| @@ -72,17 +72,17 @@ qthelp: | ||||
| 	@echo | ||||
| 	@echo "Build finished; now you can run "qcollectiongenerator" with the" \ | ||||
| 	      ".qhcp project file in $(BUILDDIR)/qthelp, like this:" | ||||
| 	@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/Slixmpp.qhcp" | ||||
| 	@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/SleekXMPP.qhcp" | ||||
| 	@echo "To view the help file:" | ||||
| 	@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/Slixmpp.qhc" | ||||
| 	@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/SleekXMPP.qhc" | ||||
|  | ||||
| devhelp: | ||||
| 	$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp | ||||
| 	@echo | ||||
| 	@echo "Build finished." | ||||
| 	@echo "To view the help file:" | ||||
| 	@echo "# mkdir -p $$HOME/.local/share/devhelp/Slixmpp" | ||||
| 	@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/Slixmpp" | ||||
| 	@echo "# mkdir -p $$HOME/.local/share/devhelp/SleekXMPP" | ||||
| 	@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/SleekXMPP" | ||||
| 	@echo "# devhelp" | ||||
|  | ||||
| epub: | ||||
|   | ||||
							
								
								
									
										452
									
								
								docs/_static/agogo.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										452
									
								
								docs/_static/agogo.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,452 @@ | ||||
| /* | ||||
|  * agogo.css_t | ||||
|  * ~~~~~~~~~~~ | ||||
|  * | ||||
|  * Sphinx stylesheet -- agogo theme. | ||||
|  * | ||||
|  * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. | ||||
|  * :license: BSD, see LICENSE for details. | ||||
|  * | ||||
|  */ | ||||
|  | ||||
| * { | ||||
|   margin: 0px; | ||||
|   padding: 0px; | ||||
| } | ||||
|  | ||||
| body { | ||||
|   font-family: "Verdana", Arial, sans-serif; | ||||
|   line-height: 1.4em; | ||||
|   color: black; | ||||
|   background-color: #eeeeec; | ||||
| } | ||||
|  | ||||
|  | ||||
| /* Page layout */ | ||||
|  | ||||
| div.header, div.content, div.footer { | ||||
|   width: 70em; | ||||
|   margin-left: auto; | ||||
|   margin-right: auto; | ||||
| } | ||||
|  | ||||
| div.header-wrapper { | ||||
|   background: url(bgtop.png) top left repeat-x; | ||||
|   border-bottom: 3px solid #2e3436; | ||||
| } | ||||
|  | ||||
|  | ||||
| /* Default body styles */ | ||||
| a { | ||||
|   color: #ce5c00; | ||||
| } | ||||
|  | ||||
| div.bodywrapper a, div.footer a { | ||||
|   text-decoration: underline; | ||||
| } | ||||
|  | ||||
| .clearer { | ||||
|   clear: both; | ||||
| } | ||||
|  | ||||
| .left { | ||||
|   float: left; | ||||
| } | ||||
|  | ||||
| .right { | ||||
|   float: right; | ||||
| } | ||||
|  | ||||
| .line-block { | ||||
|     display: block; | ||||
|     margin-top: 1em; | ||||
|     margin-bottom: 1em; | ||||
| } | ||||
|  | ||||
| .line-block .line-block { | ||||
|     margin-top: 0; | ||||
|     margin-bottom: 0; | ||||
|     margin-left: 1.5em; | ||||
| } | ||||
|  | ||||
| h1, h2, h3, h4 { | ||||
|   font-family: "Georgia", "Times New Roman", serif; | ||||
|   font-weight: normal; | ||||
|   color: #3465a4; | ||||
|   margin-bottom: .8em; | ||||
| } | ||||
|  | ||||
| h1 { | ||||
|   color: #204a87; | ||||
| } | ||||
|  | ||||
| h2 { | ||||
|   padding-bottom: .5em; | ||||
|   border-bottom: 1px solid #3465a4; | ||||
| } | ||||
|  | ||||
| a.headerlink { | ||||
|   visibility: hidden; | ||||
|   color: #dddddd; | ||||
|   padding-left: .3em; | ||||
| } | ||||
|  | ||||
| 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 { | ||||
|   visibility: visible; | ||||
| } | ||||
|  | ||||
| img { | ||||
|   border: 0; | ||||
| } | ||||
|  | ||||
| div.admonition { | ||||
|   margin-top: 10px; | ||||
|   margin-bottom: 10px; | ||||
|   padding: 2px 7px 1px 7px; | ||||
|   border-left: 0.2em solid black; | ||||
| } | ||||
|  | ||||
| p.admonition-title { | ||||
|   margin: 0px 10px 5px 0px; | ||||
|   font-weight: bold; | ||||
| } | ||||
|  | ||||
| dt:target, .highlighted { | ||||
|   background-color: #fbe54e; | ||||
| } | ||||
|  | ||||
| /* Header */ | ||||
|  | ||||
| div.header { | ||||
|   padding-top: 10px; | ||||
|   padding-bottom: 10px; | ||||
| } | ||||
|  | ||||
| div.header h1 { | ||||
|   font-family: "Georgia", "Times New Roman", serif; | ||||
|   font-weight: normal; | ||||
|   font-size: 180%; | ||||
|   letter-spacing: .08em; | ||||
| } | ||||
|  | ||||
| div.header h1 a { | ||||
|   color: white; | ||||
| } | ||||
|  | ||||
| div.header div.rel { | ||||
|   margin-top: 1em; | ||||
| } | ||||
|  | ||||
| div.header div.rel a { | ||||
|   color: #fcaf3e; | ||||
|   letter-spacing: .1em; | ||||
|   text-transform: uppercase; | ||||
| } | ||||
|  | ||||
| p.logo { | ||||
|     float: right; | ||||
| } | ||||
|  | ||||
| img.logo { | ||||
|     border: 0; | ||||
| } | ||||
|  | ||||
|  | ||||
| /* Content */ | ||||
| div.content-wrapper { | ||||
|   background-color: white; | ||||
|   padding-top: 20px; | ||||
|   padding-bottom: 20px; | ||||
| } | ||||
|  | ||||
| div.document { | ||||
|   width: 50em; | ||||
|   float: left; | ||||
| } | ||||
|  | ||||
| div.body { | ||||
|   padding-right: 2em; | ||||
|   text-align: justify; | ||||
| } | ||||
|  | ||||
| div.document ul { | ||||
|   margin: 1.5em; | ||||
|   list-style-type: square; | ||||
| } | ||||
|  | ||||
| div.document dd { | ||||
|   margin-left: 1.2em; | ||||
|   margin-top: .4em; | ||||
|   margin-bottom: 1em; | ||||
| } | ||||
|  | ||||
| div.document .section { | ||||
|   margin-top: 1.7em; | ||||
| } | ||||
| div.document .section:first-child { | ||||
|   margin-top: 0px; | ||||
| } | ||||
|  | ||||
| div.document div.highlight { | ||||
|   padding: 3px; | ||||
|   background-color: #eeeeec; | ||||
|   border-top: 2px solid #dddddd; | ||||
|   border-bottom: 2px solid #dddddd; | ||||
|   margin-top: .8em; | ||||
|   margin-bottom: .8em; | ||||
| } | ||||
|  | ||||
| div.document h2 { | ||||
|   margin-top: .7em; | ||||
| } | ||||
|  | ||||
| div.document p { | ||||
|   margin-bottom: .5em; | ||||
| } | ||||
|  | ||||
| div.document li.toctree-l1 { | ||||
|   margin-bottom: 1em; | ||||
| } | ||||
|  | ||||
| div.document .descname { | ||||
|   font-weight: bold; | ||||
| } | ||||
|  | ||||
| div.document .docutils.literal { | ||||
|   background-color: #eeeeec; | ||||
|   padding: 1px; | ||||
| } | ||||
|  | ||||
| div.document .docutils.xref.literal { | ||||
|   background-color: transparent; | ||||
|   padding: 0px; | ||||
| } | ||||
|  | ||||
| div.document blockquote { | ||||
|   margin: 1em; | ||||
| } | ||||
|  | ||||
| div.document ol { | ||||
|   margin: 1.5em; | ||||
| } | ||||
|  | ||||
|  | ||||
| /* Sidebar */ | ||||
|  | ||||
| div.sidebar { | ||||
|   width: 20em; | ||||
|   float: right; | ||||
|   font-size: .9em; | ||||
| } | ||||
|  | ||||
| div.sidebar a, div.header a { | ||||
|   text-decoration: none; | ||||
| } | ||||
|  | ||||
| div.sidebar a:hover, div.header a:hover { | ||||
|   text-decoration: underline; | ||||
| } | ||||
|  | ||||
| div.sidebar h3 { | ||||
|   color: #2e3436; | ||||
|   text-transform: uppercase; | ||||
|   font-size: 130%; | ||||
|   letter-spacing: .1em; | ||||
| } | ||||
|  | ||||
| div.sidebar ul { | ||||
|   list-style-type: none; | ||||
| } | ||||
|  | ||||
| div.sidebar li.toctree-l1 a { | ||||
|   display: block; | ||||
|   padding: 1px; | ||||
|   border: 1px solid #dddddd; | ||||
|   background-color: #eeeeec; | ||||
|   margin-bottom: .4em; | ||||
|   padding-left: 3px; | ||||
|   color: #2e3436; | ||||
| } | ||||
|  | ||||
| div.sidebar li.toctree-l2 a { | ||||
|   background-color: transparent; | ||||
|   border: none; | ||||
|   margin-left: 1em; | ||||
|   border-bottom: 1px solid #dddddd; | ||||
| } | ||||
|  | ||||
| div.sidebar li.toctree-l3 a { | ||||
|   background-color: transparent; | ||||
|   border: none; | ||||
|   margin-left: 2em; | ||||
|   border-bottom: 1px solid #dddddd; | ||||
| } | ||||
|  | ||||
| div.sidebar li.toctree-l2:last-child a { | ||||
|   border-bottom: none; | ||||
| } | ||||
|  | ||||
| div.sidebar li.toctree-l1.current a { | ||||
|   border-right: 5px solid #fcaf3e; | ||||
| } | ||||
|  | ||||
| div.sidebar li.toctree-l1.current li.toctree-l2 a { | ||||
|   border-right: none; | ||||
| } | ||||
|  | ||||
|  | ||||
| /* Footer */ | ||||
|  | ||||
| div.footer-wrapper { | ||||
|   background: url(bgfooter.png) top left repeat-x; | ||||
|   border-top: 4px solid #babdb6; | ||||
|   padding-top: 10px; | ||||
|   padding-bottom: 10px; | ||||
|   min-height: 80px; | ||||
| } | ||||
|  | ||||
| div.footer, div.footer a { | ||||
|   color: #888a85; | ||||
| } | ||||
|  | ||||
| div.footer .right { | ||||
|   text-align: right; | ||||
| } | ||||
|  | ||||
| div.footer .left { | ||||
|   text-transform: uppercase; | ||||
| } | ||||
|  | ||||
|  | ||||
| /* Styles copied from basic theme */ | ||||
|  | ||||
| img.align-left, .figure.align-left, object.align-left { | ||||
|     clear: left; | ||||
|     float: left; | ||||
|     margin-right: 1em; | ||||
| } | ||||
|  | ||||
| img.align-right, .figure.align-right, object.align-right { | ||||
|     clear: right; | ||||
|     float: right; | ||||
|     margin-left: 1em; | ||||
| } | ||||
|  | ||||
| img.align-center, .figure.align-center, object.align-center { | ||||
|   display: block; | ||||
|   margin-left: auto; | ||||
|   margin-right: auto; | ||||
| } | ||||
|  | ||||
| .align-left { | ||||
|     text-align: left; | ||||
| } | ||||
|  | ||||
| .align-center { | ||||
|     clear: both; | ||||
|     text-align: center; | ||||
| } | ||||
|  | ||||
| .align-right { | ||||
|     text-align: right; | ||||
| } | ||||
|  | ||||
| /* -- 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 div.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%; | ||||
| } | ||||
|  | ||||
| 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 td { | ||||
|     text-align: left; | ||||
|     vertical-align: top; | ||||
| } | ||||
|  | ||||
| table.indextable dl, table.indextable dd { | ||||
|     margin-top: 0; | ||||
|     margin-bottom: 0; | ||||
| } | ||||
|  | ||||
| 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; | ||||
| } | ||||
|  | ||||
| /* -- viewcode extension ---------------------------------------------------- */ | ||||
|  | ||||
| .viewcode-link { | ||||
|     float: right; | ||||
| } | ||||
|  | ||||
| .viewcode-back { | ||||
|     float: right; | ||||
|     font-family:: "Verdana", Arial, sans-serif; | ||||
| } | ||||
|  | ||||
| div.viewcode-block:target { | ||||
|     margin: -1px -3px; | ||||
|     padding: 0 3px; | ||||
|     background-color: #f4debf; | ||||
|     border-top: 1px solid #ac9; | ||||
|     border-bottom: 1px solid #ac9; | ||||
| } | ||||
							
								
								
									
										532
									
								
								docs/_static/basic.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										532
									
								
								docs/_static/basic.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,532 @@ | ||||
| /* | ||||
|  * basic.css | ||||
|  * ~~~~~~~~~ | ||||
|  * | ||||
|  * Sphinx stylesheet -- basic theme. | ||||
|  * | ||||
|  * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. | ||||
|  * :license: BSD, see LICENSE for details. | ||||
|  * | ||||
|  */ | ||||
|  | ||||
| /* -- main layout ----------------------------------------------------------- */ | ||||
|  | ||||
| div.clearer { | ||||
|     clear: both; | ||||
| } | ||||
|  | ||||
| /* -- 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%; | ||||
| } | ||||
|  | ||||
| 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; | ||||
| } | ||||
|  | ||||
| img { | ||||
|     border: 0; | ||||
| } | ||||
|  | ||||
| /* -- 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 div.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%; | ||||
| } | ||||
|  | ||||
| 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 dl, table.indextable dd { | ||||
|     margin-top: 0; | ||||
|     margin-bottom: 0; | ||||
| } | ||||
|  | ||||
| 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; | ||||
| } | ||||
|  | ||||
| /* -- general body styles --------------------------------------------------- */ | ||||
|  | ||||
| a.headerlink { | ||||
|     visibility: hidden; | ||||
| } | ||||
|  | ||||
| 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 { | ||||
|     visibility: visible; | ||||
| } | ||||
|  | ||||
| div.body p.caption { | ||||
|     text-align: inherit; | ||||
| } | ||||
|  | ||||
| div.body td { | ||||
|     text-align: left; | ||||
| } | ||||
|  | ||||
| .field-list ul { | ||||
|     padding-left: 1em; | ||||
| } | ||||
|  | ||||
| .first { | ||||
|     margin-top: 0 !important; | ||||
| } | ||||
|  | ||||
| p.rubric { | ||||
|     margin-top: 30px; | ||||
|     font-weight: bold; | ||||
| } | ||||
|  | ||||
| img.align-left, .figure.align-left, object.align-left { | ||||
|     clear: left; | ||||
|     float: left; | ||||
|     margin-right: 1em; | ||||
| } | ||||
|  | ||||
| img.align-right, .figure.align-right, object.align-right { | ||||
|     clear: right; | ||||
|     float: right; | ||||
|     margin-left: 1em; | ||||
| } | ||||
|  | ||||
| img.align-center, .figure.align-center, object.align-center { | ||||
|   display: block; | ||||
|   margin-left: auto; | ||||
|   margin-right: auto; | ||||
| } | ||||
|  | ||||
| .align-left { | ||||
|     text-align: left; | ||||
| } | ||||
|  | ||||
| .align-center { | ||||
|     clear: both; | ||||
|     text-align: center; | ||||
| } | ||||
|  | ||||
| .align-right { | ||||
|     text-align: right; | ||||
| } | ||||
|  | ||||
| /* -- sidebars -------------------------------------------------------------- */ | ||||
|  | ||||
| div.sidebar { | ||||
|     margin: 0 0 0.5em 1em; | ||||
|     border: 1px solid #ddb; | ||||
|     padding: 7px 7px 0 7px; | ||||
|     background-color: #efefef; | ||||
|     width: 40%; | ||||
|     float: right; | ||||
|     -mox-border-radius: 4px; | ||||
|     -webkit-border-radius: 4px; | ||||
|     border-radius: 4px; | ||||
| } | ||||
|  | ||||
| p.sidebar-title { | ||||
|     font-weight: bold; | ||||
|     text-transform: uppercase; | ||||
| } | ||||
|  | ||||
| /* -- topics ---------------------------------------------------------------- */ | ||||
|  | ||||
| div.topic { | ||||
|     border: 1px solid #ccc; | ||||
|     padding: 7px 7px 0 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; | ||||
| } | ||||
|  | ||||
| div.admonition dl { | ||||
|     margin-bottom: 0; | ||||
| } | ||||
|  | ||||
| p.admonition-title { | ||||
|     margin: 0px 10px 5px 0px; | ||||
|     font-weight: bold; | ||||
| } | ||||
|  | ||||
| div.body p.centered { | ||||
|     text-align: center; | ||||
|     margin-top: 25px; | ||||
| } | ||||
|  | ||||
| /* -- tables ---------------------------------------------------------------- */ | ||||
|  | ||||
| table.docutils { | ||||
|     border: 0; | ||||
|     border-collapse: collapse; | ||||
| } | ||||
|  | ||||
| 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; | ||||
| } | ||||
|  | ||||
| table.field-list td, table.field-list th { | ||||
|     border: 0 !important; | ||||
| } | ||||
|  | ||||
| table.footnote td, table.footnote th { | ||||
|     border: 0 !important; | ||||
| } | ||||
|  | ||||
| th { | ||||
|     text-align: left; | ||||
|     padding-right: 5px; | ||||
| } | ||||
|  | ||||
| table.citation { | ||||
|     border-left: solid 1px gray; | ||||
|     margin-left: 1px; | ||||
| } | ||||
|  | ||||
| table.citation td { | ||||
|     border-bottom: none; | ||||
| } | ||||
|  | ||||
| /* -- 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; | ||||
| } | ||||
|  | ||||
| dl { | ||||
|     margin-bottom: 15px; | ||||
| } | ||||
|  | ||||
| dd p { | ||||
|     margin-top: 0px; | ||||
| } | ||||
|  | ||||
| dd ul, dd table { | ||||
|     margin-bottom: 10px; | ||||
| } | ||||
|  | ||||
| dd { | ||||
|     margin-top: 3px; | ||||
|     margin-bottom: 10px; | ||||
|     margin-left: 30px; | ||||
| } | ||||
|  | ||||
| dt:target, .highlighted { | ||||
| } | ||||
|  | ||||
| dl.glossary dt { | ||||
|     font-weight: bold; | ||||
|     font-size: 1.1em; | ||||
| } | ||||
|  | ||||
| .field-list ul { | ||||
|     margin: 0; | ||||
|     padding-left: 1em; | ||||
| } | ||||
|  | ||||
| .field-list p { | ||||
|     margin: 0; | ||||
| } | ||||
|  | ||||
| .refcount { | ||||
|     color: #060; | ||||
| } | ||||
|  | ||||
| .optional { | ||||
|     font-size: 1.3em; | ||||
| } | ||||
|  | ||||
| .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; | ||||
| } | ||||
|  | ||||
| /* -- code displays --------------------------------------------------------- */ | ||||
|  | ||||
| pre { | ||||
|     overflow: auto; | ||||
|     overflow-y: hidden;  /* fixes display issues on Chrome browsers */ | ||||
| } | ||||
|  | ||||
| td.linenos pre { | ||||
|     padding: 5px 0px; | ||||
|     border: 0; | ||||
|     background-color: transparent; | ||||
|     color: #aaa; | ||||
| } | ||||
|  | ||||
| table.highlighttable { | ||||
|     margin-left: 0.5em; | ||||
| } | ||||
|  | ||||
| table.highlighttable td { | ||||
|     padding: 0 0.5em 0 0.5em; | ||||
| } | ||||
|  | ||||
| tt.descname { | ||||
|     background-color: transparent; | ||||
|     font-weight: bold; | ||||
|     font-size: 1.2em; | ||||
| } | ||||
|  | ||||
| tt.descclassname { | ||||
|     background-color: transparent; | ||||
| } | ||||
|  | ||||
| tt.xref, a tt { | ||||
|     background-color: transparent; | ||||
|     font-weight: bold; | ||||
| } | ||||
|  | ||||
| h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt { | ||||
|     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; | ||||
| } | ||||
|  | ||||
| /* -- 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; | ||||
|     } | ||||
| } | ||||
|  | ||||
							
								
								
									
										256
									
								
								docs/_static/default.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										256
									
								
								docs/_static/default.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,256 @@ | ||||
| /* | ||||
|  * default.css_t | ||||
|  * ~~~~~~~~~~~~~ | ||||
|  * | ||||
|  * Sphinx stylesheet -- default theme. | ||||
|  * | ||||
|  * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. | ||||
|  * :license: BSD, see LICENSE for details. | ||||
|  * | ||||
|  */ | ||||
|  | ||||
| @import url("basic.css"); | ||||
|  | ||||
| /* -- page layout ----------------------------------------------------------- */ | ||||
|  | ||||
| body { | ||||
|     font-family: sans-serif; | ||||
|     font-size: 100%; | ||||
|     background-color: #11303d; | ||||
|     color: #000; | ||||
|     margin: 0; | ||||
|     padding: 0; | ||||
| } | ||||
|  | ||||
| div.document { | ||||
|     background-color: #1c4e63; | ||||
| } | ||||
|  | ||||
| div.documentwrapper { | ||||
|     float: left; | ||||
|     width: 100%; | ||||
| } | ||||
|  | ||||
| div.bodywrapper { | ||||
|     margin: 0 0 0 230px; | ||||
| } | ||||
|  | ||||
| div.body { | ||||
|     background-color: #ffffff; | ||||
|     color: #000000; | ||||
|     padding: 0 20px 30px 20px; | ||||
| } | ||||
|  | ||||
| div.footer { | ||||
|     color: #ffffff; | ||||
|     width: 100%; | ||||
|     padding: 9px 0 9px 0; | ||||
|     text-align: center; | ||||
|     font-size: 75%; | ||||
| } | ||||
|  | ||||
| div.footer a { | ||||
|     color: #ffffff; | ||||
|     text-decoration: underline; | ||||
| } | ||||
|  | ||||
| div.related { | ||||
|     background-color: #133f52; | ||||
|     line-height: 30px; | ||||
|     color: #ffffff; | ||||
| } | ||||
|  | ||||
| div.related a { | ||||
|     color: #ffffff; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar { | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar h3 { | ||||
|     font-family: 'Trebuchet MS', sans-serif; | ||||
|     color: #ffffff; | ||||
|     font-size: 1.4em; | ||||
|     font-weight: normal; | ||||
|     margin: 0; | ||||
|     padding: 0; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar h3 a { | ||||
|     color: #ffffff; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar h4 { | ||||
|     font-family: 'Trebuchet MS', sans-serif; | ||||
|     color: #ffffff; | ||||
|     font-size: 1.3em; | ||||
|     font-weight: normal; | ||||
|     margin: 5px 0 0 0; | ||||
|     padding: 0; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar p { | ||||
|     color: #ffffff; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar p.topless { | ||||
|     margin: 5px 10px 10px 10px; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar ul { | ||||
|     margin: 10px; | ||||
|     padding: 0; | ||||
|     color: #ffffff; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar a { | ||||
|     color: #98dbcc; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar input { | ||||
|     border: 1px solid #98dbcc; | ||||
|     font-family: sans-serif; | ||||
|     font-size: 1em; | ||||
| } | ||||
|  | ||||
|  | ||||
|  | ||||
| /* -- hyperlink styles ------------------------------------------------------ */ | ||||
|  | ||||
| a { | ||||
|     color: #355f7c; | ||||
|     text-decoration: none; | ||||
| } | ||||
|  | ||||
| a:visited { | ||||
|     color: #355f7c; | ||||
|     text-decoration: none; | ||||
| } | ||||
|  | ||||
| a:hover { | ||||
|     text-decoration: underline; | ||||
| } | ||||
|  | ||||
|  | ||||
|  | ||||
| /* -- body styles ----------------------------------------------------------- */ | ||||
|  | ||||
| div.body h1, | ||||
| div.body h2, | ||||
| div.body h3, | ||||
| div.body h4, | ||||
| div.body h5, | ||||
| div.body h6 { | ||||
|     font-family: 'Trebuchet MS', sans-serif; | ||||
|     background-color: #f2f2f2; | ||||
|     font-weight: normal; | ||||
|     color: #20435c; | ||||
|     border-bottom: 1px solid #ccc; | ||||
|     margin: 20px -20px 10px -20px; | ||||
|     padding: 3px 0 3px 10px; | ||||
| } | ||||
|  | ||||
| div.body h1 { margin-top: 0; font-size: 200%; } | ||||
| div.body h2 { font-size: 160%; } | ||||
| div.body h3 { font-size: 140%; } | ||||
| div.body h4 { font-size: 120%; } | ||||
| div.body h5 { font-size: 110%; } | ||||
| div.body h6 { font-size: 100%; } | ||||
|  | ||||
| a.headerlink { | ||||
|     color: #c60f0f; | ||||
|     font-size: 0.8em; | ||||
|     padding: 0 4px 0 4px; | ||||
|     text-decoration: none; | ||||
| } | ||||
|  | ||||
| a.headerlink:hover { | ||||
|     background-color: #c60f0f; | ||||
|     color: white; | ||||
| } | ||||
|  | ||||
| div.body p, div.body dd, div.body li { | ||||
|     text-align: justify; | ||||
|     line-height: 130%; | ||||
| } | ||||
|  | ||||
| div.admonition p.admonition-title + p { | ||||
|     display: inline; | ||||
| } | ||||
|  | ||||
| div.admonition p { | ||||
|     margin-bottom: 5px; | ||||
| } | ||||
|  | ||||
| div.admonition pre { | ||||
|     margin-bottom: 5px; | ||||
| } | ||||
|  | ||||
| div.admonition ul, div.admonition ol { | ||||
|     margin-bottom: 5px; | ||||
| } | ||||
|  | ||||
| div.note { | ||||
|     background-color: #eee; | ||||
|     border: 1px solid #ccc; | ||||
| } | ||||
|  | ||||
| div.seealso { | ||||
|     background-color: #ffc; | ||||
|     border: 1px solid #ff6; | ||||
| } | ||||
|  | ||||
| div.topic { | ||||
|     background-color: #eee; | ||||
| } | ||||
|  | ||||
| div.warning { | ||||
|     background-color: #ffe4e4; | ||||
|     border: 1px solid #f66; | ||||
| } | ||||
|  | ||||
| p.admonition-title { | ||||
|     display: inline; | ||||
| } | ||||
|  | ||||
| p.admonition-title:after { | ||||
|     content: ":"; | ||||
| } | ||||
|  | ||||
| pre { | ||||
|     padding: 5px; | ||||
|     background-color: #eeffcc; | ||||
|     color: #333333; | ||||
|     line-height: 120%; | ||||
|     border: 1px solid #ac9; | ||||
|     border-left: none; | ||||
|     border-right: none; | ||||
| } | ||||
|  | ||||
| tt { | ||||
|     background-color: #ecf0f3; | ||||
|     padding: 0 1px 0 1px; | ||||
|     font-size: 0.95em; | ||||
| } | ||||
|  | ||||
| th { | ||||
|     background-color: #ede; | ||||
| } | ||||
|  | ||||
| .warning tt { | ||||
|     background: #efc2c2; | ||||
| } | ||||
|  | ||||
| .note tt { | ||||
|     background: #d6d6d6; | ||||
| } | ||||
|  | ||||
| .viewcode-back { | ||||
|     font-family: sans-serif; | ||||
| } | ||||
|  | ||||
| div.viewcode-block:target { | ||||
|     background-color: #f4debf; | ||||
|     border-top: 1px solid #ac9; | ||||
|     border-bottom: 1px solid #ac9; | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								docs/_static/fonts/Museo_Slab_500.otf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								docs/_static/fonts/Museo_Slab_500.otf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								docs/_static/fonts/Museo_Slab_500italic.otf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								docs/_static/fonts/Museo_Slab_500italic.otf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								docs/_static/fonts/OFLGoudyStMTT-Italic.ttf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								docs/_static/fonts/OFLGoudyStMTT-Italic.ttf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								docs/_static/fonts/OFLGoudyStMTT.ttf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								docs/_static/fonts/OFLGoudyStMTT.ttf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								docs/_static/fonts/YanoneKaffeesatz-Bold.ttf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								docs/_static/fonts/YanoneKaffeesatz-Bold.ttf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								docs/_static/fonts/YanoneKaffeesatz-Light.ttf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								docs/_static/fonts/YanoneKaffeesatz-Light.ttf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								docs/_static/fonts/YanoneKaffeesatz-Regular.ttf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								docs/_static/fonts/YanoneKaffeesatz-Regular.ttf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								docs/_static/fonts/YanoneKaffeesatz-Thin.ttf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								docs/_static/fonts/YanoneKaffeesatz-Thin.ttf
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										431
									
								
								docs/_static/haiku.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										431
									
								
								docs/_static/haiku.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,431 @@ | ||||
| /* | ||||
|  * haiku.css_t | ||||
|  * ~~~~~~~~~~~ | ||||
|  * | ||||
|  * Sphinx stylesheet -- haiku theme. | ||||
|  * | ||||
|  * Adapted from http://haiku-os.org/docs/Haiku-doc.css. | ||||
|  * Original copyright message: | ||||
|  * | ||||
|  *     Copyright 2008-2009, Haiku. All rights reserved. | ||||
|  *     Distributed under the terms of the MIT License. | ||||
|  * | ||||
|  *     Authors: | ||||
|  *              Francois Revol <revol@free.fr> | ||||
|  *              Stephan Assmus <superstippi@gmx.de> | ||||
|  *              Braden Ewing <brewin@gmail.com> | ||||
|  *              Humdinger <humdingerb@gmail.com> | ||||
|  * | ||||
|  * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. | ||||
|  * :license: BSD, see LICENSE for details. | ||||
|  * | ||||
|  */ | ||||
|  | ||||
| @import url("basic.css"); | ||||
|  | ||||
|  | ||||
| @font-face { | ||||
|     font-family: "Museo Slab"; | ||||
|     font-weight: normal; | ||||
|     font-style: normal; | ||||
|     src: local("Museo Slab"), | ||||
|          url("fonts/Museo_Slab_500.otf") format("opentype"); | ||||
| } | ||||
|  | ||||
| @font-face { | ||||
|     font-family: "Yanone Kaffeesatz"; | ||||
|     font-weight: bold; | ||||
|     font-style: normal; | ||||
|     src: local("Yanone Kaffeesatz"), | ||||
|          url("fonts/YanoneKaffeesatz-Bold.ttf") format("truetype"); | ||||
| } | ||||
|  | ||||
| @font-face { | ||||
|     font-family: "Yanone Kaffeesatz"; | ||||
|     font-weight: lighter; | ||||
|     font-style: normal; | ||||
|     src: local("Yanone Kaffeesatz"), | ||||
|          url("fonts/YanoneKaffeesatz-Regular.ttf") format("truetype"); | ||||
| } | ||||
|  | ||||
| html { | ||||
|     margin: 0px; | ||||
|     padding: 0px; | ||||
|     background: #FFF url(header.png) top left repeat-x; | ||||
| } | ||||
|  | ||||
| body { | ||||
|     line-height: 1.5; | ||||
|     margin: auto; | ||||
|     padding: 0px; | ||||
|     font-family: "Helvetica Neueu", Helvetica, sans-serif; | ||||
|     min-width: 30em; | ||||
|     max-width: 70em; | ||||
|     color: #444; | ||||
|     text-align: center; | ||||
| } | ||||
|  | ||||
| div.footer { | ||||
|     padding: 8px; | ||||
|     font-size: 11px; | ||||
|     text-align: center; | ||||
|     letter-spacing: 0.5px; | ||||
| } | ||||
|  | ||||
| /* link colors and text decoration */ | ||||
|  | ||||
| a:link { | ||||
|     font-weight: bold; | ||||
|     text-decoration: none; | ||||
|     color: #00ADEE; | ||||
| } | ||||
|  | ||||
| a:visited { | ||||
|     font-weight: bold; | ||||
|     text-decoration: none; | ||||
|     color: #00ADEE; | ||||
| } | ||||
|  | ||||
| a:hover, a:active { | ||||
|     text-decoration: underline; | ||||
|     color: #F46DBA; | ||||
| } | ||||
|  | ||||
| /* Some headers act as anchors, don't give them a hover effect */ | ||||
|  | ||||
| h1 a:hover, a:active { | ||||
|     text-decoration: none; | ||||
|     color: #CFCFCF; | ||||
| } | ||||
|  | ||||
| h2 a:hover, a:active { | ||||
|     text-decoration: none; | ||||
|     color: #CFCFCF; | ||||
| } | ||||
|  | ||||
| h3 a:hover, a:active { | ||||
|     text-decoration: none; | ||||
|     color: #CFCFCF; | ||||
| } | ||||
|  | ||||
| h4 a:hover, a:active { | ||||
|     text-decoration: none; | ||||
|     color: #CFCFCF; | ||||
| } | ||||
|  | ||||
| a.headerlink { | ||||
|     color: #a7ce38; | ||||
|     padding-left: 5px; | ||||
| } | ||||
|  | ||||
| a.headerlink:hover { | ||||
|     color: #a7ce38; | ||||
| } | ||||
|  | ||||
| /* basic text elements */ | ||||
|  | ||||
| div.content { | ||||
|     margin: auto; | ||||
|     margin-top: 20px; | ||||
|     margin-bottom: 50px; | ||||
|     font-size: 0.9em; | ||||
|     width: 700px; | ||||
|     text-align: left; | ||||
| } | ||||
|  | ||||
| /* heading and navigation */ | ||||
|  | ||||
| div.header { | ||||
|     position: relative; | ||||
|     margin: auto; | ||||
|     margin-top: 125px; | ||||
|     height: 85px; | ||||
|     padding: 0 40px; | ||||
|     font-family: "Yanone Kaffeesatz"; | ||||
|     text-align: left; | ||||
|     width: 750px; | ||||
| } | ||||
| div.header h1 { | ||||
|     font-size: 2.6em; | ||||
|     font-weight: normal; | ||||
|     letter-spacing: 1px; | ||||
|     color: #CFCFCF; | ||||
|     border: 0; | ||||
|     margin: 0; | ||||
|     padding-top: 15px; | ||||
|     font-family: "Yanone Kaffeesatz"; | ||||
|     text-shadow: 1px 1px 1px rgba(175, 175, 175, .8); | ||||
|     font-variant: small-caps; | ||||
| } | ||||
| div.header h1 a { | ||||
|     font-weight: normal; | ||||
|     color: #00ADEE; | ||||
| } | ||||
| div.header h2 { | ||||
|     font-size: 1.3em; | ||||
|     font-weight: normal; | ||||
|     letter-spacing: 1px; | ||||
|     text-transform: uppercase; | ||||
|     color: #aaa; | ||||
|     border: 0; | ||||
|     margin-top: -3px; | ||||
|     padding: 0; | ||||
|     font-family: "Yanone Kaffeesatz"; | ||||
| } | ||||
|  | ||||
| div.header img.rightlogo { | ||||
|     float: right; | ||||
| } | ||||
|  | ||||
|  | ||||
| div.title { | ||||
|     font-size: 1.3em; | ||||
|     font-weight: bold; | ||||
|     color: #CFCFCF; | ||||
|     border-bottom: dotted thin #e0e0e0; | ||||
|     margin-bottom: 25px; | ||||
| } | ||||
| div.topnav { | ||||
|     position: relative; | ||||
|     z-index: 0; | ||||
| } | ||||
| div.topnav p { | ||||
|     margin: auto; | ||||
|     margin-top: 0; | ||||
|     margin-bottom: 0px; | ||||
|     text-align: right; | ||||
|     font-size: 0.8em; | ||||
|     width: 750px; | ||||
| } | ||||
| div.bottomnav { | ||||
|     background: #eeeeee; | ||||
| } | ||||
| div.bottomnav p { | ||||
|     margin-right: 40px; | ||||
|     text-align: right; | ||||
|     font-size: 0.8em; | ||||
| } | ||||
|  | ||||
| a.uplink { | ||||
|     font-weight: normal; | ||||
| } | ||||
|  | ||||
|  | ||||
| /* contents box */ | ||||
|  | ||||
| table.index { | ||||
|     margin: 0px 0px 30px 30px; | ||||
|     padding: 1px; | ||||
|     border-width: 1px; | ||||
|     border-style: dotted; | ||||
|     border-color: #e0e0e0; | ||||
| } | ||||
| table.index tr.heading { | ||||
|     background-color: #e0e0e0; | ||||
|     text-align: center; | ||||
|     font-weight: bold; | ||||
|     font-size: 1.1em; | ||||
| } | ||||
| table.index tr.index { | ||||
|     background-color: #eeeeee; | ||||
| } | ||||
| table.index td { | ||||
|     padding: 5px 20px; | ||||
| } | ||||
|  | ||||
| table.index a:link, table.index a:visited { | ||||
|     font-weight: normal; | ||||
|     text-decoration: none; | ||||
|     color: #4A7389; | ||||
| } | ||||
| table.index a:hover, table.index a:active { | ||||
|     text-decoration: underline; | ||||
|     color: #ff4500; | ||||
| } | ||||
|  | ||||
|  | ||||
| /* Haiku User Guide styles and layout */ | ||||
|  | ||||
| /* Rounded corner boxes */ | ||||
| /* Common declarations */ | ||||
| div.admonition { | ||||
|     -webkit-border-radius: 10px; | ||||
|     -khtml-border-radius: 10px; | ||||
|     -moz-border-radius: 10px; | ||||
|     border-radius: 10px; | ||||
|     border-style: dotted; | ||||
|     border-width: thin; | ||||
|     border-color: #dcdcdc; | ||||
|     padding: 10px 15px 10px 15px; | ||||
|     margin-bottom: 15px; | ||||
|     margin-top: 15px; | ||||
| } | ||||
| div.note { | ||||
|     padding: 10px 15px 10px 15px; | ||||
|     background-color: #e4ffde; | ||||
|     /*background: #e4ffde url(alert_info_32.png) 15px 15px no-repeat;*/ | ||||
|     min-height: 42px; | ||||
| } | ||||
| div.warning { | ||||
|     padding: 10px 15px 10px 15px; | ||||
|     background-color: #fffbc6; | ||||
|     /*background: #fffbc6 url(alert_warning_32.png) 15px 15px no-repeat;*/ | ||||
|     min-height: 42px; | ||||
| } | ||||
| div.seealso { | ||||
|     background: #e4ffde; | ||||
| } | ||||
|  | ||||
| /* More layout and styles */ | ||||
| h1 { | ||||
|     font-size: 1.6em; | ||||
|     color: #aaa; | ||||
|     border-bottom: dotted thin #e0e0e0; | ||||
|     margin-top: 30px; | ||||
|     font-family: "Museo Slab"; | ||||
|     text-shadow: 1px 1px 1px rgba(175, 175, 175, .25); | ||||
| } | ||||
|  | ||||
| h2 { | ||||
|     font-size: 1.5em; | ||||
|     font-weight: normal; | ||||
|     color: #aaa; | ||||
|     border-bottom: dotted thin #e0e0e0; | ||||
|     margin-top: 30px; | ||||
|     font-family: "Museo Slab"; | ||||
|     text-shadow: 1px 1px 1px rgba(175, 175, 175, .25); | ||||
| } | ||||
|  | ||||
| h3 { | ||||
|     font-size: 1.4em; | ||||
|     font-weight: normal; | ||||
|     color: #aaa; | ||||
|     margin-top: 30px; | ||||
|     font-family: "Museo Slab"; | ||||
|     text-shadow: 1px 1px 1px rgba(175, 175, 175, .25); | ||||
| } | ||||
|  | ||||
| h4 { | ||||
|     font-size: 1.3em; | ||||
|     font-weight: normal; | ||||
|     color: #CFCFCF; | ||||
|     margin-top: 30px; | ||||
| } | ||||
|  | ||||
| p { | ||||
|     text-align: justify; | ||||
| } | ||||
|  | ||||
| p.last { | ||||
|     margin-bottom: 0; | ||||
| } | ||||
|  | ||||
| ol { | ||||
|     padding-left: 20px; | ||||
| } | ||||
|  | ||||
| ul { | ||||
|     padding-left: 5px; | ||||
|     margin-top: 3px; | ||||
| } | ||||
|  | ||||
| li { | ||||
|     line-height: 1.3; | ||||
| } | ||||
|  | ||||
| div.content ul > li { | ||||
|     -moz-background-clip:border; | ||||
|     -moz-background-inline-policy:continuous; | ||||
|     -moz-background-origin:padding; | ||||
|     background: transparent url(bullet_orange.png) no-repeat scroll left 0.45em; | ||||
|     list-style-image: none; | ||||
|     list-style-type: none; | ||||
|     padding: 0 0 0 1.666em; | ||||
|     margin-bottom: 3px; | ||||
| } | ||||
|  | ||||
| td { | ||||
|     vertical-align: top; | ||||
| } | ||||
|  | ||||
| tt { | ||||
|     background-color: #e2e2e2; | ||||
|     font-size: 1.0em; | ||||
|     font-family: monospace; | ||||
| } | ||||
|  | ||||
| pre { | ||||
|     font-size: 1.1em; | ||||
|     margin: 0 0 12px 0; | ||||
|     padding: 0.8em; | ||||
|     background-image: url(noise_dk.png); | ||||
|     background-color: #222; | ||||
| } | ||||
|  | ||||
| hr { | ||||
|     border-top: 1px solid #ccc; | ||||
|     border-bottom: 0; | ||||
|     border-right: 0; | ||||
|     border-left: 0; | ||||
|     margin-bottom: 10px; | ||||
|     margin-top: 20px; | ||||
| } | ||||
|  | ||||
| /* printer only pretty stuff */ | ||||
| @media print { | ||||
|     .noprint { | ||||
|         display: none; | ||||
|     } | ||||
|     /* for acronyms we want their definitions inlined at print time */ | ||||
|     acronym[title]:after { | ||||
|         font-size: small; | ||||
|         content: " (" attr(title) ")"; | ||||
|         font-style: italic; | ||||
|     } | ||||
|     /* and not have mozilla dotted underline */ | ||||
|     acronym { | ||||
|         border: none; | ||||
|     } | ||||
|     div.topnav, div.bottomnav, div.header, table.index { | ||||
|         display: none; | ||||
|     } | ||||
|     div.content { | ||||
|         margin: 0px; | ||||
|         padding: 0px; | ||||
|     } | ||||
|     html { | ||||
|         background: #FFF; | ||||
|     } | ||||
| } | ||||
|  | ||||
| .viewcode-back { | ||||
|     font-family: "DejaVu Sans", Arial, Helvetica, sans-serif; | ||||
| } | ||||
|  | ||||
| div.viewcode-block:target { | ||||
|     border-top: 1px solid #ac9; | ||||
|     border-bottom: 1px solid #ac9; | ||||
|     margin: -1px -12px; | ||||
|     padding: 0 12px; | ||||
| } | ||||
|  | ||||
| #from_andyet { | ||||
|     -webkit-box-shadow: #CCC 0px 0px 3px; | ||||
|     background: rgba(255, 255, 255, 1); | ||||
|     bottom: 0px; | ||||
|     right: 17px; | ||||
|     padding: 3px 10px; | ||||
|     position: fixed; | ||||
| } | ||||
|  | ||||
| #from_andyet h2 { | ||||
|     background-image: url("images/from_&yet.png"); | ||||
|     background-repeat: no-repeat; | ||||
|     height: 29px; | ||||
|     line-height: 0; | ||||
|     text-indent: -9999em; | ||||
|     width: 79px; | ||||
|     margin-top: 0; | ||||
|     margin: 0px; | ||||
|     padding: 0px; | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								docs/_static/header.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								docs/_static/header.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 16 KiB | 
							
								
								
									
										70
									
								
								docs/_static/ir_black.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								docs/_static/ir_black.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,70 @@ | ||||
| .highlight .hll { background-color: #ffffcc } | ||||
| .highlight  { background: #000000; color: #f6f3e8; } | ||||
| .highlight .c { color: #7C7C7C; } /* Comment */ | ||||
| .highlight .err { color: #f6f3e8; } /* Error */ | ||||
| .highlight .g { color: #f6f3e8; } /* Generic */ | ||||
| .highlight .k { color: #00ADEE; } /* Keyword */ | ||||
| .highlight .l { color: #f6f3e8; } /* Literal */ | ||||
| .highlight .n { color: #f6f3e8; } /* Name */ | ||||
| .highlight .o { color: #f6f3e8; } /* Operator */ | ||||
| .highlight .x { color: #f6f3e8; } /* Other */ | ||||
| .highlight .p { color: #f6f3e8; } /* Punctuation */ | ||||
| .highlight .cm { color: #7C7C7C; } /* Comment.Multiline */ | ||||
| .highlight .cp { color: #96CBFE; } /* Comment.Preproc */ | ||||
| .highlight .c1 { color: #7C7C7C; } /* Comment.Single */ | ||||
| .highlight .cs { color: #7C7C7C; } /* Comment.Special */ | ||||
| .highlight .gd { color: #f6f3e8; } /* Generic.Deleted */ | ||||
| .highlight .ge { color: #f6f3e8; } /* Generic.Emph */ | ||||
| .highlight .gr { color: #ffffff; background-color: #ff0000 } /* Generic.Error */ | ||||
| .highlight .gh { color: #f6f3e8; font-weight: bold; } /* Generic.Heading */ | ||||
| .highlight .gi { color: #f6f3e8; } /* Generic.Inserted */ | ||||
| .highlight .go { color: #070707; } /* Generic.Output */ | ||||
| .highlight .gp { color: #f6f3e8; } /* Generic.Prompt */ | ||||
| .highlight .gs { color: #f6f3e8; } /* Generic.Strong */ | ||||
| .highlight .gu { color: #f6f3e8; font-weight: bold; } /* Generic.Subheading */ | ||||
| .highlight .gt { color: #ffffff; font-weight: bold; background-color: #FF6C60 } /* Generic.Traceback */ | ||||
| .highlight .kc { color: #6699CC; } /* Keyword.Constant */ | ||||
| .highlight .kd { color: #6699CC; } /* Keyword.Declaration */ | ||||
| .highlight .kn { color: #6699CC; } /* Keyword.Namespace */ | ||||
| .highlight .kp { color: #6699CC; } /* Keyword.Pseudo */ | ||||
| .highlight .kr { color: #6699CC; } /* Keyword.Reserved */ | ||||
| .highlight .kt { color: #FFFFB6; } /* Keyword.Type */ | ||||
| .highlight .ld { color: #f6f3e8; } /* Literal.Date */ | ||||
| .highlight .m { color: #FF73FD; } /* Literal.Number */ | ||||
| .highlight .s { color: #F46DBA;/*#A8FF60;*/ } /* Literal.String */ | ||||
| .highlight .na { color: #f6f3e8; } /* Name.Attribute */ | ||||
| .highlight .nb { color: #f6f3e8; } /* Name.Builtin */ | ||||
| .highlight .nc { color: #f6f3e8; } /* Name.Class */ | ||||
| .highlight .no { color: #99CC99; } /* Name.Constant */ | ||||
| .highlight .nd { color: #f6f3e8; } /* Name.Decorator */ | ||||
| .highlight .ni { color: #E18964; } /* Name.Entity */ | ||||
| .highlight .ne { color: #f6f3e8; } /* Name.Exception */ | ||||
| .highlight .nf { color: #F64DBA; } /* Name.Function */ | ||||
| .highlight .nl { color: #f6f3e8; } /* Name.Label */ | ||||
| .highlight .nn { color: #f6f3e8; } /* Name.Namespace */ | ||||
| .highlight .nx { color: #f6f3e8; } /* Name.Other */ | ||||
| .highlight .py { color: #f6f3e8; } /* Name.Property */ | ||||
| .highlight .nt { color: #00ADEE; } /* Name.Tag */ | ||||
| .highlight .nv { color: #C6C5FE; } /* Name.Variable */ | ||||
| .highlight .ow { color: #ffffff; } /* Operator.Word */ | ||||
| .highlight .w { color: #f6f3e8; } /* Text.Whitespace */ | ||||
| .highlight .mf { color: #FF73FD; } /* Literal.Number.Float */ | ||||
| .highlight .mh { color: #FF73FD; } /* Literal.Number.Hex */ | ||||
| .highlight .mi { color: #FF73FD; } /* Literal.Number.Integer */ | ||||
| .highlight .mo { color: #FF73FD; } /* Literal.Number.Oct */ | ||||
| .highlight .sb { color: #A8FF60; } /* Literal.String.Backtick */ | ||||
| .highlight .sc { color: #A8FF60; } /* Literal.String.Char */ | ||||
| .highlight .sd { color: #A8FF60; } /* Literal.String.Doc */ | ||||
| .highlight .s2 { color: #A8FF60; } /* Literal.String.Double */ | ||||
| .highlight .se { color: #A8FF60; } /* Literal.String.Escape */ | ||||
| .highlight .sh { color: #A8FF60; } /* Literal.String.Heredoc */ | ||||
| .highlight .si { color: #A8FF60; } /* Literal.String.Interpol */ | ||||
| .highlight .sx { color: #A8FF60; } /* Literal.String.Other */ | ||||
| .highlight .sr { color: #A8FF60; } /* Literal.String.Regex */ | ||||
| .highlight .s1 { color: #A8FF60; } /* Literal.String.Single */ | ||||
| .highlight .ss { color: #A8FF60; } /* Literal.String.Symbol */ | ||||
| .highlight .bp { color: #f6f3e8; } /* Name.Builtin.Pseudo */ | ||||
| .highlight .vc { color: #C6C5FE; } /* Name.Variable.Class */ | ||||
| .highlight .vg { color: #C6C5FE; } /* Name.Variable.Global */ | ||||
| .highlight .vi { color: #C6C5FE; } /* Name.Variable.Instance */ | ||||
| .highlight .il { color: #FF73FD; } /* Literal.Number.Integer.Long */ | ||||
							
								
								
									
										245
									
								
								docs/_static/nature.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										245
									
								
								docs/_static/nature.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,245 @@ | ||||
| /* | ||||
|  * nature.css_t | ||||
|  * ~~~~~~~~~~~~ | ||||
|  * | ||||
|  * Sphinx stylesheet -- nature theme. | ||||
|  * | ||||
|  * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. | ||||
|  * :license: BSD, see LICENSE for details. | ||||
|  * | ||||
|  */ | ||||
|   | ||||
| @import url("basic.css"); | ||||
|   | ||||
| /* -- page layout ----------------------------------------------------------- */ | ||||
|   | ||||
| body { | ||||
|     font-family: Arial, sans-serif; | ||||
|     font-size: 100%; | ||||
|     background-color: #111; | ||||
|     color: #555; | ||||
|     margin: 0; | ||||
|     padding: 0; | ||||
| } | ||||
|  | ||||
| div.documentwrapper { | ||||
|     float: left; | ||||
|     width: 100%; | ||||
| } | ||||
|  | ||||
| div.bodywrapper { | ||||
|     margin: 0 0 0 230px; | ||||
| } | ||||
|  | ||||
| hr { | ||||
|     border: 1px solid #B1B4B6; | ||||
| } | ||||
|   | ||||
| div.document { | ||||
|     background-color: #eee; | ||||
| } | ||||
|   | ||||
| div.body { | ||||
|     background-color: #ffffff; | ||||
|     color: #3E4349; | ||||
|     padding: 0 30px 30px 30px; | ||||
|     font-size: 0.9em; | ||||
| } | ||||
|   | ||||
| div.footer { | ||||
|     color: #555; | ||||
|     width: 100%; | ||||
|     padding: 13px 0; | ||||
|     text-align: center; | ||||
|     font-size: 75%; | ||||
| } | ||||
|   | ||||
| div.footer a { | ||||
|     color: #444; | ||||
|     text-decoration: underline; | ||||
| } | ||||
|   | ||||
| div.related { | ||||
|     background-color: #6BA81E; | ||||
|     line-height: 32px; | ||||
|     color: #fff; | ||||
|     text-shadow: 0px 1px 0 #444; | ||||
|     font-size: 0.9em; | ||||
| } | ||||
|   | ||||
| div.related a { | ||||
|     color: #E2F3CC; | ||||
| } | ||||
|   | ||||
| div.sphinxsidebar { | ||||
|     font-size: 0.75em; | ||||
|     line-height: 1.5em; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebarwrapper{ | ||||
|     padding: 20px 0; | ||||
| } | ||||
|   | ||||
| div.sphinxsidebar h3, | ||||
| div.sphinxsidebar h4 { | ||||
|     font-family: Arial, sans-serif; | ||||
|     color: #222; | ||||
|     font-size: 1.2em; | ||||
|     font-weight: normal; | ||||
|     margin: 0; | ||||
|     padding: 5px 10px; | ||||
|     background-color: #ddd; | ||||
|     text-shadow: 1px 1px 0 white | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar h4{ | ||||
|     font-size: 1.1em; | ||||
| } | ||||
|   | ||||
| div.sphinxsidebar h3 a { | ||||
|     color: #444; | ||||
| } | ||||
|   | ||||
|   | ||||
| div.sphinxsidebar p { | ||||
|     color: #888; | ||||
|     padding: 5px 20px; | ||||
| } | ||||
|   | ||||
| div.sphinxsidebar p.topless { | ||||
| } | ||||
|   | ||||
| div.sphinxsidebar ul { | ||||
|     margin: 10px 20px; | ||||
|     padding: 0; | ||||
|     color: #000; | ||||
| } | ||||
|   | ||||
| div.sphinxsidebar a { | ||||
|     color: #444; | ||||
| } | ||||
|   | ||||
| div.sphinxsidebar input { | ||||
|     border: 1px solid #ccc; | ||||
|     font-family: sans-serif; | ||||
|     font-size: 1em; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar input[type=text]{ | ||||
|     margin-left: 20px; | ||||
| } | ||||
|   | ||||
| /* -- body styles ----------------------------------------------------------- */ | ||||
|   | ||||
| a { | ||||
|     color: #005B81; | ||||
|     text-decoration: none; | ||||
| } | ||||
|   | ||||
| a:hover { | ||||
|     color: #E32E00; | ||||
|     text-decoration: underline; | ||||
| } | ||||
|   | ||||
| div.body h1, | ||||
| div.body h2, | ||||
| div.body h3, | ||||
| div.body h4, | ||||
| div.body h5, | ||||
| div.body h6 { | ||||
|     font-family: Arial, sans-serif; | ||||
|     background-color: #BED4EB; | ||||
|     font-weight: normal; | ||||
|     color: #212224; | ||||
|     margin: 30px 0px 10px 0px; | ||||
|     padding: 5px 0 5px 10px; | ||||
|     text-shadow: 0px 1px 0 white | ||||
| } | ||||
|   | ||||
| div.body h1 { border-top: 20px solid white; margin-top: 0; font-size: 200%; } | ||||
| div.body h2 { font-size: 150%; background-color: #C8D5E3; } | ||||
| div.body h3 { font-size: 120%; background-color: #D8DEE3; } | ||||
| div.body h4 { font-size: 110%; background-color: #D8DEE3; } | ||||
| div.body h5 { font-size: 100%; background-color: #D8DEE3; } | ||||
| div.body h6 { font-size: 100%; background-color: #D8DEE3; } | ||||
|   | ||||
| a.headerlink { | ||||
|     color: #c60f0f; | ||||
|     font-size: 0.8em; | ||||
|     padding: 0 4px 0 4px; | ||||
|     text-decoration: none; | ||||
| } | ||||
|   | ||||
| a.headerlink:hover { | ||||
|     background-color: #c60f0f; | ||||
|     color: white; | ||||
| } | ||||
|   | ||||
| div.body p, div.body dd, div.body li { | ||||
|     line-height: 1.5em; | ||||
| } | ||||
|   | ||||
| div.admonition p.admonition-title + p { | ||||
|     display: inline; | ||||
| } | ||||
|  | ||||
| div.highlight{ | ||||
|     background-color: white; | ||||
| } | ||||
|  | ||||
| div.note { | ||||
|     background-color: #eee; | ||||
|     border: 1px solid #ccc; | ||||
| } | ||||
|   | ||||
| div.seealso { | ||||
|     background-color: #ffc; | ||||
|     border: 1px solid #ff6; | ||||
| } | ||||
|   | ||||
| div.topic { | ||||
|     background-color: #eee; | ||||
| } | ||||
|   | ||||
| div.warning { | ||||
|     background-color: #ffe4e4; | ||||
|     border: 1px solid #f66; | ||||
| } | ||||
|   | ||||
| p.admonition-title { | ||||
|     display: inline; | ||||
| } | ||||
|   | ||||
| p.admonition-title:after { | ||||
|     content: ":"; | ||||
| } | ||||
|   | ||||
| pre { | ||||
|     padding: 10px; | ||||
|     background-color: White; | ||||
|     color: #222; | ||||
|     line-height: 1.2em; | ||||
|     border: 1px solid #C6C9CB; | ||||
|     font-size: 1.1em; | ||||
|     margin: 1.5em 0 1.5em 0; | ||||
|     -webkit-box-shadow: 1px 1px 1px #d8d8d8; | ||||
|     -moz-box-shadow: 1px 1px 1px #d8d8d8; | ||||
| } | ||||
|   | ||||
| tt { | ||||
|     background-color: #ecf0f3; | ||||
|     color: #222; | ||||
|     /* padding: 1px 2px; */ | ||||
|     font-size: 1.1em; | ||||
|     font-family: monospace; | ||||
| } | ||||
|  | ||||
| .viewcode-back { | ||||
|     font-family: Arial, sans-serif; | ||||
| } | ||||
|  | ||||
| div.viewcode-block:target { | ||||
|     background-color: #f4debf; | ||||
|     border-top: 1px solid #ac9; | ||||
|     border-bottom: 1px solid #ac9; | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								docs/_static/noise_dk.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								docs/_static/noise_dk.png
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 22 KiB | 
							
								
								
									
										70
									
								
								docs/_static/pygments.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								docs/_static/pygments.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,70 @@ | ||||
| .highlight .hll { background-color: #ffffcc } | ||||
| .highlight  { background: #000000; color: #f6f3e8; } | ||||
| .highlight .c { color: #7C7C7C; } /* Comment */ | ||||
| .highlight .err { color: #f6f3e8; } /* Error */ | ||||
| .highlight .g { color: #f6f3e8; } /* Generic */ | ||||
| .highlight .k { color: #00ADEE; } /* Keyword */ | ||||
| .highlight .l { color: #f6f3e8; } /* Literal */ | ||||
| .highlight .n { color: #f6f3e8; } /* Name */ | ||||
| .highlight .o { color: #f6f3e8; } /* Operator */ | ||||
| .highlight .x { color: #f6f3e8; } /* Other */ | ||||
| .highlight .p { color: #f6f3e8; } /* Punctuation */ | ||||
| .highlight .cm { color: #7C7C7C; } /* Comment.Multiline */ | ||||
| .highlight .cp { color: #96CBFE; } /* Comment.Preproc */ | ||||
| .highlight .c1 { color: #7C7C7C; } /* Comment.Single */ | ||||
| .highlight .cs { color: #7C7C7C; } /* Comment.Special */ | ||||
| .highlight .gd { color: #f6f3e8; } /* Generic.Deleted */ | ||||
| .highlight .ge { color: #f6f3e8; } /* Generic.Emph */ | ||||
| .highlight .gr { color: #ffffff; background-color: #ff0000 } /* Generic.Error */ | ||||
| .highlight .gh { color: #f6f3e8; font-weight: bold; } /* Generic.Heading */ | ||||
| .highlight .gi { color: #f6f3e8; } /* Generic.Inserted */ | ||||
| .highlight .go { color: #070707; } /* Generic.Output */ | ||||
| .highlight .gp { color: #f6f3e8; } /* Generic.Prompt */ | ||||
| .highlight .gs { color: #f6f3e8; } /* Generic.Strong */ | ||||
| .highlight .gu { color: #f6f3e8; font-weight: bold; } /* Generic.Subheading */ | ||||
| .highlight .gt { color: #ffffff; font-weight: bold; background-color: #FF6C60 } /* Generic.Traceback */ | ||||
| .highlight .kc { color: #6699CC; } /* Keyword.Constant */ | ||||
| .highlight .kd { color: #6699CC; } /* Keyword.Declaration */ | ||||
| .highlight .kn { color: #6699CC; } /* Keyword.Namespace */ | ||||
| .highlight .kp { color: #6699CC; } /* Keyword.Pseudo */ | ||||
| .highlight .kr { color: #6699CC; } /* Keyword.Reserved */ | ||||
| .highlight .kt { color: #FFFFB6; } /* Keyword.Type */ | ||||
| .highlight .ld { color: #f6f3e8; } /* Literal.Date */ | ||||
| .highlight .m { color: #FF73FD; } /* Literal.Number */ | ||||
| .highlight .s { color: #F46DBA;/*#A8FF60;*/ } /* Literal.String */ | ||||
| .highlight .na { color: #f6f3e8; } /* Name.Attribute */ | ||||
| .highlight .nb { color: #f6f3e8; } /* Name.Builtin */ | ||||
| .highlight .nc { color: #f6f3e8; } /* Name.Class */ | ||||
| .highlight .no { color: #99CC99; } /* Name.Constant */ | ||||
| .highlight .nd { color: #f6f3e8; } /* Name.Decorator */ | ||||
| .highlight .ni { color: #E18964; } /* Name.Entity */ | ||||
| .highlight .ne { color: #f6f3e8; } /* Name.Exception */ | ||||
| .highlight .nf { color: #F64DBA; } /* Name.Function */ | ||||
| .highlight .nl { color: #f6f3e8; } /* Name.Label */ | ||||
| .highlight .nn { color: #f6f3e8; } /* Name.Namespace */ | ||||
| .highlight .nx { color: #f6f3e8; } /* Name.Other */ | ||||
| .highlight .py { color: #f6f3e8; } /* Name.Property */ | ||||
| .highlight .nt { color: #00ADEE; } /* Name.Tag */ | ||||
| .highlight .nv { color: #C6C5FE; } /* Name.Variable */ | ||||
| .highlight .ow { color: #ffffff; } /* Operator.Word */ | ||||
| .highlight .w { color: #f6f3e8; } /* Text.Whitespace */ | ||||
| .highlight .mf { color: #FF73FD; } /* Literal.Number.Float */ | ||||
| .highlight .mh { color: #FF73FD; } /* Literal.Number.Hex */ | ||||
| .highlight .mi { color: #FF73FD; } /* Literal.Number.Integer */ | ||||
| .highlight .mo { color: #FF73FD; } /* Literal.Number.Oct */ | ||||
| .highlight .sb { color: #A8FF60; } /* Literal.String.Backtick */ | ||||
| .highlight .sc { color: #A8FF60; } /* Literal.String.Char */ | ||||
| .highlight .sd { color: #A8FF60; } /* Literal.String.Doc */ | ||||
| .highlight .s2 { color: #A8FF60; } /* Literal.String.Double */ | ||||
| .highlight .se { color: #A8FF60; } /* Literal.String.Escape */ | ||||
| .highlight .sh { color: #A8FF60; } /* Literal.String.Heredoc */ | ||||
| .highlight .si { color: #A8FF60; } /* Literal.String.Interpol */ | ||||
| .highlight .sx { color: #A8FF60; } /* Literal.String.Other */ | ||||
| .highlight .sr { color: #A8FF60; } /* Literal.String.Regex */ | ||||
| .highlight .s1 { color: #A8FF60; } /* Literal.String.Single */ | ||||
| .highlight .ss { color: #A8FF60; } /* Literal.String.Symbol */ | ||||
| .highlight .bp { color: #f6f3e8; } /* Name.Builtin.Pseudo */ | ||||
| .highlight .vc { color: #C6C5FE; } /* Name.Variable.Class */ | ||||
| .highlight .vg { color: #C6C5FE; } /* Name.Variable.Global */ | ||||
| .highlight .vi { color: #C6C5FE; } /* Name.Variable.Instance */ | ||||
| .highlight .il { color: #FF73FD; } /* Literal.Number.Integer.Long */ | ||||
							
								
								
									
										339
									
								
								docs/_static/sphinxdoc.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										339
									
								
								docs/_static/sphinxdoc.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,339 @@ | ||||
| /* | ||||
|  * sphinxdoc.css_t | ||||
|  * ~~~~~~~~~~~~~~~ | ||||
|  * | ||||
|  * Sphinx stylesheet -- sphinxdoc theme.  Originally created by | ||||
|  * Armin Ronacher for Werkzeug. | ||||
|  * | ||||
|  * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. | ||||
|  * :license: BSD, see LICENSE for details. | ||||
|  * | ||||
|  */ | ||||
|  | ||||
| @import url("basic.css"); | ||||
|  | ||||
| /* -- page layout ----------------------------------------------------------- */ | ||||
|  | ||||
| body { | ||||
|     font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Geneva', | ||||
|                  'Verdana', sans-serif; | ||||
|     font-size: 14px; | ||||
|     letter-spacing: -0.01em; | ||||
|     line-height: 150%; | ||||
|     text-align: center; | ||||
|     background-color: #BFD1D4; | ||||
|     color: black; | ||||
|     padding: 0; | ||||
|     border: 1px solid #aaa; | ||||
|  | ||||
|     margin: 0px 80px 0px 80px; | ||||
|     min-width: 740px; | ||||
| } | ||||
|  | ||||
| div.document { | ||||
|     background-color: white; | ||||
|     text-align: left; | ||||
|     background-image: url(contents.png); | ||||
|     background-repeat: repeat-x; | ||||
| } | ||||
|  | ||||
| div.bodywrapper { | ||||
|     margin: 0 240px 0 0; | ||||
|     border-right: 1px solid #ccc; | ||||
| } | ||||
|  | ||||
| div.body { | ||||
|     margin: 0; | ||||
|     padding: 0.5em 20px 20px 20px; | ||||
| } | ||||
|  | ||||
| div.related { | ||||
|     font-size: 1em; | ||||
| } | ||||
|  | ||||
| div.related ul { | ||||
|     background-image: url(navigation.png); | ||||
|     height: 2em; | ||||
|     border-top: 1px solid #ddd; | ||||
|     border-bottom: 1px solid #ddd; | ||||
| } | ||||
|  | ||||
| div.related ul li { | ||||
|     margin: 0; | ||||
|     padding: 0; | ||||
|     height: 2em; | ||||
|     float: left; | ||||
| } | ||||
|  | ||||
| div.related ul li.right { | ||||
|     float: right; | ||||
|     margin-right: 5px; | ||||
| } | ||||
|  | ||||
| div.related ul li a { | ||||
|     margin: 0; | ||||
|     padding: 0 5px 0 5px; | ||||
|     line-height: 1.75em; | ||||
|     color: #EE9816; | ||||
| } | ||||
|  | ||||
| div.related ul li a:hover { | ||||
|     color: #3CA8E7; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebarwrapper { | ||||
|     padding: 0; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar { | ||||
|     margin: 0; | ||||
|     padding: 0.5em 15px 15px 0; | ||||
|     width: 210px; | ||||
|     float: right; | ||||
|     font-size: 1em; | ||||
|     text-align: left; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar h3, div.sphinxsidebar h4 { | ||||
|     margin: 1em 0 0.5em 0; | ||||
|     font-size: 1em; | ||||
|     padding: 0.1em 0 0.1em 0.5em; | ||||
|     color: white; | ||||
|     border: 1px solid #86989B; | ||||
|     background-color: #AFC1C4; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar h3 a { | ||||
|     color: white; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar ul { | ||||
|     padding-left: 1.5em; | ||||
|     margin-top: 7px; | ||||
|     padding: 0; | ||||
|     line-height: 130%; | ||||
| } | ||||
|  | ||||
| div.sphinxsidebar ul ul { | ||||
|     margin-left: 20px; | ||||
| } | ||||
|  | ||||
| div.footer { | ||||
|     background-color: #E3EFF1; | ||||
|     color: #86989B; | ||||
|     padding: 3px 8px 3px 0; | ||||
|     clear: both; | ||||
|     font-size: 0.8em; | ||||
|     text-align: right; | ||||
| } | ||||
|  | ||||
| div.footer a { | ||||
|     color: #86989B; | ||||
|     text-decoration: underline; | ||||
| } | ||||
|  | ||||
| /* -- body styles ----------------------------------------------------------- */ | ||||
|  | ||||
| p {     | ||||
|     margin: 0.8em 0 0.5em 0; | ||||
| } | ||||
|  | ||||
| a { | ||||
|     color: #CA7900; | ||||
|     text-decoration: none; | ||||
| } | ||||
|  | ||||
| a:hover { | ||||
|     color: #2491CF; | ||||
| } | ||||
|  | ||||
| div.body a { | ||||
|     text-decoration: underline; | ||||
| } | ||||
|  | ||||
| h1 { | ||||
|     margin: 0; | ||||
|     padding: 0.7em 0 0.3em 0; | ||||
|     font-size: 1.5em; | ||||
|     color: #11557C; | ||||
| } | ||||
|  | ||||
| h2 { | ||||
|     margin: 1.3em 0 0.2em 0; | ||||
|     font-size: 1.35em; | ||||
|     padding: 0; | ||||
| } | ||||
|  | ||||
| h3 { | ||||
|     margin: 1em 0 -0.3em 0; | ||||
|     font-size: 1.2em; | ||||
| } | ||||
|  | ||||
| div.body h1 a, div.body h2 a, div.body h3 a, div.body h4 a, div.body h5 a, div.body h6 a { | ||||
|     color: black!important; | ||||
| } | ||||
|  | ||||
| h1 a.anchor, h2 a.anchor, h3 a.anchor, h4 a.anchor, h5 a.anchor, h6 a.anchor { | ||||
|     display: none; | ||||
|     margin: 0 0 0 0.3em; | ||||
|     padding: 0 0.2em 0 0.2em; | ||||
|     color: #aaa!important; | ||||
| } | ||||
|  | ||||
| h1:hover a.anchor, h2:hover a.anchor, h3:hover a.anchor, h4:hover a.anchor, | ||||
| h5:hover a.anchor, h6:hover a.anchor { | ||||
|     display: inline; | ||||
| } | ||||
|  | ||||
| h1 a.anchor:hover, h2 a.anchor:hover, h3 a.anchor:hover, h4 a.anchor:hover, | ||||
| h5 a.anchor:hover, h6 a.anchor:hover { | ||||
|     color: #777; | ||||
|     background-color: #eee; | ||||
| } | ||||
|  | ||||
| a.headerlink { | ||||
|     color: #c60f0f!important; | ||||
|     font-size: 1em; | ||||
|     margin-left: 6px; | ||||
|     padding: 0 4px 0 4px; | ||||
|     text-decoration: none!important; | ||||
| } | ||||
|  | ||||
| a.headerlink:hover { | ||||
|     background-color: #ccc; | ||||
|     color: white!important; | ||||
| } | ||||
|  | ||||
| cite, code, tt { | ||||
|     font-family: 'Consolas', 'Deja Vu Sans Mono', | ||||
|                  'Bitstream Vera Sans Mono', monospace; | ||||
|     font-size: 0.95em; | ||||
|     letter-spacing: 0.01em; | ||||
| } | ||||
|  | ||||
| tt { | ||||
|     background-color: #f2f2f2; | ||||
|     border-bottom: 1px solid #ddd; | ||||
|     color: #333; | ||||
| } | ||||
|  | ||||
| tt.descname, tt.descclassname, tt.xref { | ||||
|     border: 0; | ||||
| } | ||||
|  | ||||
| hr { | ||||
|     border: 1px solid #abc; | ||||
|     margin: 2em; | ||||
| } | ||||
|  | ||||
| a tt { | ||||
|     border: 0; | ||||
|     color: #CA7900; | ||||
| } | ||||
|  | ||||
| a tt:hover { | ||||
|     color: #2491CF; | ||||
| } | ||||
|  | ||||
| pre { | ||||
|     font-family: 'Consolas', 'Deja Vu Sans Mono', | ||||
|                  'Bitstream Vera Sans Mono', monospace; | ||||
|     font-size: 0.95em; | ||||
|     letter-spacing: 0.015em; | ||||
|     line-height: 120%; | ||||
|     padding: 0.5em; | ||||
|     border: 1px solid #ccc; | ||||
|     background-color: #f8f8f8; | ||||
| } | ||||
|  | ||||
| pre a { | ||||
|     color: inherit; | ||||
|     text-decoration: underline; | ||||
| } | ||||
|  | ||||
| td.linenos pre { | ||||
|     padding: 0.5em 0; | ||||
| } | ||||
|  | ||||
| div.quotebar { | ||||
|     background-color: #f8f8f8; | ||||
|     max-width: 250px; | ||||
|     float: right; | ||||
|     padding: 2px 7px; | ||||
|     border: 1px solid #ccc; | ||||
| } | ||||
|  | ||||
| div.topic { | ||||
|     background-color: #f8f8f8; | ||||
| } | ||||
|  | ||||
| table { | ||||
|     border-collapse: collapse; | ||||
|     margin: 0 -0.5em 0 -0.5em; | ||||
| } | ||||
|  | ||||
| table td, table th { | ||||
|     padding: 0.2em 0.5em 0.2em 0.5em; | ||||
| } | ||||
|  | ||||
| div.admonition, div.warning { | ||||
|     font-size: 0.9em; | ||||
|     margin: 1em 0 1em 0; | ||||
|     border: 1px solid #86989B; | ||||
|     background-color: #f7f7f7; | ||||
|     padding: 0; | ||||
| } | ||||
|  | ||||
| div.admonition p, div.warning p { | ||||
|     margin: 0.5em 1em 0.5em 1em; | ||||
|     padding: 0; | ||||
| } | ||||
|  | ||||
| div.admonition pre, div.warning pre { | ||||
|     margin: 0.4em 1em 0.4em 1em; | ||||
| } | ||||
|  | ||||
| div.admonition p.admonition-title, | ||||
| div.warning p.admonition-title { | ||||
|     margin: 0; | ||||
|     padding: 0.1em 0 0.1em 0.5em; | ||||
|     color: white; | ||||
|     border-bottom: 1px solid #86989B; | ||||
|     font-weight: bold; | ||||
|     background-color: #AFC1C4; | ||||
| } | ||||
|  | ||||
| div.warning { | ||||
|     border: 1px solid #940000; | ||||
| } | ||||
|  | ||||
| div.warning p.admonition-title { | ||||
|     background-color: #CF0000; | ||||
|     border-bottom-color: #940000; | ||||
| } | ||||
|  | ||||
| div.admonition ul, div.admonition ol, | ||||
| div.warning ul, div.warning ol { | ||||
|     margin: 0.1em 0.5em 0.5em 3em; | ||||
|     padding: 0; | ||||
| } | ||||
|  | ||||
| div.versioninfo { | ||||
|     margin: 1em 0 0 0; | ||||
|     border: 1px solid #ccc; | ||||
|     background-color: #DDEAF0; | ||||
|     padding: 8px; | ||||
|     line-height: 1.3em; | ||||
|     font-size: 0.9em; | ||||
| } | ||||
|  | ||||
| .viewcode-back { | ||||
|     font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Geneva', | ||||
|                  'Verdana', sans-serif; | ||||
| } | ||||
|  | ||||
| div.viewcode-block:target { | ||||
|     background-color: #f4debf; | ||||
|     border-top: 1px solid #ac9; | ||||
|     border-bottom: 1px solid #ac9; | ||||
| } | ||||
							
								
								
									
										70
									
								
								docs/_templates/layout.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								docs/_templates/layout.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,70 @@ | ||||
| {# | ||||
|     haiku/layout.html | ||||
|     ~~~~~~~~~~~~~~~~~ | ||||
|  | ||||
|     Sphinx layout template for the haiku theme. | ||||
|  | ||||
|     :copyright: Copyright 2007-2010 by the Sphinx team, see AUTHORS. | ||||
|     :license: BSD, see LICENSE for details. | ||||
| #} | ||||
| {% extends "basic/layout.html" %} | ||||
| {% set script_files = script_files + ['_static/theme_extras.js'] %} | ||||
| {% set css_files = css_files + ['_static/print.css'] %} | ||||
|  | ||||
| {# do not display relbars #} | ||||
| {% block relbar1 %}{% endblock %} | ||||
| {% block relbar2 %}{% endblock %} | ||||
|  | ||||
| {% macro nav() %} | ||||
|         <p> | ||||
|         {%- block haikurel1 %} | ||||
|         {%- endblock %} | ||||
|         {%- if prev %} | ||||
|         «  <a href="{{ prev.link|e }}">{{ prev.title }}</a> | ||||
|           ::   | ||||
|         {%- endif %} | ||||
|         <a class="uplink" href="{{ pathto(master_doc) }}">{{ _('Contents') }}</a> | ||||
|         {%- if next %} | ||||
|           ::   | ||||
|         <a href="{{ next.link|e }}">{{ next.title }}</a>  » | ||||
|         {%- endif %} | ||||
|         {%- block haikurel2 %} | ||||
|         {%- endblock %} | ||||
|         </p> | ||||
| {% endmacro %} | ||||
|  | ||||
| {% block content %} | ||||
|       <div class="header"> | ||||
|         {%- block haikuheader %} | ||||
|         {%- if theme_full_logo != "false" %} | ||||
|         <a href="{{ pathto('index') }}"> | ||||
|           <img class="logo" src="{{ pathto('_static/' + logo, 1) }}" alt="Logo"/> | ||||
|         </a> | ||||
|         {%- else %} | ||||
|         {%- if logo -%} | ||||
|           <img class="rightlogo" src="{{ pathto('_static/' + logo, 1) }}" alt="Logo"/> | ||||
|         {%- endif -%} | ||||
|         <h1 class="heading"><a href="{{ pathto('index') }}"> | ||||
|           <span>{{ title|striptags }}</span></a></h1> | ||||
|         <h2 class="heading"><span>{{ shorttitle|e }}</span></h2> | ||||
|         {%- endif %} | ||||
|         {%- endblock %} | ||||
|       </div> | ||||
|       <div class="topnav"> | ||||
|       {{ nav() }} | ||||
|       </div> | ||||
|       <div class="content"> | ||||
|         {#{%- if display_toc %} | ||||
|         <div id="toc"> | ||||
|           <h3>Table Of Contents</h3> | ||||
|           {{ toc }} | ||||
|         </div> | ||||
|         {%- endif %}#} | ||||
|         {% block body %}{% endblock %} | ||||
|       </div> | ||||
|       <div class="bottomnav"> | ||||
|       {{ nav() }} | ||||
|       </div> | ||||
|       <a id="from_andyet" href="http://andyet.net"><h2>From &yet</h2></a> | ||||
| {% endblock %} | ||||
|  | ||||
| @@ -1,88 +0,0 @@ | ||||
| .. _internal-api: | ||||
|  | ||||
| Internal "API" | ||||
| ============== | ||||
|  | ||||
| Slixmpp has a generic API registry that can be used by its plugins to allow | ||||
| access control, redefinition of behaviour, without having to inherit from the | ||||
| plugin or do more dark magic. | ||||
|  | ||||
| The idea is that each api call can be replaced, most of them use a form | ||||
| of in-memory storage that can be, for example, replaced with database | ||||
| or file-based storaged. | ||||
|  | ||||
|  | ||||
| Each plugin is assigned an API proxy bound to itself, but only a few make use | ||||
| of it. | ||||
|  | ||||
| See also :ref:`api-simple-tuto`. | ||||
|  | ||||
| Description of a generic API call | ||||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||||
|  | ||||
| .. code-block:: python | ||||
|  | ||||
|     def get_toto(jid, node, ifrom, args): | ||||
|         return 'toto' | ||||
|  | ||||
|     self.xmpp.plugin['xep_XXXX'].api.register(handler, 'get_toto') | ||||
|  | ||||
| Each API call will receive 4 parameters (which can be ``None`` if data | ||||
| is not relevant to the operation), which are ``jid`` (``Optional[JID]``), | ||||
| ``node`` (``Optional[str]``), ``ifrom`` (``Optional[JID]``), and ``args`` | ||||
| (``Any``). | ||||
|  | ||||
| - ``jid``, if relevant, represents the JID targeted by that operation | ||||
| - ``node``, if relevant is an arbitrary string, but was thought for, e.g., | ||||
|   a pubsub or disco node. | ||||
| - ``ifrom``, if relevant, is the JID the event is coming from. | ||||
| - ``args`` is the event-specific data passed on by the plugin, often a dict | ||||
|   of arguments (can be None as well). | ||||
|  | ||||
| .. note:: | ||||
|     Since 1.8.0, API calls can be coroutines. | ||||
|  | ||||
|  | ||||
| Handler hierarchy | ||||
| ~~~~~~~~~~~~~~~~~ | ||||
|  | ||||
| The ``self.api.register()`` signature is as follows: | ||||
|  | ||||
| .. code-block:: python | ||||
|  | ||||
|     def register(handler, op, jid=None, node=None, default=False): | ||||
|         pass | ||||
|  | ||||
| As you can see, :meth:`~.APIRegistry.register` takes an additional ctype | ||||
| parameter, but the :class:`~.APIWrapper` takes care of that for us (in most | ||||
| cases, it is the name of the XEP plugin, such as ``'xep_0XXX'``). | ||||
|  | ||||
| When you register a handler, you register it for an ``op``, for **operation**. | ||||
| For example, ``get_vcard``. | ||||
|  | ||||
| ``handler`` and ``op`` are the only two required parameters (and in many cases, | ||||
| all you will ever need). You can, however, go further and register handlers | ||||
| for specific values of the ``jid`` and ``node`` parameters of the calls. | ||||
|  | ||||
| The priority of the execution of handlers is as follows: | ||||
|  | ||||
| - Check if a handler for both values of ``node`` and ``jid`` has been defined | ||||
| - If not found, check if a handler for this value of ``jid`` has been defined | ||||
| - If not found, check if a handler for this value of ``node`` has been defined | ||||
| - If still not found, get the global handler (no parameter registered) | ||||
|  | ||||
|  | ||||
| Raw documentation | ||||
| ~~~~~~~~~~~~~~~~~ | ||||
|  | ||||
| This documentation is provided for reference, but :meth:`~.APIRegistry.register` | ||||
| should be all you need. | ||||
|  | ||||
|  | ||||
| .. module:: slixmpp.api | ||||
|  | ||||
| .. autoclass:: APIRegistry | ||||
|     :members: | ||||
|  | ||||
| .. autoclass:: APIWrapper | ||||
|  | ||||
| @@ -2,7 +2,7 @@ | ||||
| BaseXMPP | ||||
| ======== | ||||
|  | ||||
| .. module:: slixmpp.basexmpp | ||||
| .. module:: sleekxmpp.basexmpp | ||||
|  | ||||
| .. autoclass:: BaseXMPP | ||||
|     :members: | ||||
|   | ||||
| @@ -2,7 +2,7 @@ | ||||
| ClientXMPP | ||||
| ========== | ||||
|  | ||||
| .. module:: slixmpp.clientxmpp | ||||
| .. module:: sleekxmpp.clientxmpp | ||||
|  | ||||
| .. autoclass:: ClientXMPP | ||||
|     :members: | ||||
|   | ||||
| @@ -2,7 +2,7 @@ | ||||
| ComponentXMPP | ||||
| ============= | ||||
|  | ||||
| .. module:: slixmpp.componentxmpp | ||||
| .. module:: sleekxmpp.componentxmpp | ||||
|  | ||||
| .. autoclass:: ComponentXMPP | ||||
|     :members: | ||||
|   | ||||
| @@ -1,9 +1,9 @@ | ||||
| Exceptions | ||||
| ========== | ||||
|  | ||||
| .. module:: slixmpp.exceptions | ||||
|  | ||||
| .. module:: sleekxmpp.exceptions | ||||
|  | ||||
|      | ||||
| .. autoexception:: XMPPError | ||||
|     :members: | ||||
|  | ||||
|   | ||||
| @@ -1,17 +0,0 @@ | ||||
| API Reference | ||||
| ------------- | ||||
|  | ||||
| .. toctree:: | ||||
|     :maxdepth: 3 | ||||
|  | ||||
|     clientxmpp | ||||
|     componentxmpp | ||||
|     basexmpp | ||||
|     exceptions | ||||
|     xmlstream/jid | ||||
|     xmlstream/stanzabase | ||||
|     xmlstream/handler | ||||
|     xmlstream/matcher | ||||
|     xmlstream/xmlstream | ||||
|     xmlstream/tostring | ||||
|     api | ||||
| @@ -1,96 +0,0 @@ | ||||
| Plugin index | ||||
| ============ | ||||
|  | ||||
| .. toctree:: | ||||
|     :maxdepth: 2 | ||||
|  | ||||
|     xep_0004 | ||||
|     xep_0009 | ||||
|     xep_0012 | ||||
|     xep_0013 | ||||
|     xep_0020 | ||||
|     xep_0027 | ||||
|     xep_0030 | ||||
|     xep_0033 | ||||
|     xep_0045 | ||||
|     xep_0047 | ||||
|     xep_0049 | ||||
|     xep_0050 | ||||
|     xep_0054 | ||||
|     xep_0059 | ||||
|     xep_0060 | ||||
|     xep_0065 | ||||
|     xep_0066 | ||||
|     xep_0070 | ||||
|     xep_0071 | ||||
|     xep_0077 | ||||
|     xep_0079 | ||||
|     xep_0080 | ||||
|     xep_0082 | ||||
|     xep_0084 | ||||
|     xep_0085 | ||||
|     xep_0086 | ||||
|     xep_0092 | ||||
|     xep_0106 | ||||
|     xep_0107 | ||||
|     xep_0108 | ||||
|     xep_0115 | ||||
|     xep_0118 | ||||
|     xep_0122 | ||||
|     xep_0128 | ||||
|     xep_0131 | ||||
|     xep_0133 | ||||
|     xep_0152 | ||||
|     xep_0153 | ||||
|     xep_0163 | ||||
|     xep_0172 | ||||
|     xep_0184 | ||||
|     xep_0186 | ||||
|     xep_0191 | ||||
|     xep_0196 | ||||
|     xep_0198 | ||||
|     xep_0199 | ||||
|     xep_0202 | ||||
|     xep_0203 | ||||
|     xep_0221 | ||||
|     xep_0222 | ||||
|     xep_0223 | ||||
|     xep_0224 | ||||
|     xep_0231 | ||||
|     xep_0235 | ||||
|     xep_0249 | ||||
|     xep_0256 | ||||
|     xep_0257 | ||||
|     xep_0258 | ||||
|     xep_0279 | ||||
|     xep_0280 | ||||
|     xep_0297 | ||||
|     xep_0300 | ||||
|     xep_0308 | ||||
|     xep_0313 | ||||
|     xep_0319 | ||||
|     xep_0332 | ||||
|     xep_0333 | ||||
|     xep_0334 | ||||
|     xep_0335 | ||||
|     xep_0352 | ||||
|     xep_0353 | ||||
|     xep_0356 | ||||
|     xep_0359 | ||||
|     xep_0363 | ||||
|     xep_0369 | ||||
|     xep_0377 | ||||
|     xep_0380 | ||||
|     xep_0394 | ||||
|     xep_0403 | ||||
|     xep_0404 | ||||
|     xep_0405 | ||||
|     xep_0421 | ||||
|     xep_0422 | ||||
|     xep_0424 | ||||
|     xep_0425 | ||||
|     xep_0428 | ||||
|     xep_0437 | ||||
|     xep_0439 | ||||
|     xep_0441 | ||||
|     xep_0444 | ||||
| @@ -1,21 +0,0 @@ | ||||
|  | ||||
| XEP-0004: Data Forms | ||||
| ==================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0004 | ||||
|  | ||||
| .. autoclass:: XEP_0004 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0004.stanza.field | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0004.stanza.form | ||||
|     :members: | ||||
|     :undoc-members: | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0009: Jabber-RPC | ||||
| ==================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0009 | ||||
|  | ||||
| .. autoclass:: XEP_0009 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0009.stanza.RPC | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,56 +0,0 @@ | ||||
|  | ||||
| XEP-0012: Last Activity | ||||
| ======================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0012 | ||||
|  | ||||
| .. autoclass:: XEP_0012 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| .. _api-0012: | ||||
|  | ||||
| Internal API methods | ||||
| -------------------- | ||||
|  | ||||
| This plugin uses an in-memory storage by default to keep track of the | ||||
| received and sent last activities. | ||||
|  | ||||
| .. glossary:: | ||||
|  | ||||
|     get_last_activity | ||||
|         - **jid**: :class:`~.JID` of whom to retrieve the last activity | ||||
|         - **node**: unused | ||||
|         - **ifrom**: who the request is from (None = local) | ||||
|         - **args**: ``None`` or an :class:`~.Iq` that is requesting the | ||||
|         - **returns** | ||||
|           information. | ||||
|  | ||||
|         Get the last activity of a JID from the storage. | ||||
|  | ||||
|     set_last_activity | ||||
|         - **jid**: :class:`~.JID` of whom to set the last activity | ||||
|         - **node**: unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: A dict containing ``'seconds'`` and ``'status'`` | ||||
|           ``{'seconds': Optional[int], 'status': Optional[str]}`` | ||||
|  | ||||
|         Set the last activity of a JID in the storage. | ||||
|  | ||||
|     del_last_activity | ||||
|         - **jid**: :class:`~.JID` to delete from the storage | ||||
|         - **node**: unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: unused | ||||
|  | ||||
|         Remove the last activity of a JID from the storage. | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0012.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0013: Flexible Offline Message Retrieval | ||||
| ============================================ | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0013 | ||||
|  | ||||
| .. autoclass:: XEP_0013 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0013.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0020: Feature Negotiation | ||||
| ============================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0020 | ||||
|  | ||||
| .. autoclass:: XEP_0020 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0020.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,62 +0,0 @@ | ||||
|  | ||||
| XEP-0027: Current Jabber OpenPGP Usage | ||||
| ====================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0027 | ||||
|  | ||||
| .. autoclass:: XEP_0027 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| .. _api-0027: | ||||
|  | ||||
| Internal API methods | ||||
| -------------------- | ||||
|  | ||||
| The default API here is managing a JID→Keyid dict in-memory. | ||||
|  | ||||
| .. glossary:: | ||||
|  | ||||
|     get_keyid | ||||
|         - **jid**: :class:`~.JID` to get. | ||||
|         - **node**: unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: unused | ||||
|         - **returns**: ``Optional[str]``, the keyid or None | ||||
|  | ||||
|         Get the KeyiD for a JID, None if it is not found. | ||||
|  | ||||
|     set_keyid | ||||
|         - **jid**: :class:`~.JID` to set the id for. | ||||
|         - **node**: unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: ``str``, keyid to set | ||||
|  | ||||
|         Set the KeyiD for a JID. | ||||
|  | ||||
|     del_keyid | ||||
|         - **jid**: :class:`~.JID` to delete from the mapping. | ||||
|         - **node**: unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: unused | ||||
|  | ||||
|         Delete the KeyiD for a JID. | ||||
|  | ||||
|     get_keyids | ||||
|         - **jid**: unused | ||||
|         - **node**: unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: unused | ||||
|         - **returns**: ``Dict[JID, str]`` the full internal mapping | ||||
|  | ||||
|         Get all currently stored KeyIDs. | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0027.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,39 +0,0 @@ | ||||
|  | ||||
| XEP-0030: Service Discovery | ||||
| =========================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0030 | ||||
|  | ||||
| .. autoclass:: XEP_0030 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| .. _api-0030: | ||||
|  | ||||
| Internal API Methods | ||||
| -------------------- | ||||
|  | ||||
| All ``api`` operations supported by the 0030 plugin are implemented as part of | ||||
| the :class:`~.StaticDisco` class which implement an in-memory cache for disco | ||||
| info and items. | ||||
|  | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0030.static | ||||
|     :members: | ||||
|     :member-order: bysource | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0030.stanza.info | ||||
|     :members: | ||||
|     :member-order: bysource | ||||
|     :undoc-members: | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0030.stanza.items | ||||
|     :members: | ||||
|     :member-order: bysource | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0033: Extended Stanza Addressing | ||||
| ==================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0033 | ||||
|  | ||||
| .. autoclass:: XEP_0033 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0033.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,19 +0,0 @@ | ||||
|  | ||||
| XEP-0045: Multi-User Chat | ||||
| ========================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0045 | ||||
|  | ||||
| .. autoclass:: XEP_0045 | ||||
|     :member-order: bysource | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0045.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,89 +0,0 @@ | ||||
|  | ||||
| XEP-0047: In-band Bytestreams | ||||
| ============================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0047 | ||||
|  | ||||
| .. autoclass:: XEP_0047 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
| .. autoclass:: IBBytestream | ||||
|     :members: | ||||
|  | ||||
| .. _api-0047: | ||||
|  | ||||
| Internal API methods | ||||
| -------------------- | ||||
|  | ||||
| The API here is used to manage streams and authorize. The default handlers | ||||
| work with the config parameters. | ||||
|  | ||||
| .. glossary:: | ||||
|  | ||||
|     authorized_sid (0047 version) | ||||
|         - **jid**: :class:`~.JID` receiving the stream initiation. | ||||
|         - **node**:  stream id | ||||
|         - **ifrom**: who the stream is from. | ||||
|         - **args**: :class:`~.Iq` of the stream request. | ||||
|         - **returns**: ``True`` if the stream should be accepted, | ||||
|           ``False`` otherwise. | ||||
|  | ||||
|         Check if the stream should be accepted. Uses | ||||
|         the information setup by :term:`preauthorize_sid (0047 version)` | ||||
|         by default. | ||||
|  | ||||
|     authorized (0047 version) | ||||
|         - **jid**: :class:`~.JID` receiving the stream initiation. | ||||
|         - **node**:  stream id | ||||
|         - **ifrom**: who the stream is from. | ||||
|         - **args**: :class:`~.Iq` of the stream request. | ||||
|         - **returns**: ``True`` if the stream should be accepted, | ||||
|           ``False`` otherwise. | ||||
|  | ||||
|         A fallback handler (run after :term:`authorized_sid (0047 version)`) | ||||
|         to check if a stream should be accepted. Uses the ``auto_accept`` | ||||
|         parameter by default. | ||||
|  | ||||
|     preauthorize_sid (0047 version) | ||||
|         - **jid**: :class:`~.JID` receiving the stream initiation. | ||||
|         - **node**:  stream id | ||||
|         - **ifrom**: who the stream will be from. | ||||
|         - **args**: Unused. | ||||
|  | ||||
|         Register a stream id to be accepted automatically (called from | ||||
|         other plugins such as XEP-0095). | ||||
|  | ||||
|     get_stream | ||||
|         - **jid**: :class:`~.JID` of local receiver. | ||||
|         - **node**:  stream id | ||||
|         - **ifrom**: who the stream is from. | ||||
|         - **args**: unused | ||||
|         - **returns**: :class:`~.IBBytestream` | ||||
|  | ||||
|         Return a currently opened stream between two JIDs. | ||||
|  | ||||
|     set_stream | ||||
|         - **jid**: :class:`~.JID` of local receiver. | ||||
|         - **node**:  stream id | ||||
|         - **ifrom**: who the stream is from. | ||||
|         - **args**: unused | ||||
|  | ||||
|         Register an opened stream between two JIDs. | ||||
|  | ||||
|     del_stream | ||||
|         - **jid**: :class:`~.JID` of local receiver. | ||||
|         - **node**:  stream id | ||||
|         - **ifrom**: who the stream is from. | ||||
|         - **args**: unused | ||||
|  | ||||
|         Delete a stream between two JIDs. | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0047.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0049: Private XML Storage | ||||
| ============================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0049 | ||||
|  | ||||
| .. autoclass:: XEP_0049 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0049.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0050: Ad-Hoc Commands | ||||
| ========================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0050 | ||||
|  | ||||
| .. autoclass:: XEP_0050 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0050.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,52 +0,0 @@ | ||||
|  | ||||
| XEP-0054: vcard-temp | ||||
| ==================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0054 | ||||
|  | ||||
| .. autoclass:: XEP_0054 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
| .. _api-0054: | ||||
|  | ||||
| Internal API methods | ||||
| -------------------- | ||||
|  | ||||
| This plugin maintains by default an in-memory cache of the received | ||||
| VCards. | ||||
|  | ||||
| .. glossary:: | ||||
|  | ||||
|     set_vcard | ||||
|         - **jid**: :class:`~.JID` of whom to set the vcard | ||||
|         - **node**: unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: :class:`~.VCardTemp` object to store for this JID. | ||||
|  | ||||
|         Set a VCard for a JID. | ||||
|  | ||||
|     get_vcard | ||||
|         - **jid**: :class:`~.JID` of whom to set the vcard | ||||
|         - **node**: unused | ||||
|         - **ifrom**: :class:`~.JID` the request is coming from | ||||
|         - **args**: unused | ||||
|         - **returns**: :class:`~.VCardTemp` object for this JID or None. | ||||
|  | ||||
|         Get a stored VCard for a JID. | ||||
|  | ||||
|     del_vcard | ||||
|         - **jid**: :class:`~.JID` of whom to set the vcard | ||||
|         - **node**: unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: unused | ||||
|  | ||||
|         Delete a stored VCard for a JID. | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0054.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,21 +0,0 @@ | ||||
|  | ||||
| XEP-0059: Result Set Management | ||||
| =============================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0059 | ||||
|  | ||||
| .. autoclass:: XEP_0059 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
| .. autoclass:: ResultIterator | ||||
|     :members: | ||||
|     :member-order: bysource | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0059.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,37 +0,0 @@ | ||||
|  | ||||
| XEP-0060: Publish-Subscribe | ||||
| =========================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0060 | ||||
|  | ||||
| .. autoclass:: XEP_0060 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0060.stanza.base | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0060.stanza.pubsub | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
|  | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0060.stanza.pubsub_errors | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0060.stanza.pubsub_owner | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0060.stanza.pubsub_event | ||||
|     :members: | ||||
|     :undoc-members: | ||||
| @@ -1,60 +0,0 @@ | ||||
|  | ||||
| XEP-0065: SOCKS5 Bytestreams | ||||
| ============================ | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0065 | ||||
|  | ||||
| .. autoclass:: XEP_0065 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
| .. _api-0065: | ||||
|  | ||||
| Internal API methods | ||||
| -------------------- | ||||
|  | ||||
| The internal API is used here to authorize or pre-authorize streams. | ||||
|  | ||||
| .. glossary:: | ||||
|  | ||||
|     authorized_sid (0065 version) | ||||
|         - **jid**: :class:`~.JID` receiving the stream initiation. | ||||
|         - **node**:  stream id | ||||
|         - **ifrom**: who the stream is from. | ||||
|         - **args**: :class:`~.Iq` of the stream request. | ||||
|         - **returns**: ``True`` if the stream should be accepted, | ||||
|           ``False`` otherwise. | ||||
|  | ||||
|         Check if the stream should be accepted. Uses | ||||
|         the information setup by :term:`preauthorize_sid (0065 version)` | ||||
|         by default. | ||||
|  | ||||
|     authorized (0065 version) | ||||
|         - **jid**: :class:`~.JID` receiving the stream initiation. | ||||
|         - **node**:  stream id | ||||
|         - **ifrom**: who the stream is from. | ||||
|         - **args**: :class:`~.Iq` of the stream request. | ||||
|         - **returns**: ``True`` if the stream should be accepted, | ||||
|           ``False`` otherwise. | ||||
|  | ||||
|         A fallback handler (run after :term:`authorized_sid (0065 version)`) | ||||
|         to check if a stream should be accepted. Uses the ``auto_accept`` | ||||
|         parameter by default. | ||||
|  | ||||
|     preauthorize_sid (0065 version) | ||||
|         - **jid**: :class:`~.JID` receiving the stream initiation. | ||||
|         - **node**:  stream id | ||||
|         - **ifrom**: who the stream will be from. | ||||
|         - **args**: Unused. | ||||
|  | ||||
|         Register a stream id to be accepted automatically (called from | ||||
|         other plugins such as XEP-0095). | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0065.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0066: Out of Band Data | ||||
| ========================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0066 | ||||
|  | ||||
| .. autoclass:: XEP_0066 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0066.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0070: Verifying HTTP Requests via XMPP | ||||
| ========================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0070 | ||||
|  | ||||
| .. autoclass:: XEP_0070 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0070.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0071: XHTML-IM | ||||
| ================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0071 | ||||
|  | ||||
| .. autoclass:: XEP_0071 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0071.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,65 +0,0 @@ | ||||
|  | ||||
| XEP-0077: In-Band Registration | ||||
| ============================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0077 | ||||
|  | ||||
| .. autoclass:: XEP_0077 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
| Internal APi methods | ||||
| -------------------- | ||||
|  | ||||
| The API here is made to allow components to manage registered users. | ||||
| The default handlers make use of the plugin options and store users | ||||
| in memory. | ||||
|  | ||||
| .. glossary:: | ||||
|  | ||||
|     user_get | ||||
|         - **jid**: unused | ||||
|         - **node**: unused | ||||
|         - **ifrom**: who the request is coming from | ||||
|         - **args**: :class:`~.Iq` registration request. | ||||
|         - **returns**: ``dict`` containing user data or None. | ||||
|  | ||||
|         Get user data for a user. | ||||
|  | ||||
|     user_validate | ||||
|         - **jid**: unused | ||||
|         - **node**: unused | ||||
|         - **ifrom**: who the request is coming from | ||||
|         - **args**: :class:`~.Iq` registration request, 'register' payload. | ||||
|         - **raises**: ValueError if some fields are invalid | ||||
|  | ||||
|         Validate form fields and save user data. | ||||
|  | ||||
|     user_remove | ||||
|         - **jid**: unused | ||||
|         - **node**: unused | ||||
|         - **ifrom**: who the request is coming from | ||||
|         - **args**: :class:`~.Iq` registration removal request. | ||||
|         - **raises**: KeyError if the user is not found. | ||||
|  | ||||
|         Remove a user from the store. | ||||
|  | ||||
|     make_registration_form | ||||
|         - **jid**: unused | ||||
|         - **node**: unused | ||||
|         - **ifrom**: who the request is coming from | ||||
|         - **args**: :class:`~.Iq` registration request. | ||||
|         - **raises**: KeyError if the user is not found. | ||||
|  | ||||
|         Return an :class:`~.Iq` reply for the request, with a form and | ||||
|         options set. By default, use ``form_fields`` and ``form_instructions`` | ||||
|         plugin config options. | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0077.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0079: Advanced Message Processing | ||||
| ===================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0079 | ||||
|  | ||||
| .. autoclass:: XEP_0079 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0079.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0080: User Location | ||||
| ======================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0080 | ||||
|  | ||||
| .. autoclass:: XEP_0080 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0080.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,9 +0,0 @@ | ||||
|  | ||||
| XEP-0082: XMPP Date and Time Profiles | ||||
| ===================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0082 | ||||
|  | ||||
| .. autoclass:: XEP_0082 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0084: User Avatar | ||||
| ===================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0084 | ||||
|  | ||||
| .. autoclass:: XEP_0084 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0084.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0085: Chat State Notifications | ||||
| ================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0085 | ||||
|  | ||||
| .. autoclass:: XEP_0085 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0085.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0086: Error Condition Mappings | ||||
| ================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0086 | ||||
|  | ||||
| .. autoclass:: XEP_0086 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0086.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0092: Software Version | ||||
| ========================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0092 | ||||
|  | ||||
| .. autoclass:: XEP_0092 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0092.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,9 +0,0 @@ | ||||
|  | ||||
| XEP-0106: Gateway interaction | ||||
| ============================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0100 | ||||
|  | ||||
| .. autoclass:: XEP_0100 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
| @@ -1,9 +0,0 @@ | ||||
|  | ||||
| XEP-0106: JID Escaping | ||||
| ====================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0106 | ||||
|  | ||||
| .. autoclass:: XEP_0106 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0107: User Mood | ||||
| =================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0107 | ||||
|  | ||||
| .. autoclass:: XEP_0107 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0107.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0108: User Activity | ||||
| ======================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0108 | ||||
|  | ||||
| .. autoclass:: XEP_0108 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0108.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,66 +0,0 @@ | ||||
|  | ||||
| XEP-0115: Entity Capabilities | ||||
| ============================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0115 | ||||
|  | ||||
| .. autoclass:: XEP_0115 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
| .. _api-0115: | ||||
|  | ||||
| Internal API methods | ||||
| -------------------- | ||||
|  | ||||
| This internal API extends the Disco internal API, and also manages an | ||||
| in-memory cache of verstring→disco info, and fulljid→verstring. | ||||
|  | ||||
| .. glossary:: | ||||
|  | ||||
|     cache_caps | ||||
|         - **jid**: unused | ||||
|         - **node**:  unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: a ``dict`` containing the verstring and | ||||
|           :class:`~.DiscoInfo` payload ( | ||||
|           ``{'verstring': Optional[str], 'info': Optional[DiscoInfo]}``) | ||||
|  | ||||
|         Cache a verification string with its payload. | ||||
|  | ||||
|     get_caps | ||||
|         - **jid**: JID to retrieve the verstring for (unused with the default | ||||
|           handler) | ||||
|         - **node**:  unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: a ``dict`` containing the verstring | ||||
|           ``{'verstring': str}`` | ||||
|         - **returns**: The :class:`~.DiscoInfo` payload for that verstring. | ||||
|  | ||||
|         Get a disco payload from a verstring. | ||||
|  | ||||
|     assign_verstring | ||||
|         - **jid**: :class:`~.JID` (full) to assign the verstring to | ||||
|         - **node**:  unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: a ``dict`` containing the verstring | ||||
|           ``{'verstring': str}`` | ||||
|  | ||||
|         Cache JID→verstring information. | ||||
|  | ||||
|     get_verstring | ||||
|         - **jid**: :class:`~.JID` to use for fetching the verstring | ||||
|         - **node**:  unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: unused | ||||
|         - **returns**: ``str``, the verstring | ||||
|  | ||||
|         Retrieve a verstring for a JID. | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0115.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0118: User Tune | ||||
| =================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0118 | ||||
|  | ||||
| .. autoclass:: XEP_0118 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0118.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0122: Data Forms Validation | ||||
| =============================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0122 | ||||
|  | ||||
| .. autoclass:: XEP_0122 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0122.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,44 +0,0 @@ | ||||
|  | ||||
| XEP-0128: Service Discovery Extensions | ||||
| ====================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0128 | ||||
|  | ||||
| .. autoclass:: XEP_0128 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
| .. _api-0128: | ||||
|  | ||||
| Internal API methods | ||||
| -------------------- | ||||
|  | ||||
|  | ||||
|  | ||||
| .. glossary:: | ||||
|  | ||||
|     add_extended_info | ||||
|         - **jid**: JID to set the extended info for | ||||
|         - **node**:  note to set the info at | ||||
|         - **ifrom**: unused | ||||
|         - **args**: A :class:`~.Form` or list of forms to add to the disco | ||||
|           extended info for this JID/node. | ||||
|  | ||||
|         Add extended info for a JID/node. | ||||
|  | ||||
|     set_extended_info | ||||
|         - **jid**: JID to set the extended info for | ||||
|         - **node**:  note to set the info at | ||||
|         - **ifrom**: unused | ||||
|         - **args**: A :class:`~.Form` or list of forms to set as the disco | ||||
|           extended info for this JID/node. | ||||
|  | ||||
|         Set extended info for a JID/node. | ||||
|  | ||||
|     del_extended_info | ||||
|         - **jid**: JID to delete the extended info from | ||||
|         - **node**:  note to delete the info from | ||||
|         - **ifrom**: unused | ||||
|         - **args**: unused | ||||
|  | ||||
|         Delete extended info for a JID/node. | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0131: Stanza Headers and Internet Metadata | ||||
| ============================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0131 | ||||
|  | ||||
| .. autoclass:: XEP_0131 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0131.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,9 +0,0 @@ | ||||
|  | ||||
| XEP-0133: Service Administration | ||||
| ================================ | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0133 | ||||
|  | ||||
| .. autoclass:: XEP_0133 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0152: Reachability Addresses | ||||
| ================================ | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0152 | ||||
|  | ||||
| .. autoclass:: XEP_0152 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0152.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,55 +0,0 @@ | ||||
|  | ||||
| XEP-0153: vCard-Based Avatars | ||||
| ============================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0153 | ||||
|  | ||||
| .. autoclass:: XEP_0153 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
| .. _api-0153: | ||||
|  | ||||
| Internal API methods | ||||
| -------------------- | ||||
|  | ||||
| The internal API is used here to maintain an in-memory JID→avatar hash | ||||
| cache. | ||||
|  | ||||
| .. glossary:: | ||||
|  | ||||
|     set_hash | ||||
|         - **jid**: :class:`~.JID` of whom to retrieve the last activity | ||||
|         - **node**: unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: ``str``, avatar hash | ||||
|  | ||||
|         Set the avatar hash for a JID. | ||||
|  | ||||
|     reset_hash | ||||
|         - **jid**: :class:`~.JID` of whom to retrieve the last activity | ||||
|         - **node**: unused | ||||
|         - **ifrom**: :class:`~.JID` of the entity requesting the reset. | ||||
|         - **args**: unused | ||||
|         - **returns** | ||||
|           information. | ||||
|  | ||||
|         Reset the avatar hash for a JID. This downloads the vcard and computes | ||||
|         the hash. | ||||
|  | ||||
|     get_hash | ||||
|         - **jid**: :class:`~.JID` of whom to retrieve the last activity | ||||
|         - **node**: unused | ||||
|         - **ifrom**: unused | ||||
|         - **args**: unused | ||||
|         - **returns**: ``Optional[str]``, the avatar hash | ||||
|  | ||||
|         Get the avatar hash for a JID. | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0153.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,9 +0,0 @@ | ||||
|  | ||||
| XEP-0163: Personal Eventing Protocol (PEP) | ||||
| ========================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0163 | ||||
|  | ||||
| .. autoclass:: XEP_0163 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0172: User Nickname | ||||
| ======================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0172 | ||||
|  | ||||
| .. autoclass:: XEP_0172 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0172.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0184: Message Delivery Receipts | ||||
| =================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0184 | ||||
|  | ||||
| .. autoclass:: XEP_0184 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0184.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0186: Invisible Command | ||||
| =========================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0186 | ||||
|  | ||||
| .. autoclass:: XEP_0186 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0186.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0191: Blocking Command | ||||
| ========================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0191 | ||||
|  | ||||
| .. autoclass:: XEP_0191 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0191.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0196: User Gaming | ||||
| ===================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0196 | ||||
|  | ||||
| .. autoclass:: XEP_0196 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0196.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0198: Stream Management | ||||
| =========================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0198 | ||||
|  | ||||
| .. autoclass:: XEP_0198 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0198.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0199: XMPP Ping | ||||
| =================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0199 | ||||
|  | ||||
| .. autoclass:: XEP_0199 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0199.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0202: Entity Time | ||||
| ===================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0202 | ||||
|  | ||||
| .. autoclass:: XEP_0202 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0202.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0203: Delayed Delivery | ||||
| ========================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0203 | ||||
|  | ||||
| .. autoclass:: XEP_0203 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0203.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0221: Data Forms Media Element | ||||
| ================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0221 | ||||
|  | ||||
| .. autoclass:: XEP_0221 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0221.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,9 +0,0 @@ | ||||
|  | ||||
| XEP-0222: Persistent Storage of Public Data via PubSub | ||||
| ====================================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0222 | ||||
|  | ||||
| .. autoclass:: XEP_0222 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
| @@ -1,9 +0,0 @@ | ||||
|  | ||||
| XEP-0223: Persistent Storage of Private Data via PubSub | ||||
| ======================================================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0223 | ||||
|  | ||||
| .. autoclass:: XEP_0223 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0224: Attention | ||||
| =================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0224 | ||||
|  | ||||
| .. autoclass:: XEP_0224 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0224.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,53 +0,0 @@ | ||||
|  | ||||
| XEP-0231: Bits of Binary | ||||
| ======================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0231 | ||||
|  | ||||
| .. autoclass:: XEP_0231 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
| .. _api-0231: | ||||
|  | ||||
| Internal API methods | ||||
| -------------------- | ||||
|  | ||||
| The default API handlers for this plugin manage an in-memory cache of | ||||
| bits of binary by content-id. | ||||
|  | ||||
| .. glossary:: | ||||
|  | ||||
|     set_bob | ||||
|         - **jid**: :class:`~.JID` sending the bob | ||||
|         - **node**: unused | ||||
|         - **ifrom**: :class:`~JID` receiving the bob | ||||
|         - **args**: :class:`~.BitsOfBinary` element. | ||||
|  | ||||
|         Set a BoB in the cache. | ||||
|  | ||||
|     get_bob | ||||
|         - **jid**: :class:`~.JID` receiving the bob | ||||
|         - **node**: unused | ||||
|         - **ifrom**: :class:`~JID` sending the bob | ||||
|         - **args**: ``str`` content-id of the bob | ||||
|         - **returns**: :class:`~.BitsOfBinary` element. | ||||
|  | ||||
|         Get a BoB from the cache. | ||||
|  | ||||
|     del_bob | ||||
|         - **jid**: unused | ||||
|         - **node**: unused | ||||
|         - **ifrom**: :class:`~JID` sending the bob | ||||
|         - **args**: ``str`` content-id of the bob | ||||
|  | ||||
|         Delete a BoB from the cache. | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0231.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0235: OAuth Over XMPP | ||||
| ========================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0235 | ||||
|  | ||||
| .. autoclass:: XEP_0235 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0235.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0249: Direct MUC Invitations | ||||
| ================================ | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0249 | ||||
|  | ||||
| .. autoclass:: XEP_0249 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0249.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,9 +0,0 @@ | ||||
|  | ||||
| XEP-0256: Last Activity in Presence | ||||
| =================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0256 | ||||
|  | ||||
| .. autoclass:: XEP_0256 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0257: Client Certificate Management for SASL EXTERNAL | ||||
| ========================================================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0257 | ||||
|  | ||||
| .. autoclass:: XEP_0257 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0257.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0258: Security Labels in XMPP | ||||
| ================================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0258 | ||||
|  | ||||
| .. autoclass:: XEP_0258 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0258.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0279: Server IP Check | ||||
| ========================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0279 | ||||
|  | ||||
| .. autoclass:: XEP_0279 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0279.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0280: Message Carbons | ||||
| ========================= | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0280 | ||||
|  | ||||
| .. autoclass:: XEP_0280 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0280.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0297: Stanza Forwarding | ||||
| =========================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0297 | ||||
|  | ||||
| .. autoclass:: XEP_0297 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0297.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
| @@ -1,18 +0,0 @@ | ||||
|  | ||||
| XEP-0300: Use of Cryptographic Hash Functions in XMPP | ||||
| ===================================================== | ||||
|  | ||||
| .. module:: slixmpp.plugins.xep_0300 | ||||
|  | ||||
| .. autoclass:: XEP_0300 | ||||
|     :members: | ||||
|     :exclude-members: session_bind, plugin_init, plugin_end | ||||
|  | ||||
|  | ||||
| Stanza elements | ||||
| --------------- | ||||
|  | ||||
| .. automodule:: slixmpp.plugins.xep_0300.stanza | ||||
|     :members: | ||||
|     :undoc-members: | ||||
|  | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user