argenta 1.1.1rc0__tar.gz → 1.1.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. argenta-1.1.2/.github/workflows/mypy.yml +31 -0
  2. {argenta-1.1.1rc0 → argenta-1.1.2}/.github/workflows/ruff.yml +2 -2
  3. {argenta-1.1.1rc0 → argenta-1.1.2}/.github/workflows/tests.yml +5 -5
  4. {argenta-1.1.1rc0 → argenta-1.1.2}/.gitignore +1 -1
  5. argenta-1.1.2/.readthedocs.yaml +13 -0
  6. {argenta-1.1.1rc0 → argenta-1.1.2}/PKG-INFO +12 -5
  7. {argenta-1.1.1rc0 → argenta-1.1.2}/README.de.md +5 -1
  8. {argenta-1.1.1rc0 → argenta-1.1.2}/README.md +8 -2
  9. {argenta-1.1.1rc0 → argenta-1.1.2}/README.ru.md +5 -1
  10. argenta-1.1.2/docs/Makefile +20 -0
  11. argenta-1.1.2/docs/_build/doctrees/environment.pickle +0 -0
  12. argenta-1.1.2/docs/_build/doctrees/index.doctree +0 -0
  13. argenta-1.1.2/docs/_build/html/.buildinfo +4 -0
  14. argenta-1.1.2/docs/_build/html/_sources/index.rst.txt +17 -0
  15. argenta-1.1.2/docs/_build/html/_static/_sphinx_javascript_frameworks_compat.js +123 -0
  16. argenta-1.1.2/docs/_build/html/_static/basic.css +906 -0
  17. argenta-1.1.2/docs/_build/html/_static/css/badge_only.css +1 -0
  18. argenta-1.1.2/docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff +0 -0
  19. argenta-1.1.2/docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff2 +0 -0
  20. argenta-1.1.2/docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff +0 -0
  21. argenta-1.1.2/docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff2 +0 -0
  22. argenta-1.1.2/docs/_build/html/_static/css/fonts/fontawesome-webfont.eot +0 -0
  23. argenta-1.1.2/docs/_build/html/_static/css/fonts/fontawesome-webfont.svg +2671 -0
  24. argenta-1.1.2/docs/_build/html/_static/css/fonts/fontawesome-webfont.ttf +0 -0
  25. argenta-1.1.2/docs/_build/html/_static/css/fonts/fontawesome-webfont.woff +0 -0
  26. argenta-1.1.2/docs/_build/html/_static/css/fonts/fontawesome-webfont.woff2 +0 -0
  27. argenta-1.1.2/docs/_build/html/_static/css/fonts/lato-bold-italic.woff +0 -0
  28. argenta-1.1.2/docs/_build/html/_static/css/fonts/lato-bold-italic.woff2 +0 -0
  29. argenta-1.1.2/docs/_build/html/_static/css/fonts/lato-bold.woff +0 -0
  30. argenta-1.1.2/docs/_build/html/_static/css/fonts/lato-bold.woff2 +0 -0
  31. argenta-1.1.2/docs/_build/html/_static/css/fonts/lato-normal-italic.woff +0 -0
  32. argenta-1.1.2/docs/_build/html/_static/css/fonts/lato-normal-italic.woff2 +0 -0
  33. argenta-1.1.2/docs/_build/html/_static/css/fonts/lato-normal.woff +0 -0
  34. argenta-1.1.2/docs/_build/html/_static/css/fonts/lato-normal.woff2 +0 -0
  35. argenta-1.1.2/docs/_build/html/_static/css/theme.css +4 -0
  36. argenta-1.1.2/docs/_build/html/_static/doctools.js +149 -0
  37. argenta-1.1.2/docs/_build/html/_static/documentation_options.js +13 -0
  38. argenta-1.1.2/docs/_build/html/_static/file.png +0 -0
  39. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-bold.eot +0 -0
  40. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-bold.ttf +0 -0
  41. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-bold.woff +0 -0
  42. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-bold.woff2 +0 -0
  43. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-bolditalic.eot +0 -0
  44. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-bolditalic.ttf +0 -0
  45. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff +0 -0
  46. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff2 +0 -0
  47. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-italic.eot +0 -0
  48. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-italic.ttf +0 -0
  49. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-italic.woff +0 -0
  50. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-italic.woff2 +0 -0
  51. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-regular.eot +0 -0
  52. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-regular.ttf +0 -0
  53. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-regular.woff +0 -0
  54. argenta-1.1.2/docs/_build/html/_static/fonts/Lato/lato-regular.woff2 +0 -0
  55. argenta-1.1.2/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot +0 -0
  56. argenta-1.1.2/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf +0 -0
  57. argenta-1.1.2/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff +0 -0
  58. argenta-1.1.2/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2 +0 -0
  59. argenta-1.1.2/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot +0 -0
  60. argenta-1.1.2/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf +0 -0
  61. argenta-1.1.2/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff +0 -0
  62. argenta-1.1.2/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2 +0 -0
  63. argenta-1.1.2/docs/_build/html/_static/jquery.js +2 -0
  64. argenta-1.1.2/docs/_build/html/_static/js/badge_only.js +1 -0
  65. argenta-1.1.2/docs/_build/html/_static/js/theme.js +1 -0
  66. argenta-1.1.2/docs/_build/html/_static/js/versions.js +228 -0
  67. argenta-1.1.2/docs/_build/html/_static/language_data.js +192 -0
  68. argenta-1.1.2/docs/_build/html/_static/minus.png +0 -0
  69. argenta-1.1.2/docs/_build/html/_static/plus.png +0 -0
  70. argenta-1.1.2/docs/_build/html/_static/pygments.css +75 -0
  71. argenta-1.1.2/docs/_build/html/_static/searchtools.js +635 -0
  72. argenta-1.1.2/docs/_build/html/_static/sphinx_highlight.js +154 -0
  73. argenta-1.1.2/docs/_build/html/genindex.html +102 -0
  74. argenta-1.1.2/docs/_build/html/index.html +109 -0
  75. argenta-1.1.2/docs/_build/html/objects.inv +0 -0
  76. argenta-1.1.2/docs/_build/html/search.html +117 -0
  77. argenta-1.1.2/docs/_build/html/searchindex.js +1 -0
  78. argenta-1.1.2/docs/conf.py +27 -0
  79. argenta-1.1.2/docs/index.rst +17 -0
  80. argenta-1.1.2/docs/make.bat +35 -0
  81. argenta-1.1.2/docs/requirements.txt +2 -0
  82. argenta-1.1.2/metrics_tests/time_of_precycle_setup.py +33 -0
  83. argenta-1.1.2/mock/local_test.py +3 -0
  84. argenta-1.1.2/mock/mock_app/main.py +39 -0
  85. argenta-1.1.2/mock/mock_app/routers.py +27 -0
  86. {argenta-1.1.1rc0 → argenta-1.1.2}/pyproject.toml +15 -6
  87. argenta-1.1.2/src/argenta/__init__.py +6 -0
  88. argenta-1.1.2/src/argenta/app/__init__.py +12 -0
  89. {argenta-1.1.1rc0 → argenta-1.1.2}/src/argenta/app/autocompleter/entity.py +18 -19
  90. {argenta-1.1.1rc0 → argenta-1.1.2}/src/argenta/app/defaults.py +0 -1
  91. {argenta-1.1.1rc0 → argenta-1.1.2}/src/argenta/app/dividing_line/models.py +5 -5
  92. {argenta-1.1.1rc0 → argenta-1.1.2}/src/argenta/app/models.py +226 -140
  93. argenta-1.1.2/src/argenta/app/protocols.py +22 -0
  94. argenta-1.1.2/src/argenta/app/registered_routers/entity.py +27 -0
  95. argenta-1.1.2/src/argenta/command/__init__.py +12 -0
  96. argenta-1.1.2/src/argenta/command/exceptions.py +49 -0
  97. argenta-1.1.2/src/argenta/command/flag/__init__.py +11 -0
  98. argenta-1.1.2/src/argenta/command/flag/defaults.py +27 -0
  99. argenta-1.1.2/src/argenta/command/flag/flags/__init__.py +10 -0
  100. argenta-1.1.2/src/argenta/command/flag/flags/models.py +106 -0
  101. argenta-1.1.2/src/argenta/command/flag/models.py +119 -0
  102. argenta-1.1.2/src/argenta/command/models.py +151 -0
  103. argenta-1.1.2/src/argenta/di/__init__.py +2 -0
  104. argenta-1.1.2/src/argenta/di/integration.py +45 -0
  105. argenta-1.1.2/src/argenta/di/providers.py +14 -0
  106. {argenta-1.1.1rc0 → argenta-1.1.2}/src/argenta/metrics/main.py +2 -2
  107. argenta-1.1.2/src/argenta/orchestrator/__init__.py +4 -0
  108. argenta-1.1.2/src/argenta/orchestrator/argparser/__init__.py +9 -0
  109. argenta-1.1.2/src/argenta/orchestrator/argparser/arguments/__init__.py +8 -0
  110. argenta-1.1.2/src/argenta/orchestrator/argparser/arguments/models.py +82 -0
  111. argenta-1.1.2/src/argenta/orchestrator/argparser/entity.py +78 -0
  112. argenta-1.1.2/src/argenta/orchestrator/entity.py +37 -0
  113. argenta-1.1.2/src/argenta/response/__init__.py +5 -0
  114. argenta-1.1.2/src/argenta/response/entity.py +28 -0
  115. argenta-1.1.2/src/argenta/response/status.py +19 -0
  116. {argenta-1.1.1rc0 → argenta-1.1.2}/src/argenta/router/__init__.py +2 -2
  117. {argenta-1.1.1rc0 → argenta-1.1.2}/src/argenta/router/command_handler/entity.py +9 -27
  118. argenta-1.1.2/src/argenta/router/entity.py +213 -0
  119. {argenta-1.1.1rc0 → argenta-1.1.2}/src/argenta/router/exceptions.py +9 -12
  120. {argenta-1.1.1rc0 → argenta-1.1.2}/tests/system_tests/test_system_handling_non_standard_behavior.py +61 -28
  121. {argenta-1.1.1rc0 → argenta-1.1.2}/tests/system_tests/test_system_handling_normal_behavior.py +46 -30
  122. argenta-1.1.2/tests/unit_tests/test_argparser.py +164 -0
  123. {argenta-1.1.1rc0 → argenta-1.1.2}/tests/unit_tests/test_command.py +14 -13
  124. {argenta-1.1.1rc0 → argenta-1.1.2}/tests/unit_tests/test_dividing_line.py +2 -2
  125. {argenta-1.1.1rc0 → argenta-1.1.2}/tests/unit_tests/test_flag.py +25 -26
  126. argenta-1.1.2/tests/unit_tests/test_router.py +103 -0
  127. argenta-1.1.1rc0/metrics_tests/get_time_of_pre_cycle_setup.py +0 -36
  128. argenta-1.1.1rc0/mock/local_test.py +0 -18
  129. argenta-1.1.1rc0/mock/mock_app/main.py +0 -32
  130. argenta-1.1.1rc0/mock/mock_app/routers.py +0 -39
  131. argenta-1.1.1rc0/src/argenta/app/__init__.py +0 -3
  132. argenta-1.1.1rc0/src/argenta/app/registered_routers/entity.py +0 -34
  133. argenta-1.1.1rc0/src/argenta/command/__init__.py +0 -3
  134. argenta-1.1.1rc0/src/argenta/command/exceptions.py +0 -42
  135. argenta-1.1.1rc0/src/argenta/command/flag/__init__.py +0 -17
  136. argenta-1.1.1rc0/src/argenta/command/flag/defaults.py +0 -32
  137. argenta-1.1.1rc0/src/argenta/command/flag/flags/__init__.py +0 -16
  138. argenta-1.1.1rc0/src/argenta/command/flag/flags/models.py +0 -90
  139. argenta-1.1.1rc0/src/argenta/command/flag/models.py +0 -134
  140. argenta-1.1.1rc0/src/argenta/command/models.py +0 -195
  141. argenta-1.1.1rc0/src/argenta/orchestrator/__init__.py +0 -4
  142. argenta-1.1.1rc0/src/argenta/orchestrator/argparser/__init__.py +0 -4
  143. argenta-1.1.1rc0/src/argenta/orchestrator/argparser/arguments/__init__.py +0 -8
  144. argenta-1.1.1rc0/src/argenta/orchestrator/argparser/arguments/models.py +0 -56
  145. argenta-1.1.1rc0/src/argenta/orchestrator/argparser/entity.py +0 -59
  146. argenta-1.1.1rc0/src/argenta/orchestrator/entity.py +0 -35
  147. argenta-1.1.1rc0/src/argenta/response/__init__.py +0 -5
  148. argenta-1.1.1rc0/src/argenta/response/entity.py +0 -29
  149. argenta-1.1.1rc0/src/argenta/response/status.py +0 -8
  150. argenta-1.1.1rc0/src/argenta/router/entity.py +0 -240
  151. argenta-1.1.1rc0/tests/unit_tests/test_router.py +0 -124
  152. {argenta-1.1.1rc0 → argenta-1.1.2}/LICENSE +0 -0
  153. {argenta-1.1.1rc0 → argenta-1.1.2}/imgs/argenta_banner.png +0 -0
  154. {argenta-1.1.1rc0 → argenta-1.1.2}/imgs/argenta_logo.png +0 -0
  155. {argenta-1.1.1rc0 → argenta-1.1.2}/imgs/argenta_logo_strip.png +0 -0
  156. {argenta-1.1.1rc0 → argenta-1.1.2}/imgs/argenta_logo_strip.svg +0 -0
  157. {argenta-1.1.1rc0 → argenta-1.1.2}/imgs/mock_app_preview1.png +0 -0
  158. {argenta-1.1.1rc0 → argenta-1.1.2}/imgs/mock_app_preview2.png +0 -0
  159. {argenta-1.1.1rc0 → argenta-1.1.2}/imgs/mock_app_preview3.png +0 -0
  160. {argenta-1.1.1rc0 → argenta-1.1.2}/imgs/mock_app_preview4.png +0 -0
  161. {argenta-1.1.1rc0 → argenta-1.1.2}/metrics_tests/__init__.py +0 -0
  162. {argenta-1.1.1rc0 → argenta-1.1.2}/mock/__init__.py +0 -0
  163. {argenta-1.1.1rc0 → argenta-1.1.2}/mock/mock_app/__init__.py +0 -0
  164. {argenta-1.1.1rc0 → argenta-1.1.2}/src/__init__.py +0 -0
  165. {argenta-1.1.1rc0 → argenta-1.1.2}/src/argenta/app/autocompleter/__init__.py +0 -0
  166. {argenta-1.1.1rc0 → argenta-1.1.2}/src/argenta/app/dividing_line/__init__.py +0 -0
  167. {argenta-1.1.1rc0/src/argenta → argenta-1.1.2/src/argenta/app/registered_routers}/__init__.py +0 -0
  168. {argenta-1.1.1rc0 → argenta-1.1.2}/src/argenta/metrics/__init__.py +0 -0
  169. /argenta-1.1.1rc0/src/argenta/app/registered_routers/__init__.py → /argenta-1.1.2/src/argenta/py.typed +0 -0
  170. {argenta-1.1.1rc0 → argenta-1.1.2}/src/argenta/router/command_handler/__init__.py +0 -0
  171. {argenta-1.1.1rc0 → argenta-1.1.2}/src/argenta/router/defaults.py +0 -0
  172. {argenta-1.1.1rc0 → argenta-1.1.2}/tests/__init__.py +0 -0
  173. {argenta-1.1.1rc0 → argenta-1.1.2}/tests/system_tests/__init__.py +0 -0
  174. {argenta-1.1.1rc0 → argenta-1.1.2}/tests/unit_tests/__init__.py +0 -0
  175. {argenta-1.1.1rc0 → argenta-1.1.2}/tests/unit_tests/test_app.py +0 -0
