From 9889bc4f5576830a0c4a714fef11abffcbe32543 Mon Sep 17 00:00:00 2001 From: DEMEUSY Date: Sun, 21 Sep 2025 17:49:38 +0200 Subject: [PATCH 1/3] =?UTF-8?q?=E2=9C=A8=20[UPDATE]=20Refactor=20wallet=20?= =?UTF-8?q?component=20for=20improved=20UI=20and=20status=20messaging?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Updated status messages to remove checkmarks for a cleaner look. - Enhanced wallet connection and manual input sections with improved layout and styling. - Added responsive design adjustments for better usability on smaller screens. - Introduced animations for wallet connection states and button hover effects. --- .../src/components/wallet.vue | 360 +++++++++++++----- 1 file changed, 263 insertions(+), 97 deletions(-) diff --git a/crypto-pilot-builder/src/components/wallet.vue b/crypto-pilot-builder/src/components/wallet.vue index fd3a844..181729e 100644 --- a/crypto-pilot-builder/src/components/wallet.vue +++ b/crypto-pilot-builder/src/components/wallet.vue @@ -358,7 +358,7 @@ async function connectWallet() { try { const [account] = await window.ethereum.request({ method: 'eth_requestAccounts' }) address.value = account - status.value = "✅ Wallet connecté automatiquement" + status.value = "Wallet connecté automatiquement" showManualInput.value = false // Synchroniser avec le backend await syncWalletAddressWithBackend() @@ -384,7 +384,7 @@ async function validateManualAddress() { return } address.value = manualAddress.value - status.value = "✅ Adresse configurée manuellement" + status.value = "Adresse configurée manuellement" showManualInput.value = false // Synchroniser avec le backend await syncWalletAddressWithBackend() @@ -412,7 +412,7 @@ async function syncWalletAddressWithBackend() { wallet_address: address.value } }) - console.log('✅ Adresse wallet synchronisée avec le backend') + console.log('Adresse wallet synchronisée avec le backend') } catch (error) { console.error('❌ Erreur synchronisation wallet:', error) } @@ -424,8 +424,8 @@ async function loadWalletAddressFromBackend() { const response = await apiService.request('/wallet-address') if (response.wallet_address) { address.value = response.wallet_address - status.value = "✅ Adresse chargée depuis le serveur" - console.log('✅ Adresse wallet chargée depuis le backend') + status.value = " Adresse chargée depuis le serveur" + console.log('Adresse wallet chargée depuis le backend') } } catch (error) { console.log('ℹ️ Aucune adresse wallet configurée sur le serveur') @@ -770,175 +770,341 @@ defineExpose({ \ No newline at end of file From 4c80453b06a61047fc2463f570290a96b875e422 Mon Sep 17 00:00:00 2001 From: DEMEUSY Date: Sun, 21 Sep 2025 18:23:43 +0200 Subject: [PATCH 2/3] =?UTF-8?q?=F0=9F=8E=A8=20[UPDATE]=20Revamp=20Accueil.?= =?UTF-8?q?vue=20for=20improved=20layout=20and=20responsiveness?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Updated sidebar and main content styles for better alignment and usability. - Enhanced responsive design with media queries for tablet and mobile views. - Adjusted z-index properties for proper layering of components. - Improved overall visual consistency with new background gradients and dimensions. --- crypto-pilot-builder/src/acceuil/Accueil.vue | 51 ++++++++++-- .../src/pipeline_agent/acceuil/Accueil.vue | 78 ++++++++++++++++--- 2 files changed, 113 insertions(+), 16 deletions(-) diff --git a/crypto-pilot-builder/src/acceuil/Accueil.vue b/crypto-pilot-builder/src/acceuil/Accueil.vue index b378c8f..8e66d98 100644 --- a/crypto-pilot-builder/src/acceuil/Accueil.vue +++ b/crypto-pilot-builder/src/acceuil/Accueil.vue @@ -1652,17 +1652,17 @@ export default { display: flex; height: 100vh; font-family: "Roboto", sans-serif; - background: linear-gradient(120deg, rgba(28, 32, 51, 0), rgba(16, 21, 33, 0)); + background: linear-gradient(135deg, #111421 0%, #111421 100%); overflow: hidden; } /* ===== SIDEBAR ===== */ .sidebar { position: fixed; - top: 10vh; - left: 5vh; - width: 28vh; - height: 80vh; + top: 20px; + left: 20px; + width: 320px; + height: calc(100vh - 40px); background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(20px); border-radius: 24px; @@ -1672,7 +1672,10 @@ export default { display: flex; flex-direction: column; gap: 20px; - overflow: hidden; + overflow-y: auto; + z-index: 4; + box-sizing: border-box; + margin-right: 20px; } .sidebar-header { margin-bottom: 35px; @@ -1957,12 +1960,18 @@ export default { /* ===== CONTENU PRINCIPAL ===== */ .main-content { flex: 1; + margin-left: 380px; padding: 50px; display: flex; flex-direction: column; align-items: center; background: linear-gradient(135deg, #111421 0%, #111421 100%); overflow-y: auto; + min-height: 100vh; + width: calc(100% - 380px); + box-sizing: border-box; + position: relative; + z-index: 1; } /* En-tête */ @@ -2058,6 +2067,8 @@ export default { max-width: 1200px; width: 100%; animation: fadeInUp 0.6s ease; + position: relative; + z-index: 4; } .widgets-container { @@ -2066,6 +2077,8 @@ export default { gap: 30px; margin-top: 150px; flex-wrap: wrap; + position: relative; + z-index: 4; } /* Bento Grid Layout */ /* Bento Grid Layout - Style Apple */ @@ -2078,6 +2091,8 @@ export default { max-width: 1000px; margin: 40px auto; padding: 0 20px; + position: relative; + z-index: 4; } /* Widgets */ @@ -2110,6 +2125,7 @@ export default { cursor: pointer; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12); box-shadow: 0 1px 10px rgba(0, 0, 0, 0.15); + z-index: 4; } .crypto-widget::before, @@ -2806,6 +2822,29 @@ export default { backdrop-filter: blur(1px); } +/* Responsive Design - Tablettes */ +@media (max-width: 1200px) { + .sidebar { + width: 280px; + } + + .main-content { + margin-left: 340px; + width: calc(100% - 340px); + } +} + +@media (max-width: 1024px) { + .sidebar { + width: 260px; + } + + .main-content { + margin-left: 320px; + width: calc(100% - 320px); + } +} + /* Responsive Design Simple */ @media (max-width: 1024px) { .bento-grid { diff --git a/crypto-pilot-builder/src/pipeline_agent/acceuil/Accueil.vue b/crypto-pilot-builder/src/pipeline_agent/acceuil/Accueil.vue index b378c8f..8d054cc 100644 --- a/crypto-pilot-builder/src/pipeline_agent/acceuil/Accueil.vue +++ b/crypto-pilot-builder/src/pipeline_agent/acceuil/Accueil.vue @@ -1650,19 +1650,19 @@ export default { /* ===== LAYOUT DE BASE ===== */ .app-container { display: flex; - height: 100vh; + min-height: 100vh; font-family: "Roboto", sans-serif; background: linear-gradient(120deg, rgba(28, 32, 51, 0), rgba(16, 21, 33, 0)); - overflow: hidden; + overflow-x: hidden; } /* ===== SIDEBAR ===== */ .sidebar { position: fixed; - top: 10vh; - left: 5vh; - width: 28vh; - height: 80vh; + top: 20px; + left: 20px; + width: 320px; + height: calc(100vh - 40px); background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(20px); border-radius: 24px; @@ -1672,7 +1672,10 @@ export default { display: flex; flex-direction: column; gap: 20px; - overflow: hidden; + overflow-y: auto; + z-index: 4; + box-sizing: border-box; + margin-right: 20px; } .sidebar-header { margin-bottom: 35px; @@ -1957,12 +1960,18 @@ export default { /* ===== CONTENU PRINCIPAL ===== */ .main-content { flex: 1; + margin-left: 380px; padding: 50px; display: flex; flex-direction: column; align-items: center; background: linear-gradient(135deg, #111421 0%, #111421 100%); overflow-y: auto; + min-height: 100vh; + width: calc(100% - 380px); + box-sizing: border-box; + position: relative; + z-index: 1; } /* En-tête */ @@ -2058,6 +2067,8 @@ export default { max-width: 1200px; width: 100%; animation: fadeInUp 0.6s ease; + position: relative; + z-index: 4; } .widgets-container { @@ -2066,6 +2077,8 @@ export default { gap: 30px; margin-top: 150px; flex-wrap: wrap; + position: relative; + z-index: 4; } /* Bento Grid Layout */ /* Bento Grid Layout - Style Apple */ @@ -2078,6 +2091,8 @@ export default { max-width: 1000px; margin: 40px auto; padding: 0 20px; + position: relative; + z-index: 4; } /* Widgets */ @@ -2105,6 +2120,7 @@ export default { position: relative; overflow: hidden; transform: perspective(1000px) rotateY(0deg); + z-index: 4; background: linear-gradient(120deg, rgba(28, 32, 51, 0), rgba(16, 21, 33, 0)); border: none; cursor: pointer; @@ -2806,8 +2822,28 @@ export default { backdrop-filter: blur(1px); } -/* Responsive Design Simple */ +/* Responsive Design - Tablettes */ +@media (max-width: 1200px) { + .sidebar { + width: 280px; + } + + .main-content { + margin-left: 340px; + width: calc(100% - 340px); + } +} + @media (max-width: 1024px) { + .sidebar { + width: 260px; + } + + .main-content { + margin-left: 320px; + width: calc(100% - 320px); + } + .bento-grid { grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(4, 180px); @@ -2836,8 +2872,19 @@ export default { } @media (max-width: 768px) { + .app-container { + flex-direction: column; + } + .sidebar { - display: none; + position: relative; + top: 0; + left: 0; + width: 100%; + height: auto; + max-height: 50vh; + margin-bottom: 20px; + border-radius: 0 0 24px 24px; } .main-content { @@ -3409,8 +3456,19 @@ export default { } @media (max-width: 768px) { + .app-container { + flex-direction: column; + } + .sidebar { - display: none; + position: relative; + top: 0; + left: 0; + width: 100%; + height: auto; + max-height: 50vh; + margin-bottom: 20px; + border-radius: 0 0 24px 24px; } .main-content { From 01706aa62be0d2585b79bb83a61fd9fd07fc046c Mon Sep 17 00:00:00 2001 From: DEMEUSY Date: Sun, 21 Sep 2025 19:09:55 +0200 Subject: [PATCH 3/3] =?UTF-8?q?=E2=9C=A8=20[UPDATE]=20Enhance=20agent=20co?= =?UTF-8?q?nfiguration=20and=20UI=20components?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Added default provider 'openai' to agent_configs table in init.sql. - Updated Accueil.vue to improve button titles and layout adjustments. - Removed the Module.vue component and adjusted routing to redirect to Prompte.vue. - Modified progress bar steps in Ai.vue and Prompte.vue to reflect the new configuration flow. - Enhanced chatbot styles for better positioning and responsiveness. - Cleaned up unused components and files from the pipeline_agent directory. --- crypto-pilot-builder/src/acceuil/Accueil.vue | 11 +- .../src/agent_building/Ai.vue | 4 +- .../src/agent_building/Module.vue | 622 --- .../src/agent_building/Progress_bar.vue | 8 +- .../src/agent_building/Prompte.vue | 5 +- .../src/components/chatbot.vue | 46 +- .../src/pipeline_agent/App.vue | 17 - .../pipeline_agent/__tests__/Chatbot.test.js | 382 -- .../pipeline_agent/__tests__/Wallet.test.js | 247 -- .../src/pipeline_agent/acceuil/Accueil.vue | 3756 ----------------- .../src/pipeline_agent/acceuil/Chat_Page.vue | 160 - .../src/pipeline_agent/agent_building/Ai.vue | 598 --- .../pipeline_agent/agent_building/Module.vue | 622 --- .../agent_building/Progress_bar.vue | 307 -- .../pipeline_agent/agent_building/Prompte.vue | 915 ---- .../src/pipeline_agent/assets/base.css | 86 - .../src/pipeline_agent/assets/logo.svg | 1 - .../src/pipeline_agent/assets/main.css | 35 - .../components/AddChannelForm.vue | 309 -- .../components/AgentConfigManager.vue | 476 --- .../pipeline_agent/components/AuthModal.vue | 745 ---- .../pipeline_agent/components/AutoWallet.vue | 1610 ------- .../components/EditConfigForm.vue | 211 - .../src/pipeline_agent/components/Modal.vue | 109 - .../components/TradingPipeline.vue | 878 ---- .../pipeline_agent/components/UserMemory.vue | 887 ---- .../components/bento/BentoGrid.vue | 509 --- .../components/bento/CryptoWidget.vue | 137 - .../components/bento/MainCryptoWidget.vue | 598 --- .../components/bento/NewsWidget.vue | 174 - .../components/bento/StatsWidget.vue | 163 - .../components/bento/TrendingWidget.vue | 246 -- .../pipeline_agent/components/bento/index.js | 7 - .../src/pipeline_agent/components/chatbot.vue | 1705 -------- .../components/chatbot/ChatInput.vue | 81 - .../components/chatbot/ChatMessages.vue | 144 - .../src/pipeline_agent/components/wallet.vue | 944 ----- .../composables/useSessionManager.js | 287 -- .../composables/useWalletService.js | 287 -- .../src/pipeline_agent/renderer.js | 13 - .../src/pipeline_agent/router/index.js | 86 - .../src/pipeline_agent/services/apiService.js | 208 - .../pipeline_agent/services/cryptoService.js | 503 --- .../src/pipeline_agent/store/index.js | 464 -- .../src/pipeline_agent/tests/setup.js | 21 - crypto-pilot-builder/src/router/index.js | 5 +- .../src/services/apiService.js | 13 + init.sql | 1 + 48 files changed, 57 insertions(+), 19586 deletions(-) delete mode 100644 crypto-pilot-builder/src/agent_building/Module.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/App.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/__tests__/Chatbot.test.js delete mode 100644 crypto-pilot-builder/src/pipeline_agent/__tests__/Wallet.test.js delete mode 100644 crypto-pilot-builder/src/pipeline_agent/acceuil/Accueil.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/acceuil/Chat_Page.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/agent_building/Ai.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/agent_building/Module.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/agent_building/Progress_bar.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/agent_building/Prompte.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/assets/base.css delete mode 100644 crypto-pilot-builder/src/pipeline_agent/assets/logo.svg delete mode 100644 crypto-pilot-builder/src/pipeline_agent/assets/main.css delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/AddChannelForm.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/AgentConfigManager.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/AuthModal.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/AutoWallet.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/EditConfigForm.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/Modal.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/TradingPipeline.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/UserMemory.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/bento/BentoGrid.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/bento/CryptoWidget.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/bento/MainCryptoWidget.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/bento/NewsWidget.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/bento/StatsWidget.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/bento/TrendingWidget.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/bento/index.js delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/chatbot.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/chatbot/ChatInput.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/chatbot/ChatMessages.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/components/wallet.vue delete mode 100644 crypto-pilot-builder/src/pipeline_agent/composables/useSessionManager.js delete mode 100644 crypto-pilot-builder/src/pipeline_agent/composables/useWalletService.js delete mode 100644 crypto-pilot-builder/src/pipeline_agent/renderer.js delete mode 100644 crypto-pilot-builder/src/pipeline_agent/router/index.js delete mode 100644 crypto-pilot-builder/src/pipeline_agent/services/apiService.js delete mode 100644 crypto-pilot-builder/src/pipeline_agent/services/cryptoService.js delete mode 100644 crypto-pilot-builder/src/pipeline_agent/store/index.js delete mode 100644 crypto-pilot-builder/src/pipeline_agent/tests/setup.js diff --git a/crypto-pilot-builder/src/acceuil/Accueil.vue b/crypto-pilot-builder/src/acceuil/Accueil.vue index 8e66d98..d20fac6 100644 --- a/crypto-pilot-builder/src/acceuil/Accueil.vue +++ b/crypto-pilot-builder/src/acceuil/Accueil.vue @@ -35,7 +35,7 @@ v-if="isAuthenticated" class="btn-icon" @click="showChat = false" - title="Retour" + title="Retour au dashboard" > 🏠️ @@ -131,13 +131,6 @@ 🤖 AutoWallet -
- + - - - - -
- - - - - - \ No newline at end of file diff --git a/crypto-pilot-builder/src/agent_building/Progress_bar.vue b/crypto-pilot-builder/src/agent_building/Progress_bar.vue index b587b6d..bdf26cf 100644 --- a/crypto-pilot-builder/src/agent_building/Progress_bar.vue +++ b/crypto-pilot-builder/src/agent_building/Progress_bar.vue @@ -35,7 +35,7 @@ export default { }, totalSteps: { type: Number, - default: 3 + default: 2 } }, computed: { @@ -59,16 +59,14 @@ export default { getStepTitle(step) { const titles = { 1: 'Configuration IA', - 2: 'Modules', - 3: 'Finalisation' + 2: 'Finalisation' }; return titles[step] || `Étape ${step}`; }, getStepSubtitle(step) { const subtitles = { 1: 'Modèle & API', - 2: 'Fonctionnalités', - 3: 'Prompt & Chat' + 2: 'Prompt & Chat' }; return subtitles[step] || ''; } diff --git a/crypto-pilot-builder/src/agent_building/Prompte.vue b/crypto-pilot-builder/src/agent_building/Prompte.vue index 5dcb2ae..6e90c3c 100644 --- a/crypto-pilot-builder/src/agent_building/Prompte.vue +++ b/crypto-pilot-builder/src/agent_building/Prompte.vue @@ -1,6 +1,6 @@