Files
ETB/ETB-FrontEnd/node_modules/.cache/babel-loader/6b5800ae6b5e5df8a5116777c43631e9148bd08fa26a8083bfa9aa62ff7074a5.json
Iliyan Angelov 306b20e24a Frontend start
2025-09-14 00:54:48 +03:00

1 line
98 KiB
JSON

{"ast":null,"code":"var _jsxFileName = \"/home/gnx/Desktop/ETB/ETB-FrontEnd/src/pages/Admin/IntegrationManager.tsx\",\n _s = $RefreshSig$();\nimport React, { useState } from 'react';\nimport { Grid, Paper, Typography, Box, Card, CardContent, Button, Chip, IconButton, Switch, FormControlLabel, Dialog, DialogTitle, DialogContent, DialogActions, TextField, FormControl, InputLabel, Select, MenuItem, List, ListItem, ListItemText, Alert, Tabs, Tab, Avatar, LinearProgress } from '@mui/material';\nimport { Chat, Storage, Security, CheckCircle, Error, Warning, Add, Edit, Delete, Sync, Api, Storage as Database, Monitor } from '@mui/icons-material';\nimport { jsxDEV as _jsxDEV, Fragment as _Fragment } from \"react/jsx-dev-runtime\";\nconst integrations = [{\n id: 1,\n name: 'Microsoft Teams',\n type: 'Communication',\n status: 'connected',\n description: 'Send notifications and updates to Teams channels',\n icon: /*#__PURE__*/_jsxDEV(Chat, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 55,\n columnNumber: 11\n }, this),\n color: '#1976d2',\n lastSync: '2024-01-15 10:30',\n health: 'healthy',\n features: ['Notifications', 'Incident Updates', 'Status Changes']\n}, {\n id: 2,\n name: 'ServiceNow',\n type: 'CMDB',\n status: 'connected',\n description: 'Synchronize configuration items and incidents',\n icon: /*#__PURE__*/_jsxDEV(Database, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 67,\n columnNumber: 11\n }, this),\n color: '#4caf50',\n lastSync: '2024-01-15 10:25',\n health: 'healthy',\n features: ['CMDB Sync', 'Incident Sync', 'Asset Management']\n}, {\n id: 3,\n name: 'Nagios',\n type: 'Monitoring',\n status: 'connected',\n description: 'Automatically create incidents from monitoring alerts',\n icon: /*#__PURE__*/_jsxDEV(Monitor, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 79,\n columnNumber: 11\n }, this),\n color: '#ff9800',\n lastSync: '2024-01-15 10:20',\n health: 'warning',\n features: ['Auto Incident Creation', 'Alert Correlation', 'Status Monitoring']\n}, {\n id: 4,\n name: 'Slack',\n type: 'Communication',\n status: 'disconnected',\n description: 'Team communication and incident notifications',\n icon: /*#__PURE__*/_jsxDEV(Chat, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 91,\n columnNumber: 11\n }, this),\n color: '#e91e63',\n lastSync: '2024-01-14 16:45',\n health: 'error',\n features: ['Notifications', 'Team Chat', 'Incident Updates']\n}, {\n id: 5,\n name: 'Active Directory',\n type: 'Identity',\n status: 'connected',\n description: 'User authentication and role synchronization',\n icon: /*#__PURE__*/_jsxDEV(Security, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 103,\n columnNumber: 11\n }, this),\n color: '#9c27b0',\n lastSync: '2024-01-15 10:15',\n health: 'healthy',\n features: ['User Sync', 'Authentication', 'Role Management']\n}, {\n id: 6,\n name: 'Jira',\n type: 'Project Management',\n status: 'connected',\n description: 'Create and sync issues with project management',\n icon: /*#__PURE__*/_jsxDEV(Api, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 115,\n columnNumber: 11\n }, this),\n color: '#00bcd4',\n lastSync: '2024-01-15 10:10',\n health: 'healthy',\n features: ['Issue Creation', 'Status Sync', 'Project Tracking']\n}];\nconst integrationTemplates = [{\n name: 'Email Integration',\n description: 'Configure SMTP settings for email notifications',\n category: 'Communication',\n setupSteps: ['Configure SMTP server settings', 'Set up authentication credentials', 'Test email delivery', 'Configure notification templates']\n}, {\n name: 'Webhook Integration',\n description: 'Set up webhooks for real-time data exchange',\n category: 'API',\n setupSteps: ['Define webhook endpoints', 'Configure authentication', 'Set up data mapping', 'Test webhook delivery']\n}, {\n name: 'Database Integration',\n description: 'Connect to external databases for data synchronization',\n category: 'Data',\n setupSteps: ['Configure database connection', 'Set up data mapping', 'Configure sync schedule', 'Test data synchronization']\n}];\nconst integrationTypes = [{\n value: 'Communication',\n label: 'Communication',\n icon: /*#__PURE__*/_jsxDEV(Chat, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 160,\n columnNumber: 59\n }, this)\n}, {\n value: 'Monitoring',\n label: 'Monitoring',\n icon: /*#__PURE__*/_jsxDEV(Monitor, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 161,\n columnNumber: 53\n }, this)\n}, {\n value: 'CMDB',\n label: 'CMDB',\n icon: /*#__PURE__*/_jsxDEV(Database, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 162,\n columnNumber: 41\n }, this)\n}, {\n value: 'Identity',\n label: 'Identity',\n icon: /*#__PURE__*/_jsxDEV(Security, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 163,\n columnNumber: 49\n }, this)\n}, {\n value: 'API',\n label: 'API',\n icon: /*#__PURE__*/_jsxDEV(Api, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 164,\n columnNumber: 39\n }, this)\n}, {\n value: 'Data',\n label: 'Data',\n icon: /*#__PURE__*/_jsxDEV(Storage, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 165,\n columnNumber: 41\n }, this)\n}];\nconst IntegrationManager = () => {\n _s();\n const [integrationsList, setIntegrationsList] = useState(integrations);\n const [selectedIntegration, setSelectedIntegration] = useState(null);\n const [integrationDialogOpen, setIntegrationDialogOpen] = useState(false);\n const [tabValue, setTabValue] = useState(0);\n const [newIntegration, setNewIntegration] = useState({\n name: '',\n type: '',\n description: '',\n endpoint: '',\n apiKey: '',\n status: 'disconnected'\n });\n const handleToggleIntegration = integrationId => {\n setIntegrationsList(prev => prev.map(integration => integration.id === integrationId ? {\n ...integration,\n status: integration.status === 'connected' ? 'disconnected' : 'connected',\n lastSync: new Date().toLocaleString()\n } : integration));\n };\n const handleEditIntegration = integration => {\n setSelectedIntegration(integration);\n setNewIntegration(integration);\n setIntegrationDialogOpen(true);\n };\n const handleCreateIntegration = () => {\n setSelectedIntegration(null);\n setNewIntegration({\n name: '',\n type: '',\n description: '',\n endpoint: '',\n apiKey: '',\n status: 'disconnected'\n });\n setIntegrationDialogOpen(true);\n };\n const handleSaveIntegration = () => {\n if (selectedIntegration) {\n setIntegrationsList(prev => prev.map(integration => integration.id === selectedIntegration.id ? {\n ...integration,\n ...newIntegration,\n id: selectedIntegration.id\n } : integration));\n } else {\n const newId = Math.max(...integrationsList.map(i => i.id)) + 1;\n setIntegrationsList(prev => [...prev, {\n ...newIntegration,\n id: newId,\n icon: /*#__PURE__*/_jsxDEV(Api, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 227,\n columnNumber: 15\n }, this),\n color: '#1976d2',\n lastSync: new Date().toLocaleString(),\n health: 'healthy',\n features: ['Basic Integration']\n }]);\n }\n setIntegrationDialogOpen(false);\n };\n const handleDeleteIntegration = integrationId => {\n if (window.confirm('Are you sure you want to delete this integration?')) {\n setIntegrationsList(prev => prev.filter(i => i.id !== integrationId));\n }\n };\n const handleSyncIntegration = integrationId => {\n setIntegrationsList(prev => prev.map(integration => integration.id === integrationId ? {\n ...integration,\n lastSync: new Date().toLocaleString()\n } : integration));\n };\n const getHealthColor = health => {\n const colors = {\n healthy: 'success',\n warning: 'warning',\n error: 'error'\n };\n return colors[health] || 'default';\n };\n const getHealthIcon = health => {\n const icons = {\n healthy: /*#__PURE__*/_jsxDEV(CheckCircle, {\n color: \"success\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 262,\n columnNumber: 16\n }, this),\n warning: /*#__PURE__*/_jsxDEV(Warning, {\n color: \"warning\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 263,\n columnNumber: 16\n }, this),\n error: /*#__PURE__*/_jsxDEV(Error, {\n color: \"error\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 264,\n columnNumber: 14\n }, this)\n };\n return icons[health] || /*#__PURE__*/_jsxDEV(Error, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 266,\n columnNumber: 29\n }, this);\n };\n const getStatusColor = status => {\n return status === 'connected' ? 'success' : 'error';\n };\n const connectedCount = integrationsList.filter(i => i.status === 'connected').length;\n const totalCount = integrationsList.length;\n return /*#__PURE__*/_jsxDEV(Box, {\n children: [/*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n mb: 3\n },\n children: [/*#__PURE__*/_jsxDEV(Typography, {\n variant: \"h4\",\n gutterBottom: true,\n children: \"Integration Manager\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 279,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(Button, {\n variant: \"contained\",\n startIcon: /*#__PURE__*/_jsxDEV(Add, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 284,\n columnNumber: 22\n }, this),\n onClick: handleCreateIntegration,\n children: \"Add Integration\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 282,\n columnNumber: 9\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 278,\n columnNumber: 7\n }, this), /*#__PURE__*/_jsxDEV(Paper, {\n sx: {\n p: 2,\n mb: 3\n },\n children: /*#__PURE__*/_jsxDEV(Tabs, {\n value: tabValue,\n onChange: (e, newValue) => setTabValue(newValue),\n children: [/*#__PURE__*/_jsxDEV(Tab, {\n label: \"Active Integrations\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 293,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(Tab, {\n label: \"Integration Templates\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 294,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(Tab, {\n label: \"API Documentation\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 295,\n columnNumber: 11\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 292,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 291,\n columnNumber: 7\n }, this), tabValue === 0 && /*#__PURE__*/_jsxDEV(_Fragment, {\n children: [/*#__PURE__*/_jsxDEV(Grid, {\n container: true,\n spacing: 3,\n sx: {\n mb: 3\n },\n children: [/*#__PURE__*/_jsxDEV(Grid, {\n item: true,\n xs: 12,\n sm: 6,\n md: 3,\n children: /*#__PURE__*/_jsxDEV(Card, {\n children: /*#__PURE__*/_jsxDEV(CardContent, {\n children: [/*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n alignItems: 'center',\n mb: 2\n },\n children: [/*#__PURE__*/_jsxDEV(Avatar, {\n sx: {\n bgcolor: 'success.main',\n mr: 2\n },\n children: /*#__PURE__*/_jsxDEV(CheckCircle, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 308,\n columnNumber: 23\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 307,\n columnNumber: 21\n }, this), /*#__PURE__*/_jsxDEV(Box, {\n children: [/*#__PURE__*/_jsxDEV(Typography, {\n variant: \"h4\",\n children: connectedCount\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 311,\n columnNumber: 23\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body2\",\n color: \"text.secondary\",\n children: \"Connected\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 312,\n columnNumber: 23\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 310,\n columnNumber: 21\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 306,\n columnNumber: 19\n }, this), /*#__PURE__*/_jsxDEV(LinearProgress, {\n variant: \"determinate\",\n value: connectedCount / totalCount * 100,\n color: \"success\",\n sx: {\n height: 8,\n borderRadius: 4\n }\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 317,\n columnNumber: 19\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 305,\n columnNumber: 17\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 304,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 303,\n columnNumber: 13\n }, this), /*#__PURE__*/_jsxDEV(Grid, {\n item: true,\n xs: 12,\n sm: 6,\n md: 3,\n children: /*#__PURE__*/_jsxDEV(Card, {\n children: /*#__PURE__*/_jsxDEV(CardContent, {\n children: /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n alignItems: 'center',\n mb: 2\n },\n children: [/*#__PURE__*/_jsxDEV(Avatar, {\n sx: {\n bgcolor: 'error.main',\n mr: 2\n },\n children: /*#__PURE__*/_jsxDEV(Error, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 331,\n columnNumber: 23\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 330,\n columnNumber: 21\n }, this), /*#__PURE__*/_jsxDEV(Box, {\n children: [/*#__PURE__*/_jsxDEV(Typography, {\n variant: \"h4\",\n children: totalCount - connectedCount\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 334,\n columnNumber: 23\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body2\",\n color: \"text.secondary\",\n children: \"Disconnected\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 335,\n columnNumber: 23\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 333,\n columnNumber: 21\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 329,\n columnNumber: 19\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 328,\n columnNumber: 17\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 327,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 326,\n columnNumber: 13\n }, this), /*#__PURE__*/_jsxDEV(Grid, {\n item: true,\n xs: 12,\n sm: 6,\n md: 3,\n children: /*#__PURE__*/_jsxDEV(Card, {\n children: /*#__PURE__*/_jsxDEV(CardContent, {\n children: /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n alignItems: 'center',\n mb: 2\n },\n children: [/*#__PURE__*/_jsxDEV(Avatar, {\n sx: {\n bgcolor: 'warning.main',\n mr: 2\n },\n children: /*#__PURE__*/_jsxDEV(Warning, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 348,\n columnNumber: 23\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 347,\n columnNumber: 21\n }, this), /*#__PURE__*/_jsxDEV(Box, {\n children: [/*#__PURE__*/_jsxDEV(Typography, {\n variant: \"h4\",\n children: \"2\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 351,\n columnNumber: 23\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body2\",\n color: \"text.secondary\",\n children: \"Warnings\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 352,\n columnNumber: 23\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 350,\n columnNumber: 21\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 346,\n columnNumber: 19\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 345,\n columnNumber: 17\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 344,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 343,\n columnNumber: 13\n }, this), /*#__PURE__*/_jsxDEV(Grid, {\n item: true,\n xs: 12,\n sm: 6,\n md: 3,\n children: /*#__PURE__*/_jsxDEV(Card, {\n children: /*#__PURE__*/_jsxDEV(CardContent, {\n children: /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n alignItems: 'center',\n mb: 2\n },\n children: [/*#__PURE__*/_jsxDEV(Avatar, {\n sx: {\n bgcolor: 'info.main',\n mr: 2\n },\n children: /*#__PURE__*/_jsxDEV(Sync, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 365,\n columnNumber: 23\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 364,\n columnNumber: 21\n }, this), /*#__PURE__*/_jsxDEV(Box, {\n children: [/*#__PURE__*/_jsxDEV(Typography, {\n variant: \"h4\",\n children: \"15\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 368,\n columnNumber: 23\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body2\",\n color: \"text.secondary\",\n children: \"Syncs Today\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 369,\n columnNumber: 23\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 367,\n columnNumber: 21\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 363,\n columnNumber: 19\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 362,\n columnNumber: 17\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 361,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 360,\n columnNumber: 13\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 302,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(Grid, {\n container: true,\n spacing: 3,\n children: integrationsList.map(integration => /*#__PURE__*/_jsxDEV(Grid, {\n item: true,\n xs: 12,\n md: 6,\n lg: 4,\n children: /*#__PURE__*/_jsxDEV(Card, {\n children: /*#__PURE__*/_jsxDEV(CardContent, {\n children: [/*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n mb: 2\n },\n children: [/*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n alignItems: 'center'\n },\n children: [/*#__PURE__*/_jsxDEV(Avatar, {\n sx: {\n bgcolor: integration.color,\n mr: 2\n },\n children: integration.icon\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 387,\n columnNumber: 25\n }, this), /*#__PURE__*/_jsxDEV(Box, {\n children: [/*#__PURE__*/_jsxDEV(Typography, {\n variant: \"h6\",\n children: integration.name\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 391,\n columnNumber: 27\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body2\",\n color: \"text.secondary\",\n children: integration.type\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 392,\n columnNumber: 27\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 390,\n columnNumber: 25\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 386,\n columnNumber: 23\n }, this), /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n gap: 1\n },\n children: [/*#__PURE__*/_jsxDEV(IconButton, {\n size: \"small\",\n onClick: () => handleEditIntegration(integration),\n children: /*#__PURE__*/_jsxDEV(Edit, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 399,\n columnNumber: 27\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 398,\n columnNumber: 25\n }, this), /*#__PURE__*/_jsxDEV(IconButton, {\n size: \"small\",\n onClick: () => handleDeleteIntegration(integration.id),\n children: /*#__PURE__*/_jsxDEV(Delete, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 402,\n columnNumber: 27\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 401,\n columnNumber: 25\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 397,\n columnNumber: 23\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 385,\n columnNumber: 21\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body2\",\n color: \"text.secondary\",\n sx: {\n mb: 2\n },\n children: integration.description\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 407,\n columnNumber: 21\n }, this), /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n gap: 1,\n flexWrap: 'wrap',\n mb: 2\n },\n children: integration.features.map((feature, index) => /*#__PURE__*/_jsxDEV(Chip, {\n label: feature,\n size: \"small\",\n variant: \"outlined\"\n }, index, false, {\n fileName: _jsxFileName,\n lineNumber: 413,\n columnNumber: 25\n }, this))\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 411,\n columnNumber: 21\n }, this), /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n mb: 2\n },\n children: [/*#__PURE__*/_jsxDEV(Chip, {\n label: integration.status,\n size: \"small\",\n color: getStatusColor(integration.status)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 418,\n columnNumber: 23\n }, this), /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n alignItems: 'center',\n gap: 1\n },\n children: [getHealthIcon(integration.health), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body2\",\n color: \"text.secondary\",\n children: integration.health\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 425,\n columnNumber: 25\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 423,\n columnNumber: 23\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 417,\n columnNumber: 21\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body2\",\n color: \"text.secondary\",\n sx: {\n mb: 2\n },\n children: [\"Last Sync: \", integration.lastSync]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 431,\n columnNumber: 21\n }, this), /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n gap: 1\n },\n children: [/*#__PURE__*/_jsxDEV(FormControlLabel, {\n control: /*#__PURE__*/_jsxDEV(Switch, {\n checked: integration.status === 'connected',\n onChange: () => handleToggleIntegration(integration.id),\n color: \"primary\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 438,\n columnNumber: 27\n }, this),\n label: \"Enabled\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 436,\n columnNumber: 23\n }, this), /*#__PURE__*/_jsxDEV(Button, {\n size: \"small\",\n startIcon: /*#__PURE__*/_jsxDEV(Sync, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 448,\n columnNumber: 36\n }, this),\n onClick: () => handleSyncIntegration(integration.id),\n disabled: integration.status === 'disconnected',\n children: \"Sync\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 446,\n columnNumber: 23\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 435,\n columnNumber: 21\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 384,\n columnNumber: 19\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 383,\n columnNumber: 17\n }, this)\n }, integration.id, false, {\n fileName: _jsxFileName,\n lineNumber: 382,\n columnNumber: 15\n }, this))\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 380,\n columnNumber: 11\n }, this)]\n }, void 0, true), tabValue === 1 && /*#__PURE__*/_jsxDEV(Grid, {\n container: true,\n spacing: 3,\n children: integrationTemplates.map((template, index) => /*#__PURE__*/_jsxDEV(Grid, {\n item: true,\n xs: 12,\n md: 6,\n children: /*#__PURE__*/_jsxDEV(Card, {\n children: /*#__PURE__*/_jsxDEV(CardContent, {\n children: [/*#__PURE__*/_jsxDEV(Typography, {\n variant: \"h6\",\n gutterBottom: true,\n children: template.name\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 469,\n columnNumber: 19\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body2\",\n color: \"text.secondary\",\n sx: {\n mb: 2\n },\n children: template.description\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 472,\n columnNumber: 19\n }, this), /*#__PURE__*/_jsxDEV(Chip, {\n label: template.category,\n size: \"small\",\n sx: {\n mb: 2\n }\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 475,\n columnNumber: 19\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"subtitle2\",\n gutterBottom: true,\n children: \"Setup Steps:\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 476,\n columnNumber: 19\n }, this), /*#__PURE__*/_jsxDEV(List, {\n dense: true,\n children: template.setupSteps.map((step, stepIndex) => /*#__PURE__*/_jsxDEV(ListItem, {\n children: /*#__PURE__*/_jsxDEV(ListItemText, {\n primary: `${stepIndex + 1}. ${step}`\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 482,\n columnNumber: 25\n }, this)\n }, stepIndex, false, {\n fileName: _jsxFileName,\n lineNumber: 481,\n columnNumber: 23\n }, this))\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 479,\n columnNumber: 19\n }, this), /*#__PURE__*/_jsxDEV(Button, {\n variant: \"outlined\",\n fullWidth: true,\n sx: {\n mt: 2\n },\n onClick: () => {\n setNewIntegration(prev => ({\n ...prev,\n name: template.name\n }));\n setIntegrationDialogOpen(true);\n },\n children: \"Use Template\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 486,\n columnNumber: 19\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 468,\n columnNumber: 17\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 467,\n columnNumber: 15\n }, this)\n }, index, false, {\n fileName: _jsxFileName,\n lineNumber: 466,\n columnNumber: 13\n }, this))\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 464,\n columnNumber: 9\n }, this), tabValue === 2 && /*#__PURE__*/_jsxDEV(Paper, {\n sx: {\n p: 3\n },\n children: [/*#__PURE__*/_jsxDEV(Typography, {\n variant: \"h6\",\n gutterBottom: true,\n children: \"API Documentation\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 506,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(Alert, {\n severity: \"info\",\n sx: {\n mb: 3\n },\n children: [/*#__PURE__*/_jsxDEV(Typography, {\n variant: \"subtitle2\",\n children: \"Integration API\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 510,\n columnNumber: 13\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body2\",\n children: \"Use our REST API to integrate with external systems. All endpoints require authentication.\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 511,\n columnNumber: 13\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 509,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"subtitle1\",\n gutterBottom: true,\n children: \"Base URL: https://api.etb-enterprise.com/v1\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 516,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"subtitle1\",\n gutterBottom: true,\n sx: {\n mt: 3\n },\n children: \"Authentication\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 520,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body2\",\n sx: {\n mb: 2\n },\n children: \"Include your API key in the Authorization header:\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 523,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(Paper, {\n sx: {\n p: 2,\n bgcolor: 'grey.100',\n mb: 3\n },\n children: /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body2\",\n component: \"pre\",\n children: `Authorization: Bearer YOUR_API_KEY`\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 527,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 526,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"subtitle1\",\n gutterBottom: true,\n children: \"Common Endpoints\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 532,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(List, {\n children: [/*#__PURE__*/_jsxDEV(ListItem, {\n children: /*#__PURE__*/_jsxDEV(ListItemText, {\n primary: \"POST /incidents\",\n secondary: \"Create a new incident\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 537,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 536,\n columnNumber: 13\n }, this), /*#__PURE__*/_jsxDEV(ListItem, {\n children: /*#__PURE__*/_jsxDEV(ListItemText, {\n primary: \"GET /incidents\",\n secondary: \"Retrieve incidents with filtering\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 543,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 542,\n columnNumber: 13\n }, this), /*#__PURE__*/_jsxDEV(ListItem, {\n children: /*#__PURE__*/_jsxDEV(ListItemText, {\n primary: \"PUT /incidents/{id}\",\n secondary: \"Update an existing incident\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 549,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 548,\n columnNumber: 13\n }, this), /*#__PURE__*/_jsxDEV(ListItem, {\n children: /*#__PURE__*/_jsxDEV(ListItemText, {\n primary: \"GET /users\",\n secondary: \"Retrieve user information\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 555,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 554,\n columnNumber: 13\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 535,\n columnNumber: 11\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 505,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(Dialog, {\n open: integrationDialogOpen,\n onClose: () => setIntegrationDialogOpen(false),\n maxWidth: \"md\",\n fullWidth: true,\n children: [/*#__PURE__*/_jsxDEV(DialogTitle, {\n children: selectedIntegration ? 'Edit Integration' : 'Create New Integration'\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 566,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(DialogContent, {\n children: /*#__PURE__*/_jsxDEV(Grid, {\n container: true,\n spacing: 2,\n sx: {\n mt: 1\n },\n children: [/*#__PURE__*/_jsxDEV(Grid, {\n item: true,\n xs: 12,\n md: 6,\n children: /*#__PURE__*/_jsxDEV(TextField, {\n fullWidth: true,\n label: \"Integration Name\",\n value: newIntegration.name,\n onChange: e => setNewIntegration(prev => ({\n ...prev,\n name: e.target.value\n })),\n required: true\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 572,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 571,\n columnNumber: 13\n }, this), /*#__PURE__*/_jsxDEV(Grid, {\n item: true,\n xs: 12,\n md: 6,\n children: /*#__PURE__*/_jsxDEV(FormControl, {\n fullWidth: true,\n required: true,\n children: [/*#__PURE__*/_jsxDEV(InputLabel, {\n children: \"Type\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 582,\n columnNumber: 17\n }, this), /*#__PURE__*/_jsxDEV(Select, {\n value: newIntegration.type,\n label: \"Type\",\n onChange: e => setNewIntegration(prev => ({\n ...prev,\n type: e.target.value\n })),\n children: integrationTypes.map(type => /*#__PURE__*/_jsxDEV(MenuItem, {\n value: type.value,\n children: /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n alignItems: 'center'\n },\n children: [type.icon, /*#__PURE__*/_jsxDEV(Typography, {\n sx: {\n ml: 1\n },\n children: type.label\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 592,\n columnNumber: 25\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 590,\n columnNumber: 23\n }, this)\n }, type.value, false, {\n fileName: _jsxFileName,\n lineNumber: 589,\n columnNumber: 21\n }, this))\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 583,\n columnNumber: 17\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 581,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 580,\n columnNumber: 13\n }, this), /*#__PURE__*/_jsxDEV(Grid, {\n item: true,\n xs: 12,\n children: /*#__PURE__*/_jsxDEV(TextField, {\n fullWidth: true,\n label: \"Description\",\n value: newIntegration.description,\n onChange: e => setNewIntegration(prev => ({\n ...prev,\n description: e.target.value\n })),\n multiline: true,\n rows: 2\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 600,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 599,\n columnNumber: 13\n }, this), /*#__PURE__*/_jsxDEV(Grid, {\n item: true,\n xs: 12,\n md: 6,\n children: /*#__PURE__*/_jsxDEV(TextField, {\n fullWidth: true,\n label: \"Endpoint URL\",\n value: newIntegration.endpoint,\n onChange: e => setNewIntegration(prev => ({\n ...prev,\n endpoint: e.target.value\n })),\n placeholder: \"https://api.example.com\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 610,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 609,\n columnNumber: 13\n }, this), /*#__PURE__*/_jsxDEV(Grid, {\n item: true,\n xs: 12,\n md: 6,\n children: /*#__PURE__*/_jsxDEV(TextField, {\n fullWidth: true,\n label: \"API Key\",\n type: \"password\",\n value: newIntegration.apiKey,\n onChange: e => setNewIntegration(prev => ({\n ...prev,\n apiKey: e.target.value\n })),\n placeholder: \"Enter API key or token\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 619,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 618,\n columnNumber: 13\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 570,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 569,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(DialogActions, {\n children: [/*#__PURE__*/_jsxDEV(Button, {\n onClick: () => setIntegrationDialogOpen(false),\n children: \"Cancel\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 631,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(Button, {\n variant: \"contained\",\n onClick: handleSaveIntegration,\n children: selectedIntegration ? 'Update' : 'Create'\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 632,\n columnNumber: 11\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 630,\n columnNumber: 9\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 565,\n columnNumber: 7\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 277,\n columnNumber: 5\n }, this);\n};\n_s(IntegrationManager, \"guwM7Ux06LWlmq6CiOgST6RO0XE=\");\n_c = IntegrationManager;\nexport default IntegrationManager;\nvar _c;\n$RefreshReg$(_c, \"IntegrationManager\");","map":{"version":3,"names":["React","useState","Grid","Paper","Typography","Box","Card","CardContent","Button","Chip","IconButton","Switch","FormControlLabel","Dialog","DialogTitle","DialogContent","DialogActions","TextField","FormControl","InputLabel","Select","MenuItem","List","ListItem","ListItemText","Alert","Tabs","Tab","Avatar","LinearProgress","Chat","Storage","Security","CheckCircle","Error","Warning","Add","Edit","Delete","Sync","Api","Database","Monitor","jsxDEV","_jsxDEV","Fragment","_Fragment","integrations","id","name","type","status","description","icon","fileName","_jsxFileName","lineNumber","columnNumber","color","lastSync","health","features","integrationTemplates","category","setupSteps","integrationTypes","value","label","IntegrationManager","_s","integrationsList","setIntegrationsList","selectedIntegration","setSelectedIntegration","integrationDialogOpen","setIntegrationDialogOpen","tabValue","setTabValue","newIntegration","setNewIntegration","endpoint","apiKey","handleToggleIntegration","integrationId","prev","map","integration","Date","toLocaleString","handleEditIntegration","handleCreateIntegration","handleSaveIntegration","newId","Math","max","i","handleDeleteIntegration","window","confirm","filter","handleSyncIntegration","getHealthColor","colors","healthy","warning","error","getHealthIcon","icons","getStatusColor","connectedCount","length","totalCount","children","sx","display","justifyContent","alignItems","mb","variant","gutterBottom","startIcon","onClick","p","onChange","e","newValue","container","spacing","item","xs","sm","md","bgcolor","mr","height","borderRadius","lg","gap","size","flexWrap","feature","index","control","checked","disabled","template","dense","step","stepIndex","primary","fullWidth","mt","severity","component","secondary","open","onClose","maxWidth","target","required","ml","multiline","rows","placeholder","_c","$RefreshReg$"],"sources":["/home/gnx/Desktop/ETB/ETB-FrontEnd/src/pages/Admin/IntegrationManager.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport {\n Grid,\n Paper,\n Typography,\n Box,\n Card,\n CardContent,\n Button,\n Chip,\n IconButton,\n Switch,\n FormControlLabel,\n Dialog,\n DialogTitle,\n DialogContent,\n DialogActions,\n TextField,\n FormControl,\n InputLabel,\n Select,\n MenuItem,\n List,\n ListItem,\n ListItemText,\n Alert,\n Tabs,\n Tab,\n Avatar,\n LinearProgress,\n} from '@mui/material';\nimport {\n Chat,\n Storage,\n Security,\n CheckCircle,\n Error,\n Warning,\n Add,\n Edit,\n Delete,\n Sync,\n Api,\n Storage as Database,\n Monitor,\n} from '@mui/icons-material';\n\nconst integrations = [\n {\n id: 1,\n name: 'Microsoft Teams',\n type: 'Communication',\n status: 'connected',\n description: 'Send notifications and updates to Teams channels',\n icon: <Chat />,\n color: '#1976d2',\n lastSync: '2024-01-15 10:30',\n health: 'healthy',\n features: ['Notifications', 'Incident Updates', 'Status Changes']\n },\n {\n id: 2,\n name: 'ServiceNow',\n type: 'CMDB',\n status: 'connected',\n description: 'Synchronize configuration items and incidents',\n icon: <Database />,\n color: '#4caf50',\n lastSync: '2024-01-15 10:25',\n health: 'healthy',\n features: ['CMDB Sync', 'Incident Sync', 'Asset Management']\n },\n {\n id: 3,\n name: 'Nagios',\n type: 'Monitoring',\n status: 'connected',\n description: 'Automatically create incidents from monitoring alerts',\n icon: <Monitor />,\n color: '#ff9800',\n lastSync: '2024-01-15 10:20',\n health: 'warning',\n features: ['Auto Incident Creation', 'Alert Correlation', 'Status Monitoring']\n },\n {\n id: 4,\n name: 'Slack',\n type: 'Communication',\n status: 'disconnected',\n description: 'Team communication and incident notifications',\n icon: <Chat />,\n color: '#e91e63',\n lastSync: '2024-01-14 16:45',\n health: 'error',\n features: ['Notifications', 'Team Chat', 'Incident Updates']\n },\n {\n id: 5,\n name: 'Active Directory',\n type: 'Identity',\n status: 'connected',\n description: 'User authentication and role synchronization',\n icon: <Security />,\n color: '#9c27b0',\n lastSync: '2024-01-15 10:15',\n health: 'healthy',\n features: ['User Sync', 'Authentication', 'Role Management']\n },\n {\n id: 6,\n name: 'Jira',\n type: 'Project Management',\n status: 'connected',\n description: 'Create and sync issues with project management',\n icon: <Api />,\n color: '#00bcd4',\n lastSync: '2024-01-15 10:10',\n health: 'healthy',\n features: ['Issue Creation', 'Status Sync', 'Project Tracking']\n }\n];\n\nconst integrationTemplates = [\n {\n name: 'Email Integration',\n description: 'Configure SMTP settings for email notifications',\n category: 'Communication',\n setupSteps: [\n 'Configure SMTP server settings',\n 'Set up authentication credentials',\n 'Test email delivery',\n 'Configure notification templates'\n ]\n },\n {\n name: 'Webhook Integration',\n description: 'Set up webhooks for real-time data exchange',\n category: 'API',\n setupSteps: [\n 'Define webhook endpoints',\n 'Configure authentication',\n 'Set up data mapping',\n 'Test webhook delivery'\n ]\n },\n {\n name: 'Database Integration',\n description: 'Connect to external databases for data synchronization',\n category: 'Data',\n setupSteps: [\n 'Configure database connection',\n 'Set up data mapping',\n 'Configure sync schedule',\n 'Test data synchronization'\n ]\n }\n];\n\nconst integrationTypes = [\n { value: 'Communication', label: 'Communication', icon: <Chat /> },\n { value: 'Monitoring', label: 'Monitoring', icon: <Monitor /> },\n { value: 'CMDB', label: 'CMDB', icon: <Database /> },\n { value: 'Identity', label: 'Identity', icon: <Security /> },\n { value: 'API', label: 'API', icon: <Api /> },\n { value: 'Data', label: 'Data', icon: <Storage /> },\n];\n\nconst IntegrationManager: React.FC = () => {\n const [integrationsList, setIntegrationsList] = useState(integrations);\n const [selectedIntegration, setSelectedIntegration] = useState<any>(null);\n const [integrationDialogOpen, setIntegrationDialogOpen] = useState<boolean>(false);\n const [tabValue, setTabValue] = useState<number>(0);\n const [newIntegration, setNewIntegration] = useState({\n name: '',\n type: '',\n description: '',\n endpoint: '',\n apiKey: '',\n status: 'disconnected'\n });\n\n const handleToggleIntegration = (integrationId: any) => {\n setIntegrationsList(prev => prev.map(integration => \n integration.id === integrationId \n ? { \n ...integration, \n status: integration.status === 'connected' ? 'disconnected' : 'connected',\n lastSync: new Date().toLocaleString()\n }\n : integration\n ));\n };\n\n const handleEditIntegration = (integration: any) => {\n setSelectedIntegration(integration);\n setNewIntegration(integration);\n setIntegrationDialogOpen(true);\n };\n\n const handleCreateIntegration = () => {\n setSelectedIntegration(null);\n setNewIntegration({\n name: '',\n type: '',\n description: '',\n endpoint: '',\n apiKey: '',\n status: 'disconnected'\n });\n setIntegrationDialogOpen(true);\n };\n\n const handleSaveIntegration = () => {\n if (selectedIntegration) {\n setIntegrationsList(prev => prev.map(integration => \n integration.id === selectedIntegration.id ? { \n ...integration,\n ...newIntegration, \n id: selectedIntegration.id \n } : integration\n ));\n } else {\n const newId = Math.max(...integrationsList.map(i => i.id)) + 1;\n setIntegrationsList(prev => [...prev, { \n ...newIntegration, \n id: newId,\n icon: <Api />,\n color: '#1976d2',\n lastSync: new Date().toLocaleString(),\n health: 'healthy',\n features: ['Basic Integration']\n }]);\n }\n setIntegrationDialogOpen(false);\n };\n\n const handleDeleteIntegration = (integrationId: any) => {\n if (window.confirm('Are you sure you want to delete this integration?')) {\n setIntegrationsList(prev => prev.filter(i => i.id !== integrationId));\n }\n };\n\n const handleSyncIntegration = (integrationId: any) => {\n setIntegrationsList(prev => prev.map(integration => \n integration.id === integrationId \n ? { ...integration, lastSync: new Date().toLocaleString() }\n : integration\n ));\n };\n\n const getHealthColor = (health: string) => {\n const colors: { [key: string]: string } = {\n healthy: 'success',\n warning: 'warning',\n error: 'error'\n };\n return colors[health] || 'default';\n };\n\n const getHealthIcon = (health: string) => {\n const icons: { [key: string]: JSX.Element } = {\n healthy: <CheckCircle color=\"success\" />,\n warning: <Warning color=\"warning\" />,\n error: <Error color=\"error\" />\n };\n return icons[health] || <Error />;\n };\n\n const getStatusColor = (status: string) => {\n return status === 'connected' ? 'success' : 'error';\n };\n\n const connectedCount = integrationsList.filter(i => i.status === 'connected').length;\n const totalCount = integrationsList.length;\n\n return (\n <Box>\n <Box sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center', mb: 3 }}>\n <Typography variant=\"h4\" gutterBottom>\n Integration Manager\n </Typography>\n <Button\n variant=\"contained\"\n startIcon={<Add />}\n onClick={handleCreateIntegration}\n >\n Add Integration\n </Button>\n </Box>\n\n <Paper sx={{ p: 2, mb: 3 }}>\n <Tabs value={tabValue} onChange={(e, newValue) => setTabValue(newValue)}>\n <Tab label=\"Active Integrations\" />\n <Tab label=\"Integration Templates\" />\n <Tab label=\"API Documentation\" />\n </Tabs>\n </Paper>\n\n {tabValue === 0 && (\n <>\n {/* Integration Status Overview */}\n <Grid container spacing={3} sx={{ mb: 3 }}>\n <Grid item xs={12} sm={6} md={3}>\n <Card>\n <CardContent>\n <Box sx={{ display: 'flex', alignItems: 'center', mb: 2 }}>\n <Avatar sx={{ bgcolor: 'success.main', mr: 2 }}>\n <CheckCircle />\n </Avatar>\n <Box>\n <Typography variant=\"h4\">{connectedCount}</Typography>\n <Typography variant=\"body2\" color=\"text.secondary\">\n Connected\n </Typography>\n </Box>\n </Box>\n <LinearProgress\n variant=\"determinate\"\n value={(connectedCount / totalCount) * 100}\n color=\"success\"\n sx={{ height: 8, borderRadius: 4 }}\n />\n </CardContent>\n </Card>\n </Grid>\n <Grid item xs={12} sm={6} md={3}>\n <Card>\n <CardContent>\n <Box sx={{ display: 'flex', alignItems: 'center', mb: 2 }}>\n <Avatar sx={{ bgcolor: 'error.main', mr: 2 }}>\n <Error />\n </Avatar>\n <Box>\n <Typography variant=\"h4\">{totalCount - connectedCount}</Typography>\n <Typography variant=\"body2\" color=\"text.secondary\">\n Disconnected\n </Typography>\n </Box>\n </Box>\n </CardContent>\n </Card>\n </Grid>\n <Grid item xs={12} sm={6} md={3}>\n <Card>\n <CardContent>\n <Box sx={{ display: 'flex', alignItems: 'center', mb: 2 }}>\n <Avatar sx={{ bgcolor: 'warning.main', mr: 2 }}>\n <Warning />\n </Avatar>\n <Box>\n <Typography variant=\"h4\">2</Typography>\n <Typography variant=\"body2\" color=\"text.secondary\">\n Warnings\n </Typography>\n </Box>\n </Box>\n </CardContent>\n </Card>\n </Grid>\n <Grid item xs={12} sm={6} md={3}>\n <Card>\n <CardContent>\n <Box sx={{ display: 'flex', alignItems: 'center', mb: 2 }}>\n <Avatar sx={{ bgcolor: 'info.main', mr: 2 }}>\n <Sync />\n </Avatar>\n <Box>\n <Typography variant=\"h4\">15</Typography>\n <Typography variant=\"body2\" color=\"text.secondary\">\n Syncs Today\n </Typography>\n </Box>\n </Box>\n </CardContent>\n </Card>\n </Grid>\n </Grid>\n\n {/* Integrations List */}\n <Grid container spacing={3}>\n {integrationsList.map((integration: any) => (\n <Grid item xs={12} md={6} lg={4} key={integration.id}>\n <Card>\n <CardContent>\n <Box sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center', mb: 2 }}>\n <Box sx={{ display: 'flex', alignItems: 'center' }}>\n <Avatar sx={{ bgcolor: integration.color, mr: 2 }}>\n {integration.icon}\n </Avatar>\n <Box>\n <Typography variant=\"h6\">{integration.name}</Typography>\n <Typography variant=\"body2\" color=\"text.secondary\">\n {integration.type}\n </Typography>\n </Box>\n </Box>\n <Box sx={{ display: 'flex', gap: 1 }}>\n <IconButton size=\"small\" onClick={() => handleEditIntegration(integration)}>\n <Edit />\n </IconButton>\n <IconButton size=\"small\" onClick={() => handleDeleteIntegration(integration.id)}>\n <Delete />\n </IconButton>\n </Box>\n </Box>\n \n <Typography variant=\"body2\" color=\"text.secondary\" sx={{ mb: 2 }}>\n {integration.description}\n </Typography>\n \n <Box sx={{ display: 'flex', gap: 1, flexWrap: 'wrap', mb: 2 }}>\n {integration.features.map((feature: string, index: number) => (\n <Chip key={index} label={feature} size=\"small\" variant=\"outlined\" />\n ))}\n </Box>\n \n <Box sx={{ display: 'flex', justifyContent: 'space-between', alignItems: 'center', mb: 2 }}>\n <Chip\n label={integration.status}\n size=\"small\"\n color={getStatusColor(integration.status)}\n />\n <Box sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>\n {getHealthIcon(integration.health)}\n <Typography variant=\"body2\" color=\"text.secondary\">\n {integration.health}\n </Typography>\n </Box>\n </Box>\n \n <Typography variant=\"body2\" color=\"text.secondary\" sx={{ mb: 2 }}>\n Last Sync: {integration.lastSync}\n </Typography>\n \n <Box sx={{ display: 'flex', gap: 1 }}>\n <FormControlLabel\n control={\n <Switch\n checked={integration.status === 'connected'}\n onChange={() => handleToggleIntegration(integration.id)}\n color=\"primary\"\n />\n }\n label=\"Enabled\"\n />\n <Button\n size=\"small\"\n startIcon={<Sync />}\n onClick={() => handleSyncIntegration(integration.id)}\n disabled={integration.status === 'disconnected'}\n >\n Sync\n </Button>\n </Box>\n </CardContent>\n </Card>\n </Grid>\n ))}\n </Grid>\n </>\n )}\n\n {tabValue === 1 && (\n <Grid container spacing={3}>\n {integrationTemplates.map((template, index) => (\n <Grid item xs={12} md={6} key={index}>\n <Card>\n <CardContent>\n <Typography variant=\"h6\" gutterBottom>\n {template.name}\n </Typography>\n <Typography variant=\"body2\" color=\"text.secondary\" sx={{ mb: 2 }}>\n {template.description}\n </Typography>\n <Chip label={template.category} size=\"small\" sx={{ mb: 2 }} />\n <Typography variant=\"subtitle2\" gutterBottom>\n Setup Steps:\n </Typography>\n <List dense>\n {template.setupSteps.map((step, stepIndex) => (\n <ListItem key={stepIndex}>\n <ListItemText primary={`${stepIndex + 1}. ${step}`} />\n </ListItem>\n ))}\n </List>\n <Button\n variant=\"outlined\"\n fullWidth\n sx={{ mt: 2 }}\n onClick={() => {\n setNewIntegration(prev => ({ ...prev, name: template.name }));\n setIntegrationDialogOpen(true);\n }}\n >\n Use Template\n </Button>\n </CardContent>\n </Card>\n </Grid>\n ))}\n </Grid>\n )}\n\n {tabValue === 2 && (\n <Paper sx={{ p: 3 }}>\n <Typography variant=\"h6\" gutterBottom>\n API Documentation\n </Typography>\n <Alert severity=\"info\" sx={{ mb: 3 }}>\n <Typography variant=\"subtitle2\">Integration API</Typography>\n <Typography variant=\"body2\">\n Use our REST API to integrate with external systems. All endpoints require authentication.\n </Typography>\n </Alert>\n \n <Typography variant=\"subtitle1\" gutterBottom>\n Base URL: https://api.etb-enterprise.com/v1\n </Typography>\n \n <Typography variant=\"subtitle1\" gutterBottom sx={{ mt: 3 }}>\n Authentication\n </Typography>\n <Typography variant=\"body2\" sx={{ mb: 2 }}>\n Include your API key in the Authorization header:\n </Typography>\n <Paper sx={{ p: 2, bgcolor: 'grey.100', mb: 3 }}>\n <Typography variant=\"body2\" component=\"pre\">\n {`Authorization: Bearer YOUR_API_KEY`}\n </Typography>\n </Paper>\n \n <Typography variant=\"subtitle1\" gutterBottom>\n Common Endpoints\n </Typography>\n <List>\n <ListItem>\n <ListItemText\n primary=\"POST /incidents\"\n secondary=\"Create a new incident\"\n />\n </ListItem>\n <ListItem>\n <ListItemText\n primary=\"GET /incidents\"\n secondary=\"Retrieve incidents with filtering\"\n />\n </ListItem>\n <ListItem>\n <ListItemText\n primary=\"PUT /incidents/{id}\"\n secondary=\"Update an existing incident\"\n />\n </ListItem>\n <ListItem>\n <ListItemText\n primary=\"GET /users\"\n secondary=\"Retrieve user information\"\n />\n </ListItem>\n </List>\n </Paper>\n )}\n\n {/* Integration Dialog */}\n <Dialog open={integrationDialogOpen} onClose={() => setIntegrationDialogOpen(false)} maxWidth=\"md\" fullWidth>\n <DialogTitle>\n {selectedIntegration ? 'Edit Integration' : 'Create New Integration'}\n </DialogTitle>\n <DialogContent>\n <Grid container spacing={2} sx={{ mt: 1 }}>\n <Grid item xs={12} md={6}>\n <TextField\n fullWidth\n label=\"Integration Name\"\n value={newIntegration.name}\n onChange={(e) => setNewIntegration(prev => ({ ...prev, name: e.target.value }))}\n required\n />\n </Grid>\n <Grid item xs={12} md={6}>\n <FormControl fullWidth required>\n <InputLabel>Type</InputLabel>\n <Select\n value={newIntegration.type}\n label=\"Type\"\n onChange={(e) => setNewIntegration(prev => ({ ...prev, type: e.target.value }))}\n >\n {integrationTypes.map((type: any) => (\n <MenuItem key={type.value} value={type.value}>\n <Box sx={{ display: 'flex', alignItems: 'center' }}>\n {type.icon}\n <Typography sx={{ ml: 1 }}>{type.label}</Typography>\n </Box>\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n </Grid>\n <Grid item xs={12}>\n <TextField\n fullWidth\n label=\"Description\"\n value={newIntegration.description}\n onChange={(e) => setNewIntegration(prev => ({ ...prev, description: e.target.value }))}\n multiline\n rows={2}\n />\n </Grid>\n <Grid item xs={12} md={6}>\n <TextField\n fullWidth\n label=\"Endpoint URL\"\n value={newIntegration.endpoint}\n onChange={(e) => setNewIntegration(prev => ({ ...prev, endpoint: e.target.value }))}\n placeholder=\"https://api.example.com\"\n />\n </Grid>\n <Grid item xs={12} md={6}>\n <TextField\n fullWidth\n label=\"API Key\"\n type=\"password\"\n value={newIntegration.apiKey}\n onChange={(e) => setNewIntegration(prev => ({ ...prev, apiKey: e.target.value }))}\n placeholder=\"Enter API key or token\"\n />\n </Grid>\n </Grid>\n </DialogContent>\n <DialogActions>\n <Button onClick={() => setIntegrationDialogOpen(false)}>Cancel</Button>\n <Button variant=\"contained\" onClick={handleSaveIntegration}>\n {selectedIntegration ? 'Update' : 'Create'}\n </Button>\n </DialogActions>\n </Dialog>\n </Box>\n );\n}\n\nexport default IntegrationManager;\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}