refactor: nettoyage du code et correction de bugs mineurs

- Correction de l'ouverture des DevTools uniquement en mode développement
- Fix de la détection du mode développement pour le simulateur CTI via IPC
- Suppression de la boucle de retry infinie pour Choices.js
- Suppression du code mort (fonction updateSignalRStatus vide)
- Amélioration de la gestion d'erreur avec fallback natif pour Choices.js
This commit is contained in:
Pierre Marx
2025-09-04 13:43:26 -04:00
parent c7c48360fd
commit d6f89ed686
4 changed files with 38 additions and 22 deletions

View File

@@ -282,9 +282,12 @@ class CTISimulator {
const ctiSimulator = new CTISimulator();
// Exposer pour les tests en développement
if (process.env.NODE_ENV === 'development') {
// Dans le contexte renderer, vérifier si on est en mode développement via une variable globale
window.ctiSimulator = ctiSimulator;
// Afficher le panneau de test après connexion
// Afficher le panneau de test si en mode développement
ipcRenderer.invoke('is-development').then(isDev => {
if (isDev) {
document.addEventListener('DOMContentLoaded', () => {
setTimeout(() => {
const mainPage = document.getElementById('mainPage');
@@ -294,6 +297,7 @@ if (process.env.NODE_ENV === 'development') {
}, 2000);
});
}
});
// Démarrer la simulation automatique après connexion (optionnel)
ipcRenderer.on('agent-logged-in', () => {

View File

@@ -1,5 +1,18 @@
# Changelog - SimpleConnect Electron
## [1.0.2] - 2025-09-04
### Corrigé
- **DevTools** : Ouverture uniquement en mode développement au lieu de systématiquement
- **Mode développement** : Correction de la détection du mode dev pour le simulateur CTI via IPC
- **Choices.js** : Suppression de la boucle de retry infinie en cas d'échec de chargement
- **Code mort** : Suppression de la fonction `updateSignalRStatus()` vide et inutilisée
### Technique
- Ajout du handler IPC `is-development` pour permettre au renderer de détecter le mode
- Amélioration de la gestion d'erreur pour Choices.js avec fallback natif sans retry
- Nettoyage du code en supprimant les fonctions vides et appels inutiles
## [1.0.1] - 2024-09-04
### Ajouté

11
main.js
View File

@@ -34,10 +34,10 @@ function createWindow() {
// Charger l'interface HTML
mainWindow.loadFile('index.html');
// Ouvrir les DevTools en mode développement ou toujours pour debug
// if (process.env.NODE_ENV === 'development') {
// Ouvrir les DevTools uniquement en mode développement
if (process.env.NODE_ENV === 'development') {
mainWindow.webContents.openDevTools();
// }
}
// Gérer la fermeture de la fenêtre
mainWindow.on('closed', () => {
@@ -320,3 +320,8 @@ ipcMain.handle('save-call-history', (event, callData) => {
fs.writeFileSync(historyFile, JSON.stringify(history, null, 2));
return { success: true };
});
// Vérifier si on est en mode développement
ipcMain.handle('is-development', () => {
return process.env.NODE_ENV === 'development';
});

View File

@@ -14,7 +14,6 @@ let callStats = {
// === GESTION DE LA CONNEXION ===
document.addEventListener('DOMContentLoaded', async () => {
// Initialiser l'indicateur SignalR
updateSignalRStatus();
// Écouter les changements de statut SignalR
ipcRenderer.on('signalr-status', (event, status) => {
@@ -490,8 +489,7 @@ async function loadTerminals() {
terminalSelect.appendChild(option);
});
}
// Réessayer après un court délai
setTimeout(() => loadTerminals(), 500);
// Pas de retry automatique pour éviter une boucle infinie
return;
}
@@ -585,10 +583,6 @@ function validateTerminal(terminal) {
}
// === GESTION INDICATEUR SIGNALR ===
function updateSignalRStatus() {
// Fonction appelée au chargement pour initialiser l'interface
}
function updateSignalRIndicator(status) {
const indicator = document.getElementById('signalrIndicator');
const text = document.getElementById('signalrText');