liberty-framework 6.0.59__tar.gz → 6.0.61__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. liberty_framework-6.0.61/MANIFEST.in +9 -0
  2. {liberty_framework-6.0.59/liberty_framework.egg-info → liberty_framework-6.0.61}/PKG-INFO +1 -1
  3. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/alembic/env.py +4 -4
  4. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/controllers/api_controller.py +30 -27
  5. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/controllers/setup_controller.py +4 -4
  6. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/controllers/socket_controller.py +2 -2
  7. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/database/base_dao.py +1 -1
  8. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/database/ora_dao.py +3 -3
  9. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/database/pg_dao.py +2 -2
  10. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/main.py +19 -15
  11. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/models/apidb.py +9 -0
  12. liberty_framework-6.0.61/liberty/postgres/dump/airflow.dump +0 -0
  13. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/postgres/dump/gitea.dump +0 -0
  14. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/postgres/dump/keycloak.dump +0 -0
  15. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/postgres/dump/liberty.dump +0 -0
  16. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/postgres/dump/libnetl.dump +0 -0
  17. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/postgres/dump/libnjde.dump +0 -0
  18. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/postgres/dump/libnsx1.dump +0 -0
  19. liberty_framework-6.0.61/liberty/postgres/dump/nomajde.dump +0 -0
  20. liberty_framework-6.0.61/liberty/postgres/dump/nomasx1.dump +0 -0
  21. liberty_framework-6.0.61/liberty/postgres/dump/test.dump +0 -0
  22. liberty_framework-6.0.59/app/public/frontend/assets/index-HlYGfx6q.js → liberty_framework-6.0.61/liberty/public/frontend/assets/index-D-FD6vMP.js +4 -4
  23. liberty_framework-6.0.59/app/public/frontend/assets/index-HlYGfx6q.js.map → liberty_framework-6.0.61/liberty/public/frontend/assets/index-D-FD6vMP.js.map +1 -1
  24. liberty_framework-6.0.59/app/public/frontend/assets/index.es-mB7ZF8OM-f6QJp5B4.js → liberty_framework-6.0.61/liberty/public/frontend/assets/index.es-mB7ZF8OM-BtuhuoJS.js +2 -2
  25. liberty_framework-6.0.61/liberty/public/frontend/assets/index.es-mB7ZF8OM-BtuhuoJS.js.map +1 -0
  26. liberty_framework-6.0.59/app/public/frontend/assets/purify.es-CKk_t3XZ-DHuNJQNB.js → liberty_framework-6.0.61/liberty/public/frontend/assets/purify.es-CKk_t3XZ-DsD8-A7d.js +3 -3
  27. liberty_framework-6.0.61/liberty/public/frontend/assets/purify.es-CKk_t3XZ-DsD8-A7d.js.map +1 -0
  28. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/public/frontend/index.html +1 -1
  29. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/routes/api_routes.py +38 -17
  30. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/routes/react_routes.py +1 -1
  31. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/routes/setup_routes.py +4 -4
  32. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/routes/socket_routes.py +1 -1
  33. liberty_framework-6.0.59/app/services/db_query.py → liberty_framework-6.0.61/liberty/services/api_services.py +4 -4
  34. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/services/db_pool.py +3 -3
  35. liberty_framework-6.0.59/app/services/api_rest.py → liberty_framework-6.0.61/liberty/services/rest_services.py +23 -16
  36. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/services/alembic.py +6 -6
  37. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/services/dump.py +7 -7
  38. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/services/install.py +4 -4
  39. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/services/models.py +4 -4
  40. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/services/setup.py +19 -19
  41. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/utils/encrypt.py +1 -1
  42. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/utils/jwt.py +1 -1
  43. {liberty_framework-6.0.59 → liberty_framework-6.0.61/liberty_framework.egg-info}/PKG-INFO +1 -1
  44. liberty_framework-6.0.61/liberty_framework.egg-info/SOURCES.txt +104 -0
  45. liberty_framework-6.0.61/liberty_framework.egg-info/entry_points.txt +2 -0
  46. liberty_framework-6.0.61/liberty_framework.egg-info/top_level.txt +1 -0
  47. {liberty_framework-6.0.59 → liberty_framework-6.0.61}/setup.py +1 -1
  48. liberty_framework-6.0.59/MANIFEST.in +0 -9
  49. liberty_framework-6.0.59/app/postgres/dump/airflow.dump +0 -0
  50. liberty_framework-6.0.59/app/postgres/dump/nomajde.dump +0 -0
  51. liberty_framework-6.0.59/app/postgres/dump/nomasx1.dump +0 -0
  52. liberty_framework-6.0.59/app/public/frontend/assets/index.es-mB7ZF8OM-f6QJp5B4.js.map +0 -1
  53. liberty_framework-6.0.59/app/public/frontend/assets/purify.es-CKk_t3XZ-DHuNJQNB.js.map +0 -1
  54. liberty_framework-6.0.59/liberty_framework.egg-info/SOURCES.txt +0 -103
  55. liberty_framework-6.0.59/liberty_framework.egg-info/entry_points.txt +0 -2
  56. liberty_framework-6.0.59/liberty_framework.egg-info/top_level.txt +0 -1
  57. {liberty_framework-6.0.59 → liberty_framework-6.0.61}/LICENSE +0 -0
  58. {liberty_framework-6.0.59 → liberty_framework-6.0.61}/README.md +0 -0
  59. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/__init__.py +0 -0
  60. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/alembic/README +0 -0
  61. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/alembic/script.py.mako +0 -0
  62. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/alembic/versions/README +0 -0
  63. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/alembic.ini +0 -0
  64. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/business/__init__.py +0 -0
  65. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/business/oracle.py +0 -0
  66. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/business/postgres.py +0 -0
  67. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/config/__init__.py +0 -0
  68. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/config/files/liberty.ini +0 -0
  69. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/controllers/__init__.py +0 -0
  70. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/database/__init__.py +0 -0
  71. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/logs/__init__.py +0 -0
  72. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/models/__init__.py +0 -0
  73. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/models/ai.py +0 -0
  74. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/models/applications.py +0 -0
  75. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/models/auth.py +0 -0
  76. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/models/base.py +0 -0
  77. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/models/modules.py +0 -0
  78. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/models/pool.py +0 -0
  79. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/models/setup.py +0 -0
  80. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/models/themes.py +0 -0
  81. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/postgres/__init__.py +0 -0
  82. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/postgres/dump/__init__.py +0 -0
  83. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/public/__init__.py +0 -0
  84. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/public/frontend/assets/background_ly-VdfFMP8a.jpg +0 -0
  85. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/public/frontend/assets/logo_ly-HGj2PB94.svg +0 -0
  86. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/public/offline/assets/logo_ly.png +0 -0
  87. /liberty_framework-6.0.59/app/public/offline/offline.html → /liberty_framework-6.0.61/liberty/public/offline/index.html +0 -0
  88. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/public/setup/index.html +0 -0
  89. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/public/setup/setup/assets/background_ly-VdfFMP8a.jpg +0 -0
  90. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/public/setup/setup/assets/index-BBGAGXd2.css +0 -0
  91. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/public/setup/setup/assets/index-knz6QXph.js +0 -0
  92. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/public/setup/setup/assets/index-knz6QXph.js.map +0 -0
  93. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/public/setup/setup/assets/logo_ly-HGj2PB94.svg +0 -0
  94. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/routes/__init__.py +0 -0
  95. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/services/__init__.py +0 -0
  96. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/__init__.py +0 -0
  97. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/data/__init__.py +0 -0
  98. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/data/liberty.json +0 -0
  99. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/data/libnetl.json +0 -0
  100. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/data/libnjde.json +0 -0
  101. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/data/libnsx1.json +0 -0
  102. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/data/nomasx1.json +0 -0
  103. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/models/__init__.py +0 -0
  104. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/models/liberty.py +0 -0
  105. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/models/nomasx1.py +0 -0
  106. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/setup/services/__init__.py +0 -0
  107. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/utils/__init__.py +0 -0
  108. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/utils/common.py +0 -0
  109. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/utils/logs.py +0 -0
  110. {liberty_framework-6.0.59/app → liberty_framework-6.0.61/liberty}/utils/test.py +0 -0
  111. {liberty_framework-6.0.59 → liberty_framework-6.0.61}/liberty_framework.egg-info/dependency_links.txt +0 -0
  112. {liberty_framework-6.0.59 → liberty_framework-6.0.61}/liberty_framework.egg-info/requires.txt +0 -0
  113. {liberty_framework-6.0.59 → liberty_framework-6.0.61}/pyproject.toml +0 -0
  114. {liberty_framework-6.0.59 → liberty_framework-6.0.61}/requirements.txt +0 -0
  115. {liberty_framework-6.0.59 → liberty_framework-6.0.61}/setup.cfg +0 -0
