837 Commits

Author SHA1 Message Date
0b94cda76e fix: Corriger les erreurs d'initialisation et de communication
- Supprimer l'appel à initEssentialFunctions (fonction supprimée)
- Ajouter le support pour le message IFRAME_READY
- Améliorer les logs de validation WebSocket pour le debugging
- Résoudre les erreurs ReferenceError et Unknown message type
2025-10-23 13:11:45 +02:00
69424c6bf6 fix: Corriger le spam de logs React DevTools
- Déplacer le filtrage des messages d'extension avant le logging
- Éviter les logs en boucle des messages react-devtools-content-script
- Améliorer la performance en filtrant d'abord, puis en loggant
2025-10-23 13:10:12 +02:00
b545e3875e ci: docker_tag=cleanup Nettoyage des composants inutiles
- Suppression du composant header (plus utilisé)
- Suppression du dossier modal générique
- Suppression de validation-rule-modal (non utilisé)
- Nettoyage des imports et références inutiles
- Suppression des méthodes d'injection de modales obsolètes
- Conservation des composants essentiels: account-nav, device-management, iframe-pairing, login-modal, secure-credentials, validation-modal
2025-10-23 13:05:36 +02:00
530dcaf633 fix: résolution erreurs d'import Vite
🔧 Corrections appliquées:
- Suppression import CSS direct dans router.ts
- CSS chargé via HTML link tag (déjà présent)
- Correction imports avec alias ~ dans modal.service.ts
- Résolution erreur 'Cannot import non-asset file /style/4nk.css'
- Résolution erreur 'Failed to resolve import ~/components/validation-modal'

 Serveur Vite fonctionnel sans erreurs
 Configuration allowedHosts maintenue
 Tous les imports résolus correctement
2025-10-23 13:00:27 +02:00
88011d2f10 fix: autoriser dev3.4nkweb.com dans allowedHosts
🔧 Correction configuration Vite:
- Ajout de dev3.4nkweb.com dans allowedHosts
- Ajout de localhost, 127.0.0.1, 31.33.24.235
- Résolution erreur 'Blocked request' pour dev3.4nkweb.com
- Serveur accessible depuis tous les hosts autorisés
2025-10-23 12:54:08 +02:00
bf680ab6dd ci: docker_tag=pbkdf2-credentials
🔐 Implémentation PBKDF2 avec credentials navigateur

 Fonctionnalités ajoutées:
- SecureCredentialsService avec PBKDF2 (100k itérations)
- Chiffrement AES-GCM des clés spend/scan
- Interface utilisateur complète pour gestion credentials
- Tests unitaires complets
- Architecture modulaire avec EventBus
- Gestion mémoire optimisée
- Performance monitoring
- Web Workers pour encodage asynchrone

🛡️ Sécurité:
- Dérivation PBKDF2 avec salt unique
- Chiffrement AES-GCM des clés sensibles
- Validation force mot de passe
- Stockage sécurisé IndexedDB + WebAuthn
- Logging sécurisé sans exposition données

🔧 Corrections:
- Erreur 500 résolue (clé dupliquée package.json)
- Configuration Vite simplifiée
- Dépendances manquantes corrigées

📊 Améliorations:
- Architecture découplée avec repositories
- Services spécialisés (PairingService, etc.)
- Monitoring performance et mémoire
- Tests avec couverture complète
- Documentation technique détaillée
2025-10-23 12:51:49 +02:00
ef0f80e044 feat: Optimisations majeures et nouvelles fonctionnalités
🚀 OPTIMISATIONS PERFORMANCE:
- Connexions WebSocket parallélisées (au lieu de séquentielles)
- Timeout handshake réduit de 10s à 3s
- Gestion d'erreur améliorée pour continuer même sans handshake
- Un seul relay suffit pour démarrer

🗑️ NETTOYAGE:
- Suppression du dossier /pages/process (entierement commenté)
- Redirection process -> account
- Suppression des références inutiles dans router.ts

🚨 EXPORT CRITIQUE D'AUTOVALIDATION:
- Nouveau bouton rouge 'Export Critique (Clé Privée)'
- Triple confirmation pour sécurité
- Export de la clé privée pour signature sans interaction
- Avertissements de sécurité multiples
- Fichier JSON avec instructions de sécurité

