arpakitlib 1.6.43__tar.gz → 1.6.45__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/PKG-INFO +1 -1
  2. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_aiogram_util.py +14 -1
  3. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_util.py +7 -0
  4. arpakitlib-1.6.45/arpakitlib/ar_settings_util.py +33 -0
  5. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/pyproject.toml +1 -1
  6. arpakitlib-1.6.43/arpakitlib/ar_settings_util.py +0 -23
  7. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/LICENSE +0 -0
  8. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/NOTICE +0 -0
  9. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/README.md +0 -0
  10. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/AUTHOR.md +0 -0
  11. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/LICENSE +0 -0
  12. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/NOTICE +0 -0
  13. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/README.md +0 -0
  14. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/__init__.py +0 -0
  15. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_additional_model_util.py +0 -0
  16. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_arpakit_lib_module_util.py +0 -0
  17. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_arpakit_schedule_uust_api_client_util.py +0 -0
  18. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_arpakitlib_info.py +0 -0
  19. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_base64_util.py +0 -0
  20. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_base_worker_util.py +0 -0
  21. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_cache_file_util.py +0 -0
  22. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_datetime_util.py +0 -0
  23. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_dict_util.py +0 -0
  24. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_dream_ai_api_client_util.py +0 -0
  25. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_encrypt_decrypt_util.py +0 -0
  26. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_enumeration_util.py +0 -0
  27. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/redoc/redoc.standalone.js +0 -0
  28. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/favicon-16x16.png +0 -0
  29. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/favicon-32x32.png +0 -0
  30. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/index.css +0 -0
  31. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/index.html +0 -0
  32. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/oauth2-redirect.html +0 -0
  33. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-initializer.js +0 -0
  34. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-bundle.js +0 -0
  35. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-bundle.js.map +0 -0
  36. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-es-bundle-core.js +0 -0
  37. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-es-bundle-core.js.map +0 -0
  38. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-es-bundle.js +0 -0
  39. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-es-bundle.js.map +0 -0
  40. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-standalone-preset.js +0 -0
  41. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui-standalone-preset.js.map +0 -0
  42. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui.css +0 -0
  43. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui.css.map +0 -0
  44. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui.js +0 -0
  45. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_fastapi_static/swagger-ui/swagger-ui.js.map +0 -0
  46. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_file_storage_in_dir_util.py +0 -0
  47. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_generate_env_example.py +0 -0
  48. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_hash_util.py +0 -0
  49. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_http_request_util.py +0 -0
  50. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_ip_util.py +0 -0
  51. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_json_db_util.py +0 -0
  52. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_json_util.py +0 -0
  53. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_jwt_util.py +0 -0
  54. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_list_of_dicts_to_xlsx.py +0 -0
  55. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_list_util.py +0 -0
  56. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_logging_util.py +0 -0
  57. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_mongodb_util.py +0 -0
  58. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_need_type_util.py +0 -0
  59. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_openai_util.py +0 -0
  60. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_operation_execution_util.py +0 -0
  61. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_parse_command.py +0 -0
  62. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_postgresql_util.py +0 -0
  63. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_run_cmd_util.py +0 -0
  64. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_schedule_uust_api_client_util.py +0 -0
  65. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_sleep_util.py +0 -0
  66. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_sqlalchemy_model_util.py +0 -0
  67. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_sqlalchemy_util.py +0 -0
  68. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_ssh_util.py +0 -0
  69. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_str_util.py +0 -0
  70. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_type_util.py +0 -0
  71. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_yookassa_api_client_util.py +0 -0
  72. {arpakitlib-1.6.43 → arpakitlib-1.6.45}/arpakitlib/ar_zabbix_util.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: arpakitlib
3
- Version: 1.6.43
3
+ Version: 1.6.45
4
4
  Summary: arpakitlib
5
5
  Home-page: https://github.com/ARPAKIT-Company/arpakitlib
6
6
  License: Apache-2.0
@@ -12,10 +12,12 @@ from aiogram.enums import ChatType, ParseMode
12
12
  from aiogram.exceptions import AiogramError
13
13
  from aiogram.filters import CommandObject, Filter
14
14
  from aiogram.filters.callback_data import CallbackData
15
- from pydantic import BaseModel
15
+ from pydantic import BaseModel, ConfigDict
16
16
 
17
17
  from arpakitlib.ar_need_type_util import parse_need_type, NeedTypes
18
18
  from arpakitlib.ar_parse_command import BadCommandFormat, parse_command
19
+ from arpakitlib.ar_settings_util import SimpleSettings
20
+ from arpakitlib.ar_sqlalchemy_util import SQLAlchemyDB
19
21
  from arpakitlib.ar_type_util import raise_for_types, raise_for_type
20
22
 