@@ -0,0 +1,9 @@
1
+ include requirements.txt
2
+ include LICENSE
3
+ include README.md
4
+ recursive-include liberty *
5
+ recursive-include tests *
6
+ exclude liberty/config/files/db.properties
7
+ exclude liberty/config/files/encryption.key
8
+ exclude liberty/config/files/secrets.json
9
+ exclude liberty/config/files/secrets.json.enc
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: liberty-framework
3
- Version: 6.0.59
3
+ Version: 6.0.61
4
4
  Summary: Liberty Framework
5
5
  Author: Franck Blettner
6
6
  Author-email: franck.blettner@nomana-it.fr
@@ -8,10 +8,10 @@ from sqlalchemy import create_engine, engine_from_config
8
8
  from sqlalchemy import pool
9
9
 
10
10
  from alembic import context
11
- from app.config import get_db_properties_path
12
- from app.setup.models import liberty, nomasx1
13
- from app.utils.encrypt import Encryption
14
- from app.utils.jwt import JWT
11
+ from liberty.config import get_db_properties_path
12
+ from liberty.setup.models import liberty, nomasx1
13
+ from liberty.utils.encrypt import Encryption
14
+ from liberty.utils.jwt import JWT
15
15
 
16
16
  USE_TWOPHASE = False
