feat: Implement main application shell with navigation and color scheme toggle

- Added Appshell component with responsive navbar and main content area
- Integrated ColorSchemeToggle for light/dark mode switching
- Created Welcome component with styled title and introductory text
- Developed ChatPage for LLM interaction with WebSocket support
- Implemented Biblioteca for managing notes with rich text editor
- Added LoginPage for user authentication with error handling
- Introduced MessageList and MessageBubble components for chat messages
- Styled components with CSS modules for consistent design
This commit is contained in:
2025-06-21 02:01:21 +02:00
parent 3d5deef0fb
commit aef8791151
101 changed files with 169 additions and 166 deletions
+5 -3
View File
@@ -1,4 +1,6 @@
cd ./frontend
npm run dev
cd ..
# Inicia el frontend en una nueva ventana de PowerShell
Start-Process powershell -ArgumentList "-NoExit", "-Command", 'cd ./frontend; npm run dev; pause'
# Inicia el backend en una nueva ventana de PowerShell
Start-Process powershell -ArgumentList "-NoExit", "-Command", 'cd ./backend; uvicorn backend.main:app --reload --host 0.0.0.0 --port 8000; pause'
@@ -5,8 +5,8 @@ from fastapi.responses import StreamingResponse
from pydantic import BaseModel
from fastapi.concurrency import run_in_threadpool
from backend.domains.llms.llm_chat_srvc import construir_agente_llm, responder, responder_stream
from src.Logger.logger_db import LoggerDB, logger
from backend.backend_domains.llms.llm_chat_srvc import construir_agente_llm, responder, responder_stream
from domains.Logger.logger_db import LoggerDB, logger
from entrypoint.init_db import db_credencial
LoggerDB(db_credencial, "logger_llm", created_by="sistema")
@@ -1,16 +1,16 @@
# src/services/agent_service.py
from src.ApiKeys.openai_apikey_mmr import OpenAICredencialRepo
from src.ConexionSql.Postgres_conexion import PostgresConexion
from src.ConexionApis.OpenAi_conexion import OpenAICliente
from src.Llms.Modelos.Openai_model import ModeloOpenAI
from src.Llms.Agente import AgenteAI
from src.Llms.Memory.postgres_MemoryConv import MemoryConvPostgres
from src.Llms.MCPs.McpClient import MCPClient
from src.Llms.MCPs.McpClient_Registry import ClientRegistry
from domains.ApiKeys.openai_apikey_mmr import OpenAICredencialRepo
from domains.ConexionSql.Postgres_conexion import PostgresConexion
from domains.ConexionApis.OpenAi_conexion import OpenAICliente
from domains.Llms.Modelos.Openai_model import ModeloOpenAI
from domains.Llms.Agente import AgenteAI
from domains.Llms.Memory.postgres_MemoryConv import MemoryConvPostgres
from domains.Llms.MCPs.McpClient import MCPClient
from domains.Llms.MCPs.McpClient_Registry import ClientRegistry
from entrypoint.init_db import db_credencial
from src.Logger.logger_db import LoggerDB, logger
from domains.Logger.logger_db import LoggerDB, logger
LoggerDB(db_credencial, "logger_llm", created_by="sistema")
from typing import AsyncGenerator
@@ -1,6 +1,6 @@
from fastapi import WebSocket, APIRouter, WebSocketDisconnect
from backend.domains.llms.llm_chat_srvc import construir_agente_llm
from src.Logger.logger_db import LoggerDB, logger
from backend.backend_domains.llms.llm_chat_srvc import construir_agente_llm
from domains.Logger.logger_db import LoggerDB, logger
from entrypoint.init_db import db_credencial
import json
@@ -1,15 +1,15 @@
from fastapi import APIRouter, Depends, HTTPException
from fastapi import Path
from backend.domains.text_manager.text_manager_schema import BibliotecaInput, NotaInput
from backend.backend_domains.text_manager.text_manager_schema import BibliotecaInput, NotaInput
from fastapi.concurrency import run_in_threadpool
from backend.db.conexion import get_conexion
from backend.domains.text_manager.text_manager_srvc import *
from src.ConexionSql.Postgres_conexion import PostgresConexion
from backend.backend_domains.text_manager.text_manager_srvc import *
from domains.ConexionSql.Postgres_conexion import PostgresConexion
from entrypoint.init_db import db_credencial
from src.Logger.logger_db import LoggerDB, logger
from domains.Logger.logger_db import LoggerDB, logger
LoggerDB(db_credencial, "logger_textos", created_by="sistema")
router = APIRouter()
@@ -1,15 +1,15 @@
from src.TextManager.biblioteca import Biblioteca
from src.TextManager.biblioteca_mmr import BibliotecaRepo
from src.Llms.Embedders.Openai_embedder import OpenAIEmbedder
from src.ApiKeys.openai_apikey_mmr import OpenAICredencialRepo
from src.ConexionSql.Postgres_conexion import PostgresConexion
from src.TextManager.nota import Nota
from src.TextManager.notas_mmr import generar_tabla_nota_para_biblioteca, NotaRepo
from domains.TextManager.biblioteca import Biblioteca
from domains.TextManager.biblioteca_mmr import BibliotecaRepo
from domains.Llms.Embedders.Openai_embedder import OpenAIEmbedder
from domains.ApiKeys.openai_apikey_mmr import OpenAICredencialRepo
from domains.ConexionSql.Postgres_conexion import PostgresConexion
from domains.TextManager.nota import Nota
from domains.TextManager.notas_mmr import generar_tabla_nota_para_biblioteca, NotaRepo
from sqlalchemy import MetaData
from backend.domains.text_manager.text_manager_schema import NotaInput
from backend.backend_domains.text_manager.text_manager_schema import NotaInput
from entrypoint.init_db import db_credencial
from src.Logger.logger_db import LoggerDB, logger
from domains.Logger.logger_db import LoggerDB, logger
LoggerDB(db_credencial, "logger_textos", created_by="sistema")
def crear_biblioteca(nombre_biblioteca: str, conexion: PostgresConexion, descripcion: str = None):
@@ -1,6 +1,6 @@
from fastapi import APIRouter, Depends, HTTPException
from sqlalchemy.orm import Session
from src.Usuario.usuario_mmr import UsuarioRepo, Usuario, UsuarioModel
from domains.Usuario.usuario_mmr import UsuarioRepo, Usuario, UsuarioModel
from backend.db.conexion import get_conexion
router = APIRouter()
+1 -1
View File
@@ -1,6 +1,6 @@
# backend/db/conexion.py
from entrypoint.init_db import db_credencial
from src.ConexionSql.Postgres_conexion import PostgresConexion
from domains.ConexionSql.Postgres_conexion import PostgresConexion
def get_conexion():
conexion = PostgresConexion(db_credencial)
+1 -1
View File
@@ -3,7 +3,7 @@
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
from backend.router_v1 import router
from backend.domains.llms import llm_chat_ws_endpoint_v1
from backend.backend_domains.llms import llm_chat_ws_endpoint_v1
app = FastAPI(
+5 -5
View File
@@ -1,11 +1,11 @@
# backend/api/router_v1.py
from fastapi import APIRouter
from backend.domains.experiments import charts_examples_endpoint_v1 as charts
from backend.domains.experiments import ping_endpoint_v1
from backend.domains.text_manager import text_manager_endpoint_v1
from backend.domains.llms import llm_chat_endpoint_v1
from backend.domains.usuarios_endpoint_v1 import router as usuarios_router
from backend.backend_domains.experiments import charts_examples_endpoint_v1 as charts
from backend.backend_domains.experiments import ping_endpoint_v1
from backend.backend_domains.text_manager import text_manager_endpoint_v1
from backend.backend_domains.llms import llm_chat_endpoint_v1
from backend.backend_domains.usuarios_endpoint_v1 import router as usuarios_router
router = APIRouter()
router.include_router(ping_endpoint_v1.router, prefix="/ping")
@@ -1,4 +1,4 @@
from src.Security.GenerarIDs import GeneradorIDUnico
from domains.Security.GenerarIDs import GeneradorIDUnico
class OpenAICredencial:
def __init__(self, titulo: str, api_key: str, organizacion: str = None, id: str = None):
@@ -3,17 +3,17 @@ import base64
from dotenv import load_dotenv
from sqlalchemy import Column, Integer, String
from src.ConexionSql.Base_conexion import ConexionBase
from src.base import Base
from src.ApiKeys.openai_apikey import OpenAICredencial
from src.Security.Encriptar import Encriptar_fernet
from domains.ConexionSql.Base_conexion import ConexionBase
from domains.base import Base
from domains.ApiKeys.openai_apikey import OpenAICredencial
from domains.Security.Encriptar import Encriptar_fernet
from entrypoint import ENV_PATH
from src.ArquitectureLayer.Mapper import Mapper_base
from domains.ArquitectureLayer.Mapper import Mapper_base
from sqlalchemy import Column, String
from src.ArquitectureLayer.Model import Model_base
from src.ArquitectureLayer.Repo import Repo_base
from domains.ArquitectureLayer.Model import Model_base
from domains.ArquitectureLayer.Repo import Repo_base
# ----------------------
@@ -6,7 +6,7 @@ from sqlalchemy.orm import Session
from sqlalchemy import func
from datetime import datetime
from src.ArquitectureLayer.Mapper import Mapper_base # Asegúrate de importar tu ABC base
from domains.ArquitectureLayer.Mapper import Mapper_base # Asegúrate de importar tu ABC base
TModelo = TypeVar("TModelo")
TDominio = TypeVar("TDominio")
@@ -1,5 +1,5 @@
import requests
from src.Credenciales.ollama_credencial import OllamaCredencial
from domains.Credenciales.ollama_credencial import OllamaCredencial
class OllamaCliente:
def __init__(self, credencial: OllamaCredencial):
@@ -1,5 +1,5 @@
from openai import OpenAI
from src.ApiKeys.openai_apikey import OpenAICredencial
from domains.ApiKeys.openai_apikey import OpenAICredencial
class OpenAICliente:
def __init__(self, credencial: OpenAICredencial):
@@ -4,8 +4,8 @@ from sqlalchemy.exc import SQLAlchemyError
from sqlalchemy.orm import sessionmaker, Session
from sqlalchemy.engine import Engine
from src.ConexionSql.Base_conexion import ConexionBase
from src.Credenciales.postgres_credencial import PostgresCredencial
from domains.ConexionSql.Base_conexion import ConexionBase
from domains.Credenciales.postgres_credencial import PostgresCredencial
class PostgresConexion(ConexionBase):
def __init__(self, *args, **kwargs):
@@ -1,4 +1,4 @@
from src.Security.GenerarIDs import GeneradorIDUnico
from domains.Security.GenerarIDs import GeneradorIDUnico
class OllamaCredencial:
def __init__(self, titulo: str, base_url: str = "http://localhost:11434", id: str = None):
@@ -1,4 +1,4 @@
from src.Security.GenerarIDs import GeneradorIDUnico
from domains.Security.GenerarIDs import GeneradorIDUnico
class PostgresCredencial:
def __init__(self, titulo: str, host: str, port: int, dbname: str, user: str, password: str, id: str = None):
@@ -6,14 +6,14 @@ from sqlalchemy import DateTime, Text, func
import base64
from src.ArquitectureLayer.Mapper import Mapper_base
from src.ArquitectureLayer.Model import Model_base
from src.ArquitectureLayer.Repo import Repo_base
from domains.ArquitectureLayer.Mapper import Mapper_base
from domains.ArquitectureLayer.Model import Model_base
from domains.ArquitectureLayer.Repo import Repo_base
from src.ConexionSql.Base_conexion import ConexionBase
from src.base import Base
from src.Credenciales.postgres_credencial import PostgresCredencial
from src.Security.Encriptar import Encriptar_fernet
from domains.ConexionSql.Base_conexion import ConexionBase
from domains.base import Base
from domains.Credenciales.postgres_credencial import PostgresCredencial
from domains.Security.Encriptar import Encriptar_fernet
# ----------------------
# Cargar clave maestra
@@ -1,13 +1,13 @@
from src.Llms.Modelos.Base_model import ModeloABC
from src.Llms.Memory.Base_MemoryConv import MemoryConvABC
from src.Llms.MCPs.McpClient_Registry import ClientRegistry
from domains.Llms.Modelos.Base_model import ModeloABC
from domains.Llms.Memory.Base_MemoryConv import MemoryConvABC
from domains.Llms.MCPs.McpClient_Registry import ClientRegistry
from datetime import datetime
from typing import Optional, List, Union, AsyncGenerator
import re
import json
from entrypoint.init_db import db_credencial
from src.Logger.logger_db import LoggerDB, logger
from domains.Logger.logger_db import LoggerDB, logger
LoggerDB(db_credencial, "logger_agentes", created_by="sistema")
@@ -1,8 +1,8 @@
from typing import List
from src.Llms.Embedders.Base_Embedder import EmbedderABC # Asegúrate de que EmbedderABC esté en este módulo
from src.ApiKeys.openai_apikey import OpenAICredencial
from src.ConexionApis.OpenAi_conexion import OpenAICliente
from src.Security.GenerarIDs import GeneradorIDUnico
from domains.Llms.Embedders.Base_Embedder import EmbedderABC # Asegúrate de que EmbedderABC esté en este módulo
from domains.ApiKeys.openai_apikey import OpenAICredencial
from domains.ConexionApis.OpenAi_conexion import OpenAICliente
from domains.Security.GenerarIDs import GeneradorIDUnico
class OpenAIEmbedder(EmbedderABC):
def __init__(self, credencial: OpenAICredencial,
@@ -3,15 +3,15 @@ from dotenv import load_dotenv
from sqlalchemy import Column, String
from sqlalchemy import Column, String, ForeignKey
from src.ArquitectureLayer.Mapper import Mapper_base
from src.ArquitectureLayer.Model import Model_base
from src.ArquitectureLayer.Repo import Repo_base
from domains.ArquitectureLayer.Mapper import Mapper_base
from domains.ArquitectureLayer.Model import Model_base
from domains.ArquitectureLayer.Repo import Repo_base
from src.ConexionSql.Base_conexion import ConexionBase
from src.base import Base
from src.Security.GenerarIDs import GeneradorIDUnico
from src.Llms.Embedders.Openai_embedder import OpenAIEmbedder
from src.ApiKeys.openai_apikey import OpenAICredencial
from domains.ConexionSql.Base_conexion import ConexionBase
from domains.base import Base
from domains.Security.GenerarIDs import GeneradorIDUnico
from domains.Llms.Embedders.Openai_embedder import OpenAIEmbedder
from domains.ApiKeys.openai_apikey import OpenAICredencial
# ----------------------
# Cargar configuración desde .env si se requiere
@@ -1,4 +1,4 @@
from src.Llms.MCPs.McpClient import MCPClient
from domains.Llms.MCPs.McpClient import MCPClient
from typing import Any
class ClientRegistry:
@@ -1,9 +1,9 @@
from sqlalchemy import Table, Column, Integer, String, MetaData, insert, select, delete
from typing import Literal
from src.Credenciales.postgres_credencial import PostgresCredencial
from src.ConexionSql.Postgres_conexion import PostgresConexion # Usamos la clase específica
from src.Llms.Memory.Base_MemoryConv import MemoryConvABC
from domains.Credenciales.postgres_credencial import PostgresCredencial
from domains.ConexionSql.Postgres_conexion import PostgresConexion # Usamos la clase específica
from domains.Llms.Memory.Base_MemoryConv import MemoryConvABC
class MemoryConvPostgres(MemoryConvABC):
@@ -1,7 +1,7 @@
from src.Llms.Modelos.Base_model import ModeloABC
from src.Security.GenerarIDs import GeneradorIDUnico
from domains.Llms.Modelos.Base_model import ModeloABC
from domains.Security.GenerarIDs import GeneradorIDUnico
from typing import AsyncGenerator, Union
from src.ConexionApis.Ollama_cliente import OllamaCliente # Asegúrate de importar correctamente
from domains.ConexionApis.Ollama_cliente import OllamaCliente # Asegúrate de importar correctamente
import asyncio
class ModeloOllama(ModeloABC):
@@ -1,6 +1,6 @@
from src.Llms.Modelos.Base_model import ModeloABC
from src.ConexionApis.OpenAi_conexion import OpenAICliente
from src.Security.GenerarIDs import GeneradorIDUnico
from domains.Llms.Modelos.Base_model import ModeloABC
from domains.ConexionApis.OpenAi_conexion import OpenAICliente
from domains.Security.GenerarIDs import GeneradorIDUnico
import asyncio
from typing import AsyncGenerator, Union
@@ -2,15 +2,15 @@ import os
from dotenv import load_dotenv
from sqlalchemy import Column, Integer, String, Float, Boolean
from src.ArquitectureLayer.Mapper import Mapper_base
from src.ArquitectureLayer.Model import Model_base
from src.ArquitectureLayer.Repo import Repo_base
from domains.ArquitectureLayer.Mapper import Mapper_base
from domains.ArquitectureLayer.Model import Model_base
from domains.ArquitectureLayer.Repo import Repo_base
from typing import Optional
from src.ConexionSql.Base_conexion import ConexionBase
from src.base import Base
from src.Llms.Modelos.Openai_model import ModeloOpenAI # Clase real de lógica
from domains.ConexionSql.Base_conexion import ConexionBase
from domains.base import Base
from domains.Llms.Modelos.Openai_model import ModeloOpenAI # Clase real de lógica
# ----------------------
# Cargar clave maestra
@@ -3,9 +3,9 @@ from sqlalchemy import Column, Integer, String, Text, TIMESTAMP
from sqlalchemy.orm import sessionmaker
from sqlalchemy.exc import SQLAlchemyError
from src.ArquitectureLayer.Model import Model_base
from src.ConexionSql.Postgres_conexion import PostgresConexion
from src.Credenciales.postgres_credencial import PostgresCredencial
from domains.ArquitectureLayer.Model import Model_base
from domains.ConexionSql.Postgres_conexion import PostgresConexion
from domains.Credenciales.postgres_credencial import PostgresCredencial
class LoggerDB:
_sink_removido = False # ← evita múltiples remove() si se crean varias instancias
@@ -1,11 +1,11 @@
from src.Security.GenerarIDs import GeneradorIDUnico
from src.Llms.Embedders.Base_Embedder import EmbedderABC # Asegúrate de que esta ruta sea correcta
from domains.Security.GenerarIDs import GeneradorIDUnico
from domains.Llms.Embedders.Base_Embedder import EmbedderABC # Asegúrate de que esta ruta sea correcta
from typing import List, Optional
from src.ConexionSql.Base_conexion import ConexionBase
from domains.ConexionSql.Base_conexion import ConexionBase
from sqlalchemy import MetaData # Asegúrate de importar esto
from src.TextManager.notas_mmr import generar_tabla_nota_para_biblioteca # Ajusta si es necesario
from domains.TextManager.notas_mmr import generar_tabla_nota_para_biblioteca # Ajusta si es necesario
from sqlalchemy import inspect
from src.base import Base
from domains.base import Base
class Biblioteca:
@@ -3,16 +3,16 @@ import base64
from dotenv import load_dotenv
from sqlalchemy import Column, String, Integer
from src.ArquitectureLayer.Mapper import Mapper_base
from src.ArquitectureLayer.Model import Model_base
from src.ArquitectureLayer.Repo import Repo_base
from domains.ArquitectureLayer.Mapper import Mapper_base
from domains.ArquitectureLayer.Model import Model_base
from domains.ArquitectureLayer.Repo import Repo_base
from src.ConexionSql.Base_conexion import ConexionBase
from src.base import Base
from src.Security.Encriptar import Encriptar_fernet
from src.Security.GenerarIDs import GeneradorIDUnico
from src.Llms.Embedders.Base_Embedder import EmbedderABC
from src.TextManager.biblioteca import Biblioteca # Suponiendo que defines la clase lógica Biblioteca aquí
from domains.ConexionSql.Base_conexion import ConexionBase
from domains.base import Base
from domains.Security.Encriptar import Encriptar_fernet
from domains.Security.GenerarIDs import GeneradorIDUnico
from domains.Llms.Embedders.Base_Embedder import EmbedderABC
from domains.TextManager.biblioteca import Biblioteca # Suponiendo que defines la clase lógica Biblioteca aquí
# ----------------------
# Cargar clave maestra
@@ -1,4 +1,4 @@
from src.Security.GenerarIDs import GeneradorIDUnico
from domains.Security.GenerarIDs import GeneradorIDUnico
from typing import List
class Nota:
@@ -3,17 +3,17 @@ from dotenv import load_dotenv
from sqlalchemy import Table, Column, String, Text, MetaData
from pgvector.sqlalchemy import Vector
from sqlalchemy.orm import registry, Session
from src.TextManager.nota import Nota
from src.ConexionSql.Base_conexion import ConexionBase
from domains.TextManager.nota import Nota
from domains.ConexionSql.Base_conexion import ConexionBase
from typing import Tuple
import re
from src.ArquitectureLayer.Mapper import Mapper_base
from src.ArquitectureLayer.Model import Model_base
from src.ArquitectureLayer.Repo import Repo_base
from domains.ArquitectureLayer.Mapper import Mapper_base
from domains.ArquitectureLayer.Model import Model_base
from domains.ArquitectureLayer.Repo import Repo_base
from src.Credenciales.postgres_credencial import PostgresCredencial # Asegúrate de tener esta clase implementada correctamente
from domains.Credenciales.postgres_credencial import PostgresCredencial # Asegúrate de tener esta clase implementada correctamente
titulo = os.getenv('DB_TITLE')
@@ -34,11 +34,11 @@ db_credencial = PostgresCredencial(
)
# from entrypoint.init_db import db_credencial
from src.Logger.logger_db import LoggerDB, logger
from domains.Logger.logger_db import LoggerDB, logger
LoggerDB(db_credencial, "logger_textos", created_by="sistema")
from src.base import Base # Este es tu declarative_base()
from domains.base import Base # Este es tu declarative_base()
# ----------------------
# Cargar .env
@@ -1,8 +1,8 @@
from sqlalchemy import Column, Integer, String, Boolean
from src.ArquitectureLayer.Model import Model_base
from src.ArquitectureLayer.Mapper import Mapper_base
from src.ArquitectureLayer.Repo import Repo_base
from src.Usuario.usuario import Usuario
from domains.ArquitectureLayer.Model import Model_base
from domains.ArquitectureLayer.Mapper import Mapper_base
from domains.ArquitectureLayer.Repo import Repo_base
from domains.Usuario.usuario import Usuario
# ----------------------
# MODELO (SQLAlchemy)
View File
+8 -8
View File
@@ -1,14 +1,14 @@
# entrypoint/init_db.py
from src.base import Base
from src.ConexionSql.Postgres_conexion import PostgresConexion # Asegúrate de tener esta clase implementada correctamente
from src.Credenciales.postgres_credencial import PostgresCredencial # Asegúrate de tener esta clase implementada correctamente
from domains.base import Base
from domains.ConexionSql.Postgres_conexion import PostgresConexion # Asegúrate de tener esta clase implementada correctamente
from domains.Credenciales.postgres_credencial import PostgresCredencial # Asegúrate de tener esta clase implementada correctamente
from src.Credenciales.postgres_credencial_mmr import PostgresCredencialModel
from src.ApiKeys.openai_apikey_mmr import OpenAICredencialModel
from src.Llms.Modelos.Openai_model_mmr import ModeloOpenAIConfigModel
from src.Llms.Embedders.Openai_embedder_mmr import OpenAIEmbedderModel
from src.TextManager.biblioteca_mmr import BibliotecaModel
from domains.Credenciales.postgres_credencial_mmr import PostgresCredencialModel
from domains.ApiKeys.openai_apikey_mmr import OpenAICredencialModel
from domains.Llms.Modelos.Openai_model_mmr import ModeloOpenAIConfigModel
from domains.Llms.Embedders.Openai_embedder_mmr import OpenAIEmbedderModel
from domains.TextManager.biblioteca_mmr import BibliotecaModel
from dotenv import load_dotenv
+10 -10
View File
@@ -1,14 +1,14 @@
import { createBrowserRouter, RouterProvider } from 'react-router-dom';
import { HomePage } from './domains/Home/Home.page';
import { Consulta_API } from './domains/Experiments/Consulta_api';
import { Error_404 } from './domains/FitzStudio/404/404'; // Ajusta si está en otra carpeta
import { Grid_Dashboard } from './domains/Experiments/Grid_dashboard'; // Ajusta si está en otra carpeta
import { Biblioteca } from './domains/TextEditor/Biblioteca';
import { VisualizacionesRandom } from './domains/Experiments/Visualizaciones_Random';
import { Camara_noir } from './domains/CamaraNoir/Camaras_noir';
import EditorTest from "./domains/TextEditor/Editor_Test";
import { ChatPage } from './domains/Llms/Chat/ChatPage';
import { LoginPage } from './domains/Usuarios/Login.page';
import { HomePage } from './frontend_domains/Home/Home.page';
import { Consulta_API } from './frontend_domains/Experiments/Consulta_api';
import { Error_404 } from './frontend_domains/FitzStudio/404/404'; // Ajusta si está en otra carpeta
import { Grid_Dashboard } from './frontend_domains/Experiments/Grid_dashboard'; // Ajusta si está en otra carpeta
import { Biblioteca } from './frontend_domains/TextEditor/Biblioteca';
import { VisualizacionesRandom } from './frontend_domains/Experiments/Visualizaciones_Random';
import { Camara_noir } from './frontend_domains/CamaraNoir/Camaras_noir';
import EditorTest from "./frontend_domains/TextEditor/Editor_Test";
import { ChatPage } from './frontend_domains/Llms/Chat/ChatPage';
import { LoginPage } from './frontend_domains/Usuarios/Login.page';
const router = createBrowserRouter([
+1 -1
View File
@@ -1,6 +1,6 @@
// src/data/submenuLinks.ts
import { Biblioteca } from "@/domains/TextEditor/Biblioteca";
import { Biblioteca } from "@/frontend_domains/TextEditor/Biblioteca";
export const submenuLinks = {
@@ -3,7 +3,7 @@ import { useMantineTheme } from '@mantine/core';
import { IconArrowLeft } from '../../../assets/icons';
import { Link } from 'react-router-dom';
import { MantineCardWithShader } from './HoloShader_404'; // Ajusta ruta si es necesario
import { AppShellWithMenu } from '../../FitzStudio/Appshell/Appshell';
import { AppShellWithMenu } from '../Appshell/Appshell';
@@ -1,4 +1,4 @@
import { AppShellWithMenu } from '../FitzStudio/Appshell/Appshell';
import { AppShellWithMenu } from './Appshell/Appshell';
export function Plantilla() {
@@ -1,6 +1,6 @@
import { AppShellWithMenu } from '../FitzStudio/Appshell/Appshell';
import { Welcome } from '@/domains/FitzStudio/Welcome/Welcome';
import { ColorSchemeToggle } from '@/domains/FitzStudio/ColorSchemeToggle/ColorSchemeToggle';
import { Welcome } from '@/frontend_domains/FitzStudio/Welcome/Welcome';
import { ColorSchemeToggle } from '@/frontend_domains/FitzStudio/ColorSchemeToggle/ColorSchemeToggle';
export function HomePage() {
@@ -1,6 +1,7 @@
import { useState } from 'react';
import { TextInput, PasswordInput, Button, Paper, Title, Container, Group, Alert } from '@mantine/core';
import { IconUser, IconLock } from '@tabler/icons-react';
import UserIcon from '../../assets/icons/outlined/user.svg?react';
import LockIcon from '../../assets/icons/outlined/lock.svg?react';
export function LoginPage() {
const [email, setEmail] = useState('');
@@ -37,7 +38,7 @@ export function LoginPage() {
<TextInput
label="Email"
placeholder="tucorreo@ejemplo.com"
icon={<IconUser size={18} />}
icon={<UserIcon style={{ width: 18, height: 18 }} />}
value={email}
onChange={e => setEmail(e.target.value)}
required
@@ -46,7 +47,7 @@ export function LoginPage() {
<PasswordInput
label="Contraseña"
placeholder="Tu contraseña"
icon={<IconLock size={18} />}
icon={<LockIcon style={{ width: 18, height: 18 }} />}
value={password}
onChange={e => setPassword(e.target.value)}
required
+13 -13
View File
@@ -1,20 +1,20 @@
import asyncio
from src.ApiKeys.openai_apikey import OpenAICredencial
from src.ApiKeys.openai_apikey_mmr import OpenAICredencialRepo
from src.ConexionSql.Postgres_conexion import PostgresConexion
from domains.ApiKeys.openai_apikey import OpenAICredencial
from domains.ApiKeys.openai_apikey_mmr import OpenAICredencialRepo
from domains.ConexionSql.Postgres_conexion import PostgresConexion
from entrypoint.init_db import db_credencial
from src.ConexionApis.OpenAi_conexion import OpenAICliente
from src.Llms.Modelos.Openai_model import ModeloOpenAI
from src.Llms.Agente import AgenteAI
from src.Llms.Memory.postgres_MemoryConv import MemoryConvPostgres
from domains.ConexionApis.OpenAi_conexion import OpenAICliente
from domains.Llms.Modelos.Openai_model import ModeloOpenAI
from domains.Llms.Agente import AgenteAI
from domains.Llms.Memory.postgres_MemoryConv import MemoryConvPostgres
from fastmcp.client.transports import StreamableHttpTransport
from fastmcp.client import Client
from src.Llms.MCPs.McpClient import MCPClient # ya tienes esta clase
from src.Llms.MCPs.McpClient_Registry import ClientRegistry # o ajusta según tu estructura
from src.Credenciales.ollama_credencial import OllamaCredencial
from src.ConexionApis.Ollama_cliente import OllamaCliente
from src.Llms.Modelos.Ollama_model import ModeloOllama
from src.Llms.MCPs.McpServer import MCPServerRunner
from domains.Llms.MCPs.McpClient import MCPClient # ya tienes esta clase
from domains.Llms.MCPs.McpClient_Registry import ClientRegistry # o ajusta según tu estructura
from domains.Credenciales.ollama_credencial import OllamaCredencial
from domains.ConexionApis.Ollama_cliente import OllamaCliente
from domains.Llms.Modelos.Ollama_model import ModeloOllama
from domains.Llms.MCPs.McpServer import MCPServerRunner
import asyncio
+1 -1
View File
@@ -1,5 +1,5 @@
import asyncio
from src.Llms.MCPs.McpServer import MCPServerRunner
from domains.Llms.MCPs.McpServer import MCPServerRunner
async def main():
venv_python = r"E:\Fitz_Studio\.venv\Scripts\python.exe"
+1 -1
View File
@@ -2,7 +2,7 @@ import asyncio
import os
import pyperclip
import re
from src.ScrappingWeb.Scrapper import Scrapper
from domains.ScrappingWeb.Scrapper import Scrapper
def sanitizar(nombre: str) -> str:
return re.sub(r'[\\/*?:"<>|]', "_", nombre).strip()[:100]
+3 -3
View File
@@ -1,9 +1,9 @@
import asyncio
import os
import re
from src.ScrappingWeb.Navegador import Navegador
from src.ScrappingWeb.Scrapper import Scrapper
from src.ScrappingWeb.Tab import Tab
from domains.ScrappingWeb.Navegador import Navegador
from domains.ScrappingWeb.Scrapper import Scrapper
from domains.ScrappingWeb.Tab import Tab
import aiohttp
import csv
+1 -1
View File
@@ -1,5 +1,5 @@
from entrypoint.init_db import db_credencial
from src.Logger.logger_db import LoggerDB, logger
from domains.Logger.logger_db import LoggerDB, logger
LoggerDB(db_credencial, "logger_eventos", created_by="sistema_agente")
View File

Some files were not shown because too many files have changed in this diff Show More