�
Em�h�A � � � d dl mZmZmZ d dlmZmZ d dlmZmZm Z m
Z
mZ d dlZd dl
m
Z
ej e� � Z d dlmZ d dlmZ d dlmZ d d lmZ d d
lmZ d dlmZ e� � Z e� � Z e� � Z e� � Z e� � Z e� � Z!n6# e"$ r.Z#e�$ de#� �� � dZdZdZdZ dZdZ!Y dZ#[#ndZ#[#ww xY w ej% d
� � d� � � Z& ej% d� � d� � � Z' ej% d� � d� � � Z( ej% d� � d� � � Z) ej% d� � d� � � Z* ej% ddg�� � d� � � Z+ ej% ddg�� � d� � � Z, ej% ddg�� � d� � � Z- ej% dd g�� � d!� � � Z. ej% d"d g�� � d#� � � Z/ ej% d$d g�� � d%� � � Z0 ej% d&dg�� � d'� � � Z1 ej% d(dg�� � d)� � � Z2 ej% d*dg�� � d+� � � Z3 ej% d,dg�� � d-� � � Z4ed.k r ej5 d/�0� � dS dS )1� )�render_template�request�jsonify)�app�db)�User�Wallet�Transaction� Portfolio�ProtocolPositionN)�datetime)�
DEXOperations)�LendingOperations)�YieldFarmingOperations)�PortfolioManager)�DeFiAIAgent)�PortfolioAnalyticsz$Could not import necessary modules: �/c � � t d� � S )zLanding pagez
index.html�r � � �'/home/runner/workspace/routes_simple.py�indexr $ s � � �<�(�(�(r z
/dashboardc � � t d� � S )zDashboard pagezdashboard.htmlr r r r � dashboardr ) s � � �+�,�,�,r z /api-docsc � � t d� � S )zAPI documentation pagez
api_docs.htmlr r r r �api_docsr . � � � �?�+�+�+r z /ai-agentc � � t d� � S )zAI Agent interface pagez
ai_agent.htmlr r r r �ai_agent_uir! 3 r r z/ai-featuresc � � t d� � S )zAI Features showcase pagezai_features.htmlr r r r �ai_featuresr# 8 s � � �-�.�.�.r z/api/v1/swap�POST)�methodsc �r � t j � � } g d�}|D ]}|| vrt dd|� �i� � dfc S �t r� t � | d | d | d | d | d | � d
d� � | � dd
� � �� � }t |� � S # t $ rI}t � d|� �� � t ddt |� � d�� � dfcY d}~S d}~ww xY wt dddd�
dgdz � � � �| d | � dd
� � d�� � S # t $ rU}t � dt |� � � �� � t dt |� � d�� � dfcY d}~S d}~ww xY w)zExecute DEX swap operation)�wallet_address�
blockchain�token_in� token_out� amount_in�error�Missing required field: � r( r'