17
17
 
@@ -1,44 +1,44 @@
1
1
  from fastapi import HTTPException, Request
2
- from app.utils.encrypt import Encryption
3
- from app.utils.jwt import JWT
4
- from app.services.db_query import Query
5
- from app.services.api_rest import Rest
2
+ from liberty.utils.encrypt import Encryption
3
+ from liberty.utils.jwt import JWT
4
+ from liberty.services.api_services import API
5
+ from liberty.services.rest_services import Rest
6
6
 
7
7
  class ApiController:
8
- def __init__(self, jwt: JWT):
9
- self.queryRest = Query(jwt)
10
- self.apiRest = Rest(self.queryRest)
8
+ def __init__(self, jwt: JWT, api: API = None, rest: Rest = None):
9
+ self.api = api
10
+ self.rest = rest
11
11
  self.jwt = jwt
12
12
 
13
13
  async def token(self, req: Request):
14
- return await self.queryRest.token(req)
14
+ return await self.api.token(req)
15
15
 
16
16
  async def user(self, req: Request):
17
- return await self.queryRest.user(req)
17
+ return await self.api.user(req)
18
18
 
19
19
  async def check(self, req: Request):
20
- return await self.queryRest.check(req)
20
+ return await self.api.check(req)
21
21
 
22
22
  async def get(self, req: Request):
23
- return await self.queryRest.get(req)
23
+ return await self.api.get(req)
24
24
 
25
25
  async def post(self, req: Request):
26
- return await self.queryRest.post(req)
26
+ return await self.api.post(req)
27
27
 
28
28
  async def put(self, req: Request):
29
- return await self.queryRest.post(req)
29
+ return await self.api.post(req)
30
30
 
31
31
  async def delete(self, req: Request):
32
- return await self.queryRest.post(req)
32
+ return await self.api.post(req)
33
33
 
34
34
  async def open(self, req: Request):
35
- return await self.queryRest.open(req)
35
+ return await self.api.open(req)
36
36
 
37
37
  def get_pool_info(self, req: Request, pool: str):
38
- return self.queryRest.get_pool_info(req, pool)
38
+ return self.api.get_pool_info(req, pool)
39
39
 
40
40
  async def close(self, req: Request):
41
- return await self.queryRest.close(req)
41
+ return await self.api.close(req)
42
42
 
43
43
  async def encrypt(self, req: Request):
44
44
  try:
@@ -51,31 +51,34 @@ class ApiController:
51
51
  raise HTTPException(status_code=500, detail=str(err))
52
52
 
53
53
  async def audit(self, req: Request, table: str, user: str):
54
- return await self.queryRest.audit(req, table, user)
54
+ return await self.api.audit(req, table, user)
55
55
 