@@ -0,0 +1,31 @@
1
+ name: mypy
2
+
3
+ on:
4
+ push:
5
+ branches: [ "main" ]
6
+ pull_request:
7
+ branches: [ "main" ]
8
+
9
+ permissions:
10
+ contents: read
11
+
12
+ jobs:
13
+ build:
14
+
15
+ runs-on: ubuntu-latest
16
+
17
+ steps:
18
+ - uses: actions/checkout@v3
19
+
20
+ - uses: actions/setup-python@v3
21
+ with:
22
+ python-version: "3.13"
23
+
24
+ - name: Install dependencies
25
+ run: |
26
+ python -m pip install --upgrade pip
27
+ pip install mypy
28
+ pip install .
29
+
30
+ - name: Run type checker
31
+ run: mypy -p argenta
@@ -2,9 +2,9 @@ name: ruff
2
2
 
3
3
  on:
4
4
  push:
5
- branches: [ "kolo" ]
5
+ branches: [ "main" ]
6
6
  pull_request:
7
- branches: [ "kolo" ]
7
+ branches: [ "main" ]
8
8
 
9
9
  permissions:
10
10
  contents: read
@@ -2,9 +2,9 @@ name: tests
2
2
 
3
3
  on:
4
4
  push:
5
- branches: [ "kolo" ]
5
+ branches: [ "main" ]
6
6
  pull_request:
