aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author简律纯 <i@jyunko.cn>2024-02-24 12:48:55 +0800
committer简律纯 <i@jyunko.cn>2024-02-24 12:48:55 +0800
commitae345a2f193a4d6022edda76523a39f6e891843e (patch)
treefbe13a483db44dbb4ac222f1cd29583edda9341f
parent9b916be9c8db9eedabde0331aef0cc53b5918b34 (diff)
downloadTRPGNivis-ae345a2f193a4d6022edda76523a39f6e891843e.tar.gz
TRPGNivis-ae345a2f193a4d6022edda76523a39f6e891843e.zip
refactor!: rewrite python package
-rw-r--r--.github/workflows/changelog.yml47
-rw-r--r--.github/workflows/pages.yml27
-rw-r--r--.gitignore1
-rw-r--r--.pdm-python2
-rw-r--r--.readthedocs.yaml32
-rw-r--r--COPYING (renamed from LICENSE)0
-rw-r--r--docs/Makefile26
-rw-r--r--docs/_static/logo.pngbin0 -> 235361 bytes
-rw-r--r--docs/docs/css/neoteroi-cards.css102
-rw-r--r--docs/docs/css/neoteroi-gantt.css328
-rw-r--r--docs/docs/css/neoteroi-mkdocs.css1399
-rw-r--r--docs/docs/css/neoteroi-mkdocs.min.css1
-rw-r--r--docs/docs/css/neoteroi-spantable.css56
-rw-r--r--docs/docs/css/neoteroi-timeline.css340
-rw-r--r--docs/docs/index.md43
-rw-r--r--docs/docs/javascripts/.gitkeep0
-rw-r--r--docs/docs/res/main.pdfbin54209 -> 0 bytes
-rw-r--r--docs/docs/showcase/index.md24
-rw-r--r--docs/docs/stylesheets/.gitkeep0
-rw-r--r--docs/main.pdfbin53626 -> 0 bytes
-rw-r--r--docs/main.tex87
-rw-r--r--docs/mkdocs.yml151
-rw-r--r--docs/overrides/.gitkeep0
-rw-r--r--docs/overrides/main.html13
-rw-r--r--docs/requirements.txt13
-rw-r--r--docs/source/CONTRIBUTING.rst2
-rw-r--r--docs/source/COPYING.rst1
-rw-r--r--docs/source/changelog.rst3
-rw-r--r--docs/source/conf.py99
-rw-r--r--docs/source/index.rst23
-rw-r--r--docs/source/pages/contributing.rst (renamed from docs/docs/blog/index.md)0
-rw-r--r--nivis-python/Grammar/Token (renamed from psi/Grammar/Token)0
-rw-r--r--nivis-python/Lib/IOStream/__init__.psi (renamed from psi/Lib/IOStream/__init__.psi)0
-rw-r--r--nivis-python/Modules/asyncio/__init__.py (renamed from psi/Modules/asyncio/__init__.py)0
-rw-r--r--nivis-python/__init__.py (renamed from psi/__init__.py)0
-rw-r--r--nivis-python/exception.py (renamed from psi/exception.py)0
-rw-r--r--nivis-python/execution.py (renamed from psi/execution.py)0
-rw-r--r--nivis-python/interpreter.py (renamed from psi/interpreter.py)0
-rw-r--r--nivis-python/lexer.py (renamed from psi/lexer.py)0
-rw-r--r--nivis-python/mathmatics.py (renamed from psi/mathmatics.py)0
-rw-r--r--nivis-python/parsers.py (renamed from psi/parsers.py)0
-rw-r--r--nivis-python/type.py (renamed from psi/type.py)0
-rw-r--r--pdm.lock979
-rw-r--r--psi/psi.py69
-rw-r--r--pyproject.toml26
-rw-r--r--readme.rst105
-rw-r--r--readme_cn.rst97
-rw-r--r--src/nivis_python/__init__.py (renamed from docs/docs/changelog/index.md)0
48 files changed, 587 insertions, 3509 deletions
diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml
new file mode 100644
index 0000000..e89687a
--- /dev/null
+++ b/.github/workflows/changelog.yml
@@ -0,0 +1,47 @@
+name: CHANGELOG
+
+on:
+ push:
+ tags:
+ - "v*"
+ # - v[0-9]+.[0-9]+.[0-9]+
+ workflow_dispatch:
+
+jobs:
+ deploy:
+ runs-on: ubuntu-latest
+ permissions:
+ contents: write
+ pull-requests: write
+ id-token: write
+ steps:
+ - name: Checkout Code
+ uses: actions/checkout@v4
+
+ - name: Update CHANGELOG
+ id: changelog
+ uses: requarks/changelog-action@v1
+ with:
+ token: ${{ github.token }}
+ tag: ${{ github.ref_name }}
+ includeInvalidCommits: true
+ changelogFilePath: CHANGELOG.md
+ writeToFile: true
+ useGitmojis: false
+
+ - name: Create Release
+ uses: ncipollo/release-action@v1.14.0
+ with:
+ allowUpdates: true
+ draft: false
+ makeLatest: true
+ name: ${{ github.ref_name }}
+ body: ${{ steps.changelog.outputs.changes }}
+ token: ${{ github.token }}
+
+ - name: Commit CHANGELOG.md
+ uses: stefanzweifel/git-auto-commit-action@v5
+ with:
+ branch: main
+ commit_message: 'docs: update CHANGELOG.md for ${{ github.ref_name }} [skip ci]'
+ file_pattern: CHANGELOG.md
diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml
deleted file mode 100644
index eaf6a06..0000000
--- a/.github/workflows/pages.yml
+++ /dev/null
@@ -1,27 +0,0 @@
-name: ci
-on:
- push:
- branches:
- - master
- - main
-permissions:
- contents: write
-jobs:
- deploy:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v3
- - uses: actions/setup-python@v4
- with:
- python-version: 3.x
- - run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
- - uses: actions/cache@v3
- with:
- key: mkdocs-material-${{ env.cache_id }}
- path: .cache
- restore-keys: |
- mkdocs-material-
- - run: |
- cd docs
- pip install -r requirements.txt
- mkdocs gh-deploy --force
diff --git a/.gitignore b/.gitignore
index db75931..bf27aad 100644
--- a/.gitignore
+++ b/.gitignore
@@ -20,7 +20,6 @@ docs/site/
.pdm-python
.pdm-build/
.venv/
-1.1
# vscode
.vscode/
diff --git a/.pdm-python b/.pdm-python
index 8499bf5..d05c14f 100644
--- a/.pdm-python
+++ b/.pdm-python
@@ -1 +1 @@
-D:/Git Project/HydroRoll-Team/psi/.venv/Scripts/python.exe \ No newline at end of file
+D:/GitProject/HydroRoll-Team/nivis-python/.venv/Scripts/python.exe \ No newline at end of file
diff --git a/.readthedocs.yaml b/.readthedocs.yaml
new file mode 100644
index 0000000..6d62693
--- /dev/null
+++ b/.readthedocs.yaml
@@ -0,0 +1,32 @@
+# .readthedocs.yaml
+# Read the Docs configuration file
+# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
+
+# Required
+version: 2
+
+# Set the OS, Python version and other tools you might need
+build:
+ os: ubuntu-22.04
+ tools:
+ python: "3.10"
+ # You can also specify other tool versions:
+ # nodejs: "19"
+ # rust: "1.64"
+ # golang: "1.19"
+
+# Build documentation in the "docs/" directory with Sphinx
+sphinx:
+ configuration: docs/source/conf.py
+
+# Optionally build your docs in additional formats such as PDF and ePub
+formats:
+ - pdf
+ - epub
+
+# Optional but recommended, declare the Python requirements required
+# to build your documentation
+# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html
+python:
+ install:
+ - requirements: docs/requirements.txt \ No newline at end of file
diff --git a/LICENSE b/COPYING
index 61e8701..61e8701 100644
--- a/LICENSE
+++ b/COPYING
diff --git a/docs/Makefile b/docs/Makefile
new file mode 100644
index 0000000..fc24907
--- /dev/null
+++ b/docs/Makefile
@@ -0,0 +1,26 @@
+# Minimal makefile for Sphinx documentation
+#
+
+# You can set these variables from the command line, and also
+# from the environment for the first two.
+SPHINXOPTS ?=
+SPHINXBUILD ?= sphinx-build
+SOURCEDIR = .
+BUILDDIR = _build
+SPHINXINTL ?= sphinx-intl
+lang ?= zh_CN
+
+# Put it first so that "make" without argument is like "make help".
+help:
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
+
+.PHONY: help Makefile
+
+# Catch-all target: route all unknown targets to Sphinx using the new
+# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
+%: Makefile
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
+
+# update translation command
+translate:
+ @$(SPHINXINTL) update -p ./build/gettext -l $(lang) $(O) \ No newline at end of file
diff --git a/docs/_static/logo.png b/docs/_static/logo.png
new file mode 100644
index 0000000..8b5a14c
--- /dev/null
+++ b/docs/_static/logo.png
Binary files differ
diff --git a/docs/docs/css/neoteroi-cards.css b/docs/docs/css/neoteroi-cards.css
deleted file mode 100644
index 5a5152f..0000000
--- a/docs/docs/css/neoteroi-cards.css
+++ /dev/null
@@ -1,102 +0,0 @@
-.nt-cards.nt-grid {
- display: grid;
- grid-auto-columns: 1fr;
- gap: 0.5rem;
- max-width: 100vw;
- overflow-x: auto;
- padding: 1px;
-}
-.nt-cards.nt-grid.cols-1 {
- grid-template-columns: repeat(1, 1fr);
-}
-.nt-cards.nt-grid.cols-2 {
- grid-template-columns: repeat(2, 1fr);
-}
-.nt-cards.nt-grid.cols-3 {
- grid-template-columns: repeat(3, 1fr);
-}
-.nt-cards.nt-grid.cols-4 {
- grid-template-columns: repeat(4, 1fr);
-}
-.nt-cards.nt-grid.cols-5 {
- grid-template-columns: repeat(5, 1fr);
-}
-.nt-cards.nt-grid.cols-6 {
- grid-template-columns: repeat(6, 1fr);
-}
-
-@media only screen and (max-width: 400px) {
- .nt-cards.nt-grid {
- grid-template-columns: repeat(1, 1fr) !important;
- }
-}
-.nt-card {
- box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
-}
-.nt-card:hover {
- box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.24), 0 3px 1px -2px rgba(0, 0, 0, 0.3), 0 1px 5px 0 rgba(0, 0, 0, 0.22);
-}
-
-[data-md-color-scheme=slate] .nt-card {
- box-shadow: 0 2px 2px 0 rgba(4, 40, 33, 0.14), 0 3px 1px -2px rgba(40, 86, 94, 0.47), 0 1px 5px 0 rgba(139, 252, 255, 0.64);
-}
-[data-md-color-scheme=slate] .nt-card:hover {
- box-shadow: 0 2px 2px 0 rgba(0, 255, 206, 0.14), 0 3px 1px -2px rgba(33, 156, 177, 0.47), 0 1px 5px 0 rgba(96, 251, 255, 0.64);
-}
-
-.nt-card > a {
- color: var(--md-default-fg-color);
-}
-
-.nt-card > a > div {
- cursor: pointer;
-}
-
-.nt-card {
- padding: 5px;
- margin-bottom: 0.5rem;
-}
-
-.nt-card-title {
- font-size: 1rem;
- font-weight: bold;
- margin: 4px 0 8px 0;
- line-height: 22px;
-}
-
-.nt-card-content {
- padding: 0.4rem 0.8rem 0.8rem 0.8rem;
-}
-
-.nt-card-text {
- font-size: 14px;
- padding: 0;
- margin: 0;
-}
-
-.nt-card .nt-card-image {
- text-align: center;
- border-radius: 2px;
- background-position: center center;
- background-size: cover;
- background-repeat: no-repeat;
- min-height: 120px;
-}
-
-.nt-card .nt-card-image.tags img {
- margin-top: 12px;
-}
-
-.nt-card .nt-card-image img {
- height: 105px;
- margin-top: 5px;
-}
-
-.nt-card a:hover,
-.nt-card a:focus {
- color: var(--md-accent-fg-color);
-}
-
-.nt-card h2 {
- margin: 0;
-}
diff --git a/docs/docs/css/neoteroi-gantt.css b/docs/docs/css/neoteroi-gantt.css
deleted file mode 100644
index f93f202..0000000
--- a/docs/docs/css/neoteroi-gantt.css
+++ /dev/null
@@ -1,328 +0,0 @@
-/**
- * Extra CSS for the neoteroi.projects.gantt extension.
- *
- * https://github.com/Neoteroi/mkdocs-plugins
-**/
-:root {
- --nt-scrollbar-color: #2751b0;
- --nt-plan-actions-height: 24px;
- --nt-units-background: #ff9800;
- --nt-months-background: #2751b0;
- --nt-plan-vertical-line-color: #a3a3a3ad;
-}
-
-.nt-pastello {
- --nt-scrollbar-color: #9fb8f4;
- --nt-units-background: #f5dc82;
- --nt-months-background: #5b7fd1;
-}
-
-[data-md-color-scheme=slate] {
- --nt-units-background: #003773;
-}
-[data-md-color-scheme=slate] .nt-pastello {
- --nt-units-background: #3f4997;
-}
-
-.nt-plan-root {
- min-height: 200px;
- scrollbar-width: 20px;
- scrollbar-color: var(--nt-scrollbar-color);
- display: flex;
-}
-.nt-plan-root ::-webkit-scrollbar {
- width: 20px;
-}
-.nt-plan-root ::-webkit-scrollbar-track {
- box-shadow: inset 0 0 5px grey;
- border-radius: 10px;
-}
-.nt-plan-root ::-webkit-scrollbar-thumb {
- background: var(--nt-scrollbar-color);
- border-radius: 10px;
-}
-.nt-plan-root .nt-plan {
- flex: 80%;
-}
-.nt-plan-root.no-groups .nt-plan-periods {
- padding-left: 0;
-}
-.nt-plan-root.no-groups .nt-plan-group-summary {
- display: none;
-}
-.nt-plan-root .nt-timeline-dot.bigger {
- top: -10px;
-}
-.nt-plan-root .nt-timeline-dot.bigger[title] {
- cursor: help;
-}
-
-.nt-plan {
- white-space: nowrap;
- overflow-x: auto;
- display: flex;
-}
-.nt-plan .ug-timeline-dot {
- left: 368px;
- top: -8px;
- cursor: help;
-}
-
-.months {
- display: flex;
-}
-
-.month {
- flex: auto;
- display: inline-block;
- box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 1px -2px, rgba(0, 0, 0, 0.14) 0px 2px 2px 0px, rgba(0, 0, 0, 0.12) 0px 1px 5px 0px inset;
- background-color: var(--nt-months-background);
- color: white;
- text-transform: uppercase;
- font-family: Roboto, Helvetica, Arial, sans-serif;
- padding: 2px 5px;
- font-size: 12px;
- border: 1px solid #000;
- width: 150px;
- border-radius: 8px;
-}
-
-.nt-plan-group-activities {
- flex: auto;
- position: relative;
-}
-
-.nt-vline {
- border-left: 1px dashed var(--nt-plan-vertical-line-color);
- height: 100%;
- left: 0;
- position: absolute;
- margin-left: -0.5px;
- top: 0;
- -webkit-transition: all 0.5s linear !important;
- -moz-transition: all 0.5s linear !important;
- -ms-transition: all 0.5s linear !important;
- -o-transition: all 0.5s linear !important;
- transition: all 0.5s linear !important;
- z-index: -2;
-}
-
-.nt-plan-activity {
- display: flex;
- margin: 2px 0;
- background-color: rgba(187, 187, 187, 0.2509803922);
-}
-
-.actions {
- height: var(--nt-plan-actions-height);
-}
-
-.actions {
- position: relative;
-}
-
-.period {
- display: inline-block;
- height: var(--nt-plan-actions-height);
- width: 120px;
- position: absolute;
- left: 0px;
- background: #1da1f2;
- border-radius: 5px;
- transition: all 0.5s;
- cursor: help;
- -webkit-transition: width 1s ease-in-out;
- -moz-transition: width 1s ease-in-out;
- -o-transition: width 1s ease-in-out;
- transition: width 1s ease-in-out;
-}
-.period .nt-tooltip {
- display: none;
- top: 30px;
- position: relative;
- padding: 1rem;
- text-align: center;
- font-size: 12px;
-}
-.period:hover .nt-tooltip {
- display: inline-block;
-}
-
-.period-0 {
- left: 340px;
- visibility: visible;
- background-color: rgb(69, 97, 101);
-}
-
-.period-1 {
- left: 40px;
- visibility: visible;
- background-color: green;
-}
-
-.period-2 {
- left: 120px;
- visibility: visible;
- background-color: pink;
- width: 80px;
-}
-
-.period-3 {
- left: 190px;
- visibility: visible;
- background-color: darkred;
- width: 150px;
-}
-
-.weeks > span,
-.days > span {
- height: 25px;
-}
-
-.weeks > span {
- display: inline-block;
- margin: 0;
- padding: 0;
- font-weight: bold;
-}
-.weeks > span .week-text {
- font-size: 10px;
- position: absolute;
- display: inline-block;
- padding: 3px 4px;
-}
-
-.days {
- z-index: -2;
- position: relative;
-}
-
-.day-text {
- font-size: 10px;
- position: absolute;
- display: inline-block;
- padding: 3px 4px;
-}
-
-.period span {
- font-size: 12px;
- vertical-align: top;
- margin-left: 4px;
- color: black;
- background: rgba(255, 255, 255, 0.6588235294);
- border-radius: 6px;
- padding: 0 4px;
-}
-
-.weeks,
-.days {
- height: 20px;
- display: flex;
- box-sizing: content-box;
-}
-
-.months {
- display: flex;
-}
-
-.week,
-.day {
- height: 20px;
- position: relative;
- border: 1;
- flex: auto;
- border: 2px solid white;
- border-radius: 4px;
- background-color: var(--nt-units-background);
- cursor: help;
-}
-
-.years {
- display: flex;
-}
-
-.year {
- text-align: center;
- border-right: 1px solid var(--nt-plan-vertical-line-color);
- font-weight: bold;
-}
-.year:first-child {
- border-left: 1px solid var(--nt-plan-vertical-line-color);
-}
-.year:first-child:last-child {
- width: 100%;
-}
-
-.quarters {
- display: flex;
-}
-
-.quarter {
- width: 12.5%;
- text-align: center;
- border-right: 1px solid var(--nt-plan-vertical-line-color);
- font-weight: bold;
-}
-.quarter:first-child {
- border-left: 1px solid var(--nt-plan-vertical-line-color);
-}
-
-.nt-plan-group {
- margin: 20px 0;
- position: relative;
-}
-
-.nt-plan-group {
- display: flex;
-}
-
-.nt-plan-group-summary {
- background: #2751b0;
- width: 150px;
- white-space: normal;
- padding: 0.1rem 0.5rem;
- border-radius: 5px;
- color: #fff;
- z-index: 3;
-}
-.nt-plan-group-summary p {
- margin: 0;
- padding: 0;
- font-size: 0.6rem;
- color: #fff;
-}
-
-.nt-plan-group-summary,
-.month,
-.period,
-.week,
-.day,
-.nt-tooltip {
- border: 3px solid white;
- box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.2), 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
-}
-
-.nt-plan-periods {
- padding-left: 150px;
-}
-
-.months {
- z-index: 2;
- position: relative;
-}
-
-.weeks {
- position: relative;
- top: -2px;
- z-index: 0;
-}
-
-.month,
-.quarter,
-.year,
-.week,
-.day,
-.nt-tooltip {
- font-family: Roboto, Helvetica, Arial, sans-serif;
- box-sizing: border-box;
-}
diff --git a/docs/docs/css/neoteroi-mkdocs.css b/docs/docs/css/neoteroi-mkdocs.css
deleted file mode 100644
index ee7d53a..0000000
--- a/docs/docs/css/neoteroi-mkdocs.css
+++ /dev/null
@@ -1,1399 +0,0 @@
-/**
- * All CSS for the neoteroi.projects.gantt extension.
- *
- * https://github.com/Neoteroi/mkdocs-plugins
-**/
-:root {
- --nt-color-0: #CD853F;
- --nt-color-1: #B22222;
- --nt-color-2: #000080;
- --nt-color-3: #4B0082;
- --nt-color-4: #3CB371;
- --nt-color-5: #D2B48C;
- --nt-color-6: #FF00FF;
- --nt-color-7: #98FB98;
- --nt-color-8: #FFEBCD;
- --nt-color-9: #2E8B57;
- --nt-color-10: #6A5ACD;
- --nt-color-11: #48D1CC;
- --nt-color-12: #FFA500;
- --nt-color-13: #F4A460;
- --nt-color-14: #A52A2A;
- --nt-color-15: #FFE4C4;
- --nt-color-16: #FF4500;
- --nt-color-17: #AFEEEE;
- --nt-color-18: #FA8072;
- --nt-color-19: #2F4F4F;
- --nt-color-20: #FFDAB9;
- --nt-color-21: #BC8F8F;
- --nt-color-22: #FFC0CB;
- --nt-color-23: #00FA9A;
- --nt-color-24: #F0FFF0;
- --nt-color-25: #FFFACD;
- --nt-color-26: #F5F5F5;
- --nt-color-27: #FF6347;
- --nt-color-28: #FFFFF0;
- --nt-color-29: #7FFFD4;
- --nt-color-30: #E9967A;
- --nt-color-31: #7B68EE;
- --nt-color-32: #FFF8DC;
- --nt-color-33: #0000CD;
- --nt-color-34: #D2691E;
- --nt-color-35: #708090;
- --nt-color-36: #5F9EA0;
- --nt-color-37: #008080;
- --nt-color-38: #008000;
- --nt-color-39: #FFE4E1;
- --nt-color-40: #FFFF00;
- --nt-color-41: #FFFAF0;
- --nt-color-42: #DCDCDC;
- --nt-color-43: #ADFF2F;
- --nt-color-44: #ADD8E6;
- --nt-color-45: #8B008B;
- --nt-color-46: #7FFF00;
- --nt-color-47: #800000;
- --nt-color-48: #20B2AA;
- --nt-color-49: #556B2F;
- --nt-color-50: #778899;
- --nt-color-51: #E6E6FA;
- --nt-color-52: #FFFAFA;
- --nt-color-53: #FF7F50;
- --nt-color-54: #FF0000;
- --nt-color-55: #F5DEB3;
- --nt-color-56: #008B8B;
- --nt-color-57: #66CDAA;
- --nt-color-58: #808000;
- --nt-color-59: #FAF0E6;
- --nt-color-60: #00BFFF;
- --nt-color-61: #C71585;
- --nt-color-62: #00FFFF;
- --nt-color-63: #8B4513;
- --nt-color-64: #F0F8FF;
- --nt-color-65: #FAEBD7;
- --nt-color-66: #8B0000;
- --nt-color-67: #4682B4;
- --nt-color-68: #F0E68C;
- --nt-color-69: #BDB76B;
- --nt-color-70: #A0522D;
- --nt-color-71: #FAFAD2;
- --nt-color-72: #FFD700;
- --nt-color-73: #DEB887;
- --nt-color-74: #E0FFFF;
- --nt-color-75: #8A2BE2;
- --nt-color-76: #32CD32;
- --nt-color-77: #87CEFA;
- --nt-color-78: #00CED1;
- --nt-color-79: #696969;
- --nt-color-80: #DDA0DD;
- --nt-color-81: #EE82EE;
- --nt-color-82: #FFB6C1;
- --nt-color-83: #8FBC8F;
- --nt-color-84: #D8BFD8;
- --nt-color-85: #9400D3;
- --nt-color-86: #A9A9A9;
- --nt-color-87: #FFFFE0;
- --nt-color-88: #FFF5EE;
- --nt-color-89: #FFF0F5;
- --nt-color-90: #FFDEAD;
- --nt-color-91: #800080;
- --nt-color-92: #B0E0E6;
- --nt-color-93: #9932CC;
- --nt-color-94: #DAA520;
- --nt-color-95: #F0FFFF;
- --nt-color-96: #40E0D0;
- --nt-color-97: #00FF7F;
- --nt-color-98: #006400;
- --nt-color-99: #808080;
- --nt-color-100: #87CEEB;
- --nt-color-101: #0000FF;
- --nt-color-102: #6495ED;
- --nt-color-103: #FDF5E6;
- --nt-color-104: #B8860B;
- --nt-color-105: #BA55D3;
- --nt-color-106: #C0C0C0;
- --nt-color-107: #000000;
- --nt-color-108: #F08080;
- --nt-color-109: #B0C4DE;
- --nt-color-110: #00008B;
- --nt-color-111: #6B8E23;
- --nt-color-112: #FFE4B5;
- --nt-color-113: #FFA07A;
- --nt-color-114: #9ACD32;
- --nt-color-115: #FFFFFF;
- --nt-color-116: #F5F5DC;
- --nt-color-117: #90EE90;
- --nt-color-118: #1E90FF;
- --nt-color-119: #7CFC00;
- --nt-color-120: #FF69B4;
- --nt-color-121: #F8F8FF;
- --nt-color-122: #F5FFFA;
- --nt-color-123: #00FF00;
- --nt-color-124: #D3D3D3;
- --nt-color-125: #DB7093;
- --nt-color-126: #DA70D6;
- --nt-color-127: #FF1493;
- --nt-color-128: #228B22;
- --nt-color-129: #FFEFD5;
- --nt-color-130: #4169E1;
- --nt-color-131: #191970;
- --nt-color-132: #9370DB;
- --nt-color-133: #483D8B;
- --nt-color-134: #FF8C00;
- --nt-color-135: #EEE8AA;
- --nt-color-136: #CD5C5C;
- --nt-color-137: #DC143C;
-}
-
-:root {
- --nt-group-0-main: #000000;
- --nt-group-0-dark: #FFFFFF;
- --nt-group-0-light: #000000;
- --nt-group-0-main-bg: #F44336;
- --nt-group-0-dark-bg: #BA000D;
- --nt-group-0-light-bg: #FF7961;
- --nt-group-1-main: #000000;
- --nt-group-1-dark: #FFFFFF;
- --nt-group-1-light: #000000;
- --nt-group-1-main-bg: #E91E63;
- --nt-group-1-dark-bg: #B0003A;
- --nt-group-1-light-bg: #FF6090;
- --nt-group-2-main: #FFFFFF;
- --nt-group-2-dark: #FFFFFF;
- --nt-group-2-light: #000000;
- --nt-group-2-main-bg: #9C27B0;
- --nt-group-2-dark-bg: #6A0080;
- --nt-group-2-light-bg: #D05CE3;
- --nt-group-3-main: #FFFFFF;
- --nt-group-3-dark: #FFFFFF;
- --nt-group-3-light: #000000;
- --nt-group-3-main-bg: #673AB7;
- --nt-group-3-dark-bg: #320B86;
- --nt-group-3-light-bg: #9A67EA;
- --nt-group-4-main: #FFFFFF;
- --nt-group-4-dark: #FFFFFF;
- --nt-group-4-light: #000000;
- --nt-group-4-main-bg: #3F51B5;
- --nt-group-4-dark-bg: #002984;
- --nt-group-4-light-bg: #757DE8;
- --nt-group-5-main: #000000;
- --nt-group-5-dark: #FFFFFF;
- --nt-group-5-light: #000000;
- --nt-group-5-main-bg: #2196F3;
- --nt-group-5-dark-bg: #0069C0;
- --nt-group-5-light-bg: #6EC6FF;
- --nt-group-6-main: #000000;
- --nt-group-6-dark: #FFFFFF;
- --nt-group-6-light: #000000;
- --nt-group-6-main-bg: #03A9F4;
- --nt-group-6-dark-bg: #007AC1;
- --nt-group-6-light-bg: #67DAFF;
- --nt-group-7-main: #000000;
- --nt-group-7-dark: #000000;
- --nt-group-7-light: #000000;
- --nt-group-7-main-bg: #00BCD4;
- --nt-group-7-dark-bg: #008BA3;
- --nt-group-7-light-bg: #62EFFF;
- --nt-group-8-main: #000000;
- --nt-group-8-dark: #FFFFFF;
- --nt-group-8-light: #000000;
- --nt-group-8-main-bg: #009688;
- --nt-group-8-dark-bg: #00675B;
- --nt-group-8-light-bg: #52C7B8;
- --nt-group-9-main: #000000;
- --nt-group-9-dark: #FFFFFF;
- --nt-group-9-light: #000000;
- --nt-group-9-main-bg: #4CAF50;
- --nt-group-9-dark-bg: #087F23;
- --nt-group-9-light-bg: #80E27E;
- --nt-group-10-main: #000000;
- --nt-group-10-dark: #000000;
- --nt-group-10-light: #000000;
- --nt-group-10-main-bg: #8BC34A;
- --nt-group-10-dark-bg: #5A9216;
- --nt-group-10-light-bg: #BEF67A;
- --nt-group-11-main: #000000;
- --nt-group-11-dark: #000000;
- --nt-group-11-light: #000000;
- --nt-group-11-main-bg: #CDDC39;
- --nt-group-11-dark-bg: #99AA00;
- --nt-group-11-light-bg: #FFFF6E;
- --nt-group-12-main: #000000;
- --nt-group-12-dark: #000000;
- --nt-group-12-light: #000000;
- --nt-group-12-main-bg: #FFEB3B;
- --nt-group-12-dark-bg: #C8B900;
- --nt-group-12-light-bg: #FFFF72;
- --nt-group-13-main: #000000;
- --nt-group-13-dark: #000000;
- --nt-group-13-light: #000000;
- --nt-group-13-main-bg: #FFC107;
- --nt-group-13-dark-bg: #C79100;
- --nt-group-13-light-bg: #FFF350;
- --nt-group-14-main: #000000;
- --nt-group-14-dark: #000000;
- --nt-group-14-light: #000000;
- --nt-group-14-main-bg: #FF9800;
- --nt-group-14-dark-bg: #C66900;
- --nt-group-14-light-bg: #FFC947;
- --nt-group-15-main: #000000;
- --nt-group-15-dark: #FFFFFF;
- --nt-group-15-light: #000000;
- --nt-group-15-main-bg: #FF5722;
- --nt-group-15-dark-bg: #C41C00;
- --nt-group-15-light-bg: #FF8A50;
- --nt-group-16-main: #FFFFFF;
- --nt-group-16-dark: #FFFFFF;
- --nt-group-16-light: #000000;
- --nt-group-16-main-bg: #795548;
- --nt-group-16-dark-bg: #4B2C20;
- --nt-group-16-light-bg: #A98274;
- --nt-group-17-main: #000000;
- --nt-group-17-dark: #FFFFFF;
- --nt-group-17-light: #000000;
- --nt-group-17-main-bg: #9E9E9E;
- --nt-group-17-dark-bg: #707070;
- --nt-group-17-light-bg: #CFCFCF;
- --nt-group-18-main: #000000;
- --nt-group-18-dark: #FFFFFF;
- --nt-group-18-light: #000000;
- --nt-group-18-main-bg: #607D8B;
- --nt-group-18-dark-bg: #34515E;
- --nt-group-18-light-bg: #8EACBB;
-}
-
-.nt-pastello {
- --nt-group-0-main: #000000;
- --nt-group-0-dark: #000000;
- --nt-group-0-light: #000000;
- --nt-group-0-main-bg: #EF9A9A;
- --nt-group-0-dark-bg: #BA6B6C;
- --nt-group-0-light-bg: #FFCCCB;
- --nt-group-1-main: #000000;
- --nt-group-1-dark: #000000;
- --nt-group-1-light: #000000;
- --nt-group-1-main-bg: #F48FB1;
- --nt-group-1-dark-bg: #BF5F82;
- --nt-group-1-light-bg: #FFC1E3;
- --nt-group-2-main: #000000;
- --nt-group-2-dark: #000000;
- --nt-group-2-light: #000000;
- --nt-group-2-main-bg: #CE93D8;
- --nt-group-2-dark-bg: #9C64A6;
- --nt-group-2-light-bg: #FFC4FF;
- --nt-group-3-main: #000000;
- --nt-group-3-dark: #000000;
- --nt-group-3-light: #000000;
- --nt-group-3-main-bg: #B39DDB;
- --nt-group-3-dark-bg: #836FA9;
- --nt-group-3-light-bg: #E6CEFF;
- --nt-group-4-main: #000000;
- --nt-group-4-dark: #000000;
- --nt-group-4-light: #000000;
- --nt-group-4-main-bg: #9FA8DA;
- --nt-group-4-dark-bg: #6F79A8;
- --nt-group-4-light-bg: #D1D9FF;
- --nt-group-5-main: #000000;
- --nt-group-5-dark: #000000;
- --nt-group-5-light: #000000;
- --nt-group-5-main-bg: #90CAF9;
- --nt-group-5-dark-bg: #5D99C6;
- --nt-group-5-light-bg: #C3FDFF;
- --nt-group-6-main: #000000;
- --nt-group-6-dark: #000000;
- --nt-group-6-light: #000000;
- --nt-group-6-main-bg: #81D4FA;
- --nt-group-6-dark-bg: #4BA3C7;
- --nt-group-6-light-bg: #B6FFFF;
- --nt-group-7-main: #000000;
- --nt-group-7-dark: #000000;
- --nt-group-7-light: #000000;
- --nt-group-7-main-bg: #80DEEA;
- --nt-group-7-dark-bg: #4BACB8;
- --nt-group-7-light-bg: #B4FFFF;
- --nt-group-8-main: #000000;
- --nt-group-8-dark: #000000;
- --nt-group-8-light: #000000;
- --nt-group-8-main-bg: #80CBC4;
- --nt-group-8-dark-bg: #4F9A94;
- --nt-group-8-light-bg: #B2FEF7;
- --nt-group-9-main: #000000;
- --nt-group-9-dark: #000000;
- --nt-group-9-light: #000000;
- --nt-group-9-main-bg: #A5D6A7;
- --nt-group-9-dark-bg: #75A478;
- --nt-group-9-light-bg: #D7FFD9;
- --nt-group-10-main: #000000;
- --nt-group-10-dark: #000000;
- --nt-group-10-light: #000000;
- --nt-group-10-main-bg: #C5E1A5;
- --nt-group-10-dark-bg: #94AF76;
- --nt-group-10-light-bg: #F8FFD7;
- --nt-group-11-main: #000000;
- --nt-group-11-dark: #000000;
- --nt-group-11-light: #000000;
- --nt-group-11-main-bg: #E6EE9C;
- --nt-group-11-dark-bg: #B3BC6D;
- --nt-group-11-light-bg: #FFFFCE;
- --nt-group-12-main: #000000;
- --nt-group-12-dark: #000000;
- --nt-group-12-light: #000000;
- --nt-group-12-main-bg: #FFF59D;
- --nt-group-12-dark-bg: #CBC26D;
- --nt-group-12-light-bg: #FFFFCF;
- --nt-group-13-main: #000000;
- --nt-group-13-dark: #000000;
- --nt-group-13-light: #000000;
- --nt-group-13-main-bg: #FFE082;
- --nt-group-13-dark-bg: #CAAE53;
- --nt-group-13-light-bg: #FFFFB3;
- --nt-group-14-main: #000000;
- --nt-group-14-dark: #000000;
- --nt-group-14-light: #000000;
- --nt-group-14-main-bg: #FFCC80;
- --nt-group-14-dark-bg: #CA9B52;
- --nt-group-14-light-bg: #FFFFB0;
- --nt-group-15-main: #000000;
- --nt-group-15-dark: #000000;
- --nt-group-15-light: #000000;
- --nt-group-15-main-bg: #FFAB91;
- --nt-group-15-dark-bg: #C97B63;
- --nt-group-15-light-bg: #FFDDC1;
- --nt-group-16-main: #000000;
- --nt-group-16-dark: #000000;
- --nt-group-16-light: #000000;
- --nt-group-16-main-bg: #BCAAA4;
- --nt-group-16-dark-bg: #8C7B75;
- --nt-group-16-light-bg: #EFDCD5;
- --nt-group-17-main: #000000;
- --nt-group-17-dark: #000000;
- --nt-group-17-light: #000000;
- --nt-group-17-main-bg: #EEEEEE;
- --nt-group-17-dark-bg: #BCBCBC;
- --nt-group-17-light-bg: #FFFFFF;
- --nt-group-18-main: #000000;
- --nt-group-18-dark: #000000;
- --nt-group-18-light: #000000;
- --nt-group-18-main-bg: #B0BEC5;
- --nt-group-18-dark-bg: #808E95;
- --nt-group-18-light-bg: #E2F1F8;
-}
-
-.nt-group-0 .nt-plan-group-summary,
-.nt-group-0 .nt-timeline-dot {
- color: var(--nt-group-0-dark);
- background-color: var(--nt-group-0-dark-bg);
-}
-.nt-group-0 .period {
- color: var(--nt-group-0-main);
- background-color: var(--nt-group-0-main-bg);
-}
-
-.nt-group-1 .nt-plan-group-summary,
-.nt-group-1 .nt-timeline-dot {
- color: var(--nt-group-1-dark);
- background-color: var(--nt-group-1-dark-bg);
-}
-.nt-group-1 .period {
- color: var(--nt-group-1-main);
- background-color: var(--nt-group-1-main-bg);
-}
-
-.nt-group-2 .nt-plan-group-summary,
-.nt-group-2 .nt-timeline-dot {
- color: var(--nt-group-2-dark);
- background-color: var(--nt-group-2-dark-bg);
-}
-.nt-group-2 .period {
- color: var(--nt-group-2-main);
- background-color: var(--nt-group-2-main-bg);
-}
-
-.nt-group-3 .nt-plan-group-summary,
-.nt-group-3 .nt-timeline-dot {
- color: var(--nt-group-3-dark);
- background-color: var(--nt-group-3-dark-bg);
-}
-.nt-group-3 .period {
- color: var(--nt-group-3-main);
- background-color: var(--nt-group-3-main-bg);
-}
-
-.nt-group-4 .nt-plan-group-summary,
-.nt-group-4 .nt-timeline-dot {
- color: var(--nt-group-4-dark);
- background-color: var(--nt-group-4-dark-bg);
-}
-.nt-group-4 .period {
- color: var(--nt-group-4-main);
- background-color: var(--nt-group-4-main-bg);
-}
-
-.nt-group-5 .nt-plan-group-summary,
-.nt-group-5 .nt-timeline-dot {
- color: var(--nt-group-5-dark);
- background-color: var(--nt-group-5-dark-bg);
-}
-.nt-group-5 .period {
- color: var(--nt-group-5-main);
- background-color: var(--nt-group-5-main-bg);
-}
-
-.nt-group-6 .nt-plan-group-summary,
-.nt-group-6 .nt-timeline-dot {
- color: var(--nt-group-6-dark);
- background-color: var(--nt-group-6-dark-bg);
-}
-.nt-group-6 .period {
- color: var(--nt-group-6-main);
- background-color: var(--nt-group-6-main-bg);
-}
-
-.nt-group-7 .nt-plan-group-summary,
-.nt-group-7 .nt-timeline-dot {
- color: var(--nt-group-7-dark);
- background-color: var(--nt-group-7-dark-bg);
-}
-.nt-group-7 .period {
- color: var(--nt-group-7-main);
- background-color: var(--nt-group-7-main-bg);
-}
-
-.nt-group-8 .nt-plan-group-summary,
-.nt-group-8 .nt-timeline-dot {
- color: var(--nt-group-8-dark);
- background-color: var(--nt-group-8-dark-bg);
-}
-.nt-group-8 .period {
- color: var(--nt-group-8-main);
- background-color: var(--nt-group-8-main-bg);
-}
-
-.nt-group-9 .nt-plan-group-summary,
-.nt-group-9 .nt-timeline-dot {
- color: var(--nt-group-9-dark);
- background-color: var(--nt-group-9-dark-bg);
-}
-.nt-group-9 .period {
- color: var(--nt-group-9-main);
- background-color: var(--nt-group-9-main-bg);
-}
-
-.nt-group-10 .nt-plan-group-summary,
-.nt-group-10 .nt-timeline-dot {
- color: var(--nt-group-10-dark);
- background-color: var(--nt-group-10-dark-bg);
-}
-.nt-group-10 .period {
- color: var(--nt-group-10-main);
- background-color: var(--nt-group-10-main-bg);
-}
-
-.nt-group-11 .nt-plan-group-summary,
-.nt-group-11 .nt-timeline-dot {
- color: var(--nt-group-11-dark);
- background-color: var(--nt-group-11-dark-bg);
-}
-.nt-group-11 .period {
- color: var(--nt-group-11-main);
- background-color: var(--nt-group-11-main-bg);
-}
-
-.nt-group-12 .nt-plan-group-summary,
-.nt-group-12 .nt-timeline-dot {
- color: var(--nt-group-12-dark);
- background-color: var(--nt-group-12-dark-bg);
-}
-.nt-group-12 .period {
- color: var(--nt-group-12-main);
- background-color: var(--nt-group-12-main-bg);
-}
-
-.nt-group-13 .nt-plan-group-summary,
-.nt-group-13 .nt-timeline-dot {
- color: var(--nt-group-13-dark);
- background-color: var(--nt-group-13-dark-bg);
-}
-.nt-group-13 .period {
- color: var(--nt-group-13-main);
- background-color: var(--nt-group-13-main-bg);
-}
-
-.nt-group-14 .nt-plan-group-summary,
-.nt-group-14 .nt-timeline-dot {
- color: var(--nt-group-14-dark);
- background-color: var(--nt-group-14-dark-bg);
-}
-.nt-group-14 .period {
- color: var(--nt-group-14-main);
- background-color: var(--nt-group-14-main-bg);
-}
-
-.nt-group-15 .nt-plan-group-summary,
-.nt-group-15 .nt-timeline-dot {
- color: var(--nt-group-15-dark);
- background-color: var(--nt-group-15-dark-bg);
-}
-.nt-group-15 .period {
- color: var(--nt-group-15-main);
- background-color: var(--nt-group-15-main-bg);
-}
-
-.nt-group-16 .nt-plan-group-summary,
-.nt-group-16 .nt-timeline-dot {
- color: var(--nt-group-16-dark);
- background-color: var(--nt-group-16-dark-bg);
-}
-.nt-group-16 .period {
- color: var(--nt-group-16-main);
- background-color: var(--nt-group-16-main-bg);
-}
-
-.nt-group-17 .nt-plan-group-summary,
-.nt-group-17 .nt-timeline-dot {
- color: var(--nt-group-17-dark);
- background-color: var(--nt-group-17-dark-bg);
-}
-.nt-group-17 .period {
- color: var(--nt-group-17-main);
- background-color: var(--nt-group-17-main-bg);
-}
-
-.nt-group-18 .nt-plan-group-summary,
-.nt-group-18 .nt-timeline-dot {
- color: var(--nt-group-18-dark);
- background-color: var(--nt-group-18-dark-bg);
-}
-.nt-group-18 .period {
- color: var(--nt-group-18-main);
- background-color: var(--nt-group-18-main-bg);
-}
-
-/**
- * Extra CSS file for MkDocs and the neoteroi.timeline extension.
- *
- * https://github.com/Neoteroi/mkdocs-plugins
-**/
-.nt-error {
- border: 2px dashed darkred;
- padding: 0 1rem;
- background: #faf9ba;
- color: darkred;
-}
-
-.nt-timeline {
- margin-top: 30px;
-}
-.nt-timeline .nt-timeline-title {
- font-size: 1.1rem;
- margin-top: 0;
-}
-.nt-timeline .nt-timeline-sub-title {
- margin-top: 0;
-}
-.nt-timeline .nt-timeline-content {
- font-size: 0.8rem;
- border-bottom: 2px dashed #ccc;
- padding-bottom: 1.2rem;
-}
-.nt-timeline.horizontal .nt-timeline-items {
- flex-direction: row;
- overflow-x: scroll;
-}
-.nt-timeline.horizontal .nt-timeline-items > div {
- min-width: 400px;
- margin-right: 50px;
-}
-.nt-timeline.horizontal.reverse .nt-timeline-items {
- flex-direction: row-reverse;
-}
-.nt-timeline.horizontal.center .nt-timeline-before {
- background-image: linear-gradient(rgba(252, 70, 107, 0) 0%, rgb(252, 70, 107) 100%);
- background-repeat: no-repeat;
- background-size: 100% 2px;
- background-position: 0 center;
-}
-.nt-timeline.horizontal.center .nt-timeline-after {
- background-image: linear-gradient(180deg, rgb(252, 70, 107) 0%, rgba(252, 70, 107, 0) 100%);
- background-repeat: no-repeat;
- background-size: 100% 2px;
- background-position: 0 center;
-}
-.nt-timeline.horizontal.center .nt-timeline-items {
- background-image: radial-gradient(circle, rgb(63, 94, 251) 0%, rgb(252, 70, 107) 100%);
- background-repeat: no-repeat;
- background-size: 100% 2px;
- background-position: 0 center;
-}
-.nt-timeline.horizontal .nt-timeline-dot {
- left: 50%;
-}
-.nt-timeline.horizontal .nt-timeline-dot:not(.bigger) {
- top: calc(50% - 4px);
-}
-.nt-timeline.horizontal .nt-timeline-dot.bigger {
- top: calc(50% - 15px);
-}
-.nt-timeline.vertical .nt-timeline-items {
- flex-direction: column;
-}
-.nt-timeline.vertical.reverse .nt-timeline-items {
- flex-direction: column-reverse;
-}
-.nt-timeline.vertical.center .nt-timeline-before {
- background: linear-gradient(rgba(252, 70, 107, 0) 0%, rgb(252, 70, 107) 100%) no-repeat center/2px 100%;
-}
-.nt-timeline.vertical.center .nt-timeline-after {
- background: linear-gradient(rgb(252, 70, 107) 0%, rgba(252, 70, 107, 0) 100%) no-repeat center/2px 100%;
-}
-.nt-timeline.vertical.center .nt-timeline-items {
- background: radial-gradient(circle, rgb(63, 94, 251) 0%, rgb(252, 70, 107) 100%) no-repeat center/2px 100%;
-}
-.nt-timeline.vertical.center .nt-timeline-dot {
- left: calc(50% - 10px);
-}
-.nt-timeline.vertical.center .nt-timeline-dot:not(.bigger) {
- top: 10px;
-}
-.nt-timeline.vertical.center .nt-timeline-dot.bigger {
- left: calc(50% - 20px);
-}
-.nt-timeline.vertical.left {
- padding-left: 100px;
-}
-.nt-timeline.vertical.left .nt-timeline-item {
- padding-left: 70px;
-}
-.nt-timeline.vertical.left .nt-timeline-sub-title {
- left: -100px;
- width: 100px;
-}
-.nt-timeline.vertical.left .nt-timeline-before {
- background: linear-gradient(rgba(252, 70, 107, 0) 0%, rgb(252, 70, 107) 100%) no-repeat 30px/2px 100%;
-}
-.nt-timeline.vertical.left .nt-timeline-after {
- background: linear-gradient(rgb(252, 70, 107) 0%, rgba(252, 70, 107, 0) 100%) no-repeat 30px/2px 100%;
-}
-.nt-timeline.vertical.left .nt-timeline-items {
- background: radial-gradient(circle, rgb(63, 94, 251) 0%, rgb(252, 70, 107) 100%) no-repeat 30px/2px 100%;
-}
-.nt-timeline.vertical.left .nt-timeline-dot {
- left: 21px;
- top: 8px;
-}
-.nt-timeline.vertical.left .nt-timeline-dot.bigger {
- top: 0px;
- left: 10px;
-}
-.nt-timeline.vertical.right {
- padding-right: 100px;
-}
-.nt-timeline.vertical.right .nt-timeline-sub-title {
- right: -100px;
- text-align: left;
- width: 100px;
-}
-.nt-timeline.vertical.right .nt-timeline-item {
- padding-right: 70px;
-}
-.nt-timeline.vertical.right .nt-timeline-before {
- background: linear-gradient(rgba(252, 70, 107, 0) 0%, rgb(252, 70, 107) 100%) no-repeat calc(100% - 30px)/2px 100%;
-}
-.nt-timeline.vertical.right .nt-timeline-after {
- background: linear-gradient(rgb(252, 70, 107) 0%, rgba(252, 70, 107, 0) 100%) no-repeat calc(100% - 30px)/2px 100%;
-}
-.nt-timeline.vertical.right .nt-timeline-items {
- background: radial-gradient(circle, rgb(63, 94, 251) 0%, rgb(252, 70, 107) 100%) no-repeat calc(100% - 30px)/2px 100%;
-}
-.nt-timeline.vertical.right .nt-timeline-dot {
- right: 21px;
- top: 8px;
-}
-.nt-timeline.vertical.right .nt-timeline-dot.bigger {
- top: 10px;
- right: 10px;
-}
-
-.nt-timeline-items {
- display: flex;
- position: relative;
-}
-.nt-timeline-items > div {
- min-height: 100px;
- padding-top: 2px;
- padding-bottom: 20px;
-}
-
-.nt-timeline-before {
- content: "";
- height: 15px;
-}
-
-.nt-timeline-after {
- content: "";
- height: 60px;
- margin-bottom: 20px;
-}
-
-.nt-timeline-sub-title {
- position: absolute;
- width: 50%;
- top: 4px;
- font-size: 18px;
- color: var(--nt-color-50);
-}
-
-[data-md-color-scheme=slate] .nt-timeline-sub-title {
- color: var(--nt-color-51);
-}
-
-.nt-timeline-item {
- position: relative;
-}
-
-.nt-timeline.vertical.center:not(.alternate) .nt-timeline-item {
- padding-left: calc(50% + 40px);
-}
-.nt-timeline.vertical.center:not(.alternate) .nt-timeline-item .nt-timeline-sub-title {
- left: 0;
- padding-right: 40px;
- text-align: right;
-}
-.nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(odd) {
- padding-left: calc(50% + 40px);
-}
-.nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(odd) .nt-timeline-sub-title {
- left: 0;
- padding-right: 40px;
- text-align: right;
-}
-.nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(even) {
- text-align: right;
- padding-right: calc(50% + 40px);
-}
-.nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(even) .nt-timeline-sub-title {
- right: 0;
- padding-left: 40px;
- text-align: left;
-}
-
-.nt-timeline-dot {
- position: relative;
- width: 20px;
- height: 20px;
- border-radius: 100%;
- background-color: #fc5b5b;
- position: absolute;
- top: 0px;
- z-index: 2;
- display: flex;
- justify-content: center;
- align-items: center;
- box-shadow: 0 2px 1px -1px rgba(0, 0, 0, 0.2), 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 1px 3px 0 rgba(0, 0, 0, 0.12);
- border: 3px solid white;
-}
-.nt-timeline-dot:not(.bigger) .icon {
- font-size: 10px;
-}
-.nt-timeline-dot.bigger {
- width: 40px;
- height: 40px;
- padding: 3px;
-}
-.nt-timeline-dot .icon {
- color: white;
-}
-
-/* Fix for webkit (Chrome, Safari) */
-@supports not (-moz-appearance: none) {
- /*
- This fix is necessary, for some reason, to render the timeline properly
- inside `details` elements used by pymdownx. Firefox doesn't need this fix,
- it renders elements properly.
- */
- details .nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(odd) .nt-timeline-sub-title,
-details .nt-timeline.vertical.center:not(.alternate) .nt-timeline-item .nt-timeline-sub-title {
- left: -40px;
- }
- details .nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(even) .nt-timeline-sub-title {
- right: -40px;
- }
- details .nt-timeline.vertical.center .nt-timeline-dot {
- left: calc(50% - 12px);
- }
- details .nt-timeline-dot.bigger {
- font-size: 1rem !important;
- }
-}
-/* default colors */
-.nt-timeline-item:nth-child(0) .nt-timeline-dot {
- background-color: var(--nt-color-0);
-}
-
-.nt-timeline-item:nth-child(1) .nt-timeline-dot {
- background-color: var(--nt-color-1);
-}
-
-.nt-timeline-item:nth-child(2) .nt-timeline-dot {
- background-color: var(--nt-color-2);
-}
-
-.nt-timeline-item:nth-child(3) .nt-timeline-dot {
- background-color: var(--nt-color-3);
-}
-
-.nt-timeline-item:nth-child(4) .nt-timeline-dot {
- background-color: var(--nt-color-4);
-}
-
-.nt-timeline-item:nth-child(5) .nt-timeline-dot {
- background-color: var(--nt-color-5);
-}
-
-.nt-timeline-item:nth-child(6) .nt-timeline-dot {
- background-color: var(--nt-color-6);
-}
-
-.nt-timeline-item:nth-child(7) .nt-timeline-dot {
- background-color: var(--nt-color-7);
-}
-
-.nt-timeline-item:nth-child(8) .nt-timeline-dot {
- background-color: var(--nt-color-8);
-}
-
-.nt-timeline-item:nth-child(9) .nt-timeline-dot {
- background-color: var(--nt-color-9);
-}
-
-.nt-timeline-item:nth-child(10) .nt-timeline-dot {
- background-color: var(--nt-color-10);
-}
-
-.nt-timeline-item:nth-child(11) .nt-timeline-dot {
- background-color: var(--nt-color-11);
-}
-
-.nt-timeline-item:nth-child(12) .nt-timeline-dot {
- background-color: var(--nt-color-12);
-}
-
-.nt-timeline-item:nth-child(13) .nt-timeline-dot {
- background-color: var(--nt-color-13);
-}
-
-.nt-timeline-item:nth-child(14) .nt-timeline-dot {
- background-color: var(--nt-color-14);
-}
-
-.nt-timeline-item:nth-child(15) .nt-timeline-dot {
- background-color: var(--nt-color-15);
-}
-
-.nt-timeline-item:nth-child(16) .nt-timeline-dot {
- background-color: var(--nt-color-16);
-}
-
-.nt-timeline-item:nth-child(17) .nt-timeline-dot {
- background-color: var(--nt-color-17);
-}
-
-.nt-timeline-item:nth-child(18) .nt-timeline-dot {
- background-color: var(--nt-color-18);
-}
-
-.nt-timeline-item:nth-child(19) .nt-timeline-dot {
- background-color: var(--nt-color-19);
-}
-
-.nt-timeline-item:nth-child(20) .nt-timeline-dot {
- background-color: var(--nt-color-20);
-}
-
-/**
- * Extra CSS for the neoteroi.projects.gantt extension.
- *
- * https://github.com/Neoteroi/mkdocs-plugins
-**/
-:root {
- --nt-scrollbar-color: #2751b0;
- --nt-plan-actions-height: 24px;
- --nt-units-background: #ff9800;
- --nt-months-background: #2751b0;
- --nt-plan-vertical-line-color: #a3a3a3ad;
-}
-
-.nt-pastello {
- --nt-scrollbar-color: #9fb8f4;
- --nt-units-background: #f5dc82;
- --nt-months-background: #5b7fd1;
-}
-
-[data-md-color-scheme=slate] {
- --nt-units-background: #003773;
-}
-[data-md-color-scheme=slate] .nt-pastello {
- --nt-units-background: #3f4997;
-}
-
-.nt-plan-root {
- min-height: 200px;
- scrollbar-width: 20px;
- scrollbar-color: var(--nt-scrollbar-color);
- display: flex;
-}
-.nt-plan-root ::-webkit-scrollbar {
- width: 20px;
-}
-.nt-plan-root ::-webkit-scrollbar-track {
- box-shadow: inset 0 0 5px grey;
- border-radius: 10px;
-}
-.nt-plan-root ::-webkit-scrollbar-thumb {
- background: var(--nt-scrollbar-color);
- border-radius: 10px;
-}
-.nt-plan-root .nt-plan {
- flex: 80%;
-}
-.nt-plan-root.no-groups .nt-plan-periods {
- padding-left: 0;
-}
-.nt-plan-root.no-groups .nt-plan-group-summary {
- display: none;
-}
-.nt-plan-root .nt-timeline-dot.bigger {
- top: -10px;
-}
-.nt-plan-root .nt-timeline-dot.bigger[title] {
- cursor: help;
-}
-
-.nt-plan {
- white-space: nowrap;
- overflow-x: auto;
- display: flex;
-}
-.nt-plan .ug-timeline-dot {
- left: 368px;
- top: -8px;
- cursor: help;
-}
-
-.months {
- display: flex;
-}
-
-.month {
- flex: auto;
- display: inline-block;
- box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 1px -2px, rgba(0, 0, 0, 0.14) 0px 2px 2px 0px, rgba(0, 0, 0, 0.12) 0px 1px 5px 0px inset;
- background-color: var(--nt-months-background);
- color: white;
- text-transform: uppercase;
- font-family: Roboto, Helvetica, Arial, sans-serif;
- padding: 2px 5px;
- font-size: 12px;
- border: 1px solid #000;
- width: 150px;
- border-radius: 8px;
-}
-
-.nt-plan-group-activities {
- flex: auto;
- position: relative;
-}
-
-.nt-vline {
- border-left: 1px dashed var(--nt-plan-vertical-line-color);
- height: 100%;
- left: 0;
- position: absolute;
- margin-left: -0.5px;
- top: 0;
- -webkit-transition: all 0.5s linear !important;
- -moz-transition: all 0.5s linear !important;
- -ms-transition: all 0.5s linear !important;
- -o-transition: all 0.5s linear !important;
- transition: all 0.5s linear !important;
- z-index: -2;
-}
-
-.nt-plan-activity {
- display: flex;
- margin: 2px 0;
- background-color: rgba(187, 187, 187, 0.2509803922);
-}
-
-.actions {
- height: var(--nt-plan-actions-height);
-}
-
-.actions {
- position: relative;
-}
-
-.period {
- display: inline-block;
- height: var(--nt-plan-actions-height);
- width: 120px;
- position: absolute;
- left: 0px;
- background: #1da1f2;
- border-radius: 5px;
- transition: all 0.5s;
- cursor: help;
- -webkit-transition: width 1s ease-in-out;
- -moz-transition: width 1s ease-in-out;
- -o-transition: width 1s ease-in-out;
- transition: width 1s ease-in-out;
-}
-.period .nt-tooltip {
- display: none;
- top: 30px;
- position: relative;
- padding: 1rem;
- text-align: center;
- font-size: 12px;
-}
-.period:hover .nt-tooltip {
- display: inline-block;
-}
-
-.period-0 {
- left: 340px;
- visibility: visible;
- background-color: rgb(69, 97, 101);
-}
-
-.period-1 {
- left: 40px;
- visibility: visible;
- background-color: green;
-}
-
-.period-2 {
- left: 120px;
- visibility: visible;
- background-color: pink;
- width: 80px;
-}
-
-.period-3 {
- left: 190px;
- visibility: visible;
- background-color: darkred;
- width: 150px;
-}
-
-.weeks > span,
-.days > span {
- height: 25px;
-}
-
-.weeks > span {
- display: inline-block;
- margin: 0;
- padding: 0;
- font-weight: bold;
-}
-.weeks > span .week-text {
- font-size: 10px;
- position: absolute;
- display: inline-block;
- padding: 3px 4px;
-}
-
-.days {
- z-index: -2;
- position: relative;
-}
-
-.day-text {
- font-size: 10px;
- position: absolute;
- display: inline-block;
- padding: 3px 4px;
-}
-
-.period span {
- font-size: 12px;
- vertical-align: top;
- margin-left: 4px;
- color: black;
- background: rgba(255, 255, 255, 0.6588235294);
- border-radius: 6px;
- padding: 0 4px;
-}
-
-.weeks,
-.days {
- height: 20px;
- display: flex;
- box-sizing: content-box;
-}
-
-.months {
- display: flex;
-}
-
-.week,
-.day {
- height: 20px;
- position: relative;
- border: 1;
- flex: auto;
- border: 2px solid white;
- border-radius: 4px;
- background-color: var(--nt-units-background);
- cursor: help;
-}
-
-.years {
- display: flex;
-}
-
-.year {
- text-align: center;
- border-right: 1px solid var(--nt-plan-vertical-line-color);
- font-weight: bold;
-}
-.year:first-child {
- border-left: 1px solid var(--nt-plan-vertical-line-color);
-}
-.year:first-child:last-child {
- width: 100%;
-}
-
-.quarters {
- display: flex;
-}
-
-.quarter {
- width: 12.5%;
- text-align: center;
- border-right: 1px solid var(--nt-plan-vertical-line-color);
- font-weight: bold;
-}
-.quarter:first-child {
- border-left: 1px solid var(--nt-plan-vertical-line-color);
-}
-
-.nt-plan-group {
- margin: 20px 0;
- position: relative;
-}
-
-.nt-plan-group {
- display: flex;
-}
-
-.nt-plan-group-summary {
- background: #2751b0;
- width: 150px;
- white-space: normal;
- padding: 0.1rem 0.5rem;
- border-radius: 5px;
- color: #fff;
- z-index: 3;
-}
-.nt-plan-group-summary p {
- margin: 0;
- padding: 0;
- font-size: 0.6rem;
- color: #fff;
-}
-
-.nt-plan-group-summary,
-.month,
-.period,
-.week,
-.day,
-.nt-tooltip {
- border: 3px solid white;
- box-shadow: 0 2px 3px -1px rgba(0, 0, 0, 0.2), 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
-}
-
-.nt-plan-periods {
- padding-left: 150px;
-}
-
-.months {
- z-index: 2;
- position: relative;
-}
-
-.weeks {
- position: relative;
- top: -2px;
- z-index: 0;
-}
-
-.month,
-.quarter,
-.year,
-.week,
-.day,
-.nt-tooltip {
- font-family: Roboto, Helvetica, Arial, sans-serif;
- box-sizing: border-box;
-}
-
-.nt-cards.nt-grid {
- display: grid;
- grid-auto-columns: 1fr;
- gap: 0.5rem;
- max-width: 100vw;
- overflow-x: auto;
- padding: 1px;
-}
-.nt-cards.nt-grid.cols-1 {
- grid-template-columns: repeat(1, 1fr);
-}
-.nt-cards.nt-grid.cols-2 {
- grid-template-columns: repeat(2, 1fr);
-}
-.nt-cards.nt-grid.cols-3 {
- grid-template-columns: repeat(3, 1fr);
-}
-.nt-cards.nt-grid.cols-4 {
- grid-template-columns: repeat(4, 1fr);
-}
-.nt-cards.nt-grid.cols-5 {
- grid-template-columns: repeat(5, 1fr);
-}
-.nt-cards.nt-grid.cols-6 {
- grid-template-columns: repeat(6, 1fr);
-}
-
-@media only screen and (max-width: 400px) {
- .nt-cards.nt-grid {
- grid-template-columns: repeat(1, 1fr) !important;
- }
-}
-.nt-card {
- box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
-}
-.nt-card:hover {
- box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.24), 0 3px 1px -2px rgba(0, 0, 0, 0.3), 0 1px 5px 0 rgba(0, 0, 0, 0.22);
-}
-
-[data-md-color-scheme=slate] .nt-card {
- box-shadow: 0 2px 2px 0 rgba(4, 40, 33, 0.14), 0 3px 1px -2px rgba(40, 86, 94, 0.47), 0 1px 5px 0 rgba(139, 252, 255, 0.64);
-}
-[data-md-color-scheme=slate] .nt-card:hover {
- box-shadow: 0 2px 2px 0 rgba(0, 255, 206, 0.14), 0 3px 1px -2px rgba(33, 156, 177, 0.47), 0 1px 5px 0 rgba(96, 251, 255, 0.64);
-}
-
-.nt-card > a {
- color: var(--md-default-fg-color);
-}
-
-.nt-card > a > div {
- cursor: pointer;
-}
-
-.nt-card {
- padding: 5px;
- margin-bottom: 0.5rem;
-}
-
-.nt-card-title {
- font-size: 1rem;
- font-weight: bold;
- margin: 4px 0 8px 0;
- line-height: 22px;
-}
-
-.nt-card-content {
- padding: 0.4rem 0.8rem 0.8rem 0.8rem;
-}
-
-.nt-card-text {
- font-size: 14px;
- padding: 0;
- margin: 0;
-}
-
-.nt-card .nt-card-image {
- text-align: center;
- border-radius: 2px;
- background-position: center center;
- background-size: cover;
- background-repeat: no-repeat;
- min-height: 120px;
-}
-
-.nt-card .nt-card-image.tags img {
- margin-top: 12px;
-}
-
-.nt-card .nt-card-image img {
- height: 105px;
- margin-top: 5px;
-}
-
-.nt-card a:hover,
-.nt-card a:focus {
- color: var(--md-accent-fg-color);
-}
-
-.nt-card h2 {
- margin: 0;
-}
-
-/**
- * Extra CSS file recommended for MkDocs and neoteroi.spantable extension.
- *
- * https://github.com/Neoteroi/mkdocs-plugins
-**/
-.span-table-wrapper table {
- border-collapse: collapse;
- margin-bottom: 2rem;
- border-radius: 0.1rem;
-}
-
-.span-table td,
-.span-table th {
- padding: 0.2rem;
- background-color: var(--md-default-bg-color);
- font-size: 0.64rem;
- max-width: 100%;
- overflow: auto;
- touch-action: auto;
- border-top: 0.05rem solid var(--md-typeset-table-color);
- padding: 0.9375em 1.25em;
- vertical-align: top;
-}
-
-.span-table tr:first-child td {
- font-weight: 700;
- min-width: 5rem;
- padding: 0.9375em 1.25em;
- vertical-align: top;
-}
-
-.span-table td:first-child {
- border-left: 0.05rem solid var(--md-typeset-table-color);
-}
-
-.span-table td:last-child {
- border-right: 0.05rem solid var(--md-typeset-table-color);
-}
-
-.span-table tr:last-child {
- border-bottom: 0.05rem solid var(--md-typeset-table-color);
-}
-
-.span-table [colspan],
-.span-table [rowspan] {
- font-weight: bold;
- border: 0.05rem solid var(--md-typeset-table-color);
-}
-
-.span-table tr:not(:first-child):hover td:not([colspan]):not([rowspan]),
-.span-table td[colspan]:hover,
-.span-table td[rowspan]:hover {
- background-color: rgba(0, 0, 0, 0.035);
- box-shadow: 0 0.05rem 0 var(--md-default-bg-color) inset;
- transition: background-color 125ms;
-}
diff --git a/docs/docs/css/neoteroi-mkdocs.min.css b/docs/docs/css/neoteroi-mkdocs.min.css
deleted file mode 100644
index ea55c67..0000000
--- a/docs/docs/css/neoteroi-mkdocs.min.css
+++ /dev/null
@@ -1 +0,0 @@
-:root{--nt-color-0: #CD853F;--nt-color-1: #B22222;--nt-color-2: #000080;--nt-color-3: #4B0082;--nt-color-4: #3CB371;--nt-color-5: #D2B48C;--nt-color-6: #FF00FF;--nt-color-7: #98FB98;--nt-color-8: #FFEBCD;--nt-color-9: #2E8B57;--nt-color-10: #6A5ACD;--nt-color-11: #48D1CC;--nt-color-12: #FFA500;--nt-color-13: #F4A460;--nt-color-14: #A52A2A;--nt-color-15: #FFE4C4;--nt-color-16: #FF4500;--nt-color-17: #AFEEEE;--nt-color-18: #FA8072;--nt-color-19: #2F4F4F;--nt-color-20: #FFDAB9;--nt-color-21: #BC8F8F;--nt-color-22: #FFC0CB;--nt-color-23: #00FA9A;--nt-color-24: #F0FFF0;--nt-color-25: #FFFACD;--nt-color-26: #F5F5F5;--nt-color-27: #FF6347;--nt-color-28: #FFFFF0;--nt-color-29: #7FFFD4;--nt-color-30: #E9967A;--nt-color-31: #7B68EE;--nt-color-32: #FFF8DC;--nt-color-33: #0000CD;--nt-color-34: #D2691E;--nt-color-35: #708090;--nt-color-36: #5F9EA0;--nt-color-37: #008080;--nt-color-38: #008000;--nt-color-39: #FFE4E1;--nt-color-40: #FFFF00;--nt-color-41: #FFFAF0;--nt-color-42: #DCDCDC;--nt-color-43: #ADFF2F;--nt-color-44: #ADD8E6;--nt-color-45: #8B008B;--nt-color-46: #7FFF00;--nt-color-47: #800000;--nt-color-48: #20B2AA;--nt-color-49: #556B2F;--nt-color-50: #778899;--nt-color-51: #E6E6FA;--nt-color-52: #FFFAFA;--nt-color-53: #FF7F50;--nt-color-54: #FF0000;--nt-color-55: #F5DEB3;--nt-color-56: #008B8B;--nt-color-57: #66CDAA;--nt-color-58: #808000;--nt-color-59: #FAF0E6;--nt-color-60: #00BFFF;--nt-color-61: #C71585;--nt-color-62: #00FFFF;--nt-color-63: #8B4513;--nt-color-64: #F0F8FF;--nt-color-65: #FAEBD7;--nt-color-66: #8B0000;--nt-color-67: #4682B4;--nt-color-68: #F0E68C;--nt-color-69: #BDB76B;--nt-color-70: #A0522D;--nt-color-71: #FAFAD2;--nt-color-72: #FFD700;--nt-color-73: #DEB887;--nt-color-74: #E0FFFF;--nt-color-75: #8A2BE2;--nt-color-76: #32CD32;--nt-color-77: #87CEFA;--nt-color-78: #00CED1;--nt-color-79: #696969;--nt-color-80: #DDA0DD;--nt-color-81: #EE82EE;--nt-color-82: #FFB6C1;--nt-color-83: #8FBC8F;--nt-color-84: #D8BFD8;--nt-color-85: #9400D3;--nt-color-86: #A9A9A9;--nt-color-87: #FFFFE0;--nt-color-88: #FFF5EE;--nt-color-89: #FFF0F5;--nt-color-90: #FFDEAD;--nt-color-91: #800080;--nt-color-92: #B0E0E6;--nt-color-93: #9932CC;--nt-color-94: #DAA520;--nt-color-95: #F0FFFF;--nt-color-96: #40E0D0;--nt-color-97: #00FF7F;--nt-color-98: #006400;--nt-color-99: #808080;--nt-color-100: #87CEEB;--nt-color-101: #0000FF;--nt-color-102: #6495ED;--nt-color-103: #FDF5E6;--nt-color-104: #B8860B;--nt-color-105: #BA55D3;--nt-color-106: #C0C0C0;--nt-color-107: #000000;--nt-color-108: #F08080;--nt-color-109: #B0C4DE;--nt-color-110: #00008B;--nt-color-111: #6B8E23;--nt-color-112: #FFE4B5;--nt-color-113: #FFA07A;--nt-color-114: #9ACD32;--nt-color-115: #FFFFFF;--nt-color-116: #F5F5DC;--nt-color-117: #90EE90;--nt-color-118: #1E90FF;--nt-color-119: #7CFC00;--nt-color-120: #FF69B4;--nt-color-121: #F8F8FF;--nt-color-122: #F5FFFA;--nt-color-123: #00FF00;--nt-color-124: #D3D3D3;--nt-color-125: #DB7093;--nt-color-126: #DA70D6;--nt-color-127: #FF1493;--nt-color-128: #228B22;--nt-color-129: #FFEFD5;--nt-color-130: #4169E1;--nt-color-131: #191970;--nt-color-132: #9370DB;--nt-color-133: #483D8B;--nt-color-134: #FF8C00;--nt-color-135: #EEE8AA;--nt-color-136: #CD5C5C;--nt-color-137: #DC143C}:root{--nt-group-0-main: #000000;--nt-group-0-dark: #FFFFFF;--nt-group-0-light: #000000;--nt-group-0-main-bg: #F44336;--nt-group-0-dark-bg: #BA000D;--nt-group-0-light-bg: #FF7961;--nt-group-1-main: #000000;--nt-group-1-dark: #FFFFFF;--nt-group-1-light: #000000;--nt-group-1-main-bg: #E91E63;--nt-group-1-dark-bg: #B0003A;--nt-group-1-light-bg: #FF6090;--nt-group-2-main: #FFFFFF;--nt-group-2-dark: #FFFFFF;--nt-group-2-light: #000000;--nt-group-2-main-bg: #9C27B0;--nt-group-2-dark-bg: #6A0080;--nt-group-2-light-bg: #D05CE3;--nt-group-3-main: #FFFFFF;--nt-group-3-dark: #FFFFFF;--nt-group-3-light: #000000;--nt-group-3-main-bg: #673AB7;--nt-group-3-dark-bg: #320B86;--nt-group-3-light-bg: #9A67EA;--nt-group-4-main: #FFFFFF;--nt-group-4-dark: #FFFFFF;--nt-group-4-light: #000000;--nt-group-4-main-bg: #3F51B5;--nt-group-4-dark-bg: #002984;--nt-group-4-light-bg: #757DE8;--nt-group-5-main: #000000;--nt-group-5-dark: #FFFFFF;--nt-group-5-light: #000000;--nt-group-5-main-bg: #2196F3;--nt-group-5-dark-bg: #0069C0;--nt-group-5-light-bg: #6EC6FF;--nt-group-6-main: #000000;--nt-group-6-dark: #FFFFFF;--nt-group-6-light: #000000;--nt-group-6-main-bg: #03A9F4;--nt-group-6-dark-bg: #007AC1;--nt-group-6-light-bg: #67DAFF;--nt-group-7-main: #000000;--nt-group-7-dark: #000000;--nt-group-7-light: #000000;--nt-group-7-main-bg: #00BCD4;--nt-group-7-dark-bg: #008BA3;--nt-group-7-light-bg: #62EFFF;--nt-group-8-main: #000000;--nt-group-8-dark: #FFFFFF;--nt-group-8-light: #000000;--nt-group-8-main-bg: #009688;--nt-group-8-dark-bg: #00675B;--nt-group-8-light-bg: #52C7B8;--nt-group-9-main: #000000;--nt-group-9-dark: #FFFFFF;--nt-group-9-light: #000000;--nt-group-9-main-bg: #4CAF50;--nt-group-9-dark-bg: #087F23;--nt-group-9-light-bg: #80E27E;--nt-group-10-main: #000000;--nt-group-10-dark: #000000;--nt-group-10-light: #000000;--nt-group-10-main-bg: #8BC34A;--nt-group-10-dark-bg: #5A9216;--nt-group-10-light-bg: #BEF67A;--nt-group-11-main: #000000;--nt-group-11-dark: #000000;--nt-group-11-light: #000000;--nt-group-11-main-bg: #CDDC39;--nt-group-11-dark-bg: #99AA00;--nt-group-11-light-bg: #FFFF6E;--nt-group-12-main: #000000;--nt-group-12-dark: #000000;--nt-group-12-light: #000000;--nt-group-12-main-bg: #FFEB3B;--nt-group-12-dark-bg: #C8B900;--nt-group-12-light-bg: #FFFF72;--nt-group-13-main: #000000;--nt-group-13-dark: #000000;--nt-group-13-light: #000000;--nt-group-13-main-bg: #FFC107;--nt-group-13-dark-bg: #C79100;--nt-group-13-light-bg: #FFF350;--nt-group-14-main: #000000;--nt-group-14-dark: #000000;--nt-group-14-light: #000000;--nt-group-14-main-bg: #FF9800;--nt-group-14-dark-bg: #C66900;--nt-group-14-light-bg: #FFC947;--nt-group-15-main: #000000;--nt-group-15-dark: #FFFFFF;--nt-group-15-light: #000000;--nt-group-15-main-bg: #FF5722;--nt-group-15-dark-bg: #C41C00;--nt-group-15-light-bg: #FF8A50;--nt-group-16-main: #FFFFFF;--nt-group-16-dark: #FFFFFF;--nt-group-16-light: #000000;--nt-group-16-main-bg: #795548;--nt-group-16-dark-bg: #4B2C20;--nt-group-16-light-bg: #A98274;--nt-group-17-main: #000000;--nt-group-17-dark: #FFFFFF;--nt-group-17-light: #000000;--nt-group-17-main-bg: #9E9E9E;--nt-group-17-dark-bg: #707070;--nt-group-17-light-bg: #CFCFCF;--nt-group-18-main: #000000;--nt-group-18-dark: #FFFFFF;--nt-group-18-light: #000000;--nt-group-18-main-bg: #607D8B;--nt-group-18-dark-bg: #34515E;--nt-group-18-light-bg: #8EACBB}.nt-pastello{--nt-group-0-main: #000000;--nt-group-0-dark: #000000;--nt-group-0-light: #000000;--nt-group-0-main-bg: #EF9A9A;--nt-group-0-dark-bg: #BA6B6C;--nt-group-0-light-bg: #FFCCCB;--nt-group-1-main: #000000;--nt-group-1-dark: #000000;--nt-group-1-light: #000000;--nt-group-1-main-bg: #F48FB1;--nt-group-1-dark-bg: #BF5F82;--nt-group-1-light-bg: #FFC1E3;--nt-group-2-main: #000000;--nt-group-2-dark: #000000;--nt-group-2-light: #000000;--nt-group-2-main-bg: #CE93D8;--nt-group-2-dark-bg: #9C64A6;--nt-group-2-light-bg: #FFC4FF;--nt-group-3-main: #000000;--nt-group-3-dark: #000000;--nt-group-3-light: #000000;--nt-group-3-main-bg: #B39DDB;--nt-group-3-dark-bg: #836FA9;--nt-group-3-light-bg: #E6CEFF;--nt-group-4-main: #000000;--nt-group-4-dark: #000000;--nt-group-4-light: #000000;--nt-group-4-main-bg: #9FA8DA;--nt-group-4-dark-bg: #6F79A8;--nt-group-4-light-bg: #D1D9FF;--nt-group-5-main: #000000;--nt-group-5-dark: #000000;--nt-group-5-light: #000000;--nt-group-5-main-bg: #90CAF9;--nt-group-5-dark-bg: #5D99C6;--nt-group-5-light-bg: #C3FDFF;--nt-group-6-main: #000000;--nt-group-6-dark: #000000;--nt-group-6-light: #000000;--nt-group-6-main-bg: #81D4FA;--nt-group-6-dark-bg: #4BA3C7;--nt-group-6-light-bg: #B6FFFF;--nt-group-7-main: #000000;--nt-group-7-dark: #000000;--nt-group-7-light: #000000;--nt-group-7-main-bg: #80DEEA;--nt-group-7-dark-bg: #4BACB8;--nt-group-7-light-bg: #B4FFFF;--nt-group-8-main: #000000;--nt-group-8-dark: #000000;--nt-group-8-light: #000000;--nt-group-8-main-bg: #80CBC4;--nt-group-8-dark-bg: #4F9A94;--nt-group-8-light-bg: #B2FEF7;--nt-group-9-main: #000000;--nt-group-9-dark: #000000;--nt-group-9-light: #000000;--nt-group-9-main-bg: #A5D6A7;--nt-group-9-dark-bg: #75A478;--nt-group-9-light-bg: #D7FFD9;--nt-group-10-main: #000000;--nt-group-10-dark: #000000;--nt-group-10-light: #000000;--nt-group-10-main-bg: #C5E1A5;--nt-group-10-dark-bg: #94AF76;--nt-group-10-light-bg: #F8FFD7;--nt-group-11-main: #000000;--nt-group-11-dark: #000000;--nt-group-11-light: #000000;--nt-group-11-main-bg: #E6EE9C;--nt-group-11-dark-bg: #B3BC6D;--nt-group-11-light-bg: #FFFFCE;--nt-group-12-main: #000000;--nt-group-12-dark: #000000;--nt-group-12-light: #000000;--nt-group-12-main-bg: #FFF59D;--nt-group-12-dark-bg: #CBC26D;--nt-group-12-light-bg: #FFFFCF;--nt-group-13-main: #000000;--nt-group-13-dark: #000000;--nt-group-13-light: #000000;--nt-group-13-main-bg: #FFE082;--nt-group-13-dark-bg: #CAAE53;--nt-group-13-light-bg: #FFFFB3;--nt-group-14-main: #000000;--nt-group-14-dark: #000000;--nt-group-14-light: #000000;--nt-group-14-main-bg: #FFCC80;--nt-group-14-dark-bg: #CA9B52;--nt-group-14-light-bg: #FFFFB0;--nt-group-15-main: #000000;--nt-group-15-dark: #000000;--nt-group-15-light: #000000;--nt-group-15-main-bg: #FFAB91;--nt-group-15-dark-bg: #C97B63;--nt-group-15-light-bg: #FFDDC1;--nt-group-16-main: #000000;--nt-group-16-dark: #000000;--nt-group-16-light: #000000;--nt-group-16-main-bg: #BCAAA4;--nt-group-16-dark-bg: #8C7B75;--nt-group-16-light-bg: #EFDCD5;--nt-group-17-main: #000000;--nt-group-17-dark: #000000;--nt-group-17-light: #000000;--nt-group-17-main-bg: #EEEEEE;--nt-group-17-dark-bg: #BCBCBC;--nt-group-17-light-bg: #FFFFFF;--nt-group-18-main: #000000;--nt-group-18-dark: #000000;--nt-group-18-light: #000000;--nt-group-18-main-bg: #B0BEC5;--nt-group-18-dark-bg: #808E95;--nt-group-18-light-bg: #E2F1F8}.nt-group-0 .nt-plan-group-summary,.nt-group-0 .nt-timeline-dot{color:var(--nt-group-0-dark);background-color:var(--nt-group-0-dark-bg)}.nt-group-0 .period{color:var(--nt-group-0-main);background-color:var(--nt-group-0-main-bg)}.nt-group-1 .nt-plan-group-summary,.nt-group-1 .nt-timeline-dot{color:var(--nt-group-1-dark);background-color:var(--nt-group-1-dark-bg)}.nt-group-1 .period{color:var(--nt-group-1-main);background-color:var(--nt-group-1-main-bg)}.nt-group-2 .nt-plan-group-summary,.nt-group-2 .nt-timeline-dot{color:var(--nt-group-2-dark);background-color:var(--nt-group-2-dark-bg)}.nt-group-2 .period{color:var(--nt-group-2-main);background-color:var(--nt-group-2-main-bg)}.nt-group-3 .nt-plan-group-summary,.nt-group-3 .nt-timeline-dot{color:var(--nt-group-3-dark);background-color:var(--nt-group-3-dark-bg)}.nt-group-3 .period{color:var(--nt-group-3-main);background-color:var(--nt-group-3-main-bg)}.nt-group-4 .nt-plan-group-summary,.nt-group-4 .nt-timeline-dot{color:var(--nt-group-4-dark);background-color:var(--nt-group-4-dark-bg)}.nt-group-4 .period{color:var(--nt-group-4-main);background-color:var(--nt-group-4-main-bg)}.nt-group-5 .nt-plan-group-summary,.nt-group-5 .nt-timeline-dot{color:var(--nt-group-5-dark);background-color:var(--nt-group-5-dark-bg)}.nt-group-5 .period{color:var(--nt-group-5-main);background-color:var(--nt-group-5-main-bg)}.nt-group-6 .nt-plan-group-summary,.nt-group-6 .nt-timeline-dot{color:var(--nt-group-6-dark);background-color:var(--nt-group-6-dark-bg)}.nt-group-6 .period{color:var(--nt-group-6-main);background-color:var(--nt-group-6-main-bg)}.nt-group-7 .nt-plan-group-summary,.nt-group-7 .nt-timeline-dot{color:var(--nt-group-7-dark);background-color:var(--nt-group-7-dark-bg)}.nt-group-7 .period{color:var(--nt-group-7-main);background-color:var(--nt-group-7-main-bg)}.nt-group-8 .nt-plan-group-summary,.nt-group-8 .nt-timeline-dot{color:var(--nt-group-8-dark);background-color:var(--nt-group-8-dark-bg)}.nt-group-8 .period{color:var(--nt-group-8-main);background-color:var(--nt-group-8-main-bg)}.nt-group-9 .nt-plan-group-summary,.nt-group-9 .nt-timeline-dot{color:var(--nt-group-9-dark);background-color:var(--nt-group-9-dark-bg)}.nt-group-9 .period{color:var(--nt-group-9-main);background-color:var(--nt-group-9-main-bg)}.nt-group-10 .nt-plan-group-summary,.nt-group-10 .nt-timeline-dot{color:var(--nt-group-10-dark);background-color:var(--nt-group-10-dark-bg)}.nt-group-10 .period{color:var(--nt-group-10-main);background-color:var(--nt-group-10-main-bg)}.nt-group-11 .nt-plan-group-summary,.nt-group-11 .nt-timeline-dot{color:var(--nt-group-11-dark);background-color:var(--nt-group-11-dark-bg)}.nt-group-11 .period{color:var(--nt-group-11-main);background-color:var(--nt-group-11-main-bg)}.nt-group-12 .nt-plan-group-summary,.nt-group-12 .nt-timeline-dot{color:var(--nt-group-12-dark);background-color:var(--nt-group-12-dark-bg)}.nt-group-12 .period{color:var(--nt-group-12-main);background-color:var(--nt-group-12-main-bg)}.nt-group-13 .nt-plan-group-summary,.nt-group-13 .nt-timeline-dot{color:var(--nt-group-13-dark);background-color:var(--nt-group-13-dark-bg)}.nt-group-13 .period{color:var(--nt-group-13-main);background-color:var(--nt-group-13-main-bg)}.nt-group-14 .nt-plan-group-summary,.nt-group-14 .nt-timeline-dot{color:var(--nt-group-14-dark);background-color:var(--nt-group-14-dark-bg)}.nt-group-14 .period{color:var(--nt-group-14-main);background-color:var(--nt-group-14-main-bg)}.nt-group-15 .nt-plan-group-summary,.nt-group-15 .nt-timeline-dot{color:var(--nt-group-15-dark);background-color:var(--nt-group-15-dark-bg)}.nt-group-15 .period{color:var(--nt-group-15-main);background-color:var(--nt-group-15-main-bg)}.nt-group-16 .nt-plan-group-summary,.nt-group-16 .nt-timeline-dot{color:var(--nt-group-16-dark);background-color:var(--nt-group-16-dark-bg)}.nt-group-16 .period{color:var(--nt-group-16-main);background-color:var(--nt-group-16-main-bg)}.nt-group-17 .nt-plan-group-summary,.nt-group-17 .nt-timeline-dot{color:var(--nt-group-17-dark);background-color:var(--nt-group-17-dark-bg)}.nt-group-17 .period{color:var(--nt-group-17-main);background-color:var(--nt-group-17-main-bg)}.nt-group-18 .nt-plan-group-summary,.nt-group-18 .nt-timeline-dot{color:var(--nt-group-18-dark);background-color:var(--nt-group-18-dark-bg)}.nt-group-18 .period{color:var(--nt-group-18-main);background-color:var(--nt-group-18-main-bg)}.nt-error{border:2px dashed darkred;padding:0 1rem;background:#faf9ba;color:darkred}.nt-timeline{margin-top:30px}.nt-timeline .nt-timeline-title{font-size:1.1rem;margin-top:0}.nt-timeline .nt-timeline-sub-title{margin-top:0}.nt-timeline .nt-timeline-content{font-size:.8rem;border-bottom:2px dashed #ccc;padding-bottom:1.2rem}.nt-timeline.horizontal .nt-timeline-items{flex-direction:row;overflow-x:scroll}.nt-timeline.horizontal .nt-timeline-items>div{min-width:400px;margin-right:50px}.nt-timeline.horizontal.reverse .nt-timeline-items{flex-direction:row-reverse}.nt-timeline.horizontal.center .nt-timeline-before{background-image:linear-gradient(rgba(252, 70, 107, 0) 0%, rgb(252, 70, 107) 100%);background-repeat:no-repeat;background-size:100% 2px;background-position:0 center}.nt-timeline.horizontal.center .nt-timeline-after{background-image:linear-gradient(180deg, rgb(252, 70, 107) 0%, rgba(252, 70, 107, 0) 100%);background-repeat:no-repeat;background-size:100% 2px;background-position:0 center}.nt-timeline.horizontal.center .nt-timeline-items{background-image:radial-gradient(circle, rgb(63, 94, 251) 0%, rgb(252, 70, 107) 100%);background-repeat:no-repeat;background-size:100% 2px;background-position:0 center}.nt-timeline.horizontal .nt-timeline-dot{left:50%}.nt-timeline.horizontal .nt-timeline-dot:not(.bigger){top:calc(50% - 4px)}.nt-timeline.horizontal .nt-timeline-dot.bigger{top:calc(50% - 15px)}.nt-timeline.vertical .nt-timeline-items{flex-direction:column}.nt-timeline.vertical.reverse .nt-timeline-items{flex-direction:column-reverse}.nt-timeline.vertical.center .nt-timeline-before{background:linear-gradient(rgba(252, 70, 107, 0) 0%, rgb(252, 70, 107) 100%) no-repeat center/2px 100%}.nt-timeline.vertical.center .nt-timeline-after{background:linear-gradient(rgb(252, 70, 107) 0%, rgba(252, 70, 107, 0) 100%) no-repeat center/2px 100%}.nt-timeline.vertical.center .nt-timeline-items{background:radial-gradient(circle, rgb(63, 94, 251) 0%, rgb(252, 70, 107) 100%) no-repeat center/2px 100%}.nt-timeline.vertical.center .nt-timeline-dot{left:calc(50% - 10px)}.nt-timeline.vertical.center .nt-timeline-dot:not(.bigger){top:10px}.nt-timeline.vertical.center .nt-timeline-dot.bigger{left:calc(50% - 20px)}.nt-timeline.vertical.left{padding-left:100px}.nt-timeline.vertical.left .nt-timeline-item{padding-left:70px}.nt-timeline.vertical.left .nt-timeline-sub-title{left:-100px;width:100px}.nt-timeline.vertical.left .nt-timeline-before{background:linear-gradient(rgba(252, 70, 107, 0) 0%, rgb(252, 70, 107) 100%) no-repeat 30px/2px 100%}.nt-timeline.vertical.left .nt-timeline-after{background:linear-gradient(rgb(252, 70, 107) 0%, rgba(252, 70, 107, 0) 100%) no-repeat 30px/2px 100%}.nt-timeline.vertical.left .nt-timeline-items{background:radial-gradient(circle, rgb(63, 94, 251) 0%, rgb(252, 70, 107) 100%) no-repeat 30px/2px 100%}.nt-timeline.vertical.left .nt-timeline-dot{left:21px;top:8px}.nt-timeline.vertical.left .nt-timeline-dot.bigger{top:0px;left:10px}.nt-timeline.vertical.right{padding-right:100px}.nt-timeline.vertical.right .nt-timeline-sub-title{right:-100px;text-align:left;width:100px}.nt-timeline.vertical.right .nt-timeline-item{padding-right:70px}.nt-timeline.vertical.right .nt-timeline-before{background:linear-gradient(rgba(252, 70, 107, 0) 0%, rgb(252, 70, 107) 100%) no-repeat calc(100% - 30px)/2px 100%}.nt-timeline.vertical.right .nt-timeline-after{background:linear-gradient(rgb(252, 70, 107) 0%, rgba(252, 70, 107, 0) 100%) no-repeat calc(100% - 30px)/2px 100%}.nt-timeline.vertical.right .nt-timeline-items{background:radial-gradient(circle, rgb(63, 94, 251) 0%, rgb(252, 70, 107) 100%) no-repeat calc(100% - 30px)/2px 100%}.nt-timeline.vertical.right .nt-timeline-dot{right:21px;top:8px}.nt-timeline.vertical.right .nt-timeline-dot.bigger{top:10px;right:10px}.nt-timeline-items{display:flex;position:relative}.nt-timeline-items>div{min-height:100px;padding-top:2px;padding-bottom:20px}.nt-timeline-before{content:"";height:15px}.nt-timeline-after{content:"";height:60px;margin-bottom:20px}.nt-timeline-sub-title{position:absolute;width:50%;top:4px;font-size:18px;color:var(--nt-color-50)}[data-md-color-scheme=slate] .nt-timeline-sub-title{color:var(--nt-color-51)}.nt-timeline-item{position:relative}.nt-timeline.vertical.center:not(.alternate) .nt-timeline-item{padding-left:calc(50% + 40px)}.nt-timeline.vertical.center:not(.alternate) .nt-timeline-item .nt-timeline-sub-title{left:0;padding-right:40px;text-align:right}.nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(odd){padding-left:calc(50% + 40px)}.nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(odd) .nt-timeline-sub-title{left:0;padding-right:40px;text-align:right}.nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(even){text-align:right;padding-right:calc(50% + 40px)}.nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(even) .nt-timeline-sub-title{right:0;padding-left:40px;text-align:left}.nt-timeline-dot{position:relative;width:20px;height:20px;border-radius:100%;background-color:#fc5b5b;position:absolute;top:0px;z-index:2;display:flex;justify-content:center;align-items:center;box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);border:3px solid #fff}.nt-timeline-dot:not(.bigger) .icon{font-size:10px}.nt-timeline-dot.bigger{width:40px;height:40px;padding:3px}.nt-timeline-dot .icon{color:#fff}@supports not (-moz-appearance: none){details .nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(odd) .nt-timeline-sub-title,details .nt-timeline.vertical.center:not(.alternate) .nt-timeline-item .nt-timeline-sub-title{left:-40px}details .nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(even) .nt-timeline-sub-title{right:-40px}details .nt-timeline.vertical.center .nt-timeline-dot{left:calc(50% - 12px)}details .nt-timeline-dot.bigger{font-size:1rem !important}}.nt-timeline-item:nth-child(0) .nt-timeline-dot{background-color:var(--nt-color-0)}.nt-timeline-item:nth-child(1) .nt-timeline-dot{background-color:var(--nt-color-1)}.nt-timeline-item:nth-child(2) .nt-timeline-dot{background-color:var(--nt-color-2)}.nt-timeline-item:nth-child(3) .nt-timeline-dot{background-color:var(--nt-color-3)}.nt-timeline-item:nth-child(4) .nt-timeline-dot{background-color:var(--nt-color-4)}.nt-timeline-item:nth-child(5) .nt-timeline-dot{background-color:var(--nt-color-5)}.nt-timeline-item:nth-child(6) .nt-timeline-dot{background-color:var(--nt-color-6)}.nt-timeline-item:nth-child(7) .nt-timeline-dot{background-color:var(--nt-color-7)}.nt-timeline-item:nth-child(8) .nt-timeline-dot{background-color:var(--nt-color-8)}.nt-timeline-item:nth-child(9) .nt-timeline-dot{background-color:var(--nt-color-9)}.nt-timeline-item:nth-child(10) .nt-timeline-dot{background-color:var(--nt-color-10)}.nt-timeline-item:nth-child(11) .nt-timeline-dot{background-color:var(--nt-color-11)}.nt-timeline-item:nth-child(12) .nt-timeline-dot{background-color:var(--nt-color-12)}.nt-timeline-item:nth-child(13) .nt-timeline-dot{background-color:var(--nt-color-13)}.nt-timeline-item:nth-child(14) .nt-timeline-dot{background-color:var(--nt-color-14)}.nt-timeline-item:nth-child(15) .nt-timeline-dot{background-color:var(--nt-color-15)}.nt-timeline-item:nth-child(16) .nt-timeline-dot{background-color:var(--nt-color-16)}.nt-timeline-item:nth-child(17) .nt-timeline-dot{background-color:var(--nt-color-17)}.nt-timeline-item:nth-child(18) .nt-timeline-dot{background-color:var(--nt-color-18)}.nt-timeline-item:nth-child(19) .nt-timeline-dot{background-color:var(--nt-color-19)}.nt-timeline-item:nth-child(20) .nt-timeline-dot{background-color:var(--nt-color-20)}:root{--nt-scrollbar-color: #2751b0;--nt-plan-actions-height: 24px;--nt-units-background: #ff9800;--nt-months-background: #2751b0;--nt-plan-vertical-line-color: #a3a3a3ad}.nt-pastello{--nt-scrollbar-color: #9fb8f4;--nt-units-background: #f5dc82;--nt-months-background: #5b7fd1}[data-md-color-scheme=slate]{--nt-units-background: #003773}[data-md-color-scheme=slate] .nt-pastello{--nt-units-background: #3f4997}.nt-plan-root{min-height:200px;scrollbar-width:20px;scrollbar-color:var(--nt-scrollbar-color);display:flex}.nt-plan-root ::-webkit-scrollbar{width:20px}.nt-plan-root ::-webkit-scrollbar-track{box-shadow:inset 0 0 5px gray;border-radius:10px}.nt-plan-root ::-webkit-scrollbar-thumb{background:var(--nt-scrollbar-color);border-radius:10px}.nt-plan-root .nt-plan{flex:80%}.nt-plan-root.no-groups .nt-plan-periods{padding-left:0}.nt-plan-root.no-groups .nt-plan-group-summary{display:none}.nt-plan-root .nt-timeline-dot.bigger{top:-10px}.nt-plan-root .nt-timeline-dot.bigger[title]{cursor:help}.nt-plan{white-space:nowrap;overflow-x:auto;display:flex}.nt-plan .ug-timeline-dot{left:368px;top:-8px;cursor:help}.months{display:flex}.month{flex:auto;display:inline-block;box-shadow:rgba(0,0,0,.2) 0px 3px 1px -2px,rgba(0,0,0,.14) 0px 2px 2px 0px,rgba(0,0,0,.12) 0px 1px 5px 0px inset;background-color:var(--nt-months-background);color:#fff;text-transform:uppercase;font-family:Roboto,Helvetica,Arial,sans-serif;padding:2px 5px;font-size:12px;border:1px solid #000;width:150px;border-radius:8px}.nt-plan-group-activities{flex:auto;position:relative}.nt-vline{border-left:1px dashed var(--nt-plan-vertical-line-color);height:100%;left:0;position:absolute;margin-left:-0.5px;top:0;-webkit-transition:all .5s linear !important;-moz-transition:all .5s linear !important;-ms-transition:all .5s linear !important;-o-transition:all .5s linear !important;transition:all .5s linear !important;z-index:-2}.nt-plan-activity{display:flex;margin:2px 0;background-color:rgba(187,187,187,.2509803922)}.actions{height:var(--nt-plan-actions-height)}.actions{position:relative}.period{display:inline-block;height:var(--nt-plan-actions-height);width:120px;position:absolute;left:0px;background:#1da1f2;border-radius:5px;transition:all .5s;cursor:help;-webkit-transition:width 1s ease-in-out;-moz-transition:width 1s ease-in-out;-o-transition:width 1s ease-in-out;transition:width 1s ease-in-out}.period .nt-tooltip{display:none;top:30px;position:relative;padding:1rem;text-align:center;font-size:12px}.period:hover .nt-tooltip{display:inline-block}.period-0{left:340px;visibility:visible;background-color:#456165}.period-1{left:40px;visibility:visible;background-color:green}.period-2{left:120px;visibility:visible;background-color:pink;width:80px}.period-3{left:190px;visibility:visible;background-color:darkred;width:150px}.weeks>span,.days>span{height:25px}.weeks>span{display:inline-block;margin:0;padding:0;font-weight:bold}.weeks>span .week-text{font-size:10px;position:absolute;display:inline-block;padding:3px 4px}.days{z-index:-2;position:relative}.day-text{font-size:10px;position:absolute;display:inline-block;padding:3px 4px}.period span{font-size:12px;vertical-align:top;margin-left:4px;color:#000;background:rgba(255,255,255,.6588235294);border-radius:6px;padding:0 4px}.weeks,.days{height:20px;display:flex;box-sizing:content-box}.months{display:flex}.week,.day{height:20px;position:relative;border:1;flex:auto;border:2px solid #fff;border-radius:4px;background-color:var(--nt-units-background);cursor:help}.years{display:flex}.year{text-align:center;border-right:1px solid var(--nt-plan-vertical-line-color);font-weight:bold}.year:first-child{border-left:1px solid var(--nt-plan-vertical-line-color)}.year:first-child:last-child{width:100%}.quarters{display:flex}.quarter{width:12.5%;text-align:center;border-right:1px solid var(--nt-plan-vertical-line-color);font-weight:bold}.quarter:first-child{border-left:1px solid var(--nt-plan-vertical-line-color)}.nt-plan-group{margin:20px 0;position:relative}.nt-plan-group{display:flex}.nt-plan-group-summary{background:#2751b0;width:150px;white-space:normal;padding:.1rem .5rem;border-radius:5px;color:#fff;z-index:3}.nt-plan-group-summary p{margin:0;padding:0;font-size:.6rem;color:#fff}.nt-plan-group-summary,.month,.period,.week,.day,.nt-tooltip{border:3px solid #fff;box-shadow:0 2px 3px -1px rgba(0,0,0,.2),0 3px 3px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.nt-plan-periods{padding-left:150px}.months{z-index:2;position:relative}.weeks{position:relative;top:-2px;z-index:0}.month,.quarter,.year,.week,.day,.nt-tooltip{font-family:Roboto,Helvetica,Arial,sans-serif;box-sizing:border-box}.nt-cards.nt-grid{display:grid;grid-auto-columns:1fr;gap:.5rem;max-width:100vw;overflow-x:auto;padding:1px}.nt-cards.nt-grid.cols-1{grid-template-columns:repeat(1, 1fr)}.nt-cards.nt-grid.cols-2{grid-template-columns:repeat(2, 1fr)}.nt-cards.nt-grid.cols-3{grid-template-columns:repeat(3, 1fr)}.nt-cards.nt-grid.cols-4{grid-template-columns:repeat(4, 1fr)}.nt-cards.nt-grid.cols-5{grid-template-columns:repeat(5, 1fr)}.nt-cards.nt-grid.cols-6{grid-template-columns:repeat(6, 1fr)}@media only screen and (max-width: 400px){.nt-cards.nt-grid{grid-template-columns:repeat(1, 1fr) !important}}.nt-card{box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12)}.nt-card:hover{box-shadow:0 2px 2px 0 rgba(0,0,0,.24),0 3px 1px -2px rgba(0,0,0,.3),0 1px 5px 0 rgba(0,0,0,.22)}[data-md-color-scheme=slate] .nt-card{box-shadow:0 2px 2px 0 rgba(4,40,33,.14),0 3px 1px -2px rgba(40,86,94,.47),0 1px 5px 0 rgba(139,252,255,.64)}[data-md-color-scheme=slate] .nt-card:hover{box-shadow:0 2px 2px 0 rgba(0,255,206,.14),0 3px 1px -2px rgba(33,156,177,.47),0 1px 5px 0 rgba(96,251,255,.64)}.nt-card>a{color:var(--md-default-fg-color)}.nt-card>a>div{cursor:pointer}.nt-card{padding:5px;margin-bottom:.5rem}.nt-card-title{font-size:1rem;font-weight:bold;margin:4px 0 8px 0;line-height:22px}.nt-card-content{padding:.4rem .8rem .8rem .8rem}.nt-card-text{font-size:14px;padding:0;margin:0}.nt-card .nt-card-image{text-align:center;border-radius:2px;background-position:center center;background-size:cover;background-repeat:no-repeat;min-height:120px}.nt-card .nt-card-image.tags img{margin-top:12px}.nt-card .nt-card-image img{height:105px;margin-top:5px}.nt-card a:hover,.nt-card a:focus{color:var(--md-accent-fg-color)}.nt-card h2{margin:0}.span-table-wrapper table{border-collapse:collapse;margin-bottom:2rem;border-radius:.1rem}.span-table td,.span-table th{padding:.2rem;background-color:var(--md-default-bg-color);font-size:.64rem;max-width:100%;overflow:auto;touch-action:auto;border-top:.05rem solid var(--md-typeset-table-color);padding:.9375em 1.25em;vertical-align:top}.span-table tr:first-child td{font-weight:700;min-width:5rem;padding:.9375em 1.25em;vertical-align:top}.span-table td:first-child{border-left:.05rem solid var(--md-typeset-table-color)}.span-table td:last-child{border-right:.05rem solid var(--md-typeset-table-color)}.span-table tr:last-child{border-bottom:.05rem solid var(--md-typeset-table-color)}.span-table [colspan],.span-table [rowspan]{font-weight:bold;border:.05rem solid var(--md-typeset-table-color)}.span-table tr:not(:first-child):hover td:not([colspan]):not([rowspan]),.span-table td[colspan]:hover,.span-table td[rowspan]:hover{background-color:rgba(0,0,0,.035);box-shadow:0 .05rem 0 var(--md-default-bg-color) inset;transition:background-color 125ms}
diff --git a/docs/docs/css/neoteroi-spantable.css b/docs/docs/css/neoteroi-spantable.css
deleted file mode 100644
index be069a8..0000000
--- a/docs/docs/css/neoteroi-spantable.css
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * Extra CSS file recommended for MkDocs and neoteroi.spantable extension.
- *
- * https://github.com/Neoteroi/mkdocs-plugins
-**/
-.span-table-wrapper table {
- border-collapse: collapse;
- margin-bottom: 2rem;
- border-radius: 0.1rem;
-}
-
-.span-table td,
-.span-table th {
- padding: 0.2rem;
- background-color: var(--md-default-bg-color);
- font-size: 0.64rem;
- max-width: 100%;
- overflow: auto;
- touch-action: auto;
- border-top: 0.05rem solid var(--md-typeset-table-color);
- padding: 0.9375em 1.25em;
- vertical-align: top;
-}
-
-.span-table tr:first-child td {
- font-weight: 700;
- min-width: 5rem;
- padding: 0.9375em 1.25em;
- vertical-align: top;
-}
-
-.span-table td:first-child {
- border-left: 0.05rem solid var(--md-typeset-table-color);
-}
-
-.span-table td:last-child {
- border-right: 0.05rem solid var(--md-typeset-table-color);
-}
-
-.span-table tr:last-child {
- border-bottom: 0.05rem solid var(--md-typeset-table-color);
-}
-
-.span-table [colspan],
-.span-table [rowspan] {
- font-weight: bold;
- border: 0.05rem solid var(--md-typeset-table-color);
-}
-
-.span-table tr:not(:first-child):hover td:not([colspan]):not([rowspan]),
-.span-table td[colspan]:hover,
-.span-table td[rowspan]:hover {
- background-color: rgba(0, 0, 0, 0.035);
- box-shadow: 0 0.05rem 0 var(--md-default-bg-color) inset;
- transition: background-color 125ms;
-}
diff --git a/docs/docs/css/neoteroi-timeline.css b/docs/docs/css/neoteroi-timeline.css
deleted file mode 100644
index 6822089..0000000
--- a/docs/docs/css/neoteroi-timeline.css
+++ /dev/null
@@ -1,340 +0,0 @@
-/**
- * Extra CSS file for MkDocs and the neoteroi.timeline extension.
- *
- * https://github.com/Neoteroi/mkdocs-plugins
-**/
-.nt-error {
- border: 2px dashed darkred;
- padding: 0 1rem;
- background: #faf9ba;
- color: darkred;
-}
-
-.nt-timeline {
- margin-top: 30px;
-}
-.nt-timeline .nt-timeline-title {
- font-size: 1.1rem;
- margin-top: 0;
-}
-.nt-timeline .nt-timeline-sub-title {
- margin-top: 0;
-}
-.nt-timeline .nt-timeline-content {
- font-size: 0.8rem;
- border-bottom: 2px dashed #ccc;
- padding-bottom: 1.2rem;
-}
-.nt-timeline.horizontal .nt-timeline-items {
- flex-direction: row;
- overflow-x: scroll;
-}
-.nt-timeline.horizontal .nt-timeline-items > div {
- min-width: 400px;
- margin-right: 50px;
-}
-.nt-timeline.horizontal.reverse .nt-timeline-items {
- flex-direction: row-reverse;
-}
-.nt-timeline.horizontal.center .nt-timeline-before {
- background-image: linear-gradient(rgba(252, 70, 107, 0) 0%, rgb(252, 70, 107) 100%);
- background-repeat: no-repeat;
- background-size: 100% 2px;
- background-position: 0 center;
-}
-.nt-timeline.horizontal.center .nt-timeline-after {
- background-image: linear-gradient(180deg, rgb(252, 70, 107) 0%, rgba(252, 70, 107, 0) 100%);
- background-repeat: no-repeat;
- background-size: 100% 2px;
- background-position: 0 center;
-}
-.nt-timeline.horizontal.center .nt-timeline-items {
- background-image: radial-gradient(circle, rgb(63, 94, 251) 0%, rgb(252, 70, 107) 100%);
- background-repeat: no-repeat;
- background-size: 100% 2px;
- background-position: 0 center;
-}
-.nt-timeline.horizontal .nt-timeline-dot {
- left: 50%;
-}
-.nt-timeline.horizontal .nt-timeline-dot:not(.bigger) {
- top: calc(50% - 4px);
-}
-.nt-timeline.horizontal .nt-timeline-dot.bigger {
- top: calc(50% - 15px);
-}
-.nt-timeline.vertical .nt-timeline-items {
- flex-direction: column;
-}
-.nt-timeline.vertical.reverse .nt-timeline-items {
- flex-direction: column-reverse;
-}
-.nt-timeline.vertical.center .nt-timeline-before {
- background: linear-gradient(rgba(252, 70, 107, 0) 0%, rgb(252, 70, 107) 100%) no-repeat center/2px 100%;
-}
-.nt-timeline.vertical.center .nt-timeline-after {
- background: linear-gradient(rgb(252, 70, 107) 0%, rgba(252, 70, 107, 0) 100%) no-repeat center/2px 100%;
-}
-.nt-timeline.vertical.center .nt-timeline-items {
- background: radial-gradient(circle, rgb(63, 94, 251) 0%, rgb(252, 70, 107) 100%) no-repeat center/2px 100%;
-}
-.nt-timeline.vertical.center .nt-timeline-dot {
- left: calc(50% - 10px);
-}
-.nt-timeline.vertical.center .nt-timeline-dot:not(.bigger) {
- top: 10px;
-}
-.nt-timeline.vertical.center .nt-timeline-dot.bigger {
- left: calc(50% - 20px);
-}
-.nt-timeline.vertical.left {
- padding-left: 100px;
-}
-.nt-timeline.vertical.left .nt-timeline-item {
- padding-left: 70px;
-}
-.nt-timeline.vertical.left .nt-timeline-sub-title {
- left: -100px;
- width: 100px;
-}
-.nt-timeline.vertical.left .nt-timeline-before {
- background: linear-gradient(rgba(252, 70, 107, 0) 0%, rgb(252, 70, 107) 100%) no-repeat 30px/2px 100%;
-}
-.nt-timeline.vertical.left .nt-timeline-after {
- background: linear-gradient(rgb(252, 70, 107) 0%, rgba(252, 70, 107, 0) 100%) no-repeat 30px/2px 100%;
-}
-.nt-timeline.vertical.left .nt-timeline-items {
- background: radial-gradient(circle, rgb(63, 94, 251) 0%, rgb(252, 70, 107) 100%) no-repeat 30px/2px 100%;
-}
-.nt-timeline.vertical.left .nt-timeline-dot {
- left: 21px;
- top: 8px;
-}
-.nt-timeline.vertical.left .nt-timeline-dot.bigger {
- top: 0px;
- left: 10px;
-}
-.nt-timeline.vertical.right {
- padding-right: 100px;
-}
-.nt-timeline.vertical.right .nt-timeline-sub-title {
- right: -100px;
- text-align: left;
- width: 100px;
-}
-.nt-timeline.vertical.right .nt-timeline-item {
- padding-right: 70px;
-}
-.nt-timeline.vertical.right .nt-timeline-before {
- background: linear-gradient(rgba(252, 70, 107, 0) 0%, rgb(252, 70, 107) 100%) no-repeat calc(100% - 30px)/2px 100%;
-}
-.nt-timeline.vertical.right .nt-timeline-after {
- background: linear-gradient(rgb(252, 70, 107) 0%, rgba(252, 70, 107, 0) 100%) no-repeat calc(100% - 30px)/2px 100%;
-}
-.nt-timeline.vertical.right .nt-timeline-items {
- background: radial-gradient(circle, rgb(63, 94, 251) 0%, rgb(252, 70, 107) 100%) no-repeat calc(100% - 30px)/2px 100%;
-}
-.nt-timeline.vertical.right .nt-timeline-dot {
- right: 21px;
- top: 8px;
-}
-.nt-timeline.vertical.right .nt-timeline-dot.bigger {
- top: 10px;
- right: 10px;
-}
-
-.nt-timeline-items {
- display: flex;
- position: relative;
-}
-.nt-timeline-items > div {
- min-height: 100px;
- padding-top: 2px;
- padding-bottom: 20px;
-}
-
-.nt-timeline-before {
- content: "";
- height: 15px;
-}
-
-.nt-timeline-after {
- content: "";
- height: 60px;
- margin-bottom: 20px;
-}
-
-.nt-timeline-sub-title {
- position: absolute;
- width: 50%;
- top: 4px;
- font-size: 18px;
- color: var(--nt-color-50);
-}
-
-[data-md-color-scheme=slate] .nt-timeline-sub-title {
- color: var(--nt-color-51);
-}
-
-.nt-timeline-item {
- position: relative;
-}
-
-.nt-timeline.vertical.center:not(.alternate) .nt-timeline-item {
- padding-left: calc(50% + 40px);
-}
-.nt-timeline.vertical.center:not(.alternate) .nt-timeline-item .nt-timeline-sub-title {
- left: 0;
- padding-right: 40px;
- text-align: right;
-}
-.nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(odd) {
- padding-left: calc(50% + 40px);
-}
-.nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(odd) .nt-timeline-sub-title {
- left: 0;
- padding-right: 40px;
- text-align: right;
-}
-.nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(even) {
- text-align: right;
- padding-right: calc(50% + 40px);
-}
-.nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(even) .nt-timeline-sub-title {
- right: 0;
- padding-left: 40px;
- text-align: left;
-}
-
-.nt-timeline-dot {
- position: relative;
- width: 20px;
- height: 20px;
- border-radius: 100%;
- background-color: #fc5b5b;
- position: absolute;
- top: 0px;
- z-index: 2;
- display: flex;
- justify-content: center;
- align-items: center;
- box-shadow: 0 2px 1px -1px rgba(0, 0, 0, 0.2), 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 1px 3px 0 rgba(0, 0, 0, 0.12);
- border: 3px solid white;
-}
-.nt-timeline-dot:not(.bigger) .icon {
- font-size: 10px;
-}
-.nt-timeline-dot.bigger {
- width: 40px;
- height: 40px;
- padding: 3px;
-}
-.nt-timeline-dot .icon {
- color: white;
-}
-
-/* Fix for webkit (Chrome, Safari) */
-@supports not (-moz-appearance: none) {
- /*
- This fix is necessary, for some reason, to render the timeline properly
- inside `details` elements used by pymdownx. Firefox doesn't need this fix,
- it renders elements properly.
- */
- details .nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(odd) .nt-timeline-sub-title,
-details .nt-timeline.vertical.center:not(.alternate) .nt-timeline-item .nt-timeline-sub-title {
- left: -40px;
- }
- details .nt-timeline.vertical.center.alternate .nt-timeline-item:nth-child(even) .nt-timeline-sub-title {
- right: -40px;
- }
- details .nt-timeline.vertical.center .nt-timeline-dot {
- left: calc(50% - 12px);
- }
- details .nt-timeline-dot.bigger {
- font-size: 1rem !important;
- }
-}
-/* default colors */
-.nt-timeline-item:nth-child(0) .nt-timeline-dot {
- background-color: var(--nt-color-0);
-}
-
-.nt-timeline-item:nth-child(1) .nt-timeline-dot {
- background-color: var(--nt-color-1);
-}
-
-.nt-timeline-item:nth-child(2) .nt-timeline-dot {
- background-color: var(--nt-color-2);
-}
-
-.nt-timeline-item:nth-child(3) .nt-timeline-dot {
- background-color: var(--nt-color-3);
-}
-
-.nt-timeline-item:nth-child(4) .nt-timeline-dot {
- background-color: var(--nt-color-4);
-}
-
-.nt-timeline-item:nth-child(5) .nt-timeline-dot {
- background-color: var(--nt-color-5);
-}
-
-.nt-timeline-item:nth-child(6) .nt-timeline-dot {
- background-color: var(--nt-color-6);
-}
-
-.nt-timeline-item:nth-child(7) .nt-timeline-dot {
- background-color: var(--nt-color-7);
-}
-
-.nt-timeline-item:nth-child(8) .nt-timeline-dot {
- background-color: var(--nt-color-8);
-}
-
-.nt-timeline-item:nth-child(9) .nt-timeline-dot {
- background-color: var(--nt-color-9);
-}
-
-.nt-timeline-item:nth-child(10) .nt-timeline-dot {
- background-color: var(--nt-color-10);
-}
-
-.nt-timeline-item:nth-child(11) .nt-timeline-dot {
- background-color: var(--nt-color-11);
-}
-
-.nt-timeline-item:nth-child(12) .nt-timeline-dot {
- background-color: var(--nt-color-12);
-}
-
-.nt-timeline-item:nth-child(13) .nt-timeline-dot {
- background-color: var(--nt-color-13);
-}
-
-.nt-timeline-item:nth-child(14) .nt-timeline-dot {
- background-color: var(--nt-color-14);
-}
-
-.nt-timeline-item:nth-child(15) .nt-timeline-dot {
- background-color: var(--nt-color-15);
-}
-
-.nt-timeline-item:nth-child(16) .nt-timeline-dot {
- background-color: var(--nt-color-16);
-}
-
-.nt-timeline-item:nth-child(17) .nt-timeline-dot {
- background-color: var(--nt-color-17);
-}
-
-.nt-timeline-item:nth-child(18) .nt-timeline-dot {
- background-color: var(--nt-color-18);
-}
-
-.nt-timeline-item:nth-child(19) .nt-timeline-dot {
- background-color: var(--nt-color-19);
-}
-
-.nt-timeline-item:nth-child(20) .nt-timeline-dot {
- background-color: var(--nt-color-20);
-}
diff --git a/docs/docs/index.md b/docs/docs/index.md
deleted file mode 100644
index daba2fd..0000000
--- a/docs/docs/index.md
+++ /dev/null
@@ -1,43 +0,0 @@
----
-hide:
- - path
- - navigation
- - toc
----
-
-<div align="center">
-
- <h1><font color="#002fa7">P</font>si CLI</h1>
-
- <q>Psi 是一个嵌入式编程语言,同时也是一个CLI语言,旨在通过人机交互实现指定的功能。该语言的设计目标是简单、易用、易学,同时也是一个多范式语言,支持命令式、面向对象、面向过程等多种编程范式。</q><br />
- <b>它是骰主以及插件或模型作者入门水系的关键。</b>
-
-</div>
-
-::cards:: cols=2
-
-- title: 词法分析器模块
- content: |
- 词法分析器模块负责将源代码转换为一系列标记(tokens)。它识别语言的基本元素,如标识符、关键字、运算符和字面量。
- <!-- `['OPERATOR', 'IDENTIFIER', 'SEPARATOR', 'SEPARATOR', 'CONTROL', 'IDENTIFIER', 'OPERATOR', 'INTEGER', 'SEPARATOR', 'IDENTIFIER', 'SEPARATOR', 'IDENTIFIER', 'OPERATOR', 'IDENTIFIER', 'SEPARATOR', 'IDENTIFIER', 'SEPARATOR', 'EOF']` -->
-- title: 语法分析器模块
- content: |
- 语法分析器模块接收词法分析器模块生成的标记序列,并将其转换为抽象语法树(AST)。AST是一种类似树状的数据结构,以更接近编程语言的语法结构的方式表示源代码。
-- title: 内置类型模块
- content: |
- 此模块定义了Psi语言的内置类型,如列表和字典。它提供了用于创建和操作这些类型实例的函数。
-- title: 错误处理模块
- content: |
- 此模块提供了在运行时捕获和处理错误的机制。它定义了一组异常类和用于抛出和捕获这些异常的函数。
-- title: 执行环境模块
- content: |
- 此模块定义了Psi语言的执行环境,包括变量的作用域和生命周期。它提供了用于在执行环境中定义和查找变量的函数。
-- title: 解释器模块
- content: |
- 此模块的主要任务是遍历AST并在执行环境中执行相应的操作。
-
-::/cards::
-
-<!-- <object data="/res/main.pdf" type="application/pdf" style="width: 40%; height: 200px">
- <embed src="/res/main.pdf" type="application/pdf" style="width: 40%; height: 40%;"/>
-</object> -->
diff --git a/docs/docs/javascripts/.gitkeep b/docs/docs/javascripts/.gitkeep
deleted file mode 100644
index e69de29..0000000
--- a/docs/docs/javascripts/.gitkeep
+++ /dev/null
diff --git a/docs/docs/res/main.pdf b/docs/docs/res/main.pdf
deleted file mode 100644
index 4ec4dd7..0000000
--- a/docs/docs/res/main.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/docs/showcase/index.md b/docs/docs/showcase/index.md
deleted file mode 100644
index f58ab2f..0000000
--- a/docs/docs/showcase/index.md
+++ /dev/null
@@ -1,24 +0,0 @@
----
-hide:
- - navigation
- - toc
- - path
----
-
-::gantt::
-
-- title: Definition Phase
- activities:
- - title: Creative Brief
- start: 2023-07-21
- end: 2023-08-21
- lasts: 1 months
- - title: Graphic Design Research
- start: 2023-08-22
- end: 2023-08-30
- lasts: 2 weeks
- - title: Brainstorming / Mood Boarding
- start: 2023-08-31
- end: 2023-12-20
-
-::/gantt::
diff --git a/docs/docs/stylesheets/.gitkeep b/docs/docs/stylesheets/.gitkeep
deleted file mode 100644
index e69de29..0000000
--- a/docs/docs/stylesheets/.gitkeep
+++ /dev/null
diff --git a/docs/main.pdf b/docs/main.pdf
deleted file mode 100644
index 7c91de2..0000000
--- a/docs/main.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/main.tex b/docs/main.tex
deleted file mode 100644
index 5ceff2a..0000000
--- a/docs/main.tex
+++ /dev/null
@@ -1,87 +0,0 @@
-\documentclass[conference]{IEEEtran}
-\usepackage{booktabs}
-
-\begin{document}
-\title{Psi CLI Language}
-\author{\IEEEauthorblockN{HsiangNianian}
- \IEEEauthorblockA{\textit{Department of Computer Science} \\
- \textit{Founder of Psi}\\
- i@jyunko.cn}}
-\maketitle
-
-\begin{abstract}
- Psi is a new programming language designed with simplicity, flexibility, and performance in mind. It provides a clean and intuitive syntax that is easy to read and write, making it an excellent choice for both beginners and experienced programmers.
-\end{abstract}
-
-\section{Introduction}
-This section introduces the Psi CLI language and its features.
-
-\section{Features}
-This section describes the key features of the Psi CLI language.
-
-\subsection{Lexer Module}
-The lexer module is responsible for converting source code into a sequence of tokens.
-It recognizes the basic elements of the language such as identifiers, keywords, operators, and literals.
-
-\begin{table}[htbp]
- \caption{Code Tokens and Corresponding Meanings}
- \label{table:code_tokens}
- \centering
- \begin{tabular}{@{} c|c @{}}
- \toprule
- \textbf{Token} & \textbf{Meaning} \\
- \midrule
- list & TYPE \\
- colors & IDENTIFIER \\
- = & EQUALS \\
- red & IDENTIFIER \\
- , & COMMA \\
- blue & IDENTIFIER \\
- , & COMMA \\
- green & IDENTIFIER \\
- \bottomrule
- \end{tabular}
-\end{table}
-
-\subsection{Parser Module}
-The parser module converts the token sequence into an abstract syntax tree (AST).
-
-\subsection{Built-in Types Module}
-The built-in types module defines the built-in types of the Psi language, such as lists and dictionaries.
-
-\subsection{Error Handling Module}
-The error handling module provides mechanisms for capturing and handling errors at runtime.
-
-\subsection{Execution Environment Module}
-The execution environment module defines the execution environment of the Psi language.
-
-\subsection{Interpreter Module}
-The interpreter module executes operations based on the AST within the execution environment.
-
-\subsection{Mathematics Foundation Module}
-The mathematics foundation module provides basic mathematical functions and constants.
-
-\subsection{Documentation Module}
-The documentation module provides API interface descriptions and usage examples.
-
-\section{Getting Started}
-This section explains how to get started with the Psi CLI language.
-
-\section{Keywords}
-This section lists the keywords used in the Psi CLI language.
-
-\section{Contribution}
-This section outlines how to contribute to the Psi project.
-
-\section{License}
-This section provides information about the license of the Psi CLI language.
-
-\section*{Acknowledgment}
-The authors would like to thank...
-
-\section*{References}
- [1] Reference 1
-
- [2] Reference 2
-
-\end{document} \ No newline at end of file
diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml
deleted file mode 100644
index 260b4d4..0000000
--- a/docs/mkdocs.yml
+++ /dev/null
@@ -1,151 +0,0 @@
-site_name: Psi 文档 (草案)
-repo_url: https://github.com/HydroRoll-Team/psi
-repo_name: HydroRoll-Team/psi
-edit_uri: edit/main/docs/docs/
-site_author: Hsiang Nianian
-site_description: >-
- Psi 是一个函数式编程语言,同时也是一个CLI语言,旨在通过人机交互实现指定的功能。
- 该语言的设计目标是简单、易用、易学,同时也是一个多范式语言,支持函数式、命令式、面向对象、面向过程等多种编程范式。
-
-theme:
- name: material
- language: zh
- icon:
- logo: material/library-outline
- repo: fontawesome/brands/git-alt
- custom_dir: overrides
- features:
- - content.action.edit
- - content.action.view
- - navigation.footer
- - navigation.tabs
- # - navigation.tabs.sticky
- - navigation.sections
- - navigation.expand
- - navigation.path
- - navigation.indexes
- - toc.follow
- - navigation.top
- - search.highlight
- - search.suggest
- - search.share
- - header.autohide
- - navigation.footer
- palette:
- # Palette toggle for automatic mode
- - media: "(prefers-color-scheme)"
- toggle:
- icon: material/brightness-auto
- name: Switch to light mode
-
- # Palette toggle for light mode
- - media: "(prefers-color-scheme: light)"
- scheme: default
- toggle:
- icon: material/brightness-7
- name: Switch to dark mode
-
- # Palette toggle for dark mode
- - media: "(prefers-color-scheme: dark)"
- scheme: slate
- toggle:
- icon: material/brightness-4
- name: Switch to system preference
-
-extra:
- homepage: https://psi.retrofor.space
- alternate:
- # - name: English
- # link: /en/
- # lang: en
- - name: 中文
- link: /
- lang: zh
- consent:
- title: Cookie 偏好设置
- description: >-
- 我们使用Cookie来识别您的重复访问和偏好,以及衡量我们的文档的有效性和用户是否找到他们搜索的内容。在您的同意下,这将帮助我们改善我们的文档。
- actions:
- - accept
- - manage
- cookies:
- analytics:
- name: Google Analytics
- checked: true
- github:
- name: GitHub
- checked: true
-
- social:
- - icon: fontawesome/brands/github
- link: https://github.com/HydroRoll-Team
-
-extra_css:
- - stylesheets/extra.css
- - css/neoteroi-mkdocs.css
-
-extra_javascript:
- - javascripts/extra.js
-
-copyright: >
- Copyright &copy; 2013 - PRESENT. <a href="https://github.com/HydroRoll-Team">HydroRoll-Team</a> –
- <a href="#__consent">管理Cookie</a>
-
-markdown_extensions:
- - neoteroi.timeline
- - neoteroi.cards
- - neoteroi.projects
- - neoteroi.spantable
- - abbr
- - admonition
- - attr_list
- - def_list
- - footnotes
- - md_in_html
- - toc:
- permalink: true
- - pymdownx.arithmatex:
- generic: true
- - pymdownx.betterem:
- smart_enable: all
- - pymdownx.caret
- - pymdownx.details
- - pymdownx.emoji:
- emoji_generator: !!python/name:materialx.emoji.to_svg
- emoji_index: !!python/name:materialx.emoji.twemoji
- - pymdownx.highlight:
- anchor_linenums: true
- line_spans: __span
- pygments_lang_class: true
- - pymdownx.inlinehilite
- - pymdownx.keys
- - pymdownx.magiclink:
- repo_url_shorthand: true
- user: squidfunk
- repo: mkdocs-material
- - pymdownx.mark
- - pymdownx.smartsymbols
- - pymdownx.superfences:
- custom_fences:
- - name: mermaid
- class: mermaid
- format: !!python/name:pymdownx.superfences.fence_code_format
- - pymdownx.tabbed:
- alternate_style: true
- - pymdownx.tasklist:
- custom_checkbox: true
- - pymdownx.tilde
-
-plugins:
- - blog
- - search
- - git-authors
- - git-revision-date-localized:
- enable_creation_date: true
- fallback_to_build_date: true
- timezone: Asia/Shanghai
- type: timeago
- custom_format: "%d. %B %Y"
- # - git-committers:
- # repository: HydroRoll-Team/psi
- # branch: main \ No newline at end of file
diff --git a/docs/overrides/.gitkeep b/docs/overrides/.gitkeep
deleted file mode 100644
index e69de29..0000000
--- a/docs/overrides/.gitkeep
+++ /dev/null
diff --git a/docs/overrides/main.html b/docs/overrides/main.html
deleted file mode 100644
index d07c0ab..0000000
--- a/docs/overrides/main.html
+++ /dev/null
@@ -1,13 +0,0 @@
-{% extends "base.html" %}
-
-{% block content %}
- {{ super() }}
-
- {% if git_page_authors %}
- <div class="md-source-date">
- <small>
- Authors: {{ git_page_authors | default('enable mkdocs-git-authors-plugin') }}
- </small>
- </div>
- {% endif %}
-{% endblock %}
diff --git a/docs/requirements.txt b/docs/requirements.txt
index 363e9c6..899492a 100644
--- a/docs/requirements.txt
+++ b/docs/requirements.txt
@@ -1,6 +1,7 @@
-mkdocs-material
-mkdocs-blog-plugin
-mkdocs-git-revision-date-localized-plugin
-mkdocs-git-authors-plugin
-mkdocs-material-extensions>=1.1
-neoteroi-mkdocs \ No newline at end of file
+furo>=2023.3.27
+sphinx-autobuild>=2021.3.14
+myst-parser>=0.18.1
+sphinx>=5.3.0
+tomli
+sphinx_design
+sphinx-intl>=2.1.0 \ No newline at end of file
diff --git a/docs/source/CONTRIBUTING.rst b/docs/source/CONTRIBUTING.rst
new file mode 100644
index 0000000..e75758c
--- /dev/null
+++ b/docs/source/CONTRIBUTING.rst
@@ -0,0 +1,2 @@
+```{include} ../../CONTRIBUTING.md
+``` \ No newline at end of file
diff --git a/docs/source/COPYING.rst b/docs/source/COPYING.rst
new file mode 100644
index 0000000..ea3bea4
--- /dev/null
+++ b/docs/source/COPYING.rst
@@ -0,0 +1 @@
+.. include:: ../../COPYING \ No newline at end of file
diff --git a/docs/source/changelog.rst b/docs/source/changelog.rst
new file mode 100644
index 0000000..19a8b62
--- /dev/null
+++ b/docs/source/changelog.rst
@@ -0,0 +1,3 @@
+.. maxdepth: 1
+
+.. include:: ../../CHANGELOG.md \ No newline at end of file
diff --git a/docs/source/conf.py b/docs/source/conf.py
new file mode 100644
index 0000000..9890225
--- /dev/null
+++ b/docs/source/conf.py
@@ -0,0 +1,99 @@
+# Configuration file for the Sphinx documentation builder.
+#
+# For the full list of built-in configuration values, see the documentation:
+# https://www.sphinx-doc.org/en/master/usage/configuration.html
+
+import infini
+import os, sys
+
+if sys.version_info >= (3, 11):
+ import tomllib
+else:
+ import tomli as tomllib
+
+DATA = None
+PYPROJECT = os.path.join("..", "..", "pyproject.toml")
+with open(PYPROJECT, "r", encoding="utf8") as f:
+ pyproject = f.read()
+ DATA = tomllib.loads(pyproject)
+PROJECT_VERSION = DATA["project"]["version"]
+PROJECT_NAME = DATA["project"]["name"]
+AUTHOR_TABLE = DATA["project"]["authors"]
+AUTHORS = ",".join([f"{aut['name']}" for aut in AUTHOR_TABLE])
+
+# -- Project information -----------------------------------------------------
+# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
+
+project = PROJECT_NAME # "Infini"
+release = PROJECT_VERSION # "latest"
+copyright = (
+ "2023-PRESENT, HydroRoll-Team & 浊莲."
+)
+author = AUTHORS # "Hsiang Nianian"
+
+html_title = "INFINI GENERATOR II"
+
+# -- General configuration ---------------------------------------------------
+# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
+
+extensions = [
+ "sphinx.ext.autodoc",
+ "sphinx.ext.viewcode",
+ "sphinx.ext.todo",
+ "sphinx.ext.napoleon",
+ "sphinx.ext.autosummary",
+ "sphinx.ext.extlinks",
+ "myst_parser",
+]
+
+templates_path = ["_templates"]
+exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
+extlinks = {
+ "issue": ("https://github.com/HydroRoll-Team/infini/%s", "issue %s"),
+ "doc": ("https://grps.hydroroll.team/zh_CN/latest/%s", "pages/%s"),
+}
+source_suffix = {
+ ".rst": "restructuredtext",
+ ".txt": "markdown",
+ ".md": "markdown",
+}
+
+locale_dirs = ["../locales/"] # path is example but recommended.
+gettext_compact = False # optional.
+gettext_uuid = True # optional.
+
+# -- Options for HTML output -------------------------------------------------
+# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
+
+html_theme = "furo"
+html_static_path = ["../_static"]
+_html_logo = (
+ "https://cdn.jsdelivr.net/gh/HydroRoll-Team/infini@master/docs/_static/logo.png"
+)
+html_favicon = _html_logo
+
+html_css_files = [
+ "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/fontawesome.min.css",
+ "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/brands.min.css",
+]
+
+html_theme_options = {
+ # "announcement": "<em><a href='#'>documentation</a> is still under construction now, welcome any <a href='contributing.html'>contribution</a>!</em>",
+ "source_repository": "https://github.com/HydroRoll-Team/infini/",
+ "source_branch": "master",
+ "source_directory": "docs/source/",
+ "footer_icons": [
+ {
+ "name": "GitHub",
+ "url": "https://github.com/HydroRoll-Team/infini/",
+ "html": "",
+ "class": "fa-brands fa-github",
+ },
+ {
+ "name": "Pypi",
+ "url": "https://pypi.org/project/infini/",
+ "html": "",
+ "class": "fa-brands fa-python",
+ },
+ ],
+}
diff --git a/docs/source/index.rst b/docs/source/index.rst
new file mode 100644
index 0000000..5ddf853
--- /dev/null
+++ b/docs/source/index.rst
@@ -0,0 +1,23 @@
+.. hide-toc: true
+
+Nivis - ❄
+=========
+
+.. include:: ../../README.rst
+ :start-after: .. index-start
+ :end-before: .. index-end
+
+
+.. toctree::
+ :hidden:
+
+ Quick start<quick-start.rst>
+
+
+.. toctree::
+ :caption: Development
+ :hidden:
+
+ Contributing <pages/development/contributing.rst>
+ Changelog <changelog.rst>
+ COPYING <COPYING.rst> \ No newline at end of file
diff --git a/docs/docs/blog/index.md b/docs/source/pages/contributing.rst
index e69de29..e69de29 100644
--- a/docs/docs/blog/index.md
+++ b/docs/source/pages/contributing.rst
diff --git a/psi/Grammar/Token b/nivis-python/Grammar/Token
index 0de3014..0de3014 100644
--- a/psi/Grammar/Token
+++ b/nivis-python/Grammar/Token
diff --git a/psi/Lib/IOStream/__init__.psi b/nivis-python/Lib/IOStream/__init__.psi
index a93ea30..a93ea30 100644
--- a/psi/Lib/IOStream/__init__.psi
+++ b/nivis-python/Lib/IOStream/__init__.psi
diff --git a/psi/Modules/asyncio/__init__.py b/nivis-python/Modules/asyncio/__init__.py
index e69de29..e69de29 100644
--- a/psi/Modules/asyncio/__init__.py
+++ b/nivis-python/Modules/asyncio/__init__.py
diff --git a/psi/__init__.py b/nivis-python/__init__.py
index b3e08df..b3e08df 100644
--- a/psi/__init__.py
+++ b/nivis-python/__init__.py
diff --git a/psi/exception.py b/nivis-python/exception.py
index a8b7201..a8b7201 100644
--- a/psi/exception.py
+++ b/nivis-python/exception.py
diff --git a/psi/execution.py b/nivis-python/execution.py
index 0abdf2c..0abdf2c 100644
--- a/psi/execution.py
+++ b/nivis-python/execution.py
diff --git a/psi/interpreter.py b/nivis-python/interpreter.py
index 8aa8fad..8aa8fad 100644
--- a/psi/interpreter.py
+++ b/nivis-python/interpreter.py
diff --git a/psi/lexer.py b/nivis-python/lexer.py
index 474891b..474891b 100644
--- a/psi/lexer.py
+++ b/nivis-python/lexer.py
diff --git a/psi/mathmatics.py b/nivis-python/mathmatics.py
index e69de29..e69de29 100644
--- a/psi/mathmatics.py
+++ b/nivis-python/mathmatics.py
diff --git a/psi/parsers.py b/nivis-python/parsers.py
index f68f95f..f68f95f 100644
--- a/psi/parsers.py
+++ b/nivis-python/parsers.py
diff --git a/psi/type.py b/nivis-python/type.py
index e69de29..e69de29 100644
--- a/psi/type.py
+++ b/nivis-python/type.py
diff --git a/pdm.lock b/pdm.lock
index 736ebb1..e9c8765 100644
--- a/pdm.lock
+++ b/pdm.lock
@@ -2,118 +2,93 @@
# It is not intended for manual editing.
[metadata]
-groups = ["default"]
+groups = ["default", "docs"]
cross_platform = true
static_urls = false
lock_version = "4.3"
-content_hash = "sha256:3ff8281ca1b68fe781cdb20ad83bc38ecc74aab23b6382b6d5c92f063123b18c"
+content_hash = "sha256:b7ebf2d8e66c9393b29dbb902f2ef63012a2234c7714ece9afab8c87c8f70e84"
[[package]]
-name = "anyio"
-version = "4.0.0"
-requires_python = ">=3.8"
-summary = "High level compatibility layer for multiple asynchronous event loop implementations"
-dependencies = [
- "exceptiongroup>=1.0.2; python_version < \"3.11\"",
- "idna>=2.8",
- "sniffio>=1.1",
-]
+name = "alabaster"
+version = "0.7.16"
+requires_python = ">=3.9"
+summary = "A light, configurable Sphinx theme"
files = [
- {file = "anyio-4.0.0-py3-none-any.whl", hash = "sha256:cfdb2b588b9fc25ede96d8db56ed50848b0b649dca3dd1df0b11f683bb9e0b5f"},
- {file = "anyio-4.0.0.tar.gz", hash = "sha256:f7ed51751b2c2add651e5747c891b47e26d2a21be5d32d9311dfe9692f3e5d7a"},
+ {file = "alabaster-0.7.16-py3-none-any.whl", hash = "sha256:b46733c07dce03ae4e150330b975c75737fa60f0a7c591b6c8bf4928a28e2c92"},
+ {file = "alabaster-0.7.16.tar.gz", hash = "sha256:75a8b99c28a5dad50dd7f8ccdd447a121ddb3892da9e53d1ca5cca3106d58d65"},
]
[[package]]
name = "babel"
-version = "2.12.1"
+version = "2.14.0"
requires_python = ">=3.7"
summary = "Internationalization utilities"
+files = [
+ {file = "Babel-2.14.0-py3-none-any.whl", hash = "sha256:efb1a25b7118e67ce3a259bed20545c29cb68be8ad2c784c83689981b7a57287"},
+ {file = "Babel-2.14.0.tar.gz", hash = "sha256:6919867db036398ba21eb5c7a0f6b28ab8cbc3ae7a73a44ebe34ae74a4e7d363"},
+]
+
+[[package]]
+name = "beautifulsoup4"
+version = "4.12.3"
+requires_python = ">=3.6.0"
+summary = "Screen-scraping library"
dependencies = [
- "pytz>=2015.7; python_version < \"3.9\"",
+ "soupsieve>1.2",
]
files = [
- {file = "Babel-2.12.1-py3-none-any.whl", hash = "sha256:b4246fb7677d3b98f501a39d43396d3cafdc8eadb045f4a31be01863f655c610"},
- {file = "Babel-2.12.1.tar.gz", hash = "sha256:cc2d99999cd01d44420ae725a21c9e3711b3aadc7976d6147f622d8581963455"},
+ {file = "beautifulsoup4-4.12.3-py3-none-any.whl", hash = "sha256:b80878c9f40111313e55da8ba20bdba06d8fa3969fc68304167741bbf9e082ed"},
+ {file = "beautifulsoup4-4.12.3.tar.gz", hash = "sha256:74e3d1928edc070d21748185c46e3fb33490f22f52a3addee9aee0f4f7781051"},
]
[[package]]
name = "certifi"
-version = "2023.7.22"
+version = "2024.2.2"
requires_python = ">=3.6"
summary = "Python package for providing Mozilla's CA Bundle."
files = [
- {file = "certifi-2023.7.22-py3-none-any.whl", hash = "sha256:92d6037539857d8206b8f6ae472e8b77db8058fec5937a1ef3f54304089edbb9"},
- {file = "certifi-2023.7.22.tar.gz", hash = "sha256:539cc1d13202e33ca466e88b2807e29f4c13049d6d87031a3c110744495cb082"},
+ {file = "certifi-2024.2.2-py3-none-any.whl", hash = "sha256:dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"},
+ {file = "certifi-2024.2.2.tar.gz", hash = "sha256:0569859f95fc761b18b45ef421b1290a0f65f147e92a1e5eb3e635f9a5e4e66f"},
]
[[package]]
name = "charset-normalizer"
-version = "3.2.0"
+version = "3.3.2"
requires_python = ">=3.7.0"
summary = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet."
files = [
- {file = "charset-normalizer-3.2.0.tar.gz", hash = "sha256:3bb3d25a8e6c0aedd251753a79ae98a093c7e7b471faa3aa9a93a81431987ace"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b87549028f680ca955556e3bd57013ab47474c3124dc069faa0b6545b6c9710"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:7c70087bfee18a42b4040bb9ec1ca15a08242cf5867c58726530bdf3945672ed"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a103b3a7069b62f5d4890ae1b8f0597618f628b286b03d4bc9195230b154bfa9"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:94aea8eff76ee6d1cdacb07dd2123a68283cb5569e0250feab1240058f53b623"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:db901e2ac34c931d73054d9797383d0f8009991e723dab15109740a63e7f902a"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b0dac0ff919ba34d4df1b6131f59ce95b08b9065233446be7e459f95554c0dc8"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:193cbc708ea3aca45e7221ae58f0fd63f933753a9bfb498a3b474878f12caaad"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:09393e1b2a9461950b1c9a45d5fd251dc7c6f228acab64da1c9c0165d9c7765c"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:baacc6aee0b2ef6f3d308e197b5d7a81c0e70b06beae1f1fcacffdbd124fe0e3"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:bf420121d4c8dce6b889f0e8e4ec0ca34b7f40186203f06a946fa0276ba54029"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:c04a46716adde8d927adb9457bbe39cf473e1e2c2f5d0a16ceb837e5d841ad4f"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:aaf63899c94de41fe3cf934601b0f7ccb6b428c6e4eeb80da72c58eab077b19a"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:d62e51710986674142526ab9f78663ca2b0726066ae26b78b22e0f5e571238dd"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-win32.whl", hash = "sha256:04e57ab9fbf9607b77f7d057974694b4f6b142da9ed4a199859d9d4d5c63fe96"},
- {file = "charset_normalizer-3.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:48021783bdf96e3d6de03a6e39a1171ed5bd7e8bb93fc84cc649d11490f87cea"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:4957669ef390f0e6719db3613ab3a7631e68424604a7b448f079bee145da6e09"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:46fb8c61d794b78ec7134a715a3e564aafc8f6b5e338417cb19fe9f57a5a9bf2"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f779d3ad205f108d14e99bb3859aa7dd8e9c68874617c72354d7ecaec2a054ac"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f25c229a6ba38a35ae6e25ca1264621cc25d4d38dca2942a7fce0b67a4efe918"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2efb1bd13885392adfda4614c33d3b68dee4921fd0ac1d3988f8cbb7d589e72a"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1f30b48dd7fa1474554b0b0f3fdfdd4c13b5c737a3c6284d3cdc424ec0ffff3a"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:246de67b99b6851627d945db38147d1b209a899311b1305dd84916f2b88526c6"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9bd9b3b31adcb054116447ea22caa61a285d92e94d710aa5ec97992ff5eb7cf3"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:8c2f5e83493748286002f9369f3e6607c565a6a90425a3a1fef5ae32a36d749d"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:3170c9399da12c9dc66366e9d14da8bf7147e1e9d9ea566067bbce7bb74bd9c2"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:7a4826ad2bd6b07ca615c74ab91f32f6c96d08f6fcc3902ceeedaec8cdc3bcd6"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:3b1613dd5aee995ec6d4c69f00378bbd07614702a315a2cf6c1d21461fe17c23"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9e608aafdb55eb9f255034709e20d5a83b6d60c054df0802fa9c9883d0a937aa"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-win32.whl", hash = "sha256:f2a1d0fd4242bd8643ce6f98927cf9c04540af6efa92323e9d3124f57727bfc1"},
- {file = "charset_normalizer-3.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:681eb3d7e02e3c3655d1b16059fbfb605ac464c834a0c629048a30fad2b27489"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:95eb302ff792e12aba9a8b8f8474ab229a83c103d74a750ec0bd1c1eea32e669"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1a100c6d595a7f316f1b6f01d20815d916e75ff98c27a01ae817439ea7726329"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6339d047dab2780cc6220f46306628e04d9750f02f983ddb37439ca47ced7149"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e4b749b9cc6ee664a3300bb3a273c1ca8068c46be705b6c31cf5d276f8628a94"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a38856a971c602f98472050165cea2cdc97709240373041b69030be15047691f"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f87f746ee241d30d6ed93969de31e5ffd09a2961a051e60ae6bddde9ec3583aa"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:89f1b185a01fe560bc8ae5f619e924407efca2191b56ce749ec84982fc59a32a"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e1c8a2f4c69e08e89632defbfabec2feb8a8d99edc9f89ce33c4b9e36ab63037"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2f4ac36d8e2b4cc1aa71df3dd84ff8efbe3bfb97ac41242fbcfc053c67434f46"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a386ebe437176aab38c041de1260cd3ea459c6ce5263594399880bbc398225b2"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:ccd16eb18a849fd8dcb23e23380e2f0a354e8daa0c984b8a732d9cfaba3a776d"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:e6a5bf2cba5ae1bb80b154ed68a3cfa2fa00fde979a7f50d6598d3e17d9ac20c"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:45de3f87179c1823e6d9e32156fb14c1927fcc9aba21433f088fdfb555b77c10"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-win32.whl", hash = "sha256:1000fba1057b92a65daec275aec30586c3de2401ccdcd41f8a5c1e2c87078706"},
- {file = "charset_normalizer-3.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:8b2c760cfc7042b27ebdb4a43a4453bd829a5742503599144d54a032c5dc7e9e"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:855eafa5d5a2034b4621c74925d89c5efef61418570e5ef9b37717d9c796419c"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:203f0c8871d5a7987be20c72442488a0b8cfd0f43b7973771640fc593f56321f"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e857a2232ba53ae940d3456f7533ce6ca98b81917d47adc3c7fd55dad8fab858"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5e86d77b090dbddbe78867a0275cb4df08ea195e660f1f7f13435a4649e954e5"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c4fb39a81950ec280984b3a44f5bd12819953dc5fa3a7e6fa7a80db5ee853952"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2dee8e57f052ef5353cf608e0b4c871aee320dd1b87d351c28764fc0ca55f9f4"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8700f06d0ce6f128de3ccdbc1acaea1ee264d2caa9ca05daaf492fde7c2a7200"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1920d4ff15ce893210c1f0c0e9d19bfbecb7983c76b33f046c13a8ffbd570252"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c1c76a1743432b4b60ab3358c937a3fe1341c828ae6194108a94c69028247f22"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f7560358a6811e52e9c4d142d497f1a6e10103d3a6881f18d04dbce3729c0e2c"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:c8063cf17b19661471ecbdb3df1c84f24ad2e389e326ccaf89e3fb2484d8dd7e"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:cd6dbe0238f7743d0efe563ab46294f54f9bc8f4b9bcf57c3c666cc5bc9d1299"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:1249cbbf3d3b04902ff081ffbb33ce3377fa6e4c7356f759f3cd076cc138d020"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-win32.whl", hash = "sha256:6c409c0deba34f147f77efaa67b8e4bb83d2f11c8806405f76397ae5b8c0d1c9"},
- {file = "charset_normalizer-3.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:7095f6fbfaa55defb6b733cfeb14efaae7a29f0b59d8cf213be4e7ca0b857b80"},
- {file = "charset_normalizer-3.2.0-py3-none-any.whl", hash = "sha256:8e098148dd37b4ce3baca71fb394c81dc5d9c7728c95df695d2dca218edf40e6"},
+ {file = "charset-normalizer-3.3.2.tar.gz", hash = "sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:802fe99cca7457642125a8a88a084cef28ff0cf9407060f7b93dca5aa25480db"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:573f6eac48f4769d667c4442081b1794f52919e7edada77495aaed9236d13a96"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f27273b60488abe721a075bcca6d7f3964f9f6f067c8c4c605743023d7d3944f"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ceae2f17a9c33cb48e3263960dc5fc8005351ee19db217e9b1bb15d28c02574"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65f6f63034100ead094b8744b3b97965785388f308a64cf8d7c34f2f2e5be0c4"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a78b2b446bd7c934f5dcedc588903fb2f5eec172f3d29e52a9096a43722adfc"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e537484df0d8f426ce2afb2d0f8e1c3d0b114b83f8850e5f2fbea0e797bd82ae"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:eb6904c354526e758fda7167b33005998fb68c46fbc10e013ca97f21ca5c8887"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:deb6be0ac38ece9ba87dea880e438f25ca3eddfac8b002a2ec3d9183a454e8ae"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4ab2fe47fae9e0f9dee8c04187ce5d09f48eabe611be8259444906793ab7cbce"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:80402cd6ee291dcb72644d6eac93785fe2c8b9cb30893c1af5b8fdd753b9d40f"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-win32.whl", hash = "sha256:7cd13a2e3ddeed6913a65e66e94b51d80a041145a026c27e6bb76c31a853c6ab"},
+ {file = "charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ddbb2551d7e0102e7252db79ba445cdab71b26640817ab1e3e3648dad515003b"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:55086ee1064215781fff39a1af09518bc9255b50d6333f2e4c74ca09fac6a8f6"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f4a014bc36d3c57402e2977dada34f9c12300af536839dc38c0beab8878f38a"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a10af20b82360ab00827f916a6058451b723b4e65030c5a18577c8b2de5b3389"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8d756e44e94489e49571086ef83b2bb8ce311e730092d2c34ca8f7d925cb20aa"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90d558489962fd4918143277a773316e56c72da56ec7aa3dc3dbbe20fdfed15b"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ac7ffc7ad6d040517be39eb591cac5ff87416c2537df6ba3cba3bae290c0fed"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7ed9e526742851e8d5cc9e6cf41427dfc6068d4f5a3bb03659444b4cabf6bc26"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8bdb58ff7ba23002a4c5808d608e4e6c687175724f54a5dade5fa8c67b604e4d"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:6b3251890fff30ee142c44144871185dbe13b11bab478a88887a639655be1068"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b4a23f61ce87adf89be746c8a8974fe1c823c891d8f86eb218bb957c924bb143"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:efcb3f6676480691518c177e3b465bcddf57cea040302f9f4e6e191af91174d4"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-win32.whl", hash = "sha256:d965bba47ddeec8cd560687584e88cf699fd28f192ceb452d1d7ee807c5597b7"},
+ {file = "charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:96b02a3dc4381e5494fad39be677abcb5e6634bf7b4fa83a6dd3112607547001"},
+ {file = "charset_normalizer-3.3.2-py3-none-any.whl", hash = "sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc"},
]
[[package]]
@@ -150,175 +125,79 @@ files = [
]
[[package]]
-name = "essentials"
-version = "1.1.5"
-summary = "General purpose classes and functions, reusable in any kind of Python application"
-files = [
- {file = "essentials-1.1.5-py3-none-any.whl", hash = "sha256:905fa4a69fcd2b2cf41ecc6cc65827e30c87ef91f3f5c71540bcc5e984fa8360"},
- {file = "essentials-1.1.5.tar.gz", hash = "sha256:8736f738bb2c51d5069b2de2cf9146f7d402f25f9f95636781e59a422c908c46"},
-]
-
-[[package]]
-name = "essentials-openapi"
-version = "1.0.8"
-requires_python = ">=3.7"
-summary = "Classes to generate OpenAPI Documentation v3 and v2, in JSON and YAML."
-dependencies = [
- "essentials>=1.1.5",
- "pyyaml>=6",
-]
-files = [
- {file = "essentials_openapi-1.0.8-py3-none-any.whl", hash = "sha256:1d3afc67cefc952aade7d406c2ffac81634e54ce7e597ddd8ceb1bfe1fe62e46"},
- {file = "essentials_openapi-1.0.8.tar.gz", hash = "sha256:37832b7b422939bdcf9cc6f52d2317e0ee19907ac8aba2c77a8cff49a2c0b26a"},
-]
-
-[[package]]
-name = "exceptiongroup"
-version = "1.1.3"
-requires_python = ">=3.7"
-summary = "Backport of PEP 654 (exception groups)"
-files = [
- {file = "exceptiongroup-1.1.3-py3-none-any.whl", hash = "sha256:343280667a4585d195ca1cf9cef84a4e178c4b6cf2274caef9859782b567d5e3"},
- {file = "exceptiongroup-1.1.3.tar.gz", hash = "sha256:097acd85d473d75af5bb98e41b61ff7fe35efe6675e4f9370ec6ec5126d160e9"},
-]
-
-[[package]]
-name = "ghp-import"
-version = "2.1.0"
-summary = "Copy your docs directly to the gh-pages branch."
-dependencies = [
- "python-dateutil>=2.8.1",
-]
-files = [
- {file = "ghp-import-2.1.0.tar.gz", hash = "sha256:9c535c4c61193c2df8871222567d7fd7e5014d835f97dc7b7439069e2413d343"},
- {file = "ghp_import-2.1.0-py3-none-any.whl", hash = "sha256:8337dd7b50877f163d4c0289bc1f1c7f127550241988d568c1db512c4324a619"},
-]
-
-[[package]]
-name = "gitdb"
-version = "4.0.10"
-requires_python = ">=3.7"
-summary = "Git Object Database"
-dependencies = [
- "smmap<6,>=3.0.1",
-]
-files = [
- {file = "gitdb-4.0.10-py3-none-any.whl", hash = "sha256:c286cf298426064079ed96a9e4a9d39e7f3e9bf15ba60701e95f5492f28415c7"},
- {file = "gitdb-4.0.10.tar.gz", hash = "sha256:6eb990b69df4e15bad899ea868dc46572c3f75339735663b81de79b06f17eb9a"},
-]
-
-[[package]]
-name = "gitpython"
-version = "3.1.37"
-requires_python = ">=3.7"
-summary = "GitPython is a Python library used to interact with Git repositories"
-dependencies = [
- "gitdb<5,>=4.0.1",
-]
-files = [
- {file = "GitPython-3.1.37-py3-none-any.whl", hash = "sha256:5f4c4187de49616d710a77e98ddf17b4782060a1788df441846bddefbb89ab33"},
- {file = "GitPython-3.1.37.tar.gz", hash = "sha256:f9b9ddc0761c125d5780eab2d64be4873fc6817c2899cbcb34b02344bdc7bc54"},
-]
-
-[[package]]
-name = "h11"
-version = "0.14.0"
-requires_python = ">=3.7"
-summary = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1"
-files = [
- {file = "h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"},
- {file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"},
-]
-
-[[package]]
-name = "httpcore"
-version = "0.18.0"
-requires_python = ">=3.8"
-summary = "A minimal low-level HTTP client."
-dependencies = [
- "anyio<5.0,>=3.0",
- "certifi",
- "h11<0.15,>=0.13",
- "sniffio==1.*",
-]
-files = [
- {file = "httpcore-0.18.0-py3-none-any.whl", hash = "sha256:adc5398ee0a476567bf87467063ee63584a8bce86078bf748e48754f60202ced"},
- {file = "httpcore-0.18.0.tar.gz", hash = "sha256:13b5e5cd1dca1a6636a6aaea212b19f4f85cd88c366a2b82304181b769aab3c9"},
-]
-
-[[package]]
-name = "httpx"
-version = "0.25.0"
+name = "furo"
+version = "2024.1.29"
requires_python = ">=3.8"
-summary = "The next generation HTTP client."
+summary = "A clean customisable Sphinx documentation theme."
dependencies = [
- "certifi",
- "httpcore<0.19.0,>=0.18.0",
- "idna",
- "sniffio",
+ "beautifulsoup4",
+ "pygments>=2.7",
+ "sphinx-basic-ng",
+ "sphinx<8.0,>=6.0",
]
files = [
- {file = "httpx-0.25.0-py3-none-any.whl", hash = "sha256:181ea7f8ba3a82578be86ef4171554dd45fec26a02556a744db029a0a27b7100"},
- {file = "httpx-0.25.0.tar.gz", hash = "sha256:47ecda285389cb32bb2691cc6e069e3ab0205956f681c5b2ad2325719751d875"},
+ {file = "furo-2024.1.29-py3-none-any.whl", hash = "sha256:3548be2cef45a32f8cdc0272d415fcb3e5fa6a0eb4ddfe21df3ecf1fe45a13cf"},
+ {file = "furo-2024.1.29.tar.gz", hash = "sha256:4d6b2fe3f10a6e36eb9cc24c1e7beb38d7a23fc7b3c382867503b7fcac8a1e02"},
]
[[package]]
name = "idna"
-version = "3.4"
+version = "3.6"
requires_python = ">=3.5"
summary = "Internationalized Domain Names in Applications (IDNA)"
files = [
- {file = "idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"},
- {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"},
+ {file = "idna-3.6-py3-none-any.whl", hash = "sha256:c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"},
+ {file = "idna-3.6.tar.gz", hash = "sha256:9ecdbbd083b06798ae1e86adcbfe8ab1479cf864e4ee30fe4e46a003d12491ca"},
]
[[package]]
-name = "importlib-metadata"
-version = "6.8.0"
-requires_python = ">=3.8"
-summary = "Read metadata from Python packages"
-dependencies = [
- "zipp>=0.5",
-]
+name = "imagesize"
+version = "1.4.1"
+requires_python = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
+summary = "Getting image size from png/jpeg/jpeg2000/gif file"
files = [
- {file = "importlib_metadata-6.8.0-py3-none-any.whl", hash = "sha256:3ebb78df84a805d7698245025b975d9d67053cd94c79245ba4b3eb694abe68bb"},
- {file = "importlib_metadata-6.8.0.tar.gz", hash = "sha256:dbace7892d8c0c4ac1ad096662232f831d4e64f4c4545bd53016a3e9d4654743"},
+ {file = "imagesize-1.4.1-py2.py3-none-any.whl", hash = "sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b"},
+ {file = "imagesize-1.4.1.tar.gz", hash = "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a"},
]
[[package]]
-name = "iniconfig"
-version = "2.0.0"
-requires_python = ">=3.7"
-summary = "brain-dead simple config-ini parsing"
+name = "infini"
+version = "2.0.4"
+requires_python = ">=3.10"
+summary = "Infini 核心标准文本输入输出模块"
+dependencies = [
+ "jinja2>=3.1.3",
+ "rich>=13.7.0",
+]
files = [
- {file = "iniconfig-2.0.0-py3-none-any.whl", hash = "sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"},
- {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"},
+ {file = "infini-2.0.4-py3-none-any.whl", hash = "sha256:024f45fc6a57b111a27df2968e26da123f54ce6a764925dceef3d195798620cf"},
+ {file = "infini-2.0.4.tar.gz", hash = "sha256:e6341774069a2b2f898a1b9d9928c4aed7ce1949006e03d583a907a8b60e9523"},
]
[[package]]
name = "jinja2"
-version = "3.1.2"
+version = "3.1.3"
requires_python = ">=3.7"
summary = "A very fast and expressive template engine."
dependencies = [
"MarkupSafe>=2.0",
]
files = [
- {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"},
- {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"},
+ {file = "Jinja2-3.1.3-py3-none-any.whl", hash = "sha256:7d6d50dd97d52cbc355597bd845fabfbac3f551e1f99619e39a35ce8c370b5fa"},
+ {file = "Jinja2-3.1.3.tar.gz", hash = "sha256:ac8bd6544d4bb2c9792bf3a159e80bba8fda7f07e81bc3aed565432d5925ba90"},
]
[[package]]
-name = "markdown"
-version = "3.4.4"
-requires_python = ">=3.7"
-summary = "Python implementation of John Gruber's Markdown."
+name = "livereload"
+version = "2.6.3"
+summary = "Python LiveReload is an awesome tool for web developers"
dependencies = [
- "importlib-metadata>=4.4; python_version < \"3.10\"",
+ "six",
+ "tornado; python_version > \"2.7\"",
]
files = [
- {file = "Markdown-3.4.4-py3-none-any.whl", hash = "sha256:a4c1b65c0957b4bd9e7d86ddc7b3c9868fb9670660f6f99f6d1bca8954d5a941"},
- {file = "Markdown-3.4.4.tar.gz", hash = "sha256:225c6123522495d4119a90b3a3ba31a1e87a70369e03f14799ea9c0d7183a3d6"},
+ {file = "livereload-2.6.3-py2.py3-none-any.whl", hash = "sha256:ad4ac6f53b2d62bb6ce1a5e6e96f1f00976a32348afedcb4b6d68df2a1d346e4"},
+ {file = "livereload-2.6.3.tar.gz", hash = "sha256:776f2f865e59fde56490a56bcc6773b6917366bce0c267c60ee8aaf1a0959869"},
]
[[package]]
@@ -336,61 +215,44 @@ files = [
[[package]]
name = "markupsafe"
-version = "2.1.3"
+version = "2.1.5"
requires_python = ">=3.7"
summary = "Safely add untrusted strings to HTML/XML markup."
files = [
- {file = "MarkupSafe-2.1.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:cd0f502fe016460680cd20aaa5a76d241d6f35a1c3350c474bac1273803893fa"},
- {file = "MarkupSafe-2.1.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e09031c87a1e51556fdcb46e5bd4f59dfb743061cf93c4d6831bf894f125eb57"},
- {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:68e78619a61ecf91e76aa3e6e8e33fc4894a2bebe93410754bd28fce0a8a4f9f"},
- {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:65c1a9bcdadc6c28eecee2c119465aebff8f7a584dd719facdd9e825ec61ab52"},
- {file = "MarkupSafe-2.1.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:525808b8019e36eb524b8c68acdd63a37e75714eac50e988180b169d64480a00"},
- {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:962f82a3086483f5e5f64dbad880d31038b698494799b097bc59c2edf392fce6"},
- {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:aa7bd130efab1c280bed0f45501b7c8795f9fdbeb02e965371bbef3523627779"},
- {file = "MarkupSafe-2.1.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c9c804664ebe8f83a211cace637506669e7890fec1b4195b505c214e50dd4eb7"},
- {file = "MarkupSafe-2.1.3-cp310-cp310-win32.whl", hash = "sha256:10bbfe99883db80bdbaff2dcf681dfc6533a614f700da1287707e8a5d78a8431"},
- {file = "MarkupSafe-2.1.3-cp310-cp310-win_amd64.whl", hash = "sha256:1577735524cdad32f9f694208aa75e422adba74f1baee7551620e43a3141f559"},
- {file = "MarkupSafe-2.1.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:ad9e82fb8f09ade1c3e1b996a6337afac2b8b9e365f926f5a61aacc71adc5b3c"},
- {file = "MarkupSafe-2.1.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3c0fae6c3be832a0a0473ac912810b2877c8cb9d76ca48de1ed31e1c68386575"},
- {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b076b6226fb84157e3f7c971a47ff3a679d837cf338547532ab866c57930dbee"},
- {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bfce63a9e7834b12b87c64d6b155fdd9b3b96191b6bd334bf37db7ff1fe457f2"},
- {file = "MarkupSafe-2.1.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:338ae27d6b8745585f87218a3f23f1512dbf52c26c28e322dbe54bcede54ccb9"},
- {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e4dd52d80b8c83fdce44e12478ad2e85c64ea965e75d66dbeafb0a3e77308fcc"},
- {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:df0be2b576a7abbf737b1575f048c23fb1d769f267ec4358296f31c2479db8f9"},
- {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5bbe06f8eeafd38e5d0a4894ffec89378b6c6a625ff57e3028921f8ff59318ac"},
- {file = "MarkupSafe-2.1.3-cp311-cp311-win32.whl", hash = "sha256:dd15ff04ffd7e05ffcb7fe79f1b98041b8ea30ae9234aed2a9168b5797c3effb"},
- {file = "MarkupSafe-2.1.3-cp311-cp311-win_amd64.whl", hash = "sha256:134da1eca9ec0ae528110ccc9e48041e0828d79f24121a1a146161103c76e686"},
- {file = "MarkupSafe-2.1.3-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f698de3fd0c4e6972b92290a45bd9b1536bffe8c6759c62471efaa8acb4c37bc"},
- {file = "MarkupSafe-2.1.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:aa57bd9cf8ae831a362185ee444e15a93ecb2e344c8e52e4d721ea3ab6ef1823"},
- {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ffcc3f7c66b5f5b7931a5aa68fc9cecc51e685ef90282f4a82f0f5e9b704ad11"},
- {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47d4f1c5f80fc62fdd7777d0d40a2e9dda0a05883ab11374334f6c4de38adffd"},
- {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1f67c7038d560d92149c060157d623c542173016c4babc0c1913cca0564b9939"},
- {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:9aad3c1755095ce347e26488214ef77e0485a3c34a50c5a5e2471dff60b9dd9c"},
- {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:14ff806850827afd6b07a5f32bd917fb7f45b046ba40c57abdb636674a8b559c"},
- {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8f9293864fe09b8149f0cc42ce56e3f0e54de883a9de90cd427f191c346eb2e1"},
- {file = "MarkupSafe-2.1.3-cp312-cp312-win32.whl", hash = "sha256:715d3562f79d540f251b99ebd6d8baa547118974341db04f5ad06d5ea3eb8007"},
- {file = "MarkupSafe-2.1.3-cp312-cp312-win_amd64.whl", hash = "sha256:1b8dd8c3fd14349433c79fa8abeb573a55fc0fdd769133baac1f5e07abf54aeb"},
- {file = "MarkupSafe-2.1.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:2ef12179d3a291be237280175b542c07a36e7f60718296278d8593d21ca937d4"},
- {file = "MarkupSafe-2.1.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2c1b19b3aaacc6e57b7e25710ff571c24d6c3613a45e905b1fde04d691b98ee0"},
- {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8afafd99945ead6e075b973fefa56379c5b5c53fd8937dad92c662da5d8fd5ee"},
- {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c41976a29d078bb235fea9b2ecd3da465df42a562910f9022f1a03107bd02be"},
- {file = "MarkupSafe-2.1.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d080e0a5eb2529460b30190fcfcc4199bd7f827663f858a226a81bc27beaa97e"},
- {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:69c0f17e9f5a7afdf2cc9fb2d1ce6aabdb3bafb7f38017c0b77862bcec2bbad8"},
- {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:504b320cd4b7eff6f968eddf81127112db685e81f7e36e75f9f84f0df46041c3"},
- {file = "MarkupSafe-2.1.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:42de32b22b6b804f42c5d98be4f7e5e977ecdd9ee9b660fda1a3edf03b11792d"},
- {file = "MarkupSafe-2.1.3-cp38-cp38-win32.whl", hash = "sha256:ceb01949af7121f9fc39f7d27f91be8546f3fb112c608bc4029aef0bab86a2a5"},
- {file = "MarkupSafe-2.1.3-cp38-cp38-win_amd64.whl", hash = "sha256:1b40069d487e7edb2676d3fbdb2b0829ffa2cd63a2ec26c4938b2d34391b4ecc"},
- {file = "MarkupSafe-2.1.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:8023faf4e01efadfa183e863fefde0046de576c6f14659e8782065bcece22198"},
- {file = "MarkupSafe-2.1.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6b2b56950d93e41f33b4223ead100ea0fe11f8e6ee5f641eb753ce4b77a7042b"},
- {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dcdfd0eaf283af041973bff14a2e143b8bd64e069f4c383416ecd79a81aab58"},
- {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05fb21170423db021895e1ea1e1f3ab3adb85d1c2333cbc2310f2a26bc77272e"},
- {file = "MarkupSafe-2.1.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:282c2cb35b5b673bbcadb33a585408104df04f14b2d9b01d4c345a3b92861c2c"},
- {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab4a0df41e7c16a1392727727e7998a467472d0ad65f3ad5e6e765015df08636"},
- {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7ef3cb2ebbf91e330e3bb937efada0edd9003683db6b57bb108c4001f37a02ea"},
- {file = "MarkupSafe-2.1.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0a4e4a1aff6c7ac4cd55792abf96c915634c2b97e3cc1c7129578aa68ebd754e"},
- {file = "MarkupSafe-2.1.3-cp39-cp39-win32.whl", hash = "sha256:fec21693218efe39aa7f8599346e90c705afa52c5b31ae019b2e57e8f6542bb2"},
- {file = "MarkupSafe-2.1.3-cp39-cp39-win_amd64.whl", hash = "sha256:3fd4abcb888d15a94f32b75d8fd18ee162ca0c064f35b11134be77050296d6ba"},
- {file = "MarkupSafe-2.1.3.tar.gz", hash = "sha256:af598ed32d6ae86f1b747b82783958b1a4ab8f617b06fe68795c7f026abbdcad"},
+ {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:629ddd2ca402ae6dbedfceeba9c46d5f7b2a61d9749597d4307f943ef198fc1f"},
+ {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5b7b716f97b52c5a14bffdf688f971b2d5ef4029127f1ad7a513973cfd818df2"},
+ {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ec585f69cec0aa07d945b20805be741395e28ac1627333b1c5b0105962ffced"},
+ {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b91c037585eba9095565a3556f611e3cbfaa42ca1e865f7b8015fe5c7336d5a5"},
+ {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7502934a33b54030eaf1194c21c692a534196063db72176b0c4028e140f8f32c"},
+ {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0e397ac966fdf721b2c528cf028494e86172b4feba51d65f81ffd65c63798f3f"},
+ {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c061bb86a71b42465156a3ee7bd58c8c2ceacdbeb95d05a99893e08b8467359a"},
+ {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3a57fdd7ce31c7ff06cdfbf31dafa96cc533c21e443d57f5b1ecc6cdc668ec7f"},
+ {file = "MarkupSafe-2.1.5-cp311-cp311-win32.whl", hash = "sha256:397081c1a0bfb5124355710fe79478cdbeb39626492b15d399526ae53422b906"},
+ {file = "MarkupSafe-2.1.5-cp311-cp311-win_amd64.whl", hash = "sha256:2b7c57a4dfc4f16f7142221afe5ba4e093e09e728ca65c51f5620c9aaeb9a617"},
+ {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1"},
+ {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4"},
+ {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac07bad82163452a6884fe8fa0963fb98c2346ba78d779ec06bd7a6262132aee"},
+ {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5dfb42c4604dddc8e4305050aa6deb084540643ed5804d7455b5df8fe16f5e5"},
+ {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ea3d8a3d18833cf4304cd2fc9cbb1efe188ca9b5efef2bdac7adc20594a0e46b"},
+ {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d050b3361367a06d752db6ead6e7edeb0009be66bc3bae0ee9d97fb326badc2a"},
+ {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bec0a414d016ac1a18862a519e54b2fd0fc8bbfd6890376898a6c0891dd82e9f"},
+ {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:58c98fee265677f63a4385256a6d7683ab1832f3ddd1e66fe948d5880c21a169"},
+ {file = "MarkupSafe-2.1.5-cp312-cp312-win32.whl", hash = "sha256:8590b4ae07a35970728874632fed7bd57b26b0102df2d2b233b6d9d82f6c62ad"},
+ {file = "MarkupSafe-2.1.5-cp312-cp312-win_amd64.whl", hash = "sha256:823b65d8706e32ad2df51ed89496147a42a2a6e01c13cfb6ffb8b1e92bc910bb"},
+ {file = "MarkupSafe-2.1.5.tar.gz", hash = "sha256:d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b"},
+]
+
+[[package]]
+name = "mdit-py-plugins"
+version = "0.4.0"
+requires_python = ">=3.8"
+summary = "Collection of plugins for markdown-it-py"
+dependencies = [
+ "markdown-it-py<4.0.0,>=1.0.0",
+]
+files = [
+ {file = "mdit_py_plugins-0.4.0-py3-none-any.whl", hash = "sha256:b51b3bb70691f57f974e257e367107857a93b36f322a9e6d44ca5bf28ec2def9"},
+ {file = "mdit_py_plugins-0.4.0.tar.gz", hash = "sha256:d8ab27e9aed6c38aa716819fedfde15ca275715955f8a185a8e1cf90fb1d2c1b"},
]
[[package]]
@@ -404,427 +266,279 @@ files = [
]
[[package]]
-name = "mergedeep"
-version = "1.3.4"
-requires_python = ">=3.6"
-summary = "A deep merge function for 🐍."
-files = [
- {file = "mergedeep-1.3.4-py3-none-any.whl", hash = "sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307"},
- {file = "mergedeep-1.3.4.tar.gz", hash = "sha256:0096d52e9dad9939c3d975a774666af186eda617e6ca84df4c94dec30004f2a8"},
-]
-
-[[package]]
-name = "mkdocs"
-version = "1.5.3"
-requires_python = ">=3.7"
-summary = "Project documentation with Markdown."
+name = "myst-parser"
+version = "2.0.0"
+requires_python = ">=3.8"
+summary = "An extended [CommonMark](https://spec.commonmark.org/) compliant parser,"
dependencies = [
- "click>=7.0",
- "colorama>=0.4; platform_system == \"Windows\"",
- "ghp-import>=1.0",
- "importlib-metadata>=4.3; python_version < \"3.10\"",
- "jinja2>=2.11.1",
- "markdown>=3.2.1",
- "markupsafe>=2.0.1",
- "mergedeep>=1.3.4",
- "packaging>=20.5",
- "pathspec>=0.11.1",
- "platformdirs>=2.2.0",
- "pyyaml-env-tag>=0.1",
- "pyyaml>=5.1",
- "watchdog>=2.0",
+ "docutils<0.21,>=0.16",
+ "jinja2",
+ "markdown-it-py~=3.0",
+ "mdit-py-plugins~=0.4",
+ "pyyaml",
+ "sphinx<8,>=6",
]
files = [
- {file = "mkdocs-1.5.3-py3-none-any.whl", hash = "sha256:3b3a78e736b31158d64dbb2f8ba29bd46a379d0c6e324c2246c3bc3d2189cfc1"},
- {file = "mkdocs-1.5.3.tar.gz", hash = "sha256:eb7c99214dcb945313ba30426c2451b735992c73c2e10838f76d09e39ff4d0e2"},
+ {file = "myst_parser-2.0.0-py3-none-any.whl", hash = "sha256:7c36344ae39c8e740dad7fdabf5aa6fc4897a813083c6cc9990044eb93656b14"},
+ {file = "myst_parser-2.0.0.tar.gz", hash = "sha256:ea929a67a6a0b1683cdbe19b8d2e724cd7643f8aa3e7bb18dd65beac3483bead"},
]
[[package]]
-name = "mkdocs-blog-plugin"
-version = "0.25"
-summary = "Keeps a really simple blog section inside your MkDocs site."
+name = "packaging"
+version = "23.2"
+requires_python = ">=3.7"
+summary = "Core utilities for Python packages"
files = [
- {file = "mkdocs-blog-plugin-0.25.tar.gz", hash = "sha256:36dcd804f6ab1314d19c32e46bf21076d5f4425e1bca22f2e735b9b4baaec836"},
+ {file = "packaging-23.2-py3-none-any.whl", hash = "sha256:8c491190033a9af7e1d931d0b5dacc2ef47509b34dd0de67ed209b5203fc88c7"},
+ {file = "packaging-23.2.tar.gz", hash = "sha256:048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5"},
]
[[package]]
-name = "mkdocs-git-authors-plugin"
-version = "0.7.2"
+name = "pygments"
+version = "2.17.2"
requires_python = ">=3.7"
-summary = "Mkdocs plugin to display git authors of a page"
-dependencies = [
- "mkdocs>=1.0",
-]
+summary = "Pygments is a syntax highlighting package written in Python."
files = [
- {file = "mkdocs-git-authors-plugin-0.7.2.tar.gz", hash = "sha256:f541730e4cabdafa0ac758c94d28ba5e8ddca4c859e5de4c89f1226cb6ccd0ad"},
- {file = "mkdocs_git_authors_plugin-0.7.2-py3-none-any.whl", hash = "sha256:c8a2784a867db79ad3b477a96ee96875d17b09192b6d3be71f08df25afff76c4"},
+ {file = "pygments-2.17.2-py3-none-any.whl", hash = "sha256:b27c2826c47d0f3219f29554824c30c5e8945175d888647acd804ddd04af846c"},
+ {file = "pygments-2.17.2.tar.gz", hash = "sha256:da46cec9fd2de5be3a8a784f434e4c4ab670b4ff54d605c4c2717e9d49c4c367"},
]
[[package]]
-name = "mkdocs-git-revision-date-localized-plugin"
-version = "1.2.0"
+name = "pyyaml"
+version = "6.0.1"
requires_python = ">=3.6"
-summary = "Mkdocs plugin that enables displaying the localized date of the last git modification of a markdown file."
-dependencies = [
- "GitPython",
- "babel>=2.7.0",
- "mkdocs>=1.0",
- "pytz",
-]
+summary = "YAML parser and emitter for Python"
files = [
- {file = "mkdocs-git-revision-date-localized-plugin-1.2.0.tar.gz", hash = "sha256:7752edd7c4dcaa9383e9a5b6a4f729831a62d604b0c43b319331127720c6a2bf"},
- {file = "mkdocs_git_revision_date_localized_plugin-1.2.0-py3-none-any.whl", hash = "sha256:540b9c930d8d48630c090b72ac2c3900ac2ed0799b23738a33b88e31f5198fe7"},
+ {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"},
+ {file = "PyYAML-6.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab"},
+ {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"},
+ {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"},
+ {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"},
+ {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"},
+ {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"},
+ {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"},
+ {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"},
+ {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"},
+ {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"},
+ {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"},
+ {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"},
+ {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"},
+ {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"},
+ {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"},
]
[[package]]
-name = "mkdocs-material"
-version = "9.4.2"
-requires_python = ">=3.8"
-summary = "Documentation that simply works"
+name = "requests"
+version = "2.31.0"
+requires_python = ">=3.7"
+summary = "Python HTTP for Humans."
dependencies = [
- "babel~=2.10",
- "colorama~=0.4",
- "jinja2~=3.0",
- "markdown~=3.2",
- "mkdocs-material-extensions~=1.2",
- "mkdocs>=1.5.3,~=1.5",
- "paginate~=0.5",
- "pygments~=2.16",
- "pymdown-extensions~=10.2",
- "regex>=2022.4",
- "requests~=2.26",
-]
-files = [
- {file = "mkdocs_material-9.4.2-py3-none-any.whl", hash = "sha256:8651ff451f84681df9d2e3388906eee63c866576d98d6bb542826f83a091b289"},
- {file = "mkdocs_material-9.4.2.tar.gz", hash = "sha256:d53b17d058e70efd04c281f9b384ca10fb1f0bfecfe85dacdadad891bb826e3d"},
+ "certifi>=2017.4.17",
+ "charset-normalizer<4,>=2",
+ "idna<4,>=2.5",
+ "urllib3<3,>=1.21.1",
]
-
-[[package]]
-name = "mkdocs-material-extensions"
-version = "1.2"
-requires_python = ">=3.7"
-summary = "Extension pack for Python Markdown and MkDocs Material."
files = [
- {file = "mkdocs_material_extensions-1.2-py3-none-any.whl", hash = "sha256:c767bd6d6305f6420a50f0b541b0c9966d52068839af97029be14443849fb8a1"},
- {file = "mkdocs_material_extensions-1.2.tar.gz", hash = "sha256:27e2d1ed2d031426a6e10d5ea06989d67e90bb02acd588bc5673106b5ee5eedf"},
+ {file = "requests-2.31.0-py3-none-any.whl", hash = "sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"},
+ {file = "requests-2.31.0.tar.gz", hash = "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1"},
]
[[package]]
-name = "neoteroi-mkdocs"
-version = "1.0.4"
-requires_python = ">=3.7"
-summary = "Plugins for MkDocs and Python Markdown"
+name = "rich"
+version = "13.7.0"
+requires_python = ">=3.7.0"
+summary = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal"
dependencies = [
- "click",
- "essentials-openapi",
- "httpx",
- "jinja2",
- "mkdocs",
- "rich",
-]
-files = [
- {file = "neoteroi_mkdocs-1.0.4-py3-none-any.whl", hash = "sha256:ed2b93a206173b10cd5635e050ce0d8e83df0e51cfd5ee6d41751bfcaa4fe197"},
- {file = "neoteroi_mkdocs-1.0.4.tar.gz", hash = "sha256:3825bcecc4b2c7755ef6adbf96d754762dafd76db508fdd3a23533c88e744228"},
+ "markdown-it-py>=2.2.0",
+ "pygments<3.0.0,>=2.13.0",
]
-
-[[package]]
-name = "packaging"
-version = "23.1"
-requires_python = ">=3.7"
-summary = "Core utilities for Python packages"
files = [
- {file = "packaging-23.1-py3-none-any.whl", hash = "sha256:994793af429502c4ea2ebf6bf664629d07c1a9fe974af92966e4b8d2df7edc61"},
- {file = "packaging-23.1.tar.gz", hash = "sha256:a392980d2b6cffa644431898be54b0045151319d1e7ec34f0cfed48767dd334f"},
+ {file = "rich-13.7.0-py3-none-any.whl", hash = "sha256:6da14c108c4866ee9520bbffa71f6fe3962e193b7da68720583850cd4548e235"},
+ {file = "rich-13.7.0.tar.gz", hash = "sha256:5cb5123b5cf9ee70584244246816e9114227e0b98ad9176eede6ad54bf5403fa"},
]
[[package]]
-name = "paginate"
-version = "0.5.6"
-summary = "Divides large result sets into pages for easier browsing"
+name = "setuptools"
+version = "69.1.1"
+requires_python = ">=3.8"
+summary = "Easily download, build, install, upgrade, and uninstall Python packages"
files = [
- {file = "paginate-0.5.6.tar.gz", hash = "sha256:5e6007b6a9398177a7e1648d04fdd9f8c9766a1a945bceac82f1929e8c78af2d"},
+ {file = "setuptools-69.1.1-py3-none-any.whl", hash = "sha256:02fa291a0471b3a18b2b2481ed902af520c69e8ae0919c13da936542754b4c56"},
+ {file = "setuptools-69.1.1.tar.gz", hash = "sha256:5c0806c7d9af348e6dd3777b4f4dbb42c7ad85b190104837488eab9a7c945cf8"},
]
[[package]]
-name = "pathspec"
-version = "0.11.2"
-requires_python = ">=3.7"
-summary = "Utility library for gitignore style pattern matching of file paths."
+name = "six"
+version = "1.16.0"
+requires_python = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*"
+summary = "Python 2 and 3 compatibility utilities"
files = [
- {file = "pathspec-0.11.2-py3-none-any.whl", hash = "sha256:1d6ed233af05e679efb96b1851550ea95bbb64b7c490b0f5aa52996c11e92a20"},
- {file = "pathspec-0.11.2.tar.gz", hash = "sha256:e0d8d0ac2f12da61956eb2306b69f9469b42f4deb0f3cb6ed47b9cce9996ced3"},
+ {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"},
+ {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"},
]
[[package]]
-name = "platformdirs"
-version = "3.10.0"
-requires_python = ">=3.7"
-summary = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
+name = "snowballstemmer"
+version = "2.2.0"
+summary = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms."
files = [
- {file = "platformdirs-3.10.0-py3-none-any.whl", hash = "sha256:d7c24979f292f916dc9cbf8648319032f551ea8c49a4c9bf2fb556a02070ec1d"},
- {file = "platformdirs-3.10.0.tar.gz", hash = "sha256:b45696dab2d7cc691a3226759c0d3b00c47c8b6e293d96f6436f733303f77f6d"},
+ {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"},
+ {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"},
]
[[package]]
-name = "pluggy"
-version = "1.3.0"
+name = "soupsieve"
+version = "2.5"
requires_python = ">=3.8"
-summary = "plugin and hook calling mechanisms for python"
-files = [
- {file = "pluggy-1.3.0-py3-none-any.whl", hash = "sha256:d89c696a773f8bd377d18e5ecda92b7a3793cbe66c87060a6fb58c7b6e1061f7"},
- {file = "pluggy-1.3.0.tar.gz", hash = "sha256:cf61ae8f126ac6f7c451172cf30e3e43d3ca77615509771b3a984a0730651e12"},
-]
-
-[[package]]
-name = "pygments"
-version = "2.16.1"
-requires_python = ">=3.7"
-summary = "Pygments is a syntax highlighting package written in Python."
+summary = "A modern CSS selector implementation for Beautiful Soup."
files = [
- {file = "Pygments-2.16.1-py3-none-any.whl", hash = "sha256:13fc09fa63bc8d8671a6d247e1eb303c4b343eaee81d861f3404db2935653692"},
- {file = "Pygments-2.16.1.tar.gz", hash = "sha256:1daff0494820c69bc8941e407aa20f577374ee88364ee10a98fdbe0aece96e29"},
+ {file = "soupsieve-2.5-py3-none-any.whl", hash = "sha256:eaa337ff55a1579b6549dc679565eac1e3d000563bcb1c8ab0d0fefbc0c2cdc7"},
+ {file = "soupsieve-2.5.tar.gz", hash = "sha256:5663d5a7b3bfaeee0bc4372e7fc48f9cff4940b3eec54a6451cc5299f1097690"},
]
[[package]]
-name = "pymdown-extensions"
-version = "10.3"
-requires_python = ">=3.8"
-summary = "Extension pack for Python Markdown."
+name = "sphinx"
+version = "7.2.6"
+requires_python = ">=3.9"
+summary = "Python documentation generator"
dependencies = [
- "markdown>=3.2",
- "pyyaml",
+ "Jinja2>=3.0",
+ "Pygments>=2.14",
+ "alabaster<0.8,>=0.7",
+ "babel>=2.9",
+ "colorama>=0.4.5; sys_platform == \"win32\"",
+ "docutils<0.21,>=0.18.1",
+ "imagesize>=1.3",
+ "packaging>=21.0",
+ "requests>=2.25.0",
+ "snowballstemmer>=2.0",
+ "sphinxcontrib-applehelp",
+ "sphinxcontrib-devhelp",
+ "sphinxcontrib-htmlhelp>=2.0.0",
+ "sphinxcontrib-jsmath",
+ "sphinxcontrib-qthelp",
+ "sphinxcontrib-serializinghtml>=1.1.9",
+]
+files = [
+ {file = "sphinx-7.2.6-py3-none-any.whl", hash = "sha256:1e09160a40b956dc623c910118fa636da93bd3ca0b9876a7b3df90f07d691560"},
+ {file = "sphinx-7.2.6.tar.gz", hash = "sha256:9a5160e1ea90688d5963ba09a2dcd8bdd526620edbb65c328728f1b2228d5ab5"},
+]
+
+[[package]]
+name = "sphinx-autobuild"
+version = "2024.2.4"
+requires_python = ">=3.9"
+summary = "Rebuild Sphinx documentation on changes, with live-reload in the browser."
+dependencies = [
+ "colorama",
+ "livereload",
+ "sphinx",
]
files = [
- {file = "pymdown_extensions-10.3-py3-none-any.whl", hash = "sha256:77a82c621c58a83efc49a389159181d570e370fff9f810d3a4766a75fc678b66"},
- {file = "pymdown_extensions-10.3.tar.gz", hash = "sha256:94a0d8a03246712b64698af223848fd80aaf1ae4c4be29c8c61939b0467b5722"},
+ {file = "sphinx_autobuild-2024.2.4-py3-none-any.whl", hash = "sha256:63fd87ab7505872a89aef468ce6503f65e794a195f4ae62269db3b85b72d4854"},
+ {file = "sphinx_autobuild-2024.2.4.tar.gz", hash = "sha256:cb9d2121a176d62d45471624872afc5fad7755ad662738abe400ecf4a7954303"},
]
[[package]]
-name = "pytest"
-version = "7.4.2"
+name = "sphinx-basic-ng"
+version = "1.0.0b2"
requires_python = ">=3.7"
-summary = "pytest: simple powerful testing with Python"
+summary = "A modern skeleton for Sphinx themes."
dependencies = [
- "colorama; sys_platform == \"win32\"",
- "exceptiongroup>=1.0.0rc8; python_version < \"3.11\"",
- "iniconfig",
- "packaging",
- "pluggy<2.0,>=0.12",
- "tomli>=1.0.0; python_version < \"3.11\"",
+ "sphinx>=4.0",
]
files = [
- {file = "pytest-7.4.2-py3-none-any.whl", hash = "sha256:1d881c6124e08ff0a1bb75ba3ec0bfd8b5354a01c194ddd5a0a870a48d99b002"},
- {file = "pytest-7.4.2.tar.gz", hash = "sha256:a766259cfab564a2ad52cb1aae1b881a75c3eb7e34ca3779697c23ed47c47069"},
+ {file = "sphinx_basic_ng-1.0.0b2-py3-none-any.whl", hash = "sha256:eb09aedbabfb650607e9b4b68c9d240b90b1e1be221d6ad71d61c52e29f7932b"},
+ {file = "sphinx_basic_ng-1.0.0b2.tar.gz", hash = "sha256:9ec55a47c90c8c002b5960c57492ec3021f5193cb26cebc2dc4ea226848651c9"},
]
[[package]]
-name = "python-dateutil"
-version = "2.8.2"
-requires_python = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7"
-summary = "Extensions to the standard Python datetime module"
+name = "sphinx-design"
+version = "0.5.0"
+requires_python = ">=3.8"
+summary = "A sphinx extension for designing beautiful, view size responsive web components."
dependencies = [
- "six>=1.5",
+ "sphinx<8,>=5",
]
files = [
- {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"},
- {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"},
-]
-
-[[package]]
-name = "pytz"
-version = "2023.3.post1"
-summary = "World timezone definitions, modern and historical"
-files = [
- {file = "pytz-2023.3.post1-py2.py3-none-any.whl", hash = "sha256:ce42d816b81b68506614c11e8937d3aa9e41007ceb50bfdcb0749b921bf646c7"},
- {file = "pytz-2023.3.post1.tar.gz", hash = "sha256:7b4fddbeb94a1eba4b557da24f19fdf9db575192544270a9101d8509f9f43d7b"},
-]
-
-[[package]]
-name = "pyyaml"
-version = "6.0.1"
-requires_python = ">=3.6"
-summary = "YAML parser and emitter for Python"
-files = [
- {file = "PyYAML-6.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d858aa552c999bc8a8d57426ed01e40bef403cd8ccdd0fc5f6f04a00414cac2a"},
- {file = "PyYAML-6.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fd66fc5d0da6d9815ba2cebeb4205f95818ff4b79c3ebe268e75d961704af52f"},
- {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"},
- {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"},
- {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"},
- {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"},
- {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"},
- {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"},
- {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"},
- {file = "PyYAML-6.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab"},
- {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"},
- {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"},
- {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"},
- {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"},
- {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"},
- {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"},
- {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"},
- {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"},
- {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"},
- {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"},
- {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"},
- {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"},
- {file = "PyYAML-6.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d4c7e777c441b20e32f52bd377e0c409713e8bb1386e1099c2415f26e479595"},
- {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"},
- {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"},
- {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"},
- {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"},
- {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"},
- {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"},
- {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"},
- {file = "PyYAML-6.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c8098ddcc2a85b61647b2590f825f3db38891662cfc2fc776415143f599bb859"},
- {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"},
- {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"},
- {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"},
- {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"},
- {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"},
- {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"},
- {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"},
+ {file = "sphinx_design-0.5.0-py3-none-any.whl", hash = "sha256:1af1267b4cea2eedd6724614f19dcc88fe2e15aff65d06b2f6252cee9c4f4c1e"},
+ {file = "sphinx_design-0.5.0.tar.gz", hash = "sha256:e8e513acea6f92d15c6de3b34e954458f245b8e761b45b63950f65373352ab00"},
]
[[package]]
-name = "pyyaml-env-tag"
-version = "0.1"
-requires_python = ">=3.6"
-summary = "A custom YAML tag for referencing environment variables in YAML files. "
+name = "sphinx-intl"
+version = "2.1.0"
+requires_python = ">=3.7"
+summary = "Sphinx utility that make it easy to translate and to apply translation."
dependencies = [
- "pyyaml",
+ "babel",
+ "click",
+ "setuptools",
+ "sphinx",
]
files = [
- {file = "pyyaml_env_tag-0.1-py3-none-any.whl", hash = "sha256:af31106dec8a4d68c60207c1886031cbf839b68aa7abccdb19868200532c2069"},
- {file = "pyyaml_env_tag-0.1.tar.gz", hash = "sha256:70092675bda14fdec33b31ba77e7543de9ddc88f2e5b99160396572d11525bdb"},
+ {file = "sphinx-intl-2.1.0.tar.gz", hash = "sha256:9d9849ae42515b39786824e99f1e30db0404c377b01bb022690fc932b0221c02"},
+ {file = "sphinx_intl-2.1.0-py3-none-any.whl", hash = "sha256:9798946b995989de691387651d70c3fc191275b587e2e519655541edfd7bbd68"},
]
[[package]]
-name = "regex"
-version = "2023.8.8"
-requires_python = ">=3.6"
-summary = "Alternative regular expression module, to replace re."
-files = [
- {file = "regex-2023.8.8-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:88900f521c645f784260a8d346e12a1590f79e96403971241e64c3a265c8ecdb"},
- {file = "regex-2023.8.8-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:3611576aff55918af2697410ff0293d6071b7e00f4b09e005d614686ac4cd57c"},
- {file = "regex-2023.8.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b8a0ccc8f2698f120e9e5742f4b38dc944c38744d4bdfc427616f3a163dd9de5"},
- {file = "regex-2023.8.8-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c662a4cbdd6280ee56f841f14620787215a171c4e2d1744c9528bed8f5816c96"},
- {file = "regex-2023.8.8-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cf0633e4a1b667bfe0bb10b5e53fe0d5f34a6243ea2530eb342491f1adf4f739"},
- {file = "regex-2023.8.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:551ad543fa19e94943c5b2cebc54c73353ffff08228ee5f3376bd27b3d5b9800"},
- {file = "regex-2023.8.8-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:54de2619f5ea58474f2ac211ceea6b615af2d7e4306220d4f3fe690c91988a61"},
- {file = "regex-2023.8.8-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:5ec4b3f0aebbbe2fc0134ee30a791af522a92ad9f164858805a77442d7d18570"},
- {file = "regex-2023.8.8-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:3ae646c35cb9f820491760ac62c25b6d6b496757fda2d51be429e0e7b67ae0ab"},
- {file = "regex-2023.8.8-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:ca339088839582d01654e6f83a637a4b8194d0960477b9769d2ff2cfa0fa36d2"},
- {file = "regex-2023.8.8-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:d9b6627408021452dcd0d2cdf8da0534e19d93d070bfa8b6b4176f99711e7f90"},
- {file = "regex-2023.8.8-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:bd3366aceedf274f765a3a4bc95d6cd97b130d1dda524d8f25225d14123c01db"},
- {file = "regex-2023.8.8-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7aed90a72fc3654fba9bc4b7f851571dcc368120432ad68b226bd593f3f6c0b7"},
- {file = "regex-2023.8.8-cp310-cp310-win32.whl", hash = "sha256:80b80b889cb767cc47f31d2b2f3dec2db8126fbcd0cff31b3925b4dc6609dcdb"},
- {file = "regex-2023.8.8-cp310-cp310-win_amd64.whl", hash = "sha256:b82edc98d107cbc7357da7a5a695901b47d6eb0420e587256ba3ad24b80b7d0b"},
- {file = "regex-2023.8.8-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1e7d84d64c84ad97bf06f3c8cb5e48941f135ace28f450d86af6b6512f1c9a71"},
- {file = "regex-2023.8.8-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ce0f9fbe7d295f9922c0424a3637b88c6c472b75eafeaff6f910494a1fa719ef"},
- {file = "regex-2023.8.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:06c57e14ac723b04458df5956cfb7e2d9caa6e9d353c0b4c7d5d54fcb1325c46"},
- {file = "regex-2023.8.8-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e7a9aaa5a1267125eef22cef3b63484c3241aaec6f48949b366d26c7250e0357"},
- {file = "regex-2023.8.8-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b7408511fca48a82a119d78a77c2f5eb1b22fe88b0d2450ed0756d194fe7a9a"},
- {file = "regex-2023.8.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14dc6f2d88192a67d708341f3085df6a4f5a0c7b03dec08d763ca2cd86e9f559"},
- {file = "regex-2023.8.8-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:48c640b99213643d141550326f34f0502fedb1798adb3c9eb79650b1ecb2f177"},
- {file = "regex-2023.8.8-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0085da0f6c6393428bf0d9c08d8b1874d805bb55e17cb1dfa5ddb7cfb11140bf"},
- {file = "regex-2023.8.8-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:964b16dcc10c79a4a2be9f1273fcc2684a9eedb3906439720598029a797b46e6"},
- {file = "regex-2023.8.8-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:7ce606c14bb195b0e5108544b540e2c5faed6843367e4ab3deb5c6aa5e681208"},
- {file = "regex-2023.8.8-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:40f029d73b10fac448c73d6eb33d57b34607f40116e9f6e9f0d32e9229b147d7"},
- {file = "regex-2023.8.8-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3b8e6ea6be6d64104d8e9afc34c151926f8182f84e7ac290a93925c0db004bfd"},
- {file = "regex-2023.8.8-cp311-cp311-win32.whl", hash = "sha256:942f8b1f3b223638b02df7df79140646c03938d488fbfb771824f3d05fc083a8"},
- {file = "regex-2023.8.8-cp311-cp311-win_amd64.whl", hash = "sha256:51d8ea2a3a1a8fe4f67de21b8b93757005213e8ac3917567872f2865185fa7fb"},
- {file = "regex-2023.8.8-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f2181c20ef18747d5f4a7ea513e09ea03bdd50884a11ce46066bb90fe4213675"},
- {file = "regex-2023.8.8-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:a2ad5add903eb7cdde2b7c64aaca405f3957ab34f16594d2b78d53b8b1a6a7d6"},
- {file = "regex-2023.8.8-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9233ac249b354c54146e392e8a451e465dd2d967fc773690811d3a8c240ac601"},
- {file = "regex-2023.8.8-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:920974009fb37b20d32afcdf0227a2e707eb83fe418713f7a8b7de038b870d0b"},
- {file = "regex-2023.8.8-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd2b6c5dfe0929b6c23dde9624483380b170b6e34ed79054ad131b20203a1a63"},
- {file = "regex-2023.8.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:96979d753b1dc3b2169003e1854dc67bfc86edf93c01e84757927f810b8c3c93"},
- {file = "regex-2023.8.8-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2ae54a338191e1356253e7883d9d19f8679b6143703086245fb14d1f20196be9"},
- {file = "regex-2023.8.8-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:2162ae2eb8b079622176a81b65d486ba50b888271302190870b8cc488587d280"},
- {file = "regex-2023.8.8-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:c884d1a59e69e03b93cf0dfee8794c63d7de0ee8f7ffb76e5f75be8131b6400a"},
- {file = "regex-2023.8.8-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:cf9273e96f3ee2ac89ffcb17627a78f78e7516b08f94dc435844ae72576a276e"},
- {file = "regex-2023.8.8-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:83215147121e15d5f3a45d99abeed9cf1fe16869d5c233b08c56cdf75f43a504"},
- {file = "regex-2023.8.8-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:3f7454aa427b8ab9101f3787eb178057c5250478e39b99540cfc2b889c7d0586"},
- {file = "regex-2023.8.8-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f0640913d2c1044d97e30d7c41728195fc37e54d190c5385eacb52115127b882"},
- {file = "regex-2023.8.8-cp38-cp38-win32.whl", hash = "sha256:0c59122ceccb905a941fb23b087b8eafc5290bf983ebcb14d2301febcbe199c7"},
- {file = "regex-2023.8.8-cp38-cp38-win_amd64.whl", hash = "sha256:c12f6f67495ea05c3d542d119d270007090bad5b843f642d418eb601ec0fa7be"},
- {file = "regex-2023.8.8-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:82cd0a69cd28f6cc3789cc6adeb1027f79526b1ab50b1f6062bbc3a0ccb2dbc3"},
- {file = "regex-2023.8.8-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:bb34d1605f96a245fc39790a117ac1bac8de84ab7691637b26ab2c5efb8f228c"},
- {file = "regex-2023.8.8-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:987b9ac04d0b38ef4f89fbc035e84a7efad9cdd5f1e29024f9289182c8d99e09"},
- {file = "regex-2023.8.8-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9dd6082f4e2aec9b6a0927202c85bc1b09dcab113f97265127c1dc20e2e32495"},
- {file = "regex-2023.8.8-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7eb95fe8222932c10d4436e7a6f7c99991e3fdd9f36c949eff16a69246dee2dc"},
- {file = "regex-2023.8.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7098c524ba9f20717a56a8d551d2ed491ea89cbf37e540759ed3b776a4f8d6eb"},
- {file = "regex-2023.8.8-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4b694430b3f00eb02c594ff5a16db30e054c1b9589a043fe9174584c6efa8033"},
- {file = "regex-2023.8.8-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:b2aeab3895d778155054abea5238d0eb9a72e9242bd4b43f42fd911ef9a13470"},
- {file = "regex-2023.8.8-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:988631b9d78b546e284478c2ec15c8a85960e262e247b35ca5eaf7ee22f6050a"},
- {file = "regex-2023.8.8-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:67ecd894e56a0c6108ec5ab1d8fa8418ec0cff45844a855966b875d1039a2e34"},
- {file = "regex-2023.8.8-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:14898830f0a0eb67cae2bbbc787c1a7d6e34ecc06fbd39d3af5fe29a4468e2c9"},
- {file = "regex-2023.8.8-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:f2200e00b62568cfd920127782c61bc1c546062a879cdc741cfcc6976668dfcf"},
- {file = "regex-2023.8.8-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9691a549c19c22d26a4f3b948071e93517bdf86e41b81d8c6ac8a964bb71e5a6"},
- {file = "regex-2023.8.8-cp39-cp39-win32.whl", hash = "sha256:6ab2ed84bf0137927846b37e882745a827458689eb969028af8032b1b3dac78e"},
- {file = "regex-2023.8.8-cp39-cp39-win_amd64.whl", hash = "sha256:5543c055d8ec7801901e1193a51570643d6a6ab8751b1f7dd9af71af467538bb"},
- {file = "regex-2023.8.8.tar.gz", hash = "sha256:fcbdc5f2b0f1cd0f6a56cdb46fe41d2cce1e644e3b68832f3eeebc5fb0f7712e"},
+name = "sphinxcontrib-applehelp"
+version = "1.0.8"
+requires_python = ">=3.9"
+summary = "sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books"
+files = [
+ {file = "sphinxcontrib_applehelp-1.0.8-py3-none-any.whl", hash = "sha256:cb61eb0ec1b61f349e5cc36b2028e9e7ca765be05e49641c97241274753067b4"},
+ {file = "sphinxcontrib_applehelp-1.0.8.tar.gz", hash = "sha256:c40a4f96f3776c4393d933412053962fac2b84f4c99a7982ba42e09576a70619"},
]
[[package]]
-name = "requests"
-version = "2.31.0"
-requires_python = ">=3.7"
-summary = "Python HTTP for Humans."
-dependencies = [
- "certifi>=2017.4.17",
- "charset-normalizer<4,>=2",
- "idna<4,>=2.5",
- "urllib3<3,>=1.21.1",
-]
+name = "sphinxcontrib-devhelp"
+version = "1.0.6"
+requires_python = ">=3.9"
+summary = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents"
files = [
- {file = "requests-2.31.0-py3-none-any.whl", hash = "sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"},
- {file = "requests-2.31.0.tar.gz", hash = "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1"},
+ {file = "sphinxcontrib_devhelp-1.0.6-py3-none-any.whl", hash = "sha256:6485d09629944511c893fa11355bda18b742b83a2b181f9a009f7e500595c90f"},
+ {file = "sphinxcontrib_devhelp-1.0.6.tar.gz", hash = "sha256:9893fd3f90506bc4b97bdb977ceb8fbd823989f4316b28c3841ec128544372d3"},
]
[[package]]
-name = "rich"
-version = "13.5.3"
-requires_python = ">=3.7.0"
-summary = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal"
-dependencies = [
- "markdown-it-py>=2.2.0",
- "pygments<3.0.0,>=2.13.0",
- "typing-extensions<5.0,>=4.0.0; python_version < \"3.9\"",
-]
+name = "sphinxcontrib-htmlhelp"
+version = "2.0.5"
+requires_python = ">=3.9"
+summary = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files"
files = [
- {file = "rich-13.5.3-py3-none-any.whl", hash = "sha256:9257b468badc3d347e146a4faa268ff229039d4c2d176ab0cffb4c4fbc73d5d9"},
- {file = "rich-13.5.3.tar.gz", hash = "sha256:87b43e0543149efa1253f485cd845bb7ee54df16c9617b8a893650ab84b4acb6"},
+ {file = "sphinxcontrib_htmlhelp-2.0.5-py3-none-any.whl", hash = "sha256:393f04f112b4d2f53d93448d4bce35842f62b307ccdc549ec1585e950bc35e04"},
+ {file = "sphinxcontrib_htmlhelp-2.0.5.tar.gz", hash = "sha256:0dc87637d5de53dd5eec3a6a01753b1ccf99494bd756aafecd74b4fa9e729015"},
]
[[package]]
-name = "six"
-version = "1.16.0"
-requires_python = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*"
-summary = "Python 2 and 3 compatibility utilities"
+name = "sphinxcontrib-jsmath"
+version = "1.0.1"
+requires_python = ">=3.5"
+summary = "A sphinx extension which renders display math in HTML via JavaScript"
files = [
- {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"},
- {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"},
+ {file = "sphinxcontrib-jsmath-1.0.1.tar.gz", hash = "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"},
+ {file = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl", hash = "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"},
]
[[package]]
-name = "smmap"
-version = "5.0.1"
-requires_python = ">=3.7"
-summary = "A pure Python implementation of a sliding window memory map manager"
+name = "sphinxcontrib-qthelp"
+version = "1.0.7"
+requires_python = ">=3.9"
+summary = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents"
files = [
- {file = "smmap-5.0.1-py3-none-any.whl", hash = "sha256:e6d8668fa5f93e706934a62d7b4db19c8d9eb8cf2adbb75ef1b675aa332b69da"},
- {file = "smmap-5.0.1.tar.gz", hash = "sha256:dceeb6c0028fdb6734471eb07c0cd2aae706ccaecab45965ee83f11c8d3b1f62"},
+ {file = "sphinxcontrib_qthelp-1.0.7-py3-none-any.whl", hash = "sha256:e2ae3b5c492d58fcbd73281fbd27e34b8393ec34a073c792642cd8e529288182"},
+ {file = "sphinxcontrib_qthelp-1.0.7.tar.gz", hash = "sha256:053dedc38823a80a7209a80860b16b722e9e0209e32fea98c90e4e6624588ed6"},
]
[[package]]
-name = "sniffio"
-version = "1.3.0"
-requires_python = ">=3.7"
-summary = "Sniff out which async library your code is running under"
+name = "sphinxcontrib-serializinghtml"
+version = "1.1.10"
+requires_python = ">=3.9"
+summary = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)"
files = [
- {file = "sniffio-1.3.0-py3-none-any.whl", hash = "sha256:eecefdce1e5bbfb7ad2eeaabf7c1eeb404d7757c379bd1f7e5cce9d8bf425384"},
- {file = "sniffio-1.3.0.tar.gz", hash = "sha256:e60305c5e5d314f5389259b7f22aaa33d8f7dee49763119234af3755c55b9101"},
+ {file = "sphinxcontrib_serializinghtml-1.1.10-py3-none-any.whl", hash = "sha256:326369b8df80a7d2d8d7f99aa5ac577f51ea51556ed974e7716cfd4fca3f6cb7"},
+ {file = "sphinxcontrib_serializinghtml-1.1.10.tar.gz", hash = "sha256:93f3f5dc458b91b192fe10c397e324f262cf163d79f3282c158e8436a2c4511f"},
]
[[package]]
@@ -838,65 +552,30 @@ files = [
]
[[package]]
-name = "typing-extensions"
-version = "4.8.0"
-requires_python = ">=3.8"
-summary = "Backported and Experimental Type Hints for Python 3.8+"
+name = "tornado"
+version = "6.4"
+requires_python = ">= 3.8"
+summary = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed."
files = [
- {file = "typing_extensions-4.8.0-py3-none-any.whl", hash = "sha256:8f92fc8806f9a6b641eaa5318da32b44d401efaac0f6678c9bc448ba3605faa0"},
- {file = "typing_extensions-4.8.0.tar.gz", hash = "sha256:df8e4339e9cb77357558cbdbceca33c303714cf861d1eef15e1070055ae8b7ef"},
+ {file = "tornado-6.4-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:02ccefc7d8211e5a7f9e8bc3f9e5b0ad6262ba2fbb683a6443ecc804e5224ce0"},
+ {file = "tornado-6.4-cp38-abi3-macosx_10_9_x86_64.whl", hash = "sha256:27787de946a9cffd63ce5814c33f734c627a87072ec7eed71f7fc4417bb16263"},
+ {file = "tornado-6.4-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f7894c581ecdcf91666a0912f18ce5e757213999e183ebfc2c3fdbf4d5bd764e"},
+ {file = "tornado-6.4-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e43bc2e5370a6a8e413e1e1cd0c91bedc5bd62a74a532371042a18ef19e10579"},
+ {file = "tornado-6.4-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f0251554cdd50b4b44362f73ad5ba7126fc5b2c2895cc62b14a1c2d7ea32f212"},
+ {file = "tornado-6.4-cp38-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:fd03192e287fbd0899dd8f81c6fb9cbbc69194d2074b38f384cb6fa72b80e9c2"},
+ {file = "tornado-6.4-cp38-abi3-musllinux_1_1_i686.whl", hash = "sha256:88b84956273fbd73420e6d4b8d5ccbe913c65d31351b4c004ae362eba06e1f78"},
+ {file = "tornado-6.4-cp38-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:71ddfc23a0e03ef2df1c1397d859868d158c8276a0603b96cf86892bff58149f"},
+ {file = "tornado-6.4-cp38-abi3-win32.whl", hash = "sha256:6f8a6c77900f5ae93d8b4ae1196472d0ccc2775cc1dfdc9e7727889145c45052"},
+ {file = "tornado-6.4-cp38-abi3-win_amd64.whl", hash = "sha256:10aeaa8006333433da48dec9fe417877f8bcc21f48dda8d661ae79da357b2a63"},
+ {file = "tornado-6.4.tar.gz", hash = "sha256:72291fa6e6bc84e626589f1c29d90a5a6d593ef5ae68052ee2ef000dfd273dee"},
]
[[package]]
name = "urllib3"
-version = "2.0.5"
-requires_python = ">=3.7"
-summary = "HTTP library with thread-safe connection pooling, file post, and more."
-files = [
- {file = "urllib3-2.0.5-py3-none-any.whl", hash = "sha256:ef16afa8ba34a1f989db38e1dbbe0c302e4289a47856990d0682e374563ce35e"},
- {file = "urllib3-2.0.5.tar.gz", hash = "sha256:13abf37382ea2ce6fb744d4dad67838eec857c9f4f57009891805e0b5e123594"},
-]
-
-[[package]]
-name = "watchdog"
-version = "3.0.0"
-requires_python = ">=3.7"
-summary = "Filesystem events monitoring"
-files = [
- {file = "watchdog-3.0.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:336adfc6f5cc4e037d52db31194f7581ff744b67382eb6021c868322e32eef41"},
- {file = "watchdog-3.0.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a70a8dcde91be523c35b2bf96196edc5730edb347e374c7de7cd20c43ed95397"},
- {file = "watchdog-3.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:adfdeab2da79ea2f76f87eb42a3ab1966a5313e5a69a0213a3cc06ef692b0e96"},
- {file = "watchdog-3.0.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:2b57a1e730af3156d13b7fdddfc23dea6487fceca29fc75c5a868beed29177ae"},
- {file = "watchdog-3.0.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7ade88d0d778b1b222adebcc0927428f883db07017618a5e684fd03b83342bd9"},
- {file = "watchdog-3.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7e447d172af52ad204d19982739aa2346245cc5ba6f579d16dac4bfec226d2e7"},
- {file = "watchdog-3.0.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8ae9cda41fa114e28faf86cb137d751a17ffd0316d1c34ccf2235e8a84365c7f"},
- {file = "watchdog-3.0.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:25f70b4aa53bd743729c7475d7ec41093a580528b100e9a8c5b5efe8899592fc"},
- {file = "watchdog-3.0.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4f94069eb16657d2c6faada4624c39464f65c05606af50bb7902e036e3219be3"},
- {file = "watchdog-3.0.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7c5f84b5194c24dd573fa6472685b2a27cc5a17fe5f7b6fd40345378ca6812e3"},
- {file = "watchdog-3.0.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3aa7f6a12e831ddfe78cdd4f8996af9cf334fd6346531b16cec61c3b3c0d8da0"},
- {file = "watchdog-3.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:233b5817932685d39a7896b1090353fc8efc1ef99c9c054e46c8002561252fb8"},
- {file = "watchdog-3.0.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:13bbbb462ee42ec3c5723e1205be8ced776f05b100e4737518c67c8325cf6100"},
- {file = "watchdog-3.0.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:8f3ceecd20d71067c7fd4c9e832d4e22584318983cabc013dbf3f70ea95de346"},
- {file = "watchdog-3.0.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:c9d8c8ec7efb887333cf71e328e39cffbf771d8f8f95d308ea4125bf5f90ba64"},
- {file = "watchdog-3.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:0e06ab8858a76e1219e68c7573dfeba9dd1c0219476c5a44d5333b01d7e1743a"},
- {file = "watchdog-3.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:d00e6be486affb5781468457b21a6cbe848c33ef43f9ea4a73b4882e5f188a44"},
- {file = "watchdog-3.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:c07253088265c363d1ddf4b3cdb808d59a0468ecd017770ed716991620b8f77a"},
- {file = "watchdog-3.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:5113334cf8cf0ac8cd45e1f8309a603291b614191c9add34d33075727a967709"},
- {file = "watchdog-3.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:51f90f73b4697bac9c9a78394c3acbbd331ccd3655c11be1a15ae6fe289a8c83"},
- {file = "watchdog-3.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:ba07e92756c97e3aca0912b5cbc4e5ad802f4557212788e72a72a47ff376950d"},
- {file = "watchdog-3.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:d429c2430c93b7903914e4db9a966c7f2b068dd2ebdd2fa9b9ce094c7d459f33"},
- {file = "watchdog-3.0.0-py3-none-win32.whl", hash = "sha256:3ed7c71a9dccfe838c2f0b6314ed0d9b22e77d268c67e015450a29036a81f60f"},
- {file = "watchdog-3.0.0-py3-none-win_amd64.whl", hash = "sha256:4c9956d27be0bb08fc5f30d9d0179a855436e655f046d288e2bcc11adfae893c"},
- {file = "watchdog-3.0.0-py3-none-win_ia64.whl", hash = "sha256:5d9f3a10e02d7371cd929b5d8f11e87d4bad890212ed3901f9b4d68767bee759"},
- {file = "watchdog-3.0.0.tar.gz", hash = "sha256:4d98a320595da7a7c5a18fc48cb633c2e73cda78f93cac2ef42d42bf609a33f9"},
-]
-
-[[package]]
-name = "zipp"
-version = "3.17.0"
+version = "2.2.1"
requires_python = ">=3.8"
-summary = "Backport of pathlib-compatible object wrapper for zip files"
+summary = "HTTP library with thread-safe connection pooling, file post, and more."
files = [
- {file = "zipp-3.17.0-py3-none-any.whl", hash = "sha256:0e923e726174922dce09c53c59ad483ff7bbb8e572e00c7f7c46b88556409f31"},
- {file = "zipp-3.17.0.tar.gz", hash = "sha256:84e64a1c28cf7e91ed2078bb8cc8c259cb19b76942096c8d7b84947690cabaf0"},
+ {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"},
+ {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"},
]
diff --git a/psi/psi.py b/psi/psi.py
deleted file mode 100644
index 8df0acd..0000000
--- a/psi/psi.py
+++ /dev/null
@@ -1,69 +0,0 @@
-
-from psi.execution import Execution
-
-__all__ = ['psi']
-
-class psi:
- """
- A class representing a Psi object.
-
- Args:
- input: The input value for the Psi object.
-
- Returns:
- None
-
- Example:
- ```python
- obj = Psi("example")
- ```
- """
-
- def __init__(self, input):
- """
- Initializes a Psi object.
-
- Args:
- input: The input value for the Psi object.
-
- Returns:
- None
- """
- self.input = input
- self.execution = Execution(input)
- self.result = None
-
- def execute(self):
- """
- Executes the Psi object.
-
- Returns:
- The result of the execution.
- """
- self.result = self.execution.execute()
- return self.result
-
- def get_result(self):
- """
- Retrieves the result of the Psi object.
-
- Returns:
- The result of the execution.
- """
- return self.result
-
- def set_input(self, input):
- """
- Sets the input value for the Psi object.
-
- Args:
- input: The new input value.
-
- Returns:
- None
- """
- self.input = input
- self.execution = Execution(input)
- self.result = None
-
-
diff --git a/pyproject.toml b/pyproject.toml
index a815413..5fc71fd 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,24 +1,28 @@
[project]
-name = "psi"
+name = "nivis-python"
version = "0.1.0"
-description = "An embedded cli language | Psi reply"
+description = "Python implementation for Nivis."
authors = [
{name = "简律纯", email = "i@jyunko.cn"},
]
dependencies = [
- "mkdocs-material>=9.4.2",
- "mkdocs-blog-plugin>=0.25",
- "mkdocs-git-revision-date-localized-plugin>=1.2.0",
- "mkdocs-git-authors-plugin>=0.7.2",
- "mkdocs-material-extensions>=1.2",
- "neoteroi-mkdocs>=1.0.4",
- "docutils>=0.20.1",
- "pytest>=7.4.2",
+ "infini>=2.0.4",
]
-requires-python = ">=3.8"
+requires-python = ">=3.11"
readme = "README.md"
license = {text = "MIT"}
[build-system]
requires = ["pdm-backend"]
build-backend = "pdm.backend"
+
+[tool.pdm.dev-dependencies]
+docs = [
+ "furo>=2024.1.29",
+ "sphinx-autobuild>=2024.2.4",
+ "myst-parser>=2.0.0",
+ "sphinx>=7.2.6",
+ "tomli>=2.0.1",
+ "sphinx-design>=0.5.0",
+ "sphinx-intl>=2.1.0",
+]
diff --git a/readme.rst b/readme.rst
index 1cf0dd8..e8ddeec 100644
--- a/readme.rst
+++ b/readme.rst
@@ -1,104 +1,3 @@
-Psi CLI Language
-========================
+❄ Nivis
+=======
- Python Implementation of Psi.
-
-Psi is a new programming language designed with simplicity, flexibility, and performance in mind. It provides a clean and intuitive syntax that is easy to read and write, making it an excellent choice for both beginners and experienced programmers.
-
-
-Features
---------
-
-- `Lexer Module`_: The lexer module is responsible for converting the source code into a sequence of tokens. It recognizes the basic elements of the language such as identifiers, keywords, operators, and literals. ``['OPERATOR', 'IDENTIFIER', 'SEPARATOR', 'SEPARATOR', 'CONTROL', 'IDENTIFIER', 'OPERATOR', 'INTEGER', 'SEPARATOR', 'IDENTIFIER', 'SEPARATOR', 'IDENTIFIER', 'OPERATOR', 'IDENTIFIER', 'SEPARATOR', 'IDENTIFIER', 'SEPARATOR', 'EOF']``
-
-- `Parser Module`_: The parser module takes the sequence of tokens generated by the lexer module and transforms it into an Abstract Syntax Tree (AST). The AST is a tree-like data structure that represents the source code in a way that is closer to the syntactic structure of the programming language.
-
-- `Built-in Types Module`_: This module defines the built-in types of the Psi language, such as lists and dictionaries. It provides functions for creating and manipulating instances of these types.
-
-- `Error Handling Module`_: This module provides a mechanism for catching and handling errors during runtime. It defines a set of exception classes and functions for throwing and catching these exceptions.
-
-- `Execution Environment Module`_: This module defines the execution environment of the Psi language, including the scope and lifecycle of variables. It provides functions for defining and looking up variables in the execution environment.
-
-- `Interpreter Module`_: The main task of this module is to traverse the AST and perform the corresponding operations in the execution environment.
-
-- `Mathematics Foundation Module`_: This module provides basic mathematical functions and constants, such as addition, subtraction, multiplication, and division.
-
-- `Documentation Module`_: This module uses reStructuredText and Sphinx to build the documentation, providing API interface descriptions and usage examples.
-
-.. _`Lexer Module`: https://github.com/HydroRoll-Team/psi/blob/main/psi/lexer.py
-.. _`Parser Module`: https://github.com/HydroRoll-Team/psi/blob/main/psi/parsers.py
-.. _`Built-in Types Module`: https://github.com/HydroRoll-Team/psi/blob/main/psi/type.py
-.. _`Error Handling Module`: https://github.com/HydroRoll-Team/psi/blob/main/psi/exception.py
-.. _`Execution Environment Module`: https://github.com/HydroRoll-Team/psi/blob/main/psi/execution.py
-.. _`Interpreter Module`: https://github.com/HydroRoll-Team/psi/blob/main/psi/interpreter.py
-.. _`Mathematics Foundation Module`: https://github.com/HydroRoll-Team/psi/blob/main/psi/mathematics.py
-.. _`Documentation Module`: https://github.com/HydroRoll-Team/psi/blob/main/docs
-
-
-Getting Started
----------------
-
-To get started with Psi, you can clone the repository and follow the instructions in the README file. The repository includes a comprehensive set of examples that demonstrate the various features of the language.
-
-.. @TODO 完整的Keywords列表
-
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| *Data Structures* | *Data Types* | *keywords* | *Special Characters* |
-+=====================+=====================+=========================================+=============================================+
-| List | Integer | ``reply`` ``ask`` | ``?``: if, ``!``: else, ``|``: condition |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Dictionary | Float | ``import`` ``export`` | ``==`` ``<`` ``>`` ``!=`` ``~=`` ``=`` |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Set | Boolean | ``def`` ``call`` | ``&``: parallel, ``~``: delay |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Tuple | String | ``list`` ``dict`` ``set`` ``tuple`` | ``#`` ``""""...""""`` |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Array | Null | ``try`` ``catch`` ``assert`` | ``>>``: output stream, ``<<``: input stream |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Queue | Object | ``alias`` | ``@``: hook events |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Stack | Function | ``wait`` ``async`` ``cancel`` ``yield`` | ``*``: repeat |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Graph | Class | ``match`` ``search`` ``replace`` | ``&&``: and, ``||``: or, ``!``: not |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Tree | Interface | ``namespace`` | ``{}``: code block, refer |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| LinkedList | Enum | ``loop`` ``break`` ``continue`` | ``=>``: functional program |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-
-
-Contributing
-------------
-
-Contributions to the Psi project are welcome. If you have a feature request, bug report, or proposal for improvement, please open an issue on the project's GitHub page. If you wish to contribute code, please fork the repository and submit a pull request.
-
-How to build docs
-^^^^^^^^^^^^^^^^^
-
-::
-
- git clone https://github.com/HydroRoll-Team/psi.git
- cd docs
- pip install -r requirements.txt
- # mkdocs build
- mkdocs serve
-
-
-Documentation
--------------
-
-Psi documentation is available at `psi.retrofor <https://psi.retrofor.space>`_.
-
-You can also view it throw the following links:
-
- `vercel-1 psi-alpha <https://psi-alpha.vercel.app>`_
-
- `vercel-2 psi-retrofor <https://psi-retrofor.vercel.app>`_
-
- `gh-pages from HydroRoll-Team <https://hydroroll-team.github.io/psi>`_
-
-
-License
--------
-
-Psi is open-source software, licensed under the MIT license. This means you are free to use, modify, and distribute it under the terms of this license.
diff --git a/readme_cn.rst b/readme_cn.rst
deleted file mode 100644
index 7330447..0000000
--- a/readme_cn.rst
+++ /dev/null
@@ -1,97 +0,0 @@
-Psi CLI 语言
-========================
-
-Psi 是一门新的编程语言,在设计时考虑了简单性、灵活性和性能。它提供了一种简洁直观的语法,易于读写,使其成为初学者和经验丰富的程序员的绝佳选择。
-
-特征
---------
-
-- `词法分析器模块`_: 词法分析器模块负责将源代码转换为一系列标记。它识别语言的基本元素,例如标识符、关键字、运算符和文字。
-
-- `程序解析器模块`_: 程序分析器模块采用词法分析器模块生成的标记序列,并将其转换为抽象语法树(Abstract Syntax Tree,后译 AST)。AST 是一种树状数据结构,它以更接近编程语言语法结构的方式表示源代码。``['OPERATOR', 'IDENTIFIER', 'SEPARATOR', 'SEPARATOR', 'CONTROL', 'IDENTIFIER', 'OPERATOR', 'INTEGER', 'SEPARATOR', 'IDENTIFIER', 'SEPARATOR', 'IDENTIFIER', 'OPERATOR', 'IDENTIFIER', 'SEPARATOR', 'IDENTIFIER', 'SEPARATOR', 'EOF']``
-
-- `内置类型模块`_: 该模块定义了 Psi 语言的内置类型,例如列表和字典。它提供了用于创建和操作这些类型的实例的函数。
-
-- `错误处理模块`_: 此模块提供在运行程序时捕获和处理错误的机制。它定义了一组异常类和函数,用于抛出和捕获这些异常。
-
-- `执行环境模块`_: 该模块定义了 Psi 语言的执行环境,包括变量的范围和生命周期。它提供了用于在执行环境中定义和查找变量的函数。
-
-- `解释器模块`_: 该模块的主要作用是遍历 AST 并在执行环境中执行相应的操作。
-
-- `数学基础模块`_: 该模块提供基本的数学函数和常数,如加法、减法、乘法和除法。
-
-- `文档模块`_: 该模块使用 reStructuredText 和 Sphinx 构建文档,提供 API 接口描述和使用示例。
-
-.. _`词法分析器模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/lexer.py
-.. _`程序解析器模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/parser.py
-.. _`内置类型模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/type.py
-.. _`错误处理模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/exception.py
-.. _`执行环境模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/execution.py
-.. _`解释器模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/interpreter.py
-.. _`数学基础模块`: https://github.com/HydroRoll-Team/psi/blob/main/psi/mathematics.py
-.. _`文档模块`: https://github.com/HydroRoll-Team/psi/blob/main/docs
-
-开始
----------------
-
-如何使用 Psi ?你可以克隆存储库并按照自述文件中的说明进行操作。该存储库包括一组完整的示例,用于演示该语言的各种功能。
-
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| *数据结构* | *数据类型* | *关键字* | *特殊字符* |
-+=====================+=====================+=========================================+=============================================+
-| List | Integer | ``reply`` ``ask`` | ``?``: if, ``!``: else, ``|``: condition |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Dictionary | Float | ``import`` ``export`` | ``==`` ``<`` ``>`` ``!=`` ``~=`` ``=`` |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Set | Boolean | ``def`` ``call`` | ``&``: parallel, ``~``: delay |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Tuple | String | ``list`` ``dict`` ``set`` ``tuple`` | ``#`` ``""""...""""`` |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Array | Null | ``try`` ``catch`` ``assert`` | ``>>``: output stream, ``<<``: input stream |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Queue | Object | ``alias`` | ``@``: hook events |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Stack | Function | ``wait`` ``async`` ``cancel`` ``yield`` | ``*``: repeat |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Graph | Class | ``match`` ``search`` ``replace`` | ``&&``: and, ``||``: or, ``!``: not |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| Tree | Interface | ``namespace`` | ``{}``: code block, refer |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-| LinkedList | Enum | ``loop`` ``break`` ``continue`` | ``=>``: functional program |
-+---------------------+---------------------+-----------------------------------------+---------------------------------------------+
-
-贡献
-------------
-
-欢迎对 Psi 项目做出贡献。如果你有功能请求、错误报告或改进建议,请在项目的 GitHub 页面上提出。如果你希望贡献代码,请分叉存储库并提交拉取请求。
-
-如何构建文档
-^^^^^^^^^^^^^^^^^
-
-::
-
- git clone https://github.com/HydroRoll-Team/psi.git
- cd docs
- pip install -r requirements.txt
- # mkdocs build
- mkdocs serve
-
-
-Documentation
--------------
-
-Psi 文档可在 `psi.retrofor <https://psi.retrofor.space>`_ 上找到。
-
-你还可以通过以下链接查看它:
-
- `vercel-1 psi-alpha <https://psi-alpha.vercel.app>`_
-
- `vercel-2 psi-retrofor <https://psi-retrofor.vercel.app>`_
-
- `gh-pages from HydroRoll-Team <https://hydroroll-team.github.io/psi>`_
-
-
-许可证
--------
-
-Psi是一款开源软件,根据 MIT 许可证获得许可,这意味着你可以根据本许可的条款自由使用、修改和分发它。
diff --git a/docs/docs/changelog/index.md b/src/nivis_python/__init__.py
index e69de29..e69de29 100644
--- a/docs/docs/changelog/index.md
+++ b/src/nivis_python/__init__.py