56
56
  async def modules(self, req: Request):
57
- return await self.queryRest.modules(req)
57
+ return await self.api.modules(req)
58
58
 
59
59
  async def applications(self, req: Request):
60
- return await self.queryRest.applications(req)
60
+ return await self.api.applications(req)
61
61
 
62
62
  async def themes(self, req: Request):
63
- return await self.queryRest.themes(req)
63
+ return await self.api.themes(req)
64
64
 
65
65
  async def push_log(self, req: Request):
66
- return await self.apiRest.push_log(req)
66
+ return await self.rest.push_log(req)
67
67
 
68
68
  async def get_log(self, req: Request):
69
- return await self.apiRest.get_log(req)
69
+ return await self.rest.get_log(req)
70
70
 
71
71
  async def get_log_details(self, req: Request):
72
- return await self.apiRest.get_log_details(req)
72
+ return await self.rest.get_log_details(req)
73
73
 
74
74
  async def ai_prompt(self, req: Request):
75
- return await self.apiRest.ai_prompt(req)
75
+ return await self.rest.ai_prompt(req)
76
76
 
77
77
  async def ai_welcome(self, req: Request):
78
78
  return await self.apiRest.ai_welcome(req)
79
79
 
80
- async def rest(self, req: Request):
81
- return await self.apiRest.rest(req)
80
+ async def call_rest(self, req: Request):
81
+ return await self.rest.call_rest(req)
82
+
83
+ async def version(self, req: Request):
84
+ return await self.apiRest.get_version(req)
@@ -2,10 +2,10 @@ import logging
2
2
  logger = logging.getLogger(__name__)
3
3
 
4
4
  from fastapi import Request
5
- from app.controllers.api_controller import ApiController
6
- from app.utils.jwt import JWT
7
- from app.setup.services.setup import Setup
8
- from app.setup.services.alembic import Alembic
5
+ from liberty.controllers.api_controller import ApiController
6
+ from liberty.utils.jwt import JWT
7
+ from liberty.setup.services.setup import Setup
8
+ from liberty.setup.services.alembic import Alembic
9
9
 
10
10
  class SetupController:
11
11
  def __init__(self, apiController: ApiController, jwt: JWT):
@@ -7,7 +7,7 @@ from fastapi.responses import JSONResponse, HTMLResponse
7
7
  from typing import Optional
8
8
  from socketio import ASGIApp, AsyncServer
9
9
  from fastapi import FastAPI
10
- from app.controllers.api_controller import ApiController
10
+ from liberty.controllers.api_controller import ApiController
11
11
 
12
12
  class SocketController:
13
13
  def __init__(self, io: Optional[AsyncServer] = None):
@@ -66,7 +66,7 @@ class SocketController:
66
66
 
67
67
  # Pool info (simulate fetching details from a database pool if needed)
68
68
  pool_info = []
69
- for pool in self.api_controller.queryRest.db_pools.pools.keys():
69
+ for pool in self.api_controller.api.db_pools.pools.keys():
70
70
  pool_info.append(self.api_controller.get_pool_info(request, pool))
71
71
 
72
72
  applications = list(set(user["app"] for user in self.connected_clients.values()))
@@ -9,7 +9,7 @@ from sqlalchemy import text
9
9
  import re
10
10
  from abc import abstractmethod
11
11
  import json
12
- from app.business.postgres import PostgresQuery
12
+ from liberty.business.postgres import PostgresQuery
13
13
 
14
14
  class BaseDAO:
15
15
  def __init__(self, config: dict):
@@ -4,9 +4,9 @@ import re
4
4
  from sqlalchemy import text
5
5
  from sqlalchemy.ext.asyncio import create_async_engine
6
6
  from sqlalchemy.ext.asyncio import AsyncSession
7
- from app.database.base_dao import BaseDAO
8
- from app.utils.common import PoolConfig
9
- from app.business.oracle import OracleQuery
7
+ from liberty.database.base_dao import BaseDAO
8
+ from liberty.utils.common import PoolConfig
9
+ from liberty.business.oracle import OracleQuery
10
10
  from sqlalchemy.orm import sessionmaker
11
11
  from typing import Dict, List
12
12
 
@@ -3,8 +3,8 @@ logger = logging.getLogger(__name__)
3
3
  import re