7
- branches: [ "kolo" ]
7
+ branches: [ "main" ]
8
8
 
9
9
  permissions:
10
10
  contents: read
@@ -24,8 +24,8 @@ jobs:
24
24
  - name: Install dependencies
25
25
  run: |
26
26
  python -m pip install --upgrade pip
27
- pip install poetry
28
- poetry install
27
+ pip install uv
28
+ uv sync --group dev
29
29
 
30
30
  - name: Run tests
31
- run: poetry run python -m unittest discover
31
+ run: uv run python -m unittest discover
@@ -7,4 +7,4 @@ uv.lock
7
7
  *.hist*
8
8
  build
9
9
  source
10
-
10
+ *cache
@@ -0,0 +1,13 @@
1
+ version: 2
2
+
3
+ build:
4
+ os: ubuntu-22.04
5
+ tools:
6
+ python: "3.12"
7
+
8
+ python:
9
+ install:
10
+ - requirements: docs/requirements.txt
11
+
12
+ sphinx:
13
+ configuration: docs/conf.py
@@ -1,13 +1,14 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: argenta
3
- Version: 1.1.1rc0
3
+ Version: 1.1.2
4
4
  Summary: Python library for building modular CLI applications
5
5
  Author-email: kolo <kolo.is.main@gmail.com>
