diff --git a/cpl-workspace.json b/cpl-workspace.json index 081ff298..6d34e2bd 100644 --- a/cpl-workspace.json +++ b/cpl-workspace.json @@ -25,7 +25,11 @@ "spu": "cpl set-pip-urls", "set-pip-urls": "cpl run set-pip-urls $ARGS; echo '';", - "docs-build": "echo 'Build Documentation'; cd docs/; sphinx-apidoc -o source/ ../src/cpl_core; sphinx-apidoc -o source/ ../src/cpl_query; make clean; make html; rm source/cpl_query.tests.rst;", + "docs-build": "echo 'Build Documentation'; cpl db-core; cpl db-discord; cpl db-query; cpl db-translation; cd docs/; make clean; make html; # rm source/cpl_query.tests.rst;", + "db-core": "cd docs/; sphinx-apidoc -o source/ ../src/cpl_core; cd ../", + "db-discord": "cd docs/; sphinx-apidoc -o source/ ../src/cpl_discord; cd ../", + "db-query": "cd docs/; sphinx-apidoc -o source/ ../src/cpl_query; cd ../", + "db-translation": "cd docs/; sphinx-apidoc -o source/ ../src/cpl_translation; cd ../", "db": "cpl docs-build", "docs-open": "xdg-open $PWD/docs/build/html/index.html &", diff --git a/docs/build/doctrees/cli.generate.doctree b/docs/build/doctrees/cli.generate.doctree index 8148d500..bd1c7d8b 100644 Binary files a/docs/build/doctrees/cli.generate.doctree and b/docs/build/doctrees/cli.generate.doctree differ diff --git a/docs/build/doctrees/cli.new.doctree b/docs/build/doctrees/cli.new.doctree index 9dbd6b98..449ea977 100644 Binary files a/docs/build/doctrees/cli.new.doctree and b/docs/build/doctrees/cli.new.doctree differ diff --git a/docs/build/doctrees/cli.run.doctree b/docs/build/doctrees/cli.run.doctree new file mode 100644 index 00000000..c1463960 Binary files /dev/null and b/docs/build/doctrees/cli.run.doctree differ diff --git a/docs/build/doctrees/cli.start.doctree b/docs/build/doctrees/cli.start.doctree index 85ccbbd0..1bde7025 100644 Binary files a/docs/build/doctrees/cli.start.doctree and b/docs/build/doctrees/cli.start.doctree differ diff --git a/docs/build/doctrees/contributing.doctree b/docs/build/doctrees/contributing.doctree index cf8b7e31..6f477c0f 100644 Binary files a/docs/build/doctrees/contributing.doctree and b/docs/build/doctrees/contributing.doctree differ diff --git a/docs/build/doctrees/cpl_cli.doctree b/docs/build/doctrees/cpl_cli.doctree index 3aff0849..46b5c415 100644 Binary files a/docs/build/doctrees/cpl_cli.doctree and b/docs/build/doctrees/cpl_cli.doctree differ diff --git a/docs/build/doctrees/cpl_core.application.doctree b/docs/build/doctrees/cpl_core.application.doctree index 22d735ef..bdf49dba 100644 Binary files a/docs/build/doctrees/cpl_core.application.doctree and b/docs/build/doctrees/cpl_core.application.doctree differ diff --git a/docs/build/doctrees/cpl_core.database.doctree b/docs/build/doctrees/cpl_core.database.doctree index a8966e31..208ae505 100644 Binary files a/docs/build/doctrees/cpl_core.database.doctree and b/docs/build/doctrees/cpl_core.database.doctree differ diff --git a/docs/build/doctrees/cpl_core.doctree b/docs/build/doctrees/cpl_core.doctree index 367a1667..39eb74a8 100644 Binary files a/docs/build/doctrees/cpl_core.doctree and b/docs/build/doctrees/cpl_core.doctree differ diff --git a/docs/build/doctrees/cpl_core.pipes.doctree b/docs/build/doctrees/cpl_core.pipes.doctree index 0fbc26ff..c19a94da 100644 Binary files a/docs/build/doctrees/cpl_core.pipes.doctree and b/docs/build/doctrees/cpl_core.pipes.doctree differ diff --git a/docs/build/doctrees/cpl_discord.application.doctree b/docs/build/doctrees/cpl_discord.application.doctree new file mode 100644 index 00000000..64d0f8cc Binary files /dev/null and b/docs/build/doctrees/cpl_discord.application.doctree differ diff --git a/docs/build/doctrees/cpl_discord.command.doctree b/docs/build/doctrees/cpl_discord.command.doctree new file mode 100644 index 00000000..d0fe4f61 Binary files /dev/null and b/docs/build/doctrees/cpl_discord.command.doctree differ diff --git a/docs/build/doctrees/cpl_discord.configuration.doctree b/docs/build/doctrees/cpl_discord.configuration.doctree new file mode 100644 index 00000000..0e397e29 Binary files /dev/null and b/docs/build/doctrees/cpl_discord.configuration.doctree differ diff --git a/docs/build/doctrees/cpl_discord.container.doctree b/docs/build/doctrees/cpl_discord.container.doctree new file mode 100644 index 00000000..a3f5ee12 Binary files /dev/null and b/docs/build/doctrees/cpl_discord.container.doctree differ diff --git a/docs/build/doctrees/cpl_discord.doctree b/docs/build/doctrees/cpl_discord.doctree new file mode 100644 index 00000000..a373b278 Binary files /dev/null and b/docs/build/doctrees/cpl_discord.doctree differ diff --git a/docs/build/doctrees/cpl_discord.events.doctree b/docs/build/doctrees/cpl_discord.events.doctree new file mode 100644 index 00000000..00bf809b Binary files /dev/null and b/docs/build/doctrees/cpl_discord.events.doctree differ diff --git a/docs/build/doctrees/cpl_discord.helper.doctree b/docs/build/doctrees/cpl_discord.helper.doctree new file mode 100644 index 00000000..e661717e Binary files /dev/null and b/docs/build/doctrees/cpl_discord.helper.doctree differ diff --git a/docs/build/doctrees/cpl_discord.service.doctree b/docs/build/doctrees/cpl_discord.service.doctree new file mode 100644 index 00000000..8e13fbf2 Binary files /dev/null and b/docs/build/doctrees/cpl_discord.service.doctree differ diff --git a/docs/build/doctrees/cpl_query.base.doctree b/docs/build/doctrees/cpl_query.base.doctree new file mode 100644 index 00000000..3d440b8e Binary files /dev/null and b/docs/build/doctrees/cpl_query.base.doctree differ diff --git a/docs/build/doctrees/cpl_query.doctree b/docs/build/doctrees/cpl_query.doctree index a505b701..3f98dae1 100644 Binary files a/docs/build/doctrees/cpl_query.doctree and b/docs/build/doctrees/cpl_query.doctree differ diff --git a/docs/build/doctrees/cpl_query.enumerable.doctree b/docs/build/doctrees/cpl_query.enumerable.doctree new file mode 100644 index 00000000..db8a26cb Binary files /dev/null and b/docs/build/doctrees/cpl_query.enumerable.doctree differ diff --git a/docs/build/doctrees/cpl_query.exceptions.doctree b/docs/build/doctrees/cpl_query.exceptions.doctree deleted file mode 100644 index cc1ecc2c..00000000 Binary files a/docs/build/doctrees/cpl_query.exceptions.doctree and /dev/null differ diff --git a/docs/build/doctrees/cpl_query.extension.doctree b/docs/build/doctrees/cpl_query.extension.doctree index 64add856..6e010bdc 100644 Binary files a/docs/build/doctrees/cpl_query.extension.doctree and b/docs/build/doctrees/cpl_query.extension.doctree differ diff --git a/docs/build/doctrees/cpl_query.iterable.doctree b/docs/build/doctrees/cpl_query.iterable.doctree new file mode 100644 index 00000000..38b30928 Binary files /dev/null and b/docs/build/doctrees/cpl_query.iterable.doctree differ diff --git a/docs/build/doctrees/cpl_translation.doctree b/docs/build/doctrees/cpl_translation.doctree new file mode 100644 index 00000000..c70dfd3f Binary files /dev/null and b/docs/build/doctrees/cpl_translation.doctree differ diff --git a/docs/build/doctrees/environment.pickle b/docs/build/doctrees/environment.pickle index 4d5ef1f3..2f75b1f6 100644 Binary files a/docs/build/doctrees/environment.pickle and b/docs/build/doctrees/environment.pickle differ diff --git a/docs/build/doctrees/index.doctree b/docs/build/doctrees/index.doctree index 0286932c..60583e3c 100644 Binary files a/docs/build/doctrees/index.doctree and b/docs/build/doctrees/index.doctree differ diff --git a/docs/build/doctrees/modules.doctree b/docs/build/doctrees/modules.doctree index e436a9a8..ceb86bd7 100644 Binary files a/docs/build/doctrees/modules.doctree and b/docs/build/doctrees/modules.doctree differ diff --git a/docs/build/doctrees/setup.doctree b/docs/build/doctrees/setup.doctree index ae9229c2..68420c76 100644 Binary files a/docs/build/doctrees/setup.doctree and b/docs/build/doctrees/setup.doctree differ diff --git a/docs/build/html/.buildinfo b/docs/build/html/.buildinfo index c200e742..f883c950 100644 --- a/docs/build/html/.buildinfo +++ b/docs/build/html/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 9ea51a00cf3559575c97b7efd7a002e5 +config: 7051b788adc6d655ae340e56640c6925 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/docs/build/html/_sources/cli.generate.md.txt b/docs/build/html/_sources/cli.generate.md.txt index 40d79fdf..95a1cb51 100644 --- a/docs/build/html/_sources/cli.generate.md.txt +++ b/docs/build/html/_sources/cli.generate.md.txt @@ -18,10 +18,11 @@ Generates files based on a schematic. ## Arguments -| Argument | Description | Value type | -| ----------------- |:---------------------------------:|:-------------:| -| `````` | The schematic to generate. | ```str``` | -| `````` | The name of the generated file. | ```str``` | +| Argument | Description | Value type | +|-------------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:-------------:| +| `````` | The schematic to generate. | ```str``` | +| `````` | The name of the generated file. | ```str``` | +| ```--base``` | First element of path will be used as base-path not 'src'. For example: 'cpl g c test/Test' will be created at ```src/test/``` with --base it would be ```test/``` | ```str``` | ## Schematics diff --git a/docs/build/html/_sources/cli.new.md.txt b/docs/build/html/_sources/cli.new.md.txt index 2ddcb9e7..f000dcd6 100644 --- a/docs/build/html/_sources/cli.new.md.txt +++ b/docs/build/html/_sources/cli.new.md.txt @@ -18,10 +18,11 @@ Generates a workspace and initial project or add a project to workspace. If the command is running in a CPL workspace, it will add the new project to the workspace. -| Argument | Description | Value type | -|--------------|:----------------------------------------------------:|:----------:| -| `````` | The type of the project, see [types](#project-types) | ```str``` | -| `````` | The name of the project | ```str``` | +| Argument | Description | Value type | +|--------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:----------:| +| `````` | The type of the project, see [types](#project-types) | ```str``` | +| `````` | The name of the project | ```str``` | +| ```--base``` | First element of path will be used as base-path not 'src'. For example: 'cpl g c test/Test' will be created at ```src/test/``` with --base it would be ```test/``` | ```str``` | ## Project types diff --git a/docs/build/html/_sources/cli.run.md.txt b/docs/build/html/_sources/cli.run.md.txt new file mode 100644 index 00000000..5782a7a4 --- /dev/null +++ b/docs/build/html/_sources/cli.run.md.txt @@ -0,0 +1,12 @@ +# cpl run + +Starts your application once. + +cpl **run**
+cpl **r**
+cpl **R** + +| Argument | Description | Value type | +|-----------------|:----------------------------------------------------------------------------------------------------:|:----------:| +| `````` | Optional parameter to specify which project to start, if not set default project will be started. | ```str``` | +| ```--dev``` | To run the project from source and not from dist after build. | ```str``` | \ No newline at end of file diff --git a/docs/build/html/_sources/cli.start.md.txt b/docs/build/html/_sources/cli.start.md.txt index 2b067bfb..961feef1 100644 --- a/docs/build/html/_sources/cli.start.md.txt +++ b/docs/build/html/_sources/cli.start.md.txt @@ -5,3 +5,7 @@ Starts your application, restarting on file changes. cpl **start**
cpl **s**
cpl **S** + +| Argument | Description | Value type | +|-----------------|:----------------------------------------------------------------------------------------------------:|:----------:| +| ```--dev``` | To run the project from source and not from dist after build. | ```str``` | \ No newline at end of file diff --git a/docs/build/html/_sources/contributing.md.txt b/docs/build/html/_sources/contributing.md.txt index 85456726..249c41d6 100644 --- a/docs/build/html/_sources/contributing.md.txt +++ b/docs/build/html/_sources/contributing.md.txt @@ -44,7 +44,7 @@ Before you submit your Pull Request (PR) consider the following guidelines: 2. Be sure that an issue describes the problem you're fixing, or documents the design for the feature you'd like to add. Discussing the design upfront helps to ensure that we're ready to accept your work. -3. Fork the sh-edraft.de/sh_cpl repo. +3. Fork the sh-edraft.de/cpl repo. 4. In your forked repository, make your changes in a new git branch: @@ -70,7 +70,7 @@ Before you submit your Pull Request (PR) consider the following guidelines: git push origin my-fix-branch ``` -8. In Gitea, send a pull request to sh_cpl:master +8. In Gitea, send a pull request to cpl:master ### Reviewing a Pull Request @@ -104,7 +104,7 @@ To ensure consistency throughout the source code, keep these rules in mind as yo ## License By contributing, you agree that your contributions will be licensed under its MIT License. -See [LICENSE](https://git.sh-edraft.de/sh-edraft.de/sh_cpl/src/branch/master/LICENSE) +See [LICENSE](https://git.sh-edraft.de/sh-edraft.de/cpl/src/branch/master/LICENSE) [gitea-repo]: https://git.sh-edraft.de/sh-edraft.de/sh_cpl/ diff --git a/docs/build/html/_sources/cpl_cli.rst.txt b/docs/build/html/_sources/cpl_cli.rst.txt index 338ba5c2..cec12291 100644 --- a/docs/build/html/_sources/cpl_cli.rst.txt +++ b/docs/build/html/_sources/cpl_cli.rst.txt @@ -1,4 +1,4 @@ -CLI Reference +CLI reference ============= .. toctree:: diff --git a/docs/build/html/_sources/cpl_core.database.rst.txt b/docs/build/html/_sources/cpl_core.database.rst.txt index fb55c962..cdcb0ce8 100644 --- a/docs/build/html/_sources/cpl_core.database.rst.txt +++ b/docs/build/html/_sources/cpl_core.database.rst.txt @@ -7,8 +7,7 @@ cpl_core.database cpl_core.database.connection cpl_core.database.context -Submodules ----------- + cpl_core.database.database\_model ----------------------------------- diff --git a/docs/build/html/_sources/cpl_core.pipes.rst.txt b/docs/build/html/_sources/cpl_core.pipes.rst.txt index 8af5814b..0a8bba4d 100644 --- a/docs/build/html/_sources/cpl_core.pipes.rst.txt +++ b/docs/build/html/_sources/cpl_core.pipes.rst.txt @@ -1,10 +1,9 @@ cpl\_core.pipes ======================= -Submodules ----------- -cpl\_core.pipes.bool\_pipe module + +cpl\_core.pipes.bool\_pipe --------------------------------- .. automodule:: cpl_core.pipes.bool_pipe @@ -12,7 +11,7 @@ cpl\_core.pipes.bool\_pipe module :undoc-members: :show-inheritance: -cpl\_core.pipes.first\_char\_to\_lower\_pipe module +cpl\_core.pipes.first\_char\_to\_lower\_pipe --------------------------------------------------- .. automodule:: cpl_core.pipes.first_char_to_lower_pipe @@ -20,7 +19,7 @@ cpl\_core.pipes.first\_char\_to\_lower\_pipe module :undoc-members: :show-inheritance: -cpl\_core.pipes.first\_to\_upper\_pipe module +cpl\_core.pipes.first\_to\_upper\_pipe --------------------------------------------- .. automodule:: cpl_core.pipes.first_to_upper_pipe @@ -28,7 +27,7 @@ cpl\_core.pipes.first\_to\_upper\_pipe module :undoc-members: :show-inheritance: -cpl\_core.pipes.ip\_address\_pipe module +cpl\_core.pipes.ip\_address\_pipe ---------------------------------------- .. automodule:: cpl_core.pipes.ip_address_pipe @@ -36,7 +35,7 @@ cpl\_core.pipes.ip\_address\_pipe module :undoc-members: :show-inheritance: -cpl\_core.pipes.pipe\_abc module +cpl\_core.pipes.pipe\_abc -------------------------------- .. automodule:: cpl_core.pipes.pipe_abc @@ -44,7 +43,7 @@ cpl\_core.pipes.pipe\_abc module :undoc-members: :show-inheritance: -cpl\_core.pipes.to\_camel\_case\_pipe module +cpl\_core.pipes.to\_camel\_case\_pipe -------------------------------------------- .. automodule:: cpl_core.pipes.to_camel_case_pipe @@ -52,7 +51,7 @@ cpl\_core.pipes.to\_camel\_case\_pipe module :undoc-members: :show-inheritance: -cpl\_core.pipes.to\_snake\_case\_pipe module +cpl\_core.pipes.to\_snake\_case\_pipe -------------------------------------------- .. automodule:: cpl_core.pipes.to_snake_case_pipe @@ -60,18 +59,10 @@ cpl\_core.pipes.to\_snake\_case\_pipe module :undoc-members: :show-inheritance: -cpl\_core.pipes.version\_pipe module +cpl\_core.pipes.version\_pipe ------------------------------------ .. automodule:: cpl_core.pipes.version_pipe :members: :undoc-members: :show-inheritance: - -Module contents ---------------- - -.. automodule:: cpl_core.pipes - :members: - :undoc-members: - :show-inheritance: diff --git a/docs/build/html/_sources/cpl_core.rst.txt b/docs/build/html/_sources/cpl_core.rst.txt index a71547b3..e1e9b11a 100644 --- a/docs/build/html/_sources/cpl_core.rst.txt +++ b/docs/build/html/_sources/cpl_core.rst.txt @@ -1,4 +1,4 @@ -API Reference +API reference =========== .. toctree:: diff --git a/docs/build/html/_sources/cpl_discord.application.rst.txt b/docs/build/html/_sources/cpl_discord.application.rst.txt new file mode 100644 index 00000000..ef077d22 --- /dev/null +++ b/docs/build/html/_sources/cpl_discord.application.rst.txt @@ -0,0 +1,12 @@ +cpl\_discord.application +================================ + + + +cpl\_discord.application.discord\_bot\_application\_abc +-------------------------------------------------------------- + +.. automodule:: cpl_discord.application.discord_bot_application_abc + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/build/html/_sources/cpl_discord.command.rst.txt b/docs/build/html/_sources/cpl_discord.command.rst.txt new file mode 100644 index 00000000..5f495733 --- /dev/null +++ b/docs/build/html/_sources/cpl_discord.command.rst.txt @@ -0,0 +1,20 @@ +cpl\_discord.command +============================ + + + +cpl\_discord.command.discord\_command\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.command.discord_command_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.command.discord\_commands\_meta +--------------------------------------------------- + +.. automodule:: cpl_discord.command.discord_commands_meta + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/build/html/_sources/cpl_discord.configuration.rst.txt b/docs/build/html/_sources/cpl_discord.configuration.rst.txt new file mode 100644 index 00000000..eb855d14 --- /dev/null +++ b/docs/build/html/_sources/cpl_discord.configuration.rst.txt @@ -0,0 +1,12 @@ +cpl\_discord.configuration +================================== + + + +cpl\_discord.configuration.discord\_bot\_settings +-------------------------------------------------------- + +.. automodule:: cpl_discord.configuration.discord_bot_settings + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/build/html/_sources/cpl_discord.container.rst.txt b/docs/build/html/_sources/cpl_discord.container.rst.txt new file mode 100644 index 00000000..a47f50b1 --- /dev/null +++ b/docs/build/html/_sources/cpl_discord.container.rst.txt @@ -0,0 +1,68 @@ +cpl\_discord.container +============================== + + + +cpl\_discord.container.category\_channel +----------------------------------------------- + +.. automodule:: cpl_discord.container.category_channel + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.container +--------------------------------------- + +.. automodule:: cpl_discord.container.container + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.guild +----------------------------------- + +.. automodule:: cpl_discord.container.guild + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.member +------------------------------------ + +.. automodule:: cpl_discord.container.member + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.role +---------------------------------- + +.. automodule:: cpl_discord.container.role + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.text\_channel +------------------------------------------- + +.. automodule:: cpl_discord.container.text_channel + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.thread +------------------------------------ + +.. automodule:: cpl_discord.container.thread + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.voice\_channel +-------------------------------------------- + +.. automodule:: cpl_discord.container.voice_channel + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/build/html/_sources/cpl_discord.events.rst.txt b/docs/build/html/_sources/cpl_discord.events.rst.txt new file mode 100644 index 00000000..d26aa744 --- /dev/null +++ b/docs/build/html/_sources/cpl_discord.events.rst.txt @@ -0,0 +1,412 @@ +cpl\_discord.events +=========================== + + + +cpl\_discord.events.on\_bulk\_message\_delete\_abc +--------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_bulk_message_delete_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_command\_abc +------------------------------------------- + +.. automodule:: cpl_discord.events.on_command_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_command\_completion\_abc +------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_command_completion_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_command\_error\_abc +-------------------------------------------------- + +.. automodule:: cpl_discord.events.on_command_error_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_connect\_abc +------------------------------------------- + +.. automodule:: cpl_discord.events.on_connect_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_disconnect\_abc +---------------------------------------------- + +.. automodule:: cpl_discord.events.on_disconnect_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_error\_abc +----------------------------------------- + +.. automodule:: cpl_discord.events.on_error_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_group\_join\_abc +----------------------------------------------- + +.. automodule:: cpl_discord.events.on_group_join_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_group\_remove\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.events.on_group_remove_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_available\_abc +---------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_available_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_channel\_create\_abc +---------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_channel_create_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_channel\_delete\_abc +---------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_channel_delete_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_channel\_pins\_update\_abc +---------------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_channel_pins_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_channel\_update\_abc +---------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_channel_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_emojis\_update\_abc +--------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_emojis_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_integrations\_update\_abc +--------------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_integrations_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_join\_abc +----------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_join_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_remove\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_remove_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_role\_create\_abc +------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_role_create_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_role\_delete\_abc +------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_role_delete_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_role\_update\_abc +------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_role_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_unavailable\_abc +------------------------------------------------------ + +.. automodule:: cpl_discord.events.on_guild_unavailable_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_update\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_invite\_create\_abc +-------------------------------------------------- + +.. automodule:: cpl_discord.events.on_invite_create_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_invite\_delete\_abc +-------------------------------------------------- + +.. automodule:: cpl_discord.events.on_invite_delete_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_member\_ban\_abc +----------------------------------------------- + +.. automodule:: cpl_discord.events.on_member_ban_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_member\_join\_abc +------------------------------------------------ + +.. automodule:: cpl_discord.events.on_member_join_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_member\_remove\_abc +-------------------------------------------------- + +.. automodule:: cpl_discord.events.on_member_remove_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_member\_unban\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.events.on_member_unban_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_member\_update\_abc +-------------------------------------------------- + +.. automodule:: cpl_discord.events.on_member_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_message\_abc +------------------------------------------- + +.. automodule:: cpl_discord.events.on_message_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_message\_delete\_abc +--------------------------------------------------- + +.. automodule:: cpl_discord.events.on_message_delete_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_message\_edit\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.events.on_message_edit_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_private\_channel\_create\_abc +------------------------------------------------------------ + +.. automodule:: cpl_discord.events.on_private_channel_create_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_private\_channel\_delete\_abc +------------------------------------------------------------ + +.. automodule:: cpl_discord.events.on_private_channel_delete_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_private\_channel\_pins\_update\_abc +------------------------------------------------------------------ + +.. automodule:: cpl_discord.events.on_private_channel_pins_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_private\_channel\_update\_abc +------------------------------------------------------------ + +.. automodule:: cpl_discord.events.on_private_channel_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_raw\_reaction\_add\_abc +------------------------------------------------------ + +.. automodule:: cpl_discord.events.on_raw_reaction_add_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_raw\_reaction\_clear\_abc +-------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_raw_reaction_clear_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_raw\_reaction\_clear\_emoji\_abc +--------------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_raw_reaction_clear_emoji_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_raw\_reaction\_remove\_abc +--------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_raw_reaction_remove_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_reaction\_add\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.events.on_reaction_add_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_reaction\_clear\_abc +--------------------------------------------------- + +.. automodule:: cpl_discord.events.on_reaction_clear_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_reaction\_clear\_emoji\_abc +---------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_reaction_clear_emoji_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_reaction\_remove\_abc +---------------------------------------------------- + +.. automodule:: cpl_discord.events.on_reaction_remove_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_ready\_abc +----------------------------------------- + +.. automodule:: cpl_discord.events.on_ready_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_resume\_abc +------------------------------------------ + +.. automodule:: cpl_discord.events.on_resume_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_typing\_abc +------------------------------------------ + +.. automodule:: cpl_discord.events.on_typing_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_user\_update\_abc +------------------------------------------------ + +.. automodule:: cpl_discord.events.on_user_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_voice\_state\_update\_abc +-------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_voice_state_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_webhooks\_update\_abc +---------------------------------------------------- + +.. automodule:: cpl_discord.events.on_webhooks_update_abc + :members: + :undoc-members: + :show-inheritance: \ No newline at end of file diff --git a/docs/build/html/_sources/cpl_discord.helper.rst.txt b/docs/build/html/_sources/cpl_discord.helper.rst.txt new file mode 100644 index 00000000..396b4c89 --- /dev/null +++ b/docs/build/html/_sources/cpl_discord.helper.rst.txt @@ -0,0 +1,12 @@ +cpl\_discord.helper +=========================== + + + +cpl\_discord.helper.to\_containers\_converter +---------------------------------------------------- + +.. automodule:: cpl_discord.helper.to_containers_converter + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/build/html/_sources/cpl_discord.rst.txt b/docs/build/html/_sources/cpl_discord.rst.txt new file mode 100644 index 00000000..5d10fb20 --- /dev/null +++ b/docs/build/html/_sources/cpl_discord.rst.txt @@ -0,0 +1,13 @@ +Discord reference +==================== + +.. toctree:: + :maxdepth: 4 + + cpl_discord.application + cpl_discord.command + cpl_discord.configuration + cpl_discord.container + cpl_discord.events + cpl_discord.helper + cpl_discord.service diff --git a/docs/build/html/_sources/cpl_discord.service.rst.txt b/docs/build/html/_sources/cpl_discord.service.rst.txt new file mode 100644 index 00000000..a6898292 --- /dev/null +++ b/docs/build/html/_sources/cpl_discord.service.rst.txt @@ -0,0 +1,60 @@ +cpl\_discord.service +============================ + + + +cpl\_discord.service.command\_error\_handler\_service +------------------------------------------------------------ + +.. automodule:: cpl_discord.service.command_error_handler_service + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.service.discord\_bot\_service +------------------------------------------------- + +.. automodule:: cpl_discord.service.discord_bot_service + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.service.discord\_bot\_service\_abc +------------------------------------------------------ + +.. automodule:: cpl_discord.service.discord_bot_service_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.service.discord\_collection +----------------------------------------------- + +.. automodule:: cpl_discord.service.discord_collection + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.service.discord\_collection\_abc +---------------------------------------------------- + +.. automodule:: cpl_discord.service.discord_collection_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.service.discord\_service +-------------------------------------------- + +.. automodule:: cpl_discord.service.discord_service + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.service.discord\_service\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.service.discord_service_abc + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/build/html/_sources/cpl_query.base.rst.txt b/docs/build/html/_sources/cpl_query.base.rst.txt new file mode 100644 index 00000000..156985e5 --- /dev/null +++ b/docs/build/html/_sources/cpl_query.base.rst.txt @@ -0,0 +1,52 @@ +cpl\_query.base +======================= + + + +cpl\_query.base.default\_lambda +-------------------------------------- + +.. automodule:: cpl_query.base.default_lambda + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.base.ordered\_queryable +----------------------------------------- + +.. automodule:: cpl_query.base.ordered_queryable + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.base.ordered\_queryable\_abc +---------------------------------------------- + +.. automodule:: cpl_query.base.ordered_queryable_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.base.queryable\_abc +------------------------------------- + +.. automodule:: cpl_query.base.queryable_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.base.sequence\_abc +------------------------------------ + +.. automodule:: cpl_query.base.sequence_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.base.sequence\_values +--------------------------------------- + +.. automodule:: cpl_query.base.sequence_values + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/build/html/_sources/cpl_query.enumerable.rst.txt b/docs/build/html/_sources/cpl_query.enumerable.rst.txt new file mode 100644 index 00000000..37e58add --- /dev/null +++ b/docs/build/html/_sources/cpl_query.enumerable.rst.txt @@ -0,0 +1,20 @@ +cpl\_query.enumerable +============================= + + + +cpl\_query.enumerable.enumerable +--------------------------------------- + +.. automodule:: cpl_query.enumerable.enumerable + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.enumerable.enumerable\_abc +-------------------------------------------- + +.. automodule:: cpl_query.enumerable.enumerable_abc + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/build/html/_sources/cpl_query.exceptions.rst.txt b/docs/build/html/_sources/cpl_query.exceptions.rst.txt deleted file mode 100644 index d492c637..00000000 --- a/docs/build/html/_sources/cpl_query.exceptions.rst.txt +++ /dev/null @@ -1,10 +0,0 @@ -cpl_query.exceptions -================================= - -cpl_query.exceptions ----------------------------------------------------- - -.. automodule:: cpl_query.exceptions - :members: - :undoc-members: - :show-inheritance: diff --git a/docs/build/html/_sources/cpl_query.extension.rst.txt b/docs/build/html/_sources/cpl_query.extension.rst.txt index 9dfaa401..a0bba3e0 100644 --- a/docs/build/html/_sources/cpl_query.extension.rst.txt +++ b/docs/build/html/_sources/cpl_query.extension.rst.txt @@ -1,42 +1,12 @@ -cpl_query.extension -================================= +cpl\_query.extension +============================ -cpl_query.extension.iterable_abc ----------------------------------------------------- -.. automodule:: cpl_query.extension.iterable_abc - :members: - :undoc-members: - :show-inheritance: -cpl_query.extension.iterable ----------------------------------------------------- - -.. automodule:: cpl_query.extension.iterable - :members: - :undoc-members: - :show-inheritance: - -cpl_query.extension.list ----------------------------------------------------- +cpl\_query.extension.list +-------------------------------- .. automodule:: cpl_query.extension.list :members: :undoc-members: :show-inheritance: - -cpl_query.extension.ordered_iterable_abc ----------------------------------------------------- - -.. automodule:: cpl_query.extension.ordered_iterable_abc - :members: - :undoc-members: - :show-inheritance: - -cpl_query.extension.ordered_iterable ----------------------------------------------------- - -.. automodule:: cpl_query.extension.ordered_iterable - :members: - :undoc-members: - :show-inheritance: \ No newline at end of file diff --git a/docs/build/html/_sources/cpl_query.iterable.rst.txt b/docs/build/html/_sources/cpl_query.iterable.rst.txt new file mode 100644 index 00000000..8a7bc919 --- /dev/null +++ b/docs/build/html/_sources/cpl_query.iterable.rst.txt @@ -0,0 +1,20 @@ +cpl\_query.iterable +=========================== + + + +cpl\_query.iterable.iterable +----------------------------------- + +.. automodule:: cpl_query.iterable.iterable + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.iterable.iterable\_abc +---------------------------------------- + +.. automodule:: cpl_query.iterable.iterable_abc + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/build/html/_sources/cpl_query.rst.txt b/docs/build/html/_sources/cpl_query.rst.txt index 10d6f0d8..5a362b26 100644 --- a/docs/build/html/_sources/cpl_query.rst.txt +++ b/docs/build/html/_sources/cpl_query.rst.txt @@ -1,8 +1,10 @@ -Query Reference +Query reference =========== .. toctree:: :maxdepth: 4 - - cpl_query.extension - cpl_query.exceptions + + cpl_query.base + cpl_query.enumerable + cpl_query.extension + cpl_query.iterable diff --git a/docs/build/html/_sources/cpl_translation.rst.txt b/docs/build/html/_sources/cpl_translation.rst.txt new file mode 100644 index 00000000..365356e8 --- /dev/null +++ b/docs/build/html/_sources/cpl_translation.rst.txt @@ -0,0 +1,34 @@ +Translation reference +======================== + +cpl\_translation.translate\_pipe +--------------------------------------- + +.. automodule:: cpl_translation.translate_pipe + :members: + :undoc-members: + :show-inheritance: + +cpl\_translation.translation\_service +-------------------------------------------- + +.. automodule:: cpl_translation.translation_service + :members: + :undoc-members: + :show-inheritance: + +cpl\_translation.translation\_service\_abc +------------------------------------------------- + +.. automodule:: cpl_translation.translation_service_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_translation.translation\_settings +--------------------------------------------- + +.. automodule:: cpl_translation.translation_settings + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/build/html/_sources/index.rst.txt b/docs/build/html/_sources/index.rst.txt index 0d0ef798..921b7964 100644 --- a/docs/build/html/_sources/index.rst.txt +++ b/docs/build/html/_sources/index.rst.txt @@ -89,4 +89,6 @@ These pages go into great detail about everything the Library can do. contributing cpl_cli cpl_core + cpl_discord cpl_query + cpl_translation diff --git a/docs/build/html/_sources/modules.rst.txt b/docs/build/html/_sources/modules.rst.txt index d1ae65e0..5a411fa4 100644 --- a/docs/build/html/_sources/modules.rst.txt +++ b/docs/build/html/_sources/modules.rst.txt @@ -9,4 +9,4 @@ cpl cpl_core cpl_discord cpl_query - cpl_translate + cpl_translation diff --git a/docs/build/html/_sources/setup.md.txt b/docs/build/html/_sources/setup.md.txt index 6d0be37c..be16fa9b 100644 --- a/docs/build/html/_sources/setup.md.txt +++ b/docs/build/html/_sources/setup.md.txt @@ -27,7 +27,7 @@ Also you need to have the following installed. To install the package, open a terminal window and run the following command: ```sh -pip install sh_cpl-core --extra-index-url https://pip.sh-edraft.de +pip install cpl-core --extra-index-url https://pip.sh-edraft.de ``` ## Install the CLI @@ -37,7 +37,7 @@ You use the CPL CLI to create projects, generate application and library code. Y To install the CLI, open a terminal window and run the following command: ```sh -pip install sh_cpl-cli --extra-index-url https://pip.sh-edraft.de +pip install cpl-cli --extra-index-url https://pip.sh-edraft.de ``` ## Install the query @@ -45,7 +45,7 @@ pip install sh_cpl-cli --extra-index-url https://pip.sh-edraft.de To install the package, open a terminal window and run the following command: ```sh -pip install sh_cpl-query --extra-index-url https://pip.sh-edraft.de +pip install cpl-query --extra-index-url https://pip.sh-edraft.de ``` ## Create initial console app diff --git a/docs/build/html/cli.add.html b/docs/build/html/cli.add.html index 683a3330..54bff940 100644 --- a/docs/build/html/cli.add.html +++ b/docs/build/html/cli.add.html @@ -42,7 +42,7 @@
  • Introduction to the CPL Docs
  • Getting started
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -123,7 +125,7 @@
    1. Search the repository for an open or closed PR that relates to your submission. You don’t want to duplicate existing efforts.

    2. Be sure that an issue describes the problem you’re fixing, or documents the design for the feature you’d like to add. Discussing the design upfront helps to ensure that we’re ready to accept your work.

    3. -
    4. Fork the sh-edraft.de/sh_cpl repo.

    5. +
    6. Fork the sh-edraft.de/cpl repo.

    7. In your forked repository, make your changes in a new git branch:

      git checkout -b my-fix-branch master
       
      @@ -144,7 +146,7 @@
    8. -
    9. In Gitea, send a pull request to sh_cpl:master

    10. +
    11. In Gitea, send a pull request to cpl:master

    @@ -178,7 +180,7 @@ git push

    License

    By contributing, you agree that your contributions will be licensed under its MIT License. -See LICENSE

    +See LICENSE

    @@ -188,13 +190,13 @@ See - +
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/cpl_cli.html b/docs/build/html/cpl_cli.html index 657a2b49..4ac7954e 100644 --- a/docs/build/html/cpl_cli.html +++ b/docs/build/html/cpl_cli.html @@ -4,7 +4,7 @@ - CLI Reference — Common Python Library documentation + CLI reference — Common Python Library documentation + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    cpl_discord.application

    +
    +

    cpl_discord.application.discord_bot_application_abc

    +
    +
    +class cpl_discord.application.discord_bot_application_abc.DiscordBotApplicationABC(config: ConfigurationABC, services: ServiceProviderABC)
    +

    Bases: ApplicationABC

    +
    +
    +abstract stop_async()
    +
    + +
    + +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/docs/build/html/cpl_discord.command.html b/docs/build/html/cpl_discord.command.html new file mode 100644 index 00000000..6dba3ee5 --- /dev/null +++ b/docs/build/html/cpl_discord.command.html @@ -0,0 +1,143 @@ + + + + + + + cpl_discord.command — Common Python Library documentation + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    cpl_discord.command

    +
    +

    cpl_discord.command.discord_command_abc

    +
    +
    +class cpl_discord.command.discord_command_abc.DiscordCommandABC(*args: Any, **kwargs: Any)
    +

    Bases: ABC, Cog

    +
    + +
    +
    +

    cpl_discord.command.discord_commands_meta

    +
    +
    +class cpl_discord.command.discord_commands_meta.DiscordCogMeta(name, bases, namespace, **kwargs)
    +

    Bases: ABCMeta, CogMeta

    +
    + +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/docs/build/html/cpl_discord.configuration.html b/docs/build/html/cpl_discord.configuration.html new file mode 100644 index 00000000..591e7eee --- /dev/null +++ b/docs/build/html/cpl_discord.configuration.html @@ -0,0 +1,152 @@ + + + + + + + cpl_discord.configuration — Common Python Library documentation + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    cpl_discord.configuration

    +
    +

    cpl_discord.configuration.discord_bot_settings

    +
    +
    +class cpl_discord.configuration.discord_bot_settings.DiscordBotSettings
    +

    Bases: ConfigurationModelABC

    +
    +
    +from_dict(settings: dict)
    +

    Converts attributes to dict

    +
    +

    settings: dict

    +
    +
    + +
    +
    +property prefix: str
    +
    + +
    +
    +property token: str
    +
    + +
    + +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/docs/build/html/cpl_discord.container.html b/docs/build/html/cpl_discord.container.html new file mode 100644 index 00000000..9490fdb6 --- /dev/null +++ b/docs/build/html/cpl_discord.container.html @@ -0,0 +1,674 @@ + + + + + + + cpl_discord.container — Common Python Library documentation + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    cpl_discord.container

    +
    +

    cpl_discord.container.category_channel

    +
    +
    +class cpl_discord.container.category_channel.CategoryChannel(_t: CategoryChannel)
    +

    Bases: CategoryChannel, Container

    +
    +
    +category_id: Optional[int]
    +
    + +
    +
    +guild: Guild
    +
    + +
    +
    +id: int
    +
    + +
    +
    +name: str
    +
    + +
    +
    +nsfw
    +
    + +
    +
    +position: int
    +
    + +
    +
    +property text_channels: TextChannel
    +

    List[TextChannel]: Returns the text channels that are under this category.

    +
    + +
    +
    +property voice_channels: VoiceChannel
    +

    List[VoiceChannel]: Returns the voice channels that are under this category.

    +
    + +
    + +
    +
    +

    cpl_discord.container.container

    +
    +
    +class cpl_discord.container.container.Container(_o: object, _t: type)
    +

    Bases: object

    +
    + +
    +
    +

    cpl_discord.container.guild

    +
    +
    +class cpl_discord.container.guild.Guild(_t: Guild)
    +

    Bases: Container, Guild

    +
    +
    +afk_channel
    +
    + +
    +
    +afk_timeout
    +
    + +
    +
    +approximate_member_count
    +
    + +
    +
    +approximate_presence_count
    +
    + +
    +
    +property categories: CategoryChannel
    +

    List[CategoryChannel]: A list of categories that belongs to this guild.

    +

    This is sorted by the position and are in UI order from top to bottom.

    +
    + +
    +
    +default_notifications
    +
    + +
    +
    +description
    +
    + +
    +
    +emojis
    +
    + +
    +
    +explicit_content_filter
    +
    + +
    +
    +features
    +
    + +
    +
    +id: int
    +
    + +
    +
    +max_members
    +
    + +
    +
    +max_presences
    +
    + +
    +
    +max_video_channel_users
    +
    + +
    +
    +property members: Member
    +

    Sequence[Member]: A list of members that belong to this guild.

    +
    + +
    +
    +mfa_level
    +
    + +
    +
    +name
    +
    + +
    +
    +nsfw_level
    +
    + +
    +
    +owner_id
    +
    + +
    +
    +preferred_locale
    +
    + +
    +
    +premium_progress_bar_enabled
    +
    + +
    +
    +premium_subscription_count
    +
    + +
    +
    +premium_tier
    +
    + +
    +
    +property roles: Role
    +

    Sequence[Role]: Returns a sequence of the guild’s roles in hierarchy order.

    +

    The first element of this sequence will be the lowest role in the +hierarchy.

    +
    + +
    +
    +stickers
    +
    + +
    +
    +property text_channels: TextChannel
    +

    List[TextChannel]: A list of text channels that belongs to this guild.

    +

    This is sorted by the position and are in UI order from top to bottom.

    +
    + +
    +
    +property threads: TextChannel
    +

    Sequence[Thread]: A list of threads that you have permission to view.

    +
    +

    New in version 2.0.

    +
    +
    + +
    +
    +unavailable
    +
    + +
    +
    +vanity_url_code
    +
    + +
    +
    +verification_level
    +
    + +
    +
    +property voice_channels: VoiceChannel
    +

    List[VoiceChannel]: A list of voice channels that belongs to this guild.

    +

    This is sorted by the position and are in UI order from top to bottom.

    +
    + +
    +
    +widget_enabled
    +
    + +
    + +
    +
    +

    cpl_discord.container.member

    +
    +
    +class cpl_discord.container.member.Member(_t: Member)
    +

    Bases: Member, Container

    +
    +
    +activities: Tuple[ActivityTypes, ...]
    +
    + +
    +
    +guild: Guild
    +
    + +
    +
    +joined_at: Optional[datetime.datetime]
    +
    + +
    +
    +nick: Optional[str]
    +
    + +
    +
    +pending: bool
    +
    + +
    +
    +premium_since: Optional[datetime.datetime]
    +
    + +
    +
    +property roles: Role
    +

    List[Role]: A list of Role that the member belongs to. Note +that the first element of this list is always the default @everyone’ +role.

    +

    These roles are sorted by their position in the role hierarchy.

    +
    + +
    +
    +timed_out_until: Optional[datetime.datetime]
    +
    + +
    + +
    +
    +

    cpl_discord.container.role

    +
    +
    +class cpl_discord.container.role.Role(_t: Role)
    +

    Bases: Role, Container

    +
    +
    +guild: Guild
    +
    + +
    +
    +hoist
    +
    + +
    +
    +id: int
    +
    + +
    +
    +managed
    +
    + +
    +
    +property members: Member
    +

    List[Member]: Returns all the members with this role.

    +
    + +
    +
    +mentionable
    +
    + +
    +
    +name
    +
    + +
    +
    +position
    +
    + +
    +
    +tags
    +
    + +
    +
    +unicode_emoji
    +
    + +
    + +
    +
    +

    cpl_discord.container.text_channel

    +
    +
    +class cpl_discord.container.text_channel.TextChannel(_t: TextChannel)
    +

    Bases: TextChannel, Container

    +
    +
    +category_id: Optional[int]
    +
    + +
    +
    +default_auto_archive_duration
    +
    + +
    +
    +guild: Guild
    +
    + +
    +
    +id: int
    +
    + +
    +
    +last_message_id
    +
    + +
    +
    +property members: Member
    +

    List[Member]: Returns all members that can see this channel.

    +
    + +
    +
    +name: str
    +
    + +
    +
    +nsfw
    +
    + +
    +
    +position: int
    +
    + +
    +
    +slowmode_delay
    +
    + +
    +
    +property threads: Thread
    +

    List[Thread]: Returns all the threads that you can see.

    +
    +

    New in version 2.0.

    +
    +
    + +
    +
    +topic
    +
    + +
    + +
    +
    +

    cpl_discord.container.thread

    +
    +
    +class cpl_discord.container.thread.Thread(_t: Thread)
    +

    Bases: Thread, Container

    +
    +
    +archive_timestamp
    +
    + +
    +
    +archived
    +
    + +
    +
    +archiver_id
    +
    + +
    +
    +auto_archive_duration
    +
    + +
    +
    +guild: Guild
    +
    + +
    +
    +id: int
    +
    + +
    +
    +invitable
    +
    + +
    +
    +last_message_id
    +
    + +
    +
    +locked
    +
    + +
    +
    +me
    +
    + +
    +
    +member_count
    +
    + +
    +
    +property members: Member
    +

    List[ThreadMember]: A list of thread members in this thread.

    +

    This requires Intents.members to be properly filled. Most of the time however, +this data is not provided by the gateway and a call to fetch_members() is +needed.

    +
    + +
    +
    +message_count
    +
    + +
    +
    +name
    +
    + +
    +
    +owner_id
    +
    + +
    +
    +parent_id
    +
    + +
    +
    +slowmode_delay
    +
    + +
    + +
    +
    +

    cpl_discord.container.voice_channel

    +
    +
    +class cpl_discord.container.voice_channel.VoiceChannel(_t: VoiceChannel)
    +

    Bases: VoiceChannel, Container

    +
    +
    +property members: Member
    +

    List[Member]: Returns all members that are currently inside this voice channel.

    +
    + +
    + +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/docs/build/html/cpl_discord.events.html b/docs/build/html/cpl_discord.events.html new file mode 100644 index 00000000..7633c306 --- /dev/null +++ b/docs/build/html/cpl_discord.events.html @@ -0,0 +1,888 @@ + + + + + + + cpl_discord.events — Common Python Library documentation + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    cpl_discord.events

    +
    +

    cpl_discord.events.on_bulk_message_delete_abc

    +
    +
    +class cpl_discord.events.on_bulk_message_delete_abc.OnBulkMessageDeleteABC
    +

    Bases: ABC

    +
    +
    +abstract async on_bulk_message_delete(messages: list[discord.message.Message])
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_command_abc

    +
    +
    +class cpl_discord.events.on_command_abc.OnCommandABC
    +

    Bases: ABC

    +
    +
    +abstract async on_command(ctx: Context)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_command_completion_abc

    +
    +
    +class cpl_discord.events.on_command_completion_abc.OnCommandCompletionABC
    +

    Bases: ABC

    +
    +
    +abstract async on_command_completion(ctx: Context)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_command_error_abc

    +
    +
    +class cpl_discord.events.on_command_error_abc.OnCommandErrorABC
    +

    Bases: ABC

    +
    +
    +abstract async on_command_error(ctx: Context, error: CommandError)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_connect_abc

    +
    +
    +class cpl_discord.events.on_connect_abc.OnConnectABC
    +

    Bases: ABC

    +
    +
    +abstract async on_connect()
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_disconnect_abc

    +
    +
    +class cpl_discord.events.on_disconnect_abc.OnDisconnectABC
    +

    Bases: ABC

    +
    +
    +abstract async on_disconnect()
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_error_abc

    +
    +
    +class cpl_discord.events.on_error_abc.OnErrorABC
    +

    Bases: ABC

    +
    +
    +abstract async on_error(event: str, *args, **kwargs)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_group_join_abc

    +
    +
    +class cpl_discord.events.on_group_join_abc.OnGroupJoinABC
    +

    Bases: ABC

    +
    +
    +abstract async on_group_join(chhanel: GroupChannel, user: User)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_group_remove_abc

    +
    +
    +class cpl_discord.events.on_group_remove_abc.OnGroupRemoveABC
    +

    Bases: ABC

    +
    +
    +abstract async on_group_remove(chhanel: GroupChannel, user: User)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_available_abc

    +
    +
    +class cpl_discord.events.on_guild_available_abc.OnGuildAvailableABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_available(guild: Guild)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_channel_create_abc

    +
    +
    +class cpl_discord.events.on_guild_channel_create_abc.OnGuildChannelCreateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_channel_create(channel: GuildChannel)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_channel_delete_abc

    +
    +
    +class cpl_discord.events.on_guild_channel_delete_abc.OnGuildChannelDeleteABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_channel_delete(channel: GuildChannel)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_channel_pins_update_abc

    +
    +
    +class cpl_discord.events.on_guild_channel_pins_update_abc.OnGuildChannelPinsUpdateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_channel_pins_update(channel: GuildChannel, list_pin: Optional[datetime])
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_channel_update_abc

    +
    +
    +class cpl_discord.events.on_guild_channel_update_abc.OnGuildChannelUpdateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_channel_update(before: GuildChannel, after: GuildChannel)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_emojis_update_abc

    +
    +
    +class cpl_discord.events.on_guild_emojis_update_abc.OnGuildEmojisUpdateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_emojis_update(guild: Guild, before: Sequence[Emoji], after: Sequence[Emoji])
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_integrations_update_abc

    +
    +
    +class cpl_discord.events.on_guild_integrations_update_abc.OnGuildIntegrationsUpdateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_integrations_update(guild: Guild)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_join_abc

    +
    +
    +class cpl_discord.events.on_guild_join_abc.OnGuildJoinABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_join(guild: Guild)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_remove_abc

    +
    +
    +class cpl_discord.events.on_guild_remove_abc.OnGuildRemoveABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_remove(guild: Guild)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_role_create_abc

    +
    +
    +class cpl_discord.events.on_guild_role_create_abc.OnGuildRoleCreateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_role_create(role: Role)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_role_delete_abc

    +
    +
    +class cpl_discord.events.on_guild_role_delete_abc.OnGuildRoleDeleteABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_role_delete(role: Role)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_role_update_abc

    +
    +
    +class cpl_discord.events.on_guild_role_update_abc.OnGuildRoleUpdateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_role_update(before: Role, after: Role)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_unavailable_abc

    +
    +
    +class cpl_discord.events.on_guild_unavailable_abc.OnGuildUnavailableABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_unavailable(guild: Guild)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_guild_update_abc

    +
    +
    +class cpl_discord.events.on_guild_update_abc.OnGuildUpdateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_guild_update(before: Guild, after: Guild)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_invite_create_abc

    +
    +
    +class cpl_discord.events.on_invite_create_abc.OnInviteCreateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_invite_create(invite: Invite)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_invite_delete_abc

    +
    +
    +class cpl_discord.events.on_invite_delete_abc.OnInviteDeleteABC
    +

    Bases: ABC

    +
    +
    +abstract async on_invite_delete(invite: Invite)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_member_ban_abc

    +
    +
    +class cpl_discord.events.on_member_ban_abc.OnMemberBanABC
    +

    Bases: ABC

    +
    +
    +abstract async on_member_ban(guild: Guild, user: User)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_member_join_abc

    +
    +
    +class cpl_discord.events.on_member_join_abc.OnMemberJoinABC
    +

    Bases: ABC

    +
    +
    +abstract async on_member_join(member: Member)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_member_remove_abc

    +
    +
    +class cpl_discord.events.on_member_remove_abc.OnMemberRemoveABC
    +

    Bases: ABC

    +
    +
    +abstract async on_member_remove(member: Member)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_member_unban_abc

    +
    +
    +class cpl_discord.events.on_member_unban_abc.OnMemberUnbanABC
    +

    Bases: ABC

    +
    +
    +abstract async on_member_unban(guild: Guild, user: User)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_member_update_abc

    +
    +
    +class cpl_discord.events.on_member_update_abc.OnMemberUpdateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_member_update(before: Member, after: Member)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_message_abc

    +
    +
    +class cpl_discord.events.on_message_abc.OnMessageABC
    +

    Bases: ABC

    +
    +
    +abstract async on_message(message: Message)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_message_delete_abc

    +
    +
    +class cpl_discord.events.on_message_delete_abc.OnMessageDeleteABC
    +

    Bases: ABC

    +
    +
    +abstract async on_message_delete(message: Message)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_message_edit_abc

    +
    +
    +class cpl_discord.events.on_message_edit_abc.OnMessageEditABC
    +

    Bases: ABC

    +
    +
    +abstract async on_message_edit(before: Message, after: Message)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_private_channel_create_abc

    +
    +
    +class cpl_discord.events.on_private_channel_create_abc.OnPrivateChannelCreateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_private_channel_create(channel: PrivateChannel)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_private_channel_delete_abc

    +
    +
    +class cpl_discord.events.on_private_channel_delete_abc.OnPrivateChannelDeleteABC
    +

    Bases: ABC

    +
    +
    +abstract async on_private_channel_delete(channel: PrivateChannel)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_private_channel_pins_update_abc

    +
    +
    +class cpl_discord.events.on_private_channel_pins_update_abc.OnPrivateChannelPinsUpdateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_private_channel_pins_update(channel: PrivateChannel, list_pin: Optional[datetime])
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_private_channel_update_abc

    +
    +
    +class cpl_discord.events.on_private_channel_update_abc.OnPrivateChannelUpdateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_private_channel_update(before: GroupChannel, after: GroupChannel)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_raw_reaction_add_abc

    +
    +
    +class cpl_discord.events.on_raw_reaction_add_abc.OnRawReactionAddABC
    +

    Bases: ABC

    +
    +
    +abstract async on_raw_reaction_add(payload: RawReactionActionEvent)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_raw_reaction_clear_abc

    +
    +
    +class cpl_discord.events.on_raw_reaction_clear_abc.OnRawReactionClearABC
    +

    Bases: ABC

    +
    +
    +abstract async on_raw_reaction_clear(payload: RawReactionActionEvent)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_raw_reaction_clear_emoji_abc

    +
    +
    +class cpl_discord.events.on_raw_reaction_clear_emoji_abc.OnRawReactionClearEmojiABC
    +

    Bases: ABC

    +
    +
    +abstract async on_raw_reaction_clear_emoji(payload: RawReactionActionEvent)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_raw_reaction_remove_abc

    +
    +
    +class cpl_discord.events.on_raw_reaction_remove_abc.OnRawReactionRemoveABC
    +

    Bases: ABC

    +
    +
    +abstract async on_raw_reaction_remove(payload: RawReactionActionEvent)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_reaction_add_abc

    +
    +
    +class cpl_discord.events.on_reaction_add_abc.OnReactionAddABC
    +

    Bases: ABC

    +
    +
    +abstract async on_reaction_add(reaction: Reaction, user: User)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_reaction_clear_abc

    +
    +
    +class cpl_discord.events.on_reaction_clear_abc.OnReactionClearABC
    +

    Bases: ABC

    +
    +
    +abstract async on_reaction_clear(message: Message, reactions: list[discord.reaction.Reaction])
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_reaction_clear_emoji_abc

    +
    +
    +class cpl_discord.events.on_reaction_clear_emoji_abc.OnReactionClearEmojiABC
    +

    Bases: ABC

    +
    +
    +abstract async on_reaction_clear_emoji(reaction: Reaction)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_reaction_remove_abc

    +
    +
    +class cpl_discord.events.on_reaction_remove_abc.OnReactionRemoveABC
    +

    Bases: ABC

    +
    +
    +abstract async on_reaction_remove(reaction: Reaction, user: User)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_ready_abc

    +
    +
    +class cpl_discord.events.on_ready_abc.OnReadyABC
    +

    Bases: ABC

    +
    +
    +abstract async on_ready()
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_resume_abc

    +
    +
    +class cpl_discord.events.on_resume_abc.OnResumeABC
    +

    Bases: ABC

    +
    +
    +abstract async on_resume()
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_typing_abc

    +
    +
    +class cpl_discord.events.on_typing_abc.OnTypingABC
    +

    Bases: ABC

    +
    +
    +abstract async on_typing(channel: Messageable, user: Union[User, Member], when: datetime)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_user_update_abc

    +
    +
    +class cpl_discord.events.on_user_update_abc.OnUserUpdateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_user_update(before: User, after: User)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_voice_state_update_abc

    +
    +
    +class cpl_discord.events.on_voice_state_update_abc.OnVoiceStateUpdateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_voice_state_update(member: Member, before: VoiceState, after: VoiceState)
    +
    + +
    + +
    +
    +

    cpl_discord.events.on_webhooks_update_abc

    +
    +
    +class cpl_discord.events.on_webhooks_update_abc.OnWebhooksUpdateABC
    +

    Bases: ABC

    +
    +
    +abstract async on_webhooks_update(channel: GuildChannel)
    +
    + +
    + +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/docs/build/html/cpl_discord.helper.html b/docs/build/html/cpl_discord.helper.html new file mode 100644 index 00000000..7f128e82 --- /dev/null +++ b/docs/build/html/cpl_discord.helper.html @@ -0,0 +1,138 @@ + + + + + + + cpl_discord.helper — Common Python Library documentation + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    cpl_discord.helper

    +
    +

    cpl_discord.helper.to_containers_converter

    +
    +
    +class cpl_discord.helper.to_containers_converter.ToContainersConverter
    +

    Bases: object

    +
    +
    +static convert(_l: Union[list[object], Sequence[object]], _t: type) list[cpl_discord.container.container.Container]
    +
    + +
    + +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/docs/build/html/cpl_discord.html b/docs/build/html/cpl_discord.html new file mode 100644 index 00000000..c32b0593 --- /dev/null +++ b/docs/build/html/cpl_discord.html @@ -0,0 +1,216 @@ + + + + + + + Discord reference — Common Python Library documentation + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    Discord reference

    +
    + +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/docs/build/html/cpl_discord.service.html b/docs/build/html/cpl_discord.service.html new file mode 100644 index 00000000..b40cbeb9 --- /dev/null +++ b/docs/build/html/cpl_discord.service.html @@ -0,0 +1,780 @@ + + + + + + + cpl_discord.service — Common Python Library documentation + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    cpl_discord.service

    +
    +

    cpl_discord.service.command_error_handler_service

    +
    +
    +class cpl_discord.service.command_error_handler_service.CommandErrorHandlerService(logger: LoggerABC)
    +

    Bases: OnCommandErrorABC

    +
    +
    +async on_command_error(ctx: Context, error: CommandError)
    +
    + +
    + +
    +
    +

    cpl_discord.service.discord_bot_service

    +
    +
    +class cpl_discord.service.discord_bot_service.DiscordBotService(config: ConfigurationABC, logger: LoggerABC, discord_bot_settings: DiscordBotSettings, env: ApplicationEnvironmentABC, logging_st: LoggingSettings, discord_service: DiscordServiceABC)
    +

    Bases: DiscordBotServiceABC

    +
    +
    +property guilds: Guild
    +

    Sequence[Guild]: The guilds that the connected client is a member of.

    +
    + +
    +
    +async on_ready()
    +
    + +
    +
    +async start_async()
    +
    + +
    +
    +async stop_async()
    +
    + +
    + +
    +
    +

    cpl_discord.service.discord_bot_service_abc

    +
    +
    +class cpl_discord.service.discord_bot_service_abc.DiscordBotServiceABC(**kwargs)
    +

    Bases: Bot

    +
    +
    +abstract property guilds: Guild
    +

    Sequence[Guild]: The guilds that the connected client is a member of.

    +
    + +
    +
    +abstract async on_ready()
    +
    + +
    +
    +abstract async start_async()
    +
    + +
    +
    +abstract async stop_async()
    +
    + +
    + +
    +
    +

    cpl_discord.service.discord_collection

    +
    +
    +class cpl_discord.service.discord_collection.DiscordCollection(service_collection: ServiceCollectionABC)
    +

    Bases: DiscordCollectionABC

    +
    +
    +add_command(_t: Type[DiscordCommandABC])
    +
    + +
    +
    +add_event(_t_event: Type, _t: Type)
    +
    + +
    +
    +get_commands() DiscordCommandABC
    +
    + +
    +
    +get_events_by_base(_t_event: Type) Optional[List]
    +
    + +
    + +
    +
    +

    cpl_discord.service.discord_collection_abc

    +
    +
    +class cpl_discord.service.discord_collection_abc.DiscordCollectionABC
    +

    Bases: ABC

    +
    +
    +abstract add_command(_t: Type[DiscordCommandABC])
    +
    + +
    +
    +abstract add_event(_t_event: Type, _t: Type)
    +
    + +
    +
    +abstract get_commands() DiscordCommandABC
    +
    + +
    +
    +abstract get_events_by_base(_t_event: Type)
    +
    + +
    + +
    +
    +

    cpl_discord.service.discord_service

    +
    +
    +class cpl_discord.service.discord_service.DiscordService(*args: Any, **kwargs: Any)
    +

    Bases: DiscordServiceABC, Cog

    +
    +
    +async init(bot: Bot)
    +
    + +
    +
    +async on_bulk_message_delete(messages: list[discord.message.Message])
    +
    + +
    +
    +async on_command(ctx: Context)
    +
    + +
    +
    +async on_command_completion(ctx: Context)
    +
    + +
    +
    +async on_command_error(ctx: Context, error: CommandError)
    +
    + +
    +
    +async on_connect()
    +
    + +
    +
    +async on_disconnect()
    +
    + +
    +
    +async on_error(event: str, *args, **kwargs)
    +
    + +
    +
    +async on_group_join(channel: GroupChannel, user: User)
    +
    + +
    +
    +async on_group_remove(channel: GroupChannel, user: User)
    +
    + +
    +
    +async on_guild_available(guild: Guild)
    +
    + +
    +
    +async on_guild_channel_create(channel: GuildChannel)
    +
    + +
    +
    +async on_guild_channel_delete(channel: GuildChannel)
    +
    + +
    +
    +async on_guild_channel_pins_update(channel: GuildChannel, list_pin: Optional[datetime])
    +
    + +
    +
    +async on_guild_channel_update(before: GuildChannel, after: GuildChannel)
    +
    + +
    +
    +async on_guild_emojis_update(guild: Guild, before: Sequence[Emoji], after: Sequence[Emoji])
    +
    + +
    +
    +async on_guild_integrations_update(guild: Guild)
    +
    + +
    +
    +async on_guild_join(guild: Guild)
    +
    + +
    +
    +async on_guild_remove(guild: Guild)
    +
    + +
    +
    +async on_guild_role_create(role: Role)
    +
    + +
    +
    +async on_guild_role_delete(role: Role)
    +
    + +
    +
    +async on_guild_role_update(before: Role, after: Role)
    +
    + +
    +
    +async on_guild_unavailable(guild: Guild)
    +
    + +
    +
    +async on_guild_update(before: Guild, after: Guild)
    +
    + +
    +
    +async on_invite_create(invite: Invite)
    +
    + +
    +
    +async on_invite_delete(invite: Invite)
    +
    + +
    +
    +async on_member_ban(guild: Guild, user: User)
    +
    + +
    +
    +async on_member_join(member: Member)
    +
    + +
    +
    +async on_member_remove(member: Member)
    +
    + +
    +
    +async on_member_unban(guild: Guild, user: User)
    +
    + +
    +
    +async on_member_update(before: Member, after: Member)
    +
    + +
    +
    +async on_message(message: Message)
    +
    + +
    +
    +async on_message_delete(message: Message)
    +
    + +
    +
    +async on_message_edit(before: Message, after: Message)
    +
    + +
    +
    +async on_private_channel_create(channel: PrivateChannel)
    +
    + +
    +
    +async on_private_channel_delete(channel: PrivateChannel)
    +
    + +
    +
    +async on_private_channel_pins_update(channel: PrivateChannel, list_pin: Optional[datetime])
    +
    + +
    +
    +async on_private_channel_update(before: GroupChannel, after: GroupChannel)
    +
    + +
    +
    +async on_raw_reaction_add(payload: RawReactionActionEvent)
    +
    + +
    +
    +async on_raw_reaction_clear(payload: RawReactionActionEvent)
    +
    + +
    +
    +async on_raw_reaction_clear_emoji(payload: RawReactionActionEvent)
    +
    + +
    +
    +async on_raw_reaction_remove(payload: RawReactionActionEvent)
    +
    + +
    +
    +async on_reaction_add(reaction: Reaction, user: User)
    +
    + +
    +
    +async on_reaction_clear(message: Message, reactions: list[discord.reaction.Reaction])
    +
    + +
    +
    +async on_reaction_clear_emoji(reaction: Reaction)
    +
    + +
    +
    +async on_reaction_remove(reaction: Reaction, user: User)
    +
    + +
    +
    +async on_ready()
    +
    + +
    +
    +async on_resume()
    +
    + +
    +
    +async on_typing(channel: Messageable, user: Union[User, Member], when: datetime)
    +
    + +
    +
    +async on_user_update(before: User, after: User)
    +
    + +
    +
    +async on_voice_state_update(member: Member, before: VoiceState, after: VoiceState)
    +
    + +
    +
    +async on_webhooks_update(channel: GuildChannel)
    +
    + +
    + +
    +
    +

    cpl_discord.service.discord_service_abc

    +
    +
    +class cpl_discord.service.discord_service_abc.DiscordServiceABC
    +

    Bases: ABC

    +
    +
    +abstract init(bot: Bot)
    +
    + +
    +
    +abstract async on_bulk_message_delete(messages: list[discord.message.Message])
    +
    + +
    +
    +abstract async on_command()
    +
    + +
    +
    +abstract async on_command_completion()
    +
    + +
    +
    +abstract async on_command_error()
    +
    + +
    +
    +abstract async on_connect()
    +
    + +
    +
    +abstract async on_disconnect()
    +
    + +
    +
    +abstract async on_error(event: str, *args, **kwargs)
    +
    + +
    +
    +abstract async on_group_join(chhanel: GroupChannel, user: User)
    +
    + +
    +
    +abstract async on_group_remove(chhanel: GroupChannel, user: User)
    +
    + +
    +
    +abstract async on_guild_available(guild: Guild)
    +
    + +
    +
    +abstract async on_guild_channel_create(channel: GuildChannel)
    +
    + +
    +
    +abstract async on_guild_channel_delete(channel: GuildChannel)
    +
    + +
    +
    +abstract async on_guild_channel_pins_update(channel: GuildChannel, list_pin: Optional[datetime])
    +
    + +
    +
    +abstract async on_guild_channel_update(before: GuildChannel, after: GuildChannel)
    +
    + +
    +
    +abstract async on_guild_emojis_update(guild: Guild, before: Sequence[Emoji], after: Sequence[Emoji])
    +
    + +
    +
    +abstract async on_guild_integrations_update(guild: Guild)
    +
    + +
    +
    +abstract async on_guild_join(guild: Guild)
    +
    + +
    +
    +abstract async on_guild_remove(guild: Guild)
    +
    + +
    +
    +abstract async on_guild_role_create(role: Role)
    +
    + +
    +
    +abstract async on_guild_role_delete(role: Role)
    +
    + +
    +
    +abstract async on_guild_role_update(before: Role, after: Role)
    +
    + +
    +
    +abstract async on_guild_unavailable(guild: Guild)
    +
    + +
    +
    +abstract async on_guild_update(before: Guild, after: Guild)
    +
    + +
    +
    +abstract async on_invite_create(invite: Invite)
    +
    + +
    +
    +abstract async on_invite_delete(invite: Invite)
    +
    + +
    +
    +abstract async on_member_ban(guild: Guild, user: User)
    +
    + +
    +
    +abstract async on_member_join(member: Member)
    +
    + +
    +
    +abstract async on_member_remove(member: Member)
    +
    + +
    +
    +abstract async on_member_unban(guild: Guild, user: User)
    +
    + +
    +
    +abstract async on_member_update(before: Member, after: Member)
    +
    + +
    +
    +abstract async on_message(message: Message)
    +
    + +
    +
    +abstract async on_message_delete(message: Message)
    +
    + +
    +
    +abstract async on_message_edit(before: Message, after: Message)
    +
    + +
    +
    +abstract async on_private_channel_create(channel: PrivateChannel)
    +
    + +
    +
    +abstract async on_private_channel_delete(channel: PrivateChannel)
    +
    + +
    +
    +abstract async on_private_channel_pins_update(channel: PrivateChannel, list_pin: Optional[datetime])
    +
    + +
    +
    +abstract async on_private_channel_update(before: GroupChannel, after: GroupChannel)
    +
    + +
    +
    +abstract async on_reaction_add(reaction: Reaction, user: User)
    +
    + +
    +
    +abstract async on_reaction_clear(message: Message, reactions: list[discord.reaction.Reaction])
    +
    + +
    +
    +abstract async on_reaction_clear_emoji(reaction: Reaction)
    +
    + +
    +
    +abstract async on_reaction_remove(reaction: Reaction, user: User)
    +
    + +
    +
    +abstract async on_ready()
    +
    + +
    +
    +abstract async on_resume()
    +
    + +
    +
    +abstract async on_typing(channel: Messageable, user: Union[User, Member], when: datetime)
    +
    + +
    +
    +abstract async on_user_update(before: User, after: User)
    +
    + +
    +
    +abstract async on_voice_state_update(member: Member, before: VoiceState, after: VoiceState)
    +
    + +
    +
    +abstract async on_webhooks_update(channel: GuildChannel)
    +
    + +
    + +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/docs/build/html/cpl_query.base.html b/docs/build/html/cpl_query.base.html new file mode 100644 index 00000000..2e00c6d8 --- /dev/null +++ b/docs/build/html/cpl_query.base.html @@ -0,0 +1,725 @@ + + + + + + + cpl_query.base — Common Python Library documentation + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    cpl_query.base

    +
    +

    cpl_query.base.default_lambda

    +
    +
    +cpl_query.base.default_lambda.default_lambda(x: object)
    +
    + +
    +
    +

    cpl_query.base.ordered_queryable

    +
    +
    +class cpl_query.base.ordered_queryable.OrderedQueryable(_t: type, _values: Optional[Iterable] = None, _func: Optional[Callable] = None)
    +

    Bases: OrderedQueryableABC

    +

    Implementation of :class: cpl_query.extension.Iterable cpl_query.extension.OrderedIterableABC

    +
    +
    +then_by(_func: Callable) OrderedQueryableABC
    +

    Sorts OrderedList in ascending order by function

    +
    +

    func: Callable

    +
    +
    +

    list of cpl_query.iterable.ordered_iterable_abc.OrderedIterableABC

    +
    +
    + +
    +
    +then_by_descending(_func: Callable) OrderedQueryableABC
    +

    Sorts OrderedList in descending order by function

    +
    +

    func: Callable

    +
    +
    +

    list of cpl_query.iterable.ordered_iterable_abc.OrderedIterableABC

    +
    +
    + +
    + +
    +
    +

    cpl_query.base.ordered_queryable_abc

    +
    +
    +class cpl_query.base.ordered_queryable_abc.OrderedQueryableABC(_t: type, _values: Optional[Iterable] = None, _func: Optional[Callable] = None)
    +

    Bases: QueryableABC

    +
    +
    +abstract then_by(func: Callable) OrderedQueryableABC
    +

    Sorts OrderedList in ascending order by function

    +
    +

    func: Callable

    +
    +
    +

    list of cpl_query.iterable.ordered_iterable_abc.OrderedIterableABC

    +
    +
    + +
    +
    +abstract then_by_descending(func: Callable) OrderedQueryableABC
    +

    Sorts OrderedList in descending order by function

    +
    +

    func: Callable

    +
    +
    +

    list of cpl_query.iterable.ordered_iterable_abc.OrderedIterableABC

    +
    +
    + +
    + +
    +
    +

    cpl_query.base.queryable_abc

    +
    +
    +class cpl_query.base.queryable_abc.QueryableABC(t: Optional[type] = None, values: Optional[list] = None)
    +

    Bases: SequenceABC

    +
    +
    +all(_func: Optional[Callable] = None) bool
    +

    Checks if every element of list equals result found by function

    +
    +
    +
    func: Callable

    selected value

    +
    +
    +
    +
    +

    bool

    +
    +
    + +
    +
    +any(_func: Optional[Callable] = None) bool
    +

    Checks if list contains result found by function

    +
    +
    +
    func: Callable

    selected value

    +
    +
    +
    +
    +

    bool

    +
    +
    + +
    +
    +average(_func: Optional[Callable] = None) Union[int, float, complex]
    +

    Returns average value of list

    +
    +
    +
    func: Callable

    selected value

    +
    +
    +
    +
    +

    Union[int, float, complex]

    +
    +
    + +
    +
    +contains(_value: object) bool
    +

    Checks if list contains value given by function

    +
    +
    +
    value: object

    value

    +
    +
    +
    +
    +

    bool

    +
    +
    + +
    +
    +count(_func: Optional[Callable] = None) int
    +

    Returns length of list or count of found elements

    +
    +
    +
    func: Callable

    selected value

    +
    +
    +
    +
    +

    int

    +
    +
    + +
    +
    +distinct(_func: Optional[Callable] = None) QueryableABC
    +

    Returns list without redundancies

    +
    +
    +
    func: Callable

    selected value

    +
    +
    +
    +
    +
    +
    class
    +

    cpl_query.base.queryable_abc.QueryableABC

    +
    +
    +
    +
    + +
    +
    +element_at(_index: int) any
    +

    Returns element at given index

    +
    +
    +
    _index: int

    index

    +
    +
    +
    +
    +

    Value at _index: any

    +
    +
    + +
    +
    +element_at_or_default(_index: int) Optional[any]
    +

    Returns element at given index or None

    +
    +
    +
    _index: int

    index

    +
    +
    +
    +
    +

    Value at _index: Optional[any]

    +
    +
    + +
    +
    +first() any
    +

    Returns first element

    +
    +

    First element of list: any

    +
    +
    + +
    +
    +first_or_default() any
    +

    Returns first element or None

    +
    +

    First element of list: Optional[any]

    +
    +
    + +
    +
    +for_each(_func: Optional[Callable] = None)
    +

    Runs given function for each element of list

    +
    +
    +
    func: :class: Callable

    function to call

    +
    +
    +
    +
    + +
    +
    +group_by(_func: Optional[Callable] = None) QueryableABC
    +

    Groups by func

    +
    +

    Grouped list[list[any]]: any

    +
    +
    + +
    +
    +last() any
    +

    Returns last element

    +
    +

    Last element of list: any

    +
    +
    + +
    +
    +last_or_default() any
    +

    Returns last element or None

    +
    +

    Last element of list: Optional[any]

    +
    +
    + +
    +
    +max(_func: Optional[Callable] = None) Union[int, float, complex]
    +

    Returns the highest value

    +
    +
    +
    func: Callable

    selected value

    +
    +
    +
    +
    +

    Union[int, float, complex]

    +
    +
    + +
    +
    +median(_func=None) Union[int, float]
    +

    Return the median value of data elements

    +
    +

    Union[int, float]

    +
    +
    + +
    +
    +min(_func: Optional[Callable] = None) Union[int, float, complex]
    +

    Returns the lowest value

    +
    +
    +
    func: Callable

    selected value

    +
    +
    +
    +
    +

    Union[int, float, complex]

    +
    +
    + +
    +
    +order_by(_func: Optional[Callable] = None) QueryableABC
    +

    Sorts elements by function in ascending order

    +
    +
    +
    func: Callable

    selected value

    +
    +
    +
    +
    +
    +
    class
    +

    cpl_query.base.queryable_abc.QueryableABC

    +
    +
    +
    +
    + +
    +
    +order_by_descending(_func: Optional[Callable] = None) QueryableABC
    +

    Sorts elements by function in descending order

    +
    +
    +
    func: Callable

    selected value

    +
    +
    +
    +
    +
    +
    class
    +

    cpl_query.base.queryable_abc.QueryableABC

    +
    +
    +
    +
    + +
    +
    +reverse() QueryableABC
    +

    Reverses list

    +
    +
    +
    class
    +

    cpl_query.base.queryable_abc.QueryableABC

    +
    +
    +
    +
    + +
    +
    +select(_func: Callable) QueryableABC
    +

    Formats each element of list to a given format

    +
    +
    +
    class
    +

    cpl_query.base.queryable_abc.QueryableABC

    +
    +
    +
    +
    + +
    +
    +select_many(_func: Callable) QueryableABC
    +

    Flattens resulting lists to one

    +
    +
    +
    class
    +

    cpl_query.base.queryable_abc.QueryableABC

    +
    +
    +
    +
    + +
    +
    +single() any
    +

    Returns one single element of list

    +
    +

    Found value: any

    +
    +
    +

    ArgumentNoneException: when argument is None +Exception: when argument is None or found more than one element

    +
    +
    + +
    +
    +single_or_default() Optional[any]
    +

    Returns one single element of list

    +
    +

    Found value: Optional[any]

    +
    +
    + +
    +
    +skip(_index: int) QueryableABC
    +

    Skips all elements from index

    +
    +
    +
    _index: int

    index

    +
    +
    +
    +
    +
    +
    class
    +

    cpl_query.base.queryable_abc.QueryableABC

    +
    +
    +
    +
    + +
    +
    +skip_last(_index: int) QueryableABC
    +

    Skips all elements after index

    +
    +
    +
    _index: int

    index

    +
    +
    +
    +
    +
    +
    class
    +

    cpl_query.base.queryable_abc.QueryableABC

    +
    +
    +
    +
    + +
    +
    +sum(_func: Optional[Callable] = None) Union[int, float, complex]
    +

    Sum of all values

    +
    +
    +
    func: Callable

    selected value

    +
    +
    +
    +
    +

    Union[int, float, complex]

    +
    +
    + +
    +
    +take(_index: int) QueryableABC
    +

    Takes all elements from index

    +
    +
    +
    _index: int

    index

    +
    +
    +
    +
    +
    +
    class
    +

    cpl_query.base.queryable_abc.QueryableABC

    +
    +
    +
    +
    + +
    +
    +take_last(_index: int) QueryableABC
    +

    Takes all elements after index

    +
    +
    +
    _index: int

    index

    +
    +
    +
    +
    +
    +
    class
    +

    cpl_query.base.queryable_abc.QueryableABC

    +
    +
    +
    +
    + +
    +
    +where(_func: Optional[Callable] = None) QueryableABC
    +

    Select element by function

    +
    +
    +
    func: Callable

    selected value

    +
    +
    +
    +
    +
    +
    class
    +

    cpl_query.base.queryable_abc.QueryableABC

    +
    +
    +
    +
    + +
    + +
    +
    +

    cpl_query.base.sequence_abc

    +
    +
    +class cpl_query.base.sequence_abc.SequenceABC(t: Optional[type] = None, values: Optional[list] = None)
    +

    Bases: ABC

    +
    +
    +copy() SequenceABC
    +

    Creates a copy of sequence

    +
    +

    SequenceABC

    +
    +
    + +
    +
    +classmethod empty() SequenceABC
    +

    Returns an empty sequence

    +
    +

    Sequence object that contains no elements

    +
    +
    + +
    +
    +index(_object: object) int
    +

    Returns the index of given element

    +
    +

    Index of object

    +
    +
    +

    IndexError if object not in sequence

    +
    +
    + +
    +
    +next()
    +
    + +
    +
    +classmethod range(start: int, length: int) SequenceABC
    +
    + +
    +
    +to_list() list
    +

    Converts :class: cpl_query.base.sequence_abc.SequenceABC to :class: list

    +
    +
    +
    class
    +

    list

    +
    +
    +
    +
    + +
    +
    +property type: type
    +
    + +
    + +
    +
    +

    cpl_query.base.sequence_values

    +
    +
    +class cpl_query.base.sequence_values.SequenceValues(data: list, _t: type)
    +

    Bases: object

    +
    +
    +next()
    +
    + +
    +
    +reset()
    +
    + +
    + +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/docs/build/html/cpl_query.enumerable.html b/docs/build/html/cpl_query.enumerable.html new file mode 100644 index 00000000..36b65ec3 --- /dev/null +++ b/docs/build/html/cpl_query.enumerable.html @@ -0,0 +1,161 @@ + + + + + + + cpl_query.enumerable — Common Python Library documentation + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    cpl_query.enumerable

    +
    +

    cpl_query.enumerable.enumerable

    +
    +
    +class cpl_query.enumerable.enumerable.Enumerable(t: Optional[type] = None, values: Optional[list] = None)
    +

    Bases: EnumerableABC

    +

    Implementation of :class: cpl_query.enumerable.enumerable_abc.EnumerableABC

    +
    + +
    +
    +

    cpl_query.enumerable.enumerable_abc

    +
    +
    +class cpl_query.enumerable.enumerable_abc.EnumerableABC(t: Optional[type] = None, values: Optional[list] = None)
    +

    Bases: QueryableABC

    +

    ABC to define functions on list

    +
    +
    +set_remove_error_check(_value: bool)
    +

    Set flag to check if element exists before removing

    +
    + +
    +
    +to_iterable() IterableABC
    +

    Converts :class: cpl_query.enumerable.enumerable_abc.EnumerableABC to :class: cpl_query.iterable.iterable_abc.IterableABC

    +
    +
    +
    class
    +

    cpl_query.iterable.iterable_abc.IterableABC

    +
    +
    +
    +
    + +
    + +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/docs/build/html/cpl_query.exceptions.html b/docs/build/html/cpl_query.exceptions.html deleted file mode 100644 index 67a3674a..00000000 --- a/docs/build/html/cpl_query.exceptions.html +++ /dev/null @@ -1,178 +0,0 @@ - - - - - - - cpl_query.exceptions — Common Python Library documentation - - - - - - - - - - - - - - - - -
    - - -
    - -
    -
    -
    - -
    -
    -
    -
    - -
    -

    cpl_query.exceptions

    -
    -

    cpl_query.exceptions

    -
    -
    -exception cpl_query.exceptions.ArgumentNoneException(arg: ExceptionArgument)
    -

    Bases: Exception

    -

    Exception when argument is None

    -
    - -
    -
    -class cpl_query.exceptions.ExceptionArgument(value)
    -

    Bases: Enum

    -

    An enumeration.

    -
    -
    -func = 'func'
    -
    - -
    -
    -index = 'index'
    -
    - -
    -
    -list = 'list'
    -
    - -
    -
    -type = 'type'
    -
    - -
    -
    -value = 'value'
    -
    - -
    - -
    -
    -exception cpl_query.exceptions.IndexOutOfRangeException
    -

    Bases: Exception

    -

    Exception when index is out of range

    -
    - -
    -
    -exception cpl_query.exceptions.InvalidTypeException
    -

    Bases: Exception

    -

    Exception when type is invalid

    -
    - -
    -
    -exception cpl_query.exceptions.WrongTypeException
    -

    Bases: Exception

    -

    Exception when type is unexpected

    -
    - -
    -
    - - -
    -
    - -
    -
    -
    -
    - - - - \ No newline at end of file diff --git a/docs/build/html/cpl_query.extension.html b/docs/build/html/cpl_query.extension.html index d374cce7..0056ee6e 100644 --- a/docs/build/html/cpl_query.extension.html +++ b/docs/build/html/cpl_query.extension.html @@ -19,8 +19,8 @@ - - + + @@ -42,20 +42,20 @@
  • Introduction to the CPL Docs
  • Getting started
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference @@ -72,7 +72,7 @@
    • »
    • -
    • Query Reference »
    • +
    • Query reference »
    • cpl_query.extension
    • View page source @@ -85,908 +85,36 @@

      cpl_query.extension

      -
      -

      cpl_query.extension.iterable_abc

      -
      -
      -class cpl_query.extension.iterable_abc.IterableABC(t: Optional[type] = None, values: Optional[list] = None)
      -

      Bases: ABC, list

      -

      ABC to define functions on list

      -
      -
      -abstract all(func: Callable) bool
      -

      Checks if every element of list equals result found by function

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      bool

      -
      -
      - -
      -
      -abstract any(func: Callable) bool
      -

      Checks if list contains result found by function

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      bool

      -
      -
      - -
      -
      -append(_IterableABC__object: object) None
      -

      Adds element to list

      -
      -
      -
      __object: object

      value

      -
      -
      -
      -
      - -
      -
      -abstract average(func: Optional[Callable] = None) Union[int, float, complex]
      -

      Returns average value of list

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      Union[int, float, complex]

      -
      -
      - -
      -
      -abstract contains(value: object) bool
      -

      Checks if list contains value given by function

      -
      -
      -
      value: object

      value

      -
      -
      -
      -
      -

      bool

      -
      -
      - -
      -
      -abstract count(func: Optional[Callable] = None) int
      -

      Returns length of list or count of found elements

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      int

      -
      -
      - -
      -
      -abstract distinct(func: Optional[Callable] = None) IterableABC
      -

      Returns list without redundancies

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -abstract element_at(index: int) any
      -

      Returns element at given index

      -
      -
      -
      index: int

      index

      -
      -
      -
      -
      -

      Value at index: any

      -
      -
      - -
      -
      -abstract element_at_or_default(index: int) Optional[any]
      -

      Returns element at given index or None

      -
      -
      -
      index: int

      index

      -
      -
      -
      -
      -

      Value at index: Optional[any]

      -
      -
      - -
      -
      -extend(_IterableABC__iterable: Iterable) None
      -

      Adds elements of given list to list

      -
      -
      -
      __iterable: :class: cpl_query.extension.iterable.Iterable

      index

      -
      -
      -
      -
      - -
      -
      -abstract first() any
      -

      Returns first element

      -
      -

      First element of list: any

      -
      -
      - -
      -
      -abstract first_or_default() any
      -

      Returns first element or None

      -
      -

      First element of list: Optional[any]

      -
      -
      - -
      -
      -abstract for_each(func: Callable)
      -

      Runs given function for each element of list

      -
      -
      -
      func: :class: Callable

      function to call

      -
      -
      -
      -
      - -
      -
      -abstract last() any
      -

      Returns last element

      -
      -

      Last element of list: any

      -
      -
      - -
      -
      -abstract last_or_default() any
      -

      Returns last element or None

      -
      -

      Last element of list: Optional[any]

      -
      -
      - -
      -
      -abstract max(func: Optional[Callable] = None) Union[int, float, complex]
      -

      Returns highest value

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      Union[int, float, complex]

      -
      -
      - -
      -
      -abstract min(func: Optional[Callable] = None) Union[int, float, complex]
      -

      Returns highest value

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      Union[int, float, complex]

      -
      -
      - -
      -
      -abstract order_by(func: Callable) IterableABC
      -

      Sorts elements by function in ascending order

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -abstract order_by_descending(func: Callable) IterableABC
      -

      Sorts elements by function in descending order

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -abstract reverse() IterableABC
      -

      Reverses list

      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -abstract single() any
      -

      Returns one single element of list

      -
      -

      Found value: any

      -
      -
      -

      ArgumentNoneException: when argument is None -Exception: when argument is None or found more than one element

      -
      -
      - -
      -
      -abstract single_or_default() Optional[any]
      -

      Returns one single element of list

      -
      -

      Found value: Optional[any]

      -
      -
      - -
      -
      -abstract skip(index: int) IterableABC
      -

      Skips all elements from index

      -
      -
      -
      index: int

      index

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -abstract skip_last(index: int) IterableABC
      -

      Skips all elements after index

      -
      -
      -
      index: int

      index

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -abstract sum(func: Optional[Callable] = None) Union[int, float, complex]
      -

      Sum of all values

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      Union[int, float, complex]

      -
      -
      - -
      -
      -abstract take(index: int) IterableABC
      -

      Takes all elements from index

      -
      -
      -
      index: int

      index

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -abstract take_last(index: int) IterableABC
      -

      Takes all elements after index

      -
      -
      -
      index: int

      index

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -to_list() list
      -

      Converts :class: cpl_query.extension.iterable_abc.IterableABC to :class: list

      -
      -
      -
      class
      -

      list

      -
      -
      -
      -
      - -
      -
      -property type: type
      -
      - -
      -
      -abstract where(func: Callable) IterableABC
      -

      Select element by function

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      - -
      -
      -

      cpl_query.extension.iterable

      -
      -
      -class cpl_query.extension.iterable.Iterable(t: Optional[type] = None, values: Optional[list] = None)
      -

      Bases: IterableABC

      -
      -
      -all(func: Callable) bool
      -

      Checks if every element of list equals result found by function

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      bool

      -
      -
      - -
      -
      -any(func: Callable) bool
      -

      Checks if list contains result found by function

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      bool

      -
      -
      - -
      -
      -average(func: Optional[Callable] = None) Union[int, float, complex]
      -

      Returns average value of list

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      Union[int, float, complex]

      -
      -
      - -
      -
      -contains(value: object) bool
      -

      Checks if list contains value given by function

      -
      -
      -
      value: object

      value

      -
      -
      -
      -
      -

      bool

      -
      -
      - -
      -
      -count(func: Optional[Callable] = None) int
      -

      Returns length of list or count of found elements

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      int

      -
      -
      - -
      -
      -distinct(func: Optional[Callable] = None) IterableABC
      -

      Returns list without redundancies

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -element_at(index: int) any
      -

      Returns element at given index

      -
      -
      -
      index: int

      index

      -
      -
      -
      -
      -

      Value at index: any

      -
      -
      - -
      -
      -element_at_or_default(index: int) Optional[any]
      -

      Returns element at given index or None

      -
      -
      -
      index: int

      index

      -
      -
      -
      -
      -

      Value at index: Optional[any]

      -
      -
      - -
      -
      -first() any
      -

      Returns first element

      -
      -

      First element of list: any

      -
      -
      - -
      -
      -first_or_default() Optional[any]
      -

      Returns first element or None

      -
      -

      First element of list: Optional[any]

      -
      -
      - -
      -
      -for_each(func: Callable)
      -

      Runs given function for each element of list

      -
      -
      -
      func: :class: Callable

      function to call

      -
      -
      -
      -
      - -
      -
      -last() any
      -

      Returns last element

      -
      -

      Last element of list: any

      -
      -
      - -
      -
      -last_or_default() Optional[any]
      -

      Returns last element or None

      -
      -

      Last element of list: Optional[any]

      -
      -
      - -
      -
      -max(func: Optional[Callable] = None) Union[int, float, complex]
      -

      Returns highest value

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      Union[int, float, complex]

      -
      -
      - -
      -
      -min(func: Optional[Callable] = None) Union[int, float, complex]
      -

      Returns highest value

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      Union[int, float, complex]

      -
      -
      - -
      -
      -order_by(func: Callable) OrderedIterableABC
      -

      Sorts elements by function in ascending order

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -order_by_descending(func: Callable) OrderedIterableABC
      -

      Sorts elements by function in descending order

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -reverse() IterableABC
      -

      Reverses list

      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -single() any
      -

      Returns one single element of list

      -
      -

      Found value: any

      -
      -
      -

      ArgumentNoneException: when argument is None -Exception: when argument is None or found more than one element

      -
      -
      - -
      -
      -single_or_default() Optional[any]
      -

      Returns one single element of list

      -
      -

      Found value: Optional[any]

      -
      -
      - -
      -
      -skip(index: int) IterableABC
      -

      Skips all elements from index

      -
      -
      -
      index: int

      index

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -skip_last(index: int) IterableABC
      -

      Skips all elements after index

      -
      -
      -
      index: int

      index

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -sum(func: Optional[Callable] = None) Union[int, float, complex]
      -

      Sum of all values

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -

      Union[int, float, complex]

      -
      -
      - -
      -
      -take(index: int) IterableABC
      -

      Takes all elements from index

      -
      -
      -
      index: int

      index

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -take_last(index: int) IterableABC
      -

      Takes all elements after index

      -
      -
      -
      index: int

      index

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      -
      -where(func: Callable) IterableABC
      -

      Select element by function

      -
      -
      -
      func: Callable

      selected value

      -
      -
      -
      -
      -
      -
      class
      -

      cpl_query.extension.iterable_abc.IterableABC

      -
      -
      -
      -
      - -
      - -

      cpl_query.extension.list

      -class cpl_query.extension.list.List(t: Optional[type] = None, values: Optional[list] = None)
      -

      Bases: Iterable

      +class cpl_query.extension.list.List(t: Optional[type] = None, values: Optional[Iterable] = None) +

      Bases: Iterable

      Implementation of :class: cpl_query.extension.iterable.Iterable

      -
      - -
      -
      -

      cpl_query.extension.ordered_iterable_abc

      -
      -
      -class cpl_query.extension.ordered_iterable_abc.OrderedIterableABC(_t: type, _func: Optional[Callable] = None)
      -

      Bases: IterableABC

      -
      -abstract then_by(func: Callable) OrderedIterableABC
      -

      Sorts OrderedList in ascending order by function

      +
      +to_enumerable() EnumerableABC
      +

      Converts :class: cpl_query.iterable.iterable_abc.IterableABC to :class: cpl_query.enumerable.enumerable_abc.EnumerableABC

      -

      func: Callable

      -
      -
      -

      list of cpl_query.extension.OrderedIterableABC

      +
      +
      class
      +

      cpl_query.enumerable.enumerable_abc.EnumerableABC

      +
      +
      -
      -abstract then_by_descending(func: Callable) OrderedIterableABC
      -

      Sorts OrderedList in descending order by function

      +
      +to_iterable() IterableABC
      +

      Converts :class: cpl_query.enumerable.enumerable_abc.EnumerableABC to :class: cpl_query.iterable.iterable_abc.IterableABC

      -

      func: Callable

      -
      -
      -

      list of cpl_query.extension.OrderedIterableABC

      -
      -
      - -
      - -
      -
      -

      cpl_query.extension.ordered_iterable

      -
      -
      -class cpl_query.extension.ordered_iterable.OrderedIterable(_t: Optional[type] = None)
      -

      Bases: Iterable, OrderedIterableABC

      -

      Implementation of :class: cpl_query.extension.Iterable cpl_query.extension.OrderedIterableABC

      -
      -
      -then_by(_func: Callable) OrderedIterableABC
      -

      Sorts OrderedList in ascending order by function

      -
      -

      func: Callable

      -
      -
      -

      list of cpl_query.extension.OrderedIterableABC

      -
      -
      - -
      -
      -then_by_descending(_func: Callable) OrderedIterableABC
      -

      Sorts OrderedList in descending order by function

      -
      -

      func: Callable

      -
      -
      -

      list of cpl_query.extension.OrderedIterableABC

      +
      +
      class
      +

      cpl_query.iterable.iterable_abc.IterableABC

      +
      +
      @@ -999,14 +127,14 @@ Exception: when argument is None or found more than one element

  • +
  • features (cpl_discord.container.guild.Guild attribute) +
  • file_level (cpl_core.logging.logging_settings_name_enum.LoggingSettingsNameEnum attribute)
  • filename (cpl_core.logging.logging_settings.LoggingSettings property) @@ -989,34 +1602,22 @@
  • (cpl_core.logging.logging_settings_name_enum.LoggingSettingsNameEnum attribute)
  • -
  • first() (cpl_query.extension.iterable.Iterable method) - -
  • -
  • first_or_default() (cpl_query.extension.iterable.Iterable method) - -
  • first_to_lower() (cpl_core.utils.string.String static method)
  • first_to_upper() (cpl_core.utils.string.String static method)
  • FirstCharToLowerPipe (class in cpl_core.pipes.first_char_to_lower_pipe)
  • - -
  • function (cpl_core.console.console_call.ConsoleCall property)
  • @@ -1049,6 +1652,12 @@

    G

    - + @@ -1099,6 +1736,10 @@
  • header_list (cpl_core.mailing.email.EMail property)
  • +
  • hoist (cpl_discord.container.role.Role attribute) +
  • + + -

    P

    - +
    +
    +

    Q

    + + +
    +

    R

    + -
    -
  • reset_cursor_position() (cpl_core.console.console.Console class method) +
  • remove() (cpl_query.iterable.iterable_abc.IterableABC method) +
  • +
  • reset() (cpl_query.base.sequence_values.SequenceValues method)
  • +
  • select_many() (cpl_query.base.queryable_abc.QueryableABC method) +
  • send_mail() (cpl_core.mailing.email_client_abc.EMailClientABC method)
  • +
  • SequenceABC (class in cpl_query.base.sequence_abc) +
  • +
  • SequenceValues (class in cpl_query.base.sequence_values) +
  • server (cpl_core.database.connection.database_connection.DatabaseConnection property)
  • -
    @@ -1604,30 +3059,40 @@ +
  • timed_out_until (cpl_discord.container.member.Member attribute) +
  • TimeFormatSettings (class in cpl_core.time.time_format_settings)
  • TimeFormatSettingsNamesEnum (class in cpl_core.time.time_format_settings_names_enum)
  • +
  • to_enumerable() (cpl_query.extension.list.List method) + +
  • +
  • to_iterable() (cpl_query.enumerable.enumerable_abc.EnumerableABC method) + +
  • to_list() (cpl_core.configuration.configuration_variable_name_enum.ConfigurationVariableNameEnum static method)
  • transient (cpl_core.dependency_injection.service_lifetime_enum.ServiceLifetimeEnum attribute)
  • -
  • type (cpl_query.exceptions.ExceptionArgument attribute) +
  • translate() (cpl_translation.translation_service.TranslationService method)
  • +
  • TranslatePipe (class in cpl_translation.translate_pipe) +
  • +
  • TranslationService (class in cpl_translation.translation_service) +
  • +
  • TranslationServiceABC (class in cpl_translation.translation_service_abc) +
  • +
  • TranslationSettings (class in cpl_translation.translation_settings) +
  • +
  • type (cpl_query.base.sequence_abc.SequenceABC property) + +
  • @@ -1694,6 +3195,10 @@

    U

    + -
    +
    @@ -1806,7 +3315,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/getting_started.html b/docs/build/html/getting_started.html index 4a2ad194..30d07942 100644 --- a/docs/build/html/getting_started.html +++ b/docs/build/html/getting_started.html @@ -47,9 +47,11 @@
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -150,7 +152,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/index.html b/docs/build/html/index.html index 644661a1..0bf47481 100644 --- a/docs/build/html/index.html +++ b/docs/build/html/index.html @@ -41,9 +41,11 @@
  • Introduction to the CPL Docs
  • Getting started
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -234,9 +236,11 @@
  • Introduction to the CPL Docs
  • Getting started
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -252,7 +256,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/introduction.html b/docs/build/html/introduction.html index 9b2551b5..6db361f3 100644 --- a/docs/build/html/introduction.html +++ b/docs/build/html/introduction.html @@ -46,9 +46,11 @@
  • Getting started
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -187,7 +189,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/modules.html b/docs/build/html/modules.html index fee698ea..f31637d2 100644 --- a/docs/build/html/modules.html +++ b/docs/build/html/modules.html @@ -40,9 +40,11 @@
  • Introduction to the CPL Docs
  • Getting started
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -131,7 +133,7 @@ -
  • CLI Reference @@ -90,7 +92,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/searchindex.js b/docs/build/html/searchindex.js index 72e5880f..a2b6df51 100644 --- a/docs/build/html/searchindex.js +++ b/docs/build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["cli.add", "cli.build", "cli.generate", "cli.help", "cli.install", "cli.new", "cli.overview", "cli.publish", "cli.remove", "cli.start", "cli.uninstall", "cli.update", "cli.version", "contributing", "cpl_cli", "cpl_core", "cpl_core.application", "cpl_core.configuration", "cpl_core.console", "cpl_core.database", "cpl_core.database.connection", "cpl_core.database.context", "cpl_core.dependency_injection", "cpl_core.environment", "cpl_core.logging", "cpl_core.mailing", "cpl_core.pipes", "cpl_core.time", "cpl_core.utils", "cpl_query", "cpl_query.exceptions", "cpl_query.extension", "getting_started", "index", "introduction", "modules", "quickstart", "setup", "tutorials", "tutorials.appsettings", "tutorials.console", "tutorials.console-arguments", "tutorials.create-startup", "tutorials.extend-application", "tutorials.extend-startup", "tutorials.logging", "tutorials.mail"], "filenames": ["cli.add.md", "cli.build.md", "cli.generate.md", "cli.help.md", "cli.install.md", "cli.new.md", "cli.overview.md", "cli.publish.md", "cli.remove.md", "cli.start.md", "cli.uninstall.md", "cli.update.md", "cli.version.md", "contributing.md", "cpl_cli.rst", "cpl_core.rst", "cpl_core.application.rst", "cpl_core.configuration.rst", "cpl_core.console.rst", "cpl_core.database.rst", "cpl_core.database.connection.rst", "cpl_core.database.context.rst", "cpl_core.dependency_injection.rst", "cpl_core.environment.rst", "cpl_core.logging.rst", "cpl_core.mailing.rst", "cpl_core.pipes.rst", "cpl_core.time.rst", "cpl_core.utils.rst", "cpl_query.rst", "cpl_query.exceptions.rst", "cpl_query.extension.rst", "getting_started.rst", "index.rst", "introduction.md", "modules.rst", "quickstart.md", "setup.md", "tutorials.rst", "tutorials.appsettings.md", "tutorials.console.md", "tutorials.console-arguments.md", "tutorials.create-startup.md", "tutorials.extend-application.md", "tutorials.extend-startup.md", "tutorials.logging.md", "tutorials.mail.md"], "titles": ["cpl add", "cpl build", "cpl generate", "cpl help", "cpl install", "cpl new", "CLI Overview and Command Reference", "cpl publish", "cpl remove", "cpl start", "cpl uninstall", "cpl update", "cpl version", "Contributing to CPL", "CLI Reference", "API Reference", "cpl_core.application", "cpl_core.configuration", "cpl_core.console", "cpl_core.database", "cpl_core.database.connection", "cpl_core.database.context", "cpl_core.dependency_injection", "cpl_core.environment", "cpl_core.logging", "cpl_core.mailing", "cpl_core.pipes", "cpl_core.time", "cpl_core.utils", "Query Reference", "cpl_query.exceptions", "cpl_query.extension", "Getting started", "Introduction to the CPL Docs", "Introduction to the CPL Docs", "cpl", "Getting started with CPL", "Setting up the local environment and workspace", "Tutorials", "Using appsettings.json", "Use cpl_core.console.Console", "Handle console arguments", "Create startup class", "Extend application", "Extend startup", "Use builtin logger", "Send mails"], "terms": {"remov": [0, 6, 7, 14, 35], "project": [0, 1, 4, 6, 7, 8, 10, 11, 13, 14, 32, 35, 37], "from": [0, 6, 7, 8, 10, 12, 13, 16, 17, 18, 19, 31, 33, 34, 36], "workspac": [0, 1, 5, 6, 8, 32, 35], "sourc": [0, 1, 7, 13, 28, 36, 37], "target": [0, 1], "A": [0, 5, 13], "refer": [0, 8, 33, 34, 35], "given": [0, 1, 4, 6, 7, 10, 17, 18, 19, 22, 28, 31], "If": [0, 5, 8, 13, 18, 37], "you": [0, 1, 6, 8, 13, 33, 34, 36, 37], "call": [0, 8, 16, 17, 18, 31], "command": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13, 14, 28, 33, 34, 35, 37], "can": [0, 1, 6, 7, 8, 13, 33, 37], "us": [0, 1, 5, 6, 7, 8, 13, 16, 18, 25, 28, 32, 33, 34, 35, 36, 37, 38], "name": [0, 1, 2, 5, 6, 7, 8, 17, 23, 24, 28, 37], "otherwis": [0, 8, 18], "path": [0, 1, 7, 8, 14, 17, 23, 24, 35, 37], "must": [0, 1, 6, 8, 13, 18], "specifi": [0, 4, 5, 6, 8, 10, 11, 17, 18], "valu": [0, 1, 2, 3, 4, 5, 7, 8, 10, 17, 18, 19, 22, 23, 24, 25, 26, 27, 30, 31], "type": [0, 1, 2, 3, 4, 7, 8, 10, 14, 16, 17, 22, 30, 31, 35], "which": [0, 6, 17, 18, 28, 37], "ha": [0, 18], "ad": [0, 13], "str": [0, 1, 2, 3, 4, 5, 7, 8, 10, 17, 18, 19, 20, 21, 23, 24, 25, 26, 27, 28, 36], "referenc": 0, "simul": [0, 4, 8, 10, 11], "whether": [0, 4, 5, 8, 10, 11, 17], "copi": 1, "an": [1, 6, 7, 16, 17, 18, 19, 22, 23, 24, 25, 27, 30, 36, 37], "python": [1, 13, 15, 28, 33, 34, 35, 36, 37], "app": [1, 6, 16, 32, 33, 34, 35, 36], "output": [1, 6, 7, 17, 18, 33, 34, 36, 37], "directori": [1, 6, 7, 23, 33, 34, 36], "execut": [1, 6, 7, 17, 28], "within": [1, 6, 13], "b": [1, 6, 13], "The": [1, 2, 4, 5, 6, 7, 8, 10, 13, 22, 25, 28, 33, 34, 36, 37], "consol": [1, 3, 5, 6, 7, 15, 17, 24, 32, 33, 34, 35, 36, 38], "librari": [1, 5, 6, 7, 15, 32, 33, 34, 35], "all": [1, 7, 12, 13, 17, 31], "includ": [1, 13, 37], "file": [1, 2, 6, 7, 8, 9, 13, 17, 33, 37], "run": [1, 5, 16, 17, 18, 21, 28, 31, 33, 34, 36, 37], "directli": [1, 13], "prepar": [1, 6, 7, 13, 16, 33], "publish": [1, 6, 14, 33, 35, 37], "them": 1, "argument": [1, 5, 6, 7, 11, 14, 17, 18, 28, 30, 31, 32, 33, 34, 35, 38], "base": [2, 5, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 33, 34, 36], "g": [2, 6], "abc": [2, 16, 17, 20, 21, 22, 23, 24, 25, 26, 31], "abstract": [2, 16, 17, 20, 21, 22, 23, 24, 25, 26, 31], "class": [2, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 38], "enum": [2, 17, 18, 19, 22, 23, 24, 25, 27, 30], "pipe": [2, 15, 22, 33, 34, 35], "servic": [2, 5, 16, 17, 22, 24, 25, 33, 34, 36], "set": [2, 16, 17, 18, 19, 21, 22, 23, 24, 25, 27, 28, 32, 35, 36], "configmodel": 2, "test": [2, 13, 23, 33, 34, 36], "thread": [2, 18], "valid": [2, 25, 36], "list": [3, 6, 12, 17, 18, 21, 22, 25, 26, 28, 29, 30, 33, 35], "avail": [3, 6, 13], "short": [3, 6], "h": [3, 6], "show": [3, 18], "messag": [3, 18, 24], "thi": [3, 13, 16, 33, 34, 36, 37], "packag": [4, 5, 6, 10, 12, 28, 32, 33, 34, 35, 36], "via": [4, 10, 13, 33, 34], "pip": [4, 10, 12, 15, 33, 34, 35, 36, 37], "i": [4, 6, 36], "without": [4, 6, 13, 31], "deped": 4, "your": [4, 6, 9, 13, 33, 34, 37], "dev": [4, 10], "develop": [4, 6, 10, 13, 23, 33, 34, 36, 37], "mode": [4, 10], "virtual": [4, 10], "gener": [5, 6, 7, 14, 33, 35, 36, 37], "initi": [5, 32, 35], "add": [5, 6, 13, 14, 17, 22, 25, 31, 35, 36], "n": [5, 6, 36, 37], "see": [5, 13, 20, 26, 36, 37], "simpl": [5, 33, 34, 37], "applic": [5, 9, 15, 18, 23, 24, 25, 32, 33, 34, 35, 36, 37, 38], "async": [5, 16], "startup": [5, 16, 32, 33, 34, 35, 38], "provid": [5, 13, 16, 22, 33, 34, 36, 37], "noth": 5, "venv": 5, "instal": [6, 12, 14, 28, 32, 35, 36], "cpl": [6, 14, 15, 22, 32, 37], "To": [6, 13, 36, 37], "creat": [6, 7, 13, 16, 17, 18, 22, 24, 25, 28, 32, 33, 34, 35, 38], "build": [6, 7, 14, 16, 28, 33, 35, 36, 37], "serv": 6, "new": [6, 13, 14, 18, 35, 36, 37], "server": [6, 20, 25, 33, 34, 37], "go": [6, 13, 33], "parent": 6, "follow": [6, 13, 36, 37], "my": [6, 13, 37], "first": [6, 13, 26, 28, 31, 33, 34], "cd": [6, 37], "start": [6, 14, 33, 34, 35], "In": [6, 13, 36], "termin": [6, 18, 36, 37], "commandnameoralia": 6, "requiredarg": 6, "optionalsarg": 6, "most": [6, 36, 37], "some": 6, "option": [6, 13, 17, 18, 19, 22, 24, 25, 28, 31, 33, 34, 36], "have": [6, 13, 36, 37], "alias": [6, 17], "ar": [6, 7, 13, 17], "shown": [6, 17, 37], "statement": [6, 21], "each": [6, 17, 31], "prefix": [6, 17], "absolut": 6, "current": [6, 23], "work": [6, 13, 23, 33, 34], "either": 6, "root": 6, "take": [6, 17, 31], "artifact": 6, "addit": [6, 13], "ani": [6, 18, 26, 31], "defin": [6, 17, 18, 31, 37], "its": [6, 13], "own": 6, "suppli": 6, "same": 6, "format": [6, 24, 27], "immedi": 6, "alia": [6, 26], "descript": [6, 11, 14, 35], "dist": [6, 7], "help": [6, 13, 14, 33, 34, 35], "With": 6, "depend": [6, 11, 33, 34, 36], "p": [6, 7], "setup": [6, 7, 34, 37], "py": [6, 7, 28, 33, 36], "r": [6, 8], "s": [6, 9, 13, 32, 35], "restart": [6, 9, 37], "chang": [6, 9, 13, 21, 36], "uninstal": [6, 14, 28, 35], "ui": [6, 10], "updat": [6, 13, 14, 35], "u": [6, 11], "version": [6, 14, 35], "v": [6, 12], "data": [7, 18], "cpl_core": [7, 15, 32, 35, 36, 37, 38], "json": [7, 17, 32, 33, 34, 35, 36, 37, 38], "delet": 8, "cli": [12, 32, 33, 34, 35, 36], "we": [13, 36], "would": 13, "love": 13, "make": [13, 37], "even": 13, "better": 13, "than": [13, 31], "todai": 13, "As": 13, "contributor": 13, "here": [13, 37], "like": [13, 33, 36], "issus": 13, "find": 13, "our": 13, "gitea": 13, "repositori": 13, "fix": 13, "implement": [13, 22, 31], "pleas": 13, "consid": 13, "size": 13, "order": [13, 31], "determin": 13, "right": 13, "step": 13, "proce": 13, "For": 13, "major": [13, 26], "open": [13, 36, 37], "outlin": 13, "propos": 13, "so": [13, 37], "discuss": 13, "process": 13, "allow": 13, "coordin": [13, 18], "effort": 13, "prevent": 13, "duplic": 13, "craft": 13, "successfulli": 13, "accept": 13, "note": 13, "topic": 13, "document": 13, "significantli": 13, "re": 13, "write": [13, 18, 24, 33, 34], "count": [13, 31], "small": 13, "befor": [13, 18], "search": [13, 17, 22], "tracker": 13, "mayb": 13, "problem": 13, "alreadi": [13, 36, 37], "exist": 13, "might": 13, "inform": [13, 24, 37], "workaround": 13, "readili": 13, "want": [13, 36], "soon": [13, 32, 35, 38], "possibl": [13, 17], "need": [13, 36, 37], "reproduc": 13, "confirm": 13, "requir": 13, "minim": 13, "reproduct": 13, "scenario": 13, "give": 13, "wealth": 13, "import": [13, 36], "back": [13, 18], "forth": 13, "question": 13, "quickli": 13, "point": [13, 16, 18], "out": [13, 30, 36, 37], "well": 13, "save": [13, 17, 21], "maintain": 13, "time": [13, 15, 24, 35], "ultim": 13, "abl": 13, "more": [13, 26, 31, 37], "often": 13, "themselv": 13, "while": 13, "understand": [13, 33, 34, 36, 37], "sometim": 13, "hard": 13, "extract": 13, "essenti": [13, 36], "bit": 13, "larger": 13, "codebas": 13, "realli": 13, "isol": 13, "unfortun": 13, "investig": 13, "don": [13, 36], "t": [13, 31, 36], "hear": 13, "close": [13, 18], "doesn": 13, "enough": 13, "info": [13, 24, 33, 34], "pr": 13, "relat": 13, "Be": 13, "sure": 13, "describ": 13, "design": 13, "d": 13, "upfront": 13, "ensur": 13, "readi": [13, 37], "fork": 13, "sh": [13, 15, 35, 37], "edraft": [13, 15, 35, 37], "de": [13, 26, 37], "sh_cpl": [13, 37], "repo": 13, "git": 13, "branch": 13, "checkout": 13, "master": 13, "patch": 13, "appropri": 13, "case": [13, 26, 28, 36], "commit": 13, "line": [13, 18, 36], "automat": 13, "rm": 13, "edit": 13, "push": 13, "origin": 13, "send": [13, 25, 32, 33, 34, 35, 38], "team": 13, "reserv": 13, "commun": 13, "member": 13, "who": 13, "haven": 13, "been": 13, "good": 13, "citizen": 13, "Such": 13, "behavior": 13, "appli": 13, "outsid": 13, "manag": [13, 33, 34], "channel": 13, "ask": 13, "fixup": 13, "head": 13, "That": 13, "thank": 13, "consist": 13, "throughout": 13, "keep": 13, "mind": 13, "one": [13, 31], "unit": 13, "public": 13, "api": [13, 33, 34, 35], "method": 13, "pep": 13, "8": 13, "style": 13, "guid": 13, "By": 13, "agre": 13, "under": 13, "mit": [13, 26], "overview": [14, 35, 37], "tabl": [14, 18, 28, 32, 33, 34, 35], "content": [14, 15, 32, 35], "basic": [14, 35, 36, 37], "workflow": [14, 35], "languag": [14, 35], "syntax": [14, 35], "rel": [14, 35], "schemat": [14, 35], "flag": [14, 35], "application_abc": [15, 35], "application_build": [15, 35], "application_builder_abc": [15, 35], "startup_abc": [15, 35], "configur": [15, 16, 22, 33, 34, 35], "configuration_abc": [15, 16, 22, 35], "configuration_model_abc": [15, 35], "configuration_variable_name_enum": [15, 35], "console_argu": [15, 35], "background_color_enum": [15, 35], "console_cal": [15, 35], "foreground_color_enum": [15, 35], "spinner_thread": [15, 35], "databas": [15, 22, 35], "connect": [15, 19, 21, 25, 35], "database_connect": [15, 19, 35], "database_connection_abc": [15, 19, 35], "context": [15, 19, 22, 35, 37], "database_context": [15, 19, 35], "database_context_abc": [15, 19, 22, 35], "submodul": [15, 35], "database_model": [15, 35], "database_set": [15, 20, 21, 35], "database_settings_name_enum": [15, 35], "dependency_inject": [15, 16, 35], "service_collect": [15, 35], "service_collection_abc": [15, 16, 35], "service_descriptor": [15, 35], "service_lifetime_enum": [15, 35], "service_provid": [15, 35], "service_provider_abc": [15, 16, 35], "environ": [15, 16, 17, 24, 25, 32, 33, 34, 35], "application_environ": [15, 35], "application_environment_abc": [15, 16, 24, 25, 35], "environment_name_enum": [15, 35], "log": [15, 25, 33, 34, 35], "logger_abc": [15, 25, 35], "logger_servic": [15, 35], "logging_level_enum": [15, 35], "logging_set": [15, 35], "logging_settings_name_enum": [15, 35], "mail": [15, 32, 33, 34, 35, 38], "email": [15, 35], "email_client_abc": [15, 35], "email_client_servic": [15, 35], "email_client_set": [15, 35], "email_client_settings_name_enum": [15, 35], "bool_pip": [15, 35], "modul": [15, 35], "first_char_to_lower_pip": [15, 35], "first_to_upper_pip": [15, 35], "ip_address_pip": [15, 35], "pipe_abc": [15, 35], "to_camel_case_pip": [15, 35], "to_snake_case_pip": [15, 35], "version_pip": [15, 35], "core": [15, 20, 33, 35, 37], "common": [15, 33, 34, 35], "time_format_set": [15, 24, 35], "time_format_settings_names_enum": [15, 35], "util": [15, 33, 34, 35], "credential_manag": [15, 35], "string": [15, 18, 20, 24, 25, 26, 33, 34, 35, 36], "applicationabc": 16, "config": [16, 22], "configurationabc": [16, 17, 22], "serviceproviderabc": [16, 17, 22], "contain": [16, 31], "object": [16, 17, 18, 22, 25, 28, 31, 33, 34], "load": 16, "appset": [16, 32, 35, 36, 38], "instanc": [16, 22], "main": [16, 36], "custom": [16, 17, 23, 33, 34], "entri": [16, 18], "run_async": 16, "applicationbuild": 16, "applicationbuilderabc": 16, "build_async": 16, "use_extens": 16, "extens": [16, 29, 33, 34, 35], "union": [16, 17, 18, 22, 31], "applicationextensionabc": 16, "startupextensionabc": 16, "use_startup": 16, "startupabc": 16, "arg": [16, 17, 18, 21, 26, 28, 30], "configure_configur": 16, "env": [16, 24], "applicationenvironmentabc": [16, 17, 23, 24, 25], "configure_servic": 16, "servicecollectionabc": [16, 22], "add_configur": 17, "key_typ": 17, "configurationmodelabc": [17, 19, 24, 25, 27], "add_console_argu": 17, "argumentabc": 17, "known": 17, "consoleargumentabc": 17, "add_environment_vari": 17, "read": [17, 18, 36], "variabl": [17, 28], "add_json_fil": 17, "bool": [17, 18, 19, 25, 26, 31], "none": [17, 18, 22, 24, 25, 28, 30, 31], "true": 17, "error": [17, 18, 24, 33, 34], "should": [17, 36, 37], "occur": 17, "wa": [17, 37], "found": [17, 31], "place": 17, "store": 17, "properti": [17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 31], "additional_argu": 17, "argument_error_funct": 17, "callabl": [17, 18, 22, 31], "argument_abc": 17, "create_console_argu": 17, "arg_typ": 17, "argumenttypeenum": 17, "token": 17, "kwarg": [17, 18], "begin": 17, "value_token": 17, "were": 17, "is_value_token_opt": 17, "runnabl": 17, "when": [17, 18, 30, 31], "for_each_argu": 17, "iter": [17, 29, 35], "through": [17, 36], "function": [17, 18, 28, 31, 33, 36], "get_configur": 17, "search_typ": 17, "return": [17, 18, 22, 25, 31, 36], "parse_console_argu": 17, "invalid": [17, 30], "from_dict": [17, 19, 24, 25, 27], "dict": [17, 18, 19, 24, 25, 26, 27], "convert": [17, 24, 25, 26, 27, 28, 31, 33, 34], "attribut": [17, 19, 24, 25, 27], "configurationvariablenameenum": 17, "enumer": [17, 18, 19, 22, 23, 24, 25, 27, 30], "static": [17, 25, 28], "to_list": [17, 31], "backgroundcolorenum": 18, "blue": 18, "on_blu": 18, "cyan": 18, "on_cyan": 18, "default": [18, 37], "on_default": 18, "green": 18, "on_green": 18, "grei": 18, "on_grei": 18, "magenta": 18, "on_magenta": 18, "red": 18, "on_r": 18, "white": 18, "on_whit": 18, "yellow": 18, "on_yellow": 18, "handl": [18, 28, 32, 33, 34, 35, 38], "input": [18, 33, 34, 36], "background_color": 18, "bytes_or_buff": 18, "encod": [18, 28], "expos": 18, "buffer": [18, 19], "decod": [18, 28], "handler": 18, "result": [18, 25, 28, 31], "__str__": 18, "repr": 18, "sy": 18, "getdefaultencod": 18, "strict": 18, "classmethod": [18, 28], "banner": [18, 33, 34], "print": [18, 36], "clear": 18, "color_reset": 18, "reset": [18, 28], "color": 18, "disabl": 18, "interact": 18, "enabl": [18, 36], "tb": 18, "traceback": 18, "foreground_color": 18, "read_lin": 18, "next": [18, 32, 35], "reset_cursor_posit": 18, "cursor": [18, 20, 21], "posit": 18, "select": [18, 21, 31, 36], "char": [18, 26, 28], "header_foreground_color": 18, "foregroundcolorenum": 18, "header_background_color": 18, "option_foreground_color": 18, "option_background_color": 18, "cursor_foreground_color": 18, "cursor_background_color": 18, "menu": [18, 32, 33, 34, 35], "charact": 18, "element": [18, 21, 31], "header": [18, 24, 25], "foreground": 18, "background": 18, "set_background_color": 18, "set_cursor_posit": 18, "x": 18, "int": [18, 19, 25, 26, 28, 31, 36], "y": [18, 36], "set_foreground_color": 18, "set_hold_back": 18, "spinner": [18, 33, 34], "text_foreground_color": 18, "spinner_foreground_color": 18, "text_background_color": 18, "spinner_background_color": 18, "end": [18, 24], "stop": 18, "text": 18, "keyword": 18, "activ": 18, "last": [18, 31], "write_at": [18, 33, 34], "write_lin": [18, 33, 34, 36], "write_line_at": [18, 33, 34], "consolecal": 18, "repres": [18, 19, 23, 25], "hold": 18, "spinnerthread": 18, "msg_len": 18, "length": [18, 28, 31, 36], "exit": [18, 36], "stop_spin": 18, "databaseset": [19, 20, 21, 22], "auth_plugin": 19, "charset": 19, "host": [19, 25], "password": [19, 36], "port": [19, 25], "use_unicod": 19, "user": [19, 36], "databasesettingsnameenum": 19, "authplugin": 19, "useunicod": 19, "databaseconnect": 20, "databaseconnectionabc": 20, "represent": [20, 21, 22, 24, 25, 27], "connection_str": 20, "http": [20, 37], "doc": 20, "sqlalchemi": 20, "org": 20, "en": 20, "14": 20, "engin": 20, "html": 20, "mysqlcursorbuff": [20, 21], "mysqlconnectionabstract": 20, "databasecontext": 21, "databasecontextabc": [21, 22], "save_chang": 21, "tupl": [21, 26], "sql": 21, "fetch": 21, "servicecollect": 22, "collect": 22, "add_db_context": 22, "db_context_typ": 22, "db_set": 22, "db_context": 22, "add_log": 22, "intern": 22, "logger": [22, 24, 25, 32, 33, 34, 35, 38], "add_pip": 22, "transient": [22, 33, 34], "add_scop": 22, "service_typ": 22, "scope": [22, 33, 34], "lifetim": [22, 33, 34], "self": 22, "add_singleton": 22, "singleton": [22, 33, 34], "add_transi": 22, "build_service_provid": 22, "add_discord": 22, "discord": [22, 33], "add_transl": 22, "translat": [22, 33], "servicedescriptor": 22, "servicelifetimeenum": 22, "base_typ": 22, "descriptor": 22, "1": [22, 24, 26, 36], "0": [22, 24, 26, 36], "2": [22, 24, 26, 36], "serviceprovid": 22, "build_servic": 22, "instance_typ": 22, "create_scop": 22, "scopeabc": 22, "get_servic": 22, "set_scop": 22, "applicationenviron": 23, "environmentnameenum": 23, "product": [23, 33, 34], "application_nam": 23, "date_time_now": 23, "datetim": 23, "end_tim": 23, "environment_nam": 23, "host_nam": 23, "runtime_directori": 23, "set_runtime_directori": 23, "runtim": [23, 33, 34], "set_working_directori": 23, "working_directori": 23, "start_tim": 23, "stage": [23, 33, 34], "loggerabc": [24, 25], "debug": [24, 33, 34], "ex": 24, "except": [24, 29, 31, 35], "thrown": 24, "fatal": [24, 33, 34], "program": 24, "trace": [24, 33, 34], "warn": [24, 33, 34], "loggingset": 24, "time_format": [24, 27], "timeformatset": [24, 27], "tree": 24, "logfil": 24, "logginglevelenum": 24, "5": [24, 36], "4": 24, "off": 24, "6": 24, "3": 24, "filenam": 24, "level": [24, 33, 34], "loggingsettingsnameenum": 24, "console_level": 24, "consoleloglevel": 24, "file_level": 24, "fileloglevel": 24, "subject": 25, "bodi": 25, "transceiv": 25, "receiv": 25, "e": 25, "add_head": 25, "add_receiv": 25, "check_mail": 25, "address": 25, "check": [25, 31], "get_cont": 25, "header_list": 25, "receiver_list": 25, "emailclientabc": 25, "emailcli": 25, "send_mail": 25, "mail_set": 25, "emailclientset": 25, "login": 25, "credenti": [25, 28, 33, 34], "user_nam": 25, "emailclientsettingsnameenum": 25, "usernam": 25, "boolpip": 26, "pipeabc": 26, "transform": 26, "firstchartolowerpip": 26, "lower": [26, 28, 36], "firsttoupperpip": 26, "upper": [26, 28, 36], "ipaddresspip": 26, "tocamelcasepip": 26, "camel": [26, 28], "camelcas": [26, 28], "tosnakecasepip": 26, "snake": [26, 28], "snake_cas": [26, 28], "versionpip": 26, "copyright": 26, "2020": 26, "2022": 26, "licens": [26, 36], "detail": [26, 33], "versioninfo": 26, "minor": 26, "micro": 26, "field": 26, "number": 26, "date_format": 27, "date_time_format": 27, "date_time_log_format": 27, "timeformatsettingsnamesenum": 27, "dateformat": 27, "datetimeformat": 27, "datetimelogformat": 27, "timeformat": 27, "credentialmanag": 28, "encrypt": [28, 33, 34], "decrypt": 28, "build_str": 28, "replac": 28, "base64": [28, 33, 34], "get_execut": 28, "get_outd": 28, "byte": 28, "get": [28, 33, 34, 35, 37], "outdat": 28, "get_packag": 28, "local": [28, 32, 35], "stdout": 28, "stderr": 28, "extra": [28, 37], "index": [28, 30, 31, 36, 37], "url": [28, 37], "subprocess": [28, 33, 34], "reset_execut": 28, "system": 28, "standard": [28, 33, 34], "set_execut": 28, "convert_to_camel_cas": 28, "convert_to_snake_cas": 28, "first_to_low": 28, "first_to_upp": 28, "random_str": 28, "random": [28, 36], "cpl_queri": [29, 35], "iterable_abc": [29, 35], "ordered_iterable_abc": [29, 35], "ordered_iter": [29, 35], "argumentnoneexcept": [30, 31], "exceptionargu": 30, "func": [30, 31], "indexoutofrangeexcept": 30, "rang": [30, 36], "invalidtypeexcept": 30, "wrongtypeexcept": 30, "unexpect": 30, "iterableabc": 31, "everi": 31, "equal": 31, "append": 31, "_iterableabc__object": 31, "__object": 31, "averag": 31, "float": 31, "complex": [31, 33, 34], "distinct": 31, "redund": 31, "element_at": 31, "element_at_or_default": 31, "extend": [31, 32, 35, 38], "_iterableabc__iter": 31, "__iter": 31, "first_or_default": 31, "for_each": 31, "last_or_default": 31, "max": 31, "highest": 31, "min": 31, "order_bi": 31, "sort": [31, 33], "ascend": 31, "order_by_descend": 31, "descend": 31, "revers": 31, "singl": 31, "single_or_default": 31, "skip": 31, "skip_last": 31, "after": 31, "sum": 31, "take_last": 31, "where": 31, "orderediterableabc": 31, "_t": 31, "_func": 31, "then_bi": 31, "orderedlist": 31, "then_by_descend": 31, "orderediter": 31, "prerequisit": [32, 35], "what": [32, 35], "up": [32, 35], "queri": [32, 33, 34, 35], "tutori": [32, 35, 36, 37], "com": [32, 35, 38], "builtin": [32, 35, 38], "platform": [33, 34], "meant": [33, 34], "effici": [33, 34], "desktop": [33, 34], "learn": [33, 34, 37], "enterpris": [33, 34], "expandl": [33, 34], "builder": [33, 34], "map": [33, 34], "inject": [33, 34, 36], "appnam": [33, 34], "hostnam": [33, 34], "wrapper": [33, 34], "differ": [33, 34], "variant": [33, 34], "to_lower_cas": [33, 34], "to_camel_cas": [33, 34], "code": [33, 36, 37], "connector": 33, "between": 33, "filter": 33, "linq": 33, "c": 33, "xd": 33, "kei": [33, 37], "dot": 33, "notat": 33, "These": 33, "page": 33, "great": 33, "about": [33, 37], "everyth": 33, "do": [33, 36], "contribut": 33, "welcom": 36, "introduc": 36, "walk": 36, "also": [36, 37], "sampl": 36, "ouput": 36, "look": 36, "done": 36, "readm": 36, "md": 36, "src": 36, "__init__": 36, "projectmain": 36, "id": 36, "vs": 36, "pycharm": 36, "folder": 36, "hello": [36, 37], "world": [36, 37], "emul": 36, "def": 36, "onli": 36, "__name__": 36, "__main__": 36, "generate_password": 36, "letter": 36, "join": 36, "choic": 36, "ascii_lowercas": 36, "elif": 36, "ascii_uppercas": 36, "ascii_lett": 36, "len": 36, "full": 36, "section": 36, "ve": 36, "continu": 36, "explor": 36, "window": 37, "prompt": 37, "featur": 37, "declin": 37, "enter": 37, "press": 37, "lib": 37, "live": 37, "navig": 37, "launch": 37, "watch": 37, "chnage": 37, "those": 37, "success": 37, "similar": 37, "fore": 37, "pyhton": 37}, "objects": {"cpl_core.application": [[16, 0, 0, "-", "application_abc"], [16, 0, 0, "-", "application_builder"], [16, 0, 0, "-", "application_builder_abc"], [16, 0, 0, "-", "startup_abc"]], "cpl_core.application.application_abc": [[16, 1, 1, "", "ApplicationABC"]], "cpl_core.application.application_abc.ApplicationABC": [[16, 2, 1, "", "configure"], [16, 2, 1, "", "main"], [16, 2, 1, "", "run"], [16, 2, 1, "", "run_async"]], "cpl_core.application.application_builder": [[16, 1, 1, "", "ApplicationBuilder"]], "cpl_core.application.application_builder.ApplicationBuilder": [[16, 2, 1, "", "build"], [16, 2, 1, "", "build_async"], [16, 2, 1, "", "use_extension"], [16, 2, 1, "", "use_startup"]], "cpl_core.application.application_builder_abc": [[16, 1, 1, "", "ApplicationBuilderABC"]], "cpl_core.application.application_builder_abc.ApplicationBuilderABC": [[16, 2, 1, "", "build"], [16, 2, 1, "", "build_async"], [16, 2, 1, "", "use_startup"]], "cpl_core.application.startup_abc": [[16, 1, 1, "", "StartupABC"]], "cpl_core.application.startup_abc.StartupABC": [[16, 2, 1, "", "configure_configuration"], [16, 2, 1, "", "configure_services"]], "cpl_core.configuration": [[17, 0, 0, "-", "configuration"], [17, 0, 0, "-", "configuration_abc"], [17, 0, 0, "-", "configuration_model_abc"], [17, 0, 0, "-", "configuration_variable_name_enum"]], "cpl_core.configuration.configuration": [[17, 1, 1, "", "Configuration"]], "cpl_core.configuration.configuration.Configuration": [[17, 2, 1, "", "add_configuration"], [17, 2, 1, "", "add_console_argument"], [17, 2, 1, "", "add_environment_variables"], [17, 2, 1, "", "add_json_file"], [17, 3, 1, "", "additional_arguments"], [17, 3, 1, "", "argument_error_function"], [17, 3, 1, "", "arguments"], [17, 2, 1, "", "create_console_argument"], [17, 3, 1, "", "environment"], [17, 2, 1, "", "for_each_argument"], [17, 2, 1, "", "get_configuration"], [17, 2, 1, "", "parse_console_arguments"]], "cpl_core.configuration.configuration_abc": [[17, 1, 1, "", "ConfigurationABC"]], "cpl_core.configuration.configuration_abc.ConfigurationABC": [[17, 2, 1, "", "add_configuration"], [17, 2, 1, "", "add_console_argument"], [17, 2, 1, "", "add_environment_variables"], [17, 2, 1, "", "add_json_file"], [17, 3, 1, "", "additional_arguments"], [17, 3, 1, "", "argument_error_function"], [17, 3, 1, "", "arguments"], [17, 2, 1, "", "create_console_argument"], [17, 3, 1, "", "environment"], [17, 2, 1, "", "for_each_argument"], [17, 2, 1, "", "get_configuration"], [17, 2, 1, "", "parse_console_arguments"]], "cpl_core.configuration.configuration_model_abc": [[17, 1, 1, "", "ConfigurationModelABC"]], "cpl_core.configuration.configuration_model_abc.ConfigurationModelABC": [[17, 2, 1, "", "from_dict"]], "cpl_core.configuration.configuration_variable_name_enum": [[17, 1, 1, "", "ConfigurationVariableNameEnum"]], "cpl_core.configuration.configuration_variable_name_enum.ConfigurationVariableNameEnum": [[17, 4, 1, "", "customer"], [17, 4, 1, "", "environment"], [17, 4, 1, "", "name"], [17, 2, 1, "", "to_list"]], "cpl_core.console": [[18, 0, 0, "-", "background_color_enum"], [18, 0, 0, "-", "console"], [18, 0, 0, "-", "console_call"], [18, 0, 0, "-", "foreground_color_enum"], [18, 0, 0, "-", "spinner_thread"]], "cpl_core.console.background_color_enum": [[18, 1, 1, "", "BackgroundColorEnum"]], "cpl_core.console.background_color_enum.BackgroundColorEnum": [[18, 4, 1, "", "blue"], [18, 4, 1, "", "cyan"], [18, 4, 1, "", "default"], [18, 4, 1, "", "green"], [18, 4, 1, "", "grey"], [18, 4, 1, "", "magenta"], [18, 4, 1, "", "red"], [18, 4, 1, "", "white"], [18, 4, 1, "", "yellow"]], "cpl_core.console.console": [[18, 1, 1, "", "Console"]], "cpl_core.console.console.Console": [[18, 3, 1, "", "background_color"], [18, 2, 1, "", "banner"], [18, 2, 1, "", "clear"], [18, 2, 1, "", "close"], [18, 2, 1, "", "color_reset"], [18, 2, 1, "", "disable"], [18, 2, 1, "", "enable"], [18, 2, 1, "", "error"], [18, 3, 1, "", "foreground_color"], [18, 2, 1, "", "read"], [18, 2, 1, "", "read_line"], [18, 2, 1, "", "reset_cursor_position"], [18, 2, 1, "", "select"], [18, 2, 1, "", "set_background_color"], [18, 2, 1, "", "set_cursor_position"], [18, 2, 1, "", "set_foreground_color"], [18, 2, 1, "", "set_hold_back"], [18, 2, 1, "", "spinner"], [18, 2, 1, "", "table"], [18, 2, 1, "", "write"], [18, 2, 1, "", "write_at"], [18, 2, 1, "", "write_line"], [18, 2, 1, "", "write_line_at"]], "cpl_core.console.console_call": [[18, 1, 1, "", "ConsoleCall"]], "cpl_core.console.console_call.ConsoleCall": [[18, 3, 1, "", "args"], [18, 3, 1, "", "function"]], "cpl_core.console.foreground_color_enum": [[18, 1, 1, "", "ForegroundColorEnum"]], "cpl_core.console.foreground_color_enum.ForegroundColorEnum": [[18, 4, 1, "", "blue"], [18, 4, 1, "", "cyan"], [18, 4, 1, "", "default"], [18, 4, 1, "", "green"], [18, 4, 1, "", "grey"], [18, 4, 1, "", "magenta"], [18, 4, 1, "", "red"], [18, 4, 1, "", "white"], [18, 4, 1, "", "yellow"]], "cpl_core.console.spinner_thread": [[18, 1, 1, "", "SpinnerThread"]], "cpl_core.console.spinner_thread.SpinnerThread": [[18, 2, 1, "", "exit"], [18, 2, 1, "", "run"], [18, 2, 1, "", "stop_spinning"]], "cpl_core.database.connection": [[20, 0, 0, "-", "database_connection"], [20, 0, 0, "-", "database_connection_abc"]], "cpl_core.database.connection.database_connection": [[20, 1, 1, "", "DatabaseConnection"]], "cpl_core.database.connection.database_connection.DatabaseConnection": [[20, 2, 1, "", "connect"], [20, 3, 1, "", "cursor"], [20, 3, 1, "", "server"]], "cpl_core.database.connection.database_connection_abc": [[20, 1, 1, "", "DatabaseConnectionABC"]], "cpl_core.database.connection.database_connection_abc.DatabaseConnectionABC": [[20, 2, 1, "", "connect"], [20, 3, 1, "", "cursor"], [20, 3, 1, "", "server"]], "cpl_core.database.context": [[21, 0, 0, "-", "database_context"], [21, 0, 0, "-", "database_context_abc"]], "cpl_core.database.context.database_context": [[21, 1, 1, "", "DatabaseContext"]], "cpl_core.database.context.database_context.DatabaseContext": [[21, 2, 1, "", "connect"], [21, 3, 1, "", "cursor"], [21, 2, 1, "", "save_changes"], [21, 2, 1, "", "select"]], "cpl_core.database.context.database_context_abc": [[21, 1, 1, "", "DatabaseContextABC"]], "cpl_core.database.context.database_context_abc.DatabaseContextABC": [[21, 2, 1, "", "connect"], [21, 3, 1, "", "cursor"], [21, 2, 1, "", "save_changes"], [21, 2, 1, "", "select"]], "cpl_core.database": [[19, 0, 0, "-", "database_settings"], [19, 0, 0, "-", "database_settings_name_enum"]], "cpl_core.database.database_settings": [[19, 1, 1, "", "DatabaseSettings"]], "cpl_core.database.database_settings.DatabaseSettings": [[19, 3, 1, "", "auth_plugin"], [19, 3, 1, "", "buffered"], [19, 3, 1, "", "charset"], [19, 3, 1, "", "database"], [19, 2, 1, "", "from_dict"], [19, 3, 1, "", "host"], [19, 3, 1, "", "password"], [19, 3, 1, "", "port"], [19, 3, 1, "", "use_unicode"], [19, 3, 1, "", "user"]], "cpl_core.database.database_settings_name_enum": [[19, 1, 1, "", "DatabaseSettingsNameEnum"]], "cpl_core.database.database_settings_name_enum.DatabaseSettingsNameEnum": [[19, 4, 1, "", "auth_plugin"], [19, 4, 1, "", "buffered"], [19, 4, 1, "", "charset"], [19, 4, 1, "", "database"], [19, 4, 1, "", "host"], [19, 4, 1, "", "password"], [19, 4, 1, "", "port"], [19, 4, 1, "", "use_unicode"], [19, 4, 1, "", "user"]], "cpl_core.dependency_injection": [[22, 0, 0, "-", "service_collection"], [22, 0, 0, "-", "service_collection_abc"], [22, 0, 0, "-", "service_descriptor"], [22, 0, 0, "-", "service_lifetime_enum"], [22, 0, 0, "-", "service_provider"], [22, 0, 0, "-", "service_provider_abc"]], "cpl_core.dependency_injection.service_collection": [[22, 1, 1, "", "ServiceCollection"]], "cpl_core.dependency_injection.service_collection.ServiceCollection": [[22, 2, 1, "", "add_db_context"], [22, 2, 1, "", "add_logging"], [22, 2, 1, "", "add_pipes"], [22, 2, 1, "", "add_scoped"], [22, 2, 1, "", "add_singleton"], [22, 2, 1, "", "add_transient"], [22, 2, 1, "", "build_service_provider"]], "cpl_core.dependency_injection.service_collection_abc": [[22, 1, 1, "", "ServiceCollectionABC"]], "cpl_core.dependency_injection.service_collection_abc.ServiceCollectionABC": [[22, 2, 1, "", "add_db_context"], [22, 2, 1, "", "add_discord"], [22, 2, 1, "", "add_logging"], [22, 2, 1, "", "add_pipes"], [22, 2, 1, "", "add_scoped"], [22, 2, 1, "", "add_singleton"], [22, 2, 1, "", "add_transient"], [22, 2, 1, "", "add_translation"], [22, 2, 1, "", "build_service_provider"]], "cpl_core.dependency_injection.service_descriptor": [[22, 1, 1, "", "ServiceDescriptor"]], "cpl_core.dependency_injection.service_descriptor.ServiceDescriptor": [[22, 3, 1, "", "base_type"], [22, 3, 1, "", "implementation"], [22, 3, 1, "", "lifetime"], [22, 3, 1, "", "service_type"]], "cpl_core.dependency_injection.service_lifetime_enum": [[22, 1, 1, "", "ServiceLifetimeEnum"]], "cpl_core.dependency_injection.service_lifetime_enum.ServiceLifetimeEnum": [[22, 4, 1, "", "scoped"], [22, 4, 1, "", "singleton"], [22, 4, 1, "", "transient"]], "cpl_core.dependency_injection.service_provider": [[22, 1, 1, "", "ServiceProvider"]], "cpl_core.dependency_injection.service_provider.ServiceProvider": [[22, 2, 1, "", "build_service"], [22, 2, 1, "", "create_scope"], [22, 2, 1, "", "get_service"], [22, 2, 1, "", "set_scope"]], "cpl_core.dependency_injection.service_provider_abc": [[22, 1, 1, "", "ServiceProviderABC"]], "cpl_core.dependency_injection.service_provider_abc.ServiceProviderABC": [[22, 2, 1, "", "build_service"], [22, 2, 1, "", "create_scope"], [22, 2, 1, "", "get_service"], [22, 2, 1, "", "set_scope"]], "cpl_core.environment": [[23, 0, 0, "-", "application_environment"], [23, 0, 0, "-", "application_environment_abc"], [23, 0, 0, "-", "environment_name_enum"]], "cpl_core.environment.application_environment": [[23, 1, 1, "", "ApplicationEnvironment"]], "cpl_core.environment.application_environment.ApplicationEnvironment": [[23, 3, 1, "", "application_name"], [23, 3, 1, "", "customer"], [23, 3, 1, "", "date_time_now"], [23, 3, 1, "", "end_time"], [23, 3, 1, "", "environment_name"], [23, 3, 1, "", "host_name"], [23, 3, 1, "", "runtime_directory"], [23, 2, 1, "", "set_runtime_directory"], [23, 2, 1, "", "set_working_directory"], [23, 3, 1, "", "start_time"], [23, 3, 1, "", "working_directory"]], "cpl_core.environment.application_environment_abc": [[23, 1, 1, "", "ApplicationEnvironmentABC"]], "cpl_core.environment.application_environment_abc.ApplicationEnvironmentABC": [[23, 3, 1, "", "application_name"], [23, 3, 1, "", "customer"], [23, 3, 1, "", "date_time_now"], [23, 3, 1, "", "end_time"], [23, 3, 1, "", "environment_name"], [23, 3, 1, "", "host_name"], [23, 3, 1, "", "runtime_directory"], [23, 2, 1, "", "set_runtime_directory"], [23, 2, 1, "", "set_working_directory"], [23, 3, 1, "", "start_time"], [23, 3, 1, "", "working_directory"]], "cpl_core.environment.environment_name_enum": [[23, 1, 1, "", "EnvironmentNameEnum"]], "cpl_core.environment.environment_name_enum.EnvironmentNameEnum": [[23, 4, 1, "", "development"], [23, 4, 1, "", "production"], [23, 4, 1, "", "staging"], [23, 4, 1, "", "testing"]], "cpl_core.logging": [[24, 0, 0, "-", "logger_abc"], [24, 0, 0, "-", "logger_service"], [24, 0, 0, "-", "logging_level_enum"], [24, 0, 0, "-", "logging_settings"], [24, 0, 0, "-", "logging_settings_name_enum"]], "cpl_core.logging.logger_abc": [[24, 1, 1, "", "LoggerABC"]], "cpl_core.logging.logger_abc.LoggerABC": [[24, 2, 1, "", "debug"], [24, 2, 1, "", "error"], [24, 2, 1, "", "fatal"], [24, 2, 1, "", "header"], [24, 2, 1, "", "info"], [24, 2, 1, "", "trace"], [24, 2, 1, "", "warn"]], "cpl_core.logging.logger_service": [[24, 1, 1, "", "Logger"]], "cpl_core.logging.logger_service.Logger": [[24, 2, 1, "", "create"], [24, 2, 1, "", "debug"], [24, 2, 1, "", "error"], [24, 2, 1, "", "fatal"], [24, 2, 1, "", "header"], [24, 2, 1, "", "info"], [24, 2, 1, "", "trace"], [24, 2, 1, "", "warn"]], "cpl_core.logging.logging_level_enum": [[24, 1, 1, "", "LoggingLevelEnum"]], "cpl_core.logging.logging_level_enum.LoggingLevelEnum": [[24, 4, 1, "", "DEBUG"], [24, 4, 1, "", "ERROR"], [24, 4, 1, "", "FATAL"], [24, 4, 1, "", "INFO"], [24, 4, 1, "", "OFF"], [24, 4, 1, "", "TRACE"], [24, 4, 1, "", "WARN"]], "cpl_core.logging.logging_settings": [[24, 1, 1, "", "LoggingSettings"]], "cpl_core.logging.logging_settings.LoggingSettings": [[24, 3, 1, "", "console"], [24, 3, 1, "", "filename"], [24, 2, 1, "", "from_dict"], [24, 3, 1, "", "level"], [24, 3, 1, "", "path"]], "cpl_core.logging.logging_settings_name_enum": [[24, 1, 1, "", "LoggingSettingsNameEnum"]], "cpl_core.logging.logging_settings_name_enum.LoggingSettingsNameEnum": [[24, 4, 1, "", "console_level"], [24, 4, 1, "", "file_level"], [24, 4, 1, "", "filename"], [24, 4, 1, "", "path"]], "cpl_core.mailing": [[25, 0, 0, "-", "email"], [25, 0, 0, "-", "email_client_abc"], [25, 0, 0, "-", "email_client_service"], [25, 0, 0, "-", "email_client_settings"], [25, 0, 0, "-", "email_client_settings_name_enum"]], "cpl_core.mailing.email": [[25, 1, 1, "", "EMail"]], "cpl_core.mailing.email.EMail": [[25, 2, 1, "", "add_header"], [25, 2, 1, "", "add_receiver"], [25, 3, 1, "", "body"], [25, 2, 1, "", "check_mail"], [25, 2, 1, "", "get_content"], [25, 3, 1, "", "header"], [25, 3, 1, "", "header_list"], [25, 3, 1, "", "receiver"], [25, 3, 1, "", "receiver_list"], [25, 3, 1, "", "subject"], [25, 3, 1, "", "transceiver"]], "cpl_core.mailing.email_client_abc": [[25, 1, 1, "", "EMailClientABC"]], "cpl_core.mailing.email_client_abc.EMailClientABC": [[25, 2, 1, "", "connect"], [25, 2, 1, "", "send_mail"]], "cpl_core.mailing.email_client_service": [[25, 1, 1, "", "EMailClient"]], "cpl_core.mailing.email_client_service.EMailClient": [[25, 2, 1, "", "connect"], [25, 2, 1, "", "create"], [25, 2, 1, "", "login"], [25, 2, 1, "", "send_mail"]], "cpl_core.mailing.email_client_settings": [[25, 1, 1, "", "EMailClientSettings"]], "cpl_core.mailing.email_client_settings.EMailClientSettings": [[25, 3, 1, "", "credentials"], [25, 2, 1, "", "from_dict"], [25, 3, 1, "", "host"], [25, 3, 1, "", "port"], [25, 3, 1, "", "user_name"]], "cpl_core.mailing.email_client_settings_name_enum": [[25, 1, 1, "", "EMailClientSettingsNameEnum"]], "cpl_core.mailing.email_client_settings_name_enum.EMailClientSettingsNameEnum": [[25, 4, 1, "", "credentials"], [25, 4, 1, "", "host"], [25, 4, 1, "", "port"], [25, 4, 1, "", "user_name"]], "cpl_core": [[26, 0, 0, "-", "pipes"]], "cpl_core.pipes": [[26, 1, 1, "", "VersionInfo"], [26, 0, 0, "-", "bool_pipe"], [26, 0, 0, "-", "first_char_to_lower_pipe"], [26, 0, 0, "-", "first_to_upper_pipe"], [26, 0, 0, "-", "ip_address_pipe"], [26, 0, 0, "-", "pipe_abc"], [26, 0, 0, "-", "to_camel_case_pipe"], [26, 0, 0, "-", "to_snake_case_pipe"], [26, 0, 0, "-", "version_pipe"]], "cpl_core.pipes.VersionInfo": [[26, 4, 1, "", "major"], [26, 4, 1, "", "micro"], [26, 4, 1, "", "minor"]], "cpl_core.pipes.bool_pipe": [[26, 1, 1, "", "BoolPipe"]], "cpl_core.pipes.bool_pipe.BoolPipe": [[26, 2, 1, "", "transform"]], "cpl_core.pipes.first_char_to_lower_pipe": [[26, 1, 1, "", "FirstCharToLowerPipe"]], "cpl_core.pipes.first_char_to_lower_pipe.FirstCharToLowerPipe": [[26, 2, 1, "", "transform"]], "cpl_core.pipes.first_to_upper_pipe": [[26, 1, 1, "", "FirstToUpperPipe"]], "cpl_core.pipes.first_to_upper_pipe.FirstToUpperPipe": [[26, 2, 1, "", "transform"]], "cpl_core.pipes.ip_address_pipe": [[26, 1, 1, "", "IPAddressPipe"]], "cpl_core.pipes.ip_address_pipe.IPAddressPipe": [[26, 2, 1, "", "transform"]], "cpl_core.pipes.pipe_abc": [[26, 1, 1, "", "PipeABC"]], "cpl_core.pipes.pipe_abc.PipeABC": [[26, 2, 1, "", "transform"]], "cpl_core.pipes.to_camel_case_pipe": [[26, 1, 1, "", "ToCamelCasePipe"]], "cpl_core.pipes.to_camel_case_pipe.ToCamelCasePipe": [[26, 2, 1, "", "transform"]], "cpl_core.pipes.to_snake_case_pipe": [[26, 1, 1, "", "ToSnakeCasePipe"]], "cpl_core.pipes.to_snake_case_pipe.ToSnakeCasePipe": [[26, 2, 1, "", "transform"]], "cpl_core.pipes.version_pipe": [[26, 1, 1, "", "VersionPipe"]], "cpl_core.pipes.version_pipe.VersionPipe": [[26, 2, 1, "", "transform"]], "cpl_core.time": [[27, 0, 0, "-", "time_format_settings"], [27, 0, 0, "-", "time_format_settings_names_enum"]], "cpl_core.time.time_format_settings": [[27, 1, 1, "", "TimeFormatSettings"]], "cpl_core.time.time_format_settings.TimeFormatSettings": [[27, 3, 1, "", "date_format"], [27, 3, 1, "", "date_time_format"], [27, 3, 1, "", "date_time_log_format"], [27, 2, 1, "", "from_dict"], [27, 3, 1, "", "time_format"]], "cpl_core.time.time_format_settings_names_enum": [[27, 1, 1, "", "TimeFormatSettingsNamesEnum"]], "cpl_core.time.time_format_settings_names_enum.TimeFormatSettingsNamesEnum": [[27, 4, 1, "", "date_format"], [27, 4, 1, "", "date_time_format"], [27, 4, 1, "", "date_time_log_format"], [27, 4, 1, "", "time_format"]], "cpl_core.utils": [[28, 0, 0, "-", "credential_manager"], [28, 0, 0, "-", "pip"], [28, 0, 0, "-", "string"]], "cpl_core.utils.credential_manager": [[28, 1, 1, "", "CredentialManager"]], "cpl_core.utils.credential_manager.CredentialManager": [[28, 2, 1, "", "build_string"], [28, 2, 1, "", "decrypt"], [28, 2, 1, "", "encrypt"]], "cpl_core.utils.pip": [[28, 1, 1, "", "Pip"]], "cpl_core.utils.pip.Pip": [[28, 2, 1, "", "get_executable"], [28, 2, 1, "", "get_outdated"], [28, 2, 1, "", "get_package"], [28, 2, 1, "", "install"], [28, 2, 1, "", "reset_executable"], [28, 2, 1, "", "set_executable"], [28, 2, 1, "", "uninstall"]], "cpl_core.utils.string": [[28, 1, 1, "", "String"]], "cpl_core.utils.string.String": [[28, 2, 1, "", "convert_to_camel_case"], [28, 2, 1, "", "convert_to_snake_case"], [28, 2, 1, "", "first_to_lower"], [28, 2, 1, "", "first_to_upper"], [28, 2, 1, "", "random_string"]], "cpl_query": [[30, 0, 0, "-", "exceptions"]], "cpl_query.exceptions": [[30, 5, 1, "", "ArgumentNoneException"], [30, 1, 1, "", "ExceptionArgument"], [30, 5, 1, "", "IndexOutOfRangeException"], [30, 5, 1, "", "InvalidTypeException"], [30, 5, 1, "", "WrongTypeException"]], "cpl_query.exceptions.ExceptionArgument": [[30, 4, 1, "", "func"], [30, 4, 1, "", "index"], [30, 4, 1, "", "list"], [30, 4, 1, "", "type"], [30, 4, 1, "", "value"]], "cpl_query.extension": [[31, 0, 0, "-", "iterable"], [31, 0, 0, "-", "iterable_abc"], [31, 0, 0, "-", "list"], [31, 0, 0, "-", "ordered_iterable"], [31, 0, 0, "-", "ordered_iterable_abc"]], "cpl_query.extension.iterable": [[31, 1, 1, "", "Iterable"]], "cpl_query.extension.iterable.Iterable": [[31, 2, 1, "", "all"], [31, 2, 1, "", "any"], [31, 2, 1, "", "average"], [31, 2, 1, "", "contains"], [31, 2, 1, "", "count"], [31, 2, 1, "", "distinct"], [31, 2, 1, "", "element_at"], [31, 2, 1, "", "element_at_or_default"], [31, 2, 1, "", "first"], [31, 2, 1, "", "first_or_default"], [31, 2, 1, "", "for_each"], [31, 2, 1, "", "last"], [31, 2, 1, "", "last_or_default"], [31, 2, 1, "", "max"], [31, 2, 1, "", "min"], [31, 2, 1, "", "order_by"], [31, 2, 1, "", "order_by_descending"], [31, 2, 1, "", "reverse"], [31, 2, 1, "", "single"], [31, 2, 1, "", "single_or_default"], [31, 2, 1, "", "skip"], [31, 2, 1, "", "skip_last"], [31, 2, 1, "", "sum"], [31, 2, 1, "", "take"], [31, 2, 1, "", "take_last"], [31, 2, 1, "", "where"]], "cpl_query.extension.iterable_abc": [[31, 1, 1, "", "IterableABC"]], "cpl_query.extension.iterable_abc.IterableABC": [[31, 2, 1, "", "all"], [31, 2, 1, "", "any"], [31, 2, 1, "", "append"], [31, 2, 1, "", "average"], [31, 2, 1, "", "contains"], [31, 2, 1, "", "count"], [31, 2, 1, "", "distinct"], [31, 2, 1, "", "element_at"], [31, 2, 1, "", "element_at_or_default"], [31, 2, 1, "", "extend"], [31, 2, 1, "", "first"], [31, 2, 1, "", "first_or_default"], [31, 2, 1, "", "for_each"], [31, 2, 1, "", "last"], [31, 2, 1, "", "last_or_default"], [31, 2, 1, "", "max"], [31, 2, 1, "", "min"], [31, 2, 1, "", "order_by"], [31, 2, 1, "", "order_by_descending"], [31, 2, 1, "", "reverse"], [31, 2, 1, "", "single"], [31, 2, 1, "", "single_or_default"], [31, 2, 1, "", "skip"], [31, 2, 1, "", "skip_last"], [31, 2, 1, "", "sum"], [31, 2, 1, "", "take"], [31, 2, 1, "", "take_last"], [31, 2, 1, "", "to_list"], [31, 3, 1, "", "type"], [31, 2, 1, "", "where"]], "cpl_query.extension.list": [[31, 1, 1, "", "List"]], "cpl_query.extension.ordered_iterable": [[31, 1, 1, "", "OrderedIterable"]], "cpl_query.extension.ordered_iterable.OrderedIterable": [[31, 2, 1, "", "then_by"], [31, 2, 1, "", "then_by_descending"]], "cpl_query.extension.ordered_iterable_abc": [[31, 1, 1, "", "OrderedIterableABC"]], "cpl_query.extension.ordered_iterable_abc.OrderedIterableABC": [[31, 2, 1, "", "then_by"], [31, 2, 1, "", "then_by_descending"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:property", "4": "py:attribute", "5": "py:exception"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "property", "Python property"], "4": ["py", "attribute", "Python attribute"], "5": ["py", "exception", "Python exception"]}, "titleterms": {"cpl": [0, 1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 26, 33, 34, 35, 36], "add": 0, "content": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 26, 36, 37], "descript": [0, 1, 2, 3, 4, 5, 7, 8, 10], "argument": [0, 2, 3, 4, 8, 10, 41], "flag": [0, 4, 5, 8, 10, 11], "build": 1, "gener": 2, "schemat": [2, 6], "help": 3, "instal": [4, 37], "new": 5, "project": [5, 36], "type": 5, "cli": [6, 14, 37], "overview": [6, 34], "command": 6, "refer": [6, 14, 15, 29], "tabl": [6, 36, 37], "basic": 6, "workflow": 6, "languag": 6, "syntax": 6, "rel": 6, "path": 6, "publish": 7, "remov": 8, "start": [9, 32, 36, 37], "uninstal": 10, "updat": 11, "version": 12, "contribut": 13, "found": 13, "bug": 13, "featur": [13, 33, 34], "request": 13, "submiss": 13, "guidelin": 13, "submit": 13, "an": 13, "issu": 13, "pull": 13, "review": 13, "address": 13, "feedback": 13, "code": 13, "rule": 13, "licens": 13, "api": 15, "cpl_core": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 40], "applic": [16, 43], "application_abc": 16, "application_build": 16, "application_builder_abc": 16, "startup_abc": 16, "configur": 17, "configuration_abc": 17, "configuration_model_abc": 17, "configuration_variable_name_enum": 17, "console_argu": 17, "consol": [18, 37, 40, 41], "background_color_enum": 18, "console_cal": 18, "foreground_color_enum": 18, "spinner_thread": 18, "databas": [19, 20, 21], "submodul": [19, 26], "database_model": 19, "database_set": 19, "database_settings_name_enum": 19, "connect": 20, "database_connect": 20, "database_connection_abc": 20, "context": 21, "database_context": 21, "database_context_abc": 21, "dependency_inject": 22, "service_collect": 22, "service_collection_abc": 22, "service_descriptor": 22, "service_lifetime_enum": 22, "service_provid": 22, "service_provider_abc": 22, "environ": [23, 37], "application_environ": 23, "application_environment_abc": 23, "environment_name_enum": 23, "log": 24, "logger_abc": 24, "logger_servic": 24, "logging_level_enum": 24, "logging_set": 24, "logging_settings_name_enum": 24, "mail": [25, 46], "email": 25, "email_client_abc": 25, "email_client_servic": 25, "email_client_set": 25, "email_client_settings_name_enum": 25, "pipe": 26, "bool_pip": 26, "modul": 26, "first_char_to_lower_pip": 26, "first_to_upper_pip": 26, "ip_address_pip": 26, "pipe_abc": 26, "to_camel_case_pip": 26, "to_snake_case_pip": 26, "version_pip": 26, "core": 26, "sh": 26, "edraft": 26, "common": 26, "python": 26, "librari": [26, 37], "time": 27, "time_format_set": 27, "time_format_settings_names_enum": 27, "util": 28, "credential_manag": 28, "pip": 28, "string": 28, "queri": [29, 37], "cpl_queri": [30, 31], "except": 30, "extens": 31, "iterable_abc": 31, "iter": 31, "list": 31, "ordered_iterable_abc": 31, "ordered_iter": 31, "get": [32, 36], "introduct": [33, 34], "doc": [33, 34], "manual": 33, "explor": 34, "prerequisit": [36, 37], "creat": [36, 37, 42], "menu": 36, "what": [36, 37], "s": [36, 37], "next": [36, 37], "set": 37, "up": 37, "local": 37, "workspac": 37, "packag": 37, "initi": 37, "app": 37, "tutori": 38, "us": [39, 40, 45], "appset": 39, "json": 39, "com": [39, 40, 41, 42, 43, 44, 45, 46], "soon": [39, 40, 41, 42, 43, 44, 45, 46], "handl": 41, "startup": [42, 44], "class": 42, "extend": [43, 44], "builtin": 45, "logger": 45, "send": 46}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 6, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 56}}) \ No newline at end of file +Search.setIndex({"docnames": ["cli.add", "cli.build", "cli.generate", "cli.help", "cli.install", "cli.new", "cli.overview", "cli.publish", "cli.remove", "cli.run", "cli.start", "cli.uninstall", "cli.update", "cli.version", "contributing", "cpl_cli", "cpl_core", "cpl_core.application", "cpl_core.configuration", "cpl_core.console", "cpl_core.database", "cpl_core.database.connection", "cpl_core.database.context", "cpl_core.dependency_injection", "cpl_core.environment", "cpl_core.logging", "cpl_core.mailing", "cpl_core.pipes", "cpl_core.time", "cpl_core.utils", "cpl_discord", "cpl_discord.application", "cpl_discord.command", "cpl_discord.configuration", "cpl_discord.container", "cpl_discord.events", "cpl_discord.helper", "cpl_discord.service", "cpl_query", "cpl_query.base", "cpl_query.enumerable", "cpl_query.extension", "cpl_query.iterable", "cpl_translation", "getting_started", "index", "introduction", "modules", "quickstart", "setup", "tutorials", "tutorials.appsettings", "tutorials.console", "tutorials.console-arguments", "tutorials.create-startup", "tutorials.extend-application", "tutorials.extend-startup", "tutorials.logging", "tutorials.mail"], "filenames": ["cli.add.md", "cli.build.md", "cli.generate.md", "cli.help.md", "cli.install.md", "cli.new.md", "cli.overview.md", "cli.publish.md", "cli.remove.md", "cli.run.md", "cli.start.md", "cli.uninstall.md", "cli.update.md", "cli.version.md", "contributing.md", "cpl_cli.rst", "cpl_core.rst", "cpl_core.application.rst", "cpl_core.configuration.rst", "cpl_core.console.rst", "cpl_core.database.rst", "cpl_core.database.connection.rst", "cpl_core.database.context.rst", "cpl_core.dependency_injection.rst", "cpl_core.environment.rst", "cpl_core.logging.rst", "cpl_core.mailing.rst", "cpl_core.pipes.rst", "cpl_core.time.rst", "cpl_core.utils.rst", "cpl_discord.rst", "cpl_discord.application.rst", "cpl_discord.command.rst", "cpl_discord.configuration.rst", "cpl_discord.container.rst", "cpl_discord.events.rst", "cpl_discord.helper.rst", "cpl_discord.service.rst", "cpl_query.rst", "cpl_query.base.rst", "cpl_query.enumerable.rst", "cpl_query.extension.rst", "cpl_query.iterable.rst", "cpl_translation.rst", "getting_started.rst", "index.rst", "introduction.md", "modules.rst", "quickstart.md", "setup.md", "tutorials.rst", "tutorials.appsettings.md", "tutorials.console.md", "tutorials.console-arguments.md", "tutorials.create-startup.md", "tutorials.extend-application.md", "tutorials.extend-startup.md", "tutorials.logging.md", "tutorials.mail.md"], "titles": ["cpl add", "cpl build", "cpl generate", "cpl help", "cpl install", "cpl new", "CLI Overview and Command Reference", "cpl publish", "cpl remove", "cpl run", "cpl start", "cpl uninstall", "cpl update", "cpl version", "Contributing to CPL", "CLI reference", "API reference", "cpl_core.application", "cpl_core.configuration", "cpl_core.console", "cpl_core.database", "cpl_core.database.connection", "cpl_core.database.context", "cpl_core.dependency_injection", "cpl_core.environment", "cpl_core.logging", "cpl_core.mailing", "cpl_core.pipes", "cpl_core.time", "cpl_core.utils", "Discord reference", "cpl_discord.application", "cpl_discord.command", "cpl_discord.configuration", "cpl_discord.container", "cpl_discord.events", "cpl_discord.helper", "cpl_discord.service", "Query reference", "cpl_query.base", "cpl_query.enumerable", "cpl_query.extension", "cpl_query.iterable", "Translation reference", "Getting started", "Introduction to the CPL Docs", "Introduction to the CPL Docs", "cpl", "Getting started with CPL", "Setting up the local environment and workspace", "Tutorials", "Using appsettings.json", "Use cpl_core.console.Console", "Handle console arguments", "Create startup class", "Extend application", "Extend startup", "Use builtin logger", "Send mails"], "terms": {"remov": [0, 6, 7, 15, 40, 42, 47], "project": [0, 1, 4, 6, 7, 8, 9, 10, 11, 12, 14, 15, 44, 47, 49], "from": [0, 6, 7, 8, 9, 10, 11, 13, 14, 17, 18, 19, 20, 34, 39, 42, 45, 46, 48], "workspac": [0, 1, 5, 6, 8, 44, 47], "sourc": [0, 1, 7, 9, 10, 14, 29, 48, 49], "target": [0, 1], "A": [0, 5, 14, 34], "refer": [0, 8, 45, 46, 47], "given": [0, 1, 4, 6, 7, 11, 18, 19, 20, 23, 29, 39, 42], "If": [0, 5, 8, 14, 19, 49], "you": [0, 1, 6, 8, 14, 34, 45, 46, 48, 49], "call": [0, 8, 17, 18, 19, 34, 39], "command": [0, 1, 3, 4, 5, 7, 8, 11, 12, 14, 15, 29, 30, 45, 46, 47, 49], "can": [0, 1, 6, 7, 8, 14, 34, 45, 49], "us": [0, 1, 2, 5, 6, 7, 8, 14, 17, 19, 26, 29, 44, 45, 46, 47, 48, 49, 50], "name": [0, 1, 2, 5, 6, 7, 8, 18, 24, 25, 29, 32, 34, 49], "otherwis": [0, 8, 19], "path": [0, 1, 2, 5, 7, 8, 15, 18, 24, 25, 47, 49], "must": [0, 1, 6, 8, 14, 19], "specifi": [0, 4, 5, 6, 8, 9, 11, 12, 18, 19], "valu": [0, 1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 18, 19, 20, 23, 24, 25, 26, 27, 28, 39, 40, 41, 42, 43], "type": [0, 1, 2, 3, 4, 7, 8, 9, 10, 11, 15, 17, 18, 23, 34, 36, 37, 39, 40, 41, 42, 47], "which": [0, 6, 9, 18, 19, 29, 49], "ha": [0, 19], "ad": [0, 14], "str": [0, 1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 18, 19, 20, 21, 22, 24, 25, 26, 27, 28, 29, 33, 34, 35, 37, 43, 48], "referenc": 0, "simul": [0, 4, 8, 11, 12], "whether": [0, 4, 5, 8, 11, 12, 18], "copi": [1, 39], "an": [1, 6, 7, 17, 18, 19, 20, 23, 24, 25, 26, 28, 39, 48, 49], "python": [1, 14, 29, 45, 46, 48, 49], "app": [1, 6, 17, 44, 45, 46, 47, 48], "output": [1, 6, 7, 18, 19, 45, 46, 48, 49], "directori": [1, 6, 7, 24, 45, 46, 48], "execut": [1, 6, 7, 18, 29], "within": [1, 6, 14], "b": [1, 6, 14], "The": [1, 2, 4, 5, 6, 7, 8, 11, 14, 23, 26, 29, 34, 37, 45, 46, 48, 49], "consol": [1, 3, 5, 6, 7, 16, 18, 25, 44, 45, 46, 47, 48, 50], "librari": [1, 5, 6, 7, 44, 45, 46, 47], "all": [1, 7, 13, 14, 18, 34, 39], "includ": [1, 14, 49], "file": [1, 2, 6, 7, 8, 10, 14, 18, 45, 49], "run": [1, 5, 10, 17, 18, 19, 22, 29, 39, 45, 46, 48, 49], "directli": [1, 14], "prepar": [1, 6, 7, 14, 17, 45], "publish": [1, 6, 15, 45, 47, 49], "them": 1, "argument": [1, 5, 6, 7, 9, 10, 12, 15, 18, 19, 29, 39, 44, 45, 46, 47, 50], "base": [2, 5, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 31, 32, 33, 34, 35, 36, 37, 38, 40, 41, 42, 43, 45, 46, 47, 48], "g": [2, 5, 6], "first": [2, 5, 6, 14, 27, 29, 34, 39, 45, 46], "element": [2, 5, 19, 22, 34, 39, 40, 42], "src": [2, 5, 48], "For": [2, 5, 14], "exampl": [2, 5], "c": [2, 5, 45], "test": [2, 5, 14, 24, 45, 46, 48], "creat": [2, 5, 6, 7, 14, 17, 18, 19, 23, 25, 26, 29, 39, 44, 45, 46, 47, 50], "would": [2, 5, 14], "abc": [2, 17, 18, 21, 22, 23, 24, 25, 26, 27, 32, 35, 37, 39, 40, 42, 43], "abstract": [2, 17, 18, 21, 22, 23, 24, 25, 26, 27, 31, 35, 37, 39, 43], "class": [2, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 31, 32, 33, 34, 35, 36, 37, 39, 40, 41, 42, 43, 44, 45, 46, 47, 50], "enum": [2, 18, 19, 20, 23, 24, 25, 26, 28], "pipe": [2, 16, 23, 45, 46, 47], "servic": [2, 5, 17, 18, 23, 25, 26, 30, 31, 45, 46, 47, 48], "set": [2, 9, 17, 18, 19, 20, 22, 23, 24, 25, 26, 28, 29, 33, 40, 43, 44, 47, 48], "configmodel": 2, "thread": [2, 19, 30, 47], "valid": [2, 26, 48], "list": [3, 6, 13, 18, 19, 22, 23, 26, 27, 29, 34, 35, 36, 37, 38, 39, 40, 42, 43, 45, 47], "avail": [3, 6, 14], "short": [3, 6], "h": [3, 6], "show": [3, 19], "messag": [3, 19, 25, 35, 37], "thi": [3, 14, 17, 34, 45, 46, 48, 49], "packag": [4, 5, 6, 11, 13, 29, 44, 45, 46, 47, 48], "via": [4, 11, 14, 45, 46], "pip": [4, 11, 13, 16, 45, 46, 47, 48, 49], "i": [4, 6, 48], "without": [4, 6, 14, 39], "deped": 4, "your": [4, 6, 9, 10, 14, 45, 46, 49], "dev": [4, 9, 10, 11], "develop": [4, 6, 11, 14, 24, 45, 46, 48, 49], "mode": [4, 11], "virtual": [4, 11], "gener": [5, 6, 7, 15, 45, 47, 48, 49], "initi": [5, 44, 47], "add": [5, 6, 14, 15, 18, 23, 26, 42, 47, 48], "n": [5, 6, 48, 49], "see": [5, 14, 21, 34, 48, 49], "simpl": [5, 45, 46, 49], "applic": [5, 9, 10, 16, 19, 24, 25, 26, 30, 44, 45, 46, 47, 48, 49, 50], "async": [5, 17, 35, 37], "startup": [5, 17, 44, 45, 46, 47, 50], "provid": [5, 14, 17, 23, 34, 45, 46, 48, 49], "noth": 5, "venv": 5, "instal": [6, 13, 15, 29, 44, 47, 48], "cpl": [6, 15, 23, 44, 49], "To": [6, 9, 10, 14, 48, 49], "build": [6, 7, 9, 10, 15, 17, 29, 45, 47, 48, 49], "serv": 6, "new": [6, 14, 15, 19, 34, 47, 48, 49], "server": [6, 21, 26, 45, 46, 49], "go": [6, 14, 45], "parent": 6, "follow": [6, 14, 48, 49], "my": [6, 14, 49], "cd": [6, 49], "start": [6, 9, 15, 39, 45, 46, 47], "In": [6, 14, 48], "termin": [6, 19, 48, 49], "commandnameoralia": 6, "requiredarg": 6, "optionalsarg": 6, "most": [6, 34, 48, 49], "some": 6, "option": [6, 9, 14, 18, 19, 20, 23, 25, 26, 29, 34, 35, 37, 39, 40, 41, 42, 45, 46, 48], "have": [6, 14, 34, 48, 49], "alias": [6, 18], "ar": [6, 7, 14, 18, 34], "shown": [6, 18, 49], "statement": [6, 22], "each": [6, 18, 39], "prefix": [6, 18, 33], "absolut": 6, "current": [6, 24, 34], "work": [6, 14, 24, 45, 46], "either": 6, "root": 6, "take": [6, 18, 39], "artifact": 6, "addit": [6, 14], "ani": [6, 19, 27, 32, 37, 39, 43], "defin": [6, 18, 19, 40, 42, 49], "its": [6, 14], "own": 6, "suppli": 6, "same": 6, "format": [6, 25, 28, 39], "immedi": 6, "alia": 6, "descript": [6, 9, 10, 12, 15, 34, 47], "dist": [6, 7, 9, 10], "help": [6, 14, 15, 45, 46, 47], "With": 6, "depend": [6, 12, 45, 46, 48], "p": [6, 7], "setup": [6, 7, 46, 49], "py": [6, 7, 29, 45, 48], "r": [6, 8, 9], "s": [6, 10, 14, 34, 44, 47], "restart": [6, 10, 49], "chang": [6, 10, 14, 22, 48], "uninstal": [6, 15, 29, 47], "ui": [6, 11, 34], "updat": [6, 14, 15, 47], "u": [6, 12], "version": [6, 15, 34, 47], "v": [6, 13], "data": [7, 19, 34, 39], "cpl_core": [7, 16, 44, 47, 48, 49, 50], "json": [7, 18, 44, 45, 46, 47, 48, 49, 50], "delet": 8, "onc": 9, "paramet": [9, 42], "default": [9, 19, 34, 49], "after": [9, 10, 35, 37, 39], "cli": [13, 44, 45, 46, 47, 48], "we": [14, 48], "love": 14, "make": [14, 49], "even": 14, "better": 14, "than": [14, 39], "todai": 14, "As": 14, "contributor": 14, "here": [14, 49], "like": [14, 45, 48], "issus": 14, "find": 14, "our": 14, "gitea": 14, "repositori": 14, "fix": 14, "implement": [14, 23, 39, 40, 41], "pleas": 14, "consid": 14, "size": 14, "order": [14, 34, 39], "determin": 14, "right": 14, "step": 14, "proce": 14, "major": 14, "open": [14, 48, 49], "outlin": 14, "propos": 14, "so": [14, 49], "discuss": 14, "process": 14, "allow": 14, "coordin": [14, 19], "effort": 14, "prevent": 14, "duplic": 14, "craft": 14, "successfulli": 14, "accept": 14, "note": [14, 34], "topic": [14, 34], "document": 14, "significantli": 14, "re": 14, "write": [14, 19, 25, 45, 46], "count": [14, 39], "small": 14, "befor": [14, 19, 35, 37, 40], "search": [14, 18, 23], "tracker": 14, "mayb": 14, "problem": 14, "alreadi": [14, 48, 49], "exist": [14, 40], "might": 14, "inform": [14, 25, 49], "workaround": 14, "readili": 14, "want": [14, 48], "soon": [14, 44, 47, 50], "possibl": [14, 18], "need": [14, 34, 48, 49], "reproduc": 14, "confirm": 14, "requir": [14, 34], "minim": 14, "reproduct": 14, "scenario": 14, "give": 14, "wealth": 14, "import": [14, 48], "back": [14, 19], "forth": 14, "question": 14, "quickli": 14, "point": [14, 17, 19], "out": [14, 48, 49], "well": 14, "save": [14, 18, 22], "maintain": 14, "time": [14, 16, 25, 34, 47], "ultim": 14, "abl": 14, "more": [14, 39, 49], "often": 14, "themselv": 14, "while": 14, "understand": [14, 45, 46, 48, 49], "sometim": 14, "hard": 14, "extract": 14, "essenti": [14, 48], "bit": 14, "larger": 14, "codebas": 14, "realli": 14, "isol": 14, "unfortun": 14, "investig": 14, "don": [14, 48], "t": [14, 39, 40, 41, 42, 48], "hear": 14, "close": [14, 19], "doesn": 14, "enough": 14, "info": [14, 25, 45, 46], "pr": 14, "relat": 14, "Be": 14, "sure": 14, "describ": 14, "design": 14, "d": 14, "upfront": 14, "ensur": 14, "readi": [14, 49], "fork": 14, "sh": [14, 49], "edraft": [14, 49], "de": [14, 49], "repo": 14, "git": 14, "branch": 14, "checkout": 14, "master": 14, "patch": 14, "appropri": 14, "case": [14, 27, 29, 48], "commit": 14, "line": [14, 19, 48], "automat": 14, "rm": 14, "edit": 14, "push": 14, "origin": 14, "send": [14, 26, 44, 45, 46, 47, 50], "team": 14, "reserv": 14, "commun": 14, "member": [14, 30, 35, 37, 47], "who": 14, "haven": 14, "been": 14, "good": 14, "citizen": 14, "Such": 14, "behavior": 14, "appli": 14, "outsid": 14, "manag": [14, 34, 45, 46], "channel": [14, 34, 35, 37], "ask": 14, "fixup": 14, "head": 14, "That": 14, "thank": 14, "consist": 14, "throughout": 14, "keep": 14, "mind": 14, "one": [14, 39], "unit": 14, "public": 14, "api": [14, 45, 46, 47], "method": 14, "pep": 14, "8": 14, "style": 14, "guid": 14, "By": 14, "agre": 14, "under": [14, 34], "mit": 14, "overview": [15, 47, 49], "tabl": [15, 19, 29, 44, 45, 46, 47], "content": [15, 44, 47], "basic": [15, 47, 48, 49], "workflow": [15, 47], "languag": [15, 43, 47], "syntax": [15, 47], "rel": [15, 47], "schemat": [15, 47], "flag": [15, 40, 47], "application_abc": [16, 47], "application_build": [16, 47], "application_builder_abc": [16, 47], "startup_abc": [16, 47], "configur": [16, 17, 23, 30, 45, 46, 47], "configuration_abc": [16, 17, 23, 47], "configuration_model_abc": [16, 47], "configuration_variable_name_enum": [16, 47], "console_argu": [16, 47], "background_color_enum": [16, 47], "console_cal": [16, 47], "foreground_color_enum": [16, 47], "spinner_thread": [16, 47], "databas": [16, 23, 47], "connect": [16, 20, 22, 26, 37, 47], "database_connect": [16, 20, 47], "database_connection_abc": [16, 20, 47], "context": [16, 20, 23, 35, 37, 47, 49], "database_context": [16, 20, 47], "database_context_abc": [16, 20, 23, 47], "database_model": [16, 47], "database_set": [16, 21, 22, 47], "database_settings_name_enum": [16, 47], "dependency_inject": [16, 17, 47], "service_collect": [16, 37, 47], "service_collection_abc": [16, 17, 47], "service_descriptor": [16, 47], "service_lifetime_enum": [16, 47], "service_provid": [16, 47], "service_provider_abc": [16, 17, 47], "environ": [16, 17, 18, 25, 26, 44, 45, 46, 47], "application_environ": [16, 47], "application_environment_abc": [16, 17, 25, 26, 47], "environment_name_enum": [16, 47], "log": [16, 26, 45, 46, 47], "logger_abc": [16, 26, 47], "logger_servic": [16, 47], "logging_level_enum": [16, 47], "logging_set": [16, 47], "logging_settings_name_enum": [16, 47], "mail": [16, 44, 45, 46, 47, 50], "email": [16, 47], "email_client_abc": [16, 47], "email_client_servic": [16, 47], "email_client_set": [16, 47], "email_client_settings_name_enum": [16, 47], "bool_pip": [16, 47], "first_char_to_lower_pip": [16, 47], "first_to_upper_pip": [16, 47], "ip_address_pip": [16, 47], "pipe_abc": [16, 47], "to_camel_case_pip": [16, 47], "to_snake_case_pip": [16, 47], "version_pip": [16, 47], "time_format_set": [16, 25, 47], "time_format_settings_names_enum": [16, 47], "util": [16, 45, 46, 47], "credential_manag": [16, 47], "string": [16, 19, 21, 25, 26, 27, 45, 46, 47, 48], "applicationabc": [17, 31], "config": [17, 23, 31, 37], "configurationabc": [17, 18, 23, 31, 37], "serviceproviderabc": [17, 18, 23, 31], "contain": [17, 30, 36, 39, 47], "object": [17, 18, 19, 23, 26, 29, 34, 36, 39, 42, 45, 46], "load": [17, 43], "appset": [17, 44, 47, 48, 50], "instanc": [17, 23], "main": [17, 48], "custom": [17, 18, 24, 45, 46], "entri": [17, 19], "run_async": 17, "applicationbuild": 17, "applicationbuilderabc": 17, "build_async": 17, "use_extens": 17, "extens": [17, 38, 39, 42, 45, 46, 47], "union": [17, 18, 19, 23, 35, 36, 37, 39], "applicationextensionabc": 17, "startupextensionabc": 17, "use_startup": 17, "startupabc": 17, "arg": [17, 18, 19, 22, 27, 29, 32, 35, 37, 43], "configure_configur": 17, "env": [17, 25, 37], "applicationenvironmentabc": [17, 18, 24, 25, 26, 37], "configure_servic": 17, "servicecollectionabc": [17, 23, 37], "add_configur": 18, "key_typ": 18, "configurationmodelabc": [18, 20, 25, 26, 28, 33, 43], "add_console_argu": 18, "argumentabc": 18, "known": 18, "consoleargumentabc": 18, "add_environment_vari": 18, "read": [18, 19, 48], "variabl": [18, 29], "add_json_fil": 18, "bool": [18, 19, 20, 26, 27, 34, 39, 40], "none": [18, 19, 23, 25, 26, 29, 39, 40, 41, 42], "true": 18, "error": [18, 19, 25, 35, 37, 45, 46], "should": [18, 48, 49], "occur": 18, "wa": [18, 49], "found": [18, 39], "place": 18, "store": 18, "properti": [18, 19, 20, 21, 22, 23, 24, 25, 26, 28, 33, 34, 37, 39, 42, 43], "additional_argu": 18, "argument_error_funct": 18, "callabl": [18, 19, 23, 39], "argument_abc": 18, "create_console_argu": 18, "arg_typ": 18, "argumenttypeenum": 18, "token": [18, 33], "kwarg": [18, 19, 32, 35, 37], "begin": 18, "value_token": 18, "were": 18, "is_value_token_opt": 18, "runnabl": 18, "when": [18, 19, 35, 37, 39], "for_each_argu": 18, "iter": [18, 38, 39, 40, 41, 47], "through": [18, 48], "function": [18, 19, 29, 39, 40, 42, 45, 48], "get_configur": 18, "search_typ": 18, "return": [18, 19, 23, 26, 34, 39, 48], "parse_console_argu": 18, "invalid": 18, "from_dict": [18, 20, 25, 26, 28, 33, 43], "dict": [18, 19, 20, 25, 26, 27, 28, 33, 43], "convert": [18, 25, 26, 27, 28, 29, 33, 36, 39, 40, 41, 42, 43, 45, 46], "attribut": [18, 20, 25, 26, 28, 33, 43], "configurationvariablenameenum": 18, "enumer": [18, 19, 20, 23, 24, 25, 26, 28, 38, 41, 42, 47], "static": [18, 26, 29, 36], "to_list": [18, 39], "backgroundcolorenum": 19, "blue": 19, "on_blu": 19, "cyan": 19, "on_cyan": 19, "on_default": 19, "green": 19, "on_green": 19, "grei": 19, "on_grei": 19, "magenta": 19, "on_magenta": 19, "red": 19, "on_r": 19, "white": 19, "on_whit": 19, "yellow": 19, "on_yellow": 19, "handl": [19, 29, 44, 45, 46, 47, 50], "input": [19, 45, 46, 48], "background_color": 19, "bytes_or_buff": 19, "encod": [19, 29], "expos": 19, "buffer": [19, 20], "decod": [19, 29], "handler": 19, "result": [19, 26, 29, 39], "__str__": 19, "repr": 19, "sy": 19, "getdefaultencod": 19, "strict": 19, "classmethod": [19, 29, 39], "banner": [19, 45, 46], "print": [19, 48], "clear": 19, "color_reset": 19, "reset": [19, 29, 39], "color": 19, "disabl": 19, "interact": 19, "enabl": [19, 48], "tb": 19, "traceback": 19, "foreground_color": 19, "read_lin": 19, "next": [19, 39, 44, 47], "reset_cursor_posit": 19, "cursor": [19, 21, 22], "posit": [19, 34], "select": [19, 22, 39, 48], "char": [19, 27, 29], "header_foreground_color": 19, "foregroundcolorenum": 19, "header_background_color": 19, "option_foreground_color": 19, "option_background_color": 19, "cursor_foreground_color": 19, "cursor_background_color": 19, "menu": [19, 44, 45, 46, 47], "charact": 19, "header": [19, 25, 26], "foreground": 19, "background": 19, "set_background_color": 19, "set_cursor_posit": 19, "x": [19, 39], "int": [19, 20, 26, 27, 29, 34, 39, 48], "y": [19, 48], "set_foreground_color": 19, "set_hold_back": 19, "spinner": [19, 45, 46], "text_foreground_color": 19, "spinner_foreground_color": 19, "text_background_color": 19, "spinner_background_color": 19, "end": [19, 25], "stop": 19, "text": [19, 34], "keyword": 19, "activ": [19, 34], "last": [19, 39], "write_at": [19, 45, 46], "write_lin": [19, 45, 46, 48], "write_line_at": [19, 45, 46], "consolecal": 19, "repres": [19, 20, 24, 26], "hold": 19, "spinnerthread": 19, "msg_len": 19, "length": [19, 29, 39, 48], "exit": [19, 48], "stop_spin": 19, "databaseset": [20, 21, 22, 23], "auth_plugin": 20, "charset": 20, "host": [20, 26], "password": [20, 48], "port": [20, 26], "use_unicod": 20, "user": [20, 35, 37, 48], "databasesettingsnameenum": 20, "authplugin": 20, "useunicod": 20, "databaseconnect": 21, "databaseconnectionabc": 21, "represent": [21, 22, 23, 25, 26, 28], "connection_str": 21, "http": [21, 49], "doc": 21, "sqlalchemi": 21, "org": 21, "en": 21, "14": 21, "core": [21, 45, 49], "engin": 21, "html": 21, "mysqlcursorbuff": [21, 22], "mysqlconnectionabstract": 21, "databasecontext": 22, "databasecontextabc": [22, 23], "save_chang": 22, "tupl": [22, 34], "sql": 22, "fetch": 22, "servicecollect": 23, "collect": 23, "add_db_context": 23, "db_context_typ": 23, "db_set": 23, "db_context": 23, "add_log": 23, "intern": 23, "logger": [23, 25, 26, 37, 44, 45, 46, 47, 50], "add_pip": 23, "transient": [23, 45, 46], "add_scop": 23, "service_typ": 23, "scope": [23, 45, 46], "lifetim": [23, 45, 46], "self": 23, "add_singleton": 23, "singleton": [23, 45, 46], "add_transi": 23, "build_service_provid": 23, "add_discord": 23, "discord": [23, 35, 37, 45, 47], "add_transl": 23, "translat": [23, 45, 47], "servicedescriptor": 23, "servicelifetimeenum": 23, "base_typ": 23, "descriptor": 23, "1": [23, 25, 48], "0": [23, 25, 34, 48], "2": [23, 25, 34, 48], "serviceprovid": 23, "build_servic": 23, "instance_typ": 23, "create_scop": 23, "scopeabc": 23, "get_servic": 23, "set_scop": 23, "applicationenviron": 24, "environmentnameenum": 24, "product": [24, 45, 46], "application_nam": 24, "date_time_now": 24, "datetim": [24, 34, 35, 37], "end_tim": 24, "environment_nam": 24, "host_nam": 24, "runtime_directori": 24, "set_runtime_directori": 24, "runtim": [24, 45, 46], "set_working_directori": 24, "working_directori": 24, "start_tim": 24, "stage": [24, 45, 46], "loggerabc": [25, 26, 37], "debug": [25, 45, 46], "ex": 25, "except": [25, 39], "thrown": 25, "fatal": [25, 45, 46], "program": 25, "trace": [25, 45, 46], "warn": [25, 45, 46], "loggingset": [25, 37], "time_format": [25, 28], "timeformatset": [25, 28], "tree": 25, "logfil": 25, "logginglevelenum": 25, "5": [25, 48], "4": 25, "off": 25, "6": 25, "3": 25, "filenam": 25, "level": [25, 45, 46], "loggingsettingsnameenum": 25, "console_level": 25, "consoleloglevel": 25, "file_level": 25, "fileloglevel": 25, "subject": 26, "bodi": 26, "transceiv": 26, "receiv": 26, "e": 26, "add_head": 26, "add_receiv": 26, "check_mail": 26, "address": 26, "check": [26, 39, 40], "get_cont": 26, "header_list": 26, "receiver_list": 26, "emailclientabc": 26, "emailcli": 26, "send_mail": 26, "mail_set": 26, "emailclientset": 26, "login": 26, "credenti": [26, 29, 45, 46], "user_nam": 26, "emailclientsettingsnameenum": 26, "usernam": 26, "boolpip": 27, "pipeabc": [27, 43], "transform": [27, 43], "firstchartolowerpip": 27, "lower": [27, 29, 48], "firsttoupperpip": 27, "upper": [27, 29, 48], "ipaddresspip": 27, "tocamelcasepip": 27, "camel": [27, 29], "camelcas": [27, 29], "tosnakecasepip": 27, "snake": [27, 29], "snake_cas": [27, 29], "versionpip": 27, "date_format": 28, "date_time_format": 28, "date_time_log_format": 28, "timeformatsettingsnamesenum": 28, "dateformat": 28, "datetimeformat": 28, "datetimelogformat": 28, "timeformat": 28, "credentialmanag": 29, "encrypt": [29, 45, 46], "decrypt": 29, "build_str": 29, "replac": 29, "base64": [29, 45, 46], "get_execut": 29, "get_outd": 29, "byte": 29, "get": [29, 45, 46, 47, 49], "outdat": 29, "get_packag": 29, "local": [29, 44, 47], "stdout": 29, "stderr": 29, "extra": [29, 49], "index": [29, 39, 42, 48, 49], "url": [29, 49], "subprocess": [29, 45, 46], "reset_execut": 29, "system": 29, "standard": [29, 45, 46], "set_execut": 29, "convert_to_camel_cas": 29, "convert_to_snake_cas": 29, "first_to_low": 29, "first_to_upp": 29, "random_str": 29, "random": [29, 48], "cpl_discord": [30, 47], "discord_bot_application_abc": [30, 47], "discord_command_abc": [30, 47], "discord_commands_meta": [30, 47], "discord_bot_set": [30, 37, 47], "category_channel": [30, 47], "guild": [30, 35, 37, 47], "role": [30, 35, 37, 47], "text_channel": [30, 47], "voice_channel": [30, 47], "event": [30, 37, 47], "on_bulk_message_delete_abc": [30, 47], "on_command_abc": [30, 47], "on_command_completion_abc": [30, 47], "on_command_error_abc": [30, 47], "on_connect_abc": [30, 47], "on_disconnect_abc": [30, 47], "on_error_abc": [30, 47], "on_group_join_abc": [30, 47], "on_group_remove_abc": [30, 47], "on_guild_available_abc": [30, 47], "on_guild_channel_create_abc": [30, 47], "on_guild_channel_delete_abc": [30, 47], "on_guild_channel_pins_update_abc": [30, 47], "on_guild_channel_update_abc": [30, 47], "on_guild_emojis_update_abc": [30, 47], "on_guild_integrations_update_abc": [30, 47], "on_guild_join_abc": [30, 47], "on_guild_remove_abc": [30, 47], "on_guild_role_create_abc": [30, 47], "on_guild_role_delete_abc": [30, 47], "on_guild_role_update_abc": [30, 47], "on_guild_unavailable_abc": [30, 47], "on_guild_update_abc": [30, 47], "on_invite_create_abc": [30, 47], "on_invite_delete_abc": [30, 47], "on_member_ban_abc": [30, 47], "on_member_join_abc": [30, 47], "on_member_remove_abc": [30, 47], "on_member_unban_abc": [30, 47], "on_member_update_abc": [30, 47], "on_message_abc": [30, 47], "on_message_delete_abc": [30, 47], "on_message_edit_abc": [30, 47], "on_private_channel_create_abc": [30, 47], "on_private_channel_delete_abc": [30, 47], "on_private_channel_pins_update_abc": [30, 47], "on_private_channel_update_abc": [30, 47], "on_raw_reaction_add_abc": [30, 47], "on_raw_reaction_clear_abc": [30, 47], "on_raw_reaction_clear_emoji_abc": [30, 47], "on_raw_reaction_remove_abc": [30, 47], "on_reaction_add_abc": [30, 47], "on_reaction_clear_abc": [30, 47], "on_reaction_clear_emoji_abc": [30, 47], "on_reaction_remove_abc": [30, 47], "on_ready_abc": [30, 47], "on_resume_abc": [30, 47], "on_typing_abc": [30, 47], "on_user_update_abc": [30, 47], "on_voice_state_update_abc": [30, 47], "on_webhooks_update_abc": [30, 47], "helper": [30, 47], "to_containers_convert": [30, 47], "command_error_handler_servic": [30, 47], "discord_bot_servic": [30, 47], "discord_bot_service_abc": [30, 47], "discord_collect": [30, 47], "discord_collection_abc": [30, 47], "discord_servic": [30, 47], "discord_service_abc": [30, 47], "discordbotapplicationabc": 31, "stop_async": [31, 37], "discordcommandabc": [32, 37], "cog": [32, 37], "discordcogmeta": 32, "namespac": 32, "abcmeta": 32, "cogmeta": 32, "discordbotset": [33, 37], "categorychannel": 34, "_t": [34, 36, 37, 39], "category_id": 34, "id": [34, 48], "nsfw": 34, "textchannel": 34, "categori": 34, "voicechannel": 34, "voic": 34, "_o": 34, "afk_channel": 34, "afk_timeout": 34, "approximate_member_count": 34, "approximate_presence_count": 34, "belong": 34, "sort": [34, 39, 45], "top": 34, "bottom": 34, "default_notif": 34, "emoji": [34, 35, 37], "explicit_content_filt": 34, "featur": [34, 49], "max_memb": 34, "max_pres": 34, "max_video_channel_us": 34, "sequenc": [34, 35, 36, 37, 39], "mfa_level": 34, "nsfw_level": 34, "owner_id": 34, "preferred_local": 34, "premium_progress_bar_en": 34, "premium_subscription_count": 34, "premium_ti": 34, "hierarchi": 34, "lowest": [34, 39], "sticker": 34, "permiss": 34, "view": 34, "unavail": 34, "vanity_url_cod": 34, "verification_level": 34, "widget_en": 34, "activitytyp": 34, "joined_at": 34, "nick": 34, "pend": 34, "premium_sinc": 34, "alwai": 34, "everyon": 34, "These": [34, 45], "timed_out_until": 34, "hoist": 34, "mention": 34, "tag": 34, "unicode_emoji": 34, "default_auto_archive_dur": 34, "last_message_id": 34, "slowmode_delai": 34, "archive_timestamp": 34, "archiv": 34, "archiver_id": 34, "auto_archive_dur": 34, "invit": [34, 35, 37], "lock": 34, "me": 34, "member_count": 34, "threadmemb": 34, "intent": 34, "properli": 34, "fill": 34, "howev": 34, "gatewai": 34, "fetch_memb": 34, "message_count": 34, "parent_id": 34, "insid": 34, "onbulkmessagedeleteabc": 35, "on_bulk_message_delet": [35, 37], "oncommandabc": 35, "on_command": [35, 37], "ctx": [35, 37], "oncommandcompletionabc": 35, "on_command_complet": [35, 37], "oncommanderrorabc": [35, 37], "on_command_error": [35, 37], "commanderror": [35, 37], "onconnectabc": 35, "on_connect": [35, 37], "ondisconnectabc": 35, "on_disconnect": [35, 37], "onerrorabc": 35, "on_error": [35, 37], "ongroupjoinabc": 35, "on_group_join": [35, 37], "chhanel": [35, 37], "groupchannel": [35, 37], "ongroupremoveabc": 35, "on_group_remov": [35, 37], "onguildavailableabc": 35, "on_guild_avail": [35, 37], "onguildchannelcreateabc": 35, "on_guild_channel_cr": [35, 37], "guildchannel": [35, 37], "onguildchanneldeleteabc": 35, "on_guild_channel_delet": [35, 37], "onguildchannelpinsupdateabc": 35, "on_guild_channel_pins_upd": [35, 37], "list_pin": [35, 37], "onguildchannelupdateabc": 35, "on_guild_channel_upd": [35, 37], "onguildemojisupdateabc": 35, "on_guild_emojis_upd": [35, 37], "onguildintegrationsupdateabc": 35, "on_guild_integrations_upd": [35, 37], "onguildjoinabc": 35, "on_guild_join": [35, 37], "onguildremoveabc": 35, "on_guild_remov": [35, 37], "onguildrolecreateabc": 35, "on_guild_role_cr": [35, 37], "onguildroledeleteabc": 35, "on_guild_role_delet": [35, 37], "onguildroleupdateabc": 35, "on_guild_role_upd": [35, 37], "onguildunavailableabc": 35, "on_guild_unavail": [35, 37], "onguildupdateabc": 35, "on_guild_upd": [35, 37], "oninvitecreateabc": 35, "on_invite_cr": [35, 37], "oninvitedeleteabc": 35, "on_invite_delet": [35, 37], "onmemberbanabc": 35, "on_member_ban": [35, 37], "onmemberjoinabc": 35, "on_member_join": [35, 37], "onmemberremoveabc": 35, "on_member_remov": [35, 37], "onmemberunbanabc": 35, "on_member_unban": [35, 37], "onmemberupdateabc": 35, "on_member_upd": [35, 37], "onmessageabc": 35, "on_messag": [35, 37], "onmessagedeleteabc": 35, "on_message_delet": [35, 37], "onmessageeditabc": 35, "on_message_edit": [35, 37], "onprivatechannelcreateabc": 35, "on_private_channel_cr": [35, 37], "privatechannel": [35, 37], "onprivatechanneldeleteabc": 35, "on_private_channel_delet": [35, 37], "onprivatechannelpinsupdateabc": 35, "on_private_channel_pins_upd": [35, 37], "onprivatechannelupdateabc": 35, "on_private_channel_upd": [35, 37], "onrawreactionaddabc": 35, "on_raw_reaction_add": [35, 37], "payload": [35, 37], "rawreactionactionev": [35, 37], "onrawreactionclearabc": 35, "on_raw_reaction_clear": [35, 37], "onrawreactionclearemojiabc": 35, "on_raw_reaction_clear_emoji": [35, 37], "onrawreactionremoveabc": 35, "on_raw_reaction_remov": [35, 37], "onreactionaddabc": 35, "on_reaction_add": [35, 37], "reaction": [35, 37], "onreactionclearabc": 35, "on_reaction_clear": [35, 37], "onreactionclearemojiabc": 35, "on_reaction_clear_emoji": [35, 37], "onreactionremoveabc": 35, "on_reaction_remov": [35, 37], "onreadyabc": 35, "on_readi": [35, 37], "onresumeabc": 35, "on_resum": [35, 37], "ontypingabc": 35, "on_typ": [35, 37], "onuserupdateabc": 35, "on_user_upd": [35, 37], "onvoicestateupdateabc": 35, "on_voice_state_upd": [35, 37], "voicest": [35, 37], "onwebhooksupdateabc": 35, "on_webhooks_upd": [35, 37], "tocontainersconvert": 36, "_l": 36, "commanderrorhandlerservic": 37, "discordbotservic": 37, "logging_st": 37, "discordserviceabc": 37, "discordbotserviceabc": 37, "client": 37, "start_async": 37, "bot": 37, "discordcollect": 37, "discordcollectionabc": 37, "add_command": 37, "add_ev": 37, "_t_event": 37, "get_command": 37, "get_events_by_bas": 37, "discordservic": 37, "init": 37, "cpl_queri": [38, 47], "default_lambda": [38, 47], "ordered_query": [38, 47], "ordered_queryable_abc": [38, 47], "queryable_abc": [38, 47], "sequence_abc": [38, 47], "sequence_valu": [38, 47], "enumerable_abc": [38, 41, 42, 47], "iterable_abc": [38, 40, 41, 47], "orderedquery": 39, "_valu": [39, 40], "_func": 39, "orderedqueryableabc": 39, "orderediterableabc": 39, "then_bi": 39, "orderedlist": 39, "ascend": 39, "func": 39, "ordered_iterable_abc": 39, "then_by_descend": 39, "descend": 39, "queryableabc": [39, 40, 42], "sequenceabc": 39, "everi": 39, "equal": 39, "averag": 39, "float": 39, "complex": [39, 45, 46], "distinct": 39, "redund": 39, "element_at": 39, "_index": 39, "element_at_or_default": 39, "first_or_default": 39, "for_each": 39, "group_bi": 39, "group": 39, "last_or_default": 39, "max": 39, "highest": 39, "median": 39, "min": 39, "order_bi": 39, "order_by_descend": 39, "revers": 39, "select_mani": 39, "flatten": 39, "singl": 39, "argumentnoneexcept": 39, "single_or_default": 39, "skip": 39, "skip_last": 39, "sum": 39, "take_last": 39, "where": 39, "empti": 39, "_object": [39, 42], "indexerror": 39, "rang": [39, 48], "sequencevalu": 39, "enumerableabc": [40, 41, 42], "set_remove_error_check": 40, "to_iter": [40, 41], "iterableabc": [40, 41, 42], "to_enumer": [41, 42], "append": 42, "extend": [42, 44, 47, 50], "_iterableabc__iter": 42, "__iter": 42, "translatepip": 43, "translationserviceabc": 43, "translationservic": 43, "lang": 43, "load_by_set": 43, "translationset": 43, "set_default_lang": 43, "set_lang": 43, "kei": [43, 45, 49], "default_languag": 43, "prerequisit": [44, 47], "what": [44, 47], "up": [44, 47], "queri": [44, 45, 46, 47], "tutori": [44, 47, 48, 49], "com": [44, 47, 50], "builtin": [44, 47, 50], "common": [45, 46], "platform": [45, 46], "meant": [45, 46], "effici": [45, 46], "desktop": [45, 46], "learn": [45, 46, 49], "enterpris": [45, 46], "expandl": [45, 46], "builder": [45, 46], "map": [45, 46], "inject": [45, 46, 48], "appnam": [45, 46], "hostnam": [45, 46], "wrapper": [45, 46], "differ": [45, 46], "variant": [45, 46], "to_lower_cas": [45, 46], "to_camel_cas": [45, 46], "code": [45, 48, 49], "connector": 45, "between": 45, "filter": 45, "linq": 45, "xd": 45, "dot": 45, "notat": 45, "page": 45, "great": 45, "detail": 45, "about": [45, 49], "everyth": 45, "do": [45, 48], "contribut": 45, "cpl_translat": 47, "translate_pip": 47, "translation_servic": 47, "translation_service_abc": 47, "translation_set": 47, "welcom": 48, "introduc": 48, "walk": 48, "also": [48, 49], "sampl": 48, "ouput": 48, "look": 48, "licens": 48, "done": 48, "readm": 48, "md": 48, "__init__": 48, "projectmain": 48, "vs": 48, "pycharm": 48, "folder": 48, "hello": [48, 49], "world": [48, 49], "emul": 48, "def": 48, "onli": 48, "__name__": 48, "__main__": 48, "generate_password": 48, "letter": 48, "join": 48, "choic": 48, "ascii_lowercas": 48, "elif": 48, "ascii_uppercas": 48, "ascii_lett": 48, "len": 48, "full": 48, "section": 48, "ve": 48, "continu": 48, "explor": 48, "window": 49, "prompt": 49, "declin": 49, "enter": 49, "press": 49, "lib": 49, "live": 49, "navig": 49, "launch": 49, "watch": 49, "chnage": 49, "those": 49, "success": 49, "similar": 49, "fore": 49, "pyhton": 49}, "objects": {"cpl_core.application": [[17, 0, 0, "-", "application_abc"], [17, 0, 0, "-", "application_builder"], [17, 0, 0, "-", "application_builder_abc"], [17, 0, 0, "-", "startup_abc"]], "cpl_core.application.application_abc": [[17, 1, 1, "", "ApplicationABC"]], "cpl_core.application.application_abc.ApplicationABC": [[17, 2, 1, "", "configure"], [17, 2, 1, "", "main"], [17, 2, 1, "", "run"], [17, 2, 1, "", "run_async"]], "cpl_core.application.application_builder": [[17, 1, 1, "", "ApplicationBuilder"]], "cpl_core.application.application_builder.ApplicationBuilder": [[17, 2, 1, "", "build"], [17, 2, 1, "", "build_async"], [17, 2, 1, "", "use_extension"], [17, 2, 1, "", "use_startup"]], "cpl_core.application.application_builder_abc": [[17, 1, 1, "", "ApplicationBuilderABC"]], "cpl_core.application.application_builder_abc.ApplicationBuilderABC": [[17, 2, 1, "", "build"], [17, 2, 1, "", "build_async"], [17, 2, 1, "", "use_startup"]], "cpl_core.application.startup_abc": [[17, 1, 1, "", "StartupABC"]], "cpl_core.application.startup_abc.StartupABC": [[17, 2, 1, "", "configure_configuration"], [17, 2, 1, "", "configure_services"]], "cpl_core.configuration": [[18, 0, 0, "-", "configuration"], [18, 0, 0, "-", "configuration_abc"], [18, 0, 0, "-", "configuration_model_abc"], [18, 0, 0, "-", "configuration_variable_name_enum"]], "cpl_core.configuration.configuration": [[18, 1, 1, "", "Configuration"]], "cpl_core.configuration.configuration.Configuration": [[18, 2, 1, "", "add_configuration"], [18, 2, 1, "", "add_console_argument"], [18, 2, 1, "", "add_environment_variables"], [18, 2, 1, "", "add_json_file"], [18, 3, 1, "", "additional_arguments"], [18, 3, 1, "", "argument_error_function"], [18, 3, 1, "", "arguments"], [18, 2, 1, "", "create_console_argument"], [18, 3, 1, "", "environment"], [18, 2, 1, "", "for_each_argument"], [18, 2, 1, "", "get_configuration"], [18, 2, 1, "", "parse_console_arguments"]], "cpl_core.configuration.configuration_abc": [[18, 1, 1, "", "ConfigurationABC"]], "cpl_core.configuration.configuration_abc.ConfigurationABC": [[18, 2, 1, "", "add_configuration"], [18, 2, 1, "", "add_console_argument"], [18, 2, 1, "", "add_environment_variables"], [18, 2, 1, "", "add_json_file"], [18, 3, 1, "", "additional_arguments"], [18, 3, 1, "", "argument_error_function"], [18, 3, 1, "", "arguments"], [18, 2, 1, "", "create_console_argument"], [18, 3, 1, "", "environment"], [18, 2, 1, "", "for_each_argument"], [18, 2, 1, "", "get_configuration"], [18, 2, 1, "", "parse_console_arguments"]], "cpl_core.configuration.configuration_model_abc": [[18, 1, 1, "", "ConfigurationModelABC"]], "cpl_core.configuration.configuration_model_abc.ConfigurationModelABC": [[18, 2, 1, "", "from_dict"]], "cpl_core.configuration.configuration_variable_name_enum": [[18, 1, 1, "", "ConfigurationVariableNameEnum"]], "cpl_core.configuration.configuration_variable_name_enum.ConfigurationVariableNameEnum": [[18, 4, 1, "", "customer"], [18, 4, 1, "", "environment"], [18, 4, 1, "", "name"], [18, 2, 1, "", "to_list"]], "cpl_core.console": [[19, 0, 0, "-", "background_color_enum"], [19, 0, 0, "-", "console"], [19, 0, 0, "-", "console_call"], [19, 0, 0, "-", "foreground_color_enum"], [19, 0, 0, "-", "spinner_thread"]], "cpl_core.console.background_color_enum": [[19, 1, 1, "", "BackgroundColorEnum"]], "cpl_core.console.background_color_enum.BackgroundColorEnum": [[19, 4, 1, "", "blue"], [19, 4, 1, "", "cyan"], [19, 4, 1, "", "default"], [19, 4, 1, "", "green"], [19, 4, 1, "", "grey"], [19, 4, 1, "", "magenta"], [19, 4, 1, "", "red"], [19, 4, 1, "", "white"], [19, 4, 1, "", "yellow"]], "cpl_core.console.console": [[19, 1, 1, "", "Console"]], "cpl_core.console.console.Console": [[19, 3, 1, "", "background_color"], [19, 2, 1, "", "banner"], [19, 2, 1, "", "clear"], [19, 2, 1, "", "close"], [19, 2, 1, "", "color_reset"], [19, 2, 1, "", "disable"], [19, 2, 1, "", "enable"], [19, 2, 1, "", "error"], [19, 3, 1, "", "foreground_color"], [19, 2, 1, "", "read"], [19, 2, 1, "", "read_line"], [19, 2, 1, "", "reset_cursor_position"], [19, 2, 1, "", "select"], [19, 2, 1, "", "set_background_color"], [19, 2, 1, "", "set_cursor_position"], [19, 2, 1, "", "set_foreground_color"], [19, 2, 1, "", "set_hold_back"], [19, 2, 1, "", "spinner"], [19, 2, 1, "", "table"], [19, 2, 1, "", "write"], [19, 2, 1, "", "write_at"], [19, 2, 1, "", "write_line"], [19, 2, 1, "", "write_line_at"]], "cpl_core.console.console_call": [[19, 1, 1, "", "ConsoleCall"]], "cpl_core.console.console_call.ConsoleCall": [[19, 3, 1, "", "args"], [19, 3, 1, "", "function"]], "cpl_core.console.foreground_color_enum": [[19, 1, 1, "", "ForegroundColorEnum"]], "cpl_core.console.foreground_color_enum.ForegroundColorEnum": [[19, 4, 1, "", "blue"], [19, 4, 1, "", "cyan"], [19, 4, 1, "", "default"], [19, 4, 1, "", "green"], [19, 4, 1, "", "grey"], [19, 4, 1, "", "magenta"], [19, 4, 1, "", "red"], [19, 4, 1, "", "white"], [19, 4, 1, "", "yellow"]], "cpl_core.console.spinner_thread": [[19, 1, 1, "", "SpinnerThread"]], "cpl_core.console.spinner_thread.SpinnerThread": [[19, 2, 1, "", "exit"], [19, 2, 1, "", "run"], [19, 2, 1, "", "stop_spinning"]], "cpl_core.database.connection": [[21, 0, 0, "-", "database_connection"], [21, 0, 0, "-", "database_connection_abc"]], "cpl_core.database.connection.database_connection": [[21, 1, 1, "", "DatabaseConnection"]], "cpl_core.database.connection.database_connection.DatabaseConnection": [[21, 2, 1, "", "connect"], [21, 3, 1, "", "cursor"], [21, 3, 1, "", "server"]], "cpl_core.database.connection.database_connection_abc": [[21, 1, 1, "", "DatabaseConnectionABC"]], "cpl_core.database.connection.database_connection_abc.DatabaseConnectionABC": [[21, 2, 1, "", "connect"], [21, 3, 1, "", "cursor"], [21, 3, 1, "", "server"]], "cpl_core.database.context": [[22, 0, 0, "-", "database_context"], [22, 0, 0, "-", "database_context_abc"]], "cpl_core.database.context.database_context": [[22, 1, 1, "", "DatabaseContext"]], "cpl_core.database.context.database_context.DatabaseContext": [[22, 2, 1, "", "connect"], [22, 3, 1, "", "cursor"], [22, 2, 1, "", "save_changes"], [22, 2, 1, "", "select"]], "cpl_core.database.context.database_context_abc": [[22, 1, 1, "", "DatabaseContextABC"]], "cpl_core.database.context.database_context_abc.DatabaseContextABC": [[22, 2, 1, "", "connect"], [22, 3, 1, "", "cursor"], [22, 2, 1, "", "save_changes"], [22, 2, 1, "", "select"]], "cpl_core.database": [[20, 0, 0, "-", "database_settings"], [20, 0, 0, "-", "database_settings_name_enum"]], "cpl_core.database.database_settings": [[20, 1, 1, "", "DatabaseSettings"]], "cpl_core.database.database_settings.DatabaseSettings": [[20, 3, 1, "", "auth_plugin"], [20, 3, 1, "", "buffered"], [20, 3, 1, "", "charset"], [20, 3, 1, "", "database"], [20, 2, 1, "", "from_dict"], [20, 3, 1, "", "host"], [20, 3, 1, "", "password"], [20, 3, 1, "", "port"], [20, 3, 1, "", "use_unicode"], [20, 3, 1, "", "user"]], "cpl_core.database.database_settings_name_enum": [[20, 1, 1, "", "DatabaseSettingsNameEnum"]], "cpl_core.database.database_settings_name_enum.DatabaseSettingsNameEnum": [[20, 4, 1, "", "auth_plugin"], [20, 4, 1, "", "buffered"], [20, 4, 1, "", "charset"], [20, 4, 1, "", "database"], [20, 4, 1, "", "host"], [20, 4, 1, "", "password"], [20, 4, 1, "", "port"], [20, 4, 1, "", "use_unicode"], [20, 4, 1, "", "user"]], "cpl_core.dependency_injection": [[23, 0, 0, "-", "service_collection"], [23, 0, 0, "-", "service_collection_abc"], [23, 0, 0, "-", "service_descriptor"], [23, 0, 0, "-", "service_lifetime_enum"], [23, 0, 0, "-", "service_provider"], [23, 0, 0, "-", "service_provider_abc"]], "cpl_core.dependency_injection.service_collection": [[23, 1, 1, "", "ServiceCollection"]], "cpl_core.dependency_injection.service_collection.ServiceCollection": [[23, 2, 1, "", "add_db_context"], [23, 2, 1, "", "add_logging"], [23, 2, 1, "", "add_pipes"], [23, 2, 1, "", "add_scoped"], [23, 2, 1, "", "add_singleton"], [23, 2, 1, "", "add_transient"], [23, 2, 1, "", "build_service_provider"]], "cpl_core.dependency_injection.service_collection_abc": [[23, 1, 1, "", "ServiceCollectionABC"]], "cpl_core.dependency_injection.service_collection_abc.ServiceCollectionABC": [[23, 2, 1, "", "add_db_context"], [23, 2, 1, "", "add_discord"], [23, 2, 1, "", "add_logging"], [23, 2, 1, "", "add_pipes"], [23, 2, 1, "", "add_scoped"], [23, 2, 1, "", "add_singleton"], [23, 2, 1, "", "add_transient"], [23, 2, 1, "", "add_translation"], [23, 2, 1, "", "build_service_provider"]], "cpl_core.dependency_injection.service_descriptor": [[23, 1, 1, "", "ServiceDescriptor"]], "cpl_core.dependency_injection.service_descriptor.ServiceDescriptor": [[23, 3, 1, "", "base_type"], [23, 3, 1, "", "implementation"], [23, 3, 1, "", "lifetime"], [23, 3, 1, "", "service_type"]], "cpl_core.dependency_injection.service_lifetime_enum": [[23, 1, 1, "", "ServiceLifetimeEnum"]], "cpl_core.dependency_injection.service_lifetime_enum.ServiceLifetimeEnum": [[23, 4, 1, "", "scoped"], [23, 4, 1, "", "singleton"], [23, 4, 1, "", "transient"]], "cpl_core.dependency_injection.service_provider": [[23, 1, 1, "", "ServiceProvider"]], "cpl_core.dependency_injection.service_provider.ServiceProvider": [[23, 2, 1, "", "build_service"], [23, 2, 1, "", "create_scope"], [23, 2, 1, "", "get_service"], [23, 2, 1, "", "set_scope"]], "cpl_core.dependency_injection.service_provider_abc": [[23, 1, 1, "", "ServiceProviderABC"]], "cpl_core.dependency_injection.service_provider_abc.ServiceProviderABC": [[23, 2, 1, "", "build_service"], [23, 2, 1, "", "create_scope"], [23, 2, 1, "", "get_service"], [23, 2, 1, "", "set_scope"]], "cpl_core.environment": [[24, 0, 0, "-", "application_environment"], [24, 0, 0, "-", "application_environment_abc"], [24, 0, 0, "-", "environment_name_enum"]], "cpl_core.environment.application_environment": [[24, 1, 1, "", "ApplicationEnvironment"]], "cpl_core.environment.application_environment.ApplicationEnvironment": [[24, 3, 1, "", "application_name"], [24, 3, 1, "", "customer"], [24, 3, 1, "", "date_time_now"], [24, 3, 1, "", "end_time"], [24, 3, 1, "", "environment_name"], [24, 3, 1, "", "host_name"], [24, 3, 1, "", "runtime_directory"], [24, 2, 1, "", "set_runtime_directory"], [24, 2, 1, "", "set_working_directory"], [24, 3, 1, "", "start_time"], [24, 3, 1, "", "working_directory"]], "cpl_core.environment.application_environment_abc": [[24, 1, 1, "", "ApplicationEnvironmentABC"]], "cpl_core.environment.application_environment_abc.ApplicationEnvironmentABC": [[24, 3, 1, "", "application_name"], [24, 3, 1, "", "customer"], [24, 3, 1, "", "date_time_now"], [24, 3, 1, "", "end_time"], [24, 3, 1, "", "environment_name"], [24, 3, 1, "", "host_name"], [24, 3, 1, "", "runtime_directory"], [24, 2, 1, "", "set_runtime_directory"], [24, 2, 1, "", "set_working_directory"], [24, 3, 1, "", "start_time"], [24, 3, 1, "", "working_directory"]], "cpl_core.environment.environment_name_enum": [[24, 1, 1, "", "EnvironmentNameEnum"]], "cpl_core.environment.environment_name_enum.EnvironmentNameEnum": [[24, 4, 1, "", "development"], [24, 4, 1, "", "production"], [24, 4, 1, "", "staging"], [24, 4, 1, "", "testing"]], "cpl_core.logging": [[25, 0, 0, "-", "logger_abc"], [25, 0, 0, "-", "logger_service"], [25, 0, 0, "-", "logging_level_enum"], [25, 0, 0, "-", "logging_settings"], [25, 0, 0, "-", "logging_settings_name_enum"]], "cpl_core.logging.logger_abc": [[25, 1, 1, "", "LoggerABC"]], "cpl_core.logging.logger_abc.LoggerABC": [[25, 2, 1, "", "debug"], [25, 2, 1, "", "error"], [25, 2, 1, "", "fatal"], [25, 2, 1, "", "header"], [25, 2, 1, "", "info"], [25, 2, 1, "", "trace"], [25, 2, 1, "", "warn"]], "cpl_core.logging.logger_service": [[25, 1, 1, "", "Logger"]], "cpl_core.logging.logger_service.Logger": [[25, 2, 1, "", "create"], [25, 2, 1, "", "debug"], [25, 2, 1, "", "error"], [25, 2, 1, "", "fatal"], [25, 2, 1, "", "header"], [25, 2, 1, "", "info"], [25, 2, 1, "", "trace"], [25, 2, 1, "", "warn"]], "cpl_core.logging.logging_level_enum": [[25, 1, 1, "", "LoggingLevelEnum"]], "cpl_core.logging.logging_level_enum.LoggingLevelEnum": [[25, 4, 1, "", "DEBUG"], [25, 4, 1, "", "ERROR"], [25, 4, 1, "", "FATAL"], [25, 4, 1, "", "INFO"], [25, 4, 1, "", "OFF"], [25, 4, 1, "", "TRACE"], [25, 4, 1, "", "WARN"]], "cpl_core.logging.logging_settings": [[25, 1, 1, "", "LoggingSettings"]], "cpl_core.logging.logging_settings.LoggingSettings": [[25, 3, 1, "", "console"], [25, 3, 1, "", "filename"], [25, 2, 1, "", "from_dict"], [25, 3, 1, "", "level"], [25, 3, 1, "", "path"]], "cpl_core.logging.logging_settings_name_enum": [[25, 1, 1, "", "LoggingSettingsNameEnum"]], "cpl_core.logging.logging_settings_name_enum.LoggingSettingsNameEnum": [[25, 4, 1, "", "console_level"], [25, 4, 1, "", "file_level"], [25, 4, 1, "", "filename"], [25, 4, 1, "", "path"]], "cpl_core.mailing": [[26, 0, 0, "-", "email"], [26, 0, 0, "-", "email_client_abc"], [26, 0, 0, "-", "email_client_service"], [26, 0, 0, "-", "email_client_settings"], [26, 0, 0, "-", "email_client_settings_name_enum"]], "cpl_core.mailing.email": [[26, 1, 1, "", "EMail"]], "cpl_core.mailing.email.EMail": [[26, 2, 1, "", "add_header"], [26, 2, 1, "", "add_receiver"], [26, 3, 1, "", "body"], [26, 2, 1, "", "check_mail"], [26, 2, 1, "", "get_content"], [26, 3, 1, "", "header"], [26, 3, 1, "", "header_list"], [26, 3, 1, "", "receiver"], [26, 3, 1, "", "receiver_list"], [26, 3, 1, "", "subject"], [26, 3, 1, "", "transceiver"]], "cpl_core.mailing.email_client_abc": [[26, 1, 1, "", "EMailClientABC"]], "cpl_core.mailing.email_client_abc.EMailClientABC": [[26, 2, 1, "", "connect"], [26, 2, 1, "", "send_mail"]], "cpl_core.mailing.email_client_service": [[26, 1, 1, "", "EMailClient"]], "cpl_core.mailing.email_client_service.EMailClient": [[26, 2, 1, "", "connect"], [26, 2, 1, "", "create"], [26, 2, 1, "", "login"], [26, 2, 1, "", "send_mail"]], "cpl_core.mailing.email_client_settings": [[26, 1, 1, "", "EMailClientSettings"]], "cpl_core.mailing.email_client_settings.EMailClientSettings": [[26, 3, 1, "", "credentials"], [26, 2, 1, "", "from_dict"], [26, 3, 1, "", "host"], [26, 3, 1, "", "port"], [26, 3, 1, "", "user_name"]], "cpl_core.mailing.email_client_settings_name_enum": [[26, 1, 1, "", "EMailClientSettingsNameEnum"]], "cpl_core.mailing.email_client_settings_name_enum.EMailClientSettingsNameEnum": [[26, 4, 1, "", "credentials"], [26, 4, 1, "", "host"], [26, 4, 1, "", "port"], [26, 4, 1, "", "user_name"]], "cpl_core.pipes": [[27, 0, 0, "-", "bool_pipe"], [27, 0, 0, "-", "first_char_to_lower_pipe"], [27, 0, 0, "-", "first_to_upper_pipe"], [27, 0, 0, "-", "ip_address_pipe"], [27, 0, 0, "-", "pipe_abc"], [27, 0, 0, "-", "to_camel_case_pipe"], [27, 0, 0, "-", "to_snake_case_pipe"], [27, 0, 0, "-", "version_pipe"]], "cpl_core.pipes.bool_pipe": [[27, 1, 1, "", "BoolPipe"]], "cpl_core.pipes.bool_pipe.BoolPipe": [[27, 2, 1, "", "transform"]], "cpl_core.pipes.first_char_to_lower_pipe": [[27, 1, 1, "", "FirstCharToLowerPipe"]], "cpl_core.pipes.first_char_to_lower_pipe.FirstCharToLowerPipe": [[27, 2, 1, "", "transform"]], "cpl_core.pipes.first_to_upper_pipe": [[27, 1, 1, "", "FirstToUpperPipe"]], "cpl_core.pipes.first_to_upper_pipe.FirstToUpperPipe": [[27, 2, 1, "", "transform"]], "cpl_core.pipes.ip_address_pipe": [[27, 1, 1, "", "IPAddressPipe"]], "cpl_core.pipes.ip_address_pipe.IPAddressPipe": [[27, 2, 1, "", "transform"]], "cpl_core.pipes.pipe_abc": [[27, 1, 1, "", "PipeABC"]], "cpl_core.pipes.pipe_abc.PipeABC": [[27, 2, 1, "", "transform"]], "cpl_core.pipes.to_camel_case_pipe": [[27, 1, 1, "", "ToCamelCasePipe"]], "cpl_core.pipes.to_camel_case_pipe.ToCamelCasePipe": [[27, 2, 1, "", "transform"]], "cpl_core.pipes.to_snake_case_pipe": [[27, 1, 1, "", "ToSnakeCasePipe"]], "cpl_core.pipes.to_snake_case_pipe.ToSnakeCasePipe": [[27, 2, 1, "", "transform"]], "cpl_core.pipes.version_pipe": [[27, 1, 1, "", "VersionPipe"]], "cpl_core.pipes.version_pipe.VersionPipe": [[27, 2, 1, "", "transform"]], "cpl_core.time": [[28, 0, 0, "-", "time_format_settings"], [28, 0, 0, "-", "time_format_settings_names_enum"]], "cpl_core.time.time_format_settings": [[28, 1, 1, "", "TimeFormatSettings"]], "cpl_core.time.time_format_settings.TimeFormatSettings": [[28, 3, 1, "", "date_format"], [28, 3, 1, "", "date_time_format"], [28, 3, 1, "", "date_time_log_format"], [28, 2, 1, "", "from_dict"], [28, 3, 1, "", "time_format"]], "cpl_core.time.time_format_settings_names_enum": [[28, 1, 1, "", "TimeFormatSettingsNamesEnum"]], "cpl_core.time.time_format_settings_names_enum.TimeFormatSettingsNamesEnum": [[28, 4, 1, "", "date_format"], [28, 4, 1, "", "date_time_format"], [28, 4, 1, "", "date_time_log_format"], [28, 4, 1, "", "time_format"]], "cpl_core.utils": [[29, 0, 0, "-", "credential_manager"], [29, 0, 0, "-", "pip"], [29, 0, 0, "-", "string"]], "cpl_core.utils.credential_manager": [[29, 1, 1, "", "CredentialManager"]], "cpl_core.utils.credential_manager.CredentialManager": [[29, 2, 1, "", "build_string"], [29, 2, 1, "", "decrypt"], [29, 2, 1, "", "encrypt"]], "cpl_core.utils.pip": [[29, 1, 1, "", "Pip"]], "cpl_core.utils.pip.Pip": [[29, 2, 1, "", "get_executable"], [29, 2, 1, "", "get_outdated"], [29, 2, 1, "", "get_package"], [29, 2, 1, "", "install"], [29, 2, 1, "", "reset_executable"], [29, 2, 1, "", "set_executable"], [29, 2, 1, "", "uninstall"]], "cpl_core.utils.string": [[29, 1, 1, "", "String"]], "cpl_core.utils.string.String": [[29, 2, 1, "", "convert_to_camel_case"], [29, 2, 1, "", "convert_to_snake_case"], [29, 2, 1, "", "first_to_lower"], [29, 2, 1, "", "first_to_upper"], [29, 2, 1, "", "random_string"]], "cpl_discord.application": [[31, 0, 0, "-", "discord_bot_application_abc"]], "cpl_discord.application.discord_bot_application_abc": [[31, 1, 1, "", "DiscordBotApplicationABC"]], "cpl_discord.application.discord_bot_application_abc.DiscordBotApplicationABC": [[31, 2, 1, "", "stop_async"]], "cpl_discord.command": [[32, 0, 0, "-", "discord_command_abc"], [32, 0, 0, "-", "discord_commands_meta"]], "cpl_discord.command.discord_command_abc": [[32, 1, 1, "", "DiscordCommandABC"]], "cpl_discord.command.discord_commands_meta": [[32, 1, 1, "", "DiscordCogMeta"]], "cpl_discord.configuration": [[33, 0, 0, "-", "discord_bot_settings"]], "cpl_discord.configuration.discord_bot_settings": [[33, 1, 1, "", "DiscordBotSettings"]], "cpl_discord.configuration.discord_bot_settings.DiscordBotSettings": [[33, 2, 1, "", "from_dict"], [33, 3, 1, "", "prefix"], [33, 3, 1, "", "token"]], "cpl_discord.container": [[34, 0, 0, "-", "category_channel"], [34, 0, 0, "-", "container"], [34, 0, 0, "-", "guild"], [34, 0, 0, "-", "member"], [34, 0, 0, "-", "role"], [34, 0, 0, "-", "text_channel"], [34, 0, 0, "-", "thread"], [34, 0, 0, "-", "voice_channel"]], "cpl_discord.container.category_channel": [[34, 1, 1, "", "CategoryChannel"]], "cpl_discord.container.category_channel.CategoryChannel": [[34, 4, 1, "", "category_id"], [34, 4, 1, "", "guild"], [34, 4, 1, "", "id"], [34, 4, 1, "", "name"], [34, 4, 1, "", "nsfw"], [34, 4, 1, "", "position"], [34, 3, 1, "", "text_channels"], [34, 3, 1, "", "voice_channels"]], "cpl_discord.container.container": [[34, 1, 1, "", "Container"]], "cpl_discord.container.guild": [[34, 1, 1, "", "Guild"]], "cpl_discord.container.guild.Guild": [[34, 4, 1, "", "afk_channel"], [34, 4, 1, "", "afk_timeout"], [34, 4, 1, "", "approximate_member_count"], [34, 4, 1, "", "approximate_presence_count"], [34, 3, 1, "", "categories"], [34, 4, 1, "", "default_notifications"], [34, 4, 1, "", "description"], [34, 4, 1, "", "emojis"], [34, 4, 1, "", "explicit_content_filter"], [34, 4, 1, "", "features"], [34, 4, 1, "", "id"], [34, 4, 1, "", "max_members"], [34, 4, 1, "", "max_presences"], [34, 4, 1, "", "max_video_channel_users"], [34, 3, 1, "", "members"], [34, 4, 1, "", "mfa_level"], [34, 4, 1, "", "name"], [34, 4, 1, "", "nsfw_level"], [34, 4, 1, "", "owner_id"], [34, 4, 1, "", "preferred_locale"], [34, 4, 1, "", "premium_progress_bar_enabled"], [34, 4, 1, "", "premium_subscription_count"], [34, 4, 1, "", "premium_tier"], [34, 3, 1, "", "roles"], [34, 4, 1, "", "stickers"], [34, 3, 1, "", "text_channels"], [34, 3, 1, "", "threads"], [34, 4, 1, "", "unavailable"], [34, 4, 1, "", "vanity_url_code"], [34, 4, 1, "", "verification_level"], [34, 3, 1, "", "voice_channels"], [34, 4, 1, "", "widget_enabled"]], "cpl_discord.container.member": [[34, 1, 1, "", "Member"]], "cpl_discord.container.member.Member": [[34, 4, 1, "", "activities"], [34, 4, 1, "", "guild"], [34, 4, 1, "", "joined_at"], [34, 4, 1, "", "nick"], [34, 4, 1, "", "pending"], [34, 4, 1, "", "premium_since"], [34, 3, 1, "", "roles"], [34, 4, 1, "", "timed_out_until"]], "cpl_discord.container.role": [[34, 1, 1, "", "Role"]], "cpl_discord.container.role.Role": [[34, 4, 1, "", "guild"], [34, 4, 1, "", "hoist"], [34, 4, 1, "", "id"], [34, 4, 1, "", "managed"], [34, 3, 1, "", "members"], [34, 4, 1, "", "mentionable"], [34, 4, 1, "", "name"], [34, 4, 1, "", "position"], [34, 4, 1, "", "tags"], [34, 4, 1, "", "unicode_emoji"]], "cpl_discord.container.text_channel": [[34, 1, 1, "", "TextChannel"]], "cpl_discord.container.text_channel.TextChannel": [[34, 4, 1, "", "category_id"], [34, 4, 1, "", "default_auto_archive_duration"], [34, 4, 1, "", "guild"], [34, 4, 1, "", "id"], [34, 4, 1, "", "last_message_id"], [34, 3, 1, "", "members"], [34, 4, 1, "", "name"], [34, 4, 1, "", "nsfw"], [34, 4, 1, "", "position"], [34, 4, 1, "", "slowmode_delay"], [34, 3, 1, "", "threads"], [34, 4, 1, "", "topic"]], "cpl_discord.container.thread": [[34, 1, 1, "", "Thread"]], "cpl_discord.container.thread.Thread": [[34, 4, 1, "", "archive_timestamp"], [34, 4, 1, "", "archived"], [34, 4, 1, "", "archiver_id"], [34, 4, 1, "", "auto_archive_duration"], [34, 4, 1, "", "guild"], [34, 4, 1, "", "id"], [34, 4, 1, "", "invitable"], [34, 4, 1, "", "last_message_id"], [34, 4, 1, "", "locked"], [34, 4, 1, "", "me"], [34, 4, 1, "", "member_count"], [34, 3, 1, "", "members"], [34, 4, 1, "", "message_count"], [34, 4, 1, "", "name"], [34, 4, 1, "", "owner_id"], [34, 4, 1, "", "parent_id"], [34, 4, 1, "", "slowmode_delay"]], "cpl_discord.container.voice_channel": [[34, 1, 1, "", "VoiceChannel"]], "cpl_discord.container.voice_channel.VoiceChannel": [[34, 3, 1, "", "members"]], "cpl_discord.events": [[35, 0, 0, "-", "on_bulk_message_delete_abc"], [35, 0, 0, "-", "on_command_abc"], [35, 0, 0, "-", "on_command_completion_abc"], [35, 0, 0, "-", "on_command_error_abc"], [35, 0, 0, "-", "on_connect_abc"], [35, 0, 0, "-", "on_disconnect_abc"], [35, 0, 0, "-", "on_error_abc"], [35, 0, 0, "-", "on_group_join_abc"], [35, 0, 0, "-", "on_group_remove_abc"], [35, 0, 0, "-", "on_guild_available_abc"], [35, 0, 0, "-", "on_guild_channel_create_abc"], [35, 0, 0, "-", "on_guild_channel_delete_abc"], [35, 0, 0, "-", "on_guild_channel_pins_update_abc"], [35, 0, 0, "-", "on_guild_channel_update_abc"], [35, 0, 0, "-", "on_guild_emojis_update_abc"], [35, 0, 0, "-", "on_guild_integrations_update_abc"], [35, 0, 0, "-", "on_guild_join_abc"], [35, 0, 0, "-", "on_guild_remove_abc"], [35, 0, 0, "-", "on_guild_role_create_abc"], [35, 0, 0, "-", "on_guild_role_delete_abc"], [35, 0, 0, "-", "on_guild_role_update_abc"], [35, 0, 0, "-", "on_guild_unavailable_abc"], [35, 0, 0, "-", "on_guild_update_abc"], [35, 0, 0, "-", "on_invite_create_abc"], [35, 0, 0, "-", "on_invite_delete_abc"], [35, 0, 0, "-", "on_member_ban_abc"], [35, 0, 0, "-", "on_member_join_abc"], [35, 0, 0, "-", "on_member_remove_abc"], [35, 0, 0, "-", "on_member_unban_abc"], [35, 0, 0, "-", "on_member_update_abc"], [35, 0, 0, "-", "on_message_abc"], [35, 0, 0, "-", "on_message_delete_abc"], [35, 0, 0, "-", "on_message_edit_abc"], [35, 0, 0, "-", "on_private_channel_create_abc"], [35, 0, 0, "-", "on_private_channel_delete_abc"], [35, 0, 0, "-", "on_private_channel_pins_update_abc"], [35, 0, 0, "-", "on_private_channel_update_abc"], [35, 0, 0, "-", "on_raw_reaction_add_abc"], [35, 0, 0, "-", "on_raw_reaction_clear_abc"], [35, 0, 0, "-", "on_raw_reaction_clear_emoji_abc"], [35, 0, 0, "-", "on_raw_reaction_remove_abc"], [35, 0, 0, "-", "on_reaction_add_abc"], [35, 0, 0, "-", "on_reaction_clear_abc"], [35, 0, 0, "-", "on_reaction_clear_emoji_abc"], [35, 0, 0, "-", "on_reaction_remove_abc"], [35, 0, 0, "-", "on_ready_abc"], [35, 0, 0, "-", "on_resume_abc"], [35, 0, 0, "-", "on_typing_abc"], [35, 0, 0, "-", "on_user_update_abc"], [35, 0, 0, "-", "on_voice_state_update_abc"], [35, 0, 0, "-", "on_webhooks_update_abc"]], "cpl_discord.events.on_bulk_message_delete_abc": [[35, 1, 1, "", "OnBulkMessageDeleteABC"]], "cpl_discord.events.on_bulk_message_delete_abc.OnBulkMessageDeleteABC": [[35, 2, 1, "", "on_bulk_message_delete"]], "cpl_discord.events.on_command_abc": [[35, 1, 1, "", "OnCommandABC"]], "cpl_discord.events.on_command_abc.OnCommandABC": [[35, 2, 1, "", "on_command"]], "cpl_discord.events.on_command_completion_abc": [[35, 1, 1, "", "OnCommandCompletionABC"]], "cpl_discord.events.on_command_completion_abc.OnCommandCompletionABC": [[35, 2, 1, "", "on_command_completion"]], "cpl_discord.events.on_command_error_abc": [[35, 1, 1, "", "OnCommandErrorABC"]], "cpl_discord.events.on_command_error_abc.OnCommandErrorABC": [[35, 2, 1, "", "on_command_error"]], "cpl_discord.events.on_connect_abc": [[35, 1, 1, "", "OnConnectABC"]], "cpl_discord.events.on_connect_abc.OnConnectABC": [[35, 2, 1, "", "on_connect"]], "cpl_discord.events.on_disconnect_abc": [[35, 1, 1, "", "OnDisconnectABC"]], "cpl_discord.events.on_disconnect_abc.OnDisconnectABC": [[35, 2, 1, "", "on_disconnect"]], "cpl_discord.events.on_error_abc": [[35, 1, 1, "", "OnErrorABC"]], "cpl_discord.events.on_error_abc.OnErrorABC": [[35, 2, 1, "", "on_error"]], "cpl_discord.events.on_group_join_abc": [[35, 1, 1, "", "OnGroupJoinABC"]], "cpl_discord.events.on_group_join_abc.OnGroupJoinABC": [[35, 2, 1, "", "on_group_join"]], "cpl_discord.events.on_group_remove_abc": [[35, 1, 1, "", "OnGroupRemoveABC"]], "cpl_discord.events.on_group_remove_abc.OnGroupRemoveABC": [[35, 2, 1, "", "on_group_remove"]], "cpl_discord.events.on_guild_available_abc": [[35, 1, 1, "", "OnGuildAvailableABC"]], "cpl_discord.events.on_guild_available_abc.OnGuildAvailableABC": [[35, 2, 1, "", "on_guild_available"]], "cpl_discord.events.on_guild_channel_create_abc": [[35, 1, 1, "", "OnGuildChannelCreateABC"]], "cpl_discord.events.on_guild_channel_create_abc.OnGuildChannelCreateABC": [[35, 2, 1, "", "on_guild_channel_create"]], "cpl_discord.events.on_guild_channel_delete_abc": [[35, 1, 1, "", "OnGuildChannelDeleteABC"]], "cpl_discord.events.on_guild_channel_delete_abc.OnGuildChannelDeleteABC": [[35, 2, 1, "", "on_guild_channel_delete"]], "cpl_discord.events.on_guild_channel_pins_update_abc": [[35, 1, 1, "", "OnGuildChannelPinsUpdateABC"]], "cpl_discord.events.on_guild_channel_pins_update_abc.OnGuildChannelPinsUpdateABC": [[35, 2, 1, "", "on_guild_channel_pins_update"]], "cpl_discord.events.on_guild_channel_update_abc": [[35, 1, 1, "", "OnGuildChannelUpdateABC"]], "cpl_discord.events.on_guild_channel_update_abc.OnGuildChannelUpdateABC": [[35, 2, 1, "", "on_guild_channel_update"]], "cpl_discord.events.on_guild_emojis_update_abc": [[35, 1, 1, "", "OnGuildEmojisUpdateABC"]], "cpl_discord.events.on_guild_emojis_update_abc.OnGuildEmojisUpdateABC": [[35, 2, 1, "", "on_guild_emojis_update"]], "cpl_discord.events.on_guild_integrations_update_abc": [[35, 1, 1, "", "OnGuildIntegrationsUpdateABC"]], "cpl_discord.events.on_guild_integrations_update_abc.OnGuildIntegrationsUpdateABC": [[35, 2, 1, "", "on_guild_integrations_update"]], "cpl_discord.events.on_guild_join_abc": [[35, 1, 1, "", "OnGuildJoinABC"]], "cpl_discord.events.on_guild_join_abc.OnGuildJoinABC": [[35, 2, 1, "", "on_guild_join"]], "cpl_discord.events.on_guild_remove_abc": [[35, 1, 1, "", "OnGuildRemoveABC"]], "cpl_discord.events.on_guild_remove_abc.OnGuildRemoveABC": [[35, 2, 1, "", "on_guild_remove"]], "cpl_discord.events.on_guild_role_create_abc": [[35, 1, 1, "", "OnGuildRoleCreateABC"]], "cpl_discord.events.on_guild_role_create_abc.OnGuildRoleCreateABC": [[35, 2, 1, "", "on_guild_role_create"]], "cpl_discord.events.on_guild_role_delete_abc": [[35, 1, 1, "", "OnGuildRoleDeleteABC"]], "cpl_discord.events.on_guild_role_delete_abc.OnGuildRoleDeleteABC": [[35, 2, 1, "", "on_guild_role_delete"]], "cpl_discord.events.on_guild_role_update_abc": [[35, 1, 1, "", "OnGuildRoleUpdateABC"]], "cpl_discord.events.on_guild_role_update_abc.OnGuildRoleUpdateABC": [[35, 2, 1, "", "on_guild_role_update"]], "cpl_discord.events.on_guild_unavailable_abc": [[35, 1, 1, "", "OnGuildUnavailableABC"]], "cpl_discord.events.on_guild_unavailable_abc.OnGuildUnavailableABC": [[35, 2, 1, "", "on_guild_unavailable"]], "cpl_discord.events.on_guild_update_abc": [[35, 1, 1, "", "OnGuildUpdateABC"]], "cpl_discord.events.on_guild_update_abc.OnGuildUpdateABC": [[35, 2, 1, "", "on_guild_update"]], "cpl_discord.events.on_invite_create_abc": [[35, 1, 1, "", "OnInviteCreateABC"]], "cpl_discord.events.on_invite_create_abc.OnInviteCreateABC": [[35, 2, 1, "", "on_invite_create"]], "cpl_discord.events.on_invite_delete_abc": [[35, 1, 1, "", "OnInviteDeleteABC"]], "cpl_discord.events.on_invite_delete_abc.OnInviteDeleteABC": [[35, 2, 1, "", "on_invite_delete"]], "cpl_discord.events.on_member_ban_abc": [[35, 1, 1, "", "OnMemberBanABC"]], "cpl_discord.events.on_member_ban_abc.OnMemberBanABC": [[35, 2, 1, "", "on_member_ban"]], "cpl_discord.events.on_member_join_abc": [[35, 1, 1, "", "OnMemberJoinABC"]], "cpl_discord.events.on_member_join_abc.OnMemberJoinABC": [[35, 2, 1, "", "on_member_join"]], "cpl_discord.events.on_member_remove_abc": [[35, 1, 1, "", "OnMemberRemoveABC"]], "cpl_discord.events.on_member_remove_abc.OnMemberRemoveABC": [[35, 2, 1, "", "on_member_remove"]], "cpl_discord.events.on_member_unban_abc": [[35, 1, 1, "", "OnMemberUnbanABC"]], "cpl_discord.events.on_member_unban_abc.OnMemberUnbanABC": [[35, 2, 1, "", "on_member_unban"]], "cpl_discord.events.on_member_update_abc": [[35, 1, 1, "", "OnMemberUpdateABC"]], "cpl_discord.events.on_member_update_abc.OnMemberUpdateABC": [[35, 2, 1, "", "on_member_update"]], "cpl_discord.events.on_message_abc": [[35, 1, 1, "", "OnMessageABC"]], "cpl_discord.events.on_message_abc.OnMessageABC": [[35, 2, 1, "", "on_message"]], "cpl_discord.events.on_message_delete_abc": [[35, 1, 1, "", "OnMessageDeleteABC"]], "cpl_discord.events.on_message_delete_abc.OnMessageDeleteABC": [[35, 2, 1, "", "on_message_delete"]], "cpl_discord.events.on_message_edit_abc": [[35, 1, 1, "", "OnMessageEditABC"]], "cpl_discord.events.on_message_edit_abc.OnMessageEditABC": [[35, 2, 1, "", "on_message_edit"]], "cpl_discord.events.on_private_channel_create_abc": [[35, 1, 1, "", "OnPrivateChannelCreateABC"]], "cpl_discord.events.on_private_channel_create_abc.OnPrivateChannelCreateABC": [[35, 2, 1, "", "on_private_channel_create"]], "cpl_discord.events.on_private_channel_delete_abc": [[35, 1, 1, "", "OnPrivateChannelDeleteABC"]], "cpl_discord.events.on_private_channel_delete_abc.OnPrivateChannelDeleteABC": [[35, 2, 1, "", "on_private_channel_delete"]], "cpl_discord.events.on_private_channel_pins_update_abc": [[35, 1, 1, "", "OnPrivateChannelPinsUpdateABC"]], "cpl_discord.events.on_private_channel_pins_update_abc.OnPrivateChannelPinsUpdateABC": [[35, 2, 1, "", "on_private_channel_pins_update"]], "cpl_discord.events.on_private_channel_update_abc": [[35, 1, 1, "", "OnPrivateChannelUpdateABC"]], "cpl_discord.events.on_private_channel_update_abc.OnPrivateChannelUpdateABC": [[35, 2, 1, "", "on_private_channel_update"]], "cpl_discord.events.on_raw_reaction_add_abc": [[35, 1, 1, "", "OnRawReactionAddABC"]], "cpl_discord.events.on_raw_reaction_add_abc.OnRawReactionAddABC": [[35, 2, 1, "", "on_raw_reaction_add"]], "cpl_discord.events.on_raw_reaction_clear_abc": [[35, 1, 1, "", "OnRawReactionClearABC"]], "cpl_discord.events.on_raw_reaction_clear_abc.OnRawReactionClearABC": [[35, 2, 1, "", "on_raw_reaction_clear"]], "cpl_discord.events.on_raw_reaction_clear_emoji_abc": [[35, 1, 1, "", "OnRawReactionClearEmojiABC"]], "cpl_discord.events.on_raw_reaction_clear_emoji_abc.OnRawReactionClearEmojiABC": [[35, 2, 1, "", "on_raw_reaction_clear_emoji"]], "cpl_discord.events.on_raw_reaction_remove_abc": [[35, 1, 1, "", "OnRawReactionRemoveABC"]], "cpl_discord.events.on_raw_reaction_remove_abc.OnRawReactionRemoveABC": [[35, 2, 1, "", "on_raw_reaction_remove"]], "cpl_discord.events.on_reaction_add_abc": [[35, 1, 1, "", "OnReactionAddABC"]], "cpl_discord.events.on_reaction_add_abc.OnReactionAddABC": [[35, 2, 1, "", "on_reaction_add"]], "cpl_discord.events.on_reaction_clear_abc": [[35, 1, 1, "", "OnReactionClearABC"]], "cpl_discord.events.on_reaction_clear_abc.OnReactionClearABC": [[35, 2, 1, "", "on_reaction_clear"]], "cpl_discord.events.on_reaction_clear_emoji_abc": [[35, 1, 1, "", "OnReactionClearEmojiABC"]], "cpl_discord.events.on_reaction_clear_emoji_abc.OnReactionClearEmojiABC": [[35, 2, 1, "", "on_reaction_clear_emoji"]], "cpl_discord.events.on_reaction_remove_abc": [[35, 1, 1, "", "OnReactionRemoveABC"]], "cpl_discord.events.on_reaction_remove_abc.OnReactionRemoveABC": [[35, 2, 1, "", "on_reaction_remove"]], "cpl_discord.events.on_ready_abc": [[35, 1, 1, "", "OnReadyABC"]], "cpl_discord.events.on_ready_abc.OnReadyABC": [[35, 2, 1, "", "on_ready"]], "cpl_discord.events.on_resume_abc": [[35, 1, 1, "", "OnResumeABC"]], "cpl_discord.events.on_resume_abc.OnResumeABC": [[35, 2, 1, "", "on_resume"]], "cpl_discord.events.on_typing_abc": [[35, 1, 1, "", "OnTypingABC"]], "cpl_discord.events.on_typing_abc.OnTypingABC": [[35, 2, 1, "", "on_typing"]], "cpl_discord.events.on_user_update_abc": [[35, 1, 1, "", "OnUserUpdateABC"]], "cpl_discord.events.on_user_update_abc.OnUserUpdateABC": [[35, 2, 1, "", "on_user_update"]], "cpl_discord.events.on_voice_state_update_abc": [[35, 1, 1, "", "OnVoiceStateUpdateABC"]], "cpl_discord.events.on_voice_state_update_abc.OnVoiceStateUpdateABC": [[35, 2, 1, "", "on_voice_state_update"]], "cpl_discord.events.on_webhooks_update_abc": [[35, 1, 1, "", "OnWebhooksUpdateABC"]], "cpl_discord.events.on_webhooks_update_abc.OnWebhooksUpdateABC": [[35, 2, 1, "", "on_webhooks_update"]], "cpl_discord.helper": [[36, 0, 0, "-", "to_containers_converter"]], "cpl_discord.helper.to_containers_converter": [[36, 1, 1, "", "ToContainersConverter"]], "cpl_discord.helper.to_containers_converter.ToContainersConverter": [[36, 2, 1, "", "convert"]], "cpl_discord.service": [[37, 0, 0, "-", "command_error_handler_service"], [37, 0, 0, "-", "discord_bot_service"], [37, 0, 0, "-", "discord_bot_service_abc"], [37, 0, 0, "-", "discord_collection"], [37, 0, 0, "-", "discord_collection_abc"], [37, 0, 0, "-", "discord_service"], [37, 0, 0, "-", "discord_service_abc"]], "cpl_discord.service.command_error_handler_service": [[37, 1, 1, "", "CommandErrorHandlerService"]], "cpl_discord.service.command_error_handler_service.CommandErrorHandlerService": [[37, 2, 1, "", "on_command_error"]], "cpl_discord.service.discord_bot_service": [[37, 1, 1, "", "DiscordBotService"]], "cpl_discord.service.discord_bot_service.DiscordBotService": [[37, 3, 1, "", "guilds"], [37, 2, 1, "", "on_ready"], [37, 2, 1, "", "start_async"], [37, 2, 1, "", "stop_async"]], "cpl_discord.service.discord_bot_service_abc": [[37, 1, 1, "", "DiscordBotServiceABC"]], "cpl_discord.service.discord_bot_service_abc.DiscordBotServiceABC": [[37, 3, 1, "", "guilds"], [37, 2, 1, "", "on_ready"], [37, 2, 1, "", "start_async"], [37, 2, 1, "", "stop_async"]], "cpl_discord.service.discord_collection": [[37, 1, 1, "", "DiscordCollection"]], "cpl_discord.service.discord_collection.DiscordCollection": [[37, 2, 1, "", "add_command"], [37, 2, 1, "", "add_event"], [37, 2, 1, "", "get_commands"], [37, 2, 1, "", "get_events_by_base"]], "cpl_discord.service.discord_collection_abc": [[37, 1, 1, "", "DiscordCollectionABC"]], "cpl_discord.service.discord_collection_abc.DiscordCollectionABC": [[37, 2, 1, "", "add_command"], [37, 2, 1, "", "add_event"], [37, 2, 1, "", "get_commands"], [37, 2, 1, "", "get_events_by_base"]], "cpl_discord.service.discord_service": [[37, 1, 1, "", "DiscordService"]], "cpl_discord.service.discord_service.DiscordService": [[37, 2, 1, "", "init"], [37, 2, 1, "", "on_bulk_message_delete"], [37, 2, 1, "", "on_command"], [37, 2, 1, "", "on_command_completion"], [37, 2, 1, "", "on_command_error"], [37, 2, 1, "", "on_connect"], [37, 2, 1, "", "on_disconnect"], [37, 2, 1, "", "on_error"], [37, 2, 1, "", "on_group_join"], [37, 2, 1, "", "on_group_remove"], [37, 2, 1, "", "on_guild_available"], [37, 2, 1, "", "on_guild_channel_create"], [37, 2, 1, "", "on_guild_channel_delete"], [37, 2, 1, "", "on_guild_channel_pins_update"], [37, 2, 1, "", "on_guild_channel_update"], [37, 2, 1, "", "on_guild_emojis_update"], [37, 2, 1, "", "on_guild_integrations_update"], [37, 2, 1, "", "on_guild_join"], [37, 2, 1, "", "on_guild_remove"], [37, 2, 1, "", "on_guild_role_create"], [37, 2, 1, "", "on_guild_role_delete"], [37, 2, 1, "", "on_guild_role_update"], [37, 2, 1, "", "on_guild_unavailable"], [37, 2, 1, "", "on_guild_update"], [37, 2, 1, "", "on_invite_create"], [37, 2, 1, "", "on_invite_delete"], [37, 2, 1, "", "on_member_ban"], [37, 2, 1, "", "on_member_join"], [37, 2, 1, "", "on_member_remove"], [37, 2, 1, "", "on_member_unban"], [37, 2, 1, "", "on_member_update"], [37, 2, 1, "", "on_message"], [37, 2, 1, "", "on_message_delete"], [37, 2, 1, "", "on_message_edit"], [37, 2, 1, "", "on_private_channel_create"], [37, 2, 1, "", "on_private_channel_delete"], [37, 2, 1, "", "on_private_channel_pins_update"], [37, 2, 1, "", "on_private_channel_update"], [37, 2, 1, "", "on_raw_reaction_add"], [37, 2, 1, "", "on_raw_reaction_clear"], [37, 2, 1, "", "on_raw_reaction_clear_emoji"], [37, 2, 1, "", "on_raw_reaction_remove"], [37, 2, 1, "", "on_reaction_add"], [37, 2, 1, "", "on_reaction_clear"], [37, 2, 1, "", "on_reaction_clear_emoji"], [37, 2, 1, "", "on_reaction_remove"], [37, 2, 1, "", "on_ready"], [37, 2, 1, "", "on_resume"], [37, 2, 1, "", "on_typing"], [37, 2, 1, "", "on_user_update"], [37, 2, 1, "", "on_voice_state_update"], [37, 2, 1, "", "on_webhooks_update"]], "cpl_discord.service.discord_service_abc": [[37, 1, 1, "", "DiscordServiceABC"]], "cpl_discord.service.discord_service_abc.DiscordServiceABC": [[37, 2, 1, "", "init"], [37, 2, 1, "", "on_bulk_message_delete"], [37, 2, 1, "", "on_command"], [37, 2, 1, "", "on_command_completion"], [37, 2, 1, "", "on_command_error"], [37, 2, 1, "", "on_connect"], [37, 2, 1, "", "on_disconnect"], [37, 2, 1, "", "on_error"], [37, 2, 1, "", "on_group_join"], [37, 2, 1, "", "on_group_remove"], [37, 2, 1, "", "on_guild_available"], [37, 2, 1, "", "on_guild_channel_create"], [37, 2, 1, "", "on_guild_channel_delete"], [37, 2, 1, "", "on_guild_channel_pins_update"], [37, 2, 1, "", "on_guild_channel_update"], [37, 2, 1, "", "on_guild_emojis_update"], [37, 2, 1, "", "on_guild_integrations_update"], [37, 2, 1, "", "on_guild_join"], [37, 2, 1, "", "on_guild_remove"], [37, 2, 1, "", "on_guild_role_create"], [37, 2, 1, "", "on_guild_role_delete"], [37, 2, 1, "", "on_guild_role_update"], [37, 2, 1, "", "on_guild_unavailable"], [37, 2, 1, "", "on_guild_update"], [37, 2, 1, "", "on_invite_create"], [37, 2, 1, "", "on_invite_delete"], [37, 2, 1, "", "on_member_ban"], [37, 2, 1, "", "on_member_join"], [37, 2, 1, "", "on_member_remove"], [37, 2, 1, "", "on_member_unban"], [37, 2, 1, "", "on_member_update"], [37, 2, 1, "", "on_message"], [37, 2, 1, "", "on_message_delete"], [37, 2, 1, "", "on_message_edit"], [37, 2, 1, "", "on_private_channel_create"], [37, 2, 1, "", "on_private_channel_delete"], [37, 2, 1, "", "on_private_channel_pins_update"], [37, 2, 1, "", "on_private_channel_update"], [37, 2, 1, "", "on_reaction_add"], [37, 2, 1, "", "on_reaction_clear"], [37, 2, 1, "", "on_reaction_clear_emoji"], [37, 2, 1, "", "on_reaction_remove"], [37, 2, 1, "", "on_ready"], [37, 2, 1, "", "on_resume"], [37, 2, 1, "", "on_typing"], [37, 2, 1, "", "on_user_update"], [37, 2, 1, "", "on_voice_state_update"], [37, 2, 1, "", "on_webhooks_update"]], "cpl_query.base": [[39, 0, 0, "-", "default_lambda"], [39, 0, 0, "-", "ordered_queryable"], [39, 0, 0, "-", "ordered_queryable_abc"], [39, 0, 0, "-", "queryable_abc"], [39, 0, 0, "-", "sequence_abc"], [39, 0, 0, "-", "sequence_values"]], "cpl_query.base.default_lambda": [[39, 5, 1, "", "default_lambda"]], "cpl_query.base.ordered_queryable": [[39, 1, 1, "", "OrderedQueryable"]], "cpl_query.base.ordered_queryable.OrderedQueryable": [[39, 2, 1, "", "then_by"], [39, 2, 1, "", "then_by_descending"]], "cpl_query.base.ordered_queryable_abc": [[39, 1, 1, "", "OrderedQueryableABC"]], "cpl_query.base.ordered_queryable_abc.OrderedQueryableABC": [[39, 2, 1, "", "then_by"], [39, 2, 1, "", "then_by_descending"]], "cpl_query.base.queryable_abc": [[39, 1, 1, "", "QueryableABC"]], "cpl_query.base.queryable_abc.QueryableABC": [[39, 2, 1, "", "all"], [39, 2, 1, "", "any"], [39, 2, 1, "", "average"], [39, 2, 1, "", "contains"], [39, 2, 1, "", "count"], [39, 2, 1, "", "distinct"], [39, 2, 1, "", "element_at"], [39, 2, 1, "", "element_at_or_default"], [39, 2, 1, "", "first"], [39, 2, 1, "", "first_or_default"], [39, 2, 1, "", "for_each"], [39, 2, 1, "", "group_by"], [39, 2, 1, "", "last"], [39, 2, 1, "", "last_or_default"], [39, 2, 1, "", "max"], [39, 2, 1, "", "median"], [39, 2, 1, "", "min"], [39, 2, 1, "", "order_by"], [39, 2, 1, "", "order_by_descending"], [39, 2, 1, "", "reverse"], [39, 2, 1, "", "select"], [39, 2, 1, "", "select_many"], [39, 2, 1, "", "single"], [39, 2, 1, "", "single_or_default"], [39, 2, 1, "", "skip"], [39, 2, 1, "", "skip_last"], [39, 2, 1, "", "sum"], [39, 2, 1, "", "take"], [39, 2, 1, "", "take_last"], [39, 2, 1, "", "where"]], "cpl_query.base.sequence_abc": [[39, 1, 1, "", "SequenceABC"]], "cpl_query.base.sequence_abc.SequenceABC": [[39, 2, 1, "", "copy"], [39, 2, 1, "", "empty"], [39, 2, 1, "", "index"], [39, 2, 1, "", "next"], [39, 2, 1, "", "range"], [39, 2, 1, "", "to_list"], [39, 3, 1, "", "type"]], "cpl_query.base.sequence_values": [[39, 1, 1, "", "SequenceValues"]], "cpl_query.base.sequence_values.SequenceValues": [[39, 2, 1, "", "next"], [39, 2, 1, "", "reset"]], "cpl_query.enumerable": [[40, 0, 0, "-", "enumerable"], [40, 0, 0, "-", "enumerable_abc"]], "cpl_query.enumerable.enumerable": [[40, 1, 1, "", "Enumerable"]], "cpl_query.enumerable.enumerable_abc": [[40, 1, 1, "", "EnumerableABC"]], "cpl_query.enumerable.enumerable_abc.EnumerableABC": [[40, 2, 1, "", "set_remove_error_check"], [40, 2, 1, "", "to_iterable"]], "cpl_query.extension": [[41, 0, 0, "-", "list"]], "cpl_query.extension.list": [[41, 1, 1, "", "List"]], "cpl_query.extension.list.List": [[41, 2, 1, "", "to_enumerable"], [41, 2, 1, "", "to_iterable"]], "cpl_query.iterable": [[42, 0, 0, "-", "iterable"], [42, 0, 0, "-", "iterable_abc"]], "cpl_query.iterable.iterable": [[42, 1, 1, "", "Iterable"]], "cpl_query.iterable.iterable_abc": [[42, 1, 1, "", "IterableABC"]], "cpl_query.iterable.iterable_abc.IterableABC": [[42, 2, 1, "", "add"], [42, 2, 1, "", "append"], [42, 2, 1, "", "extend"], [42, 2, 1, "", "remove"], [42, 2, 1, "", "to_enumerable"], [42, 3, 1, "", "type"]], "cpl_translation": [[43, 0, 0, "-", "translate_pipe"], [43, 0, 0, "-", "translation_service"], [43, 0, 0, "-", "translation_service_abc"], [43, 0, 0, "-", "translation_settings"]], "cpl_translation.translate_pipe": [[43, 1, 1, "", "TranslatePipe"]], "cpl_translation.translate_pipe.TranslatePipe": [[43, 2, 1, "", "transform"]], "cpl_translation.translation_service": [[43, 1, 1, "", "TranslationService"]], "cpl_translation.translation_service.TranslationService": [[43, 2, 1, "", "load"], [43, 2, 1, "", "load_by_settings"], [43, 2, 1, "", "set_default_lang"], [43, 2, 1, "", "set_lang"], [43, 2, 1, "", "translate"]], "cpl_translation.translation_service_abc": [[43, 1, 1, "", "TranslationServiceABC"]], "cpl_translation.translation_service_abc.TranslationServiceABC": [[43, 2, 1, "", "load"], [43, 2, 1, "", "load_by_settings"], [43, 2, 1, "", "set_default_lang"], [43, 2, 1, "", "set_lang"], [43, 2, 1, "", "translate"]], "cpl_translation.translation_settings": [[43, 1, 1, "", "TranslationSettings"]], "cpl_translation.translation_settings.TranslationSettings": [[43, 3, 1, "", "default_language"], [43, 2, 1, "", "from_dict"], [43, 3, 1, "", "languages"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:property", "4": "py:attribute", "5": "py:function"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "property", "Python property"], "4": ["py", "attribute", "Python attribute"], "5": ["py", "function", "Python function"]}, "titleterms": {"cpl": [0, 1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 45, 46, 47, 48], "add": 0, "content": [0, 1, 2, 3, 4, 5, 6, 7, 8, 11, 48, 49], "descript": [0, 1, 2, 3, 4, 5, 7, 8, 11], "argument": [0, 2, 3, 4, 8, 11, 53], "flag": [0, 4, 5, 8, 11, 12], "build": 1, "gener": 2, "schemat": [2, 6], "help": 3, "instal": [4, 49], "new": 5, "project": [5, 48], "type": 5, "cli": [6, 15, 49], "overview": [6, 46], "command": [6, 32], "refer": [6, 15, 16, 30, 38, 43], "tabl": [6, 48, 49], "basic": 6, "workflow": 6, "languag": 6, "syntax": 6, "rel": 6, "path": 6, "publish": 7, "remov": 8, "run": 9, "start": [10, 44, 48, 49], "uninstal": 11, "updat": 12, "version": 13, "contribut": 14, "found": 14, "bug": 14, "featur": [14, 45, 46], "request": 14, "submiss": 14, "guidelin": 14, "submit": 14, "an": 14, "issu": 14, "pull": 14, "review": 14, "address": 14, "feedback": 14, "code": 14, "rule": 14, "licens": 14, "api": 16, "cpl_core": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 52], "applic": [17, 31, 55], "application_abc": 17, "application_build": 17, "application_builder_abc": 17, "startup_abc": 17, "configur": [18, 33], "configuration_abc": 18, "configuration_model_abc": 18, "configuration_variable_name_enum": 18, "console_argu": 18, "consol": [19, 49, 52, 53], "background_color_enum": 19, "console_cal": 19, "foreground_color_enum": 19, "spinner_thread": 19, "databas": [20, 21, 22], "database_model": 20, "database_set": 20, "database_settings_name_enum": 20, "connect": 21, "database_connect": 21, "database_connection_abc": 21, "context": 22, "database_context": 22, "database_context_abc": 22, "dependency_inject": 23, "service_collect": 23, "service_collection_abc": 23, "service_descriptor": 23, "service_lifetime_enum": 23, "service_provid": 23, "service_provider_abc": 23, "environ": [24, 49], "application_environ": 24, "application_environment_abc": 24, "environment_name_enum": 24, "log": 25, "logger_abc": 25, "logger_servic": 25, "logging_level_enum": 25, "logging_set": 25, "logging_settings_name_enum": 25, "mail": [26, 58], "email": 26, "email_client_abc": 26, "email_client_servic": 26, "email_client_set": 26, "email_client_settings_name_enum": 26, "pipe": 27, "bool_pip": 27, "first_char_to_lower_pip": 27, "first_to_upper_pip": 27, "ip_address_pip": 27, "pipe_abc": 27, "to_camel_case_pip": 27, "to_snake_case_pip": 27, "version_pip": 27, "time": 28, "time_format_set": 28, "time_format_settings_names_enum": 28, "util": 29, "credential_manag": 29, "pip": 29, "string": 29, "discord": 30, "cpl_discord": [31, 32, 33, 34, 35, 36, 37], "discord_bot_application_abc": 31, "discord_command_abc": 32, "discord_commands_meta": 32, "discord_bot_set": 33, "contain": 34, "category_channel": 34, "guild": 34, "member": 34, "role": 34, "text_channel": 34, "thread": 34, "voice_channel": 34, "event": 35, "on_bulk_message_delete_abc": 35, "on_command_abc": 35, "on_command_completion_abc": 35, "on_command_error_abc": 35, "on_connect_abc": 35, "on_disconnect_abc": 35, "on_error_abc": 35, "on_group_join_abc": 35, "on_group_remove_abc": 35, "on_guild_available_abc": 35, "on_guild_channel_create_abc": 35, "on_guild_channel_delete_abc": 35, "on_guild_channel_pins_update_abc": 35, "on_guild_channel_update_abc": 35, "on_guild_emojis_update_abc": 35, "on_guild_integrations_update_abc": 35, "on_guild_join_abc": 35, "on_guild_remove_abc": 35, "on_guild_role_create_abc": 35, "on_guild_role_delete_abc": 35, "on_guild_role_update_abc": 35, "on_guild_unavailable_abc": 35, "on_guild_update_abc": 35, "on_invite_create_abc": 35, "on_invite_delete_abc": 35, "on_member_ban_abc": 35, "on_member_join_abc": 35, "on_member_remove_abc": 35, "on_member_unban_abc": 35, "on_member_update_abc": 35, "on_message_abc": 35, "on_message_delete_abc": 35, "on_message_edit_abc": 35, "on_private_channel_create_abc": 35, "on_private_channel_delete_abc": 35, "on_private_channel_pins_update_abc": 35, "on_private_channel_update_abc": 35, "on_raw_reaction_add_abc": 35, "on_raw_reaction_clear_abc": 35, "on_raw_reaction_clear_emoji_abc": 35, "on_raw_reaction_remove_abc": 35, "on_reaction_add_abc": 35, "on_reaction_clear_abc": 35, "on_reaction_clear_emoji_abc": 35, "on_reaction_remove_abc": 35, "on_ready_abc": 35, "on_resume_abc": 35, "on_typing_abc": 35, "on_user_update_abc": 35, "on_voice_state_update_abc": 35, "on_webhooks_update_abc": 35, "helper": 36, "to_containers_convert": 36, "servic": 37, "command_error_handler_servic": 37, "discord_bot_servic": 37, "discord_bot_service_abc": 37, "discord_collect": 37, "discord_collection_abc": 37, "discord_servic": 37, "discord_service_abc": 37, "queri": [38, 49], "cpl_queri": [39, 40, 41, 42], "base": 39, "default_lambda": 39, "ordered_query": 39, "ordered_queryable_abc": 39, "queryable_abc": 39, "sequence_abc": 39, "sequence_valu": 39, "enumer": 40, "enumerable_abc": 40, "extens": 41, "list": 41, "iter": 42, "iterable_abc": 42, "translat": 43, "cpl_translat": 43, "translate_pip": 43, "translation_servic": 43, "translation_service_abc": 43, "translation_set": 43, "get": [44, 48], "introduct": [45, 46], "doc": [45, 46], "manual": 45, "explor": 46, "prerequisit": [48, 49], "creat": [48, 49, 54], "menu": 48, "what": [48, 49], "s": [48, 49], "next": [48, 49], "set": 49, "up": 49, "local": 49, "workspac": 49, "packag": 49, "initi": 49, "app": 49, "librari": 49, "tutori": 50, "us": [51, 52, 57], "appset": 51, "json": 51, "com": [51, 52, 53, 54, 55, 56, 57, 58], "soon": [51, 52, 53, 54, 55, 56, 57, 58], "handl": 53, "startup": [54, 56], "class": 54, "extend": [55, 56], "builtin": 57, "logger": 57, "send": 58}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 6, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 56}}) \ No newline at end of file diff --git a/docs/build/html/setup.html b/docs/build/html/setup.html index 4fd1c85a..330b7c84 100644 --- a/docs/build/html/setup.html +++ b/docs/build/html/setup.html @@ -58,9 +58,11 @@
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -118,7 +120,7 @@

    Install the package

    To install the package, open a terminal window and run the following command:

    -
    pip install sh_cpl-core --extra-index-url https://pip.sh-edraft.de
    +
    pip install cpl-core --extra-index-url https://pip.sh-edraft.de
     
    @@ -126,14 +128,14 @@

    Install the CLI

    You use the CPL CLI to create projects, generate application and library code. You also use the CLI to build and publish your python packages.

    To install the CLI, open a terminal window and run the following command:

    -
    pip install sh_cpl-cli --extra-index-url https://pip.sh-edraft.de
    +
    pip install cpl-cli --extra-index-url https://pip.sh-edraft.de
     

    Install the query

    To install the package, open a terminal window and run the following command:

    -
    pip install sh_cpl-query --extra-index-url https://pip.sh-edraft.de
    +
    pip install cpl-query --extra-index-url https://pip.sh-edraft.de
     
    @@ -206,7 +208,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/tutorials.appsettings.html b/docs/build/html/tutorials.appsettings.html index f3326ff6..0b42a876 100644 --- a/docs/build/html/tutorials.appsettings.html +++ b/docs/build/html/tutorials.appsettings.html @@ -60,9 +60,11 @@
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -109,7 +111,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/tutorials.console-arguments.html b/docs/build/html/tutorials.console-arguments.html index 435572ca..01cb18f3 100644 --- a/docs/build/html/tutorials.console-arguments.html +++ b/docs/build/html/tutorials.console-arguments.html @@ -60,9 +60,11 @@
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -109,7 +111,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/tutorials.console.html b/docs/build/html/tutorials.console.html index a3442f07..7b9ef50b 100644 --- a/docs/build/html/tutorials.console.html +++ b/docs/build/html/tutorials.console.html @@ -60,9 +60,11 @@
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -109,7 +111,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/tutorials.create-startup.html b/docs/build/html/tutorials.create-startup.html index 2feee349..98beb078 100644 --- a/docs/build/html/tutorials.create-startup.html +++ b/docs/build/html/tutorials.create-startup.html @@ -60,9 +60,11 @@
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -109,7 +111,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/tutorials.extend-application.html b/docs/build/html/tutorials.extend-application.html index ecdb0e88..40d36232 100644 --- a/docs/build/html/tutorials.extend-application.html +++ b/docs/build/html/tutorials.extend-application.html @@ -60,9 +60,11 @@
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -109,7 +111,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/tutorials.extend-startup.html b/docs/build/html/tutorials.extend-startup.html index 4a37bfaf..660a1afb 100644 --- a/docs/build/html/tutorials.extend-startup.html +++ b/docs/build/html/tutorials.extend-startup.html @@ -60,9 +60,11 @@
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -109,7 +111,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/tutorials.html b/docs/build/html/tutorials.html index 458940a3..141e20c5 100644 --- a/docs/build/html/tutorials.html +++ b/docs/build/html/tutorials.html @@ -57,9 +57,11 @@
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -138,7 +140,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/tutorials.logging.html b/docs/build/html/tutorials.logging.html index bb948b54..d88b255f 100644 --- a/docs/build/html/tutorials.logging.html +++ b/docs/build/html/tutorials.logging.html @@ -60,9 +60,11 @@
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -109,7 +111,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/build/html/tutorials.mail.html b/docs/build/html/tutorials.mail.html index 65cf0ca5..c1c39f37 100644 --- a/docs/build/html/tutorials.mail.html +++ b/docs/build/html/tutorials.mail.html @@ -60,9 +60,11 @@
  • Contributing to CPL
  • -
  • CLI Reference
  • -
  • API Reference
  • -
  • Query Reference
  • +
  • CLI reference
  • +
  • API reference
  • +
  • Discord reference
  • +
  • Query reference
  • +
  • Translation reference
  • @@ -109,7 +111,7 @@
    -

    © Copyright 2021, Sven Heidemann.

    +

    © Copyright 2021 - 2023, Sven Heidemann.

    Built with Sphinx using a diff --git a/docs/source/cli.generate.md b/docs/source/cli.generate.md index 40d79fdf..95a1cb51 100644 --- a/docs/source/cli.generate.md +++ b/docs/source/cli.generate.md @@ -18,10 +18,11 @@ Generates files based on a schematic. ## Arguments -| Argument | Description | Value type | -| ----------------- |:---------------------------------:|:-------------:| -| `````` | The schematic to generate. | ```str``` | -| `````` | The name of the generated file. | ```str``` | +| Argument | Description | Value type | +|-------------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:-------------:| +| `````` | The schematic to generate. | ```str``` | +| `````` | The name of the generated file. | ```str``` | +| ```--base``` | First element of path will be used as base-path not 'src'. For example: 'cpl g c test/Test' will be created at ```src/test/``` with --base it would be ```test/``` | ```str``` | ## Schematics diff --git a/docs/source/cli.new.md b/docs/source/cli.new.md index 2ddcb9e7..f000dcd6 100644 --- a/docs/source/cli.new.md +++ b/docs/source/cli.new.md @@ -18,10 +18,11 @@ Generates a workspace and initial project or add a project to workspace. If the command is running in a CPL workspace, it will add the new project to the workspace. -| Argument | Description | Value type | -|--------------|:----------------------------------------------------:|:----------:| -| `````` | The type of the project, see [types](#project-types) | ```str``` | -| `````` | The name of the project | ```str``` | +| Argument | Description | Value type | +|--------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:----------:| +| `````` | The type of the project, see [types](#project-types) | ```str``` | +| `````` | The name of the project | ```str``` | +| ```--base``` | First element of path will be used as base-path not 'src'. For example: 'cpl g c test/Test' will be created at ```src/test/``` with --base it would be ```test/``` | ```str``` | ## Project types diff --git a/docs/source/cli.run.md b/docs/source/cli.run.md new file mode 100644 index 00000000..5782a7a4 --- /dev/null +++ b/docs/source/cli.run.md @@ -0,0 +1,12 @@ +# cpl run + +Starts your application once. + +cpl **run**
    +cpl **r**
    +cpl **R** + +| Argument | Description | Value type | +|-----------------|:----------------------------------------------------------------------------------------------------:|:----------:| +| `````` | Optional parameter to specify which project to start, if not set default project will be started. | ```str``` | +| ```--dev``` | To run the project from source and not from dist after build. | ```str``` | \ No newline at end of file diff --git a/docs/source/cli.start.md b/docs/source/cli.start.md index 2b067bfb..961feef1 100644 --- a/docs/source/cli.start.md +++ b/docs/source/cli.start.md @@ -5,3 +5,7 @@ Starts your application, restarting on file changes. cpl **start**
    cpl **s**
    cpl **S** + +| Argument | Description | Value type | +|-----------------|:----------------------------------------------------------------------------------------------------:|:----------:| +| ```--dev``` | To run the project from source and not from dist after build. | ```str``` | \ No newline at end of file diff --git a/docs/source/conf.py b/docs/source/conf.py index 6954834c..00747705 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -15,16 +15,15 @@ # sys.path.insert(0, os.path.abspath('.')) import os import sys -sys.path.insert(0, os.path.abspath('../../src/')) +sys.path.insert(0, os.path.abspath('../../src/')) # -- Project information ----------------------------------------------------- project = 'Common Python Library' -copyright = '2021, Sven Heidemann' +copyright = '2021 - 2023, Sven Heidemann' author = 'Sven Heidemann' - # -- General configuration --------------------------------------------------- # Add any Sphinx extension names here, as strings. They can be @@ -56,7 +55,6 @@ exclude_patterns = [ 'tests/*' ] - # -- Options for HTML output ------------------------------------------------- # The theme to use for HTML and HTML Help pages. See the documentation for diff --git a/docs/source/cpl_cli.rst b/docs/source/cpl_cli.rst index 338ba5c2..cec12291 100644 --- a/docs/source/cpl_cli.rst +++ b/docs/source/cpl_cli.rst @@ -1,4 +1,4 @@ -CLI Reference +CLI reference ============= .. toctree:: diff --git a/docs/source/cpl_core.database.rst b/docs/source/cpl_core.database.rst index fb55c962..cdcb0ce8 100644 --- a/docs/source/cpl_core.database.rst +++ b/docs/source/cpl_core.database.rst @@ -7,8 +7,7 @@ cpl_core.database cpl_core.database.connection cpl_core.database.context -Submodules ----------- + cpl_core.database.database\_model ----------------------------------- diff --git a/docs/source/cpl_core.pipes.rst b/docs/source/cpl_core.pipes.rst index 8af5814b..0a8bba4d 100644 --- a/docs/source/cpl_core.pipes.rst +++ b/docs/source/cpl_core.pipes.rst @@ -1,10 +1,9 @@ cpl\_core.pipes ======================= -Submodules ----------- -cpl\_core.pipes.bool\_pipe module + +cpl\_core.pipes.bool\_pipe --------------------------------- .. automodule:: cpl_core.pipes.bool_pipe @@ -12,7 +11,7 @@ cpl\_core.pipes.bool\_pipe module :undoc-members: :show-inheritance: -cpl\_core.pipes.first\_char\_to\_lower\_pipe module +cpl\_core.pipes.first\_char\_to\_lower\_pipe --------------------------------------------------- .. automodule:: cpl_core.pipes.first_char_to_lower_pipe @@ -20,7 +19,7 @@ cpl\_core.pipes.first\_char\_to\_lower\_pipe module :undoc-members: :show-inheritance: -cpl\_core.pipes.first\_to\_upper\_pipe module +cpl\_core.pipes.first\_to\_upper\_pipe --------------------------------------------- .. automodule:: cpl_core.pipes.first_to_upper_pipe @@ -28,7 +27,7 @@ cpl\_core.pipes.first\_to\_upper\_pipe module :undoc-members: :show-inheritance: -cpl\_core.pipes.ip\_address\_pipe module +cpl\_core.pipes.ip\_address\_pipe ---------------------------------------- .. automodule:: cpl_core.pipes.ip_address_pipe @@ -36,7 +35,7 @@ cpl\_core.pipes.ip\_address\_pipe module :undoc-members: :show-inheritance: -cpl\_core.pipes.pipe\_abc module +cpl\_core.pipes.pipe\_abc -------------------------------- .. automodule:: cpl_core.pipes.pipe_abc @@ -44,7 +43,7 @@ cpl\_core.pipes.pipe\_abc module :undoc-members: :show-inheritance: -cpl\_core.pipes.to\_camel\_case\_pipe module +cpl\_core.pipes.to\_camel\_case\_pipe -------------------------------------------- .. automodule:: cpl_core.pipes.to_camel_case_pipe @@ -52,7 +51,7 @@ cpl\_core.pipes.to\_camel\_case\_pipe module :undoc-members: :show-inheritance: -cpl\_core.pipes.to\_snake\_case\_pipe module +cpl\_core.pipes.to\_snake\_case\_pipe -------------------------------------------- .. automodule:: cpl_core.pipes.to_snake_case_pipe @@ -60,18 +59,10 @@ cpl\_core.pipes.to\_snake\_case\_pipe module :undoc-members: :show-inheritance: -cpl\_core.pipes.version\_pipe module +cpl\_core.pipes.version\_pipe ------------------------------------ .. automodule:: cpl_core.pipes.version_pipe :members: :undoc-members: :show-inheritance: - -Module contents ---------------- - -.. automodule:: cpl_core.pipes - :members: - :undoc-members: - :show-inheritance: diff --git a/docs/source/cpl_core.rst b/docs/source/cpl_core.rst index a71547b3..e1e9b11a 100644 --- a/docs/source/cpl_core.rst +++ b/docs/source/cpl_core.rst @@ -1,4 +1,4 @@ -API Reference +API reference =========== .. toctree:: diff --git a/docs/source/cpl_discord.application.rst b/docs/source/cpl_discord.application.rst new file mode 100644 index 00000000..ef077d22 --- /dev/null +++ b/docs/source/cpl_discord.application.rst @@ -0,0 +1,12 @@ +cpl\_discord.application +================================ + + + +cpl\_discord.application.discord\_bot\_application\_abc +-------------------------------------------------------------- + +.. automodule:: cpl_discord.application.discord_bot_application_abc + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/source/cpl_discord.command.rst b/docs/source/cpl_discord.command.rst new file mode 100644 index 00000000..5f495733 --- /dev/null +++ b/docs/source/cpl_discord.command.rst @@ -0,0 +1,20 @@ +cpl\_discord.command +============================ + + + +cpl\_discord.command.discord\_command\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.command.discord_command_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.command.discord\_commands\_meta +--------------------------------------------------- + +.. automodule:: cpl_discord.command.discord_commands_meta + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/source/cpl_discord.configuration.rst b/docs/source/cpl_discord.configuration.rst new file mode 100644 index 00000000..eb855d14 --- /dev/null +++ b/docs/source/cpl_discord.configuration.rst @@ -0,0 +1,12 @@ +cpl\_discord.configuration +================================== + + + +cpl\_discord.configuration.discord\_bot\_settings +-------------------------------------------------------- + +.. automodule:: cpl_discord.configuration.discord_bot_settings + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/source/cpl_discord.container.rst b/docs/source/cpl_discord.container.rst new file mode 100644 index 00000000..a47f50b1 --- /dev/null +++ b/docs/source/cpl_discord.container.rst @@ -0,0 +1,68 @@ +cpl\_discord.container +============================== + + + +cpl\_discord.container.category\_channel +----------------------------------------------- + +.. automodule:: cpl_discord.container.category_channel + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.container +--------------------------------------- + +.. automodule:: cpl_discord.container.container + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.guild +----------------------------------- + +.. automodule:: cpl_discord.container.guild + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.member +------------------------------------ + +.. automodule:: cpl_discord.container.member + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.role +---------------------------------- + +.. automodule:: cpl_discord.container.role + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.text\_channel +------------------------------------------- + +.. automodule:: cpl_discord.container.text_channel + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.thread +------------------------------------ + +.. automodule:: cpl_discord.container.thread + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.container.voice\_channel +-------------------------------------------- + +.. automodule:: cpl_discord.container.voice_channel + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/source/cpl_discord.events.rst b/docs/source/cpl_discord.events.rst new file mode 100644 index 00000000..d26aa744 --- /dev/null +++ b/docs/source/cpl_discord.events.rst @@ -0,0 +1,412 @@ +cpl\_discord.events +=========================== + + + +cpl\_discord.events.on\_bulk\_message\_delete\_abc +--------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_bulk_message_delete_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_command\_abc +------------------------------------------- + +.. automodule:: cpl_discord.events.on_command_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_command\_completion\_abc +------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_command_completion_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_command\_error\_abc +-------------------------------------------------- + +.. automodule:: cpl_discord.events.on_command_error_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_connect\_abc +------------------------------------------- + +.. automodule:: cpl_discord.events.on_connect_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_disconnect\_abc +---------------------------------------------- + +.. automodule:: cpl_discord.events.on_disconnect_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_error\_abc +----------------------------------------- + +.. automodule:: cpl_discord.events.on_error_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_group\_join\_abc +----------------------------------------------- + +.. automodule:: cpl_discord.events.on_group_join_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_group\_remove\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.events.on_group_remove_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_available\_abc +---------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_available_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_channel\_create\_abc +---------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_channel_create_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_channel\_delete\_abc +---------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_channel_delete_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_channel\_pins\_update\_abc +---------------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_channel_pins_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_channel\_update\_abc +---------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_channel_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_emojis\_update\_abc +--------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_emojis_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_integrations\_update\_abc +--------------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_integrations_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_join\_abc +----------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_join_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_remove\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_remove_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_role\_create\_abc +------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_role_create_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_role\_delete\_abc +------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_role_delete_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_role\_update\_abc +------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_role_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_unavailable\_abc +------------------------------------------------------ + +.. automodule:: cpl_discord.events.on_guild_unavailable_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_guild\_update\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.events.on_guild_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_invite\_create\_abc +-------------------------------------------------- + +.. automodule:: cpl_discord.events.on_invite_create_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_invite\_delete\_abc +-------------------------------------------------- + +.. automodule:: cpl_discord.events.on_invite_delete_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_member\_ban\_abc +----------------------------------------------- + +.. automodule:: cpl_discord.events.on_member_ban_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_member\_join\_abc +------------------------------------------------ + +.. automodule:: cpl_discord.events.on_member_join_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_member\_remove\_abc +-------------------------------------------------- + +.. automodule:: cpl_discord.events.on_member_remove_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_member\_unban\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.events.on_member_unban_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_member\_update\_abc +-------------------------------------------------- + +.. automodule:: cpl_discord.events.on_member_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_message\_abc +------------------------------------------- + +.. automodule:: cpl_discord.events.on_message_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_message\_delete\_abc +--------------------------------------------------- + +.. automodule:: cpl_discord.events.on_message_delete_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_message\_edit\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.events.on_message_edit_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_private\_channel\_create\_abc +------------------------------------------------------------ + +.. automodule:: cpl_discord.events.on_private_channel_create_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_private\_channel\_delete\_abc +------------------------------------------------------------ + +.. automodule:: cpl_discord.events.on_private_channel_delete_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_private\_channel\_pins\_update\_abc +------------------------------------------------------------------ + +.. automodule:: cpl_discord.events.on_private_channel_pins_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_private\_channel\_update\_abc +------------------------------------------------------------ + +.. automodule:: cpl_discord.events.on_private_channel_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_raw\_reaction\_add\_abc +------------------------------------------------------ + +.. automodule:: cpl_discord.events.on_raw_reaction_add_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_raw\_reaction\_clear\_abc +-------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_raw_reaction_clear_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_raw\_reaction\_clear\_emoji\_abc +--------------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_raw_reaction_clear_emoji_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_raw\_reaction\_remove\_abc +--------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_raw_reaction_remove_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_reaction\_add\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.events.on_reaction_add_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_reaction\_clear\_abc +--------------------------------------------------- + +.. automodule:: cpl_discord.events.on_reaction_clear_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_reaction\_clear\_emoji\_abc +---------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_reaction_clear_emoji_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_reaction\_remove\_abc +---------------------------------------------------- + +.. automodule:: cpl_discord.events.on_reaction_remove_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_ready\_abc +----------------------------------------- + +.. automodule:: cpl_discord.events.on_ready_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_resume\_abc +------------------------------------------ + +.. automodule:: cpl_discord.events.on_resume_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_typing\_abc +------------------------------------------ + +.. automodule:: cpl_discord.events.on_typing_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_user\_update\_abc +------------------------------------------------ + +.. automodule:: cpl_discord.events.on_user_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_voice\_state\_update\_abc +-------------------------------------------------------- + +.. automodule:: cpl_discord.events.on_voice_state_update_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.events.on\_webhooks\_update\_abc +---------------------------------------------------- + +.. automodule:: cpl_discord.events.on_webhooks_update_abc + :members: + :undoc-members: + :show-inheritance: \ No newline at end of file diff --git a/docs/source/cpl_discord.helper.rst b/docs/source/cpl_discord.helper.rst new file mode 100644 index 00000000..396b4c89 --- /dev/null +++ b/docs/source/cpl_discord.helper.rst @@ -0,0 +1,12 @@ +cpl\_discord.helper +=========================== + + + +cpl\_discord.helper.to\_containers\_converter +---------------------------------------------------- + +.. automodule:: cpl_discord.helper.to_containers_converter + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/source/cpl_discord.rst b/docs/source/cpl_discord.rst new file mode 100644 index 00000000..5d10fb20 --- /dev/null +++ b/docs/source/cpl_discord.rst @@ -0,0 +1,13 @@ +Discord reference +==================== + +.. toctree:: + :maxdepth: 4 + + cpl_discord.application + cpl_discord.command + cpl_discord.configuration + cpl_discord.container + cpl_discord.events + cpl_discord.helper + cpl_discord.service diff --git a/docs/source/cpl_discord.service.rst b/docs/source/cpl_discord.service.rst new file mode 100644 index 00000000..a6898292 --- /dev/null +++ b/docs/source/cpl_discord.service.rst @@ -0,0 +1,60 @@ +cpl\_discord.service +============================ + + + +cpl\_discord.service.command\_error\_handler\_service +------------------------------------------------------------ + +.. automodule:: cpl_discord.service.command_error_handler_service + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.service.discord\_bot\_service +------------------------------------------------- + +.. automodule:: cpl_discord.service.discord_bot_service + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.service.discord\_bot\_service\_abc +------------------------------------------------------ + +.. automodule:: cpl_discord.service.discord_bot_service_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.service.discord\_collection +----------------------------------------------- + +.. automodule:: cpl_discord.service.discord_collection + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.service.discord\_collection\_abc +---------------------------------------------------- + +.. automodule:: cpl_discord.service.discord_collection_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.service.discord\_service +-------------------------------------------- + +.. automodule:: cpl_discord.service.discord_service + :members: + :undoc-members: + :show-inheritance: + +cpl\_discord.service.discord\_service\_abc +------------------------------------------------- + +.. automodule:: cpl_discord.service.discord_service_abc + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/source/cpl_query.base.rst b/docs/source/cpl_query.base.rst new file mode 100644 index 00000000..156985e5 --- /dev/null +++ b/docs/source/cpl_query.base.rst @@ -0,0 +1,52 @@ +cpl\_query.base +======================= + + + +cpl\_query.base.default\_lambda +-------------------------------------- + +.. automodule:: cpl_query.base.default_lambda + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.base.ordered\_queryable +----------------------------------------- + +.. automodule:: cpl_query.base.ordered_queryable + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.base.ordered\_queryable\_abc +---------------------------------------------- + +.. automodule:: cpl_query.base.ordered_queryable_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.base.queryable\_abc +------------------------------------- + +.. automodule:: cpl_query.base.queryable_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.base.sequence\_abc +------------------------------------ + +.. automodule:: cpl_query.base.sequence_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.base.sequence\_values +--------------------------------------- + +.. automodule:: cpl_query.base.sequence_values + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/source/cpl_query.enumerable.rst b/docs/source/cpl_query.enumerable.rst new file mode 100644 index 00000000..37e58add --- /dev/null +++ b/docs/source/cpl_query.enumerable.rst @@ -0,0 +1,20 @@ +cpl\_query.enumerable +============================= + + + +cpl\_query.enumerable.enumerable +--------------------------------------- + +.. automodule:: cpl_query.enumerable.enumerable + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.enumerable.enumerable\_abc +-------------------------------------------- + +.. automodule:: cpl_query.enumerable.enumerable_abc + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/source/cpl_query.exceptions.rst b/docs/source/cpl_query.exceptions.rst deleted file mode 100644 index d492c637..00000000 --- a/docs/source/cpl_query.exceptions.rst +++ /dev/null @@ -1,10 +0,0 @@ -cpl_query.exceptions -================================= - -cpl_query.exceptions ----------------------------------------------------- - -.. automodule:: cpl_query.exceptions - :members: - :undoc-members: - :show-inheritance: diff --git a/docs/source/cpl_query.extension.rst b/docs/source/cpl_query.extension.rst index 9dfaa401..a0bba3e0 100644 --- a/docs/source/cpl_query.extension.rst +++ b/docs/source/cpl_query.extension.rst @@ -1,42 +1,12 @@ -cpl_query.extension -================================= +cpl\_query.extension +============================ -cpl_query.extension.iterable_abc ----------------------------------------------------- -.. automodule:: cpl_query.extension.iterable_abc - :members: - :undoc-members: - :show-inheritance: -cpl_query.extension.iterable ----------------------------------------------------- - -.. automodule:: cpl_query.extension.iterable - :members: - :undoc-members: - :show-inheritance: - -cpl_query.extension.list ----------------------------------------------------- +cpl\_query.extension.list +-------------------------------- .. automodule:: cpl_query.extension.list :members: :undoc-members: :show-inheritance: - -cpl_query.extension.ordered_iterable_abc ----------------------------------------------------- - -.. automodule:: cpl_query.extension.ordered_iterable_abc - :members: - :undoc-members: - :show-inheritance: - -cpl_query.extension.ordered_iterable ----------------------------------------------------- - -.. automodule:: cpl_query.extension.ordered_iterable - :members: - :undoc-members: - :show-inheritance: \ No newline at end of file diff --git a/docs/source/cpl_query.iterable.rst b/docs/source/cpl_query.iterable.rst new file mode 100644 index 00000000..8a7bc919 --- /dev/null +++ b/docs/source/cpl_query.iterable.rst @@ -0,0 +1,20 @@ +cpl\_query.iterable +=========================== + + + +cpl\_query.iterable.iterable +----------------------------------- + +.. automodule:: cpl_query.iterable.iterable + :members: + :undoc-members: + :show-inheritance: + +cpl\_query.iterable.iterable\_abc +---------------------------------------- + +.. automodule:: cpl_query.iterable.iterable_abc + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/source/cpl_query.rst b/docs/source/cpl_query.rst index 10d6f0d8..5a362b26 100644 --- a/docs/source/cpl_query.rst +++ b/docs/source/cpl_query.rst @@ -1,8 +1,10 @@ -Query Reference +Query reference =========== .. toctree:: :maxdepth: 4 - - cpl_query.extension - cpl_query.exceptions + + cpl_query.base + cpl_query.enumerable + cpl_query.extension + cpl_query.iterable diff --git a/docs/source/cpl_translation.rst b/docs/source/cpl_translation.rst new file mode 100644 index 00000000..365356e8 --- /dev/null +++ b/docs/source/cpl_translation.rst @@ -0,0 +1,34 @@ +Translation reference +======================== + +cpl\_translation.translate\_pipe +--------------------------------------- + +.. automodule:: cpl_translation.translate_pipe + :members: + :undoc-members: + :show-inheritance: + +cpl\_translation.translation\_service +-------------------------------------------- + +.. automodule:: cpl_translation.translation_service + :members: + :undoc-members: + :show-inheritance: + +cpl\_translation.translation\_service\_abc +------------------------------------------------- + +.. automodule:: cpl_translation.translation_service_abc + :members: + :undoc-members: + :show-inheritance: + +cpl\_translation.translation\_settings +--------------------------------------------- + +.. automodule:: cpl_translation.translation_settings + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/source/index.rst b/docs/source/index.rst index 0d0ef798..921b7964 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -89,4 +89,6 @@ These pages go into great detail about everything the Library can do. contributing cpl_cli cpl_core + cpl_discord cpl_query + cpl_translation diff --git a/docs/source/modules.rst b/docs/source/modules.rst index d1ae65e0..5a411fa4 100644 --- a/docs/source/modules.rst +++ b/docs/source/modules.rst @@ -9,4 +9,4 @@ cpl cpl_core cpl_discord cpl_query - cpl_translate + cpl_translation diff --git a/src/cpl_cli/.cpl/__init__.py b/src/cpl_cli/.cpl/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/cpl_cli/.cpl/abc_schematic.py b/src/cpl_cli/.cpl/abc_schematic.py new file mode 100644 index 00000000..917a60a6 --- /dev/null +++ b/src/cpl_cli/.cpl/abc_schematic.py @@ -0,0 +1,30 @@ +import textwrap + +from cpl_cli.abc.generate_schematic_abc import GenerateSchematicABC + + +class ABC(GenerateSchematicABC): + + def __init__(self, *args): + GenerateSchematicABC.__init__(self, *args) + + def get_code(self) -> str: + code = """\ + from abc import ABC, abstractmethod + + + class $Name(ABC): + + @abstractmethod + def __init__(self): pass + """ + x = self.build_code_str(code, Name=self._class_name) + return x + + @classmethod + def register(cls): + GenerateSchematicABC.register( + cls, + 'abc', + ['a', 'A'] + ) diff --git a/src/cpl_cli/.cpl/class_schematic.py b/src/cpl_cli/.cpl/class_schematic.py new file mode 100644 index 00000000..f5cdb462 --- /dev/null +++ b/src/cpl_cli/.cpl/class_schematic.py @@ -0,0 +1,28 @@ +from cpl_cli.abc.generate_schematic_abc import GenerateSchematicABC +from cpl_core.utils import String + + +class Class(GenerateSchematicABC): + + def __init__(self, name: str, path: str, schematic: str): + GenerateSchematicABC.__init__(self, name, path, schematic) + self._name = f'{String.convert_to_snake_case(name)}.py' + self._class_name = f'{String.first_to_upper(name)}' + + def get_code(self) -> str: + code = """\ + class $Name: + + def __init__(self): + pass + """ + x = self.build_code_str(code, Name=self._class_name) + return x + + @classmethod + def register(cls): + GenerateSchematicABC.register( + cls, + 'class', + ['c', 'C'] + ) diff --git a/src/cpl_cli/.cpl/configmodel_schematic.py b/src/cpl_cli/.cpl/configmodel_schematic.py new file mode 100644 index 00000000..e692f1e1 --- /dev/null +++ b/src/cpl_cli/.cpl/configmodel_schematic.py @@ -0,0 +1,46 @@ +import textwrap + +from cpl_cli.abc.generate_schematic_abc import GenerateSchematicABC + + +class ConfigModel(GenerateSchematicABC): + + def __init__(self, *args: str): + GenerateSchematicABC.__init__(self, *args) + + def get_code(self) -> str: + code = """\ + import traceback + + from cpl_core.configuration.configuration_model_abc import ConfigurationModelABC + from cpl_core.console import Console + + + class $Name(ConfigurationModelABC): + + def __init__(self): + ConfigurationModelABC.__init__(self) + + self._atr = '' + + @property + def atr(self) -> str: + return self._atr + + def from_dict(self, settings: dict): + try: + self._atr = settings['atr'] + except Exception as e: + Console.error(f'[ ERROR ] [ {__name__} ]: Reading error in {type(self).__name__} settings') + Console.error(f'[ EXCEPTION ] [ {__name__} ]: {e} -> {traceback.format_exc()}') + """ + x = self.build_code_str(code, Name=self._class_name) + return x + + @classmethod + def register(cls): + GenerateSchematicABC.register( + cls, + 'settings', + ['st', 'ST'] + ) diff --git a/src/cpl_cli/.cpl/enum_schematic.py b/src/cpl_cli/.cpl/enum_schematic.py new file mode 100644 index 00000000..bd838159 --- /dev/null +++ b/src/cpl_cli/.cpl/enum_schematic.py @@ -0,0 +1,29 @@ +import textwrap + +from cpl_cli.abc.generate_schematic_abc import GenerateSchematicABC + + +class Enum(GenerateSchematicABC): + + def __init__(self, *args: str): + GenerateSchematicABC.__init__(self, *args) + + def get_code(self) -> str: + code = """\ + from enum import Enum + + + class $Name(Enum): + + atr = 0 + """ + x = self.build_code_str(code, Name=self._class_name) + return x + + @classmethod + def register(cls): + GenerateSchematicABC.register( + cls, + 'enum', + ['e', 'E'] + ) diff --git a/src/cpl_cli/.cpl/init_schematic.py b/src/cpl_cli/.cpl/init_schematic.py new file mode 100644 index 00000000..f089ac18 --- /dev/null +++ b/src/cpl_cli/.cpl/init_schematic.py @@ -0,0 +1,25 @@ +import textwrap + +from cpl_cli.abc.generate_schematic_abc import GenerateSchematicABC + + +class Init(GenerateSchematicABC): + + def __init__(self, *args: str): + GenerateSchematicABC.__init__(self, *args) + self._name = f'__init__.py' + + def get_code(self) -> str: + code = """\ + # imports + """ + x = self.build_code_str(code, Name=self._class_name) + return x + + @classmethod + def register(cls): + GenerateSchematicABC.register( + cls, + 'init', + [] + ) diff --git a/src/cpl_cli/.cpl/pipe_schematic.py b/src/cpl_cli/.cpl/pipe_schematic.py new file mode 100644 index 00000000..fe7ab972 --- /dev/null +++ b/src/cpl_cli/.cpl/pipe_schematic.py @@ -0,0 +1,32 @@ +import textwrap + +from cpl_cli.abc.generate_schematic_abc import GenerateSchematicABC + + +class Pipe(GenerateSchematicABC): + + def __init__(self, *args: str): + GenerateSchematicABC.__init__(self, *args) + + def get_code(self) -> str: + code = """\ + from cpl_core.pipes.pipe_abc import PipeABC + + + class $Name(PipeABC): + + def __init__(self): pass + + def transform(self, value: any, *args): + return value + """ + x = self.build_code_str(code, Name=self._class_name) + return x + + @classmethod + def register(cls): + GenerateSchematicABC.register( + cls, + 'pipe', + ['p', 'P'] + ) diff --git a/src/cpl_cli/.cpl/service_schematic.py b/src/cpl_cli/.cpl/service_schematic.py new file mode 100644 index 00000000..9651f7de --- /dev/null +++ b/src/cpl_cli/.cpl/service_schematic.py @@ -0,0 +1,27 @@ +import textwrap + +from cpl_cli.abc.generate_schematic_abc import GenerateSchematicABC + + +class Service(GenerateSchematicABC): + + def __init__(self, *args: str): + GenerateSchematicABC.__init__(self, *args) + + def get_code(self) -> str: + code = """\ + class $Name: + + def __init__(self): + pass + """ + x = self.build_code_str(code, Name=self._class_name) + return x + + @classmethod + def register(cls): + GenerateSchematicABC.register( + cls, + 'service', + ['s', 'S'] + ) diff --git a/src/cpl_cli/.cpl/test_case_schematic.py b/src/cpl_cli/.cpl/test_case_schematic.py new file mode 100644 index 00000000..63ffe56c --- /dev/null +++ b/src/cpl_cli/.cpl/test_case_schematic.py @@ -0,0 +1,33 @@ +import textwrap + +from cpl_cli.abc.generate_schematic_abc import GenerateSchematicABC + + +class TestCase(GenerateSchematicABC): + + def __init__(self, *args: str): + GenerateSchematicABC.__init__(self, *args) + + def get_code(self) -> str: + code = """\ + import unittest + + + class $Name(unittest.TestCase): + + def setUp(self): + pass + + def test_equal(self): + pass + """ + x = self.build_code_str(code, Name=self._class_name) + return x + + @classmethod + def register(cls): + GenerateSchematicABC.register( + cls, + 'test-case', + ['tc', 'TC'] + ) diff --git a/src/cpl_cli/.cpl/thread_schematic.py b/src/cpl_cli/.cpl/thread_schematic.py new file mode 100644 index 00000000..4bb19e98 --- /dev/null +++ b/src/cpl_cli/.cpl/thread_schematic.py @@ -0,0 +1,33 @@ +import textwrap + +from cpl_cli.abc.generate_schematic_abc import GenerateSchematicABC + + +class Thread(GenerateSchematicABC): + + def __init__(self, *args: str): + GenerateSchematicABC.__init__(self, *args) + + def get_code(self) -> str: + code = """\ + import threading + + + class $Name(threading.Thread): + + def __init__(self): + threading.Thread.__init__(self) + + def run(self) -> None: + pass + """ + x = self.build_code_str(code, Name=self._class_name) + return x + + @classmethod + def register(cls): + GenerateSchematicABC.register( + cls, + 'thread', + ['t', 'T'] + ) diff --git a/src/cpl_cli/.cpl/validator_schematic.py b/src/cpl_cli/.cpl/validator_schematic.py new file mode 100644 index 00000000..a7a17cb1 --- /dev/null +++ b/src/cpl_cli/.cpl/validator_schematic.py @@ -0,0 +1,33 @@ +import textwrap + +from cpl_cli.abc.generate_schematic_abc import GenerateSchematicABC + + +class Validator(GenerateSchematicABC): + + def __init__(self, *args: str): + GenerateSchematicABC.__init__(self, *args) + + def get_code(self) -> str: + code = """\ + from cpl_core.configuration.validator_abc import ValidatorABC + + + class $Name(ValidatorABC): + + def __init__(self): + ValidatorABC.__init__(self) + + def validate(self) -> bool: + return True + """ + x = self.build_code_str(code, Name=self._class_name) + return x + + @classmethod + def register(cls): + GenerateSchematicABC.register( + cls, + 'validator', + ['v', 'V'] + ) diff --git a/src/cpl_cli/_templates/generate/__init__.py b/src/cpl_cli/_templates/generate/__init__.py deleted file mode 100644 index 07d118a6..00000000 --- a/src/cpl_cli/_templates/generate/__init__.py +++ /dev/null @@ -1,26 +0,0 @@ -# -*- coding: utf-8 -*- - -""" -cpl-cli sh-edraft Common Python library CLI -~~~~~~~~~~~~~~~~~~~ - -sh-edraft Common Python library Command Line Interface - -:copyright: (c) 2020 - 2022 sh-edraft.de -:license: MIT, see LICENSE for more details. - -""" - -__title__ = 'cpl_cli._templates.generate' -__author__ = 'Sven Heidemann' -__license__ = 'MIT' -__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de' -__version__ = '2022.12.0' - -from collections import namedtuple - - -# imports: - -VersionInfo = namedtuple('VersionInfo', 'major minor micro') -version_info = VersionInfo(major='2022', minor='12', micro='0') diff --git a/src/cpl_cli/_templates/generate/abc_template.py b/src/cpl_cli/_templates/generate/abc_template.py deleted file mode 100644 index 3e292182..00000000 --- a/src/cpl_cli/_templates/generate/abc_template.py +++ /dev/null @@ -1,44 +0,0 @@ -import textwrap -from string import Template - -from cpl_core.utils.string import String -from cpl_cli._templates.template_file_abc import TemplateFileABC - - -class ABCTemplate(TemplateFileABC): - - def __init__(self, name: str, schematic: str, schematic_upper: str, path: str): - TemplateFileABC.__init__(self) - - self._name = f'{String.convert_to_snake_case(name)}_{schematic}.py' - if schematic in name.lower(): - self._name = f'{String.convert_to_snake_case(name)}.py' - - self._class_name = f'{String.first_to_upper(name)}{schematic_upper}' - if schematic in name.lower(): - self._class_name = f'{String.first_to_upper(name)}' - - self._path = path - self._value = textwrap.dedent("""\ - from abc import ABC, abstractmethod - - - class $Name(ABC): - - @abstractmethod - def __init__(self): pass - """) - - @property - def name(self) -> str: - return self._name - - @property - def path(self) -> str: - return self._path - - @property - def value(self) -> str: - return Template(self._value).substitute( - Name=self._class_name - ) diff --git a/src/cpl_cli/_templates/generate/class_template.py b/src/cpl_cli/_templates/generate/class_template.py deleted file mode 100644 index 6d01d659..00000000 --- a/src/cpl_cli/_templates/generate/class_template.py +++ /dev/null @@ -1,35 +0,0 @@ -import textwrap -from string import Template - -from cpl_core.utils.string import String -from cpl_cli._templates.template_file_abc import TemplateFileABC - - -class ClassTemplate(TemplateFileABC): - - def __init__(self, name: str, schematic: str, schematic_upper: str, path: str): - TemplateFileABC.__init__(self) - - self._name = f'{String.convert_to_snake_case(name)}.py' - self._class_name = f'{String.first_to_upper(name)}' - self._path = path - self._value = textwrap.dedent("""\ - class $Name: - - def __init__(self): - pass - """) - - @property - def name(self) -> str: - return self._name - - @property - def path(self) -> str: - return self._path - - @property - def value(self) -> str: - return Template(self._value).substitute( - Name=self._class_name - ) diff --git a/src/cpl_cli/_templates/generate/configmodel_template.py b/src/cpl_cli/_templates/generate/configmodel_template.py deleted file mode 100644 index f4b9ce41..00000000 --- a/src/cpl_cli/_templates/generate/configmodel_template.py +++ /dev/null @@ -1,60 +0,0 @@ -import textwrap -from string import Template - -from cpl_core.utils.string import String -from cpl_cli._templates.template_file_abc import TemplateFileABC - - -class ConfigModelTemplate(TemplateFileABC): - - def __init__(self, name: str, schematic: str, schematic_upper: str, path: str): - TemplateFileABC.__init__(self) - - self._name = f'{String.convert_to_snake_case(name)}_{schematic}.py' - if schematic in name.lower(): - self._name = f'{String.convert_to_snake_case(name)}.py' - - self._class_name = f'{String.first_to_upper(name)}{schematic_upper}' - if schematic in name.lower(): - self._class_name = f'{String.first_to_upper(name)}' - - self._path = path - self._value = textwrap.dedent("""\ - import traceback - - from cpl_core.configuration.configuration_model_abc import ConfigurationModelABC - from cpl_core.console import Console - - - class $Name(ConfigurationModelABC): - - def __init__(self): - ConfigurationModelABC.__init__(self) - - self._atr = '' - - @property - def atr(self) -> str: - return self._atr - - def from_dict(self, settings: dict): - try: - self._atr = settings['atr'] - except Exception as e: - Console.error(f'[ ERROR ] [ {__name__} ]: Reading error in {type(self).__name__} settings') - Console.error(f'[ EXCEPTION ] [ {__name__} ]: {e} -> {traceback.format_exc()}') - """) - - @property - def name(self) -> str: - return self._name - - @property - def path(self) -> str: - return self._path - - @property - def value(self) -> str: - return Template(self._value).substitute( - Name=self._class_name - ) diff --git a/src/cpl_cli/_templates/generate/enum_template.py b/src/cpl_cli/_templates/generate/enum_template.py deleted file mode 100644 index b8c04b49..00000000 --- a/src/cpl_cli/_templates/generate/enum_template.py +++ /dev/null @@ -1,43 +0,0 @@ -import textwrap -from string import Template - -from cpl_core.utils.string import String -from cpl_cli._templates.template_file_abc import TemplateFileABC - - -class EnumTemplate(TemplateFileABC): - - def __init__(self, name: str, schematic: str, schematic_upper: str, path: str): - TemplateFileABC.__init__(self) - - self._name = f'{String.convert_to_snake_case(name)}_{schematic}.py' - if schematic in name.lower(): - self._name = f'{String.convert_to_snake_case(name)}.py' - - self._class_name = f'{String.first_to_upper(name)}{schematic_upper}' - if schematic in name.lower(): - self._class_name = f'{String.first_to_upper(name)}' - - self._path = path - self._value = textwrap.dedent("""\ - from enum import Enum - - - class $Name(Enum): - - atr = 0 - """) - - @property - def name(self) -> str: - return self._name - - @property - def path(self) -> str: - return self._path - - @property - def value(self) -> str: - return Template(self._value).substitute( - Name=self._class_name - ) diff --git a/src/cpl_cli/_templates/generate/init_template.py b/src/cpl_cli/_templates/generate/init_template.py deleted file mode 100644 index 48c2e2da..00000000 --- a/src/cpl_cli/_templates/generate/init_template.py +++ /dev/null @@ -1,35 +0,0 @@ -import textwrap -from string import Template - -from cpl_core.utils.string import String -from cpl_cli._templates.template_file_abc import TemplateFileABC - - -class InitTemplate(TemplateFileABC): - - def __init__(self, name: str, schematic: str, schematic_upper: str, path: str): - TemplateFileABC.__init__(self) - - self._name = f'__init__.py' - self._class_name = f'{String.first_to_upper(name)}{schematic_upper}' - if schematic in name.lower(): - self._class_name = f'{String.first_to_upper(name)}' - - self._path = path - self._value = textwrap.dedent("""\ - # imports - """) - - @property - def name(self) -> str: - return self._name - - @property - def path(self) -> str: - return self._path - - @property - def value(self) -> str: - return Template(self._value).substitute( - Name=self._class_name - ) diff --git a/src/cpl_cli/_templates/generate/pipe_template.py b/src/cpl_cli/_templates/generate/pipe_template.py deleted file mode 100644 index 6a33035b..00000000 --- a/src/cpl_cli/_templates/generate/pipe_template.py +++ /dev/null @@ -1,46 +0,0 @@ -import textwrap -from string import Template - -from cpl_core.utils.string import String -from cpl_cli._templates.template_file_abc import TemplateFileABC - - -class PipeTemplate(TemplateFileABC): - - def __init__(self, name: str, schematic: str, schematic_upper: str, path: str): - TemplateFileABC.__init__(self) - - self._name = f'{String.convert_to_snake_case(name)}_{schematic}.py' - if schematic in name.lower(): - self._name = f'{String.convert_to_snake_case(name)}.py' - - self._class_name = f'{String.first_to_upper(name)}{schematic_upper}' - if schematic in name.lower(): - self._class_name = f'{String.first_to_upper(name)}' - - self._path = path - self._value = textwrap.dedent("""\ - from cpl_core.pipes.pipe_abc import PipeABC - - - class $Name(PipeABC): - - def __init__(self): pass - - def transform(self, value: any, *args): - return value - """) - - @property - def name(self) -> str: - return self._name - - @property - def path(self) -> str: - return self._path - - @property - def value(self) -> str: - return Template(self._value).substitute( - Name=self._class_name - ) diff --git a/src/cpl_cli/_templates/generate/service_template.py b/src/cpl_cli/_templates/generate/service_template.py deleted file mode 100644 index 24846155..00000000 --- a/src/cpl_cli/_templates/generate/service_template.py +++ /dev/null @@ -1,41 +0,0 @@ -import textwrap -from string import Template - -from cpl_core.utils.string import String -from cpl_cli._templates.template_file_abc import TemplateFileABC - - -class ServiceTemplate(TemplateFileABC): - - def __init__(self, name: str, schematic: str, schematic_upper: str, path: str): - TemplateFileABC.__init__(self) - - self._name = f'{String.convert_to_snake_case(name)}_{schematic}.py' - if schematic in name.lower(): - self._name = f'{String.convert_to_snake_case(name)}.py' - - self._class_name = f'{String.first_to_upper(name)}{schematic_upper}' - if schematic in name.lower(): - self._class_name = f'{String.first_to_upper(name)}' - - self._path = path - self._value = textwrap.dedent("""\ - class $Name: - - def __init__(self): - pass - """) - - @property - def name(self) -> str: - return self._name - - @property - def path(self) -> str: - return self._path - - @property - def value(self) -> str: - return Template(self._value).substitute( - Name=self._class_name - ) diff --git a/src/cpl_cli/_templates/generate/test_case_template.py b/src/cpl_cli/_templates/generate/test_case_template.py deleted file mode 100644 index 5888bb5c..00000000 --- a/src/cpl_cli/_templates/generate/test_case_template.py +++ /dev/null @@ -1,47 +0,0 @@ -import textwrap -from string import Template - -from cpl_core.utils.string import String -from cpl_cli._templates.template_file_abc import TemplateFileABC - - -class TestCaseTemplate(TemplateFileABC): - - def __init__(self, name: str, schematic: str, schematic_upper: str, path: str): - TemplateFileABC.__init__(self) - - self._name = f'{String.convert_to_snake_case(name)}_{schematic}.py' - if schematic in name.lower(): - self._name = f'{String.convert_to_snake_case(name)}.py' - - self._class_name = f'{String.first_to_upper(name)}{schematic_upper}' - if schematic in name.lower(): - self._class_name = f'{String.first_to_upper(name)}' - - self._path = path - self._value = textwrap.dedent("""\ - import unittest - - - class $Name(unittest.TestCase): - - def setUp(self): - pass - - def test_equal(self): - pass - """) - - @property - def name(self) -> str: - return self._name - - @property - def path(self) -> str: - return self._path - - @property - def value(self) -> str: - return Template(self._value).substitute( - Name=self._class_name - ) diff --git a/src/cpl_cli/_templates/generate/thread_template.py b/src/cpl_cli/_templates/generate/thread_template.py deleted file mode 100644 index 4609d678..00000000 --- a/src/cpl_cli/_templates/generate/thread_template.py +++ /dev/null @@ -1,47 +0,0 @@ -import textwrap -from string import Template - -from cpl_core.utils.string import String -from cpl_cli._templates.template_file_abc import TemplateFileABC - - -class ThreadTemplate(TemplateFileABC): - - def __init__(self, name: str, schematic: str, schematic_upper: str, path: str): - TemplateFileABC.__init__(self) - - self._name = f'{String.convert_to_snake_case(name)}_{schematic}.py' - if schematic in name.lower(): - self._name = f'{String.convert_to_snake_case(name)}.py' - - self._class_name = f'{String.first_to_upper(name)}{schematic_upper}' - if schematic in name.lower(): - self._class_name = f'{String.first_to_upper(name)}' - - self._path = path - self._value = textwrap.dedent("""\ - import threading - - - class $Name(threading.Thread): - - def __init__(self): - threading.Thread.__init__(self) - - def run(self) -> None: - pass - """) - - @property - def name(self) -> str: - return self._name - - @property - def path(self) -> str: - return self._path - - @property - def value(self) -> str: - return Template(self._value).substitute( - Name=self._class_name - ) diff --git a/src/cpl_cli/_templates/generate/validator_template.py b/src/cpl_cli/_templates/generate/validator_template.py deleted file mode 100644 index 683cea5e..00000000 --- a/src/cpl_cli/_templates/generate/validator_template.py +++ /dev/null @@ -1,47 +0,0 @@ -import textwrap -from string import Template - -from cpl_core.utils.string import String -from cpl_cli._templates.template_file_abc import TemplateFileABC - - -class ValidatorTemplate(TemplateFileABC): - - def __init__(self, name: str, schematic: str, schematic_upper: str, path: str): - TemplateFileABC.__init__(self) - - self._name = f'{String.convert_to_snake_case(name)}_{schematic}.py' - if schematic in name.lower(): - self._name = f'{String.convert_to_snake_case(name)}.py' - - self._class_name = f'{String.first_to_upper(name)}{schematic_upper}' - if schematic in name.lower(): - self._class_name = f'{String.first_to_upper(name)}' - - self._path = path - self._value = textwrap.dedent("""\ - from cpl_core.configuration.validator_abc import ValidatorABC - - - class $Name(ValidatorABC): - - def __init__(self): - ValidatorABC.__init__(self) - - def validate(self) -> bool: - return True - """) - - @property - def name(self) -> str: - return self._name - - @property - def path(self) -> str: - return self._path - - @property - def value(self) -> str: - return Template(self._value).substitute( - Name=self._class_name - ) diff --git a/src/cpl_cli/abc/__init__.py b/src/cpl_cli/abc/__init__.py new file mode 100644 index 00000000..425ab6c1 --- /dev/null +++ b/src/cpl_cli/abc/__init__.py @@ -0,0 +1 @@ +# imports diff --git a/src/cpl_cli/abc/file_template_abc.py b/src/cpl_cli/abc/file_template_abc.py new file mode 100644 index 00000000..09e39f23 --- /dev/null +++ b/src/cpl_cli/abc/file_template_abc.py @@ -0,0 +1,28 @@ +from abc import ABC, abstractmethod + +from cpl_core.utils import String + + +class FileTemplateABC(ABC): + + @abstractmethod + def __init__(self, name: str, path: str, code: str): + self._name = f'{String.convert_to_snake_case(name)}.py' + self._path = path + self._code = code + + @property + def name(self) -> str: + return self._name + + @property + def path(self) -> str: + return self._path + + @property + def value(self) -> str: + return self.get_code() + + @abstractmethod + def get_code(self) -> str: + return self._code diff --git a/src/cpl_cli/abc/generate_schematic_abc.py b/src/cpl_cli/abc/generate_schematic_abc.py new file mode 100644 index 00000000..7254e176 --- /dev/null +++ b/src/cpl_cli/abc/generate_schematic_abc.py @@ -0,0 +1,37 @@ +import textwrap +from abc import abstractmethod +from string import Template + +from cpl_cli.abc.file_template_abc import FileTemplateABC +from cpl_cli.configuration.schematic_collection import SchematicCollection +from cpl_core.utils import String + + +class GenerateSchematicABC(FileTemplateABC): + + def __init__(self, name: str, schematic: str, path: str): + FileTemplateABC.__init__(self, name, path, '') + self._name = f'{String.convert_to_snake_case(name)}_{schematic}.py' + if schematic in name.lower(): + self._name = f'{String.convert_to_snake_case(name)}.py' + + self._class_name = f'{String.first_to_upper(name)}{String.first_to_upper(schematic)}' + if schematic in name.lower(): + self._class_name = f'{String.first_to_upper(name)}' + + @property + def class_name(self) -> str: + return self._class_name + + @abstractmethod + def get_code(self) -> str: pass + + @classmethod + def build_code_str(cls, code: str, **kwargs) -> str: + text = textwrap.dedent(code) + return Template(text).substitute(**kwargs) + + @classmethod + @abstractmethod + def register(cls, *args): + SchematicCollection.register(*args) diff --git a/src/cpl_cli/command/generate_service.py b/src/cpl_cli/command/generate_service.py index 12236c83..975770d7 100644 --- a/src/cpl_cli/command/generate_service.py +++ b/src/cpl_cli/command/generate_service.py @@ -2,19 +2,10 @@ import os import sys import textwrap -from cpl_cli._templates.generate.abc_template import ABCTemplate -from cpl_cli._templates.generate.class_template import ClassTemplate -from cpl_cli._templates.generate.configmodel_template import ConfigModelTemplate -from cpl_cli._templates.generate.enum_template import EnumTemplate -from cpl_cli._templates.generate.init_template import InitTemplate -from cpl_cli._templates.generate.pipe_template import PipeTemplate -from cpl_cli._templates.generate.service_template import ServiceTemplate -from cpl_cli._templates.generate.test_case_template import TestCaseTemplate -from cpl_cli._templates.generate.thread_template import ThreadTemplate -from cpl_cli._templates.generate.validator_template import ValidatorTemplate -from cpl_cli._templates.template_file_abc import TemplateFileABC +from cpl_cli.abc.generate_schematic_abc import GenerateSchematicABC from cpl_cli.command_abc import CommandABC from cpl_cli.configuration import WorkspaceSettings +from cpl_cli.configuration.schematic_collection import SchematicCollection from cpl_core.configuration.configuration_abc import ConfigurationABC from cpl_core.console.console import Console from cpl_core.console.foreground_color_enum import ForegroundColorEnum @@ -37,51 +28,28 @@ class GenerateService(CommandABC): self._config = configuration self._workspace = workspace - self._schematics = { - "abc": { - "Upper": "ABC", - "Template": ABCTemplate - }, - "class": { - "Upper": "Class", - "Template": ClassTemplate - }, - "enum": { - "Upper": "Enum", - "Template": EnumTemplate - }, - "pipe": { - "Upper": "Pipe", - "Template": PipeTemplate - }, - "service": { - "Upper": "Service", - "Template": ServiceTemplate - }, - "settings": { - "Upper": "Settings", - "Template": ConfigModelTemplate - }, - "test_case": { - "Upper": "TestCase", - "Template": TestCaseTemplate - }, - "thread": { - "Upper": "Thread", - "Template": ThreadTemplate - }, - "validator": { - "Upper": "Validator", - "Template": ValidatorTemplate - } - } - self._config = configuration self._env = self._config.environment + self._schematics = {} + + self._read_custom_schematics_from_path(self._env.runtime_directory) + self._read_custom_schematics_from_path(self._env.working_directory) + for schematic in GenerateSchematicABC.__subclasses__(): + schematic.register() + + self._schematics = SchematicCollection.get_schematics() @property def help_message(self) -> str: - return textwrap.dedent("""\ + schematics = [] + for schematic in self._schematics: + aliases = '|'.join(self._schematics[schematic]['Aliases']) + schematic_str = schematic + if len(aliases) > 0: + schematic_str = f'{schematic} ({aliases})' + + schematics.append(schematic_str) + help_msg = textwrap.dedent("""\ Generate a file based on schematic. Usage: cpl generate @@ -89,41 +57,11 @@ class GenerateService(CommandABC): schematic: The schematic to generate. name: The name of the generated file - Schematics: - abc - class - enum - pipe - service - settings - test_case - thread - validator - """) + Schematics:""") - @staticmethod - def _help(message: str): - """ - Internal help output - :param message: - :return: - """ - Console.error(message) - - schematics = [ - 'abc (a|A)', - 'class (c|C)', - 'enum (e|E)', - 'pipe (p|P)', - 'service (s|S)', - 'settings (st|ST)', - 'test-case (tc|TC)', - 'thread (t|T)', - 'validator (v|V)' - ] - Console.write_line('Available Schematics:') - for name in schematics: - Console.write(f'\n\t{name} ') + for schematic in schematics: + help_msg += f'\n {schematic}' + return help_msg @staticmethod def _create_file(file_path: str, value: str): @@ -137,7 +75,7 @@ class GenerateService(CommandABC): template.write(value) template.close() - def _create_init_files(self, file_path: str, template: TemplateFileABC, class_name: str, schematic: str, rel_path: str): + def _create_init_files(self, file_path: str, template: GenerateSchematicABC, class_name: str, schematic: str, rel_path: str): if not os.path.isdir(os.path.dirname(file_path)): os.makedirs(os.path.dirname(file_path)) directory = '' @@ -146,7 +84,7 @@ class GenerateService(CommandABC): if subdir == 'src': continue - file = InitTemplate(class_name, schematic, self._schematics[schematic]["Upper"], rel_path) + file = self._schematics['init']['Template'](class_name, 'init', rel_path) if os.path.exists(os.path.join(os.path.abspath(directory), file.name)): continue @@ -154,12 +92,12 @@ class GenerateService(CommandABC): f'Creating {os.path.abspath(directory)}/{file.name}', self._create_file, os.path.join(os.path.abspath(directory), file.name), - file.value, + file.get_code(), text_foreground_color=ForegroundColorEnum.green, spinner_foreground_color=ForegroundColorEnum.cyan ) - def _generate(self, schematic: str, name: str, template: TemplateFileABC): + def _generate(self, schematic: str, name: str, template: type): """ Generates files by given schematic, name and template :param schematic: @@ -175,9 +113,9 @@ class GenerateService(CommandABC): class_name = parts[len(parts) - 1] if self._workspace is not None and parts[0] in self._workspace.projects: - rel_path = os.path.dirname(self._workspace.projects[parts[0]]) + rel_path = os.path.join(os.path.dirname(self._workspace.projects[parts[0]]), *parts[1:-1]) - template = template(class_name, schematic, self._schematics[schematic]["Upper"], rel_path) + template = template(class_name, String.convert_to_snake_case(schematic), rel_path) file_path = os.path.join(self._env.working_directory, template.path, template.name) self._create_init_files(file_path, template, class_name, schematic, rel_path) @@ -194,11 +132,35 @@ class GenerateService(CommandABC): message, self._create_file, file_path, - template.value, + template.get_code(), text_foreground_color=ForegroundColorEnum.green, spinner_foreground_color=ForegroundColorEnum.cyan ) + @staticmethod + def _read_custom_schematics_from_path(path: str): + if not os.path.exists(os.path.join(path, '.cpl')): + return + + for r, d, f in os.walk(os.path.join(path, '.cpl')): + for file in f: + if not file.endswith('_schematic.py'): + continue + + code = '' + with open(os.path.join(r, file), 'r') as py_file: + code = py_file.read() + py_file.close() + + exec(code) + + def _get_schematic_by_alias(self, schematic: str) -> str: + for key in self._schematics: + if schematic in self._schematics[key]['Aliases']: + return key + + return schematic + def execute(self, args: list[str]): """ Entry point of command @@ -213,9 +175,15 @@ class GenerateService(CommandABC): schematic = s break + schematic_by_alias = self._get_schematic_by_alias(args[0]) + if schematic is None and len(args) >= 1 and (args[0] in self._schematics or schematic_by_alias != args[0]): + schematic = schematic_by_alias + self._config.add_configuration(schematic, args[1]) + value = args[1] + if schematic is None: - self._help('Usage: cpl generate [options]') - Console.write_line() + Console.error(f'Schematic not found') + Console.write_line(self.help_message) sys.exit() name = value diff --git a/src/cpl_cli/command/new_service.py b/src/cpl_cli/command/new_service.py index 9740a324..5715f5cd 100644 --- a/src/cpl_cli/command/new_service.py +++ b/src/cpl_cli/command/new_service.py @@ -67,29 +67,11 @@ class NewService(CommandABC): name Name of the workspace or the project Types: - console - library - unittest + console (c|C) + library (l|L) + unittest (ut|UT) """) - @staticmethod - def _help(message: str): - """ - Internal help output - :param message: - :return: - """ - Console.error(message) - - schematics = [ - 'console (c|C) ', - 'library (l|L) ', - 'unittest (ut|UT) ', - ] - Console.write_line('Available Schematics:') - for name in schematics: - Console.write(f'\n\t{name} ') - def _create_project_settings(self): self._rel_path = os.path.dirname(self._name) self._project_dict = { @@ -369,5 +351,6 @@ class NewService(CommandABC): self._create_venv() else: - self._help('Usage: cpl new [options]') + Console.error(f'Project type not found') + Console.write_line(self.help_message) return diff --git a/src/cpl_cli/configuration/schematic_collection.py b/src/cpl_cli/configuration/schematic_collection.py new file mode 100644 index 00000000..a3469077 --- /dev/null +++ b/src/cpl_cli/configuration/schematic_collection.py @@ -0,0 +1,16 @@ +from cpl_core.utils import String + + +class SchematicCollection: + _schematics: dict = {} + + @classmethod + def register(cls, template: type, schematic: str, aliases: list[str]): + cls._schematics[schematic] = { + "Template": template, + "Aliases": aliases + } + + @classmethod + def get_schematics(cls) -> dict: + return cls._schematics diff --git a/src/cpl_cli/startup_argument_extension.py b/src/cpl_cli/startup_argument_extension.py index 16bd5449..835a9b67 100644 --- a/src/cpl_cli/startup_argument_extension.py +++ b/src/cpl_cli/startup_argument_extension.py @@ -29,16 +29,7 @@ class StartupArgumentExtension(StartupExtensionABC): config.create_console_argument(ArgumentTypeEnum.Executable, '', 'add', ['a', 'A'], AddService, True, validators=[WorkspaceValidator]) \ .add_console_argument(ArgumentTypeEnum.Flag, '--', 'simulate', ['s', 'S']) config.create_console_argument(ArgumentTypeEnum.Executable, '', 'build', ['b', 'B'], BuildService, True, validators=[ProjectValidator]) - config.create_console_argument(ArgumentTypeEnum.Executable, '', 'generate', ['g', 'G'], GenerateService, True) \ - .add_console_argument(ArgumentTypeEnum.Variable, '', 'abc', ['a', 'A'], ' ') \ - .add_console_argument(ArgumentTypeEnum.Variable, '', 'class', ['c', 'C'], ' ') \ - .add_console_argument(ArgumentTypeEnum.Variable, '', 'enum', ['e', 'E'], ' ') \ - .add_console_argument(ArgumentTypeEnum.Variable, '', 'pipe', ['p', 'P'], ' ') \ - .add_console_argument(ArgumentTypeEnum.Variable, '', 'service', ['s', 'S'], ' ') \ - .add_console_argument(ArgumentTypeEnum.Variable, '', 'settings', ['st', 'ST'], ' ') \ - .add_console_argument(ArgumentTypeEnum.Variable, '', 'test_case', ['tc', 'TC'], ' ') \ - .add_console_argument(ArgumentTypeEnum.Variable, '', 'thread', ['t', 'T'], ' ') \ - .add_console_argument(ArgumentTypeEnum.Variable, '', 'validator', ['v', 'V'], ' ') + config.create_console_argument(ArgumentTypeEnum.Executable, '', 'generate', ['g', 'G'], GenerateService, True) config.create_console_argument(ArgumentTypeEnum.Executable, '', 'install', ['i', 'I'], InstallService, True, validators=[ProjectValidator]) \ .add_console_argument(ArgumentTypeEnum.Flag, '--', 'dev', ['d', 'D']) \ .add_console_argument(ArgumentTypeEnum.Flag, '--', 'virtual', ['v', 'V']) \ diff --git a/src/cpl_cli/test_enum.py b/src/cpl_cli/test_enum.py new file mode 100644 index 00000000..425ab6c1 --- /dev/null +++ b/src/cpl_cli/test_enum.py @@ -0,0 +1 @@ +# imports diff --git a/src/cpl_cli/test_init.py b/src/cpl_cli/test_init.py new file mode 100644 index 00000000..425ab6c1 --- /dev/null +++ b/src/cpl_cli/test_init.py @@ -0,0 +1 @@ +# imports diff --git a/src/cpl_core/configuration/argument_executable_abc.py b/src/cpl_core/configuration/argument_executable_abc.py index 8263b338..d7f3319a 100644 --- a/src/cpl_core/configuration/argument_executable_abc.py +++ b/src/cpl_core/configuration/argument_executable_abc.py @@ -7,4 +7,4 @@ class ArgumentExecutableABC(ABC): def __init__(self): pass @abstractmethod - def execute(self, args: list[str]): pass + def run(self, args: list[str]): pass diff --git a/src/cpl_core/configuration/configuration.py b/src/cpl_core/configuration/configuration.py index b395a826..7eea05ea 100644 --- a/src/cpl_core/configuration/configuration.py +++ b/src/cpl_core/configuration/configuration.py @@ -341,7 +341,7 @@ class Configuration(ConfigurationABC): continue self._additional_arguments.append(arg) - cmd.execute(self._additional_arguments) + cmd.run(self._additional_arguments) self._handle_pre_or_post_executables(False, exe, services) prevent = exe.prevent_next_executable success = True diff --git a/src/cpl_query/__init__.py b/src/cpl_query/__init__.py index 405c7a25..90568d75 100644 --- a/src/cpl_query/__init__.py +++ b/src/cpl_query/__init__.py @@ -15,7 +15,7 @@ __title__ = 'cpl_query' __author__ = 'Sven Heidemann' __license__ = 'MIT' __copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de' -__version__ = '2022.12.0' +__version__ = '2022.12.1.post1' from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple('VersionInfo', 'major minor micro') -version_info = VersionInfo(major='2022', minor='12', micro='0') +version_info = VersionInfo(major='2022', minor='12', micro='1.post1') diff --git a/src/cpl_query/base/__init__.py b/src/cpl_query/base/__init__.py index e6923714..6c298ed1 100644 --- a/src/cpl_query/base/__init__.py +++ b/src/cpl_query/base/__init__.py @@ -15,7 +15,7 @@ __title__ = 'cpl_query.base' __author__ = 'Sven Heidemann' __license__ = 'MIT' __copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de' -__version__ = '2022.12.0' +__version__ = '2022.12.1.post1' from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple('VersionInfo', 'major minor micro') -version_info = VersionInfo(major='2022', minor='12', micro='0') +version_info = VersionInfo(major='2022', minor='12', micro='1.post1') diff --git a/src/cpl_query/base/queryable_abc.py b/src/cpl_query/base/queryable_abc.py index 117397c6..b14f63b2 100644 --- a/src/cpl_query/base/queryable_abc.py +++ b/src/cpl_query/base/queryable_abc.py @@ -1,7 +1,7 @@ from typing import Optional, Callable, Union from cpl_query._helper import is_number -from cpl_query.base.sequence_abc import SequenceABC +from cpl_query.base.sequence import Sequence from cpl_query.exceptions import InvalidTypeException, ArgumentNoneException, ExceptionArgument, IndexOutOfRangeException @@ -9,10 +9,10 @@ def _default_lambda(x: object): return x -class QueryableABC(SequenceABC): +class QueryableABC(Sequence): def __init__(self, t: type = None, values: list = None): - SequenceABC.__init__(self, t, values) + Sequence.__init__(self, t, values) def all(self, _func: Callable = None) -> bool: r"""Checks if every element of list equals result found by function @@ -141,6 +141,9 @@ class QueryableABC(SequenceABC): if _index is None: raise ArgumentNoneException(ExceptionArgument.index) + if _index < 0 or _index >= self.count(): + raise IndexOutOfRangeException + result = self[_index] if result is None: raise IndexOutOfRangeException diff --git a/src/cpl_query/base/sequence_abc.py b/src/cpl_query/base/sequence.py similarity index 63% rename from src/cpl_query/base/sequence_abc.py rename to src/cpl_query/base/sequence.py index b33a8082..15f7fc4a 100644 --- a/src/cpl_query/base/sequence_abc.py +++ b/src/cpl_query/base/sequence.py @@ -1,16 +1,14 @@ from abc import ABC, abstractmethod -from itertools import islice - -from cpl_query.base.sequence_values import SequenceValues -class SequenceABC(ABC): +class Sequence(list): @abstractmethod def __init__(self, t: type = None, values: list = None): + list.__init__(self) ABC.__init__(self) - if values is None: - values = [] + values = [] if values is None else values + list.__init__(self, values) if t is None and len(values) > 0: t = type(values[0]) @@ -19,36 +17,11 @@ class SequenceABC(ABC): t = any self._type = t - self._set_values(values) @classmethod def __class_getitem__(cls, _t: type): return _t - def __len__(self): - return len(self._values) - - def __iter__(self): - return iter(self._values) - - def next(self): - return next(self._values) - - def __next__(self): - return self.next() - - def __getitem__(self, n): - values = [x for x in self] - if isinstance(n, slice): - try: - return values[n] - except Exception as e: - raise e - - for i in range(len(values)): - if i == n: - return values[i] - def __repr__(self): return f'<{type(self).__name__} {list(self).__repr__()}>' @@ -63,9 +36,6 @@ class SequenceABC(ABC): if self._type is not None and type(__object) != self._type and not isinstance(type(__object), self._type) and not issubclass(type(__object), self._type): raise Exception(f'Unexpected type: {type(__object)}\nExpected type: {self._type}') - def _set_values(self, values: list): - self._values = SequenceValues(values, self._type) - def to_list(self) -> list: r"""Converts :class: `cpl_query.base.sequence_abc.SequenceABC` to :class: `list` @@ -75,17 +45,17 @@ class SequenceABC(ABC): """ return [x for x in self] - def copy(self) -> 'SequenceABC': + def copy(self) -> 'Sequence': r"""Creates a copy of sequence Returns ------- - SequenceABC + Sequence """ return type(self)(self._type, self.to_list()) @classmethod - def empty(cls) -> 'SequenceABC': + def empty(cls) -> 'Sequence': r"""Returns an empty sequence Returns @@ -94,7 +64,7 @@ class SequenceABC(ABC): """ return cls() - def index(self, _object: object) -> int: + def index_of(self, _object: object) -> int: r"""Returns the index of given element Returns @@ -112,5 +82,5 @@ class SequenceABC(ABC): raise IndexError @classmethod - def range(cls, start: int, length: int) -> 'SequenceABC': + def range(cls, start: int, length: int) -> 'Sequence': return cls(int, list(range(start, length))) diff --git a/src/cpl_query/base/sequence_values.py b/src/cpl_query/base/sequence_values.py deleted file mode 100644 index 6298a685..00000000 --- a/src/cpl_query/base/sequence_values.py +++ /dev/null @@ -1,47 +0,0 @@ -import io -import itertools - -from cpl_query.exceptions import IndexOutOfRangeException - - -class SequenceValues: - def __init__(self, data: list, _t: type): - if len(data) > 0: - def type_check(_t: type, _l: list): - return all([_t == any or isinstance(x, _t) for x in _l]) - - if not type_check(_t, data): - print([type(x) for x in data]) - raise Exception(f'Unexpected type\nExpected type: {_t}') - - if not hasattr(data, '__iter__'): - raise TypeError(f'{type(self).__name__} must be instantiated with an iterable object') - - self._new_cycle = lambda: itertools.cycle(data) - self._len = lambda: len(data) - - self._index = 0 - self._cycle = self._new_cycle() - - def __len__(self): - return self._len() - - def __iter__(self): - i = 0 - while i < self._len(): - yield next(self._cycle) - i += 1 - - def __next__(self): - if self._index >= len(self): - raise IndexOutOfRangeException() - self._index += 1 - - return self.next() - - def next(self): - return next(self._cycle) - - def reset(self): - self._index = 0 - self._cycle = self._new_cycle() diff --git a/src/cpl_query/cpl-query.json b/src/cpl_query/cpl-query.json index b06705f3..198b1699 100644 --- a/src/cpl_query/cpl-query.json +++ b/src/cpl_query/cpl-query.json @@ -4,7 +4,7 @@ "Version": { "Major": "2022", "Minor": "12", - "Micro": "0" + "Micro": "1.post1" }, "Author": "Sven Heidemann", "AuthorEmail": "sven.heidemann@sh-edraft.de", diff --git a/src/cpl_query/enumerable/__init__.py b/src/cpl_query/enumerable/__init__.py index 498f2a86..13ad7c57 100644 --- a/src/cpl_query/enumerable/__init__.py +++ b/src/cpl_query/enumerable/__init__.py @@ -15,7 +15,7 @@ __title__ = 'cpl_query.enumerable' __author__ = 'Sven Heidemann' __license__ = 'MIT' __copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de' -__version__ = '2022.12.0' +__version__ = '2022.12.1.post1' from collections import namedtuple @@ -25,4 +25,4 @@ from .enumerable import Enumerable from .enumerable_abc import EnumerableABC VersionInfo = namedtuple('VersionInfo', 'major minor micro') -version_info = VersionInfo(major='2022', minor='12', micro='0') +version_info = VersionInfo(major='2022', minor='12', micro='1.post1') diff --git a/src/cpl_query/enumerable/enumerable_abc.py b/src/cpl_query/enumerable/enumerable_abc.py index b59054d9..c222973d 100644 --- a/src/cpl_query/enumerable/enumerable_abc.py +++ b/src/cpl_query/enumerable/enumerable_abc.py @@ -11,13 +11,6 @@ class EnumerableABC(QueryableABC): def __init__(self, t: type = None, values: list = None): QueryableABC.__init__(self, t, values) - self._remove_error_check = True - - def set_remove_error_check(self, _value: bool): - r"""Set flag to check if element exists before removing - """ - self._remove_error_check = _value - def to_iterable(self) -> 'IterableABC': r"""Converts :class: `cpl_query.enumerable.enumerable_abc.EnumerableABC` to :class: `cpl_query.iterable.iterable_abc.IterableABC` diff --git a/src/cpl_query/extension/__init__.py b/src/cpl_query/extension/__init__.py index 014d5d95..9851b59c 100644 --- a/src/cpl_query/extension/__init__.py +++ b/src/cpl_query/extension/__init__.py @@ -15,7 +15,7 @@ __title__ = 'cpl_query.extension' __author__ = 'Sven Heidemann' __license__ = 'MIT' __copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de' -__version__ = '2022.12.0' +__version__ = '2022.12.1.post1' from collections import namedtuple @@ -24,4 +24,4 @@ from collections import namedtuple from .list import List VersionInfo = namedtuple('VersionInfo', 'major minor micro') -version_info = VersionInfo(major='2022', minor='12', micro='0') +version_info = VersionInfo(major='2022', minor='12', micro='1.post1') diff --git a/src/cpl_query/iterable/__init__.py b/src/cpl_query/iterable/__init__.py index 2f388931..3855dde6 100644 --- a/src/cpl_query/iterable/__init__.py +++ b/src/cpl_query/iterable/__init__.py @@ -15,7 +15,7 @@ __title__ = 'cpl_query.iterable' __author__ = 'Sven Heidemann' __license__ = 'MIT' __copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de' -__version__ = '2022.12.0' +__version__ = '2022.12.1.post1' from collections import namedtuple @@ -25,4 +25,4 @@ from .iterable_abc import IterableABC from .iterable import Iterable VersionInfo = namedtuple('VersionInfo', 'major minor micro') -version_info = VersionInfo(major='2022', minor='12', micro='0') +version_info = VersionInfo(major='2022', minor='12', micro='1.post1') diff --git a/src/cpl_query/iterable/iterable_abc.py b/src/cpl_query/iterable/iterable_abc.py index 5758b03c..571a61e1 100644 --- a/src/cpl_query/iterable/iterable_abc.py +++ b/src/cpl_query/iterable/iterable_abc.py @@ -12,17 +12,6 @@ class IterableABC(QueryableABC): def __init__(self, t: type = None, values: Iterable = None): QueryableABC.__init__(self, t, values) - def __setitem__(self, i, val): - self._check_type(val) - values = [*self._values] - values[i] = val - self._set_values(values) - - def __delitem__(self, i): - values = [*self._values] - del values[i] - self._set_values(values) - @property def type(self) -> type: return self._type @@ -41,8 +30,7 @@ class IterableABC(QueryableABC): value """ self._check_type(_object) - values = [*self._values, _object] - self._set_values(values) + super().append(_object) def extend(self, __iterable: Iterable) -> 'IterableABC': r"""Adds elements of given list to list @@ -66,9 +54,16 @@ class IterableABC(QueryableABC): if _object not in self: raise ValueError - values = [*self._values] - values.remove(_object) - self._set_values(values) + super().remove(_object) + + def remove_at(self, _index: int): + r"""Removes element from list + Parameter + --------- + _object: :class:`object` + value + """ + self.pop(_index) def to_enumerable(self) -> 'EnumerableABC': r"""Converts :class: `cpl_query.iterable.iterable_abc.IterableABC` to :class: `cpl_query.enumerable.enumerable_abc.EnumerableABC` diff --git a/tests/custom/general/.cpl/custom_schematic.py b/tests/custom/general/.cpl/custom_schematic.py new file mode 100644 index 00000000..dd951a69 --- /dev/null +++ b/tests/custom/general/.cpl/custom_schematic.py @@ -0,0 +1,27 @@ + + +from cpl_cli.abc.generate_schematic_abc import GenerateSchematicABC + + +class Custom(GenerateSchematicABC): + + def __init__(self, *args: str): + GenerateSchematicABC.__init__(self, *args) + + def get_code(self) -> str: + code = """\ + class $Name: + + def __init__(self): + print('hello') + """ + x = self.build_code_str(code, Name=self._class_name) + return x + + @classmethod + def register(cls): + GenerateSchematicABC.register( + cls, + 'custom', + ['cm', 'CM'] + ) diff --git a/tests/custom/general/test/__init__.py b/tests/custom/general/test/__init__.py new file mode 100644 index 00000000..425ab6c1 --- /dev/null +++ b/tests/custom/general/test/__init__.py @@ -0,0 +1 @@ +# imports diff --git a/tests/custom/general/test/custom.py b/tests/custom/general/test/custom.py new file mode 100644 index 00000000..16baa336 --- /dev/null +++ b/tests/custom/general/test/custom.py @@ -0,0 +1,4 @@ +class Custom: + + def __init__(self): + print('hello') diff --git a/tools/set_pip_urls/__init__.py b/tools/set_pip_urls/__init__.py index 293c4a42..95b27626 100644 --- a/tools/set_pip_urls/__init__.py +++ b/tools/set_pip_urls/__init__.py @@ -15,7 +15,7 @@ __title__ = 'set_pip_urls' __author__ = 'Sven Heidemann' __license__ = 'MIT' __copyright__ = 'Copyright (c) 2022 sh-edraft.de' -__version__ = '2022.6.0' +__version__ = '2022.12.0' from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple('VersionInfo', 'major minor micro') -version_info = VersionInfo(major='2022', minor='6', micro='0') +version_info = VersionInfo(major='2022', minor='12', micro='0') diff --git a/tools/set_version/__init__.py b/tools/set_version/__init__.py index ef7b39f6..3604926a 100644 --- a/tools/set_version/__init__.py +++ b/tools/set_version/__init__.py @@ -15,7 +15,7 @@ __title__ = 'set_version' __author__ = 'Sven Heidemann' __license__ = 'MIT' __copyright__ = 'Copyright (c) 2022 sh-edraft.de' -__version__ = '2022.7.0' +__version__ = '2022.12.0' from collections import namedtuple @@ -23,4 +23,4 @@ from collections import namedtuple # imports: VersionInfo = namedtuple('VersionInfo', 'major minor micro') -version_info = VersionInfo(major='2022', minor='7', micro='0') +version_info = VersionInfo(major='2022', minor='12', micro='0') diff --git a/unittests/unittests_cli/generate_test_case.py b/unittests/unittests_cli/generate_test_case.py index cba7d8a7..16bb382b 100644 --- a/unittests/unittests_cli/generate_test_case.py +++ b/unittests/unittests_cli/generate_test_case.py @@ -78,8 +78,8 @@ class GenerateTestCase(CommandTestCase): self._test_file_with_project('settings', '_settings', path=self._project) def test_test_case(self): - self._test_file('test_case', '_test_case') - self._test_file_with_project('test_case', '_test_case', path=self._project) + self._test_file('test-case', '_test_case') + self._test_file_with_project('test-case', '_test_case', path=self._project) def test_thread(self): self._test_file('thread', '_thread') diff --git a/unittests/unittests_query/enumerable_test_case.py b/unittests/unittests_query/enumerable_test_case.py index b8605493..2f7c5a73 100644 --- a/unittests/unittests_query/enumerable_test_case.py +++ b/unittests/unittests_query/enumerable_test_case.py @@ -16,12 +16,12 @@ class EnumerableTestCase(unittest.TestCase): self.assertEqual(Enumerable.empty().to_list(), []) self.assertEqual(Enumerable.range(0, 100).to_list(), list(range(0, 100))) - def test_iter(self): - n = 0 - elements = Enumerable.range(0, 100) - while n < 100: - self.assertEqual(elements.next(), n) - n += 1 + # def test_iter(self): + # n = 0 + # elements = Enumerable.range(0, 100) + # while n < 100: + # self.assertEqual(elements.next(), n) + # n += 1 def test_for(self): n = 0 diff --git a/unittests/unittests_query/unittests_query.json b/unittests/unittests_query/unittests_query.json index 855bab31..78ed0d58 100644 --- a/unittests/unittests_query/unittests_query.json +++ b/unittests/unittests_query/unittests_query.json @@ -4,7 +4,7 @@ "Version": { "Major": "2022", "Minor": "12", - "Micro": "0" + "Micro": "dev134" }, "Author": "", "AuthorEmail": "", @@ -17,7 +17,7 @@ "LicenseDescription": "", "Dependencies": [ "cpl-core>=2022.12.0", - "cpl-query>=2022.12.0" + "cpl-query>=2022.12.dev134" ], "PythonVersion": ">=3.10.4", "PythonPath": {},