4
4
  from sqlalchemy import text
5
5
  from sqlalchemy.ext.asyncio import create_async_engine
6
- from app.database.base_dao import BaseDAO
7
- from app.business.postgres import PostgresQuery
6
+ from liberty.database.base_dao import BaseDAO
7
+ from liberty.business.postgres import PostgresQuery
8
8
  from typing import Dict, List
9
9
  from sqlalchemy.ext.asyncio import AsyncSession
10
10
  from sqlalchemy.orm import sessionmaker
@@ -2,8 +2,6 @@ import asyncio
2
2
  import logging
3
3
  import sys
4
4
 
5
- from app.public import get_frontend_assets_path, get_offline_assets_path, get_setup_assets_path
6
-
7
5
  # Configure global logging
8
6
  logging.basicConfig(
9
7
  level=logging.WARN,
@@ -12,25 +10,31 @@ logging.basicConfig(
12
10
 
13
11
  import os
14
12
  from fastapi.responses import JSONResponse
15
- from fastapi import FastAPI, HTTPException, Request
13
+ from fastapi import FastAPI, HTTPException, Query, Request
16
14
  from fastapi.staticfiles import StaticFiles
17
15
  from fastapi_socketio import SocketManager
18
- from app.utils.jwt import JWT
19
- from app.controllers.setup_controller import SetupController
20
- from app.controllers.api_controller import ApiController
21
- from app.controllers.socket_controller import SocketController
22
- from app.routes.api_routes import setup_api_routes
23
- from app.routes.react_routes import setup_react_routes
24
- from app.routes.socket_routes import setup_socket_routes
25
- from app.routes.setup_routes import setup_setup_routes
26
- from app.config import get_db_properties_path
27
- from contextlib import asynccontextmanager
28
16
  import uvicorn
17
+ from liberty.utils.jwt import JWT
18
+ from liberty.controllers.setup_controller import SetupController
19
+ from liberty.controllers.api_controller import ApiController
20
+ from liberty.controllers.socket_controller import SocketController
21
+ from liberty.routes.api_routes import setup_api_routes
22
+ from liberty.routes.react_routes import setup_react_routes
23
+ from liberty.routes.socket_routes import setup_socket_routes
24
+ from liberty.routes.setup_routes import setup_setup_routes
25
+ from liberty.config import get_db_properties_path
26
+ from contextlib import asynccontextmanager
27
+ from liberty.public import get_frontend_assets_path, get_offline_assets_path, get_setup_assets_path
28
+ from liberty.services.rest_services import Rest
29
+ from liberty.services.api_services import API
30
+
29
31
 
30
32
  class BackendAPI:
31
33
  def __init__(self):
32
34
  self.jwt = JWT()
33
- self.api_controller = ApiController(self.jwt)
35
+ self.api = API(self.jwt)
36
+ self.rest = Rest(self.api)
37
+ self.api_controller = ApiController(self.jwt, self.api, self.rest)
34
38
  self.socket_controller = SocketController()
35
39
  self.setup_controller = SetupController(self.api_controller, self.jwt)
36
40
 
@@ -176,7 +180,7 @@ backend_api.setup_sockets(app)
176
180
 
177
181
  @asynccontextmanager
178
182
  async def lifespan(app: FastAPI):
179
- query_instance = backend_api.api_controller.queryRest
183
+ query_instance = backend_api.api_controller.api
180
184
  app.mount(
181
185
  "/offline/assets",
182
186
  StaticFiles(directory=get_offline_assets_path(), html=True),
@@ -144,4 +144,13 @@ ENCRYPT_ERROR_MESSAGE = "Failed to encrypt data: (sqlalchemy.dialects.postgresql
144
144
  ENCRYPT_RESPONSE_DESCRIPTION = "Encryption successful"
145
145
  ENCRYPT_RESPONSE_EXAMPLE = {
146
146
  "encrypted": "ENC:wNMyALbXf....."
147
+ }
148
+
149
+ # Define the full response schema
150
+ class VersionResponse(BaseModel):
151
+ version: str
152
+ VERSION_ERROR_MESSAGE = "Failed to get the framework version"
153
+ VERSION_RESPONSE_DESCRIPTION = "Version retrieved successfully"
154
+ VERSION_RESPONSE_EXAMPLE = {
155
+ "version": "6.0.59"
147
156
  }