v1.0 - Version stable: multi-PC, détection UI-DETR-1, 3 modes exécution
- Frontend v4 accessible sur réseau local (192.168.1.40) - Ports ouverts: 3002 (frontend), 5001 (backend), 5004 (dashboard) - Ollama GPU fonctionnel - Self-healing interactif - Dashboard confiance Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
87
visual_workflow_builder/frontend/public/index.html
Normal file
87
visual_workflow_builder/frontend/public/index.html
Normal file
@@ -0,0 +1,87 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="fr">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="theme-color" content="#1976d2" />
|
||||
<meta
|
||||
name="description"
|
||||
content="Visual Workflow Builder V2 - Interface de création de workflows RPA"
|
||||
/>
|
||||
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
|
||||
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
|
||||
<title>Visual Workflow Builder V2</title>
|
||||
|
||||
<!--
|
||||
Suppression des erreurs ResizeObserver
|
||||
Auteur : Dom, Alice, Kiro - 09 janvier 2026
|
||||
Ces erreurs sont bénignes et générées par Material-UI/ReactFlow
|
||||
-->
|
||||
<script>
|
||||
(function() {
|
||||
// Fonction de vérification des erreurs ResizeObserver
|
||||
function isResizeObserverError(message) {
|
||||
return message && (
|
||||
message.includes('ResizeObserver loop') ||
|
||||
message.includes('ResizeObserver loop completed with undelivered notifications')
|
||||
);
|
||||
}
|
||||
|
||||
// Intercepter window.onerror
|
||||
var originalOnError = window.onerror;
|
||||
window.onerror = function(message, source, lineno, colno, error) {
|
||||
if (isResizeObserverError(message)) {
|
||||
return true; // Empêcher la propagation
|
||||
}
|
||||
if (originalOnError) {
|
||||
return originalOnError(message, source, lineno, colno, error);
|
||||
}
|
||||
return false;
|
||||
};
|
||||
|
||||
// Intercepter les événements d'erreur (phase de capture)
|
||||
window.addEventListener('error', function(event) {
|
||||
if (event.message && isResizeObserverError(event.message)) {
|
||||
event.preventDefault();
|
||||
event.stopPropagation();
|
||||
event.stopImmediatePropagation();
|
||||
return false;
|
||||
}
|
||||
}, true);
|
||||
|
||||
// Intercepter les promesses rejetées
|
||||
window.addEventListener('unhandledrejection', function(event) {
|
||||
if (event.reason && event.reason.message && isResizeObserverError(event.reason.message)) {
|
||||
event.preventDefault();
|
||||
return false;
|
||||
}
|
||||
}, true);
|
||||
|
||||
// Intercepter console.error
|
||||
var originalConsoleError = console.error;
|
||||
console.error = function() {
|
||||
var args = Array.prototype.slice.call(arguments);
|
||||
if (args.length > 0 && typeof args[0] === 'string' && isResizeObserverError(args[0])) {
|
||||
return; // Ignorer silencieusement
|
||||
}
|
||||
originalConsoleError.apply(console, args);
|
||||
};
|
||||
|
||||
// Intercepter console.warn aussi
|
||||
var originalConsoleWarn = console.warn;
|
||||
console.warn = function() {
|
||||
var args = Array.prototype.slice.call(arguments);
|
||||
if (args.length > 0 && typeof args[0] === 'string' && isResizeObserverError(args[0])) {
|
||||
return; // Ignorer silencieusement
|
||||
}
|
||||
originalConsoleWarn.apply(console, args);
|
||||
};
|
||||
})();
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<noscript>Vous devez activer JavaScript pour utiliser cette application.</noscript>
|
||||
<div id="root"></div>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user