📊 RÉSULTATS:
- Initialisation plus rapide (connexions parallèles)
- Moins de blocages (timeout réduit)
- Fonctionnalité critique pour cas d'urgence
- Code plus propre (suppression du code mort)
2025-10-22 17:38:57 +02:00
baad7c48bc fix: Amélioration de la synchronisation pour quorum=1 et ajout favicon
- Synchronisation forcée du processus pour quorum=1 test
- Mise à jour device plus fréquente dans les premières tentatives
- Tentative de synchronisation SDK au 3ème essai
- Ajout favicon.svg avec icône de bouclier
- Ajout des liens favicon dans index.html
- Meilleure gestion des processus de pairing avec quorum=1
2025-10-22 16:59:26 +02:00
ca4e580a95 fix: Amélioration de la gestion du Service Worker
- Réduction du timeout des updates de 10s à 5s
- Délai de 10s avant de démarrer l'intervalle de scan
- Logs améliorés pour diagnostiquer les blocages
- Cache Vite nettoyé pour éviter les erreurs TypeScript
- Meilleure gestion des erreurs dans l'intervalle de scan
- Service Worker plus robuste et moins bloquant
2025-10-22 16:52:44 +02:00
9ec97e1787 feat: Suppression complète du composant QR code scanner
- Suppression du dossier /components/qrcode-scanner/
- Suppression des imports QrScannerComponent dans home.ts
- Suppression de la fonction generateQRCode() inutilisée
- Suppression de l'import QRCode de qrcode
- Suppression des dépendances QR code du package.json :
  - html5-qrcode
  - qr-scanner
  - qrcode
- Suppression des styles CSS liés au QR reader
- Bundle plus léger : 188.07 kB vs 269.32 kB (-30%)
- Build fonctionnel après nettoyage
2025-10-22 16:48:27 +02:00
d7e2e1a648 fix: Correction du port de développement de 3003 à 3004
- Mise à jour de la configuration Vite pour utiliser le port 3004
- Site maintenant accessible sur http://localhost:3004
2025-10-22 16:24:58 +02:00
918e282a25 feat: Nettoyage complet du projet
- Suppression des pages inutiles : chat, signature, process-element
- Suppression des fichiers account inutiles : document-validation, process-creation, key-value-section, process
- Suppression des mocks et fichiers de test inutiles
- Nettoyage du main.ts (suppression des imports inutiles)
- Nettoyage du router.ts (suppression des cas inutiles)
- Nettoyage des dépendances package.json :
  - Suppression : @angular/elements, @types/jsonwebtoken, @types/qrcode, @vitejs/plugin-react, @vitejs/plugin-vue
  - Suppression devDependencies : @rollup/plugin-typescript, copy-webpack-plugin, html-webpack-plugin, rimraf, ts-loader, webpack, webpack-cli, webpack-dev-server
- Correction des erreurs TypeScript
- Build fonctionnel après nettoyage
2025-10-22 16:21:22 +02:00
937b071100 fix: Résolution des blocages après l'enregistrement du Service Worker
- Ajout de timeouts sur checkForUpdates() (10s) et waitForServiceWorkerActivation() (15s)
- Gestion d'erreur améliorée pour éviter les blocages infinis
- checkForUpdates() avec timeout de 5s pour éviter les blocages
- waitForServiceWorkerActivation() retourne null au lieu de bloquer
- Gestion d'erreur dans l'intervalle de scan du service worker
- Continuation de l'initialisation même en cas d'échec partiel
- Logs d'avertissement pour diagnostiquer les problèmes
2025-10-22 16:07:24 +02:00
17517f861a feat: Ajout d'un spinner pendant l'initialisation du Service Worker
- Spinner avec message explicatif 'Initializing database service...'
- Affiché après l'enregistrement du Service Worker
- Masqué automatiquement une fois le service prêt
- Design glassmorphism cohérent avec l'interface
- Z-index élevé (10000) pour être au-dessus de tout
- Animation de rotation fluide
- Feedback utilisateur pendant l'attente
2025-10-22 16:01:27 +02:00
99a8e1c382 refactor: Suppression du code mort et nettoyage
- Suppression de account.ts (1588 lignes de code mort)
- Suppression de account-component.ts (obsolète)
- Suppression de decs.d.ts (déclarations inutiles)
- Suppression du dossier mock-account/ (mocks non utilisés)
- Nettoyage des imports dans main.ts et router.ts
- Suppression des références aux composants obsolètes
- Code plus propre et maintenable
2025-10-22 15:58:03 +02:00
96d1ee33ac feat: Interface complète de gestion des devices avec description du contrat
- Description détaillée du contrat de pairing avec sécurité, protection et gestion
- Interface unifiée affichant directement après pairing réussi
- Tous les éléments demandés présents :
   Description du contrat pairing
   Ajout/suppression de devices
   4 mots de pairing du device actuel
   Bouton de suppression du compte