21
23
  _ARPAKIT_LIB_MODULE_VERSION = "3.0"
@@ -322,6 +324,17 @@ class SimpleMiddleware(BaseMiddleware, ABC):
322
324
  self._logger = logging.getLogger(self.__class__.__name__)
323
325
 
324
326
 
327
+ class BaseTransmittedTgBotData(BaseModel):
328
+ model_config = ConfigDict(extra="ignore", arbitrary_types_allowed=True, from_attributes=True)
329
+
330
+ tg_bot: Bot
331
+ settings: SimpleSettings | None = None
332
+
333
+
334
+ class SimpleTransmittedTgBotData(BaseTransmittedTgBotData):
335
+ sqlalchemy_db: SQLAlchemyDB | None = None
336
+
337
+
325
338
  def create_aiogram_tg_bot(*, tg_bot_token: str, tg_bot_proxy_url: str | None = None) -> Bot:
326
339
  session: AiohttpSession | None = None
327
340
  if tg_bot_proxy_url:
@@ -31,6 +31,7 @@ from arpakitlib.ar_enumeration_util import Enumeration
31
31
  from arpakitlib.ar_json_util import safely_transfer_to_json_str_to_json_obj
32
32
  from arpakitlib.ar_logging_util import setup_normal_logging
33
33
  from arpakitlib.ar_operation_execution_util import ExecuteOperationWorker
34
+ from arpakitlib.ar_settings_util import SimpleSettings
34
35
  from arpakitlib.ar_sqlalchemy_model_util import StoryLogDBM
35
36
  from arpakitlib.ar_sqlalchemy_util import SQLAlchemyDB
36
37
  from arpakitlib.ar_type_util import raise_for_type, raise_if_not_async_func
@@ -427,6 +428,12 @@ class AsyncSafeRunWorkerStartupAPIEvent(BaseStartupAPIEvent):
427
428
  class BaseTransmittedAPIData(BaseModel):
428
429
  model_config = ConfigDict(extra="ignore", arbitrary_types_allowed=True, from_attributes=True)
429
430
 
431
+ settings: SimpleSettings | None = None
432
+
433
+
434
+ class SimpleTransmittedAPIData(BaseTransmittedAPIData):
435
+ sqlalchemy_db: SQLAlchemyDB | None = None
436
+
430
437
 
431
438
  def get_transmitted_api_data(request: starlette.requests.Request) -> BaseTransmittedAPIData:
432
439
  return request.app.state.transmitted_api_data
@@ -0,0 +1,33 @@
1
+ from pydantic import ConfigDict, field_validator
2
+ from pydantic_settings import BaseSettings
3
+
4
+ from arpakitlib.ar_enumeration_util import Enumeration
5
+
6
+
7
+ class SimpleSettings(BaseSettings):
8
+ model_config = ConfigDict(extra="ignore")
9
+
10
+ class ModeTypes(Enumeration):
11
+ local: str = "local"
12
+ test: str = "preprod"
13
+ prod: str = "prod"
14
+
15
+ mode_type: str = ModeTypes.local
16
+
17
+ @field_validator("mode_type")
18
+ @classmethod
19
+ def validate_mode_type(cls, v: str):
20
+ cls.ModeTypes.parse_and_validate_values(v)
21
+ return v
22
+
23
+ @property
24
+ def is_mode_type_local(self) -> bool:
25
+ return self.mode_type == self.ModeTypes.local
26
+
27
+ @property
28
+ def is_mode_type_test(self) -> bool:
29
+ return self.mode_type == self.ModeTypes.test
30
+
31
+ @property
32
+ def is_mode_type_prod(self) -> bool:
33
+ return self.mode_type == self.ModeTypes.prod
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "arpakitlib"
3
- version = "1.6.43"
3
+ version = "1.6.45"
4
4
  description = "arpakitlib"
5
5
  authors = ["arpakit <arpakit@gmail.com>", "arpakit <support@arpakit.com>"]
6
6
  license = "Apache License 2.0"
@@ -1,23 +0,0 @@
1
- from pydantic import ConfigDict, field_validator
2
- from pydantic_settings import BaseSettings
3
-
4
- from arpakitlib.ar_enumeration_util import Enumeration
5
-
6
-
7
- class ModeTypes(Enumeration):
8
- local: str = "local"
9
- dev: str = "dev"
10
- preprod: str = "preprod"
11
- prod: str = "prod"
12
-
13
-
14
- class SimpleSettings(BaseSettings):
15
- model_config = ConfigDict(extra="ignore")
16
-
17
- mode_type: str
18
-
19
- @field_validator("mode_type")
20
- @classmethod
21
- def validate_mode_type(cls, v: str):
22
- ModeTypes.parse_and_validate_values(v)
23
- return v
File without changes
File without changes
File without changes