django-cfg 1.4.48__py3-none-any.whl → 1.5.7__py3-none-any.whl

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.

Potentially problematic release.


This version of django-cfg might be problematic. Click here for more details.

Files changed (1022) hide show
  1. django_cfg/__init__.py +6 -1
  2. django_cfg/apps/api/endpoints/README.md +144 -0
  3. django_cfg/apps/api/endpoints/endpoints_status/__init__.py +13 -0
  4. django_cfg/apps/api/endpoints/urls.py +13 -6
  5. django_cfg/apps/api/endpoints/urls_list/__init__.py +10 -0
  6. django_cfg/apps/api/endpoints/urls_list/serializers.py +74 -0
  7. django_cfg/apps/api/endpoints/urls_list/views.py +231 -0
  8. django_cfg/apps/api/health/drf_views.py +36 -0
  9. django_cfg/apps/api/health/serializers.py +4 -0
  10. django_cfg/apps/business/accounts/admin/inlines.py +177 -0
  11. django_cfg/apps/business/accounts/admin/user_admin.py +318 -0
  12. django_cfg/apps/business/accounts/apps.py +19 -0
  13. django_cfg/apps/business/accounts/managers/user_manager.py +299 -0
  14. django_cfg/apps/business/accounts/migrations/0001_initial.py +119 -0
  15. django_cfg/apps/business/accounts/services/otp_service.py +194 -0
  16. django_cfg/apps/business/accounts/views/profile.py +175 -0
  17. django_cfg/apps/business/agents/__init__.py +68 -0
  18. django_cfg/apps/business/agents/apps.py +31 -0
  19. django_cfg/apps/business/agents/integration/registry.py +348 -0
  20. django_cfg/apps/business/agents/management/commands/create_agent.py +366 -0
  21. django_cfg/apps/business/agents/management/commands/orchestrator_status.py +192 -0
  22. django_cfg/apps/business/agents/patterns/content_agents.py +235 -0
  23. django_cfg/apps/business/knowbase/__init__.py +27 -0
  24. django_cfg/apps/business/knowbase/apps.py +75 -0
  25. django_cfg/apps/business/knowbase/examples/__init__.py +3 -0
  26. django_cfg/apps/business/knowbase/examples/external_data_usage.py +194 -0
  27. django_cfg/apps/business/knowbase/mixins/examples/vehicle_model_example.py +200 -0
  28. django_cfg/apps/business/knowbase/mixins/service.py +364 -0
  29. django_cfg/apps/business/knowbase/models/external_data.py +370 -0
  30. django_cfg/apps/business/knowbase/services/archive/vectorization_service.py +365 -0
  31. django_cfg/apps/business/knowbase/services/embedding/async_processor.py +242 -0
  32. django_cfg/apps/business/knowbase/services/embedding/batch_processor.py +253 -0
  33. django_cfg/apps/business/knowbase/services/embedding/processors.py +152 -0
  34. django_cfg/apps/business/knowbase/services/embedding/utils.py +176 -0
  35. django_cfg/apps/business/knowbase/tasks/document_processing.py +354 -0
  36. django_cfg/apps/business/knowbase/utils/chunk_settings.py +264 -0
  37. django_cfg/apps/business/knowbase/views/archive_views.py +472 -0
  38. django_cfg/apps/business/knowbase/views/base.py +51 -0
  39. django_cfg/apps/business/leads/apps.py +16 -0
  40. django_cfg/apps/business/newsletter/admin/newsletter_admin.py +798 -0
  41. django_cfg/apps/business/newsletter/apps.py +22 -0
  42. django_cfg/apps/business/newsletter/management/commands/test_newsletter.py +139 -0
  43. django_cfg/apps/business/payments/__init__.py +14 -0
  44. django_cfg/apps/business/payments/admin/balance_admin.py +375 -0
  45. django_cfg/apps/business/payments/admin/payment_admin.py +293 -0
  46. django_cfg/apps/business/payments/admin/withdrawal_admin.py +320 -0
  47. django_cfg/apps/business/payments/apps.py +23 -0
  48. django_cfg/apps/business/payments/management/commands/check_payment_status.py +290 -0
  49. django_cfg/apps/business/payments/management/commands/create_payment.py +346 -0
  50. django_cfg/apps/business/payments/management/commands/sync_currencies.py +254 -0
  51. django_cfg/apps/business/payments/urls.py +14 -0
  52. django_cfg/apps/business/support/apps.py +11 -0
  53. django_cfg/apps/business/support/managers/message_manager.py +34 -0
  54. django_cfg/apps/business/support/managers/ticket_manager.py +68 -0
  55. django_cfg/apps/business/support/utils/support_email_service.py +111 -0
  56. django_cfg/apps/business/support/views/api.py +178 -0
  57. django_cfg/apps/integrations/centrifugo/__init__.py +57 -0
  58. django_cfg/apps/integrations/centrifugo/_cfg/README_DEPENDENCIES.md +260 -0
  59. django_cfg/apps/integrations/centrifugo/_cfg/__init__.py +25 -0
  60. django_cfg/apps/integrations/centrifugo/_cfg/check_deps.py +34 -0
  61. django_cfg/apps/integrations/centrifugo/_cfg/dependencies.py +309 -0
  62. django_cfg/apps/integrations/centrifugo/admin/__init__.py +13 -0
  63. django_cfg/apps/integrations/centrifugo/admin/centrifugo_log.py +211 -0
  64. django_cfg/apps/integrations/centrifugo/admin/config.py +82 -0
  65. django_cfg/apps/integrations/centrifugo/apps.py +100 -0
  66. django_cfg/apps/integrations/centrifugo/codegen/IMPLEMENTATION_SUMMARY.md +475 -0
  67. django_cfg/apps/integrations/centrifugo/codegen/README.md +242 -0
  68. django_cfg/apps/integrations/centrifugo/codegen/USAGE.md +616 -0
  69. django_cfg/apps/integrations/centrifugo/codegen/__init__.py +19 -0
  70. django_cfg/apps/integrations/centrifugo/codegen/discovery.py +246 -0
  71. django_cfg/apps/integrations/centrifugo/codegen/generators/go_thin/__init__.py +5 -0
  72. django_cfg/apps/integrations/centrifugo/codegen/generators/go_thin/generator.py +174 -0
  73. django_cfg/apps/integrations/centrifugo/codegen/generators/go_thin/templates/README.md.j2 +182 -0
  74. django_cfg/apps/integrations/centrifugo/codegen/generators/go_thin/templates/client.go.j2 +64 -0
  75. django_cfg/apps/integrations/centrifugo/codegen/generators/go_thin/templates/go.mod.j2 +10 -0
  76. django_cfg/apps/integrations/centrifugo/codegen/generators/go_thin/templates/rpc_client.go.j2 +300 -0
  77. django_cfg/apps/integrations/centrifugo/codegen/generators/go_thin/templates/rpc_client.go.j2.old +267 -0
  78. django_cfg/apps/integrations/centrifugo/codegen/generators/go_thin/templates/types.go.j2 +16 -0
  79. django_cfg/apps/integrations/centrifugo/codegen/generators/python_thin/__init__.py +7 -0
  80. django_cfg/apps/integrations/centrifugo/codegen/generators/python_thin/generator.py +241 -0
  81. django_cfg/apps/integrations/centrifugo/codegen/generators/python_thin/templates/README.md.j2 +128 -0
  82. django_cfg/apps/integrations/centrifugo/codegen/generators/python_thin/templates/__init__.py.j2 +22 -0
  83. django_cfg/apps/integrations/centrifugo/codegen/generators/python_thin/templates/client.py.j2 +73 -0
  84. django_cfg/apps/integrations/centrifugo/codegen/generators/python_thin/templates/models.py.j2 +19 -0
  85. django_cfg/apps/integrations/centrifugo/codegen/generators/python_thin/templates/requirements.txt.j2 +8 -0
  86. django_cfg/apps/integrations/centrifugo/codegen/generators/python_thin/templates/rpc_client.py.j2 +193 -0
  87. django_cfg/apps/integrations/centrifugo/codegen/generators/typescript_thin/__init__.py +5 -0
  88. django_cfg/apps/integrations/centrifugo/codegen/generators/typescript_thin/generator.py +124 -0
  89. django_cfg/apps/integrations/centrifugo/codegen/generators/typescript_thin/templates/README.md.j2 +38 -0
  90. django_cfg/apps/integrations/centrifugo/codegen/generators/typescript_thin/templates/client.ts.j2 +25 -0
  91. django_cfg/apps/integrations/centrifugo/codegen/generators/typescript_thin/templates/index.ts.j2 +12 -0
  92. django_cfg/apps/integrations/centrifugo/codegen/generators/typescript_thin/templates/package.json.j2 +13 -0
  93. django_cfg/apps/integrations/centrifugo/codegen/generators/typescript_thin/templates/rpc-client.ts.j2 +137 -0
  94. django_cfg/apps/integrations/centrifugo/codegen/generators/typescript_thin/templates/tsconfig.json.j2 +14 -0
  95. django_cfg/apps/integrations/centrifugo/codegen/generators/typescript_thin/templates/types.ts.j2 +9 -0
  96. django_cfg/apps/integrations/centrifugo/codegen/utils/__init__.py +37 -0
  97. django_cfg/apps/integrations/centrifugo/codegen/utils/naming.py +155 -0
  98. django_cfg/apps/integrations/centrifugo/codegen/utils/type_converter.py +349 -0
  99. django_cfg/apps/integrations/centrifugo/decorators.py +137 -0
  100. django_cfg/apps/integrations/centrifugo/management/__init__.py +1 -0
  101. django_cfg/apps/integrations/centrifugo/management/commands/__init__.py +1 -0
  102. django_cfg/apps/integrations/centrifugo/management/commands/generate_centrifugo_clients.py +254 -0
  103. django_cfg/apps/integrations/centrifugo/managers/__init__.py +12 -0
  104. django_cfg/apps/integrations/centrifugo/managers/centrifugo_log.py +264 -0
  105. django_cfg/apps/integrations/centrifugo/migrations/0001_initial.py +164 -0
  106. django_cfg/apps/integrations/centrifugo/migrations/__init__.py +3 -0
  107. django_cfg/apps/integrations/centrifugo/models/__init__.py +11 -0
  108. django_cfg/apps/integrations/centrifugo/models/centrifugo_log.py +210 -0
  109. django_cfg/apps/integrations/centrifugo/registry.py +106 -0
  110. django_cfg/apps/integrations/centrifugo/router.py +125 -0
  111. django_cfg/apps/integrations/centrifugo/serializers/__init__.py +40 -0
  112. django_cfg/apps/integrations/centrifugo/serializers/admin_api.py +264 -0
  113. django_cfg/apps/integrations/centrifugo/serializers/channels.py +29 -0
  114. django_cfg/apps/integrations/centrifugo/serializers/health.py +17 -0
  115. django_cfg/apps/integrations/centrifugo/serializers/publishes.py +18 -0
  116. django_cfg/apps/integrations/centrifugo/serializers/stats.py +21 -0
  117. django_cfg/apps/integrations/centrifugo/services/__init__.py +12 -0
  118. django_cfg/apps/integrations/centrifugo/services/client/__init__.py +29 -0
  119. django_cfg/apps/integrations/centrifugo/services/client/client.py +582 -0
  120. django_cfg/apps/integrations/centrifugo/services/client/config.py +236 -0
  121. django_cfg/apps/integrations/centrifugo/services/client/exceptions.py +212 -0
  122. django_cfg/apps/integrations/centrifugo/services/config_helper.py +63 -0
  123. django_cfg/apps/integrations/centrifugo/services/dashboard_notifier.py +157 -0
  124. django_cfg/apps/integrations/centrifugo/services/logging.py +677 -0
  125. django_cfg/apps/integrations/centrifugo/urls.py +31 -0
  126. django_cfg/apps/integrations/centrifugo/views/__init__.py +13 -0
  127. django_cfg/apps/integrations/centrifugo/views/admin_api.py +377 -0
  128. django_cfg/apps/integrations/centrifugo/views/monitoring.py +393 -0
  129. django_cfg/apps/integrations/centrifugo/views/testing_api.py +481 -0
  130. django_cfg/apps/integrations/grpc/__init__.py +9 -0
  131. django_cfg/apps/integrations/grpc/_cfg/README_DEPENDENCIES.md +307 -0
  132. django_cfg/apps/integrations/grpc/_cfg/__init__.py +25 -0
  133. django_cfg/apps/integrations/grpc/_cfg/check_deps.py +34 -0
  134. django_cfg/apps/integrations/grpc/_cfg/dependencies.py +484 -0
  135. django_cfg/apps/integrations/grpc/admin/__init__.py +11 -0
  136. django_cfg/apps/integrations/grpc/admin/config.py +157 -0
  137. django_cfg/apps/integrations/grpc/admin/grpc_request_log.py +252 -0
  138. django_cfg/apps/integrations/grpc/apps.py +108 -0
  139. django_cfg/apps/integrations/grpc/auth/__init__.py +9 -0
  140. django_cfg/apps/integrations/grpc/auth/jwt_auth.py +295 -0
  141. django_cfg/apps/integrations/grpc/interceptors/__init__.py +19 -0
  142. django_cfg/apps/integrations/grpc/interceptors/errors.py +241 -0
  143. django_cfg/apps/integrations/grpc/interceptors/logging.py +270 -0
  144. django_cfg/apps/integrations/grpc/interceptors/metrics.py +306 -0
  145. django_cfg/apps/integrations/grpc/interceptors/request_logger.py +515 -0
  146. django_cfg/apps/integrations/grpc/management/__init__.py +1 -0
  147. django_cfg/apps/integrations/grpc/management/commands/rungrpc.py +443 -0
  148. django_cfg/apps/integrations/grpc/managers/__init__.py +12 -0
  149. django_cfg/apps/integrations/grpc/managers/grpc_request_log.py +310 -0
  150. django_cfg/apps/integrations/grpc/managers/grpc_server_status.py +288 -0
  151. django_cfg/apps/integrations/grpc/migrations/0001_initial.py +69 -0
  152. django_cfg/apps/integrations/grpc/migrations/0002_rename_django_cfg__service_4c4a8e_idx_django_cfg__service_584308_idx_and_more.py +38 -0
  153. django_cfg/apps/integrations/grpc/migrations/0003_grpcserverstatus.py +119 -0
  154. django_cfg/apps/integrations/grpc/migrations/0004_grpcserverstatus_registered_services.py +22 -0
  155. django_cfg/apps/integrations/grpc/models/__init__.py +11 -0
  156. django_cfg/apps/integrations/grpc/models/grpc_request_log.py +219 -0
  157. django_cfg/apps/integrations/grpc/models/grpc_server_status.py +270 -0
  158. django_cfg/apps/integrations/grpc/serializers/__init__.py +67 -0
  159. django_cfg/apps/integrations/grpc/serializers/charts.py +218 -0
  160. django_cfg/apps/integrations/grpc/serializers/config.py +106 -0
  161. django_cfg/apps/integrations/grpc/serializers/health.py +18 -0
  162. django_cfg/apps/integrations/grpc/serializers/requests.py +18 -0
  163. django_cfg/apps/integrations/grpc/serializers/service_registry.py +191 -0
  164. django_cfg/apps/integrations/grpc/serializers/services.py +50 -0
  165. django_cfg/apps/integrations/grpc/serializers/stats.py +22 -0
  166. django_cfg/apps/integrations/grpc/serializers/testing.py +105 -0
  167. django_cfg/apps/integrations/grpc/services/__init__.py +39 -0
  168. django_cfg/apps/integrations/grpc/services/base.py +375 -0
  169. django_cfg/apps/integrations/grpc/services/chart_generator.py +475 -0
  170. django_cfg/apps/integrations/grpc/services/config_helper.py +146 -0
  171. django_cfg/apps/integrations/grpc/services/discovery.py +571 -0
  172. django_cfg/apps/integrations/grpc/services/grpc_client.py +590 -0
  173. django_cfg/apps/integrations/grpc/services/monitoring_service.py +291 -0
  174. django_cfg/apps/integrations/grpc/services/service_registry.py +328 -0
  175. django_cfg/apps/integrations/grpc/services/testing_service.py +326 -0
  176. django_cfg/apps/integrations/grpc/testing/__init__.py +12 -0
  177. django_cfg/apps/integrations/grpc/testing/examples.py +263 -0
  178. django_cfg/apps/integrations/grpc/urls.py +39 -0
  179. django_cfg/apps/integrations/grpc/utils/__init__.py +18 -0
  180. django_cfg/apps/integrations/grpc/utils/proto_gen.py +423 -0
  181. django_cfg/apps/integrations/grpc/views/__init__.py +15 -0
  182. django_cfg/apps/integrations/grpc/views/charts.py +217 -0
  183. django_cfg/apps/integrations/grpc/views/config.py +191 -0
  184. django_cfg/apps/integrations/grpc/views/monitoring.py +388 -0
  185. django_cfg/apps/integrations/grpc/views/services.py +289 -0
  186. django_cfg/apps/integrations/grpc/views/testing.py +306 -0
  187. django_cfg/apps/integrations/rq/__init__.py +9 -0
  188. django_cfg/apps/integrations/rq/_cfg/__init__.py +28 -0
  189. django_cfg/apps/integrations/rq/_cfg/dependencies.py +313 -0
  190. django_cfg/apps/integrations/rq/apps.py +157 -0
  191. django_cfg/apps/integrations/rq/management/__init__.py +1 -0
  192. django_cfg/apps/integrations/rq/management/commands/__init__.py +1 -0
  193. django_cfg/apps/integrations/rq/management/commands/rqscheduler.py +31 -0
  194. django_cfg/apps/integrations/rq/management/commands/rqstats.py +33 -0
  195. django_cfg/apps/integrations/rq/management/commands/rqworker.py +31 -0
  196. django_cfg/apps/integrations/rq/management/commands/rqworker_pool.py +27 -0
  197. django_cfg/apps/integrations/rq/serializers/__init__.py +40 -0
  198. django_cfg/apps/integrations/rq/serializers/health.py +60 -0
  199. django_cfg/apps/integrations/rq/serializers/job.py +100 -0
  200. django_cfg/apps/integrations/rq/serializers/queue.py +80 -0
  201. django_cfg/apps/integrations/rq/serializers/schedule.py +178 -0
  202. django_cfg/apps/integrations/rq/serializers/testing.py +139 -0
  203. django_cfg/apps/integrations/rq/serializers/worker.py +58 -0
  204. django_cfg/apps/integrations/rq/services/__init__.py +25 -0
  205. django_cfg/apps/integrations/rq/services/config_helper.py +233 -0
  206. django_cfg/apps/integrations/rq/services/models/README.md +417 -0
  207. django_cfg/apps/integrations/rq/services/models/__init__.py +30 -0
  208. django_cfg/apps/integrations/rq/services/models/event.py +123 -0
  209. django_cfg/apps/integrations/rq/services/models/job.py +99 -0
  210. django_cfg/apps/integrations/rq/services/models/queue.py +92 -0
  211. django_cfg/apps/integrations/rq/services/models/worker.py +104 -0
  212. django_cfg/apps/integrations/rq/services/rq_converters.py +183 -0
  213. django_cfg/apps/integrations/rq/tasks/__init__.py +23 -0
  214. django_cfg/apps/integrations/rq/tasks/demo_tasks.py +284 -0
  215. django_cfg/apps/integrations/rq/urls.py +54 -0
  216. django_cfg/apps/integrations/rq/views/__init__.py +19 -0
  217. django_cfg/apps/integrations/rq/views/jobs.py +882 -0
  218. django_cfg/apps/integrations/rq/views/monitoring.py +248 -0
  219. django_cfg/apps/integrations/rq/views/queues.py +261 -0
  220. django_cfg/apps/integrations/rq/views/schedule.py +400 -0
  221. django_cfg/apps/integrations/rq/views/testing.py +761 -0
  222. django_cfg/apps/integrations/rq/views/workers.py +195 -0
  223. django_cfg/apps/system/dashboard/TRANSACTION_FIX.md +73 -0
  224. django_cfg/apps/system/dashboard/__init__.py +8 -0
  225. django_cfg/apps/system/dashboard/apps.py +23 -0
  226. django_cfg/apps/system/dashboard/serializers/__init__.py +67 -0
  227. django_cfg/apps/system/dashboard/serializers/activity.py +38 -0
  228. django_cfg/apps/system/dashboard/serializers/apizones.py +26 -0
  229. django_cfg/apps/system/dashboard/serializers/base.py +16 -0
  230. django_cfg/apps/system/dashboard/serializers/charts.py +44 -0
  231. django_cfg/apps/system/dashboard/serializers/commands.py +55 -0
  232. django_cfg/apps/system/dashboard/serializers/config.py +245 -0
  233. django_cfg/apps/system/dashboard/serializers/overview.py +45 -0
  234. django_cfg/apps/system/dashboard/serializers/statistics.py +46 -0
  235. django_cfg/apps/system/dashboard/serializers/system.py +58 -0
  236. django_cfg/apps/system/dashboard/services/__init__.py +24 -0
  237. django_cfg/apps/system/dashboard/services/apizones_service.py +119 -0
  238. django_cfg/apps/system/dashboard/services/charts_service.py +267 -0
  239. django_cfg/apps/system/dashboard/services/commands_security.py +228 -0
  240. django_cfg/apps/system/dashboard/services/commands_service.py +341 -0
  241. django_cfg/apps/system/dashboard/services/config_service.py +393 -0
  242. django_cfg/apps/system/dashboard/services/overview_service.py +205 -0
  243. django_cfg/apps/system/dashboard/services/statistics_service.py +402 -0
  244. django_cfg/apps/system/dashboard/services/system_health_service.py +328 -0
  245. django_cfg/apps/system/dashboard/urls.py +45 -0
  246. django_cfg/apps/system/dashboard/views/__init__.py +25 -0
  247. django_cfg/apps/system/dashboard/views/activity_views.py +81 -0
  248. django_cfg/apps/system/dashboard/views/apizones_views.py +72 -0
  249. django_cfg/apps/system/dashboard/views/charts_views.py +158 -0
  250. django_cfg/apps/system/dashboard/views/commands_views.py +158 -0
  251. django_cfg/apps/system/dashboard/views/config_views.py +69 -0
  252. django_cfg/apps/system/dashboard/views/overview_views.py +106 -0
  253. django_cfg/apps/system/dashboard/views/statistics_views.py +104 -0
  254. django_cfg/apps/system/dashboard/views/system_views.py +72 -0
  255. django_cfg/apps/system/frontend/JWT_AUTO_INJECTION.md +224 -0
  256. django_cfg/apps/system/frontend/__init__.py +18 -0
  257. django_cfg/apps/system/frontend/apps.py +15 -0
  258. django_cfg/apps/system/frontend/setup.py +105 -0
  259. django_cfg/apps/system/frontend/templates/frontend/404.html +87 -0
  260. django_cfg/apps/system/frontend/test_routing.py +134 -0
  261. django_cfg/apps/system/frontend/urls.py +12 -0
  262. django_cfg/apps/system/frontend/views.py +376 -0
  263. django_cfg/apps/system/maintenance/__init__.py +56 -0
  264. django_cfg/apps/system/maintenance/admin/api_key_admin.py +209 -0
  265. django_cfg/apps/system/maintenance/admin/scheduled_admin.py +226 -0
  266. django_cfg/apps/system/maintenance/admin/site_admin.py +287 -0
  267. django_cfg/apps/system/maintenance/apps.py +18 -0
  268. django_cfg/apps/system/maintenance/migrations/__init__.py +0 -0
  269. django_cfg/apps/system/maintenance/models/__init__.py +29 -0
  270. django_cfg/apps/system/maintenance/services/__init__.py +42 -0
  271. django_cfg/apps/urls.py +63 -111
  272. django_cfg/cli/commands/info.py +1 -1
  273. django_cfg/cli/utils.py +1 -1
  274. django_cfg/config.py +6 -4
  275. django_cfg/core/backends/__init__.py +1 -0
  276. django_cfg/core/backends/smtp.py +69 -0
  277. django_cfg/core/base/config_model.py +69 -65
  278. django_cfg/core/builders/apps_builder.py +29 -74
  279. django_cfg/core/builders/security_builder.py +271 -3
  280. django_cfg/core/constants.py +5 -0
  281. django_cfg/core/debug/README.md +116 -0
  282. django_cfg/core/debug/__init__.py +7 -0
  283. django_cfg/core/debug/example_config.py +63 -0
  284. django_cfg/core/debug/warnings_helper.py +121 -0
  285. django_cfg/core/generation/core_generators/static.py +5 -0
  286. django_cfg/core/generation/core_generators/templates.py +38 -23
  287. django_cfg/core/generation/data_generators/cache.py +28 -2
  288. django_cfg/core/generation/integration_generators/__init__.py +4 -3
  289. django_cfg/core/generation/integration_generators/api.py +9 -0
  290. django_cfg/core/generation/integration_generators/django_rq.py +80 -0
  291. django_cfg/core/generation/integration_generators/grpc_generator.py +318 -0
  292. django_cfg/core/generation/integration_generators/third_party.py +8 -8
  293. django_cfg/core/generation/orchestrator.py +29 -6
  294. django_cfg/core/generation/security_generators/crypto_fields.py +72 -0
  295. django_cfg/core/integration/display/__init__.py +2 -0
  296. django_cfg/core/integration/display/base.py +51 -0
  297. django_cfg/core/integration/display/grpc_display.py +144 -0
  298. django_cfg/core/integration/display/startup.py +49 -75
  299. django_cfg/core/integration/url_integration.py +88 -3
  300. django_cfg/core/utils/__init__.py +5 -0
  301. django_cfg/core/utils/url_helpers.py +73 -0
  302. django_cfg/management/commands/check_endpoints.py +1 -1
  303. django_cfg/management/commands/superuser.py +0 -32
  304. django_cfg/middleware/README.md +372 -0
  305. django_cfg/middleware/__init__.py +6 -0
  306. django_cfg/middleware/admin_notifications.py +206 -0
  307. django_cfg/middleware/authentication.py +184 -0
  308. django_cfg/mixins/__init__.py +14 -0
  309. django_cfg/mixins/admin_api.py +37 -0
  310. django_cfg/mixins/client_api.py +39 -0
  311. django_cfg/mixins/superadmin_api.py +59 -0
  312. django_cfg/models/__init__.py +8 -1
  313. django_cfg/models/api/config.py +2 -2
  314. django_cfg/models/api/drf/config.py +4 -2
  315. django_cfg/models/api/grpc/__init__.py +59 -0
  316. django_cfg/models/api/grpc/config.py +364 -0
  317. django_cfg/models/django/__init__.py +5 -0
  318. django_cfg/models/django/axes.py +187 -0
  319. django_cfg/models/django/constance.py +3 -9
  320. django_cfg/models/django/crypto_fields.py +135 -0
  321. django_cfg/models/django/django_rq.py +632 -0
  322. django_cfg/models/django/revolution_legacy.py +8 -8
  323. django_cfg/models/services/email.py +11 -1
  324. django_cfg/modules/base.py +26 -13
  325. django_cfg/modules/django_admin/__init__.py +12 -0
  326. django_cfg/modules/django_admin/apps.py +19 -0
  327. django_cfg/modules/django_admin/base/pydantic_admin.py +277 -7
  328. django_cfg/modules/django_admin/config/__init__.py +11 -0
  329. django_cfg/modules/django_admin/config/admin_config.py +35 -1
  330. django_cfg/modules/django_admin/config/background_task_config.py +76 -0
  331. django_cfg/modules/django_admin/config/documentation_config.py +406 -0
  332. django_cfg/modules/django_admin/config/field_config.py +111 -0
  333. django_cfg/modules/django_admin/config/resource_config.py +129 -0
  334. django_cfg/modules/django_admin/templates/django_admin/change_form_docs.html +23 -0
  335. django_cfg/modules/django_admin/templates/django_admin/change_list_docs.html +23 -0
  336. django_cfg/modules/django_admin/templates/django_admin/documentation_block.html +303 -0
  337. django_cfg/modules/django_admin/templates/django_admin/markdown_docs_block.html +37 -0
  338. django_cfg/modules/django_admin/templates/django_admin/widgets/encrypted_field.html +80 -0
  339. django_cfg/modules/django_admin/templates/django_admin/widgets/encrypted_password.html +62 -0
  340. django_cfg/modules/django_admin/utils/__init__.py +43 -2
  341. django_cfg/modules/django_admin/utils/badges/__init__.py +13 -0
  342. django_cfg/modules/django_admin/utils/badges/status_badges.py +171 -0
  343. django_cfg/modules/django_admin/utils/displays/__init__.py +13 -0
  344. django_cfg/modules/django_admin/utils/displays/data_displays.py +203 -0
  345. django_cfg/modules/django_admin/utils/html/__init__.py +26 -0
  346. django_cfg/modules/django_admin/utils/html/badges.py +55 -0
  347. django_cfg/modules/django_admin/utils/html/base.py +167 -0
  348. django_cfg/modules/django_admin/utils/html/code.py +87 -0
  349. django_cfg/modules/django_admin/utils/html/composition.py +205 -0
  350. django_cfg/modules/django_admin/utils/html/formatting.py +231 -0
  351. django_cfg/modules/django_admin/utils/html/keyvalue.py +219 -0
  352. django_cfg/modules/django_admin/utils/html/markdown_integration.py +108 -0
  353. django_cfg/modules/django_admin/utils/html/progress.py +127 -0
  354. django_cfg/modules/django_admin/utils/html_builder.py +55 -194
  355. django_cfg/modules/django_admin/utils/markdown/__init__.py +21 -0
  356. django_cfg/modules/django_admin/utils/markdown/mermaid_plugin.py +288 -0
  357. django_cfg/modules/django_admin/utils/markdown/renderer.py +360 -0
  358. django_cfg/modules/django_admin/widgets/__init__.py +3 -0
  359. django_cfg/modules/django_admin/widgets/encrypted_field_widget.py +66 -0
  360. django_cfg/modules/django_admin/widgets/registry.py +42 -0
  361. django_cfg/modules/django_client/core/__init__.py +3 -1
  362. django_cfg/modules/django_client/core/archive/manager.py +14 -0
  363. django_cfg/modules/django_client/core/config/config.py +8 -0
  364. django_cfg/modules/django_client/core/generator/__init__.py +80 -2
  365. django_cfg/modules/django_client/core/generator/go/__init__.py +14 -0
  366. django_cfg/modules/django_client/core/generator/go/client_generator.py +124 -0
  367. django_cfg/modules/django_client/core/generator/go/files_generator.py +133 -0
  368. django_cfg/modules/django_client/core/generator/go/generator.py +203 -0
  369. django_cfg/modules/django_client/core/generator/go/models_generator.py +304 -0
  370. django_cfg/modules/django_client/core/generator/go/naming.py +193 -0
  371. django_cfg/modules/django_client/core/generator/go/operations_generator.py +134 -0
  372. django_cfg/modules/django_client/core/generator/go/templates/Makefile.j2 +38 -0
  373. django_cfg/modules/django_client/core/generator/go/templates/README.md.j2 +55 -0
  374. django_cfg/modules/django_client/core/generator/go/templates/client.go.j2 +122 -0
  375. django_cfg/modules/django_client/core/generator/go/templates/enums.go.j2 +49 -0
  376. django_cfg/modules/django_client/core/generator/go/templates/errors.go.j2 +182 -0
  377. django_cfg/modules/django_client/core/generator/go/templates/go.mod.j2 +6 -0
  378. django_cfg/modules/django_client/core/generator/go/templates/main_client.go.j2 +60 -0
  379. django_cfg/modules/django_client/core/generator/go/templates/middleware.go.j2 +388 -0
  380. django_cfg/modules/django_client/core/generator/go/templates/models.go.j2 +28 -0
  381. django_cfg/modules/django_client/core/generator/go/templates/operations_client.go.j2 +142 -0
  382. django_cfg/modules/django_client/core/generator/go/templates/validation.go.j2 +217 -0
  383. django_cfg/modules/django_client/core/generator/go/type_mapper.py +380 -0
  384. django_cfg/modules/django_client/core/generator/proto/__init__.py +17 -0
  385. django_cfg/modules/django_client/core/generator/proto/generator.py +461 -0
  386. django_cfg/modules/django_client/core/generator/proto/messages_generator.py +260 -0
  387. django_cfg/modules/django_client/core/generator/proto/services_generator.py +295 -0
  388. django_cfg/modules/django_client/core/generator/proto/test_proto_generator.py +262 -0
  389. django_cfg/modules/django_client/core/generator/proto/type_mapper.py +153 -0
  390. django_cfg/modules/django_client/core/generator/python/models_generator.py +14 -9
  391. django_cfg/modules/django_client/core/generator/python/operations_generator.py +4 -6
  392. django_cfg/modules/django_client/core/generator/python/templates/client/main_client.py.jinja +0 -2
  393. django_cfg/modules/django_client/core/generator/python/templates/client/sync_main_client.py.jinja +0 -1
  394. django_cfg/modules/django_client/core/generator/python/templates/main_init.py.jinja +2 -1
  395. django_cfg/modules/django_client/core/generator/python/templates/models/enums.py.jinja +7 -1
  396. django_cfg/modules/django_client/core/generator/python/templates/models/schema_class.py.jinja +1 -1
  397. django_cfg/modules/django_client/core/generator/typescript/client_generator.py +3 -1
  398. django_cfg/modules/django_client/core/generator/typescript/operations_generator.py +13 -4
  399. django_cfg/modules/django_client/core/generator/typescript/templates/client/client.ts.jinja +33 -17
  400. django_cfg/modules/django_client/core/generator/typescript/templates/client/flat_client.ts.jinja +10 -3
  401. django_cfg/modules/django_client/core/generator/typescript/templates/fetchers/fetchers.ts.jinja +0 -1
  402. django_cfg/modules/django_client/core/generator/typescript/templates/fetchers/function.ts.jinja +1 -1
  403. django_cfg/modules/django_client/core/generator/typescript/templates/main_index.ts.jinja +7 -10
  404. django_cfg/modules/django_client/core/generator/typescript/templates/utils/http.ts.jinja +8 -3
  405. django_cfg/modules/django_client/core/ir/context.py +14 -0
  406. django_cfg/modules/django_client/core/ir/schema.py +11 -0
  407. django_cfg/modules/django_client/core/parser/base.py +85 -3
  408. django_cfg/modules/django_client/core/parser/openapi30.py +26 -1
  409. django_cfg/modules/django_client/core/parser/openapi31.py +26 -1
  410. django_cfg/modules/django_client/management/commands/generate_client.py +352 -3
  411. django_cfg/modules/django_currency/examples/example_database_usage.py +1 -1
  412. django_cfg/modules/django_import_export/README.md +19 -1
  413. django_cfg/modules/django_import_export/__init__.py +8 -0
  414. django_cfg/modules/django_import_export/apps.py +16 -0
  415. django_cfg/modules/django_import_export/templates/admin/import_export/change_list_export.html +6 -0
  416. django_cfg/modules/django_import_export/templates/admin/import_export/change_list_export_item.html +7 -0
  417. django_cfg/modules/django_import_export/templates/admin/import_export/change_list_import.html +6 -0
  418. django_cfg/modules/django_import_export/templates/admin/import_export/change_list_import_export.html +39 -0
  419. django_cfg/modules/django_import_export/templates/admin/import_export/change_list_import_item.html +7 -0
  420. django_cfg/modules/django_logging/__init__.py +2 -0
  421. django_cfg/modules/django_logging/django_logger.py +78 -8
  422. django_cfg/modules/django_tailwind/templates/django_tailwind/base.html +9 -2
  423. django_cfg/modules/django_tailwind/templates/django_tailwind/components/navbar.html +2 -2
  424. django_cfg/modules/django_twilio/sendgrid_service.py +8 -5
  425. django_cfg/modules/django_unfold/__init__.py +5 -24
  426. django_cfg/modules/django_unfold/models/__init__.py +0 -23
  427. django_cfg/modules/django_unfold/models/config.py +113 -138
  428. django_cfg/modules/django_unfold/navigation.py +317 -0
  429. django_cfg/modules/django_unfold/tailwind.py +29 -79
  430. django_cfg/modules/nextjs_admin/__init__.py +12 -0
  431. django_cfg/modules/nextjs_admin/apps.py +12 -0
  432. django_cfg/modules/nextjs_admin/models/__init__.py +5 -0
  433. django_cfg/modules/nextjs_admin/models/config.py +205 -0
  434. django_cfg/modules/nextjs_admin/templatetags/__init__.py +1 -0
  435. django_cfg/modules/nextjs_admin/templatetags/nextjs_admin.py +164 -0
  436. django_cfg/modules/nextjs_admin/urls.py +19 -0
  437. django_cfg/modules/nextjs_admin/views.py +261 -0
  438. django_cfg/pyproject.toml +16 -19
  439. django_cfg/registry/core.py +12 -3
  440. django_cfg/registry/modules.py +11 -2
  441. django_cfg/registry/third_party.py +0 -9
  442. django_cfg/routing/callbacks.py +1 -43
  443. django_cfg/static/admin/css/constance.css +44 -0
  444. django_cfg/static/admin/css/dashboard.css +6 -170
  445. django_cfg/static/admin/css/layout.css +21 -0
  446. django_cfg/static/admin/css/tabs.css +95 -0
  447. django_cfg/static/admin/css/theme.css +74 -0
  448. django_cfg/static/admin/js/alpine/activity-tracker.js +55 -0
  449. django_cfg/static/admin/js/alpine/chart.js +101 -0
  450. django_cfg/static/admin/js/alpine/command-modal.js +159 -0
  451. django_cfg/static/admin/js/alpine/commands-panel.js +139 -0
  452. django_cfg/static/admin/js/alpine/commands-section.js +260 -0
  453. django_cfg/static/admin/js/alpine/dashboard-tabs.js +46 -0
  454. django_cfg/static/admin/js/alpine/system-metrics.js +20 -0
  455. django_cfg/static/admin/js/alpine/toggle-section.js +28 -0
  456. django_cfg/static/admin/js/utils.js +60 -0
  457. django_cfg/static/frontend/admin.zip +0 -0
  458. django_cfg/static/js/api/base.mjs +6 -1
  459. django_cfg/static/js/api/centrifugo/client.mjs +164 -0
  460. django_cfg/static/js/api/centrifugo/index.mjs +13 -0
  461. django_cfg/static/js/api/index.mjs +13 -8
  462. django_cfg/static/js/api/knowbase/client.mjs +309 -0
  463. django_cfg/static/js/api/knowbase/index.mjs +13 -0
  464. django_cfg/static/js/api/payments/client.mjs +46 -1215
  465. django_cfg/static/js/api/types.mjs +240 -350
  466. django_cfg/templates/admin/DUAL_TAB_ARCHITECTURE.md +561 -0
  467. django_cfg/templates/admin/constance/includes/results_list.html +68 -11
  468. django_cfg/templates/admin/index.html +814 -61
  469. django_cfg/templates/unfold/layouts/skeleton.html +27 -0
  470. django_cfg/templatetags/django_cfg.py +348 -0
  471. django_cfg/utils/smart_defaults.py +2 -2
  472. django_cfg-1.5.7.dist-info/METADATA +619 -0
  473. django_cfg-1.5.7.dist-info/RECORD +1161 -0
  474. django_cfg/apps/accounts/admin/inlines.py +0 -177
  475. django_cfg/apps/accounts/admin/user_admin.py +0 -308
  476. django_cfg/apps/accounts/apps.py +0 -19
  477. django_cfg/apps/accounts/managers/user_manager.py +0 -299
  478. django_cfg/apps/accounts/migrations/0001_initial.py +0 -119
  479. django_cfg/apps/accounts/services/otp_service.py +0 -205
  480. django_cfg/apps/accounts/views/profile.py +0 -165
  481. django_cfg/apps/agents/__init__.py +0 -68
  482. django_cfg/apps/agents/apps.py +0 -29
  483. django_cfg/apps/agents/integration/registry.py +0 -348
  484. django_cfg/apps/agents/management/commands/create_agent.py +0 -366
  485. django_cfg/apps/agents/management/commands/orchestrator_status.py +0 -192
  486. django_cfg/apps/agents/patterns/content_agents.py +0 -235
  487. django_cfg/apps/ipc/README.md +0 -346
  488. django_cfg/apps/ipc/__init__.py +0 -51
  489. django_cfg/apps/ipc/apps.py +0 -28
  490. django_cfg/apps/ipc/serializers/__init__.py +0 -19
  491. django_cfg/apps/ipc/serializers/serializers.py +0 -229
  492. django_cfg/apps/ipc/services/__init__.py +0 -7
  493. django_cfg/apps/ipc/services/client/__init__.py +0 -23
  494. django_cfg/apps/ipc/services/client/client.py +0 -542
  495. django_cfg/apps/ipc/services/client/config.py +0 -214
  496. django_cfg/apps/ipc/services/client/exceptions.py +0 -201
  497. django_cfg/apps/ipc/services/monitor.py +0 -464
  498. django_cfg/apps/ipc/static/django_cfg_ipc/js/dashboard.mjs +0 -441
  499. django_cfg/apps/ipc/templates/django_cfg_ipc/base.html +0 -71
  500. django_cfg/apps/ipc/templates/django_cfg_ipc/dashboard.html +0 -202
  501. django_cfg/apps/ipc/urls.py +0 -21
  502. django_cfg/apps/ipc/urls_admin.py +0 -20
  503. django_cfg/apps/ipc/views/__init__.py +0 -8
  504. django_cfg/apps/ipc/views/dashboard.py +0 -15
  505. django_cfg/apps/ipc/views/viewsets.py +0 -245
  506. django_cfg/apps/knowbase/__init__.py +0 -27
  507. django_cfg/apps/knowbase/apps.py +0 -81
  508. django_cfg/apps/knowbase/examples/__init__.py +0 -3
  509. django_cfg/apps/knowbase/examples/external_data_usage.py +0 -194
  510. django_cfg/apps/knowbase/mixins/examples/vehicle_model_example.py +0 -200
  511. django_cfg/apps/knowbase/mixins/service.py +0 -364
  512. django_cfg/apps/knowbase/models/external_data.py +0 -370
  513. django_cfg/apps/knowbase/services/archive/vectorization_service.py +0 -365
  514. django_cfg/apps/knowbase/services/embedding/async_processor.py +0 -242
  515. django_cfg/apps/knowbase/services/embedding/batch_processor.py +0 -253
  516. django_cfg/apps/knowbase/services/embedding/processors.py +0 -152
  517. django_cfg/apps/knowbase/services/embedding/utils.py +0 -176
  518. django_cfg/apps/knowbase/tasks/document_processing.py +0 -354
  519. django_cfg/apps/knowbase/utils/chunk_settings.py +0 -263
  520. django_cfg/apps/knowbase/views/archive_views.py +0 -472
  521. django_cfg/apps/knowbase/views/base.py +0 -46
  522. django_cfg/apps/leads/apps.py +0 -16
  523. django_cfg/apps/maintenance/__init__.py +0 -56
  524. django_cfg/apps/maintenance/admin/api_key_admin.py +0 -211
  525. django_cfg/apps/maintenance/admin/scheduled_admin.py +0 -226
  526. django_cfg/apps/maintenance/admin/site_admin.py +0 -286
  527. django_cfg/apps/maintenance/apps.py +0 -18
  528. django_cfg/apps/maintenance/models/__init__.py +0 -29
  529. django_cfg/apps/maintenance/services/__init__.py +0 -42
  530. django_cfg/apps/newsletter/admin/newsletter_admin.py +0 -797
  531. django_cfg/apps/newsletter/apps.py +0 -22
  532. django_cfg/apps/newsletter/management/commands/test_newsletter.py +0 -139
  533. django_cfg/apps/payments/__init__.py +0 -14
  534. django_cfg/apps/payments/admin/balance_admin.py +0 -385
  535. django_cfg/apps/payments/admin/payment_admin.py +0 -313
  536. django_cfg/apps/payments/admin/withdrawal_admin.py +0 -355
  537. django_cfg/apps/payments/apps.py +0 -23
  538. django_cfg/apps/payments/management/commands/check_payment_status.py +0 -290
  539. django_cfg/apps/payments/management/commands/create_payment.py +0 -346
  540. django_cfg/apps/payments/management/commands/sync_currencies.py +0 -254
  541. django_cfg/apps/payments/urls.py +0 -14
  542. django_cfg/apps/support/apps.py +0 -11
  543. django_cfg/apps/support/managers/message_manager.py +0 -34
  544. django_cfg/apps/support/managers/ticket_manager.py +0 -68
  545. django_cfg/apps/support/utils/support_email_service.py +0 -124
  546. django_cfg/apps/support/views/api.py +0 -169
  547. django_cfg/apps/tasks/__init__.py +0 -5
  548. django_cfg/apps/tasks/admin/__init__.py +0 -11
  549. django_cfg/apps/tasks/admin/actions.py +0 -29
  550. django_cfg/apps/tasks/admin/tasks_admin.py +0 -154
  551. django_cfg/apps/tasks/apps.py +0 -17
  552. django_cfg/apps/tasks/serializers.py +0 -82
  553. django_cfg/apps/tasks/static/tasks/css/dashboard.css +0 -120
  554. django_cfg/apps/tasks/static/tasks/js/api.js +0 -100
  555. django_cfg/apps/tasks/static/tasks/js/components/DataManager.js +0 -24
  556. django_cfg/apps/tasks/static/tasks/js/components/TabManager.js +0 -85
  557. django_cfg/apps/tasks/static/tasks/js/components/TaskRenderer.js +0 -216
  558. django_cfg/apps/tasks/static/tasks/js/dashboard/main.mjs +0 -269
  559. django_cfg/apps/tasks/static/tasks/js/dashboard/overview.mjs +0 -125
  560. django_cfg/apps/tasks/static/tasks/js/dashboard/queues.mjs +0 -122
  561. django_cfg/apps/tasks/static/tasks/js/dashboard/tasks.mjs +0 -352
  562. django_cfg/apps/tasks/static/tasks/js/dashboard/workers.mjs +0 -171
  563. django_cfg/apps/tasks/tasks/__init__.py +0 -10
  564. django_cfg/apps/tasks/tasks/demo_tasks.py +0 -134
  565. django_cfg/apps/tasks/templates/tasks/components/management_actions.html +0 -50
  566. django_cfg/apps/tasks/templates/tasks/components/overview_content.html +0 -69
  567. django_cfg/apps/tasks/templates/tasks/components/queues_content.html +0 -19
  568. django_cfg/apps/tasks/templates/tasks/components/tab_navigation.html +0 -33
  569. django_cfg/apps/tasks/templates/tasks/components/tasks_content.html +0 -51
  570. django_cfg/apps/tasks/templates/tasks/components/tasks_mjs_integration.html +0 -269
  571. django_cfg/apps/tasks/templates/tasks/components/workers_content.html +0 -30
  572. django_cfg/apps/tasks/templates/tasks/layout/base.html +0 -22
  573. django_cfg/apps/tasks/templates/tasks/pages/dashboard-improved.html +0 -168
  574. django_cfg/apps/tasks/templates/tasks/pages/dashboard.html +0 -101
  575. django_cfg/apps/tasks/templates/tasks/partials/task_row_template.html +0 -40
  576. django_cfg/apps/tasks/templates/tasks/widgets/task_filters.html +0 -37
  577. django_cfg/apps/tasks/templates/tasks/widgets/task_footer.html +0 -41
  578. django_cfg/apps/tasks/templates/tasks/widgets/task_table.html +0 -50
  579. django_cfg/apps/tasks/urls.py +0 -22
  580. django_cfg/apps/tasks/urls_admin.py +0 -15
  581. django_cfg/apps/tasks/utils/__init__.py +0 -1
  582. django_cfg/apps/tasks/utils/simulator.py +0 -353
  583. django_cfg/apps/tasks/views/__init__.py +0 -16
  584. django_cfg/apps/tasks/views/api.py +0 -571
  585. django_cfg/apps/tasks/views/dashboard.py +0 -89
  586. django_cfg/core/generation/integration_generators/tasks.py +0 -92
  587. django_cfg/management/commands/rundramatiq.py +0 -24
  588. django_cfg/management/commands/rundramatiq_simulator.py +0 -22
  589. django_cfg/management/commands/task_clear.py +0 -25
  590. django_cfg/management/commands/task_status.py +0 -24
  591. django_cfg/models/tasks/__init__.py +0 -51
  592. django_cfg/models/tasks/backends.py +0 -251
  593. django_cfg/models/tasks/config.py +0 -316
  594. django_cfg/models/tasks/utils.py +0 -174
  595. django_cfg/modules/django_admin/utils/badges.py +0 -171
  596. django_cfg/modules/django_admin/utils/displays.py +0 -203
  597. django_cfg/modules/django_client/system/__init__.py +0 -24
  598. django_cfg/modules/django_client/system/base_generator.py +0 -123
  599. django_cfg/modules/django_client/system/generate_mjs_clients.py +0 -174
  600. django_cfg/modules/django_client/system/mjs_generator.py +0 -219
  601. django_cfg/modules/django_client/system/schema_parser.py +0 -195
  602. django_cfg/modules/django_client/system/templates/api_client.js.j2 +0 -87
  603. django_cfg/modules/django_client/system/templates/app_index.js.j2 +0 -13
  604. django_cfg/modules/django_client/system/templates/base_client.js.j2 +0 -166
  605. django_cfg/modules/django_client/system/templates/main_index.js.j2 +0 -80
  606. django_cfg/modules/django_client/system/templates/types.js.j2 +0 -24
  607. django_cfg/modules/django_dashboard/__init__.py +0 -23
  608. django_cfg/modules/django_dashboard/components.py +0 -312
  609. django_cfg/modules/django_dashboard/debug.py +0 -174
  610. django_cfg/modules/django_dashboard/management/commands/debug_dashboard.py +0 -109
  611. django_cfg/modules/django_dashboard/sections/__init__.py +0 -1
  612. django_cfg/modules/django_dashboard/sections/base.py +0 -129
  613. django_cfg/modules/django_dashboard/sections/commands.py +0 -33
  614. django_cfg/modules/django_dashboard/sections/documentation.py +0 -393
  615. django_cfg/modules/django_dashboard/sections/overview.py +0 -398
  616. django_cfg/modules/django_dashboard/sections/stats.py +0 -48
  617. django_cfg/modules/django_dashboard/sections/system.py +0 -74
  618. django_cfg/modules/django_logging/FIXES_SUMMARY.md +0 -276
  619. django_cfg/modules/django_logging/LOGGING_GUIDE.md +0 -504
  620. django_cfg/modules/django_tasks/__init__.py +0 -29
  621. django_cfg/modules/django_tasks/dramatiq_setup.py +0 -20
  622. django_cfg/modules/django_tasks/factory.py +0 -127
  623. django_cfg/modules/django_tasks/management/commands/rundramatiq.py +0 -253
  624. django_cfg/modules/django_tasks/management/commands/rundramatiq_simulator.py +0 -436
  625. django_cfg/modules/django_tasks/management/commands/task_clear.py +0 -226
  626. django_cfg/modules/django_tasks/management/commands/task_status.py +0 -257
  627. django_cfg/modules/django_tasks/service.py +0 -281
  628. django_cfg/modules/django_tasks/settings.py +0 -107
  629. django_cfg/modules/django_unfold/callbacks/__init__.py +0 -9
  630. django_cfg/modules/django_unfold/callbacks/actions.py +0 -51
  631. django_cfg/modules/django_unfold/callbacks/apizones.py +0 -122
  632. django_cfg/modules/django_unfold/callbacks/base.py +0 -290
  633. django_cfg/modules/django_unfold/callbacks/charts.py +0 -223
  634. django_cfg/modules/django_unfold/callbacks/commands.py +0 -40
  635. django_cfg/modules/django_unfold/callbacks/main.py +0 -294
  636. django_cfg/modules/django_unfold/callbacks/statistics.py +0 -240
  637. django_cfg/modules/django_unfold/callbacks/system.py +0 -180
  638. django_cfg/modules/django_unfold/callbacks/users.py +0 -65
  639. django_cfg/modules/django_unfold/dashboard.py +0 -338
  640. django_cfg/modules/django_unfold/models/dashboard.py +0 -207
  641. django_cfg/modules/django_unfold/models/tabs.py +0 -26
  642. django_cfg/modules/django_unfold/models.py +0 -98
  643. django_cfg/modules/django_unfold/templates/unfold/helpers/app_list.html +0 -102
  644. django_cfg/static/admin/js/commands.js +0 -171
  645. django_cfg/static/admin/js/dashboard.js +0 -126
  646. django_cfg/static/js/api/ipc/client.mjs +0 -74
  647. django_cfg/static/js/api/ipc/index.mjs +0 -13
  648. django_cfg/templates/admin/components/action_grid.html +0 -49
  649. django_cfg/templates/admin/components/card.html +0 -50
  650. django_cfg/templates/admin/components/data_table.html +0 -67
  651. django_cfg/templates/admin/components/management_commands.js +0 -375
  652. django_cfg/templates/admin/components/metric_card.html +0 -39
  653. django_cfg/templates/admin/components/modal.html +0 -58
  654. django_cfg/templates/admin/components/progress_bar.html +0 -20
  655. django_cfg/templates/admin/components/section_header.html +0 -26
  656. django_cfg/templates/admin/components/stat_item.html +0 -32
  657. django_cfg/templates/admin/components/stats_grid.html +0 -72
  658. django_cfg/templates/admin/components/status_badge.html +0 -28
  659. django_cfg/templates/admin/components/user_avatar.html +0 -27
  660. django_cfg/templates/admin/constance/change_list.html +0 -113
  661. django_cfg/templates/admin/constance/includes/default_value.html +0 -24
  662. django_cfg/templates/admin/constance/includes/fieldset_header.html +0 -15
  663. django_cfg/templates/admin/constance/includes/setting_row.html +0 -50
  664. django_cfg/templates/admin/constance/includes/table_headers.html +0 -10
  665. django_cfg/templates/admin/examples/component_class_example.html +0 -156
  666. django_cfg/templates/admin/import_export/change_list_export.html +0 -24
  667. django_cfg/templates/admin/import_export/change_list_import.html +0 -24
  668. django_cfg/templates/admin/import_export/change_list_import_export.html +0 -34
  669. django_cfg/templates/admin/index_new.html +0 -119
  670. django_cfg/templates/admin/layouts/base_dashboard.html +0 -60
  671. django_cfg/templates/admin/layouts/dashboard_with_tabs.html +0 -565
  672. django_cfg/templates/admin/sections/commands_section.html +0 -626
  673. django_cfg/templates/admin/sections/documentation_section.html +0 -172
  674. django_cfg/templates/admin/sections/overview_section.html +0 -112
  675. django_cfg/templates/admin/sections/stats_section.html +0 -35
  676. django_cfg/templates/admin/sections/system_section.html +0 -99
  677. django_cfg/templates/admin/snippets/components/CHARTS_GUIDE.md +0 -322
  678. django_cfg/templates/admin/snippets/components/activity_tracker.html +0 -92
  679. django_cfg/templates/admin/snippets/components/charts_section.html +0 -179
  680. django_cfg/templates/admin/snippets/components/django_commands.html +0 -357
  681. django_cfg/templates/admin/snippets/components/quick_actions.html +0 -66
  682. django_cfg/templates/admin/snippets/components/recent_activity.html +0 -35
  683. django_cfg/templates/admin/snippets/components/recent_activity_improved.html +0 -25
  684. django_cfg/templates/admin/snippets/components/recent_users_table.html +0 -102
  685. django_cfg/templates/admin/snippets/components/stats_cards.html +0 -4
  686. django_cfg/templates/admin/snippets/components/stats_tiles.html +0 -92
  687. django_cfg/templates/admin/snippets/components/system_health.html +0 -22
  688. django_cfg/templates/admin/snippets/components/system_metrics.html +0 -191
  689. django_cfg/templates/admin/snippets/components/user_permissions.html +0 -57
  690. django_cfg/templates/admin/snippets/tabs/app_stats_tab.html +0 -201
  691. django_cfg/templates/admin/snippets/tabs/commands_tab.html +0 -66
  692. django_cfg/templates/admin/snippets/tabs/documentation_tab.html +0 -231
  693. django_cfg/templates/admin/snippets/tabs/overview_tab.html +0 -116
  694. django_cfg/templates/admin/snippets/tabs/stats_tab.html +0 -89
  695. django_cfg/templates/admin/snippets/tabs/users_tab.html +0 -51
  696. django_cfg/templates/admin/snippets/zones/zones_table.html +0 -176
  697. django_cfg-1.4.48.dist-info/METADATA +0 -533
  698. django_cfg-1.4.48.dist-info/RECORD +0 -1008
  699. /django_cfg/apps/api/endpoints/{checker.py → endpoints_status/checker.py} +0 -0
  700. /django_cfg/apps/api/endpoints/{drf_views.py → endpoints_status/drf_views.py} +0 -0
  701. /django_cfg/apps/api/endpoints/{serializers.py → endpoints_status/serializers.py} +0 -0
  702. /django_cfg/apps/api/endpoints/{tests.py → endpoints_status/tests.py} +0 -0
  703. /django_cfg/apps/api/endpoints/{views.py → endpoints_status/views.py} +0 -0
  704. /django_cfg/apps/{accounts/migrations → business}/__init__.py +0 -0
  705. /django_cfg/apps/{accounts → business/accounts}/README.md +0 -0
  706. /django_cfg/apps/{accounts → business/accounts}/__init__.py +0 -0
  707. /django_cfg/apps/{accounts → business/accounts}/__models.py +0 -0
  708. /django_cfg/apps/{accounts → business/accounts}/admin/__init__.py +0 -0
  709. /django_cfg/apps/{accounts → business/accounts}/admin/activity_admin.py +0 -0
  710. /django_cfg/apps/{accounts → business/accounts}/admin/filters.py +0 -0
  711. /django_cfg/apps/{accounts → business/accounts}/admin/group_admin.py +0 -0
  712. /django_cfg/apps/{accounts → business/accounts}/admin/otp_admin.py +0 -0
  713. /django_cfg/apps/{accounts → business/accounts}/admin/registration_admin.py +0 -0
  714. /django_cfg/apps/{accounts → business/accounts}/admin/resources.py +0 -0
  715. /django_cfg/apps/{accounts → business/accounts}/admin/twilio_admin.py +0 -0
  716. /django_cfg/apps/{accounts → business/accounts}/management/commands/otp_test.py +0 -0
  717. /django_cfg/apps/{accounts → business/accounts}/managers/__init__.py +0 -0
  718. /django_cfg/apps/{accounts → business/accounts}/migrations/0002_add_phone_otp_clean.py +0 -0
  719. /django_cfg/apps/{accounts → business/accounts}/migrations/0003_twilioresponse.py +0 -0
  720. /django_cfg/apps/{accounts → business/accounts}/migrations/0004_delete_twilioresponse.py +0 -0
  721. /django_cfg/apps/{accounts → business/accounts}/migrations/0005_twilioresponse.py +0 -0
  722. /django_cfg/apps/{accounts → business/accounts}/migrations/0006_remove_twilioresponse_otp_secret_and_more.py +0 -0
  723. /django_cfg/apps/{accounts → business/accounts}/migrations/0007_twilioresponse.py +0 -0
  724. /django_cfg/apps/{knowbase/management → business/accounts/migrations}/__init__.py +0 -0
  725. /django_cfg/apps/{accounts → business/accounts}/models/__init__.py +0 -0
  726. /django_cfg/apps/{accounts → business/accounts}/models/activity.py +0 -0
  727. /django_cfg/apps/{accounts → business/accounts}/models/auth.py +0 -0
  728. /django_cfg/apps/{accounts → business/accounts}/models/base.py +0 -0
  729. /django_cfg/apps/{accounts → business/accounts}/models/choices.py +0 -0
  730. /django_cfg/apps/{accounts → business/accounts}/models/integrations.py +0 -0
  731. /django_cfg/apps/{accounts → business/accounts}/models/registration.py +0 -0
  732. /django_cfg/apps/{accounts → business/accounts}/models/user.py +0 -0
  733. /django_cfg/apps/{accounts → business/accounts}/serializers/__init__.py +0 -0
  734. /django_cfg/apps/{accounts → business/accounts}/serializers/otp.py +0 -0
  735. /django_cfg/apps/{accounts → business/accounts}/serializers/profile.py +0 -0
  736. /django_cfg/apps/{accounts → business/accounts}/serializers/webhook.py +0 -0
  737. /django_cfg/apps/{accounts → business/accounts}/services/__init__.py +0 -0
  738. /django_cfg/apps/{accounts → business/accounts}/services/activity_service.py +0 -0
  739. /django_cfg/apps/{accounts → business/accounts}/signals.py +0 -0
  740. /django_cfg/apps/{accounts → business/accounts}/templates/emails/base_email.html +0 -0
  741. /django_cfg/apps/{accounts → business/accounts}/templates/emails/base_email.txt +0 -0
  742. /django_cfg/apps/{accounts → business/accounts}/templates/emails/otp_email.html +0 -0
  743. /django_cfg/apps/{accounts → business/accounts}/templates/emails/otp_email.txt +0 -0
  744. /django_cfg/apps/{accounts → business/accounts}/templates/emails/welcome_email.html +0 -0
  745. /django_cfg/apps/{accounts → business/accounts}/templates/emails/welcome_email.txt +0 -0
  746. /django_cfg/apps/{accounts → business/accounts}/urls.py +0 -0
  747. /django_cfg/apps/{accounts → business/accounts}/urls_admin.py +0 -0
  748. /django_cfg/apps/{accounts → business/accounts}/utils/notifications.py +0 -0
  749. /django_cfg/apps/{accounts → business/accounts}/views/__init__.py +0 -0
  750. /django_cfg/apps/{accounts → business/accounts}/views/otp.py +0 -0
  751. /django_cfg/apps/{accounts → business/accounts}/views/webhook.py +0 -0
  752. /django_cfg/apps/{agents → business/agents}/README.md +0 -0
  753. /django_cfg/apps/{agents → business/agents}/admin/__init__.py +0 -0
  754. /django_cfg/apps/{agents → business/agents}/admin/execution_actions.py +0 -0
  755. /django_cfg/apps/{agents → business/agents}/admin/execution_admin.py +0 -0
  756. /django_cfg/apps/{agents → business/agents}/admin/registry_actions.py +0 -0
  757. /django_cfg/apps/{agents → business/agents}/admin/registry_admin.py +0 -0
  758. /django_cfg/apps/{agents → business/agents}/admin/toolsets_actions.py +0 -0
  759. /django_cfg/apps/{agents → business/agents}/admin/toolsets_admin.py +0 -0
  760. /django_cfg/apps/{agents → business/agents}/core/__init__.py +0 -0
  761. /django_cfg/apps/{agents → business/agents}/core/dependencies.py +0 -0
  762. /django_cfg/apps/{agents → business/agents}/core/django_agent.py +0 -0
  763. /django_cfg/apps/{agents → business/agents}/core/exceptions.py +0 -0
  764. /django_cfg/apps/{agents → business/agents}/core/models.py +0 -0
  765. /django_cfg/apps/{agents → business/agents}/core/orchestrator.py +0 -0
  766. /django_cfg/apps/{agents → business/agents}/examples/__init__.py +0 -0
  767. /django_cfg/apps/{agents → business/agents}/examples/simple_example.py +0 -0
  768. /django_cfg/apps/{agents → business/agents}/integration/__init__.py +0 -0
  769. /django_cfg/apps/{agents → business/agents}/integration/middleware.py +0 -0
  770. /django_cfg/apps/{agents → business/agents}/integration/signals.py +0 -0
  771. /django_cfg/apps/{agents → business/agents}/management/__init__.py +0 -0
  772. /django_cfg/apps/{agents → business/agents}/management/commands/__init__.py +0 -0
  773. /django_cfg/apps/{agents → business/agents}/managers/__init__.py +0 -0
  774. /django_cfg/apps/{agents → business/agents}/managers/execution.py +0 -0
  775. /django_cfg/apps/{agents → business/agents}/managers/registry.py +0 -0
  776. /django_cfg/apps/{agents → business/agents}/managers/toolsets.py +0 -0
  777. /django_cfg/apps/{agents → business/agents}/migrations/0001_initial.py +0 -0
  778. /django_cfg/apps/{agents → business/agents}/migrations/__init__.py +0 -0
  779. /django_cfg/apps/{agents → business/agents}/models/__init__.py +0 -0
  780. /django_cfg/apps/{agents → business/agents}/models/execution.py +0 -0
  781. /django_cfg/apps/{agents → business/agents}/models/registry.py +0 -0
  782. /django_cfg/apps/{agents → business/agents}/models/toolsets.py +0 -0
  783. /django_cfg/apps/{agents → business/agents}/patterns/__init__.py +0 -0
  784. /django_cfg/apps/{agents → business/agents}/toolsets/__init__.py +0 -0
  785. /django_cfg/apps/{agents → business/agents}/toolsets/cache_toolset.py +0 -0
  786. /django_cfg/apps/{agents → business/agents}/toolsets/django_toolset.py +0 -0
  787. /django_cfg/apps/{agents → business/agents}/toolsets/file_toolset.py +0 -0
  788. /django_cfg/apps/{agents → business/agents}/toolsets/orm_toolset.py +0 -0
  789. /django_cfg/apps/{agents → business/agents}/urls.py +0 -0
  790. /django_cfg/apps/{agents → business/agents}/urls_admin.py +0 -0
  791. /django_cfg/apps/{knowbase → business/knowbase}/README.md +0 -0
  792. /django_cfg/apps/{knowbase → business/knowbase}/admin/__init__.py +0 -0
  793. /django_cfg/apps/{knowbase → business/knowbase}/admin/archive_actions.py +0 -0
  794. /django_cfg/apps/{knowbase → business/knowbase}/admin/archive_admin.py +0 -0
  795. /django_cfg/apps/{knowbase → business/knowbase}/admin/chat_actions.py +0 -0
  796. /django_cfg/apps/{knowbase → business/knowbase}/admin/chat_admin.py +0 -0
  797. /django_cfg/apps/{knowbase → business/knowbase}/admin/document_actions.py +0 -0
  798. /django_cfg/apps/{knowbase → business/knowbase}/admin/document_admin.py +0 -0
  799. /django_cfg/apps/{knowbase → business/knowbase}/admin/external_data_actions.py +0 -0
  800. /django_cfg/apps/{knowbase → business/knowbase}/admin/external_data_admin.py +0 -0
  801. /django_cfg/apps/{knowbase → business/knowbase}/config/README.md +0 -0
  802. /django_cfg/apps/{knowbase → business/knowbase}/config/__init__.py +0 -0
  803. /django_cfg/apps/{knowbase → business/knowbase}/config/constance_fields.py +0 -0
  804. /django_cfg/apps/{knowbase → business/knowbase}/config/constance_settings.py +0 -0
  805. /django_cfg/apps/{knowbase → business/knowbase}/config/settings.py +0 -0
  806. /django_cfg/apps/{knowbase/management/commands → business/knowbase/management}/__init__.py +0 -0
  807. /django_cfg/apps/{leads → business/knowbase/management/commands}/__init__.py +0 -0
  808. /django_cfg/apps/{knowbase → business/knowbase}/management/commands/knowbase_stats.py +0 -0
  809. /django_cfg/apps/{knowbase → business/knowbase}/management/commands/setup_knowbase.py +0 -0
  810. /django_cfg/apps/{knowbase → business/knowbase}/managers/__init__.py +0 -0
  811. /django_cfg/apps/{knowbase → business/knowbase}/managers/archive.py +0 -0
  812. /django_cfg/apps/{knowbase → business/knowbase}/managers/base.py +0 -0
  813. /django_cfg/apps/{knowbase → business/knowbase}/managers/chat.py +0 -0
  814. /django_cfg/apps/{knowbase → business/knowbase}/managers/document.py +0 -0
  815. /django_cfg/apps/{knowbase → business/knowbase}/managers/external_data.py +0 -0
  816. /django_cfg/apps/{knowbase → business/knowbase}/migrations/0001_initial.py +0 -0
  817. /django_cfg/apps/{knowbase → business/knowbase}/migrations/0002_archiveitem_archiveitemchunk_documentarchive_and_more.py +0 -0
  818. /django_cfg/apps/{knowbase → business/knowbase}/migrations/0003_alter_documentarchive_archive_type.py +0 -0
  819. /django_cfg/apps/{knowbase → business/knowbase}/migrations/__init__.py +0 -0
  820. /django_cfg/apps/{knowbase → business/knowbase}/mixins/__init__.py +0 -0
  821. /django_cfg/apps/{knowbase → business/knowbase}/mixins/config/__init__.py +0 -0
  822. /django_cfg/apps/{knowbase → business/knowbase}/mixins/config/defaults.py +0 -0
  823. /django_cfg/apps/{knowbase → business/knowbase}/mixins/config/meta_config.py +0 -0
  824. /django_cfg/apps/{knowbase → business/knowbase}/mixins/config.py +0 -0
  825. /django_cfg/apps/{knowbase → business/knowbase}/mixins/creator.py +0 -0
  826. /django_cfg/apps/{knowbase → business/knowbase}/mixins/external_data_mixin.py +0 -0
  827. /django_cfg/apps/{knowbase → business/knowbase}/mixins/generators/__init__.py +0 -0
  828. /django_cfg/apps/{knowbase → business/knowbase}/mixins/generators/content_generator.py +0 -0
  829. /django_cfg/apps/{knowbase → business/knowbase}/mixins/generators/field_analyzer.py +0 -0
  830. /django_cfg/apps/{knowbase → business/knowbase}/mixins/generators/metadata_generator.py +0 -0
  831. /django_cfg/apps/{knowbase → business/knowbase}/models/__init__.py +0 -0
  832. /django_cfg/apps/{knowbase → business/knowbase}/models/archive.py +0 -0
  833. /django_cfg/apps/{knowbase → business/knowbase}/models/base.py +0 -0
  834. /django_cfg/apps/{knowbase → business/knowbase}/models/chat.py +0 -0
  835. /django_cfg/apps/{knowbase → business/knowbase}/models/document.py +0 -0
  836. /django_cfg/apps/{knowbase → business/knowbase}/serializers/__init__.py +0 -0
  837. /django_cfg/apps/{knowbase → business/knowbase}/serializers/archive_serializers.py +0 -0
  838. /django_cfg/apps/{knowbase → business/knowbase}/serializers/chat_serializers.py +0 -0
  839. /django_cfg/apps/{knowbase → business/knowbase}/serializers/document_serializers.py +0 -0
  840. /django_cfg/apps/{knowbase → business/knowbase}/serializers/external_data_serializers.py +0 -0
  841. /django_cfg/apps/{knowbase → business/knowbase}/serializers/public_serializers.py +0 -0
  842. /django_cfg/apps/{knowbase → business/knowbase}/services/__init__.py +0 -0
  843. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/__init__.py +0 -0
  844. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/analyzers/__init__.py +0 -0
  845. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/analyzers/complexity_analyzer.py +0 -0
  846. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/analyzers/purpose_detector.py +0 -0
  847. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/analyzers/quality_analyzer.py +0 -0
  848. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/analyzers/tag_generator.py +0 -0
  849. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/archive_service.py +0 -0
  850. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/chunking/__init__.py +0 -0
  851. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/chunking/base.py +0 -0
  852. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/chunking/json_chunker.py +0 -0
  853. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/chunking/markdown_chunker.py +0 -0
  854. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/chunking/python_chunker.py +0 -0
  855. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/chunking/text_chunker.py +0 -0
  856. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/chunking_service.py +0 -0
  857. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/context/__init__.py +0 -0
  858. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/context/builders.py +0 -0
  859. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/context/models.py +0 -0
  860. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/exceptions.py +0 -0
  861. /django_cfg/apps/{knowbase → business/knowbase}/services/archive/extraction_service.py +0 -0
  862. /django_cfg/apps/{knowbase → business/knowbase}/services/base.py +0 -0
  863. /django_cfg/apps/{knowbase → business/knowbase}/services/chat_service.py +0 -0
  864. /django_cfg/apps/{knowbase → business/knowbase}/services/document_service.py +0 -0
  865. /django_cfg/apps/{knowbase → business/knowbase}/services/embedding/__init__.py +0 -0
  866. /django_cfg/apps/{knowbase → business/knowbase}/services/embedding/batch_result.py +0 -0
  867. /django_cfg/apps/{knowbase → business/knowbase}/services/embedding/models.py +0 -0
  868. /django_cfg/apps/{knowbase → business/knowbase}/services/prompt_builder.py +0 -0
  869. /django_cfg/apps/{knowbase → business/knowbase}/services/search_service.py +0 -0
  870. /django_cfg/apps/{knowbase → business/knowbase}/signals/__init__.py +0 -0
  871. /django_cfg/apps/{knowbase → business/knowbase}/signals/archive_signals.py +0 -0
  872. /django_cfg/apps/{knowbase → business/knowbase}/signals/chat_signals.py +0 -0
  873. /django_cfg/apps/{knowbase → business/knowbase}/signals/document_signals.py +0 -0
  874. /django_cfg/apps/{knowbase → business/knowbase}/signals/external_data_signals.py +0 -0
  875. /django_cfg/apps/{knowbase → business/knowbase}/tasks/__init__.py +0 -0
  876. /django_cfg/apps/{knowbase → business/knowbase}/tasks/archive_tasks.py +0 -0
  877. /django_cfg/apps/{knowbase → business/knowbase}/tasks/external_data_tasks.py +0 -0
  878. /django_cfg/apps/{knowbase → business/knowbase}/tasks/maintenance.py +0 -0
  879. /django_cfg/apps/{knowbase → business/knowbase}/urls.py +0 -0
  880. /django_cfg/apps/{knowbase → business/knowbase}/urls_admin.py +0 -0
  881. /django_cfg/apps/{knowbase → business/knowbase}/urls_system.py +0 -0
  882. /django_cfg/apps/{knowbase → business/knowbase}/utils/__init__.py +0 -0
  883. /django_cfg/apps/{knowbase → business/knowbase}/utils/text_processing.py +0 -0
  884. /django_cfg/apps/{knowbase → business/knowbase}/utils/validation.py +0 -0
  885. /django_cfg/apps/{knowbase → business/knowbase}/views/__init__.py +0 -0
  886. /django_cfg/apps/{knowbase → business/knowbase}/views/chat_views.py +0 -0
  887. /django_cfg/apps/{knowbase → business/knowbase}/views/document_views.py +0 -0
  888. /django_cfg/apps/{knowbase → business/knowbase}/views/public_views.py +0 -0
  889. /django_cfg/apps/{leads → business/leads}/README.md +0 -0
  890. /django_cfg/apps/{leads/migrations → business/leads}/__init__.py +0 -0
  891. /django_cfg/apps/{leads → business/leads}/admin/__init__.py +0 -0
  892. /django_cfg/apps/{leads → business/leads}/admin/actions.py +0 -0
  893. /django_cfg/apps/{leads → business/leads}/admin/leads_admin.py +0 -0
  894. /django_cfg/apps/{leads → business/leads}/admin/resources.py +0 -0
  895. /django_cfg/apps/{leads → business/leads}/admin.py +0 -0
  896. /django_cfg/apps/{leads → business/leads}/migrations/0001_initial.py +0 -0
  897. /django_cfg/apps/{maintenance/management → business/leads/migrations}/__init__.py +0 -0
  898. /django_cfg/apps/{leads → business/leads}/models.py +0 -0
  899. /django_cfg/apps/{leads → business/leads}/serializers.py +0 -0
  900. /django_cfg/apps/{leads → business/leads}/signals.py +0 -0
  901. /django_cfg/apps/{leads → business/leads}/tests.py +0 -0
  902. /django_cfg/apps/{leads → business/leads}/urls.py +0 -0
  903. /django_cfg/apps/{leads → business/leads}/urls_admin.py +0 -0
  904. /django_cfg/apps/{leads → business/leads}/views.py +0 -0
  905. /django_cfg/apps/{newsletter → business/newsletter}/README.md +0 -0
  906. /django_cfg/apps/{maintenance/management/commands → business/newsletter}/__init__.py +0 -0
  907. /django_cfg/apps/{newsletter → business/newsletter}/admin/__init__.py +0 -0
  908. /django_cfg/apps/{newsletter → business/newsletter}/admin/actions.py +0 -0
  909. /django_cfg/apps/{newsletter → business/newsletter}/admin/filters.py +0 -0
  910. /django_cfg/apps/{newsletter → business/newsletter}/admin/resources.py +0 -0
  911. /django_cfg/apps/{newsletter → business/newsletter}/admin.py +0 -0
  912. /django_cfg/apps/{newsletter → business/newsletter}/admin_filters.py +0 -0
  913. /django_cfg/apps/{maintenance/migrations → business/newsletter/management}/__init__.py +0 -0
  914. /django_cfg/apps/{newsletter → business/newsletter/management/commands}/__init__.py +0 -0
  915. /django_cfg/apps/{newsletter → business/newsletter}/managers/README.md +0 -0
  916. /django_cfg/apps/{newsletter → business/newsletter}/managers/__init__.py +0 -0
  917. /django_cfg/apps/{newsletter → business/newsletter}/migrations/0001_initial.py +0 -0
  918. /django_cfg/apps/{newsletter/management → business/newsletter/migrations}/__init__.py +0 -0
  919. /django_cfg/apps/{newsletter → business/newsletter}/models.py +0 -0
  920. /django_cfg/apps/{newsletter → business/newsletter}/serializers.py +0 -0
  921. /django_cfg/apps/{newsletter → business/newsletter}/services/email_service.py +0 -0
  922. /django_cfg/apps/{newsletter → business/newsletter}/signals.py +0 -0
  923. /django_cfg/apps/{newsletter → business/newsletter}/urls.py +0 -0
  924. /django_cfg/apps/{maintenance → business/newsletter}/urls_admin.py +0 -0
  925. /django_cfg/apps/{newsletter → business/newsletter}/utils/__init__.py +0 -0
  926. /django_cfg/apps/{newsletter → business/newsletter}/views/__init__.py +0 -0
  927. /django_cfg/apps/{newsletter → business/newsletter}/views/campaigns.py +0 -0
  928. /django_cfg/apps/{newsletter → business/newsletter}/views/emails.py +0 -0
  929. /django_cfg/apps/{newsletter → business/newsletter}/views/newsletters.py +0 -0
  930. /django_cfg/apps/{newsletter → business/newsletter}/views/subscriptions.py +0 -0
  931. /django_cfg/apps/{newsletter → business/newsletter}/views/tracking.py +0 -0
  932. /django_cfg/apps/{payments → business/payments}/CONFIGURATION.md +0 -0
  933. /django_cfg/apps/{payments → business/payments}/admin/__init__.py +0 -0
  934. /django_cfg/apps/{payments → business/payments}/admin/actions.py +0 -0
  935. /django_cfg/apps/{payments → business/payments}/admin/balance_actions.py +0 -0
  936. /django_cfg/apps/{payments → business/payments}/admin/currency_admin.py +0 -0
  937. /django_cfg/apps/{payments → business/payments}/admin/filters.py +0 -0
  938. /django_cfg/apps/{payments → business/payments}/admin/payment_actions.py +0 -0
  939. /django_cfg/apps/{payments → business/payments}/admin/withdrawal_actions.py +0 -0
  940. /django_cfg/apps/{payments → business/payments}/api/__init__.py +0 -0
  941. /django_cfg/apps/{payments → business/payments}/api/serializers.py +0 -0
  942. /django_cfg/apps/{payments → business/payments}/api/urls.py +0 -0
  943. /django_cfg/apps/{payments → business/payments}/api/views.py +0 -0
  944. /django_cfg/apps/{payments → business/payments}/config.py +0 -0
  945. /django_cfg/apps/{payments → business/payments}/management/README.md +0 -0
  946. /django_cfg/apps/{newsletter/management/commands → business/payments/management}/__init__.py +0 -0
  947. /django_cfg/apps/{newsletter/migrations → business/payments/management/commands}/__init__.py +0 -0
  948. /django_cfg/apps/{payments → business/payments}/migrations/0001_initial.py +0 -0
  949. /django_cfg/apps/{payments/management → business/payments/migrations}/__init__.py +0 -0
  950. /django_cfg/apps/{payments → business/payments}/models/__init__.py +0 -0
  951. /django_cfg/apps/{payments → business/payments}/models/balance.py +0 -0
  952. /django_cfg/apps/{payments → business/payments}/models/base.py +0 -0
  953. /django_cfg/apps/{payments → business/payments}/models/currency.py +0 -0
  954. /django_cfg/apps/{payments → business/payments}/models/managers/__init__.py +0 -0
  955. /django_cfg/apps/{payments → business/payments}/models/managers/balance_managers.py +0 -0
  956. /django_cfg/apps/{payments → business/payments}/models/managers/payment_managers.py +0 -0
  957. /django_cfg/apps/{payments → business/payments}/models/payment.py +0 -0
  958. /django_cfg/apps/{payments → business/payments}/models/withdrawal.py +0 -0
  959. /django_cfg/apps/{payments → business/payments}/services/__init__.py +0 -0
  960. /django_cfg/apps/{payments → business/payments}/services/balance_service.py +0 -0
  961. /django_cfg/apps/{payments → business/payments}/services/payment_service.py +0 -0
  962. /django_cfg/apps/{payments → business/payments}/services/providers/__init__.py +0 -0
  963. /django_cfg/apps/{payments → business/payments}/services/providers/models.py +0 -0
  964. /django_cfg/apps/{payments → business/payments}/services/providers/nowpayments/__init__.py +0 -0
  965. /django_cfg/apps/{payments → business/payments}/services/providers/nowpayments/config.py +0 -0
  966. /django_cfg/apps/{payments → business/payments}/services/providers/nowpayments/parser.py +0 -0
  967. /django_cfg/apps/{payments → business/payments}/services/providers/nowpayments/provider.py +0 -0
  968. /django_cfg/apps/{payments/management/commands → business/support}/__init__.py +0 -0
  969. /django_cfg/apps/{support → business/support}/admin/__init__.py +0 -0
  970. /django_cfg/apps/{support → business/support}/admin/actions.py +0 -0
  971. /django_cfg/apps/{support → business/support}/admin/filters.py +0 -0
  972. /django_cfg/apps/{support → business/support}/admin/resources.py +0 -0
  973. /django_cfg/apps/{support → business/support}/admin/support_admin.py +0 -0
  974. /django_cfg/apps/{support → business/support}/admin.py +0 -0
  975. /django_cfg/apps/{support → business/support}/admin_filters.py +0 -0
  976. /django_cfg/apps/{support → business/support}/migrations/0001_initial.py +0 -0
  977. /django_cfg/apps/{support → business/support}/migrations/0002_alter_message_ticket.py +0 -0
  978. /django_cfg/apps/{payments → business/support}/migrations/__init__.py +0 -0
  979. /django_cfg/apps/{support → business/support}/models.py +0 -0
  980. /django_cfg/apps/{support → business/support}/serializers.py +0 -0
  981. /django_cfg/apps/{support → business/support}/signals.py +0 -0
  982. /django_cfg/apps/{support → business/support}/templates/support/chat/access_denied.html +0 -0
  983. /django_cfg/apps/{support → business/support}/templates/support/chat/ticket_chat.html +0 -0
  984. /django_cfg/apps/{support → business/support}/urls.py +0 -0
  985. /django_cfg/apps/{newsletter → business/support}/urls_admin.py +0 -0
  986. /django_cfg/apps/{support → business/support/utils}/__init__.py +0 -0
  987. /django_cfg/apps/{support → business/support}/views/__init__.py +0 -0
  988. /django_cfg/apps/{support → business/support}/views/admin.py +0 -0
  989. /django_cfg/apps/{support → business/support}/views/chat.py +0 -0
  990. /django_cfg/apps/{support/migrations → integrations}/__init__.py +0 -0
  991. /django_cfg/apps/{support/utils → integrations/grpc/management/commands}/__init__.py +0 -0
  992. /django_cfg/{modules/django_dashboard/management → apps/integrations/grpc/migrations}/__init__.py +0 -0
  993. /django_cfg/{modules/django_dashboard/management/commands → apps/system}/__init__.py +0 -0
  994. /django_cfg/apps/{maintenance → system/maintenance}/admin/__init__.py +0 -0
  995. /django_cfg/apps/{maintenance → system/maintenance}/admin/actions.py +0 -0
  996. /django_cfg/apps/{maintenance → system/maintenance}/admin/log_admin.py +0 -0
  997. /django_cfg/{modules/django_tasks → apps/system/maintenance}/management/__init__.py +0 -0
  998. /django_cfg/{modules/django_tasks → apps/system/maintenance}/management/commands/__init__.py +0 -0
  999. /django_cfg/apps/{maintenance → system/maintenance}/management/commands/maintenance.py +0 -0
  1000. /django_cfg/apps/{maintenance → system/maintenance}/management/commands/process_scheduled_maintenance.py +0 -0
  1001. /django_cfg/apps/{maintenance → system/maintenance}/management/commands/sync_cloudflare.py +0 -0
  1002. /django_cfg/apps/{maintenance → system/maintenance}/managers/__init__.py +0 -0
  1003. /django_cfg/apps/{maintenance → system/maintenance}/managers/cloudflare_site_manager.py +0 -0
  1004. /django_cfg/apps/{maintenance → system/maintenance}/managers/maintenance_log_manager.py +0 -0
  1005. /django_cfg/apps/{maintenance → system/maintenance}/migrations/0001_initial.py +0 -0
  1006. /django_cfg/apps/{maintenance → system/maintenance}/migrations/0002_cloudflaresite_maintenance_url.py +0 -0
  1007. /django_cfg/apps/{maintenance → system/maintenance}/migrations/0003_cloudflaresite_include_subdomains_and_more.py +0 -0
  1008. /django_cfg/apps/{maintenance → system/maintenance}/models/cloudflare_api_key.py +0 -0
  1009. /django_cfg/apps/{maintenance → system/maintenance}/models/cloudflare_site.py +0 -0
  1010. /django_cfg/apps/{maintenance → system/maintenance}/models/maintenance_log.py +0 -0
  1011. /django_cfg/apps/{maintenance → system/maintenance}/models/scheduled_maintenance.py +0 -0
  1012. /django_cfg/apps/{maintenance → system/maintenance}/services/bulk_operations_service.py +0 -0
  1013. /django_cfg/apps/{maintenance → system/maintenance}/services/maintenance_service.py +0 -0
  1014. /django_cfg/apps/{maintenance → system/maintenance}/services/scheduled_maintenance_service.py +0 -0
  1015. /django_cfg/apps/{maintenance → system/maintenance}/services/site_sync_service.py +0 -0
  1016. /django_cfg/apps/{maintenance → system/maintenance}/urls.py +0 -0
  1017. /django_cfg/apps/{support → system/maintenance}/urls_admin.py +0 -0
  1018. /django_cfg/apps/{maintenance → system/maintenance}/utils/__init__.py +0 -0
  1019. /django_cfg/apps/{maintenance → system/maintenance}/utils/retry_utils.py +0 -0
  1020. {django_cfg-1.4.48.dist-info → django_cfg-1.5.7.dist-info}/WHEEL +0 -0
  1021. {django_cfg-1.4.48.dist-info → django_cfg-1.5.7.dist-info}/entry_points.txt +0 -0
  1022. {django_cfg-1.4.48.dist-info → django_cfg-1.5.7.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,313 @@
1
+ #!/usr/bin/env python
2
+ """
3
+ Django-RQ dependency checker.
4
+
5
+ Validates that all required dependencies for django-rq are installed.
6
+ Provides beautiful Rich-formatted error messages with installation instructions.
7
+ """
8
+
9
+ from __future__ import annotations
10
+
11
+ import importlib.util
12
+ import os
13
+ from typing import Dict
14
+
15
+ from rich.console import Console
16
+ from rich.panel import Panel
17
+ from rich.table import Table
18
+
19
+
20
+ class RQDependencyError(ImportError):
21
+ """Raised when required RQ dependencies are missing."""
22
+ pass
23
+
24
+
25
+ class DependencyChecker:
26
+ """
27
+ Check and validate RQ dependencies.
28
+
29
+ Required dependencies:
30
+ - django-rq: Django integration for RQ
31
+ - redis: Python Redis client
32
+ - rq: Redis Queue library
33
+
34
+ Optional dependencies:
35
+ - rq-scheduler: Cron-style scheduling
36
+ - hiredis: High-performance Redis protocol parser
37
+ """
38
+
39
+ # Required dependencies
40
+ REQUIRED_DEPS = {
41
+ "django_rq": "django-rq>=3.0.0",
42
+ "redis": "redis>=4.0.0",
43
+ "rq": "rq>=1.10.0",
44
+ }
45
+
46
+ # Optional dependencies
47
+ OPTIONAL_DEPS = {
48
+ "rq_scheduler": "rq-scheduler>=0.13.0",
49
+ "hiredis": "hiredis>=2.0.0",
50
+ }
51
+
52
+ # Package descriptions
53
+ DESCRIPTIONS = {
54
+ "django_rq": "Django integration for RQ",
55
+ "redis": "Python Redis client",
56
+ "rq": "Redis Queue (RQ) library",
57
+ "rq_scheduler": "Cron-style scheduling for RQ",
58
+ "hiredis": "High-performance Redis parser",
59
+ }
60
+
61
+ @classmethod
62
+ def check_package(cls, package_name: str) -> bool:
63
+ """
64
+ Check if a package is installed.
65
+
66
+ Args:
67
+ package_name: Python package name (import name)
68
+
69
+ Returns:
70
+ True if installed, False otherwise
71
+ """
72
+ return importlib.util.find_spec(package_name) is not None
73
+
74
+ @classmethod
75
+ def check_all(cls, raise_on_missing: bool = True) -> Dict[str, bool]:
76
+ """
77
+ Check all RQ dependencies.
78
+
79
+ Args:
80
+ raise_on_missing: If True, raise exception when required deps missing
81
+
82
+ Returns:
83
+ Dictionary mapping package names to availability status
84
+
85
+ Raises:
86
+ RQDependencyError: If required dependencies are missing and raise_on_missing=True
87
+ """
88
+ status = {}
89
+
90
+ # Check required dependencies
91
+ for package_name in cls.REQUIRED_DEPS:
92
+ status[package_name] = cls.check_package(package_name)
93
+
94
+ # Check optional dependencies
95
+ for package_name in cls.OPTIONAL_DEPS:
96
+ status[package_name] = cls.check_package(package_name)
97
+
98
+ # Check if any required dependencies are missing
99
+ missing_required = [
100
+ pkg for pkg in cls.REQUIRED_DEPS if not status.get(pkg, False)
101
+ ]
102
+
103
+ missing_optional = [
104
+ pkg for pkg in cls.OPTIONAL_DEPS if not status.get(pkg, False)
105
+ ]
106
+
107
+ if missing_required and raise_on_missing:
108
+ cls._raise_missing_error(missing_required, missing_optional)
109
+
110
+ return status
111
+
112
+ @classmethod
113
+ def _raise_missing_error(
114
+ cls,
115
+ missing_required: list[str],
116
+ missing_optional: list[str],
117
+ ) -> None:
118
+ """
119
+ Raise a formatted error for missing dependencies.
120
+
121
+ Args:
122
+ missing_required: List of missing required packages
123
+ missing_optional: List of missing optional packages
124
+ """
125
+ console = Console()
126
+
127
+ # Header
128
+ console.print()
129
+ console.print(Panel(
130
+ "[bold red]MISSING Django-RQ DEPENDENCIES[/bold red]",
131
+ expand=True,
132
+ ))
133
+ console.print()
134
+ console.print("Django-CFG's RQ integration requires additional dependencies")
135
+ console.print()
136
+
137
+ # Required dependencies table
138
+ if missing_required:
139
+ table = Table(title="📦 REQUIRED Dependencies (Missing)", show_header=True)
140
+ table.add_column("Package", style="cyan")
141
+ table.add_column("Description", style="white")
142
+
143
+ for pkg in missing_required:
144
+ pip_name = cls.REQUIRED_DEPS[pkg].split(">=")[0]
145
+ desc = cls.DESCRIPTIONS.get(pkg, "")
146
+ table.add_row(f"❌ {pip_name}", desc)
147
+
148
+ console.print(table)
149
+ console.print()
150
+
151
+ # Optional dependencies table
152
+ if missing_optional:
153
+ table = Table(title="📦 OPTIONAL Dependencies (Missing)", show_header=True)
154
+ table.add_column("Package", style="cyan")
155
+ table.add_column("Description", style="white")
156
+
157
+ for pkg in missing_optional:
158
+ pip_name = cls.OPTIONAL_DEPS[pkg].split(">=")[0]
159
+ desc = cls.DESCRIPTIONS.get(pkg, "")
160
+ table.add_row(f"⚠️ {pip_name}", desc)
161
+
162
+ console.print(table)
163
+ console.print()
164
+
165
+ # Installation instructions
166
+ pkg_manager = _detect_package_manager()
167
+
168
+ if pkg_manager == "poetry":
169
+ console.print(Panel(
170
+ "[bold green]🔧 HOW TO FIX (POETRY)[/bold green]\n\n"
171
+ "Install all dependencies (RECOMMENDED)\n\n"
172
+ "[cyan]poetry add django-cfg[rq][/cyan]",
173
+ expand=False,
174
+ ))
175
+ console.print()
176
+ console.print(Panel(
177
+ "Or install manually:\n\n"
178
+ "[cyan]poetry add django-rq redis rq[/cyan]\n\n"
179
+ "Optional:\n"
180
+ "[dim]poetry add rq-scheduler hiredis[/dim]",
181
+ expand=False,
182
+ ))
183
+ else: # pip
184
+ console.print(Panel(
185
+ "[bold green]🔧 HOW TO FIX (PIP)[/bold green]\n\n"
186
+ "Install all dependencies (RECOMMENDED)\n\n"
187
+ "[cyan]pip install django-cfg[rq][/cyan]",
188
+ expand=False,
189
+ ))
190
+ console.print()
191
+ console.print(Panel(
192
+ "Or install manually:\n\n"
193
+ "[cyan]pip install django-rq redis rq[/cyan]\n\n"
194
+ "Optional:\n"
195
+ "[dim]pip install rq-scheduler hiredis[/dim]",
196
+ expand=False,
197
+ ))
198
+
199
+ console.print()
200
+ console.print(Panel(
201
+ "[bold]📚 MORE INFORMATION[/bold]\n\n"
202
+ "Documentation: https://djangocfg.com/rq\n"
203
+ "Report Issues: https://github.com/django-cfg/django-cfg/issues",
204
+ title="📚 MORE INFORMATION",
205
+ expand=False,
206
+ ))
207
+ console.print()
208
+
209
+ raise RQDependencyError("Django-RQ dependencies are missing. See details above.")
210
+
211
+ @classmethod
212
+ def print_status(cls) -> None:
213
+ """Print dependency status in a nice table."""
214
+ console = Console()
215
+ status = cls.check_all(raise_on_missing=False)
216
+
217
+ table = Table(title="Django-RQ Dependency Status", show_header=True)
218
+ table.add_column("Package", style="cyan")
219
+ table.add_column("Status", style="white")
220
+ table.add_column("Type", style="white")
221
+
222
+ # Required dependencies
223
+ for pkg, spec in cls.REQUIRED_DEPS.items():
224
+ pip_name = spec.split(">=")[0]
225
+ status_str = "✅ Installed" if status.get(pkg, False) else "❌ Missing"
226
+ table.add_row(pip_name, status_str, "Required")
227
+
228
+ # Optional dependencies
229
+ for pkg, spec in cls.OPTIONAL_DEPS.items():
230
+ pip_name = spec.split(">=")[0]
231
+ status_str = "✅ Installed" if status.get(pkg, False) else "⚠️ Missing"
232
+ table.add_row(pip_name, status_str, "Optional")
233
+
234
+ console.print(table)
235
+
236
+
237
+ def _detect_package_manager() -> str:
238
+ """
239
+ Detect which package manager is being used.
240
+
241
+ Returns:
242
+ 'poetry' if poetry.lock exists, 'pip' otherwise
243
+ """
244
+ current = os.getcwd()
245
+
246
+ # Check up to 5 parent directories for poetry.lock
247
+ for _ in range(5):
248
+ if os.path.exists(os.path.join(current, 'poetry.lock')):
249
+ return 'poetry'
250
+
251
+ parent = os.path.dirname(current)
252
+ if parent == current: # Reached root
253
+ break
254
+ current = parent
255
+
256
+ return 'pip'
257
+
258
+
259
+ def check_rq_available() -> bool:
260
+ """
261
+ Lightweight check if RQ is available.
262
+
263
+ Returns:
264
+ True if all required RQ dependencies are installed
265
+ """
266
+ try:
267
+ status = DependencyChecker.check_all(raise_on_missing=False)
268
+ required_deps = ['django_rq', 'redis', 'rq']
269
+ return all(status.get(dep, False) for dep in required_deps)
270
+ except Exception:
271
+ # Fallback to simple import check
272
+ try:
273
+ import django_rq # noqa: F401
274
+ import redis # noqa: F401
275
+ import rq # noqa: F401
276
+ return True
277
+ except ImportError:
278
+ return False
279
+
280
+
281
+ def require_rq_feature() -> None:
282
+ """
283
+ Require RQ dependencies with detailed error message.
284
+
285
+ Raises:
286
+ ImportError: If required dependencies are missing
287
+ """
288
+ try:
289
+ if not check_rq_available():
290
+ DependencyChecker.check_all(raise_on_missing=True)
291
+ except RQDependencyError as e:
292
+ raise ImportError(str(e)) from e
293
+
294
+
295
+ def check_rq_dependencies(raise_on_missing: bool = True) -> Dict[str, bool]:
296
+ """
297
+ Check RQ dependencies and optionally raise if missing.
298
+
299
+ Args:
300
+ raise_on_missing: If True, raise exception when required deps missing
301
+
302
+ Returns:
303
+ Dictionary mapping package names to availability status
304
+
305
+ Raises:
306
+ RQDependencyError: If dependencies missing and raise_on_missing=True
307
+ """
308
+ return DependencyChecker.check_all(raise_on_missing=raise_on_missing)
309
+
310
+
311
+ def print_dependency_status() -> None:
312
+ """Print RQ dependency status table."""
313
+ DependencyChecker.print_status()
@@ -0,0 +1,157 @@
1
+ """
2
+ AppConfig for Django-RQ integration with monitoring and API capabilities.
3
+
4
+ This app provides REST API endpoints for Django-RQ task queue monitoring,
5
+ management, and statistics. It wraps django-rq's functionality with modern
6
+ DRF ViewSets and unified django-cfg patterns.
7
+
8
+ Features:
9
+ - REST API for monitoring queues, workers, and jobs
10
+ - Prometheus metrics integration
11
+ - Enhanced monitoring interfaces
12
+ - Job management (view, requeue, delete)
13
+ - Integration with django-cfg ecosystem (Centrifugo, auth)
14
+ """
15
+
16
+ from __future__ import annotations
17
+
18
+ import os
19
+ import sys
20
+
21
+ from django.apps import AppConfig
22
+
23
+
24
+ class RQAppConfig(AppConfig):
25
+ """
26
+ AppConfig for Django-RQ monitoring and management application.
27
+
28
+ Provides:
29
+ - REST API endpoints for monitoring
30
+ - Prometheus metrics export
31
+ - Job and queue management
32
+ - Worker statistics
33
+ - Integration with django-cfg authentication
34
+
35
+ Usage:
36
+ Add to INSTALLED_APPS:
37
+ INSTALLED_APPS = [
38
+ ...
39
+ 'django_rq', # Required: django-rq core
40
+ 'django_cfg.apps.integrations.rq', # Django-CFG RQ monitoring
41
+ ]
42
+
43
+ Configure in django-cfg config:
44
+ class MyConfig(BaseConfig):
45
+ django_rq: DjangoRQConfig = DjangoRQConfig(
46
+ enabled=True,
47
+ queues={
48
+ 'default': {
49
+ 'host': 'localhost',
50
+ 'port': 6379,
51
+ 'db': 0,
52
+ }
53
+ },
54
+ prometheus_enabled=True,
55
+ )
56
+ """
57
+
58
+ default_auto_field = 'django.db.models.BigAutoField'
59
+ name = 'django_cfg.apps.integrations.rq'
60
+ verbose_name = 'Django-CFG RQ Monitoring'
61
+ label = 'django_cfg_rq'
62
+
63
+ def ready(self):
64
+ """
65
+ Initialize the app when Django starts.
66
+
67
+ Registers:
68
+ - Admin interfaces (if not already registered)
69
+ - Signal handlers for monitoring
70
+ - Scheduled jobs from config
71
+ - Validates RQ dependencies if needed
72
+ """
73
+ # Check dependencies if running RQ-related commands
74
+ self._check_dependencies_if_needed()
75
+
76
+ # Import admin to register custom admin classes
77
+ try:
78
+ from . import admin # noqa: F401
79
+ except ImportError:
80
+ pass
81
+
82
+ # Register scheduled jobs from config (runs once on startup)
83
+ try:
84
+ from .services import register_schedules_from_config
85
+ register_schedules_from_config()
86
+ except Exception as e:
87
+ from django_cfg.modules.django_logging import get_logger
88
+ logger = get_logger("rq.apps")
89
+ logger.warning(f"Failed to register schedules: {e}")
90
+
91
+ def _check_dependencies_if_needed(self):
92
+ """
93
+ Check RQ dependencies only when running RQ-related commands.
94
+
95
+ Skips check for:
96
+ - Migrations (makemigrations, migrate)
97
+ - Shell commands (shell, shell_plus)
98
+ - Test discovery (test --help)
99
+ - Django checks (check)
100
+ - Management command listing (help)
101
+ """
102
+ # Get command name from sys.argv
103
+ if len(sys.argv) < 2:
104
+ return
105
+
106
+ command = sys.argv[1]
107
+
108
+ # Commands that don't need RQ dependencies
109
+ skip_commands = [
110
+ 'makemigrations',
111
+ 'migrate',
112
+ 'shell',
113
+ 'shell_plus',
114
+ 'check',
115
+ 'help',
116
+ 'test',
117
+ 'collectstatic',
118
+ 'createsuperuser',
119
+ 'changepassword',
120
+ 'showmigrations',
121
+ 'sqlmigrate',
122
+ 'inspectdb',
123
+ ]
124
+
125
+ # Skip check for these commands
126
+ if command in skip_commands:
127
+ return
128
+
129
+ # Also skip if running tests (pytest, nose, etc.)
130
+ if 'test' in sys.argv or 'pytest' in sys.argv[0]:
131
+ return
132
+
133
+ # Skip if DJANGO_SKIP_RQ_CHECK environment variable is set
134
+ if os.environ.get('DJANGO_SKIP_RQ_CHECK', '').lower() in ('1', 'true', 'yes'):
135
+ return
136
+
137
+ # For RQ-related commands, perform strict check
138
+ rq_commands = ['rqworker', 'rqscheduler', 'rqenqueue', 'rqstats']
139
+ if command in rq_commands:
140
+ from ._cfg import check_rq_dependencies
141
+ try:
142
+ check_rq_dependencies(raise_on_missing=True)
143
+ except Exception as e:
144
+ # Print error and exit
145
+ print(str(e))
146
+ sys.exit(1)
147
+
148
+ # For other commands, perform silent check (just import validation)
149
+ # This ensures basic imports work but doesn't block the command
150
+ else:
151
+ from ._cfg import check_rq_dependencies
152
+ try:
153
+ # Silent check - only validates that checker itself works
154
+ check_rq_dependencies(raise_on_missing=False)
155
+ except Exception:
156
+ # Silently ignore - don't break other commands
157
+ pass
@@ -0,0 +1 @@
1
+ """Management commands for Django-RQ integration."""
@@ -0,0 +1 @@
1
+ """Django-RQ management commands for django-cfg."""
@@ -0,0 +1,31 @@
1
+ """
2
+ Django-CFG wrapper for django-rq rqscheduler command.
3
+
4
+ Runs the RQ scheduler daemon for scheduled/periodic jobs.
5
+
6
+ Example:
7
+ python manage.py rqscheduler
8
+ python manage.py rqscheduler --queue default
9
+ """
10
+
11
+ from django_rq.management.commands.rqscheduler import Command as DjangoRQSchedulerCommand
12
+
13
+
14
+ class Command(DjangoRQSchedulerCommand):
15
+ """
16
+ Runs the RQ scheduler daemon.
17
+
18
+ The scheduler handles:
19
+ - Scheduled jobs (enqueue at specific time)
20
+ - Periodic jobs (cron-like scheduling)
21
+ - Delayed job execution
22
+
23
+ Inherits all functionality from django-rq's rqscheduler command.
24
+
25
+ Common options:
26
+ --queue QUEUE Queue to schedule jobs on (default: 'default')
27
+ --interval SECONDS Polling interval (default: 1)
28
+ --pid FILE Write PID to file
29
+ """
30
+
31
+ help = 'Runs RQ scheduler daemon for django-cfg (wrapper for django-rq rqscheduler)'
@@ -0,0 +1,33 @@
1
+ """
2
+ Django-CFG wrapper for django-rq rqstats command.
3
+
4
+ Displays real-time statistics about RQ queues and workers.
5
+
6
+ Example:
7
+ python manage.py rqstats
8
+ python manage.py rqstats --interval 5
9
+ """
10
+
11
+ from django_rq.management.commands.rqstats import Command as DjangoRQStatsCommand
12
+
13
+
14
+ class Command(DjangoRQStatsCommand):
15
+ """
16
+ Displays real-time RQ statistics in terminal.
17
+
18
+ Shows:
19
+ - Queue sizes (queued, started, finished, failed)
20
+ - Worker count and status
21
+ - Job processing rates
22
+ - Updates in real-time
23
+
24
+ Inherits all functionality from django-rq's rqstats command.
25
+
26
+ Common options:
27
+ --interval SECONDS Update interval (default: 1)
28
+ --raw Show raw numbers (no colors)
29
+ --only-queues Show only queue statistics
30
+ --only-workers Show only worker statistics
31
+ """
32
+
33
+ help = 'Shows real-time RQ statistics for django-cfg (wrapper for django-rq rqstats)'
@@ -0,0 +1,31 @@
1
+ """
2
+ Django-CFG wrapper for django-rq rqworker command.
3
+
4
+ This is a simple proxy that inherits all functionality from django-rq's rqworker.
5
+ Allows running: python manage.py rqworker [queues]
6
+
7
+ Example:
8
+ python manage.py rqworker default
9
+ python manage.py rqworker high default low
10
+ python manage.py rqworker default --with-scheduler
11
+ """
12
+
13
+ from django_rq.management.commands.rqworker import Command as DjangoRQWorkerCommand
14
+
15
+
16
+ class Command(DjangoRQWorkerCommand):
17
+ """
18
+ Runs RQ workers on specified queues.
19
+
20
+ Inherits all functionality from django-rq's rqworker command.
21
+ See django-rq documentation for available options.
22
+
23
+ Common options:
24
+ --burst Run in burst mode (exit when queue is empty)
25
+ --with-scheduler Run worker with embedded scheduler
26
+ --name NAME Custom worker name
27
+ --worker-ttl SEC Worker timeout (default: 420)
28
+ --sentry-dsn DSN Report exceptions to Sentry
29
+ """
30
+
31
+ help = 'Runs RQ workers for django-cfg (wrapper for django-rq rqworker)'
@@ -0,0 +1,27 @@
1
+ """
2
+ Django-CFG wrapper for django-rq rqworker-pool command.
3
+
4
+ Runs multiple RQ workers in a pool for better performance.
5
+
6
+ Example:
7
+ python manage.py rqworker_pool default --num-workers 4
8
+ python manage.py rqworker_pool high default --num-workers 8
9
+ """
10
+
11
+ from django_rq.management.commands.rqworker_pool import Command as DjangoRQWorkerPoolCommand
12
+
13
+
14
+ class Command(DjangoRQWorkerPoolCommand):
15
+ """
16
+ Runs a pool of RQ workers for improved throughput.
17
+
18
+ Inherits all functionality from django-rq's rqworker-pool command.
19
+ Creates multiple worker processes to handle jobs in parallel.
20
+
21
+ Common options:
22
+ --num-workers N Number of worker processes (default: CPU count)
23
+ --burst Run in burst mode
24
+ --name NAME Worker name prefix
25
+ """
26
+
27
+ help = 'Runs a pool of RQ workers for django-cfg (wrapper for django-rq rqworker-pool)'
@@ -0,0 +1,40 @@
1
+ """
2
+ DRF serializers for Django-RQ monitoring API.
3
+ """
4
+
5
+ from .health import HealthCheckSerializer, RQConfigSerializer
6
+ from .queue import QueueStatsSerializer, QueueDetailSerializer
7
+ from .worker import WorkerSerializer, WorkerStatsSerializer
8
+ from .job import JobListSerializer, JobDetailSerializer, JobActionResponseSerializer
9
+ from .schedule import (
10
+ ScheduleCreateSerializer,
11
+ ScheduledJobSerializer,
12
+ ScheduleActionResponseSerializer,
13
+ )
14
+ from .testing import (
15
+ TestScenarioSerializer,
16
+ RunDemoRequestSerializer,
17
+ StressTestRequestSerializer,
18
+ TestingActionResponseSerializer,
19
+ CleanupRequestSerializer,
20
+ )
21
+
22
+ __all__ = [
23
+ 'HealthCheckSerializer',
24
+ 'RQConfigSerializer',
25
+ 'QueueStatsSerializer',
26
+ 'QueueDetailSerializer',
27
+ 'WorkerSerializer',
28
+ 'WorkerStatsSerializer',
29
+ 'JobListSerializer',
30
+ 'JobDetailSerializer',
31
+ 'JobActionResponseSerializer',
32
+ 'ScheduleCreateSerializer',
33
+ 'ScheduledJobSerializer',
34
+ 'ScheduleActionResponseSerializer',
35
+ 'TestScenarioSerializer',
36
+ 'RunDemoRequestSerializer',
37
+ 'StressTestRequestSerializer',
38
+ 'TestingActionResponseSerializer',
39
+ 'CleanupRequestSerializer',
40
+ ]