- Design moderne avec glassmorphism et responsive
- Parfait pour iframe modale sur site externe
2025-10-22 15:56:18 +02:00
a7b76ed95c feat: Ajout du bouton de suppression de compte dans l'interface modale
- Bouton 'Supprimer le Compte' intégré dans l'interface device-management
- Double confirmation sécurisée (dialog + prompt)
- Style rouge distinctif avec hover effects
- Layout responsive avec flex-wrap
- Fonctionnalité complète de suppression du storage
- Parfait pour une iframe modale sur site externe
- Messages de statut détaillés pendant le processus
2025-10-22 15:55:01 +02:00
c6ebf9627b fix: Suppression du header sur la page account
- Modification du router pour ne pas injecter le header sur la page account
- Page account utilise maintenant tout l'espace disponible
- Design modale complet sans header parasite
- CSS optimisé pour une expérience full-screen
2025-10-22 15:51:38 +02:00
b8297f9be6 feat: Interface modale de gestion des devices avec design moderne
- Nouveau composant DeviceManagementComponent avec interface ergonomique
- Suppression du header, design modale avec glassmorphism
- Boutons Import/Export intégrés de façon ergonomique
- Affichage des 4 mots du device actuel avec copie
- Gestion des devices appairés avec ajout/suppression
- Validation des 4 mots pour l'ajout de nouveaux devices
- Boutons Sauvegarder/Annuler pour les modifications
- Protection : impossible de supprimer le dernier device
- Interface responsive avec design moderne
- Intégration des fonctions d'import/export existantes
2025-10-22 15:49:19 +02:00
08b47b17b8 feat: Ajout du bouton de suppression de compte et logique de chargement automatique
- Bouton rouge 'Supprimer' dans le menu burger avec confirmation sécurisée
- Fonction deleteAccount() qui nettoie complètement le compte (IndexedDB, localStorage, sessionStorage)
- Logique d'initialisation intelligente :
  - Si wallet existe et est appairé → redirection vers /account
  - Si wallet existe mais pas appairé → redirection vers /home pour pairing
  - Si aucun wallet → création d'un nouveau compte