6
6
  License: MIT
7
7
  License-File: LICENSE
8
- Requires-Python: >=3.8
8
+ Requires-Python: >=3.11
9
9
  Requires-Dist: art<7.0,>=6.4
10
- Requires-Dist: pyreadline3>=3.5.4
10
+ Requires-Dist: dishka>=1.7.2
11
+ Requires-Dist: pyreadline3>=3.5.4; sys_platform == 'win32'
11
12
  Requires-Dist: rich<15.0.0,>=14.0.0
12
13
  Description-Content-Type: text/markdown
13
14
 
@@ -15,9 +16,15 @@ Description-Content-Type: text/markdown
15
16
 
16
17
  ### Library for creating modular CLI applications
17
18
 
18
- #### RU - [README.ru.md](https://github.com/koloideal/Argenta/blob/kolo/README.ru.md) • DE - [README.de.md](https://github.com/koloideal/Argenta/blob/kolo/README.de.md)
19
+ #### RU - [README.ru.md](https://github.com/koloideal/Argenta/blob/main/README.ru.md) • DE - [README.de.md](https://github.com/koloideal/Argenta/blob/main/README.de.md)
19
20
 
20
- ![preview](https://github.com/koloideal/Argenta/blob/kolo/imgs/mock_app_preview4.png?raw=True)
21
+ ---
22
+
23
+ Argenta allows you to encapsulate CLI functionality in isolated, abstracted environments. Eg: you are creating a utility similar to the Metasploit Framework, where the user first logs into a specific scope (for example, selects a module to scan), and then gets access to a set of commands specific only to that context. Argenta provides a simple and concise way to build such an architecture.
24
+
25
+ ---
26
+
27
+ ![preview](https://github.com/koloideal/Argenta/blob/main/imgs/mock_app_preview4.png?raw=True)
21
28
 
22
29
  ---
23
30
 
@@ -2,7 +2,11 @@
2
2
 
3
3
  ### Bibliothek zum Erstellen modularer CLI-Anwendungen
4
4
 
5
- ![preview](https://github.com/koloideal/Argenta/blob/kolo/imgs/mock_app_preview4.png?raw=True)
5
+ Mit Argenta können Sie die CLI-Funktionalität in isolierte, abstrahierte Umgebungen einkapseln. Zum Beispiel: Sie erstellen ein Dienstprogramm ähnlich dem Metasploit Framework, bei dem der Benutzer zuerst in einen bestimmten Scoop eintritt (z. B. ein Modul zum Scannen auswählt) und dann auf eine Reihe von Befehlen zugreift, die nur für diesen Kontext spezifisch sind. Argenta bietet eine einfache und prägnante Möglichkeit, eine solche Architektur zu konstruieren.
6
+
7
+ ---
8
+
9
+ ![preview](https://github.com/koloideal/Argenta/blob/main/imgs/mock_app_preview4.png?raw=True)
6
10
 
7
11
  ---
8
12
 
@@ -2,9 +2,15 @@
2
2
 
3
3
  ### Library for creating modular CLI applications
4
4
 
5
- #### RU - [README.ru.md](https://github.com/koloideal/Argenta/blob/kolo/README.ru.md) • DE - [README.de.md](https://github.com/koloideal/Argenta/blob/kolo/README.de.md)
5
+ #### RU - [README.ru.md](https://github.com/koloideal/Argenta/blob/main/README.ru.md) • DE - [README.de.md](https://github.com/koloideal/Argenta/blob/main/README.de.md)
6
6
 
7
- ![preview](https://github.com/koloideal/Argenta/blob/kolo/imgs/mock_app_preview4.png?raw=True)
7
+ ---
8
+
9
+ Argenta allows you to encapsulate CLI functionality in isolated, abstracted environments. Eg: you are creating a utility similar to the Metasploit Framework, where the user first logs into a specific scope (for example, selects a module to scan), and then gets access to a set of commands specific only to that context. Argenta provides a simple and concise way to build such an architecture.
10
+
11
+ ---
12
+
13
+ ![preview](https://github.com/koloideal/Argenta/blob/main/imgs/mock_app_preview4.png?raw=True)
8
14
 
9
15
  ---
10
16
 
@@ -2,7 +2,11 @@
2
2
 
3
3
  ### Библиотека для создания модульных CLI приложeний
4
4
 
5
- ![preview](https://github.com/koloideal/Argenta/blob/kolo/imgs/mock_app_preview4.png?raw=True)
5
+ Argenta позволяет инкапсулировать CLI фукциональность в изолированные, абстрагированные **среды**. К примеру: вы создаете утилиту, подобную Metasploit Framework, где пользователь сначала входит в определенный скоуп (например, выбирает модуль для сканирования), а затем получает доступ к набору команд, специфичных только для этого контекста. Argenta предоставляет простой и лаконичный способ для построения такой архитектуры.
6
+
7
+ ---
8
+
9
+ ![preview](https://github.com/koloideal/Argenta/blob/main/imgs/mock_app_preview4.png?raw=True)
6
10
 
7
11
  ---
8
12
 
@@ -0,0 +1,20 @@
1
+ # Minimal makefile for Sphinx documentation
2
+ #
3
+
4
+ # You can set these variables from the command line, and also
5
+ # from the environment for the first two.
6
+ SPHINXOPTS ?=
7
+ SPHINXBUILD ?= sphinx-build
8
+ SOURCEDIR = .
9
+ BUILDDIR = _build
10
+
11
+ # Put it first so that "make" without argument is like "make help".
12
+ help:
13
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14
+
15
+ .PHONY: help Makefile
16
+
17
+ # Catch-all target: route all unknown targets to Sphinx using the new
18
+ # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19
+ %: Makefile
20
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
@@ -0,0 +1,4 @@
1
+ # Sphinx build info version 1
2
+ # This file records the configuration used when building these files. When it is not found, a full rebuild will be done.
3
+ config: a7676963520569074adf4bb73b4ff361
4
+ tags: 645f666f9bcd5a90fca523b33c5a78b7
@@ -0,0 +1,17 @@
1
+ .. Argenta documentation master file, created by
2
+ sphinx-quickstart on Sat Oct 11 19:54:43 2025.
3
+ You can adapt this file completely to your liking, but it should at least
4
+ contain the root `toctree` directive.
5
+
6
+ Argenta documentation
7
+ =====================
8
+
9
+ Add your content using ``reStructuredText`` syntax. See the
10
+ `reStructuredText <https://www.sphinx-doc.org/en/master/usage/restructuredtext/index.html>`_
11
+ documentation for details.
12
+
13
+
14
+ .. toctree::
15
+ :maxdepth: 2
16
+ :caption: Contents:
17
+
@@ -0,0 +1,123 @@
1
+ /* Compatability shim for jQuery and underscores.js.
2
+ *
3
+ * Copyright Sphinx contributors
4
+ * Released under the two clause BSD licence
5
+ */
6
+
7
+ /**
8
+ * small helper function to urldecode strings
9
+ *
10
+ * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#Decoding_query_parameters_from_a_URL
11
+ */
12
+ jQuery.urldecode = function(x) {
13
+ if (!x) {
14
+ return x
15
+ }
16
+ return decodeURIComponent(x.replace(/\+/g, ' '));
17
+ };
18
+
19
+ /**
20
+ * small helper function to urlencode strings
21
+ */
22
+ jQuery.urlencode = encodeURIComponent;
23
+
24
+ /**
25
+ * This function returns the parsed url parameters of the
26
+ * current request. Multiple values per key are supported,
27
+ * it will always return arrays of strings for the value parts.
28
+ */
29
+ jQuery.getQueryParameters = function(s) {
30
+ if (typeof s === 'undefined')
31
+ s = document.location.search;
32
+ var parts = s.substr(s.indexOf('?') + 1).split('&');
33
+ var result = {};
34
+ for (var i = 0; i < parts.length; i++) {
35
+ var tmp = parts[i].split('=', 2);
36
+ var key = jQuery.urldecode(tmp[0]);
37
+ var value = jQuery.urldecode(tmp[1]);
38
+ if (key in result)
39
+ result[key].push(value);
40
+ else
41
+ result[key] = [value];
42
+ }
43
+ return result;
44
+ };
45
+
46
+ /**
47
+ * highlight a given string on a jquery object by wrapping it in
48
+ * span elements with the given class name.
49
+ */
50
+ jQuery.fn.highlightText = function(text, className) {
51
+ function highlight(node, addItems) {
52
+ if (node.nodeType === 3) {
53
+ var val = node.nodeValue;
54
+ var pos = val.toLowerCase().indexOf(text);
55
+ if (pos >= 0 &&
56
+ !jQuery(node.parentNode).hasClass(className) &&
57
+ !jQuery(node.parentNode).hasClass("nohighlight")) {
58
+ var span;
59
+ var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg");
60
+ if (isInSVG) {
61
+ span = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
62
+ } else {
63
+ span = document.createElement("span");
64
+ span.className = className;
65
+ }
66
+ span.appendChild(document.createTextNode(val.substr(pos, text.length)));
67
+ node.parentNode.insertBefore(span, node.parentNode.insertBefore(
68
+ document.createTextNode(val.substr(pos + text.length)),
69
+ node.nextSibling));
70
+ node.nodeValue = val.substr(0, pos);
71
+ if (isInSVG) {
72
+ var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect");
73
+ var bbox = node.parentElement.getBBox();
74
+ rect.x.baseVal.value = bbox.x;
75
+ rect.y.baseVal.value = bbox.y;
76
+ rect.width.baseVal.value = bbox.width;
77
+ rect.height.baseVal.value = bbox.height;
78
+ rect.setAttribute('class', className);
79
+ addItems.push({
80
+ "parent": node.parentNode,
81
+ "target": rect});
82
+ }
83
+ }
84
+ }
85
+ else if (!jQuery(node).is("button, select, textarea")) {
86
+ jQuery.each(node.childNodes, function() {
87
+ highlight(this, addItems);
88
+ });
89
+ }
90
+ }
91
+ var addItems = [];
92
+ var result = this.each(function() {
93
+ highlight(this, addItems);
94
+ });
95
+ for (var i = 0; i < addItems.length; ++i) {
96
+ jQuery(addItems[i].parent).before(addItems[i].target);
97
+ }
98
+ return result;
99
+ };
100
+
101
+ /*
102
+ * backward compatibility for jQuery.browser
103
+ * This will be supported until firefox bug is fixed.
104
+ */
105
+ if (!jQuery.browser) {
106
+ jQuery.uaMatch = function(ua) {
107
+ ua = ua.toLowerCase();
108
+
109
+ var match = /(chrome)[ \/]([\w.]+)/.exec(ua) ||
110
+ /(webkit)[ \/]([\w.]+)/.exec(ua) ||
111
+ /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) ||
112
+ /(msie) ([\w.]+)/.exec(ua) ||
113
+ ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) ||
114
+ [];
115
+
116
+ return {
117
+ browser: match[ 1 ] || "",
118
+ version: match[ 2 ] || "0"
119
+ };
120
+ };
121
+ jQuery.browser = {};
122
+ jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true;
123
+ }