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

1 line
52 KiB
JSON

{"ast":null,"code":"var _jsxFileName = \"/home/gnx/Desktop/ETB/ETB-FrontEnd/src/components/Auth/Login.tsx\",\n _s = $RefreshSig$();\nimport React, { useState } from 'react';\nimport { Box, CardContent, TextField, Button, Typography, Alert, CircularProgress, Container, Avatar, Grid, Chip } from '@mui/material';\nimport { Security, Person, Lock, Business, Visibility, VisibilityOff } from '@mui/icons-material';\nimport { useAuth } from './AuthContext';\nimport { motion } from 'framer-motion';\nimport { GlassmorphismCard } from '../Animated/GlassmorphismCard';\nimport { AnimatedCard } from '../Animated/AnimatedCard';\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nconst Login = () => {\n _s();\n const [formData, setFormData] = useState({\n username: '',\n password: ''\n });\n const [error, setError] = useState('');\n const [showPassword, setShowPassword] = useState(false);\n const {\n login,\n loading\n } = useAuth();\n const handleInputChange = (field, value) => {\n setFormData(prev => ({\n ...prev,\n [field]: value\n }));\n setError('');\n };\n const handleSubmit = async e => {\n e.preventDefault();\n setError('');\n if (!formData.username || !formData.password) {\n setError('Please enter both username and password');\n return;\n }\n const result = await login(formData.username, formData.password);\n if (!result.success) {\n setError(result.error || 'Login failed');\n }\n };\n const demoUsers = [{\n username: 'admin',\n role: 'Admin',\n description: 'Full system access'\n }, {\n username: 'john.smith',\n role: 'IT Staff',\n description: 'Incident & Problem Management'\n }, {\n username: 'sarah.johnson',\n role: 'Manager',\n description: 'Management & Reporting'\n }, {\n username: 'lisa.wilson',\n role: 'End User',\n description: 'Self-Service Portal'\n }];\n const handleDemoLogin = username => {\n setFormData(prev => ({\n ...prev,\n username,\n password: 'demo123'\n }));\n };\n return /*#__PURE__*/_jsxDEV(Container, {\n maxWidth: \"lg\",\n children: /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n minHeight: '100vh',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n background: 'linear-gradient(135deg, #667eea 0%, #764ba2 100%)',\n position: 'relative',\n overflow: 'hidden',\n '&::before': {\n content: '\"\"',\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n background: 'radial-gradient(circle at 20% 80%, rgba(120, 119, 198, 0.3) 0%, transparent 50%), radial-gradient(circle at 80% 20%, rgba(255, 119, 198, 0.3) 0%, transparent 50%)'\n }\n },\n children: /*#__PURE__*/_jsxDEV(Grid, {\n container: true,\n spacing: 6,\n alignItems: \"center\",\n sx: {\n position: 'relative',\n zIndex: 1\n },\n children: [/*#__PURE__*/_jsxDEV(Grid, {\n item: true,\n xs: 12,\n md: 6,\n children: /*#__PURE__*/_jsxDEV(motion.div, {\n initial: {\n opacity: 0,\n x: -50\n },\n animate: {\n opacity: 1,\n x: 0\n },\n transition: {\n duration: 0.8\n },\n children: /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n textAlign: 'center',\n color: 'white'\n },\n children: [/*#__PURE__*/_jsxDEV(motion.div, {\n initial: {\n scale: 0\n },\n animate: {\n scale: 1\n },\n transition: {\n duration: 0.6,\n delay: 0.2\n },\n children: /*#__PURE__*/_jsxDEV(Avatar, {\n sx: {\n width: 100,\n height: 100,\n bgcolor: 'rgba(255,255,255,0.2)',\n margin: '0 auto 2rem',\n fontSize: '2.5rem',\n backdropFilter: 'blur(10px)',\n border: '2px solid rgba(255,255,255,0.3)'\n },\n children: /*#__PURE__*/_jsxDEV(Business, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 133,\n columnNumber: 21\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 122,\n columnNumber: 19\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 117,\n columnNumber: 17\n }, this), /*#__PURE__*/_jsxDEV(motion.div, {\n initial: {\n opacity: 0,\n y: 20\n },\n animate: {\n opacity: 1,\n y: 0\n },\n transition: {\n duration: 0.6,\n delay: 0.4\n },\n children: [/*#__PURE__*/_jsxDEV(Typography, {\n variant: \"h2\",\n gutterBottom: true,\n sx: {\n fontWeight: 700,\n mb: 2\n },\n children: \"ETB Enterprise\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 141,\n columnNumber: 19\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"h4\",\n gutterBottom: true,\n sx: {\n fontWeight: 500,\n mb: 3\n },\n children: \"IT Services Management\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 144,\n columnNumber: 19\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"h6\",\n sx: {\n opacity: 0.9,\n maxWidth: 500,\n margin: '0 auto',\n lineHeight: 1.6\n },\n children: \"Comprehensive incident management and enterprise IT services platform with role-based access control and advanced automation.\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 147,\n columnNumber: 19\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 136,\n columnNumber: 17\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 116,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 111,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 110,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(Grid, {\n item: true,\n xs: 12,\n md: 6,\n children: /*#__PURE__*/_jsxDEV(motion.div, {\n initial: {\n opacity: 0,\n x: 50\n },\n animate: {\n opacity: 1,\n x: 0\n },\n transition: {\n duration: 0.8,\n delay: 0.2\n },\n children: /*#__PURE__*/_jsxDEV(AnimatedCard, {\n children: /*#__PURE__*/_jsxDEV(GlassmorphismCard, {\n sx: {\n maxWidth: 450,\n margin: '0 auto'\n },\n children: /*#__PURE__*/_jsxDEV(CardContent, {\n sx: {\n p: 4\n },\n children: [/*#__PURE__*/_jsxDEV(motion.div, {\n initial: {\n opacity: 0,\n y: 20\n },\n animate: {\n opacity: 1,\n y: 0\n },\n transition: {\n duration: 0.6,\n delay: 0.4\n },\n children: /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n textAlign: 'center',\n mb: 3\n },\n children: [/*#__PURE__*/_jsxDEV(Avatar, {\n sx: {\n bgcolor: 'primary.main',\n margin: '0 auto 1rem',\n width: 60,\n height: 60\n },\n children: /*#__PURE__*/_jsxDEV(Security, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 177,\n columnNumber: 27\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 171,\n columnNumber: 25\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"h4\",\n gutterBottom: true,\n sx: {\n fontWeight: 600\n },\n children: \"Sign In\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 179,\n columnNumber: 25\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body1\",\n color: \"text.secondary\",\n children: \"Enter your credentials to access the system\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 182,\n columnNumber: 25\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 170,\n columnNumber: 23\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 165,\n columnNumber: 21\n }, this), error && /*#__PURE__*/_jsxDEV(motion.div, {\n initial: {\n opacity: 0,\n scale: 0.9\n },\n animate: {\n opacity: 1,\n scale: 1\n },\n transition: {\n duration: 0.3\n },\n children: /*#__PURE__*/_jsxDEV(Alert, {\n severity: \"error\",\n sx: {\n mb: 2,\n borderRadius: 2\n },\n children: error\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 194,\n columnNumber: 25\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 189,\n columnNumber: 23\n }, this), /*#__PURE__*/_jsxDEV(motion.div, {\n initial: {\n opacity: 0,\n y: 20\n },\n animate: {\n opacity: 1,\n y: 0\n },\n transition: {\n duration: 0.6,\n delay: 0.6\n },\n children: /*#__PURE__*/_jsxDEV(Box, {\n component: \"form\",\n onSubmit: handleSubmit,\n children: [/*#__PURE__*/_jsxDEV(TextField, {\n fullWidth: true,\n label: \"Username\",\n value: formData.username,\n onChange: e => handleInputChange('username', e.target.value),\n margin: \"normal\",\n required: true,\n sx: {\n mb: 2\n },\n InputProps: {\n startAdornment: /*#__PURE__*/_jsxDEV(Person, {\n sx: {\n mr: 1,\n color: 'text.secondary'\n }\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 215,\n columnNumber: 45\n }, this)\n }\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 206,\n columnNumber: 25\n }, this), /*#__PURE__*/_jsxDEV(TextField, {\n fullWidth: true,\n label: \"Password\",\n type: showPassword ? 'text' : 'password',\n value: formData.password,\n onChange: e => handleInputChange('password', e.target.value),\n margin: \"normal\",\n required: true,\n sx: {\n mb: 2\n },\n InputProps: {\n startAdornment: /*#__PURE__*/_jsxDEV(Lock, {\n sx: {\n mr: 1,\n color: 'text.secondary'\n }\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 228,\n columnNumber: 45\n }, this),\n endAdornment: /*#__PURE__*/_jsxDEV(IconButton, {\n onClick: () => setShowPassword(!showPassword),\n edge: \"end\",\n size: \"small\",\n children: showPassword ? /*#__PURE__*/_jsxDEV(VisibilityOff, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 235,\n columnNumber: 49\n }, this) : /*#__PURE__*/_jsxDEV(Visibility, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 235,\n columnNumber: 69\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 230,\n columnNumber: 31\n }, this)\n }\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 218,\n columnNumber: 25\n }, this), /*#__PURE__*/_jsxDEV(Button, {\n type: \"submit\",\n fullWidth: true,\n variant: \"contained\",\n size: \"large\",\n disabled: loading,\n sx: {\n mt: 3,\n mb: 2,\n py: 1.5,\n borderRadius: 2,\n background: 'linear-gradient(135deg, #667eea 0%, #764ba2 100%)',\n '&:hover': {\n transform: 'translateY(-2px)',\n boxShadow: '0 8px 25px rgba(102, 126, 234, 0.4)'\n },\n transition: 'all 0.2s ease-in-out'\n },\n children: loading ? /*#__PURE__*/_jsxDEV(CircularProgress, {\n size: 24,\n color: \"inherit\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 259,\n columnNumber: 38\n }, this) : 'Sign In'\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 240,\n columnNumber: 25\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 205,\n columnNumber: 23\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 200,\n columnNumber: 21\n }, this), /*#__PURE__*/_jsxDEV(motion.div, {\n initial: {\n opacity: 0,\n y: 20\n },\n animate: {\n opacity: 1,\n y: 0\n },\n transition: {\n duration: 0.6,\n delay: 0.8\n },\n children: /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n mt: 3\n },\n children: [/*#__PURE__*/_jsxDEV(Typography, {\n variant: \"subtitle1\",\n gutterBottom: true,\n sx: {\n fontWeight: 600\n },\n children: \"Demo Accounts:\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 270,\n columnNumber: 25\n }, this), /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n flexDirection: 'column',\n gap: 1.5\n },\n children: demoUsers.map((user, index) => /*#__PURE__*/_jsxDEV(motion.div, {\n initial: {\n opacity: 0,\n x: -20\n },\n animate: {\n opacity: 1,\n x: 0\n },\n transition: {\n duration: 0.4,\n delay: 0.9 + index * 0.1\n },\n children: /*#__PURE__*/_jsxDEV(Box, {\n sx: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n p: 2,\n border: '1px solid rgba(255, 255, 255, 0.2)',\n borderRadius: 2,\n cursor: 'pointer',\n background: 'rgba(255, 255, 255, 0.05)',\n backdropFilter: 'blur(10px)',\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n background: 'rgba(255, 255, 255, 0.1)',\n transform: 'translateY(-2px)',\n boxShadow: '0 4px 20px rgba(0, 0, 0, 0.1)'\n }\n },\n onClick: () => handleDemoLogin(user.username),\n children: [/*#__PURE__*/_jsxDEV(Box, {\n children: [/*#__PURE__*/_jsxDEV(Typography, {\n variant: \"body1\",\n fontWeight: \"medium\",\n children: user.username\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 302,\n columnNumber: 35\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"caption\",\n color: \"text.secondary\",\n children: user.description\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 305,\n columnNumber: 35\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 301,\n columnNumber: 33\n }, this), /*#__PURE__*/_jsxDEV(Chip, {\n label: user.role,\n size: \"small\",\n color: \"primary\",\n variant: \"outlined\",\n sx: {\n fontWeight: 500\n }\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 309,\n columnNumber: 33\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 281,\n columnNumber: 31\n }, this)\n }, user.username, false, {\n fileName: _jsxFileName,\n lineNumber: 275,\n columnNumber: 29\n }, this))\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 273,\n columnNumber: 25\n }, this), /*#__PURE__*/_jsxDEV(Typography, {\n variant: \"caption\",\n color: \"text.secondary\",\n sx: {\n mt: 2,\n display: 'block',\n textAlign: 'center'\n },\n children: \"Use password: demo123 for all demo accounts\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 320,\n columnNumber: 25\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 269,\n columnNumber: 23\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 264,\n columnNumber: 21\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 164,\n columnNumber: 19\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 163,\n columnNumber: 17\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 162,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 157,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 156,\n columnNumber: 11\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 109,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 89,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 88,\n columnNumber: 5\n }, this);\n};\n_s(Login, \"pNHriKEkNUF5dPzed6SoBMtB+po=\", false, function () {\n return [useAuth];\n});\n_c = Login;\nexport default Login;\nvar _c;\n$RefreshReg$(_c, \"Login\");","map":{"version":3,"names":["React","useState","Box","CardContent","TextField","Button","Typography","Alert","CircularProgress","Container","Avatar","Grid","Chip","Security","Person","Lock","Business","Visibility","VisibilityOff","useAuth","motion","GlassmorphismCard","AnimatedCard","jsxDEV","_jsxDEV","Login","_s","formData","setFormData","username","password","error","setError","showPassword","setShowPassword","login","loading","handleInputChange","field","value","prev","handleSubmit","e","preventDefault","result","success","demoUsers","role","description","handleDemoLogin","maxWidth","children","sx","minHeight","display","alignItems","justifyContent","background","position","overflow","content","top","left","right","bottom","container","spacing","zIndex","item","xs","md","div","initial","opacity","x","animate","transition","duration","textAlign","color","scale","delay","width","height","bgcolor","margin","fontSize","backdropFilter","border","fileName","_jsxFileName","lineNumber","columnNumber","y","variant","gutterBottom","fontWeight","mb","lineHeight","p","severity","borderRadius","component","onSubmit","fullWidth","label","onChange","target","required","InputProps","startAdornment","mr","type","endAdornment","IconButton","onClick","edge","size","disabled","mt","py","transform","boxShadow","flexDirection","gap","map","user","index","cursor","_c","$RefreshReg$"],"sources":["/home/gnx/Desktop/ETB/ETB-FrontEnd/src/components/Auth/Login.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport {\n Box,\n Card,\n CardContent,\n TextField,\n Button,\n Typography,\n Alert,\n CircularProgress,\n Container,\n Avatar,\n Grid,\n Chip,\n} from '@mui/material';\nimport {\n Security,\n Person,\n Lock,\n Business,\n Visibility,\n VisibilityOff,\n} from '@mui/icons-material';\nimport { useAuth } from './AuthContext';\nimport { motion } from 'framer-motion';\nimport { GlassmorphismCard } from '../Animated/GlassmorphismCard';\nimport { AnimatedCard } from '../Animated/AnimatedCard';\n\ninterface FormData {\n username: string;\n password: string;\n}\n\ninterface DemoUser {\n username: string;\n role: string;\n description: string;\n}\n\nconst Login: React.FC = () => {\n const [formData, setFormData] = useState<FormData>({\n username: '',\n password: ''\n });\n const [error, setError] = useState<string>('');\n const [showPassword, setShowPassword] = useState<boolean>(false);\n const { login, loading } = useAuth();\n\n const handleInputChange = (field: keyof FormData, value: string): void => {\n setFormData(prev => ({\n ...prev,\n [field]: value\n }));\n setError('');\n };\n\n const handleSubmit = async (e: React.FormEvent<HTMLFormElement>): Promise<void> => {\n e.preventDefault();\n setError('');\n\n if (!formData.username || !formData.password) {\n setError('Please enter both username and password');\n return;\n }\n\n const result = await login(formData.username, formData.password);\n if (!result.success) {\n setError(result.error || 'Login failed');\n }\n };\n\n const demoUsers: DemoUser[] = [\n { username: 'admin', role: 'Admin', description: 'Full system access' },\n { username: 'john.smith', role: 'IT Staff', description: 'Incident & Problem Management' },\n { username: 'sarah.johnson', role: 'Manager', description: 'Management & Reporting' },\n { username: 'lisa.wilson', role: 'End User', description: 'Self-Service Portal' },\n ];\n\n const handleDemoLogin = (username: string): void => {\n setFormData(prev => ({\n ...prev,\n username,\n password: 'demo123'\n }));\n };\n\n return (\n <Container maxWidth=\"lg\">\n <Box\n sx={{\n minHeight: '100vh',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n background: 'linear-gradient(135deg, #667eea 0%, #764ba2 100%)',\n position: 'relative',\n overflow: 'hidden',\n '&::before': {\n content: '\"\"',\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n background: 'radial-gradient(circle at 20% 80%, rgba(120, 119, 198, 0.3) 0%, transparent 50%), radial-gradient(circle at 80% 20%, rgba(255, 119, 198, 0.3) 0%, transparent 50%)',\n }\n }}\n >\n <Grid container spacing={6} alignItems=\"center\" sx={{ position: 'relative', zIndex: 1 }}>\n <Grid item xs={12} md={6}>\n <motion.div\n initial={{ opacity: 0, x: -50 }}\n animate={{ opacity: 1, x: 0 }}\n transition={{ duration: 0.8 }}\n >\n <Box sx={{ textAlign: 'center', color: 'white' }}>\n <motion.div\n initial={{ scale: 0 }}\n animate={{ scale: 1 }}\n transition={{ duration: 0.6, delay: 0.2 }}\n >\n <Avatar\n sx={{\n width: 100,\n height: 100,\n bgcolor: 'rgba(255,255,255,0.2)',\n margin: '0 auto 2rem',\n fontSize: '2.5rem',\n backdropFilter: 'blur(10px)',\n border: '2px solid rgba(255,255,255,0.3)',\n }}\n >\n <Business />\n </Avatar>\n </motion.div>\n <motion.div\n initial={{ opacity: 0, y: 20 }}\n animate={{ opacity: 1, y: 0 }}\n transition={{ duration: 0.6, delay: 0.4 }}\n >\n <Typography variant=\"h2\" gutterBottom sx={{ fontWeight: 700, mb: 2 }}>\n ETB Enterprise\n </Typography>\n <Typography variant=\"h4\" gutterBottom sx={{ fontWeight: 500, mb: 3 }}>\n IT Services Management\n </Typography>\n <Typography variant=\"h6\" sx={{ opacity: 0.9, maxWidth: 500, margin: '0 auto', lineHeight: 1.6 }}>\n Comprehensive incident management and enterprise IT services platform\n with role-based access control and advanced automation.\n </Typography>\n </motion.div>\n </Box>\n </motion.div>\n </Grid>\n \n <Grid item xs={12} md={6}>\n <motion.div\n initial={{ opacity: 0, x: 50 }}\n animate={{ opacity: 1, x: 0 }}\n transition={{ duration: 0.8, delay: 0.2 }}\n >\n <AnimatedCard>\n <GlassmorphismCard sx={{ maxWidth: 450, margin: '0 auto' }}>\n <CardContent sx={{ p: 4 }}>\n <motion.div\n initial={{ opacity: 0, y: 20 }}\n animate={{ opacity: 1, y: 0 }}\n transition={{ duration: 0.6, delay: 0.4 }}\n >\n <Box sx={{ textAlign: 'center', mb: 3 }}>\n <Avatar sx={{ \n bgcolor: 'primary.main', \n margin: '0 auto 1rem',\n width: 60,\n height: 60,\n }}>\n <Security />\n </Avatar>\n <Typography variant=\"h4\" gutterBottom sx={{ fontWeight: 600 }}>\n Sign In\n </Typography>\n <Typography variant=\"body1\" color=\"text.secondary\">\n Enter your credentials to access the system\n </Typography>\n </Box>\n </motion.div>\n\n {error && (\n <motion.div\n initial={{ opacity: 0, scale: 0.9 }}\n animate={{ opacity: 1, scale: 1 }}\n transition={{ duration: 0.3 }}\n >\n <Alert severity=\"error\" sx={{ mb: 2, borderRadius: 2 }}>\n {error}\n </Alert>\n </motion.div>\n )}\n\n <motion.div\n initial={{ opacity: 0, y: 20 }}\n animate={{ opacity: 1, y: 0 }}\n transition={{ duration: 0.6, delay: 0.6 }}\n >\n <Box component=\"form\" onSubmit={handleSubmit}>\n <TextField\n fullWidth\n label=\"Username\"\n value={formData.username}\n onChange={(e) => handleInputChange('username', e.target.value)}\n margin=\"normal\"\n required\n sx={{ mb: 2 }}\n InputProps={{\n startAdornment: <Person sx={{ mr: 1, color: 'text.secondary' }} />\n }}\n />\n <TextField\n fullWidth\n label=\"Password\"\n type={showPassword ? 'text' : 'password'}\n value={formData.password}\n onChange={(e) => handleInputChange('password', e.target.value)}\n margin=\"normal\"\n required\n sx={{ mb: 2 }}\n InputProps={{\n startAdornment: <Lock sx={{ mr: 1, color: 'text.secondary' }} />,\n endAdornment: (\n <IconButton\n onClick={() => setShowPassword(!showPassword)}\n edge=\"end\"\n size=\"small\"\n >\n {showPassword ? <VisibilityOff /> : <Visibility />}\n </IconButton>\n )\n }}\n />\n <Button\n type=\"submit\"\n fullWidth\n variant=\"contained\"\n size=\"large\"\n disabled={loading}\n sx={{ \n mt: 3, \n mb: 2,\n py: 1.5,\n borderRadius: 2,\n background: 'linear-gradient(135deg, #667eea 0%, #764ba2 100%)',\n '&:hover': {\n transform: 'translateY(-2px)',\n boxShadow: '0 8px 25px rgba(102, 126, 234, 0.4)',\n },\n transition: 'all 0.2s ease-in-out',\n }}\n >\n {loading ? <CircularProgress size={24} color=\"inherit\" /> : 'Sign In'}\n </Button>\n </Box>\n </motion.div>\n\n <motion.div\n initial={{ opacity: 0, y: 20 }}\n animate={{ opacity: 1, y: 0 }}\n transition={{ duration: 0.6, delay: 0.8 }}\n >\n <Box sx={{ mt: 3 }}>\n <Typography variant=\"subtitle1\" gutterBottom sx={{ fontWeight: 600 }}>\n Demo Accounts:\n </Typography>\n <Box sx={{ display: 'flex', flexDirection: 'column', gap: 1.5 }}>\n {demoUsers.map((user, index) => (\n <motion.div\n key={user.username}\n initial={{ opacity: 0, x: -20 }}\n animate={{ opacity: 1, x: 0 }}\n transition={{ duration: 0.4, delay: 0.9 + index * 0.1 }}\n >\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n p: 2,\n border: '1px solid rgba(255, 255, 255, 0.2)',\n borderRadius: 2,\n cursor: 'pointer',\n background: 'rgba(255, 255, 255, 0.05)',\n backdropFilter: 'blur(10px)',\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n background: 'rgba(255, 255, 255, 0.1)',\n transform: 'translateY(-2px)',\n boxShadow: '0 4px 20px rgba(0, 0, 0, 0.1)',\n }\n }}\n onClick={() => handleDemoLogin(user.username)}\n >\n <Box>\n <Typography variant=\"body1\" fontWeight=\"medium\">\n {user.username}\n </Typography>\n <Typography variant=\"caption\" color=\"text.secondary\">\n {user.description}\n </Typography>\n </Box>\n <Chip\n label={user.role}\n size=\"small\"\n color=\"primary\"\n variant=\"outlined\"\n sx={{ fontWeight: 500 }}\n />\n </Box>\n </motion.div>\n ))}\n </Box>\n <Typography variant=\"caption\" color=\"text.secondary\" sx={{ mt: 2, display: 'block', textAlign: 'center' }}>\n Use password: demo123 for all demo accounts\n </Typography>\n </Box>\n </motion.div>\n </CardContent>\n </GlassmorphismCard>\n </AnimatedCard>\n </motion.div>\n </Grid>\n </Grid>\n </Box>\n </Container>\n );\n};\n\nexport default Login;\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}