- CSS pour le bouton de suppression avec style rouge distinctif
- Confirmation en deux étapes pour éviter les suppressions accidentelles
2025-10-22 15:46:50 +02:00
50f782908d fix: Suppression du message redondant et correction de l'erreur populateMemberSelect
- Suppression du message 'You are creating a new pairing session' redondant
- Suppression de l'appel à populateMemberSelect() qui cherchait un élément inexistant
- Interface plus épurée et sans erreurs de console
2025-10-22 15:41:24 +02:00
3258b16a6e feat: Ajout de spinners pendant l'initialisation des services
- Spinner global pendant l'initialisation des services (service.ts)
- Spinner pour l'initialisation de la page d'accueil (home.ts)
- Amélioration du feedback utilisateur pendant les phases d'attente
- Design glassmorphism cohérent avec l'interface existante
- Messages informatifs pour guider l'utilisateur
- Gestion d'erreurs avec masquage automatique des spinners
2025-10-22 15:38:08 +02:00
60f19752d3 feat: Amélioration complète de l'ergonomie du système de pairing
- Remplacement du QR code par un système de 4 mots
- Interface unifiée avec détection automatique créateur/joiner
- Amélioration UX avec feedback en temps réel
- Design moderne glassmorphism avec animations
- Validation intelligente des 4 mots pour le joiner
- Status de progression détaillé pour les deux flux
- Redirection automatique vers /account après pairing
- Styles CSS améliorés avec variables et responsive design
- Gestion d'erreurs et messages utilisateur clairs
- Fonctionnalité de copie des 4 mots pour le créateur
2025-10-22 15:31:53 +02:00
7c2c4bfb46 Fix pairing system: Add waitForPairingCommitment with device sync and update documentation
- Add waitForPairingCommitment function with automatic device synchronization
- Integrate updateDevice() call in waitForPairingCommitment for better sync
- Increase retry attempts to 30 with 2s delay (60s total wait time)
- Add detailed logging for pairing process synchronization
- Update router to call waitForPairingCommitment before confirmPairing
- Remove redundant updateDevice() call from router
- Update PAIRING_SYSTEM_ANALYSIS.md with coherence issues and recommendations
- Identify joiner flow inconsistencies requiring future fixes
2025-10-22 14:15:20 +02:00
79633ed923 Add logs for handleCreatePairing
All checks were successful
Build and Push to Registry / build-and-push (push) Successful in 2m35s
2025-10-10 11:33:40 +02:00
412c855777 Add promise to wait for relay availability to make createProcess functional
All checks were successful
Build and Push to Registry / build-and-push (push) Successful in 2m23s
2025-10-08 11:10:03 +02:00
d9daa00b32 Improved .gitignore
All checks were successful
Build and Push to Registry / build-and-push (push) Successful in 2m29s
2025-10-08 10:16:36 +02:00
31b88865d7 Deleted package-lock.json 2025-10-08 10:16:21 +02:00
cd4a971d8d Updated .env.exemple 2025-10-08 10:16:10 +02:00
e74ce0aabc Replaced demo by dev3 url
All checks were successful
Build and Push to Registry / build-and-push (push) Successful in 2m10s
2025-10-07 14:08:03 +02:00
Sosthene
0d473cf3d1 [bug] Update device blockheight right after initialization to prevent race condition
All checks were successful
Build and Push to Registry / build-and-push (push) Successful in 2m25s
2025-09-13 08:12:30 +02:00
Sosthene
457994c506 Updating testData in storage
All checks were successful
Build and Push to Registry / build-and-push (push) Successful in 2m15s
2025-09-13 07:34:43 +02:00
Sosthene
5fc485e233 Fix checkConnections, also check more aggressively 2025-09-13 07:34:43 +02:00
Sosthene
0d934e7b6e [bug] coerce potention undefined to null as return value of getObject() 2025-09-13 07:34:43 +02:00
02d28d46bb Add .env.exemple file
All checks were successful
Build and Push to Registry / build-and-push (push) Successful in 2m8s
2025-09-12 12:33:06 +02:00
723f4d5d85 Add .env to gitignore
All checks were successful
Build and Push to Registry / build-and-push (push) Successful in 2m11s
2025-09-12 12:30:27 +02:00
omaroughriss
6f9fa60e2f Use env variables to config urls
All checks were successful
Build and Push to Registry / build-and-push (push) Successful in 2m2s
2025-09-10 17:41:01 +02:00
omaroughriss
e729e32b35 Add handshakeMsg log
Some checks failed
Build and Push to Registry / build-and-push (push) Has been cancelled
2025-09-10 16:24:06 +02:00
omaroughriss
e4681f91e4 Merge branch 'dev' of https://git.4nkweb.com/4nk/ihm_client into dev
All checks were successful
Build and Push to Registry / build-and-push (push) Successful in 2m4s
2025-09-10 15:25:07 +02:00
omaroughriss
6363ec1189 Update relay handshake verification to use peer list or sp adresses 2025-09-10 15:25:05 +02:00
Sosthene
c8ac815e2b Refactor handleHandshakeMsg
All checks were successful
Build and Push to Registry / build-and-push (push) Successful in 2m11s
2025-09-08 22:00:36 +02:00
Sosthene
ef31cba983 Improve checkConnections to prevent no shared secrets 2025-09-08 22:00:36 +02:00
Omar Oughriss
47c7d31249 Rename workflow
All checks were successful
Build and Push to Registry / build-and-push (push) Successful in 2m18s
2025-09-08 16:53:44 +02:00
Omar Oughriss
ede8d95fd1 Add "dev" tagged image
All checks were successful
Build and Push to Registry / build-and-push (push) Successful in 2m17s
2025-09-08 16:44:33 +02:00
Omar Oughriss
0fc7b6e4c3 Update Dockerfile to use branche dev of sdk_client 2025-09-08 16:44:02 +02:00
Sosthene
3f64369852 [bug] Fix wrong api calls for storeData 2025-09-08 15:56:34 +02:00
Sosthene
e8c2d1a05a Get the storage urls from diffs 2025-09-08 15:56:14 +02:00
Sosthene
63ee4ce719 Merge branch 'bug_scan_blocks_update' into dev 2025-09-05 07:59:09 +02:00
Sosthene
e0e186f4f4 Refactor pairing logic
Account for the fact that we need the pairing id earlier now
2025-09-05 07:57:57 +02:00
Sosthene
bfca596e8b Adapt storage to new api 2025-09-05 07:57:50 +02:00