-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy path.eslintcache
1 lines (1 loc) · 191 KB
/
.eslintcache
1
[{"C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\index.js":"1","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\reportWebVitals.js":"2","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\App.js":"3","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\login.js":"4","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper.js":"5","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\about.js":"6","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\contact.js":"7","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\white-ration.js":"8","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\register.js":"9","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin.js":"10","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\navbar.js":"11","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\saffron-ration.js":"12","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\yellow-ration.js":"13","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\home.js":"14","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\complaint.js":"15","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper\\ss-dashboard.js":"16","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper\\ssprofile.js":"17","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper\\ss-user-details.js":"18","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin\\adminProfile.js":"19","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin\\adminComplaint.js":"20","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper\\ss-stock-details.js":"21","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin\\adminShopkeeperDetails.js":"22","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin\\adminDashboard.js":"23","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin-panel-login.js":"24","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\ProtectedRoutes.js":"25","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper\\addUser.js":"26","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper\\editUser.js":"27","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin\\editAdmin.js":"28","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin\\supplyStock.js":"29","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\resetPassword.js":"30","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\navbar2.js":"31"},{"size":1223,"mtime":1624398954297,"results":"32","hashOfConfig":"33"},{"size":375,"mtime":1612364893889,"results":"34","hashOfConfig":"33"},{"size":2641,"mtime":1624569617861,"results":"35","hashOfConfig":"33"},{"size":7879,"mtime":1624780902889,"results":"36","hashOfConfig":"33"},{"size":3207,"mtime":1624571539591,"results":"37","hashOfConfig":"33"},{"size":8749,"mtime":1624569899286,"results":"38","hashOfConfig":"33"},{"size":1164,"mtime":1624569908310,"results":"39","hashOfConfig":"33"},{"size":3205,"mtime":1624570004973,"results":"40","hashOfConfig":"33"},{"size":13978,"mtime":1624695650397,"results":"41","hashOfConfig":"33"},{"size":3361,"mtime":1624571656381,"results":"42","hashOfConfig":"33"},{"size":1734,"mtime":1624570440671,"results":"43","hashOfConfig":"33"},{"size":3252,"mtime":1624570001109,"results":"44","hashOfConfig":"33"},{"size":4290,"mtime":1624570009671,"results":"45","hashOfConfig":"33"},{"size":2757,"mtime":1624569913311,"results":"46","hashOfConfig":"33"},{"size":7835,"mtime":1624714977947,"results":"47","hashOfConfig":"33"},{"size":349,"mtime":1613582354642,"results":"48","hashOfConfig":"33"},{"size":14316,"mtime":1624696174308,"results":"49","hashOfConfig":"33"},{"size":15356,"mtime":1624781210834,"results":"50","hashOfConfig":"33"},{"size":13833,"mtime":1624695869333,"results":"51","hashOfConfig":"33"},{"size":2697,"mtime":1624695800489,"results":"52","hashOfConfig":"33"},{"size":4190,"mtime":1624696074598,"results":"53","hashOfConfig":"33"},{"size":3839,"mtime":1624695901558,"results":"54","hashOfConfig":"33"},{"size":2998,"mtime":1624695825559,"results":"55","hashOfConfig":"33"},{"size":4782,"mtime":1624695775595,"results":"56","hashOfConfig":"33"},{"size":454,"mtime":1621883348231,"results":"57","hashOfConfig":"33"},{"size":3211,"mtime":1624780919361,"results":"58","hashOfConfig":"33"},{"size":5271,"mtime":1624696039219,"results":"59","hashOfConfig":"33"},{"size":4991,"mtime":1624695945245,"results":"60","hashOfConfig":"33"},{"size":6027,"mtime":1624695966375,"results":"61","hashOfConfig":"33"},{"size":5661,"mtime":1624695711132,"results":"62","hashOfConfig":"33"},{"size":2319,"mtime":1624696225092,"results":"63","hashOfConfig":"33"},{"filePath":"64","messages":"65","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"66"},"1framp5",{"filePath":"67","messages":"68","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"66"},{"filePath":"69","messages":"70","errorCount":0,"warningCount":8,"fixableErrorCount":0,"fixableWarningCount":0,"source":"71","usedDeprecatedRules":"66"},{"filePath":"72","messages":"73","errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"74"},{"filePath":"75","messages":"76","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"77","usedDeprecatedRules":"66"},{"filePath":"78","messages":"79","errorCount":0,"warningCount":5,"fixableErrorCount":0,"fixableWarningCount":0,"source":"80","usedDeprecatedRules":"66"},{"filePath":"81","messages":"82","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"66"},{"filePath":"83","messages":"84","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"85","usedDeprecatedRules":"66"},{"filePath":"86","messages":"87","errorCount":0,"warningCount":16,"fixableErrorCount":0,"fixableWarningCount":0,"source":"88","usedDeprecatedRules":"66"},{"filePath":"89","messages":"90","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"91","usedDeprecatedRules":"66"},{"filePath":"92","messages":"93","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"94","usedDeprecatedRules":"66"},{"filePath":"95","messages":"96","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"97","usedDeprecatedRules":"66"},{"filePath":"98","messages":"99","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"100","usedDeprecatedRules":"66"},{"filePath":"101","messages":"102","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"103","usedDeprecatedRules":"66"},{"filePath":"104","messages":"105","errorCount":0,"warningCount":14,"fixableErrorCount":0,"fixableWarningCount":0,"source":"106","usedDeprecatedRules":"66"},{"filePath":"107","messages":"108","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"66"},{"filePath":"109","messages":"110","errorCount":0,"warningCount":20,"fixableErrorCount":0,"fixableWarningCount":0,"source":"111","usedDeprecatedRules":"66"},{"filePath":"112","messages":"113","errorCount":0,"warningCount":70,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"114","messages":"115","errorCount":0,"warningCount":18,"fixableErrorCount":0,"fixableWarningCount":0,"source":"116","usedDeprecatedRules":"66"},{"filePath":"117","messages":"118","errorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":"119","usedDeprecatedRules":"66"},{"filePath":"120","messages":"121","errorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":"122","usedDeprecatedRules":"66"},{"filePath":"123","messages":"124","errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"125","usedDeprecatedRules":"66"},{"filePath":"126","messages":"127","errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"128","usedDeprecatedRules":"66"},{"filePath":"129","messages":"130","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"131","usedDeprecatedRules":"66"},{"filePath":"132","messages":"133","errorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":"134","usedDeprecatedRules":"66"},{"filePath":"135","messages":"136","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"137"},{"filePath":"138","messages":"139","errorCount":0,"warningCount":5,"fixableErrorCount":0,"fixableWarningCount":0,"source":"140","usedDeprecatedRules":"66"},{"filePath":"141","messages":"142","errorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":"143","usedDeprecatedRules":"66"},{"filePath":"144","messages":"145","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"66"},{"filePath":"146","messages":"147","errorCount":0,"warningCount":7,"fixableErrorCount":0,"fixableWarningCount":0,"source":"148","usedDeprecatedRules":"66"},{"filePath":"149","messages":"150","errorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":"151","usedDeprecatedRules":"66"},"C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\index.js",[],["152","153"],"C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\reportWebVitals.js",[],"C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\App.js",["154","155","156","157","158","159","160","161"],"import './App.css';\r\nimport React, { useState,Component, useEffect } from 'react';\r\nimport { Route, BrowserRouter, Switch , Redirect, useHistory} from \"react-router-dom\";\r\nimport 'jquery/dist/jquery.min.js';\r\nimport 'popper.js/dist/umd/popper.min.js';\r\nimport Login from './components/login';\r\nimport shopkeeper from \"./components/shopkeeper\";\r\nimport Admin from \"./components/admin\";\r\nimport register from \"./components/register\";\r\nimport home from \"./components/home\";\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\nimport About from './components/about';\r\nimport contact from './components/contact';\r\nimport White from './components/white-ration';\r\nimport Yellow from './components/yellow-ration';\r\nimport Saffron from './components/saffron-ration';\r\nimport Complaint from './components/complaint';\r\nimport Navbar from './components/navbar';\r\nimport AdminLogin from './components/admin-panel-login';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport 'react-toastify/dist/ReactToastify.css';\r\nimport ProtectedRoute from './components/ProtectedRoutes';\r\nimport Ssstockdetails from './components/shopkeeper/ss-stock-details';\r\nimport { Next } from 'react-bootstrap/esm/PageItem';\r\nimport ResetPassword from './components/resetPassword';\r\nfunction App () {\r\n const history=useHistory();\r\n return (\r\n <div className=\"App\">\r\n <BrowserRouter>\r\n \r\n <Switch>\r\n <Route exact path=\"/\"><Redirect to=\"/home\" /></Route>\r\n <Route exact path=\"/home\" component={home}></Route>\r\n <Route path=\"/about\" component={About}></Route>\r\n <Route path=\"/contact\" component={contact}></Route>\r\n <Route path=\"/login\" >\r\n <ProtectedRoute Cmp={Login}/>\r\n </Route>\r\n <Route path=\"/register\" component={register}></Route>\r\n <Route path=\"/shopkeeper\" component={shopkeeper}></Route>\r\n <Route path=\"/admin\" component={Admin}></Route>\r\n <Route path=\"/white\" component={White}></Route>\r\n <Route path=\"/yellow\" component={Yellow}></Route>\r\n <Route path=\"/saffron\" component={Saffron}></Route>\r\n <Route path=\"/complaint\" component={Complaint}></Route>\r\n <Route path=\"/admin-panel-login\" component={AdminLogin}></Route>\r\n <Route path=\"/reset-password/:id/:token\" component={ResetPassword}></Route>\r\n </Switch>\r\n {/* <Route path=\"/shopkeeper/ssstockdetails\" >\r\n <ProtectedRoute Cmp={Ssstockdetails}/>\r\n </Route> */}\r\n <ToastContainer /> \r\n </BrowserRouter>\r\n </div>\r\n );\r\n \r\n}\r\n\r\nexport default App;\r\n","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\login.js",["162","163","164"],"import React from 'react';\r\nimport { PureComponent } from 'react';\r\nimport { NavLink , Redirect, useHistory, withRouter} from 'react-router-dom';\r\nimport jwt_decode from \"jwt-decode\";\r\nimport { trackPromise } from 'react-promise-tracker';\r\nimport axios from 'axios';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport 'react-toastify/dist/ReactToastify.css';\r\nimport $ from 'jquery';\r\nimport 'jquery/dist/jquery.min.js';\r\nimport Navbar from '../components/navbar';\r\n\r\nclass Login extends PureComponent {\r\n \r\n constructor(props) {\r\n super(props);\r\n this.onChangeEmail = this.onChangeEmail.bind(this);\r\n this.onChangePassword = this.onChangePassword.bind(this);\r\n this.onEmailformail = this.onEmailformail.bind(this);\r\n this.onEmailSend = this.onEmailSend.bind(this);\r\n this.onSubmit= this.onSubmit.bind(this);\r\n\r\n\r\n this.state = {\r\n email: '',\r\n password : '',\r\n emailformail:'',\r\n errormessage:\"\",\r\n };\r\n }\r\n\r\n componentDidMount(){\r\n \r\n }\r\n \r\n onChangeEmail(e){\r\n this.setState({\r\n email : e.target.value\r\n });\r\n }\r\n \r\n onEmailformail(e){\r\n this.setState({\r\n emailformail : e.target.value\r\n });\r\n }\r\n onChangePassword(e){\r\n this.setState({\r\n password : e.target.value\r\n });\r\n }\r\n\r\n onEmailSend = async (e) => {\r\n e.preventDefault()\r\n const useremail = {\r\n emailformail : this.state.emailformail\r\n }\r\n \r\n \r\n await axios.post('https://rationapp-backend.herokuapp.com/forgot-password',useremail,{\r\n headers: {\r\n 'Content-Type': 'application/json'\r\n }\r\n })\r\n .then((response) => {\r\n console.log(response.data);\r\n }).catch( (error) => {\r\n console.log(error);\r\n toast.warn(\"user not found\",{\r\n position:\"top-center\"\r\n })\r\n })\r\n }\r\n \r\n \r\n onSubmit = async (e) =>{\r\n e.preventDefault()\r\n\r\n const user = {\r\n email : this.state.email,\r\n password : this.state.password\r\n }\r\n \r\n try{\r\n \r\n const res = await trackPromise( fetch('https://rationapp-backend.herokuapp.com/login',{\r\n method: 'POST',\r\n body : JSON.stringify(user),\r\n headers: { \"Content-Type\":\"application/json\" }\r\n }));\r\n const data = await res.json();\r\n console.log(data.token);\r\n \r\n if(data.errors){\r\n this.setState({errormessage:data.errors});\r\n console.log(data.errors);\r\n }\r\n localStorage.setItem('Token',data.token);\r\n try{\r\n const currentuser=jwt_decode(data.token);\r\n if(currentuser){\r\n console.log(JSON.stringify(currentuser));\r\n localStorage.setItem('CurrentUser',JSON.stringify(currentuser));\r\n this.props.history.push(\"/shopkeeper/ssprofile\");\r\n toast.success(\"Login Successfull !\",{\r\n position : \"top-center\",\r\n });\r\n }\r\n }\r\n catch(Error){\r\n \r\n toast.error(\"Login Failed, Try again!\",{\r\n position : \"top-center\",\r\n });\r\n \r\n }\r\n // console.log(loggedUser);\r\n \r\n \r\n \r\n }\r\n catch (err){\r\n console.log(err);\r\n }\r\n\r\n \r\n\r\n // axios.post('http://localhost:5000/login',user)\r\n // .then(res => \r\n // console.log(res.data)\r\n // );\r\n\r\n // window.location = '/shopkeeper';\r\n\r\n }\r\n\r\n\r\n\r\n render(){\r\n return ( \r\n <>\r\n <Navbar />\r\n <div class=\"modal fade\" id=\"exampleModal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"exampleModalLabel\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog modal-dialog-centered\" role=\"document\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title\" id=\"exampleModalLabel\">Password Reset</h5>\r\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\">\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <label htmlFor=\"email\">Enter your Email</label><br />\r\n <input type=\"email\" autoFocus required name=\"emailformail\" onChange={this.onEmailformail} id=\"email\" /><br />\r\n <small>Email should be available in our system</small>\r\n </div>\r\n <div class=\"modal-footer\">\r\n <button type=\"button\" class=\"btn btn-danger\" data-dismiss=\"modal\">Close</button>\r\n <button type=\"button\" class=\"btn btn-primary\"data-dismiss=\"modal\" onClick={this.onEmailSend}>Send</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div className=\"container\">\r\n <div className=\"login mt-3\">\r\n <h3><strong> Login</strong></h3>\r\n <p>( Shopkeeper login panel )</p>\r\n <div className=\"errorstitle\">{this.state.errormessage.message}</div>\r\n <form onSubmit={this.onSubmit} >\r\n <div className =\"form-group pob\" >\r\n <input type=\"text\" \r\n required\r\n autoFocus\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n autoComplete=\"off\"\r\n value = {this.state.email}\r\n onChange = {this.onChangeEmail}\r\n />\r\n <span>Username</span>\r\n <div className=\"emailError\">{this.state.errormessage.email}</div>\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"password\" \r\n required\r\n autoComplete=\"off\"\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n \r\n value = {this.state.password}\r\n onChange = {this.onChangePassword}\r\n />\r\n <span>Password</span>\r\n <div className=\"passwordError\">{this.state.errormessage.password}</div>\r\n </div>\r\n <div className=\"form-group\">\r\n <input type=\"submit\" value = \"Login\" className=\"btn btn-primary\"/>\r\n </div>\r\n \r\n\r\n \r\n <button type=\"button\" class=\"btn btn-link shadow-none\" data-toggle=\"modal\" data-target=\"#exampleModal\">\r\n Forgot password ?\r\n </button>\r\n <p>Don't have an account, <NavLink to=\"/register\"><button className=\"btn btn-outline-primary btn-sm\">Register here</button></NavLink></p>\r\n <p>You're an Admin, <NavLink to=\"/admin-panel-login\"><button className=\"btn btn-outline-primary btn-sm\">Click here</button></NavLink></p>\r\n </form>\r\n </div>\r\n \r\n <ToastContainer />\r\n </div>\r\n </>\r\n );\r\n \r\n } \r\n}\r\n \r\nexport default withRouter(Login);\r\n\r\n\r\n","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper.js",["165","166"],"import React from 'react';\r\n\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\n\r\nimport $ from 'jquery';\r\nimport 'jquery/dist/jquery.min.js';\r\nimport 'popper.js/dist/umd/popper.min.js';\r\nimport { PureComponent } from 'react';\r\nimport { NavLink, Switch, Route, Redirect, withRouter } from 'react-router-dom';\r\n\r\nimport Ssprofile from './shopkeeper/ssprofile';\r\nimport Ssstockdetails from './shopkeeper/ss-stock-details';\r\nimport Ssuserdetails from './shopkeeper/ss-user-details';\r\nimport Ssdashboard from './shopkeeper/ss-dashboard';\r\nimport {useHistory} from \"react-router-dom\";\r\nimport EditUser from './shopkeeper/editUser';\r\nimport Navbar2 from './navbar2';\r\n\r\nclass shopkeeper extends PureComponent {\r\n\r\n componentDidMount(){\r\n\r\n $(\"#menu-toggle\").click(function(e) {\r\n e.preventDefault();\r\n $(\"#wrapper\").toggleClass(\"toggled\");\r\n });\r\n \r\n }\r\n logoutSession(){\r\n localStorage.removeItem(\"Token\");\r\n localStorage.removeItem(\"CurrentUser\");\r\n \r\n }\r\n \r\n render(){\r\n return ( \r\n <>\r\n \r\n <Navbar2 />\r\n <div className=\"shopkeeper d-flex\" id=\"wrapper\">\r\n\r\n <div class=\"bg-light border-right\" id=\"sidebar-wrapper\">\r\n <div class=\"sidebar-heading\"><h3><strong>SHOPKEEPER</strong></h3> </div>\r\n <div class=\"list-group list-group-flush\" id=\"sb\">\r\n <NavLink to=\"/shopkeeper/ssprofile\" id=\"sb1\" className=\"list-group-item list-group-item-action bg-light\">Profile</NavLink>\r\n {/* <NavLink to=\"/shopkeeper/ssdashboard\" className=\"list-group-item list-group-item-action bg-light\">Dashboard</NavLink> */}\r\n <NavLink to=\"/shopkeeper/ssstockdetails\" id=\"sb2\" className=\"list-group-item list-group-item-action bg-light\">Stock Details</NavLink>\r\n <NavLink to=\"/shopkeeper/ssuserdetails\" id=\"sb3\" className=\"list-group-item list-group-item-action bg-light\">User Details</NavLink>\r\n <NavLink to=\"/login\" onClick={this.logoutSession} className=\"list-group-item list-group-item-action bg-light\">Sign Out</NavLink>\r\n </div>\r\n </div>\r\n\r\n <div id=\"page-content-wrapper\">\r\n\r\n <nav class=\"navbar navbar-expand-lg navbar-light bg-light border-bottom\">\r\n <button class=\"btn btn-primary\" id=\"menu-toggle\">Toggle Menu</button>\r\n \r\n </nav>\r\n\r\n <div class=\"container-fluid\">\r\n <Switch>\r\n <Route exact path=\"/shopkeeper\"><Redirect to=\"/shopkeeper/ssprofile\" /></Route>\r\n <Route path=\"/shopkeeper/ssprofile\" component={EditUser}></Route>\r\n <Route path=\"/shopkeeper/ssstockdetails\" component={Ssstockdetails}></Route>\r\n <Route path=\"/shopkeeper/ssuserdetails\" component={Ssuserdetails}></Route>\r\n <Route exact path=\"/shopkeeper/ssdashboard\" component={Ssdashboard}></Route>\r\n \r\n </Switch>\r\n \r\n \r\n </div>\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n \r\n \r\n </>\r\n );\r\n }\r\n}\r\n \r\nexport default withRouter(shopkeeper);","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\about.js",["167","168","169","170","171"],"import React from 'react';\r\nimport { PureComponent } from 'react';\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\nimport { Card } from \"react-bootstrap\";\r\nimport {Link} from \"react-router-dom\";\r\nimport { FaInstagram, FaLinkedin , FaGithub, FaGlobe, FaGoMail, FaEnvelope} from 'react-icons/fa';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport Navbar from '../components/navbar';\r\nclass About extends PureComponent {\r\n render(){\r\n \r\n return ( \r\n <>\r\n <Navbar />\r\n <div className=\"about m-3 text-center\">\r\n <h2><strong>About Us</strong></h2>\r\n <div className=\"hr\" />\r\n <p className=\"vertical-center\">\r\n In April, 1966 Statutory Rationing was introduced in Greater Mumbai and the Industrial complex of Thana which included the Thana Town, Kalyan, Belapur, Ulhasnagar and Ambernath. All these areas are operating the Rationing Scheme under provisions of the Maharashtra food grain (second) Ration Order of 1966.\r\n <br/> <br />The Rationing Organization is headed by the Controller of Rationing.The team comprises of 2 Deputy Controllers who assist The Controller in supervising Indent, Shops, Establishments, Administration, Accounts, General, Enforcement, Kerosene etc. There are other five Deputy Controller of Rationing that are incharge of each region, 04 in Mumbai and 01 in Thane.\r\n Genral control is managed by Food and Civil Supplies department & they also issue directives in policy & other realted matters. Mumbai & Thane area is serviced by 46 Rationing offices. In each Rationing office the day to day functioning is supervised by 1 to 2 Assistant Rationing Officers & is supervised by a Rationing. Each Rationing Office works as Nodal Agency for issue / cancellation /changes in Ration Cards.</p>\r\n <h2><strong>Aim of the system</strong></h2>\r\n <div className=\"hr\" />\r\n <p>Our focus is to reduce the corruption in the ration distribution system. we all want a trasparent system so no one can cheat with ration system</p>\r\n </div>\r\n <h3><strong>Developers</strong></h3>\r\n <div className=\"hr\" />\r\n <div className=\"card-container\">\r\n <Card border=\"dark\" style={{ width: '18rem', height:\"18rem\" ,borderRadius:\"50%\"}} className=\"m-2 overflow-hidden\">\r\n <Card.Header className=\"bg-dark text-white\"><b>Developer #1</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title> <b>Dnyaneshwar Sakhare</b> </Card.Title>\r\n <Card.Text className=\"about-icons\">\r\n B. Tech CSE 2021, <br />\r\n Rit Islampur, Sangli.\r\n <div className=\"icons\">\r\n <a data-tip=\"[email protected]\" style={{color: \"black\"}} target=\"blank\" href=\"mailto:[email protected]\"><FaEnvelope /></a>\r\n <a data-tip=\"/Dnyaneshwarsakhare\" style={{color: \"black\"}} target=\"blank\" href=\"https://github.com/Dnyaneshwarsakhare/\"><FaGithub /></a>\r\n <a data-tip=\"/dnyaneshwar_s22\" style={{color: \"black\"}} target=\"blank\" href=\"https://www.instagram.com/dnyaneshwar_s22/\"><FaInstagram /></a>\r\n <a data-tip=\"/dnyaneshwar-sakhare\" style={{color: \"black\"}} target=\"blank\" href=\"https://linkedin.com/dnyaneshwar-sakhare\"><FaLinkedin /></a>\r\n <a data-tip=\"Personal website\" style={{color: \"black\"}} target=\"blank\" href=\"http://dnyaneshwarsakhare.github.io/Portfolio\"><FaGlobe /></a>\r\n </div>\r\n </Card.Text>\r\n \r\n </Card.Body>\r\n <Card.Footer className=\"bg-dark text-white\"><b>Github Linkedin</b></Card.Footer>\r\n </Card>\r\n <Card border=\"dark\" style={{width:\"18rem\", height:\"18rem\",borderRadius:\"50%\" }} className=\"m-2 overflow-hidden\">\r\n <Card.Header className=\"bg-dark text-white\"><b>Developer #2</b></Card.Header>\r\n {/* <Card.Img style={{height:'10rem'}} src=\"saffron-photo.jpg\" /> */}\r\n <Card.Body>\r\n <Card.Title><b>Ram Waghmode</b> </Card.Title>\r\n <Card.Text className=\"about-icons\">\r\n B. Tech CSE 2021, <br />\r\n Rit Islampur, Sangli.\r\n <div className=\"icons\">\r\n <a data-tip=\"[email protected]\" style={{color: \"black\"}} target=\"blank\" href=\"mailto:[email protected]\"><FaEnvelope /></a>\r\n <a data-tip=\"/ramraj145\" style={{color: \"black\"}} target=\"blank\" href=\"https://github.com/ramraj145\"><FaGithub /></a>\r\n <a data-tip=\"/r_a_m_145\" style={{color: \"black\"}} target=\"blank\" href=\"https://www.instagram.com/r_a_m_145/\"><FaInstagram /></a>\r\n <a data-tip=\"/ram-waghmode-687aa8185\" style={{color: \"black\"}} target=\"blank\" href=\"https://www.linkedin.com/in/ram-waghmode-687aa8185/\"><FaLinkedin /></a>\r\n <a data-tip=\"Personal website\" style={{color: \"black\"}} target=\"blank\" href=\"#\"><FaGlobe /></a>\r\n </div>\r\n </Card.Text>\r\n </Card.Body>\r\n <Card.Footer className=\"bg-dark text-white\"><b>Github Linkedin</b></Card.Footer>\r\n </Card>\r\n <Card border=\"dark\" style={{ width: '18rem', height:\"18rem\" ,borderRadius:\"50%\"}} className=\"m-2 overflow-hidden\" >\r\n <Card.Header className=\"bg-dark text-white\"><b>Developer #3</b></Card.Header>\r\n {/* <Card.Img style={{height:'10rem'}} src=\"yellow-photo.jpg\" /> */}\r\n <Card.Body>\r\n <Card.Title> <b>Sanket Gavali</b> </Card.Title>\r\n <Card.Text className=\"about-icons\">\r\n B. Tech CSE 2021, <br />\r\n Rit Islampur, Sangli.\r\n <div className=\"icons\">\r\n <a data-tip=\"[email protected]\" style={{color: \"black\"}} target=\"blank\" href=\"mailto:[email protected]\"><FaEnvelope /></a>\r\n <a data-tip=\"/Sanketgavali\" style={{color: \"black\"}} target=\"blank\" href=\"https://github.com/\"><FaGithub /></a>\r\n <a data-tip=\"/gavali_sanket\" style={{color: \"black\"}} target=\"blank\" href=\"https://www.instagram.com/gavali_sanket/\"><FaInstagram /></a>\r\n <a data-tip=\"/sanket-gavali\" style={{color: \"black\"}} target=\"blank\" href=\"https://linkedin.com/\"><FaLinkedin /></a>\r\n <a data-tip=\"Personal website\" style={{color: \"black\"}} target=\"blank\" href=\"#\"><FaGlobe /></a>\r\n </div>\r\n </Card.Text>\r\n </Card.Body>\r\n <Card.Footer className=\"bg-dark text-white\"><b>Github Linkedin</b></Card.Footer>\r\n </Card>\r\n <Card border=\"dark\" style={{ width: '18rem', height:\"18rem\",borderRadius:\"50%\" }} className=\"m-2 overflow-hidden\" >\r\n <Card.Header className=\"bg-dark text-white\"><b>Developer #4</b></Card.Header>\r\n {/* <Card.Img style={{height:'10rem'}} src=\"yellow-photo.jpg\" /> */}\r\n <Card.Body>\r\n <Card.Title> <b>Nikhil Mane</b> </Card.Title>\r\n <Card.Text className=\"about-icons\">\r\n B. Tech CSE 2021, <br />\r\n Rit Islampur, Sangli.\r\n <div className=\"icons\">\r\n <a data-tip=\"[email protected]\" style={{color: \"black\"}} target=\"blank\" href=\"mailto:[email protected]\"><FaEnvelope /></a>\r\n <a data-tip=\"/Nikhilmane\" style={{color: \"black\"}} target=\"blank\" href=\"https://github.com/\"><FaGithub /></a>\r\n <a data-tip=\"/mr_nick__11\" style={{color: \"black\"}} target=\"blank\" href=\"https://www.instagram.com/mr_nick__11/\"><FaInstagram /></a>\r\n <a data-tip=\"/nikhil-mane\" style={{color: \"black\"}} target=\"blank\" href=\"https://linkedin.com/\"><FaLinkedin /></a>\r\n <a data-tip=\"Personal website\" style={{color: \"black\"}} target=\"blank\" href=\"#\"><FaGlobe /></a>\r\n </div>\r\n </Card.Text>\r\n </Card.Body>\r\n <Card.Footer className=\"bg-dark text-white\"><b>Github Linkedin</b></Card.Footer>\r\n </Card>\r\n <ReactTooltip />\r\n </div>\r\n \r\n </>\r\n );\r\n }\r\n}\r\n \r\nexport default About;","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\contact.js",[],"C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\white-ration.js",["172","173"],"import React from 'react';\r\n\r\nimport { Badge, Card } from \"react-bootstrap\";\r\nimport { NavLink } from 'react-router-dom';\r\nimport { Dropdown } from 'react-bootstrap';\r\nimport { PureComponent } from 'react';\r\nimport Navbar from '../components/navbar';\r\nclass White extends PureComponent {\r\n render(){\r\n return ( \r\n <>\r\n <Navbar />\r\n <div className=\"white-ration ml-3 mr-3\" style={{textAlign:'left'}}>\r\n <div className=\"titleandcomplaint d-flex flex-row m-3\" style={{justifyContent:\"space-between\"}}>\r\n <h2>White Ration Card</h2>\r\n <div className=\"\">\r\n \r\n <NavLink to=\"/complaint\" className=\"btn bg-danger\" style={{color:'white'}}><b>Complaint</b></NavLink>\r\n </div>\r\n </div>\r\n <div className=\"card-container\">\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"white\">\r\n <Card.Header><b>RICE / तांदूळ</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.20 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"white\">\r\n <Card.Header><b>SUGAR / साखर</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.20 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"white\">\r\n <Card.Header><b>WHEAT / गहू</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.20 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"white\">\r\n <Card.Header><b>OIL / तेल</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.20 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"white\">\r\n <Card.Header><b>COARSE GRAINS / डाळ</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.20 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n </div>\r\n <h4>Requirements :</h4>\r\n <ul>\r\n <li>The Families having annual income of Rs.1 Lakh or above, any member of the family possessing a four-wheeler or the family aggregately holding more than 4 hectare irrigated land isssued white ration cards.</li> \r\n </ul>\r\n </div>\r\n </>\r\n );\r\n }\r\n}\r\n \r\nexport default White;","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\register.js",["174","175","176","177","178","179","180","181","182","183","184","185","186","187","188","189"],"import React from 'react';\r\nimport { PureComponent } from 'react';\r\nimport axios from 'axios';\r\nimport { withRouter} from 'react-router-dom';\r\nimport DatePicker from \"react-datepicker\";\r\nimport Navbar from '../components/navbar';\r\nimport \"react-datepicker/dist/react-datepicker.css\";\r\nimport 'jquery/dist/jquery.min.js';\r\nimport { trackPromise } from 'react-promise-tracker';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport 'react-toastify/dist/ReactToastify.css';\r\n\r\n// const emailError = document.querySelector('.emailError');\r\n// const passwordError = document.querySelector('.passwordError');\r\n\r\nconst validEmailRegex =\r\n /^(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\r\n const validateForm = errors => {\r\n let valid = true;\r\n Object.values(errors).forEach(val => val.length > 0 && (valid = false));\r\n return valid;\r\n };\r\nvar pattern = /^\\d{10}$/;\r\n\r\nclass Register extends PureComponent {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.onChangeFirstname = this.onChangeFirstname.bind(this);\r\n this.onChangeLastname = this.onChangeLastname.bind(this);\r\n this.onChangeMobileno = this.onChangeMobileno.bind(this);\r\n this.onChangeEmail = this.onChangeEmail.bind(this);\r\n this.onChangeUsername = this.onChangeUsername.bind(this);\r\n this.onChangeDob = this.onChangeDob.bind(this);\r\n this.onChangeGender = this.onChangeGender.bind(this);\r\n this.onChangePassword = this.onChangePassword.bind(this);\r\n this.onSubmit= this.onSubmit.bind(this);\r\n\r\n \r\n\r\n this.state = {\r\n firstname: '',\r\n lastname: '',\r\n mobileno: '',\r\n email : '',\r\n username: '',\r\n dob: \"\",\r\n gender: 'Male',\r\n password: '',\r\n errormessage:'',\r\n errors : {\r\n username: '',\r\n email: '',\r\n password: '',\r\n mobileno:'',\r\n }\r\n \r\n };\r\n \r\n }\r\n\r\n handleChange = (event) => {\r\n event.preventDefault();\r\n\r\n\r\n const { name, value } = event.target;\r\n let errors = this.state.errors;\r\n \r\n switch (name) {\r\n case 'username': \r\n errors.username = \r\n value.length < 5\r\n ? 'Username must be at least 5 characters long!'\r\n : '';\r\n break;\r\n case 'mobileno': \r\n errors.mobileno = \r\n pattern.test(value)\r\n ? ''\r\n : 'Mobile no is not valid!';\r\n break; \r\n \r\n case 'email': \r\n errors.email = \r\n validEmailRegex.test(value)\r\n ? ''\r\n : 'Email is not valid!';\r\n break;\r\n case 'password': \r\n errors.password = \r\n value.length < 6\r\n ? 'Password must be at least 6 characters long!'\r\n : '';\r\n break;\r\n default:\r\n break;\r\n }\r\n \r\n this.setState({errors, [name]: value});\r\n }\r\n \r\n \r\n \r\n onChangeFirstname(e){\r\n this.setState({\r\n firstname : e.target.value\r\n });\r\n }\r\n onChangeLastname(e){\r\n this.setState({\r\n lastname : e.target.value\r\n });\r\n }\r\n onChangeMobileno(e){\r\n this.setState({\r\n mobileno : e.target.value\r\n });\r\n }\r\n onChangeEmail(e){\r\n this.setState({\r\n email : e.target.value\r\n });\r\n }\r\n onChangeUsername(e){\r\n this.setState({\r\n username : e.target.value\r\n });\r\n }\r\n onChangeDob(date){\r\n this.setState({\r\n dob : date\r\n });\r\n }\r\n onChangeGender(e){\r\n this.setState({\r\n gender : e.target.value\r\n });\r\n console.log(this.state.gender);\r\n }\r\n onChangePassword(e){\r\n this.setState({\r\n password : e.target.value\r\n });\r\n }\r\n \r\n \r\n \r\n\r\n onSubmit = async (e) =>{\r\n \r\n e.preventDefault()\r\n const user = {\r\n firstname : this.state.firstname,\r\n lastname : this.state.lastname,\r\n mobileno : this.state.mobileno,\r\n email : this.state.email,\r\n username : this.state.username,\r\n dob : Date.parse(this.state.dob),\r\n gender : this.state.gender,\r\n password : this.state.password,\r\n }\r\n\r\n try{\r\n const res = await fetch('https://rationapp-backend.herokuapp.com/register',{\r\n method: 'POST',\r\n body : JSON.stringify(user),\r\n headers: { \"Content-Type\":\"application/json\" }\r\n });\r\n const data = await res.json();\r\n console.log(data);\r\n if(data.user){\r\n // window.location.assign('/shopkeeper');\r\n this.props.history.push(\"/login\");\r\n toast.success(\"Registered successfully\");\r\n } \r\n if(data.err){\r\n this.setState({errormessage:data.err});\r\n console.log(this.state.errormessage);\r\n toast.error(\"Registration failed: \"+this.state.errormessage+\"!\",{\r\n position:\"top-center\"\r\n });\r\n }\r\n \r\n // const res = axios.post('http://localhost:5000/register',user)\r\n // const data = res.json()\r\n // console.log(data);\r\n // if(data.err){\r\n // this.setState({errormessage:data.err});\r\n // }\r\n // console.log(this.state.errormessage);\r\n //.then(res => \r\n //console.log(res.data),\r\n //toast.success(\"Registered Successfull!\",{\r\n // position : \"top-center\",\r\n //}))\r\n //.catch(err => toast.error(\"Problem Occured while registering \"+err,{position : \"top-center\"}))\r\n \r\n }\r\n catch (err){\r\n console.log(err);\r\n }\r\n\r\n console.log(user);\r\n\r\n // this.setState({\r\n // firstname: '',\r\n // lastname: '',\r\n // mobileno: '',\r\n // email : '',\r\n // username: '',\r\n // dob: \"\",\r\n // gender: 'Male',\r\n // password: '',\r\n // errormessage:\"\",\r\n // errors : {\r\n // username: '',\r\n // email: '',\r\n // password: '',\r\n // mobileno:'',\r\n // }\r\n \r\n // });\r\n \r\n }\r\n\r\n\r\n\r\n\r\n\r\n render(){\r\n return ( \r\n <>\r\n <Navbar />\r\n <div className=\"container\">\r\n <div className=\"login mt-3\">\r\n <h4><strong> Register</strong></h4>\r\n <p>( Only shopkeeper & admin can register )</p>\r\n \r\n <form onSubmit={this.onSubmit} >\r\n <div className =\"form-group pob\" style={{justifyItems:\"end\"}} >\r\n \r\n <input type=\"text\" \r\n required\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n autoFocus\r\n name=\"firstname\"\r\n value = {this.state.firstname}\r\n onChange = {this.onChangeFirstname}\r\n \r\n />\r\n <span>Firstname</span>\r\n \r\n {/* <div className=\"firstname-error\">{this.state.errormessage.firstname}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"text\" \r\n required\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n value = {this.state.lastname}\r\n onChange = {this.onChangeLastname}\r\n />\r\n <span>Lastname</span>\r\n {/* <div className=\"lastname-error\">{this.state.errormessage.lastname}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"mobileno\" \r\n required\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n inputMode=\"tel\"\r\n autoComplete=\"off\"\r\n maxLength=\"10\"\r\n name=\"mobileno\"\r\n \r\n value = {this.state.mobileno}\r\n onChange = {this.onChangeMobileno}\r\n onInput={this.handleChange} noValidate\r\n />\r\n <span>Mobile No</span>\r\n {this.state.errors.mobileno.length > 0 && \r\n <div className='mobileno-error'>{this.state.errors.mobileno}</div>}\r\n {/* <div className=\"mobileno-error\">{this.state.errormessage.mobileno}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"text\" \r\n required\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n name=\"email\"\r\n value = {this.state.email}\r\n // onChange = {this.onChangeEmail}\r\n onChange={ this.onChangeEmail} noValidate\r\n onInput={this.handleChange}\r\n />\r\n <span>Email</span>\r\n {this.state.errors.email.length > 0 && \r\n <div className='emailError'>{this.state.errors.email}</div>}\r\n <div className=\"emailError\">{this.state.errormessage}</div>\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"text\" \r\n required\r\n name=\"username\"\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n value = {this.state.username}\r\n onInput={this.handleChange} noValidate\r\n onChange = {this.onChangeUsername}\r\n />\r\n <span>Username</span>\r\n {this.state.errors.username.length > 0 && \r\n <div className='username-error'>{this.state.errors.username}</div>}\r\n {/* <div className=\"username-error\">{this.state.errormessage.username}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <DatePicker\r\n id=\"inputbox\"\r\n placeholderText=\"Date of birth\"\r\n dateFormat=\"dd/MM/yyyy\"\r\n autoComplete=\"off\"\r\n selected ={this.state.dob}\r\n onChange ={ this.onChangeDob}\r\n />\r\n \r\n \r\n </div>\r\n <div className =\"form-group pob mt-4\" >\r\n \r\n <select ref=\"UserInput\" onChange={this.callThis} className=\"form-control form-select form-select-sm\" \r\n required \r\n aria-label=\".form-select-sm example\"\r\n value = {this.state.gender}\r\n id=\"gender\"\r\n onChange = {this.onChangeGender}>\r\n <option selected value = \"Male\">Male</option>\r\n <option value = \"Female\">Female</option>\r\n <option value = \"Other\">Other</option>\r\n </select>\r\n \r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"password\" \r\n required\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n value = {this.state.password}\r\n onChange = {this.onChangePassword}\r\n onInput={this.handleChange} noValidate\r\n name=\"password\"\r\n />\r\n <span>Password</span>\r\n {this.state.errors.password.length > 0 && \r\n <div className='passwordError'>{this.state.errors.password}</div>}\r\n {/* <div className=\"passwordError\">{this.state.errormessage.password}</div> */}\r\n </div>\r\n <div className=\"form-group\">\r\n <input type=\"submit\" value = \"Sign up\" className=\"btn btn-primary\"/>\r\n </div>\r\n \r\n \r\n </form>\r\n </div>\r\n <ToastContainer />\r\n </div>\r\n </>\r\n );\r\n } \r\n}\r\n \r\nexport default withRouter(Register);\r\n\r\n\r\n","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin.js",["190"],"import React from 'react';\r\n\r\n\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\n\r\nimport $ from 'jquery';\r\nimport 'jquery/dist/jquery.min.js';\r\nimport 'popper.js/dist/umd/popper.min.js';\r\nimport { PureComponent } from 'react';\r\nimport { NavLink, Switch, Route, Redirect } from 'react-router-dom';\r\nimport AdminProfile from './admin/adminProfile';\r\nimport AdminDashboard from './admin/adminDashboard';\r\nimport AdminComplaint from './admin/adminComplaint';\r\nimport AdminShopkeeperDetails from './admin/adminShopkeeperDetails';\r\nimport EditAdmin from './admin/editAdmin';\r\nimport SupplyStock from './admin/supplyStock';\r\nimport Navbar2 from './navbar2';\r\n\r\n\r\n\r\nclass admin extends PureComponent {\r\n\r\n componentDidMount(){\r\n\r\n $(\"#menu-toggle\").click(function(e) {\r\n e.preventDefault();\r\n $(\"#wrapper\").toggleClass(\"toggled\");\r\n });\r\n\r\n }\r\n\r\n logoutSession(){\r\n localStorage.removeItem(\"Token\");\r\n localStorage.removeItem(\"CurrentUser\");\r\n }\r\n\r\n render(){\r\n return ( \r\n <>\r\n \r\n <Navbar2 />\r\n <div className=\"shopkeeper d-flex\" id=\"wrapper\">\r\n\r\n <div class=\"bg-light border-right\" id=\"sidebar-wrapper\">\r\n <div class=\"sidebar-heading\"><h3><strong>ADMIN</strong></h3> </div>\r\n <div class=\"list-group list-group-flush\" id=\"sb\">\r\n <NavLink to=\"/admin/admin-profile\" className=\"list-group-item list-group-item-action bg-light\">Profile</NavLink>\r\n <NavLink to=\"/admin/admin-dashboard\" className=\"list-group-item list-group-item-action bg-light\">Dashboard</NavLink>\r\n <NavLink to=\"/admin/admin-shopkeeper-details\" className=\"list-group-item list-group-item-action bg-light\">Shopkeeper Data</NavLink>\r\n <NavLink to=\"/admin/supply-stock\" className=\"list-group-item list-group-item-action bg-light\">Supply Stock</NavLink>\r\n <NavLink to=\"/admin/admin-complaint\" className=\"list-group-item list-group-item-action bg-light\">Complaint</NavLink>\r\n <NavLink to=\"/admin-panel-login\" onClick={this.logoutSession} className=\"list-group-item list-group-item-action bg-light\">Sign Out</NavLink>\r\n </div>\r\n </div>\r\n\r\n <div id=\"page-content-wrapper\">\r\n\r\n <nav class=\"navbar navbar-expand-lg navbar-light bg-light border-bottom\">\r\n <button class=\"btn btn-primary\" id=\"menu-toggle\">Toggle Menu</button>\r\n \r\n </nav>\r\n\r\n <div class=\"container-fluid\">\r\n <Switch>\r\n <Route exact path=\"/admin/\"><Redirect to=\"/admin/admin-profile\" /></Route>\r\n <Route path=\"/admin/admin-profile\" component={EditAdmin}></Route>\r\n <Route path=\"/admin/admin-dashboard\" component={AdminDashboard}></Route>\r\n <Route path=\"/admin/admin-shopkeeper-details\" component={AdminShopkeeperDetails}></Route>\r\n <Route path=\"/admin/admin-complaint\" component={AdminComplaint}></Route>\r\n <Route path=\"/admin/supply-stock\" component={SupplyStock}></Route>\r\n </Switch>\r\n \r\n \r\n </div>\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n \r\n \r\n </>\r\n );\r\n }\r\n}\r\n \r\nexport default admin;","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\navbar.js",["191"],"import React, { useState } from 'react';\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\nimport { NavLink } from 'react-router-dom';\r\n\r\nimport logo from \"../../src/lo1.gif\";\r\n\r\n\r\n\r\n\r\nconst Navbar = () => {\r\n return ( \r\n <>\r\n <div className=\"navbar navbar-expand-lg navbar-light bg-dark\">\r\n <NavLink to=\"/home\" className=\"brand-logo\"><img alt=\"Ration System Logo\" className=\"logo\" src={logo}></img><b> RATION CONTROL</b></NavLink>\r\n <ul class=\"nav nav-pills mb-3 ml-auto\" id=\"pills-tab\" role=\"tablist\">\r\n <li class=\"nav-item\" role=\"presentation\">\r\n <NavLink to=\"/home\" className=\"nav-link\" id=\"\" data-bs-toggle=\"pill\" role=\"tab\" aria-controls=\"pills-home\" aria-selected=\"true\">Home</NavLink>\r\n </li>\r\n <li class=\"nav-item\" role=\"presentation\">\r\n <NavLink to=\"/about\" className=\"nav-link\" id=\"\" data-bs-toggle=\"pill\" href=\"about\" role=\"tab\" aria-controls=\"pills-profile\" aria-selected=\"false\">About</NavLink>\r\n </li>\r\n <li class=\"nav-item\" role=\"presentation\">\r\n <NavLink to=\"/contact\" className=\"nav-link\" id=\"\" href=\"contact\" role=\"tab\" aria-controls=\"pills-contact\" aria-selected=\"false\">Contact</NavLink>\r\n </li>\r\n <li class=\"nav-item\" role=\"presentation\">\r\n <NavLink to=\"/login\" className=\"nav-link\" id=\"\" href=\"login\" role=\"tab\" aria-controls=\"pills-contact\" aria-selected=\"false\">Login</NavLink>\r\n </li>\r\n </ul>\r\n </div>\r\n </>\r\n );\r\n \r\n}\r\n \r\nexport default Navbar;","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\saffron-ration.js",["192","193"],"import React from 'react';\r\nimport Navbar from '../components/navbar';\r\nimport { Card ,Badge} from \"react-bootstrap\";\r\nimport { NavLink } from 'react-router-dom';\r\nimport { Dropdown } from 'react-bootstrap';\r\nimport { PureComponent } from 'react';\r\n\r\nclass Saffron extends PureComponent {\r\n render(){\r\n return ( \r\n <>\r\n <Navbar />\r\n <div className=\"white-ration ml-3 mr-3\" style={{textAlign:'left'}}>\r\n <div className=\"titleandcomplaint d-flex flex-row m-3\" style={{justifyContent:\"space-between\"}}>\r\n <h2>Saffron Ration Card</h2>\r\n <div>\r\n\r\n\r\n <NavLink to=\"/complaint\" className=\"btn bg-danger\" style={{color:'white'}}><b>Complaint</b></NavLink>\r\n </div>\r\n </div>\r\n <div className=\"card-container\">\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"saffron\">\r\n <Card.Header><b>RICE / तांदूळ</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.20 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"saffron\">\r\n <Card.Header><b>SUGAR / साखर</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.20 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"saffron\">\r\n <Card.Header><b>WHEAT / गहू</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.20 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"saffron\">\r\n <Card.Header><b>OIL / तेल</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.20 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"saffron\">\r\n <Card.Header><b>COARSE GRAINS / डाळ</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.20 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n </div>\r\n \r\n\r\n <h4>Requirements :</h4>\r\n <ul>\r\n <li>Families having annual income of Rs.15,001 to 1 lakh.</li>\r\n <li>None of the members in the family should have four wheeler mechanical vehicles(excluding taxi).</li>\r\n <li>The family in all should posses four hectare or more irrigated land.</li>\r\n </ul>\r\n </div>\r\n </>\r\n );\r\n }\r\n}\r\n \r\nexport default Saffron;","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\yellow-ration.js",["194","195"],"import React from 'react';\r\nimport Navbar from '../components/navbar';\r\nimport { Card, Badge } from \"react-bootstrap\";\r\nimport { NavLink } from 'react-router-dom';\r\nimport { Dropdown } from 'react-bootstrap';\r\nimport { PureComponent } from 'react';\r\n\r\nclass Yellow extends PureComponent {\r\n render(){\r\n return ( \r\n <>\r\n <Navbar />\r\n <div className=\"yellow-ration ml-3 mr-3\" style={{textAlign:'left'}}>\r\n <div className=\"titleandcomplaint d-flex flex-row m-3\" style={{justifyContent:\"space-between\"}}>\r\n <h2>Yellow Ration Card</h2>\r\n <div>\r\n\r\n\r\n <NavLink to=\"/complaint\" className=\"btn bg-danger\" style={{color:'white'}}><b>Complaint</b></NavLink>\r\n </div>\r\n </div>\r\n <div className=\"card-container\">\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"yellow\">\r\n <Card.Header><b>RICE / तांदूळ</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.3 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"yellow\">\r\n <Card.Header><b>SUGAR / साखर</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.20 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"yellow\">\r\n <Card.Header><b>WHEAT / गहू</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.2 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"yellow\">\r\n <Card.Header><b>OIL / तेल</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.15 per litre <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"yellow\">\r\n <Card.Header><b>COARSE GRAINS / डाळ</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title>Rate = Rs.30 per kg <br/>Qty = 5kg</Card.Title>\r\n </Card.Body>\r\n </Card>\r\n </div>\r\n\r\n <h4>Requirements :</h4>\r\n <ul>\r\n <li>Families having annual income up to Rs.15,000/-(Urban Area)</li>\r\n <li>None of the members in the family should be a doctor, lawyer, architect or chartered accountant.</li>\r\n <li>None of the members in the family should be professional tax payer,sales tax payer or income tax payer or eligible to pay such tax.</li>\r\n <li>The family should not posses residential telephone.</li>\r\n <li>The family should not posses four wheeler vehicle.</li>\r\n <li>All the persons in the family should not hold totl two hectare rain fed or one hectare semi-irrigated or 1/2 hectare irrigated(double in drought affected talukas) land.</li>\r\n <li>The Govt has taken decision to issue a BPL Ration Card on temporary Basis to the all Bidi workers, all Pardhi & Kolhati community vide GR dated 9/92008.</li>\r\n <li>The Govt has taken decision to issue a BPL Ration Card on temporary Basis to the Abandoned women vide GR dated 29/9/2008 & 21/2/2009.</li>\r\n <li>The Govt has also taken decision to issue BPL Cards to ex-mill workers with provision that they will get benefit of food grains of after distribution to regular BPL families and food grain available with shopkeeper.</li>\r\n </ul>\r\n </div>\r\n </>\r\n );\r\n }\r\n}\r\n \r\nexport default Yellow;","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\home.js",["196"],"import React from 'react';\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\nimport { Card } from \"react-bootstrap\";\r\nimport { NavLink } from 'react-router-dom';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport Navbar from '../components/navbar';\r\n\r\nconst home = () => {\r\n return ( \r\n <>\r\n <Navbar />\r\n <div className=\"home m-3\">\r\n <div className=\"page-title\"><h2><strong>Tricolour Ration Cards</strong></h2></div>\r\n <div className=\"hr mt-6\" />\r\n <div className=\"card-container\">\r\n <Card border=\"dark\" style={{ width: '18rem' }} className=\"m-2\" id=\"white\">\r\n <Card.Header><b>WHITE</b></Card.Header>\r\n <Card.Img style={{height:'10rem'}} src=\"white-photo.jpg\" />\r\n <Card.Body>\r\n <Card.Title> शिधापत्रिका </Card.Title>\r\n <Card.Text>\r\n White Ration card Benefits, Allocation details, Ration details, Detailed analysis etc.\r\n </Card.Text>\r\n <NavLink to=\"/white\" style={{color:'white'}} className=\"btn bg-dark\">View</NavLink>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{width:\"18rem\"}} className=\"m-2\" id=\"saffron\">\r\n <Card.Header><b>SAFFRON</b></Card.Header>\r\n <Card.Img style={{height:'10rem'}} src=\"saffron-photo.jpg\" />\r\n <Card.Body>\r\n <Card.Title> शिधापत्रिका </Card.Title>\r\n <Card.Text>\r\n Saffron Ration card Benefits, Allocation details, Ration details, Detailed analysis etc.\r\n </Card.Text>\r\n <NavLink to=\"/saffron\" style={{color:'white'}} className=\"btn bg-dark\">View</NavLink>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '18rem' }} className=\"m-2\" id=\"yellow\">\r\n <Card.Header><b>YELLOW</b></Card.Header>\r\n <Card.Img style={{height:'10rem'}} src=\"yellow-photo.jpg\" />\r\n <Card.Body>\r\n <Card.Title> शिधापत्रिका </Card.Title>\r\n <Card.Text>\r\n Yellow Ration card Benefits, Allocation details, Ration details, Detailed analysis etc.\r\n </Card.Text>\r\n <NavLink to=\"/yellow\" style={{color:'white'}} className=\"btn bg-dark\">View</NavLink>\r\n </Card.Body>\r\n </Card>\r\n </div>\r\n </div>\r\n <ToastContainer />\r\n </>\r\n );\r\n}\r\n \r\nexport default home;","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\complaint.js",["197","198","199","200","201","202","203","204","205","206","207","208","209","210"],"import React from 'react';\r\nimport { PureComponent } from 'react';\r\nimport axios from 'axios';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport 'react-toastify/dist/ReactToastify.css';\r\nimport { trackPromise } from 'react-promise-tracker';\r\nimport { LoadingIndicator } from '..';\r\nimport Navbar from '../components/navbar';\r\n\r\nconst validEmailRegex =\r\n /^(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\r\n const validateForm = errors => {\r\n let valid = true;\r\n Object.values(errors).forEach(val => val.length > 0 && (valid = false));\r\n return valid;\r\n };\r\n\r\nclass Complaint extends PureComponent {\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.onChangeShopkeepername = this.onChangeShopkeepername.bind(this);\r\n this.onChangeEmail = this.onChangeEmail.bind(this);\r\n this.onChangeTitle = this.onChangeTitle.bind(this);\r\n this.onChangeQuery = this.onChangeQuery.bind(this);\r\n this.onSubmit= this.onSubmit.bind(this);\r\n\r\n \r\n this.state = {\r\n email : '',\r\n shopkeepername: '',\r\n title:'',\r\n query : '',\r\n users : [],\r\n errors : {\r\n email: '',\r\n }\r\n };\r\n \r\n }\r\n\r\n\r\n handleChange = (event) => {\r\n event.preventDefault();\r\n\r\n\r\n const { name, value } = event.target;\r\n let errors = this.state.errors;\r\n \r\n switch (name) {\r\n case 'email': \r\n errors.email = \r\n validEmailRegex.test(value)\r\n ? ''\r\n : 'Email is not valid!';\r\n break;\r\n \r\n default:\r\n break;\r\n }\r\n \r\n this.setState({errors, [name]: value});\r\n }\r\n\r\n onChangeEmail(e){\r\n this.setState({\r\n email : e.target.value\r\n });\r\n }\r\n onChangeShopkeepername(e){\r\n this.setState({\r\n shopkeepername : e.target.value\r\n });\r\n }\r\n onChangeTitle(e){\r\n this.setState({\r\n title : e.target.value\r\n });\r\n }\r\n onChangeQuery(e){\r\n this.setState({\r\n query : e.target.value\r\n });\r\n }\r\n\r\n componentDidMount(){\r\n axios.get('https://rationapp-backend.herokuapp.com/complaint')\r\n .then(res => {\r\n if(res.data.length >0){\r\n this.setState({\r\n users : res.data.map(user => user.username),\r\n username : res.data[0].username\r\n })\r\n }\r\n });\r\n }\r\n\r\n onSubmit = async (e) =>{\r\n \r\n e.preventDefault()\r\n const complaint = {\r\n email : this.state.email,\r\n shopkeepername : this.state.shopkeepername,\r\n title: this.state.title,\r\n query : this.state.query\r\n }\r\n try{\r\n\r\n const res = await fetch('https://rationapp-backend.herokuapp.com/complaint',{\r\n method: 'POST',\r\n body : JSON.stringify(complaint),\r\n headers: { \"Content-Type\":\"application/json\" }\r\n });\r\n const data = await res.json();\r\n \r\n \r\n // console.log(data);\r\n if(data.complaint){\r\n toast.success(\"Complaint submitted successfully\");\r\n } \r\n if(data.errors){\r\n toast.error(\"Complaint failed to submit:!\",{\r\n position:\"top-center\"\r\n });\r\n }\r\n\r\n\r\n\r\n // trackPromise(\r\n // axios.post('http://localhost:5000/complaint',complaint)\r\n // .then(res => \r\n // console.log(res.data) ,\r\n // toast.success(\"Complaint Submitted\",{\r\n // position: \"top-center\"\r\n // })\r\n \r\n // ).catch((err) => \r\n // console.log(err)\r\n // );\r\n }\r\n catch (err){\r\n console.log(err);\r\n toast.error(\"\"+err+\"\");\r\n }\r\n \r\n // this.setState({\r\n // email : '',\r\n \r\n // title:'',\r\n // query : '',\r\n \r\n // errors : {\r\n // email: '',\r\n // }\r\n // });\r\n \r\n }\r\n\r\n\r\n\r\n render(){\r\n return ( \r\n <>\r\n <Navbar />\r\n <div className=\"complaint mt-4 p-6\" style={{textAlign:'center'}}>\r\n <form onSubmit={this.onSubmit} >\r\n <h4><strong> Complaint Form</strong></h4>\r\n <div className=\"hr\" />\r\n <div className =\"form-group pob mt-3 ml-4 mr-4\">\r\n <input type=\"text\" \r\n required\r\n name=\"email\"\r\n value = {this.state.email}\r\n onChange = {this.onChangeEmail}\r\n onInput={this.handleChange}\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n />\r\n <span>Email</span>\r\n {this.state.errors.email.length > 0 && \r\n <div className='emailError'>{this.state.errors.email}</div>}\r\n\r\n </div>\r\n <div className =\"form-group d-flex flex-row pob mt-3 ml-4 mr-4\">\r\n <label>Against </label> \r\n <select ref=\"userInput\" \r\n required\r\n className = \"form-control\"\r\n value = {this.state.shopkeepername}\r\n onChange = {this.onChangeShopkeepername}>\r\n {\r\n this.state.users.map( (user) =>{\r\n return <option\r\n key = {user}\r\n value = {user}>{user}\r\n </option>\r\n })\r\n }\r\n </select>\r\n </div>\r\n\r\n <div className =\"form-group d-flex flex-row pob mt-3 ml-4 mr-4\">\r\n <input type=\"text\" \r\n required\r\n name=\"title\"\r\n value = {this.state.title}\r\n onChange = {this.onChangeTitle}\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n />\r\n <span>Title</span>\r\n </div>\r\n\r\n <div className =\"form-group d-flex flex-row pob ml-4 mr-4\">\r\n \r\n <textarea \r\n required\r\n name=\"firstname\"\r\n value = {this.state.query}\r\n onChange = {this.onChangeQuery}\r\n rows=\"5\" cols=\"50\"\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n \r\n />\r\n \r\n <span>Explain Your Query</span>\r\n </div>\r\n <div className=\"form-group\">\r\n <input type=\"submit\" value = \"Submit\" className=\"btn btn-primary\"/>\r\n </div>\r\n \r\n </form>\r\n </div>\r\n <LoadingIndicator/>\r\n <ToastContainer />\r\n </>\r\n );\r\n }\r\n}\r\n \r\nexport default Complaint;","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper\\ss-dashboard.js",[],"C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper\\ssprofile.js",["211","212","213","214","215","216","217","218","219","220","221","222","223","224","225","226","227","228","229","230"],"import React from 'react';\r\nimport { PureComponent } from 'react';\r\nimport { NavLink } from 'react-router-dom';\r\nimport axios from 'axios';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport DatePicker from \"react-datepicker\";\r\nimport {useHistory} from \"react-router-dom\";\r\n\r\n// import Header from 'react-header';\r\n\r\nconst validEmailRegex =\r\n /^(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\r\n const validateForm = errors => {\r\n let valid = true;\r\n Object.values(errors).forEach(val => val.length > 0 && (valid = false));\r\n return valid;\r\n };\r\nvar pattern = /^\\d{10}$/;\r\n\r\n\r\n\r\nclass Ssprofile extends PureComponent {\r\n \r\n async componentDidMount(){\r\n if(localStorage.getItem('Token')!=null && localStorage.getItem('Token')!='undefined' && localStorage.getItem('CurrentUser')!=null && localStorage.getItem('CurrentUser')!='undefined')\r\n {\r\n \r\n this.props.history.push(\"/shopkeeper/ssprofile/\");\r\n if(localStorage.getItem('CurrentUser')!=null && localStorage.getItem('CurrentUser')!='undefined'){\r\n \r\n var user=localStorage.getItem('CurrentUser');\r\n var json = JSON.parse(user);\r\n var obj=json[\"user\"];\r\n var cid=obj[\"id\"];\r\n console.log(cid);\r\n }else{\r\n this.props.history.push(\"/login\");\r\n }\r\n // headers = new HttpHeaders().set('Token',localStorage.getItem('Token'));\r\n axios.get(\"https://rationapp-backend.herokuapp.com/shopkeeper/ssprofile/\"+cid, {\r\n headers: {\r\n 'token': `${localStorage.getItem('Token')}`\r\n }\r\n })\r\n .then(res =>{\r\n this.setState({\r\n users : res.data\r\n })\r\n console.log(this.state.users);\r\n }).catch(err => console.log(err));\r\n \r\n }else{\r\n \r\n this.props.history.push(\"/login\");\r\n toast.warn(\"You don't have access, Requires login\",{\r\n position:\"top-center\"\r\n })\r\n }\r\n \r\n\r\n }\r\n \r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.onChangeFirstname = this.onChangeFirstname.bind(this);\r\n this.onChangeLastname = this.onChangeLastname.bind(this);\r\n this.onChangeMobileno = this.onChangeMobileno.bind(this);\r\n this.onChangeEmail = this.onChangeEmail.bind(this);\r\n this.onChangeUsername = this.onChangeUsername.bind(this);\r\n this.onChangeDob = this.onChangeDob.bind(this);\r\n this.onChangeGender = this.onChangeGender.bind(this);\r\n this.onChangePassword = this.onChangePassword.bind(this);\r\n this.onSubmit= this.onSubmit.bind(this);\r\n \r\n \r\n\r\n this.state = {\r\n users : {\r\n firstname:'',\r\n lastname : \"\",\r\n mobileno : \"\",\r\n email : \"\",\r\n username : \"\",\r\n dob : \"\",\r\n gender : \"\",\r\n password : \"\"\r\n },\r\n errormessage:'',\r\n errors : {\r\n username: '',\r\n email: '',\r\n password: '',\r\n mobileno:'',\r\n }\r\n \r\n };\r\n \r\n }\r\n\r\n handleChange = (event) => {\r\n event.preventDefault();\r\n\r\n\r\n const { name, value } = event.target;\r\n let errors = this.state.errors;\r\n \r\n switch (name) {\r\n case 'username': \r\n errors.username = \r\n value.length < 5\r\n ? 'Username must be at least 5 characters long!'\r\n : '';\r\n break;\r\n case 'mobileno': \r\n errors.mobileno = \r\n pattern.test(value)\r\n ? ''\r\n : 'Mobile no is not valid!';\r\n break; \r\n \r\n case 'email': \r\n errors.email = \r\n validEmailRegex.test(value)\r\n ? ''\r\n : 'Email is not valid!';\r\n break;\r\n case 'password': \r\n errors.password = \r\n value.length < 6\r\n ? 'Password must be at least 6 characters long!'\r\n : '';\r\n break;\r\n default:\r\n break;\r\n }\r\n \r\n this.setState({errors, [name]: value});\r\n }\r\n\r\n \r\n\r\n onChangeFirstname(e){\r\n this.setState({\r\n users:{firstname : e.target.value}\r\n });\r\n }\r\n onChangeLastname(e){\r\n this.setState({\r\n users:{lastname : e.target.value}\r\n });\r\n }\r\n onChangeMobileno(e){\r\n this.setState({\r\n users:{mobileno : e.target.value}\r\n });\r\n }\r\n onChangeEmail(e){\r\n this.setState({\r\n users:{email : e.target.value}\r\n });\r\n }\r\n onChangeUsername(e){\r\n this.setState({\r\n users:{username : e.target.value}\r\n });\r\n }\r\n onChangeDob(e){\r\n this.setState({\r\n users:{dob : e.target.value}\r\n });\r\n }\r\n onChangeGender(e){\r\n this.setState({\r\n users:{gender : e.target.value}\r\n });\r\n console.log(this.state.users.gender);\r\n }\r\n onChangePassword(e){\r\n this.setState({\r\n users:{password : e.target.value}\r\n });\r\n }\r\n\r\n onSubmit = async (e) =>{\r\n e.preventDefault()\r\n const user = {\r\n firstname : this.state.users.firstname,\r\n lastname : this.state.users.lastname,\r\n mobileno : this.state.users.mobileno,\r\n email : this.state.users.email,\r\n username : this.state.users.username,\r\n dob : this.state.users.dob,\r\n gender : this.state.users.gender,\r\n password : this.state.users.password\r\n }\r\n\r\n var usedr=localStorage.getItem('CurrentUser');\r\n var json = JSON.parse(usedr);\r\n var obj=json[\"user\"];\r\n var cid=obj[\"id\"];\r\n \r\n axios.put(`https://rationapp-backend.herokuapp.com/shopkeeper/ssprofile/update/`+cid,user)\r\n .then(res => {\r\n console.log(res);\r\n window.alert(\"Updated Successfully\");\r\n }\r\n )\r\n .catch(err => console.log(err));\r\n\r\n }\r\n\r\n \r\n\r\n render() { \r\n return ( \r\n <>\r\n <div className=\"container\">\r\n <div className=\"ssprofile login mt-3\">\r\n \r\n \r\n <h4><strong> Profile Details</strong></h4>\r\n {/* <NavLink to={\"/shopkeeper/ssprofile/update/\"+this.state.users._id} style={{color:'white'}} className=\"btn bg-dark\">click here to Update</NavLink> */}\r\n \r\n <NavLink className=\"btn btn-primary\" to=\"/shopkeeper/ssprofile/update\">Edit Profile</NavLink>\r\n <form method=\"POST\" onSubmit={this.onSubmit} >\r\n <div className =\"form-group pob\" style={{justifyItems:\"end\"}} >\r\n \r\n <input type=\"text\" \r\n required\r\n className = \"form-control \"\r\n id=\"inputbox\"\r\n \r\n name=\"firstname\"\r\n value = {this.state.users.firstname}\r\n onChange = {e => this.onChangeFirstname(e)}\r\n \r\n />\r\n <span>Firstname</span>\r\n \r\n {/* <div className=\"firstname-error\">{this.state.errormessage.firstname}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"text\" \r\n required\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n name=\"lastname\"\r\n value = {this.state.users.lastname}\r\n onChange = {e => this.onChangeLastname(e)}\r\n />\r\n <span>Lastname</span>\r\n {/* <div className=\"lastname-error\">{this.state.errormessage.lastname}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"mobileno\" \r\n required\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n inputMode=\"tel\"\r\n autoComplete=\"off\"\r\n maxLength=\"10\"\r\n name=\"mobileno\"\r\n \r\n value = {this.state.users.mobileno}\r\n onChange = {this.onChangeMobileno}\r\n onInput={this.handleChange} noValidate\r\n />\r\n <span>Mobile No</span>\r\n {this.state.errors.mobileno.length > 0 && \r\n <div className='mobileno-error'>{this.state.errors.mobileno}</div>}\r\n {/* <div className=\"mobileno-error\">{this.state.errormessage.mobileno}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"text\" \r\n required\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n name=\"email\"\r\n value = {this.state.users.email}\r\n // onChange = {this.onChangeEmail}\r\n onChange={ this.onChangeEmail} \r\n onInput={this.handleChange}noValidate\r\n />\r\n <span>Email</span>\r\n {this.state.errors.email.length > 0 && \r\n <div className='emailError'>{this.state.errors.email}</div>}\r\n <div className=\"errors\">{this.state.errormessage}</div>\r\n {/* <div className=\"emailError\">{this.state.errormessage.email}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"text\" \r\n required\r\n name=\"username\"\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n value = {this.state.users.username}\r\n onInput={this.handleChange} noValidate\r\n onChange = {this.onChangeUsername}\r\n />\r\n <span>Username</span>\r\n {this.state.errors.username.length > 0 && \r\n <div className='username-error'>{this.state.errors.username}</div>}\r\n {/* <div className=\"username-error\">{this.state.errormessage.username}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input\r\n type=\"text\"\r\n placeholderText=\"Date of birth\"\r\n dateFormat=\"dd/MM/yyyy\"\r\n autoComplete=\"off\"\r\n value = {(this.state.users.dob)}\r\n name=\"dob\"\r\n selected ={this.state.users.dob}\r\n onChange ={ this.onChangeDob}\r\n />\r\n \r\n \r\n </div>\r\n <div className =\"form-group pob mt-4\" onChange={this.onChangeGender}>\r\n \r\n <div className=\"\" >\r\n <select ref=\"UserInput\" onChange={this.callThis} className=\"form-control \" \r\n required \r\n \r\n value = {this.state.users.gender}\r\n id=\"gender\"\r\n onChange = {this.onChangeGender}>\r\n <option value = \"Male\">Male</option>\r\n <option value = \"Female\">Female</option>\r\n <option value = \"Other\">Other</option>\r\n </select>\r\n \r\n </div>\r\n \r\n \r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"password\" \r\n required\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n value = {this.state.users.password}\r\n onChange = {this.onChangePassword}\r\n onInput={this.handleChange} noValidate\r\n name=\"password\"\r\n disabled\r\n />\r\n <span>Password</span>\r\n {this.state.errors.password.length > 0 && \r\n <div className='passwordError'>{this.state.errors.password}</div>}\r\n {/* <div className=\"passwordError\">{this.state.errormessage.password}</div> */}\r\n </div>\r\n <div className=\"form-group\">\r\n <input type=\"submit\" value = \"Update\" className=\"btn btn-primary\"/>\r\n </div>\r\n \r\n \r\n </form>\r\n </div>\r\n\r\n </div>\r\n </>\r\n );\r\n }\r\n}\r\n \r\nexport default Ssprofile;\r\n\r\n","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper\\ss-user-details.js",["231","232","233","234","235","236","237","238","239","240","241","242","243","244","245","246","247","248","249","250","251","252","253","254","255","256","257","258","259","260","261","262","263","264","265","266","267","268","269","270","271","272","273","274","275","276","277","278","279","280","281","282","283","284","285","286","287","288","289","290","291","292","293","294","295","296","297","298","299","300"],"C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin\\adminProfile.js",["301","302","303","304","305","306","307","308","309","310","311","312","313","314","315","316","317","318"],"import React from 'react';\r\nimport { PureComponent } from 'react';\r\nimport { NavLink, withRouter } from 'react-router-dom';\r\nimport axios from 'axios';\r\nimport DatePicker from \"react-datepicker\";\r\nimport {useHistory} from \"react-router-dom\";\r\n// import Header from 'react-header';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport 'react-toastify/dist/ReactToastify.css';\r\nimport { trackPromise } from 'react-promise-tracker';\r\nimport { LoadingIndicator } from '../..';\r\n\r\nconst validEmailRegex =\r\n /^(([^<>()\\[\\]\\.,;:\\s@\\\"]+(\\.[^<>()\\[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\r\n const validateForm = errors => {\r\n let valid = true;\r\n Object.values(errors).forEach(val => val.length > 0 && (valid = false));\r\n return valid;\r\n };\r\nvar pattern = /^\\d{10}$/;\r\n\r\n\r\n\r\nclass AdminProfile extends PureComponent {\r\n \r\n async componentDidMount(){\r\n if(localStorage.getItem('Token')!=null && localStorage.getItem('Token')!='undefined' && localStorage.getItem('CurrentUser')!=null && localStorage.getItem('CurrentUser')!='undefined')\r\n {\r\n this.props.history.push(\"/admin/admin-profile\");\r\n var user=localStorage.getItem('CurrentUser');\r\n var json = JSON.parse(user);\r\n var obj=json[\"user\"];\r\n var cid=obj[\"id\"];\r\n console.log(cid);\r\n\r\n // headers = new HttpHeaders().set('Token',localStorage.getItem('Token'));\r\n trackPromise(\r\n axios.get(\"https://rationapp-backend.herokuapp.com/admin/admin-profile/\"+cid, {\r\n headers: {\r\n 'token': `${localStorage.getItem('Token')}`\r\n }\r\n })\r\n .then(res =>{\r\n this.setState({\r\n users : res.data\r\n })\r\n // res.json();\r\n }).catch(err => console.log(err)));\r\n\r\n }else{\r\n this.props.history.push(\"/admin-panel-login\");\r\n toast.warn(\"You don't have access, Requires login\",{\r\n position:\"top-center\"\r\n })\r\n }\r\n }\r\n \r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.onChangeFirstname = this.onChangeFirstname.bind(this);\r\n this.onChangeLastname = this.onChangeLastname.bind(this);\r\n this.onChangeMobileno = this.onChangeMobileno.bind(this);\r\n this.onChangeEmail = this.onChangeEmail.bind(this);\r\n this.onChangeUsername = this.onChangeUsername.bind(this);\r\n this.onChangeDob = this.onChangeDob.bind(this);\r\n this.onChangeGender = this.onChangeGender.bind(this);\r\n this.onChangePassword = this.onChangePassword.bind(this);\r\n this.onSubmit= this.onSubmit.bind(this);\r\n \r\n \r\n\r\n this.state = {\r\n users : [],\r\n errormessage:'',\r\n errors : {\r\n username: '',\r\n email: '',\r\n password: '',\r\n mobileno:'',\r\n }\r\n \r\n };\r\n \r\n }\r\n\r\n handleChange = (event) => {\r\n event.preventDefault();\r\n\r\n\r\n const { name, value } = event.target;\r\n let errors = this.state.errors;\r\n \r\n switch (name) {\r\n case 'username': \r\n errors.username = \r\n value.length < 5\r\n ? 'Username must be at least 5 characters long!'\r\n : '';\r\n break;\r\n case 'mobileno': \r\n errors.mobileno = \r\n pattern.test(value)\r\n ? ''\r\n : 'Mobile no is not valid!';\r\n break; \r\n \r\n case 'email': \r\n errors.email = \r\n validEmailRegex.test(value)\r\n ? ''\r\n : 'Email is not valid!';\r\n break;\r\n case 'password': \r\n errors.password = \r\n value.length < 6\r\n ? 'Password must be at least 6 characters long!'\r\n : '';\r\n break;\r\n default:\r\n break;\r\n }\r\n \r\n this.setState({errors, [name]: value});\r\n }\r\n\r\n \r\n\r\n onChangeFirstname(e){\r\n this.setState({\r\n firstname : e.target.value\r\n });\r\n }\r\n onChangeLastname(e){\r\n this.setState({\r\n lastname : e.target.value\r\n });\r\n }\r\n onChangeMobileno(e){\r\n this.setState({\r\n mobileno : e.target.value\r\n });\r\n }\r\n onChangeEmail(e){\r\n this.setState({\r\n email : e.target.value\r\n });\r\n }\r\n onChangeUsername(e){\r\n this.setState({\r\n username : e.target.value\r\n });\r\n }\r\n onChangeDob(date){\r\n this.setState({\r\n dob : date\r\n });\r\n }\r\n onChangeGender(e){\r\n this.setState({\r\n gender : e.target.value\r\n });\r\n console.log(this.state.gender);\r\n }\r\n onChangePassword(e){\r\n this.setState({\r\n password : e.target.value\r\n });\r\n }\r\n\r\n onSubmit = async (e) =>{\r\n e.preventDefault()\r\n const user = {\r\n firstname : this.state.firstname,\r\n lastname : this.state.lastname,\r\n mobileno : this.state.mobileno,\r\n email : this.state.email,\r\n username : this.state.username,\r\n dob : this.state.dob,\r\n gender : this.state.gender,\r\n password : this.state.password\r\n }\r\n\r\n var userse=localStorage.getItem('CurrentUser');\r\n var json = JSON.parse(userse);\r\n var obj=json[\"userse\"];\r\n var cid=obj[\"id\"];\r\n console.log(cid);\r\n trackPromise(\r\n axios.post('https://rationapp-backend.herokuapp.com/admin/admin-profile/update/'+cid,user)\r\n .then(res => \r\n console.log(res.data),\r\n window.alert(\"Updated Successfully\")\r\n )\r\n .catch(err => console.log(err)));\r\n\r\n }\r\n\r\n \r\n\r\n render() { \r\n return ( \r\n <>\r\n <div className=\"ssprofile login mt-3\">\r\n \r\n \r\n <h4><strong> Profile Details</strong></h4>\r\n {/* <NavLink to={\"/shopkeeper/ssprofile/update/\"+this.state.users._id} style={{color:'white'}} className=\"btn bg-dark\">click here to Update</NavLink> */}\r\n \r\n\r\n <form method=\"GET\" onSubmit={this.onSubmit} >\r\n <div className =\"form-group pob\" style={{justifyItems:\"end\"}} >\r\n \r\n <input type=\"text\" \r\n required\r\n className = \"form-control \"\r\n id=\"inputbox\"\r\n \r\n name=\"firstname\"\r\n defaultValue = {this.state.users.firstname}\r\n onChange = {this.onChangeFirstname}\r\n \r\n />\r\n <span>Firstname</span>\r\n \r\n {/* <div className=\"firstname-error\">{this.state.errormessage.firstname}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"text\" \r\n required\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n name=\"lastname\"\r\n defaultValue = {this.state.users.lastname}\r\n onChange = {this.onChangeLastname}\r\n />\r\n <span>Lastname</span>\r\n {/* <div className=\"lastname-error\">{this.state.errormessage.lastname}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"mobileno\" \r\n required\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n inputMode=\"tel\"\r\n autoComplete=\"off\"\r\n maxLength=\"10\"\r\n name=\"mobileno\"\r\n \r\n defaultValue = {this.state.users.mobileno}\r\n onChange = {this.onChangeMobileno}\r\n onInput={this.handleChange} noValidate\r\n />\r\n <span>Mobile No</span>\r\n {this.state.errors.mobileno.length > 0 && \r\n <div className='mobileno-error'>{this.state.errors.mobileno}</div>}\r\n {/* <div className=\"mobileno-error\">{this.state.errormessage.mobileno}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"text\" \r\n required\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n name=\"email\"\r\n defaultValue = {this.state.users.email}\r\n // onChange = {this.onChangeEmail}\r\n onChange={ this.onChangeEmail} noValidate\r\n onInput={this.handleChange}\r\n />\r\n <span>Email</span>\r\n {this.state.errors.email.length > 0 && \r\n <div className='emailError'>{this.state.errors.email}</div>}\r\n <div className=\"errors\">{this.state.errormessage}</div>\r\n {/* <div className=\"emailError\">{this.state.errormessage.email}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"text\" \r\n required\r\n name=\"username\"\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n defaultValue = {this.state.users.username}\r\n onInput={this.handleChange} noValidate\r\n onChange = {this.onChangeUsername}\r\n />\r\n <span>Username</span>\r\n {this.state.errors.username.length > 0 && \r\n <div className='username-error'>{this.state.errors.username}</div>}\r\n {/* <div className=\"username-error\">{this.state.errormessage.username}</div> */}\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <DatePicker\r\n id=\"inputbox\"\r\n placeholderText=\"Date of birth\"\r\n dateFormat=\"dd/MM/yyyy\"\r\n autoComplete=\"off\"\r\n name=\"dob\"\r\n selected ={this.state.dob}\r\n onChange ={ this.onChangeDob}\r\n />\r\n \r\n \r\n </div>\r\n <div className =\"form-group pob mt-4\" onChange={this.onChangeGender}>\r\n \r\n <div className=\"\" >\r\n <select ref=\"UserInput\" onChange={this.callThis} className=\"form-control form-select form-select-sm\" \r\n required \r\n aria-label=\".form-select-sm example\"\r\n defaultValue = {this.state.gender}\r\n id=\"gender\"\r\n onChange = {this.onChangeGender}>\r\n <option value = \"Male\">Male</option>\r\n <option value = \"Female\">Female</option>\r\n <option value = \"Other\">Other</option>\r\n </select>\r\n \r\n </div>\r\n \r\n \r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"password\" \r\n required\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n defaultValue = {this.state.users.password}\r\n onChange = {this.onChangePassword}\r\n onInput={this.handleChange} noValidate\r\n name=\"password\"\r\n disabled\r\n />\r\n <span>Password</span>\r\n {this.state.errors.password.length > 0 && \r\n <div className='passwordError'>{this.state.errors.password}</div>}\r\n {/* <div className=\"passwordError\">{this.state.errormessage.password}</div> */}\r\n </div>\r\n <div className=\"form-group\">\r\n <input type=\"submit\" value = \"Update\" className=\"btn btn-primary\"/>\r\n </div>\r\n \r\n \r\n </form>\r\n </div>\r\n <LoadingIndicator />\r\n <ToastContainer/>\r\n </>\r\n );\r\n }\r\n}\r\n \r\nexport default withRouter(AdminProfile);","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin\\adminComplaint.js",["319","320","321","322"],"import React from 'react';\r\nimport { PureComponent } from 'react';\r\nimport axios from 'axios';\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\nimport { trackPromise } from 'react-promise-tracker';\r\nimport Loader from 'react-loader-spinner';\r\nimport { LoadingIndicator } from '../..';\r\nimport { withRouter } from 'react-router';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\n\r\nconst ComplaintList = props => {\r\n return(\r\n <>\r\n <div class=\"card card-complaint\">\r\n <div class=\"card-header bg-secondary\">\r\n <p>From : {props.complaint.email}</p>\r\n Against : {props.complaint.shopkeepername} \r\n </div>\r\n <div class=\"card-body\">\r\n <h5 class=\"card-title\">{props.complaint.title}</h5>\r\n <p class=\"card-text\">{props.complaint.query}</p>\r\n \r\n </div>\r\n </div>\r\n \r\n </>\r\n )\r\n}\r\n\r\n\r\nclass AdminComplaint extends PureComponent {\r\n \r\n constructor(props){\r\n console.log(props);\r\n super(props);\r\n this.state = {complaints : []};\r\n }\r\n\r\n componentDidMount(){\r\n\r\n if(localStorage.getItem('Token')!=null && localStorage.getItem('Token')!='undefined' && localStorage.getItem('CurrentUser')!=null && localStorage.getItem('CurrentUser')!='undefined')\r\n {\r\n this.props.history.push(\"/admin/admin-complaint\");\r\n trackPromise(\r\n axios.get(\"https://rationapp-backend.herokuapp.com/admin/admin-complaint\")\r\n .then(res => {\r\n this.setState({ complaints : res.data})\r\n }))\r\n .catch(err => console.log(err));\r\n \r\n }else{\r\n this.props.history.push(\"/admin-panel-login\");\r\n toast.warn(\"You don't have access, Requires login\",{\r\n position:\"top-center\"\r\n })\r\n }\r\n }\r\n \r\n complaintsList(){\r\n return this.state.complaints.reverse().map(currentcomplaint => {\r\n return<ComplaintList complaint ={currentcomplaint} key ={currentcomplaint._id} />\r\n })\r\n }\r\n\r\n render() { \r\n return ( \r\n <>\r\n <div className=\"admin-complaint\">\r\n <h3 className=\"mt-3\"><strong>Complaints</strong></h3>\r\n <div className=\"hr\"></div>\r\n <div className=\"complaint\">\r\n { this.complaintsList() }\r\n </div>\r\n <LoadingIndicator />\r\n </div>\r\n </>\r\n );\r\n }\r\n}\r\n \r\nexport default withRouter(AdminComplaint);","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper\\ss-stock-details.js",["323","324","325","326","327","328"],"import React from 'react';\r\nimport { PureComponent } from 'react';\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\nimport { trackPromise } from 'react-promise-tracker';\r\nimport axios from 'axios';\r\nimport { LoadingIndicator } from '../..';\r\nimport {Redirect,useHistory,withRouter} from 'react-router-dom';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport Navbar2 from \"../navbar2\";\r\nconst StockList = props => {\r\n \r\n return(\r\n <>\r\n <th colspan=\"6\" bgcolor = \"#446688\" className=\"text-center text-white\">{props.stock.monthyear}</th>\r\n <tr>\r\n <td>Rice</td>\r\n <td>{props.stock.riceTotalStock}</td>\r\n <td>{props.stock.riceSoldStock}</td>\r\n <td>{props.stock.riceAvailableStock}</td>\r\n </tr>\r\n <tr>\r\n <td>Sugar</td>\r\n <td>{props.stock.sugarTotalStock}</td>\r\n <td>{props.stock.sugarSoldStock}</td>\r\n <td>{props.stock.sugarAvailableStock}</td>\r\n </tr>\r\n <tr>\r\n <td>Wheat</td>\r\n <td>{props.stock.wheatTotalStock}</td>\r\n <td>{props.stock.wheatSoldStock}</td>\r\n <td>{props.stock.wheatAvailableStock}</td>\r\n </tr>\r\n <tr>\r\n <td>Oil</td>\r\n <td>{props.stock.oilTotalStock}</td>\r\n <td>{props.stock.oilSoldStock}</td>\r\n <td>{props.stock.oilAvailableStock}</td>\r\n </tr>\r\n <tr>\r\n <td>Dal</td>\r\n <td>{props.stock.dalTotalStock}</td>\r\n <td>{props.stock.dalSoldStock}</td>\r\n <td>{props.stock.dalAvailableStock}</td>\r\n </tr>\r\n </>\r\n )\r\n}\r\n\r\nclass Ssstockdetails extends PureComponent {\r\n \r\n componentDidMount(){\r\n console.log(\"called\");\r\n if(localStorage.getItem('Token')!=null && localStorage.getItem('Token')!='undefined' && localStorage.getItem('CurrentUser')!=null && localStorage.getItem('CurrentUser')!='undefined')\r\n {\r\n \r\n this.props.history.push(\"/shopkeeper/ssstockdetails/\");\r\n trackPromise(\r\n axios.get(\"https://rationapp-backend.herokuapp.com/shopkeeper/ssstockdetails/details\")\r\n .then(res => {\r\n this.setState({ stocks : res.data})\r\n }))\r\n .catch(err => console.log(err));\r\n \r\n }else{\r\n \r\n this.props.history.push(\"/login\");\r\n toast.warn(\"You don't have access, Requires login\",{\r\n position:\"top-center\"\r\n })\r\n }\r\n \r\n \r\n }\r\n\r\n \r\n\r\n constructor(props){\r\n super(props);\r\n this.state = {stocks : []};\r\n }\r\n\r\n stockList(){\r\n if(this.state.stocks.length > 0){\r\n return this.state.stocks.reverse().map(currentstock => {\r\n return<StockList stock ={currentstock} key ={currentstock._id} />\r\n })\r\n }else{\r\n return <th colspan=\"6\" className=\"text-center text-nowrap\"><p className=\"text-center\"><strong>Nothing to show</strong></p></th>\r\n }\r\n }\r\n\r\n\r\n render() { \r\n return ( \r\n <>\r\n \r\n <div className=\"ssstockdetails\">\r\n <div className=\"mt-2\"><h2><strong>Stock Details</strong></h2></div>\r\n <div className=\"hr\"></div>\r\n <div class=\"table-responsive\">\r\n <table className=\"table table-bordered table-striped\" id=\"dataTable\" width=\"100%\" cellSpacing=\"0\">\r\n <thead className=\"thead-light\">\r\n <tr>\r\n <th>Product</th>\r\n <th>Stock(kg/ltr)</th>\r\n <th>Sold(kg/ltr)</th>\r\n <th>Available(kg/ltr)</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n { this.stockList() }\r\n </tbody>\r\n </table>\r\n </div>\r\n </div>\r\n <LoadingIndicator />\r\n </>\r\n );\r\n }\r\n}\r\n \r\nexport default withRouter(Ssstockdetails);","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin\\adminShopkeeperDetails.js",["329","330","331"],"import axios from 'axios';\r\nimport React from 'react';\r\nimport { PureComponent } from 'react';\r\nimport { NavLink } from 'react-bootstrap';\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport 'react-toastify/dist/ReactToastify.css';\r\nimport { trackPromise } from 'react-promise-tracker';\r\nimport Loader from 'react-loader-spinner';\r\nimport { LoadingIndicator } from '../..';\r\n\r\nconst ShopkeeperList = props => {\r\n return(\r\n \r\n <tr>\r\n <td>{props.user.username}</td>\r\n <td>{props.user.firstname} {props.user.lastname}</td>\r\n <td>{props.user.email}</td>\r\n <td>{props.user.dob.substring(0,10)}</td>\r\n <td>{props.user.rationUser.length}</td>\r\n <td>\r\n <NavLink className=\"btn bg-danger\" onClick={ ()=>{props.deleteUser(props.user._id)}}>Delete</NavLink> \r\n </td>\r\n </tr>\r\n \r\n \r\n )\r\n}\r\n\r\n\r\nclass AdminShopkeeperDetails extends PureComponent {\r\n\r\n constructor(props){\r\n super(props);\r\n\r\n this.deleteUser = this.deleteUser.bind(this);\r\n\r\n this.state = {users : []};\r\n }\r\n \r\n componentDidMount(){\r\n\r\n if(localStorage.getItem('Token')!=null && localStorage.getItem('Token')!='undefined' && localStorage.getItem('CurrentUser')!=null && localStorage.getItem('CurrentUser')!='undefined')\r\n {\r\n this.props.history.push(\"/admin/admin-shopkeeper-details\");\r\n trackPromise(\r\n axios.get(\"https://rationapp-backend.herokuapp.com/admin/admin-shopkeeper-details/\")\r\n .then(res => {\r\n this.setState({ users : res.data})\r\n }))\r\n .catch(err => console.log(err));\r\n }else{\r\n this.props.history.push(\"/admin-panel-login\");\r\n toast.warn(\"You don't have access, Requires login\",{\r\n position:\"top-center\"\r\n })\r\n }\r\n\r\n }\r\n\r\n deleteUser(id){\r\n trackPromise(\r\n axios.delete('https://rationapp-backend.herokuapp.com/admin/admin-shopkeeper-details/'+id)\r\n .then(res => {\r\n console.log(res.data)\r\n toast.success(\"Shopkeeper Removed Successfully\",{\r\n position:\"top-center\",\r\n })\r\n }));\r\n this.setState({\r\n users : this.state.users.filter(el => el._id !== id)\r\n });\r\n }\r\n\r\n\r\n userList(){\r\n return this.state.users.reverse().map(currentuser => {\r\n return<ShopkeeperList user ={currentuser} deleteUser ={this.deleteUser} key ={currentuser._id} />\r\n })\r\n }\r\n \r\n render() { \r\n return ( \r\n <>\r\n <div className=\"admin-shopkeeper-details\">\r\n <h3 className=\"mt-3\"><strong>Shopkeeper Details</strong></h3>\r\n <div className=\"hr\"></div>\r\n <div class=\"table-responsive\">\r\n <table className=\"table table-bordered\" id=\"dataTable\" width=\"100%\" cellSpacing=\"0\">\r\n <thead className=\"thead-light\">\r\n <tr>\r\n <th>Username</th>\r\n <th>Name</th>\r\n <th>Email</th>\r\n <th>BirthDate</th>\r\n <th>Total Users</th>\r\n <th>Actions</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n { this.userList() }\r\n </tbody>\r\n </table>\r\n </div>\r\n </div>\r\n <LoadingIndicator />\r\n <ToastContainer />\r\n </>\r\n );\r\n }\r\n}\r\n \r\nexport default AdminShopkeeperDetails;","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin\\adminDashboard.js",["332","333","334"],"import React from 'react';\r\nimport { PureComponent } from 'react';\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\nimport { Card } from 'react-bootstrap';\r\nimport axios from 'axios';\r\nimport { trackPromise } from 'react-promise-tracker';\r\nimport { withRouter } from 'react-router';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport Ssstockdetails from '../shopkeeper/ss-stock-details';\r\n\r\nclass AdminDashboard extends PureComponent {\r\n \r\n constructor(props){\r\n super(props);\r\n this.state = {\r\n count1 : 0,\r\n count2 : 0\r\n };\r\n }\r\n \r\n componentDidMount(){\r\n if(localStorage.getItem('Token')!=null && localStorage.getItem('Token')!='undefined' && localStorage.getItem('CurrentUser')!=null && localStorage.getItem('CurrentUser')!='undefined')\r\n {\r\n this.props.history.push(\"/admin/admin-dashboard/\");\r\n this.getadmin();\r\n this.getcomplaints();\r\n }else{\r\n this.props.history.push(\"/admin-panel-login\");\r\n toast.warn(\"You don't have access, Requires login\",{\r\n position:\"top-center\"\r\n })\r\n }\r\n \r\n }\r\n getadmin(){\r\n trackPromise(\r\n axios.get(\"https://rationapp-backend.herokuapp.com/admin/admin-dashboard/users/\")\r\n .then(res => {\r\n this.setState({ \r\n count1 : res.data.users.length\r\n })\r\n })\r\n .catch(err => console.log(err)));\r\n }\r\n getcomplaints(){\r\n trackPromise(\r\n axios.get(\"https://rationapp-backend.herokuapp.com/admin/admin-dashboard/comp/\")\r\n .then(res => {\r\n console.log(res);\r\n this.setState({ \r\n count2 : res.data.complaints.length\r\n })\r\n })\r\n .catch(err => console.log(err)));\r\n }\r\n render() { \r\n return ( \r\n <>\r\n <div className=\"ssdashboard\">\r\n \r\n <div className=\" card-container mb-3 \">\r\n <Card border=\"yellow\" style={{ width: '12rem',backgroundColor:'lightgreen' }} className=\"m-2\" id=\"saffron\">\r\n <Card.Header><b>Shopkeepers Count</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title><h1>{this.state.count1}</h1></Card.Title>\r\n </Card.Body>\r\n </Card>\r\n <Card border=\"yellow\" style={{ width: '12rem' ,backgroundColor:'hotpink' }} className=\"m-2\" id=\"saffron\">\r\n <Card.Header><b>Complaints</b></Card.Header>\r\n <Card.Body>\r\n <Card.Title><h1>{this.state.count2}</h1></Card.Title>\r\n </Card.Body>\r\n </Card>\r\n \r\n </div>\r\n <Ssstockdetails />\r\n </div>\r\n </>\r\n );\r\n }\r\n}\r\n \r\nexport default withRouter(AdminDashboard);","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin-panel-login.js",["335","336"],"import React from 'react';\r\nimport { PureComponent } from 'react';\r\nimport { NavLink , useHistory, withRouter} from 'react-router-dom';\r\nimport jwt_decode from \"jwt-decode\";\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport 'react-toastify/dist/ReactToastify.css';\r\nimport { trackPromise } from 'react-promise-tracker';\r\nimport Navbar from '../components/navbar';\r\n\r\nclass AdminLogin extends PureComponent {\r\n \r\n constructor(props) {\r\n super(props);\r\n this.onChangeEmail = this.onChangeEmail.bind(this);\r\n this.onChangePassword = this.onChangePassword.bind(this);\r\n this.onSubmit= this.onSubmit.bind(this);\r\n\r\n this.state = {\r\n email: '',\r\n password : '',\r\n errormessage:{\r\n email:'',\r\n password :''\r\n }\r\n };\r\n }\r\n\r\n componentDidMount(){\r\n \r\n }\r\n\r\n onChangeEmail(e){\r\n this.setState({\r\n email : e.target.value\r\n });\r\n }\r\n onChangePassword(e){\r\n this.setState({\r\n password : e.target.value\r\n });\r\n }\r\n\r\n onSubmit = async (e) =>{\r\n e.preventDefault()\r\n\r\n const user = {\r\n email : this.state.email,\r\n password : this.state.password\r\n }\r\n \r\n try{\r\n \r\n const res = await trackPromise( fetch('https://rationapp-backend.herokuapp.com/admin-panel-login',{\r\n method: 'POST',\r\n body : JSON.stringify({ email : user.email , password : user.password}),\r\n headers: { \"Content-Type\":\"application/json\" }\r\n }));\r\n const data = await res.json();\r\n console.log(data.token);\r\n localStorage.setItem('Token',data.token);\r\n try{\r\n const currentuser=jwt_decode(data.token);\r\n if(currentuser){\r\n \r\n console.log(JSON.stringify(currentuser));\r\n localStorage.setItem('CurrentUser',JSON.stringify(currentuser));\r\n this.props.history.push(\"/admin/admin-profile/\");\r\n toast.success(\"Login Successfull!\",{\r\n position : \"top-center\",\r\n });\r\n \r\n }\r\n }\r\n catch(Error){\r\n console.log(Error); \r\n toast.error(\"Login Failed, Try again!\",{\r\n position : \"top-center\",\r\n }); \r\n }\r\n // console.log(loggedUser);\r\n \r\n \r\n \r\n }\r\n catch (err){\r\n console.log(err);\r\n }\r\n\r\n console.log(user);\r\n }\r\n\r\n render(){\r\n return ( \r\n <>\r\n <Navbar/>\r\n <div className=\"container\">\r\n <div className=\"login mt-3 \">\r\n <h4><strong>Admin Login</strong></h4>\r\n <p>( Admin login panel )</p>\r\n <div className=\"errorstitle\">{this.state.errormessage.message}</div>\r\n <form onSubmit={this.onSubmit} >\r\n <div className =\"form-group pob\" >\r\n <input type=\"text\" \r\n required\r\n autoFocus\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n autoComplete=\"off\"\r\n value = {this.state.email}\r\n onChange = {this.onChangeEmail}\r\n />\r\n <span>Username</span>\r\n <div className=\"emailError\">{this.state.errormessage.email}</div>\r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"password\" \r\n required\r\n autoComplete=\"off\"\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n \r\n value = {this.state.password}\r\n onChange = {this.onChangePassword}\r\n />\r\n <span>Password</span>\r\n <div className=\"passwordError\">{this.state.errormessage.password}</div>\r\n </div>\r\n <div className=\"form-group\">\r\n <input type=\"submit\" value = \"Login\" className=\"btn btn-primary\"/>\r\n </div>\r\n </form>\r\n </div>\r\n\r\n <ToastContainer /> \r\n </div>\r\n </>\r\n );\r\n } \r\n\r\n}\r\n\r\nexport default withRouter(AdminLogin);","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\ProtectedRoutes.js",["337","338","339","340"],"import React, { useEffect, useState } from 'react';\r\nimport {Route, Redirect,useHistory} from \"react-router-dom\";\r\n\r\nfunction ProtectedRoute(props){\r\n let Cmp = props.Cmp;\r\n const history=useHistory(); \r\n useEffect(()=>{\r\n if(!localStorage.getItem('Token'))\r\n {\r\n history.push(\"/login\");\r\n }\r\n },[])\r\n return (\r\n <div>\r\n <Cmp/>\r\n </div>\r\n )\r\n}\r\nexport default ProtectedRoute;","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper\\addUser.js",["341","342"],"import React, { useState } from \"react\";\r\nimport axios from 'axios'\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { toast , ToastContainer} from \"react-toastify\";\r\nimport { LoadingIndicator } from \"../..\";\r\nimport Navbar2 from \"../navbar2\";\r\n\r\nconst AddUser = () => {\r\n let history = useHistory();\r\n const [user, setUser] = useState({\r\n email: \"\",\r\n name: \"\",\r\n totalFamilyMembers: \"\", \r\n rationType: \"\",\r\n });\r\n\r\n const { email, name, totalFamilyMembers, rationType } = user;\r\n const onInputChange = e => {\r\n setUser({ ...user, [e.target.name]: e.target.value });\r\n };\r\n\r\n\r\n const onSubmit = async e => {\r\n e.preventDefault();\r\n var userd=localStorage.getItem('CurrentUser');\r\n var json = JSON.parse(userd);\r\n var obj=json[\"user\"];\r\n var cid=obj[\"id\"];\r\n console.log(user);\r\n axios.post(\"https://rationapp-backend.herokuapp.com/shopkeeper/ssuserdetails/add-user/\"+cid, user)\r\n .then(res => {\r\n console.log(res.data)\r\n toast.success(\"Ration user added\",{\r\n position:\"top-center\"\r\n })\r\n \r\n history.push(\"/shopkeeper/ssuserdetails/\");\r\n })\r\n .catch(err => console.log(err));\r\n \r\n };\r\n return (\r\n <>\r\n \r\n <div className=\"container\">\r\n <div className=\"mx-auto p-2\">\r\n <h3 className=\"text-center mb-4\"><strong>Add A Ration Card Holder</strong></h3>\r\n <div className=\"hr\"></div>\r\n <form onSubmit={e => onSubmit(e)}>\r\n <div className=\"form-group\">\r\n <input\r\n type=\"text\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter card-holders email\"\r\n name=\"email\"\r\n value={email}\r\n onChange={e => onInputChange(e)}\r\n />\r\n </div>\r\n <div className=\"form-group\">\r\n <input\r\n type=\"text\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Name\"\r\n name=\"name\"\r\n value={name}\r\n onChange={e => onInputChange(e)}\r\n />\r\n </div>\r\n <div className=\"form-group\">\r\n <input\r\n type=\"Number\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Total family Members\"\r\n name=\"totalFamilyMembers\"\r\n value={totalFamilyMembers}\r\n onChange={e => onInputChange(e)}\r\n />\r\n </div>\r\n <div className=\"form-group\">\r\n <input\r\n type=\"text\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Ration type (saffron / white / yellow)\"\r\n name=\"rationType\"\r\n value={rationType.toLowerCase()}\r\n onChange={e => onInputChange(e)}\r\n />\r\n </div>\r\n <button className=\"btn btn-primary btn-block\">Add</button>\r\n </form>\r\n </div>\r\n </div>\r\n <ToastContainer/>\r\n </>\r\n );\r\n};\r\n\r\nexport default AddUser;","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\shopkeeper\\editUser.js",["343","344","345","346","347"],"import React, { useState, useEffect } from \"react\";\r\nimport axios from \"axios\";\r\nimport { useHistory, useParams } from \"react-router-dom\";\r\nimport {ToastContainer, toast} from \"react-toastify\";\r\nimport Navbar2 from \"../navbar2\";\r\n\r\nconst EditUser = () => {\r\n let history = useHistory();\r\n const { id } = useParams();\r\n const [user, setUser] = useState({\r\n firstname: \"\",\r\n lastname: \"\",\r\n mobileno: \"\",\r\n email: \"\",\r\n username: \"\",\r\n gender : \"\"\r\n });\r\n\r\n const { firstname, lastname, mobileno, email, username , gender} = user;\r\n const onInputChange = e => {\r\n setUser({ ...user, [e.target.name]: e.target.value });\r\n };\r\n\r\n useEffect(() => {\r\n if(localStorage.getItem('Token')!=null && localStorage.getItem('Token')!='undefined' && localStorage.getItem('CurrentUser')!=null && localStorage.getItem('CurrentUser')!='undefined')\r\n {\r\n history.push(\"/shopkeeper/ssprofile/\");\r\n loadUser();\r\n \r\n }else{\r\n history.push(\"/login\");\r\n toast.warn(\"You don't have access, Requires login\",{\r\n position:\"top-center\"\r\n })\r\n }\r\n \r\n }, []);\r\n\r\n const onSubmit = async e => {\r\n e.preventDefault();\r\n\r\n var usedr=localStorage.getItem('CurrentUser');\r\n var json = JSON.parse(usedr);\r\n var obj=json[\"user\"];\r\n var cid=obj[\"id\"];\r\n\r\n axios.put(\"https://rationapp-backend.herokuapp.com/shopkeeper/ssprofile/update/\"+cid, user)\r\n .then(res => {\r\n console.log(res);\r\n toast.success(\"Updated Successfully\",{\r\n position : \"top-center\"\r\n })\r\n history.push(\"/shopkeeper/ssprofile\");\r\n }\r\n )\r\n .catch(err => console.log(err));\r\n\r\n };\r\n\r\n const loadUser = async () => {\r\n \r\n var user=localStorage.getItem('CurrentUser');\r\n var json = JSON.parse(user);\r\n var obj=json[\"user\"];\r\n var cid=obj[\"id\"];\r\n\r\n // const result = await axios.get(\"http://localhost:5000/shopkeeper/ssprofile/\"+cid)\r\n axios.get(\"https://rationapp-backend.herokuapp.com/shopkeeper/ssprofile/\"+cid, {\r\n headers: {\r\n 'token': `${localStorage.getItem('Token')}`\r\n }\r\n })\r\n .then(res =>{\r\n setUser(res.data);\r\n console.log(this.state.users);\r\n }).catch(err => console.log(err));\r\n \r\n };\r\n return (\r\n <>\r\n \r\n <div className=\"container p-3\">\r\n <div className=\" mx-auto p-2\">\r\n <h3 className=\"text-center mb-4\"><strong>Edit Profile</strong></h3>\r\n <div className=\"hr\"></div>\r\n <form onSubmit={e => onSubmit(e)}>\r\n <div className=\"form-group pob\">\r\n <input\r\n type=\"text\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Your Firstname\"\r\n name=\"firstname\"\r\n value={firstname}\r\n onChange={e => onInputChange(e)}\r\n />\r\n <span>Firstname</span>\r\n </div>\r\n <div className=\"form-group pob\">\r\n <input\r\n type=\"text\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Your Lastname\"\r\n name=\"lastname\"\r\n value={lastname}\r\n onChange={e => onInputChange(e)}\r\n />\r\n <span>Lastname</span>\r\n </div>\r\n <div className=\"form-group pob\">\r\n <input\r\n type=\"mobileno\"\r\n id=\"inputbox\"\r\n inputMode=\"tel\"\r\n maxLength=\"10\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Your mobile no\"\r\n name=\"mobileno\"\r\n value={mobileno}\r\n onChange={e => onInputChange(e)}\r\n />\r\n <span>Mobile No</span>\r\n </div>\r\n <div className=\"form-group pob\">\r\n <input\r\n type=\"email\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Your E-mail Address\"\r\n name=\"email\"\r\n value={email}\r\n onChange={e => onInputChange(e)}\r\n />\r\n <span>Email</span>\r\n </div>\r\n <div className=\"form-group pob\">\r\n <input\r\n type=\"text\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Your Username\"\r\n name=\"username\"\r\n value={username}\r\n onChange={e => onInputChange(e)}\r\n />\r\n <span>Username</span>\r\n </div>\r\n <div className=\"form-group pob\">\r\n <input\r\n type=\"text\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Your Gender (Male/Female/Other)\"\r\n name=\"gender\"\r\n value={gender}\r\n onChange={e => onInputChange(e)}\r\n />\r\n <span>Gender</span>\r\n </div>\r\n <button className=\"btn btn-primary btn-block\">Update</button>\r\n </form>\r\n </div>\r\n </div>\r\n <ToastContainer />\r\n </>\r\n );\r\n};\r\n\r\nexport default EditUser;","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin\\editAdmin.js",["348","349","350","351"],"import React, { useState, useEffect } from \"react\";\r\nimport axios from \"axios\";\r\nimport { useHistory, useParams } from \"react-router-dom\";\r\nimport { toast, ToastContainer } from \"react-toastify\";\r\n\r\nconst EditAdmin = () => {\r\n let history = useHistory();\r\n const { id } = useParams();\r\n const [user, setUser] = useState({\r\n firstname: \"\",\r\n lastname: \"\",\r\n mobileno: \"\",\r\n email: \"\",\r\n username: \"\",\r\n gender : \"\"\r\n });\r\n\r\n const { firstname, lastname, mobileno, email, username , gender} = user;\r\n const onInputChange = e => {\r\n setUser({ ...user, [e.target.name]: e.target.value });\r\n };\r\n\r\n useEffect(() => {\r\n if(localStorage.getItem('Token')!=null && localStorage.getItem('Token')!='undefined' && localStorage.getItem('CurrentUser')!=null && localStorage.getItem('CurrentUser')!='undefined')\r\n {\r\n history.push(\"/admin/admin-profile\");\r\n loadUser();\r\n \r\n }else{\r\n history.push(\"/admin-panel-login\");\r\n toast.warn(\"You don't have access, Requires login\",{\r\n position:\"top-center\"\r\n })\r\n }\r\n }, []);\r\n\r\n const onSubmit = async e => {\r\n e.preventDefault();\r\n\r\n var usedr=localStorage.getItem('CurrentUser');\r\n var json = JSON.parse(usedr);\r\n var obj=json[\"user\"];\r\n var cid=obj[\"id\"];\r\n\r\n axios.put(\"https://rationapp-backend.herokuapp.com/admin/admin-profile/update/\"+cid, user)\r\n .then(res => {\r\n console.log(res);\r\n \r\n toast.success(\"Profile details updated successfully !\",{\r\n position:\"top-center\"\r\n })\r\n history.push(\"/admin/admin-profile\");\r\n }\r\n )\r\n .catch(err => console.log(err));\r\n\r\n };\r\n\r\n const loadUser = async () => {\r\n var user=localStorage.getItem('CurrentUser');\r\n var json = JSON.parse(user);\r\n var obj=json[\"user\"];\r\n var cid=obj[\"id\"];\r\n\r\n // const result = await axios.get(\"http://localhost:5000/shopkeeper/ssprofile/\"+cid)\r\n axios.get(\"https://rationapp-backend.herokuapp.com/admin/admin-profile/\"+cid, {\r\n headers: {\r\n 'token': `${localStorage.getItem('Token')}`\r\n }\r\n })\r\n .then(res =>{\r\n setUser(res.data);\r\n \r\n }).catch(err => console.log(err));\r\n \r\n };\r\n return (\r\n <>\r\n <div className=\"container p-3\">\r\n <div className=\" mx-auto p-2\">\r\n <h3 className=\"text-center mb-4\"><strong>Edit Profile</strong></h3>\r\n <div className=\"hr\"></div>\r\n <form onSubmit={e => onSubmit(e)}>\r\n <div className=\"form-group\">\r\n <input\r\n type=\"text\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Your Firstname\"\r\n name=\"firstname\"\r\n value={firstname}\r\n onChange={e => onInputChange(e)}\r\n />\r\n </div>\r\n <div className=\"form-group\">\r\n <input\r\n type=\"text\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Your Lastname\"\r\n name=\"lastname\"\r\n value={lastname}\r\n onChange={e => onInputChange(e)}\r\n />\r\n </div>\r\n <div className=\"form-group\">\r\n <input\r\n type=\"mobileno\"\r\n id=\"inputbox\"\r\n inputMode=\"tel\"\r\n maxLength=\"10\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Your mobile no\"\r\n name=\"mobileno\"\r\n value={mobileno}\r\n onChange={e => onInputChange(e)}\r\n />\r\n </div>\r\n <div className=\"form-group\">\r\n <input\r\n type=\"email\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Your E-mail Address\"\r\n name=\"email\"\r\n value={email}\r\n onChange={e => onInputChange(e)}\r\n />\r\n </div>\r\n <div className=\"form-group\">\r\n <input\r\n type=\"text\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Your Username\"\r\n name=\"username\"\r\n value={username}\r\n onChange={e => onInputChange(e)}\r\n />\r\n </div>\r\n <div className=\"form-group\">\r\n <input\r\n type=\"text\"\r\n id=\"inputbox\"\r\n className=\"form-control form-control-lg\"\r\n placeholder=\"Enter Your Gender (Male/Female/Other)\"\r\n name=\"gender\"\r\n value={gender}\r\n onChange={e => onInputChange(e)}\r\n />\r\n </div>\r\n <button className=\"btn btn-primary btn-block\">Update</button>\r\n </form>\r\n </div>\r\n </div>\r\n <ToastContainer />\r\n </>\r\n );\r\n};\r\n\r\nexport default EditAdmin;","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\admin\\supplyStock.js",[],"C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\resetPassword.js",["352","353","354","355","356","357","358"],"import React from 'react';\r\nimport { PureComponent } from 'react';\r\nimport { NavLink , Redirect, useHistory, withRouter} from 'react-router-dom';\r\nimport jwt_decode from \"jwt-decode\";\r\nimport { trackPromise } from 'react-promise-tracker';\r\nimport { ToastContainer, toast } from 'react-toastify';\r\nimport 'react-toastify/dist/ReactToastify.css';\r\nimport $ from 'jquery';\r\nimport axios from 'axios';\r\nimport 'jquery/dist/jquery.min.js';\r\nimport Navbar from '../components/navbar';\r\n\r\nclass ResetPassword extends PureComponent {\r\n \r\n constructor(props) {\r\n super(props);\r\n this.onChangeEmail = this.onChangeEmail.bind(this);\r\n this.onChangePassword = this.onChangePassword.bind(this);\r\n this.onSubmit= this.onSubmit.bind(this);\r\n\r\n\r\n this.state = {\r\n password: '',\r\n cfpassword : '',\r\n errors : {\r\n password: '',\r\n cfpassword: '',\r\n }\r\n };\r\n }\r\n\r\n componentDidMount(){\r\n const obj = this.props.location.pathname.split(\"/\");\r\n const id = obj[2];\r\n const token = obj[3];\r\n\r\n axios.get('https://rationapp-backend.herokuapp.com/reset-password/'+id+'/'+token)\r\n .then(res => \r\n console.log(res.data)\r\n \r\n ).catch(err =>{\r\n console.log(err)\r\n toast.error(\"Session Expired\")\r\n this.props.history.push(\"/reset-password\")\r\n })\r\n\r\n }\r\n\r\n handleChange = (event) => {\r\n event.preventDefault();\r\n\r\n const { name, value } = event.target;\r\n let errors = this.state.errors;\r\n\r\n switch (name) {\r\n case 'password': \r\n errors.password = \r\n value != this.state.cfpassword\r\n ? 'Not Matched'\r\n : 'Matched';\r\n break;\r\n case 'cfpassword': \r\n errors.cfpassword = \r\n value.length < 6\r\n ? 'Password should be contain min 6 characters'\r\n : '';\r\n break;\r\n default:\r\n break;\r\n }\r\n this.setState({errors, [name]: value});\r\n }\r\n \r\n onChangeEmail(e){\r\n this.setState({\r\n cfpassword : e.target.value\r\n });\r\n }\r\n onChangePassword(e){\r\n this.setState({\r\n password : e.target.value\r\n });\r\n }\r\n\r\n \r\n \r\n onSubmit = async (e) =>{\r\n e.preventDefault()\r\n\r\n const user = {\r\n password : this.state.password\r\n }\r\n \r\n const obj = this.props.location.pathname.split(\"/\");\r\n const id = obj[2];\r\n const token = obj[3];\r\n\r\n try{\r\n axios.post('https://rationapp-backend.herokuapp.com/reset-password/'+id+'/'+token,user)\r\n .then(res => \r\n console.log(res.data),\r\n toast.success(\"successsfull\"),\r\n this.props.history.push(\"/login\")\r\n ).catch(err =>{\r\n console.log(err)\r\n toast.error(\"error occured\"+err)\r\n })\r\n \r\n \r\n \r\n }\r\n catch (err){\r\n console.log(err);\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n render(){\r\n return ( \r\n <>\r\n <Navbar />\r\n <div className=\"container\">\r\n <div className=\"login mt-3\">\r\n <h3><strong> Password Reset</strong></h3>\r\n <div className=\"hr\"></div>\r\n \r\n <form onSubmit={this.onSubmit} >\r\n <div className =\"form-group pob\" >\r\n <input type=\"password\" \r\n required\r\n autoFocus\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n name = \"cfpassword\"\r\n autoComplete=\"off\"\r\n onInput={this.handleChange}\r\n value = {this.state.cfpassword}\r\n onChange = {this.onChangeEmail}\r\n />\r\n <span>Password</span>\r\n {this.state.errors.cfpassword.length > 0 && \r\n <div className='emailError'>{this.state.errors.cfpassword}</div>}\r\n \r\n </div>\r\n <div className =\"form-group pob\">\r\n \r\n <input type=\"password\" \r\n required\r\n autoComplete=\"off\"\r\n className = \"form-control\"\r\n id=\"inputbox\"\r\n name=\"password\"\r\n value = {this.state.password}\r\n onInput={this.handleChange}\r\n onChange = {this.onChangePassword}\r\n />\r\n <span>Confirm Password</span>\r\n {this.state.errors.password.length > 0 && \r\n <div className='emailError'>{this.state.errors.password}</div>}\r\n \r\n </div>\r\n <div className=\"form-group\">\r\n <input type=\"submit\" value = \"Submit\" className=\"btn btn-primary\"/>\r\n </div>\r\n\r\n </form>\r\n </div>\r\n \r\n <ToastContainer />\r\n </div>\r\n </>\r\n );\r\n \r\n } \r\n}\r\n \r\nexport default withRouter(ResetPassword);\r\n\r\n\r\n","C:\\Users\\Dnyaneshwar\\Desktop\\rationapp\\rationapp\\src\\components\\navbar2.js",["359","360","361","362"],"import React, { useState } from 'react';\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\nimport { NavLink } from 'react-router-dom';\r\n\r\nimport logo from \"../../src/lo1.gif\";\r\nimport { useEffect } from 'react';\r\n\r\n\r\n\r\n\r\nconst Navbar2 = () => {\r\n const[user , setUser] = useState();\r\n useEffect(()=>{\r\n if(localStorage.getItem('Token')!=null && localStorage.getItem('Token')!='undefined' && localStorage.getItem('CurrentUser')!=null && localStorage.getItem('CurrentUser')!='undefined')\r\n {\r\n var user=localStorage.getItem('CurrentUser');\r\n var json = JSON.parse(user);\r\n var obj=json[\"user\"];\r\n var cid=obj[\"id\"];\r\n var name = obj[\"name\"]\r\n setUser(name);\r\n }\r\n })\r\n\r\n return ( \r\n <>\r\n <div className=\"navbar navbar-expand-lg navbar-light bg-dark\">\r\n <NavLink to=\"/home\" className=\"brand-logo\"><img alt=\"Ration System Logo\" className=\"logo\" src={logo}></img><b> RATION CONTROL</b></NavLink>\r\n <ul class=\"nav nav-pills mb-3 ml-auto\" id=\"pills-tab\" role=\"tablist\">\r\n <li class=\"nav-item\" role=\"presentation\">\r\n <NavLink to=\"/home\" className=\"nav-link\" id=\"\" data-bs-toggle=\"pill\" role=\"tab\" aria-controls=\"pills-home\" aria-selected=\"true\">Home</NavLink>\r\n </li>\r\n <li class=\"nav-item\" role=\"presentation\">\r\n <NavLink to=\"/about\" className=\"nav-link\" id=\"\" data-bs-toggle=\"pill\" href=\"about\" role=\"tab\" aria-controls=\"pills-profile\" aria-selected=\"false\">About</NavLink>\r\n </li>\r\n <li class=\"nav-item\" role=\"presentation\">\r\n <NavLink to=\"/contact\" className=\"nav-link\" id=\"\" href=\"contact\" role=\"tab\" aria-controls=\"pills-contact\" aria-selected=\"false\">Contact</NavLink>\r\n </li>\r\n <li class=\"nav-item\" role=\"presentation\">\r\n <h5 className=\"nav-link text-white border\" id=\"\" role=\"tab\" aria-controls=\"pills-contact\" aria-selected=\"false\">{user}</h5>\r\n </li>\r\n </ul>\r\n </div>\r\n </>\r\n );\r\n \r\n}\r\n \r\nexport default Navbar2;",{"ruleId":"363","replacedBy":"364"},{"ruleId":"365","replacedBy":"366"},{"ruleId":"367","severity":1,"message":"368","line":2,"column":17,"nodeType":"369","messageId":"370","endLine":2,"endColumn":25},{"ruleId":"367","severity":1,"message":"371","line":2,"column":26,"nodeType":"369","messageId":"370","endLine":2,"endColumn":35},{"ruleId":"367","severity":1,"message":"372","line":2,"column":37,"nodeType":"369","messageId":"370","endLine":2,"endColumn":46},{"ruleId":"367","severity":1,"message":"373","line":18,"column":8,"nodeType":"369","messageId":"370","endLine":18,"endColumn":14},{"ruleId":"367","severity":1,"message":"374","line":20,"column":26,"nodeType":"369","messageId":"370","endLine":20,"endColumn":31},{"ruleId":"367","severity":1,"message":"375","line":23,"column":8,"nodeType":"369","messageId":"370","endLine":23,"endColumn":22},{"ruleId":"367","severity":1,"message":"376","line":24,"column":10,"nodeType":"369","messageId":"370","endLine":24,"endColumn":14},{"ruleId":"367","severity":1,"message":"377","line":27,"column":9,"nodeType":"369","messageId":"370","endLine":27,"endColumn":16},{"ruleId":"367","severity":1,"message":"378","line":3,"column":20,"nodeType":"369","messageId":"370","endLine":3,"endColumn":28},{"ruleId":"367","severity":1,"message":"379","line":3,"column":30,"nodeType":"369","messageId":"370","endLine":3,"endColumn":40},{"ruleId":"367","severity":1,"message":"380","line":9,"column":8,"nodeType":"369","messageId":"370","endLine":9,"endColumn":9},{"ruleId":"367","severity":1,"message":"381","line":11,"column":8,"nodeType":"369","messageId":"370","endLine":11,"endColumn":17},{"ruleId":"367","severity":1,"message":"379","line":15,"column":9,"nodeType":"369","messageId":"370","endLine":15,"endColumn":19},{"ruleId":"367","severity":1,"message":"382","line":5,"column":9,"nodeType":"369","messageId":"370","endLine":5,"endColumn":13},{"ruleId":"367","severity":1,"message":"383","line":6,"column":55,"nodeType":"369","messageId":"370","endLine":6,"endColumn":63},{"ruleId":"384","severity":1,"message":"385","line":61,"column":25,"nodeType":"386","endLine":61,"endColumn":105},{"ruleId":"384","severity":1,"message":"385","line":80,"column":25,"nodeType":"386","endLine":80,"endColumn":105},{"ruleId":"384","severity":1,"message":"385","line":99,"column":25,"nodeType":"386","endLine":99,"endColumn":105},{"ruleId":"367","severity":1,"message":"387","line":3,"column":10,"nodeType":"369","messageId":"370","endLine":3,"endColumn":15},{"ruleId":"367","severity":1,"message":"388","line":5,"column":10,"nodeType":"369","messageId":"370","endLine":5,"endColumn":18},{"ruleId":"367","severity":1,"message":"389","line":3,"column":8,"nodeType":"369","messageId":"370","endLine":3,"endColumn":13},{"ruleId":"367","severity":1,"message":"390","line":9,"column":10,"nodeType":"369","messageId":"370","endLine":9,"endColumn":22},{"ruleId":"391","severity":1,"message":"392","line":17,"column":15,"nodeType":"393","messageId":"394","endLine":17,"endColumn":16,"suggestions":"395"},{"ruleId":"391","severity":1,"message":"396","line":17,"column":19,"nodeType":"393","messageId":"394","endLine":17,"endColumn":20,"suggestions":"397"},{"ruleId":"391","severity":1,"message":"398","line":17,"column":27,"nodeType":"393","messageId":"394","endLine":17,"endColumn":28,"suggestions":"399"},{"ruleId":"391","severity":1,"message":"392","line":17,"column":40,"nodeType":"393","messageId":"394","endLine":17,"endColumn":41,"suggestions":"400"},{"ruleId":"391","severity":1,"message":"396","line":17,"column":44,"nodeType":"393","messageId":"394","endLine":17,"endColumn":45,"suggestions":"401"},{"ruleId":"391","severity":1,"message":"398","line":17,"column":52,"nodeType":"393","messageId":"394","endLine":17,"endColumn":53,"suggestions":"402"},{"ruleId":"391","severity":1,"message":"398","line":17,"column":61,"nodeType":"393","messageId":"394","endLine":17,"endColumn":62,"suggestions":"403"},{"ruleId":"391","severity":1,"message":"398","line":17,"column":65,"nodeType":"393","messageId":"394","endLine":17,"endColumn":66,"suggestions":"404"},{"ruleId":"391","severity":1,"message":"396","line":17,"column":81,"nodeType":"393","messageId":"394","endLine":17,"endColumn":82,"suggestions":"405"},{"ruleId":"391","severity":1,"message":"398","line":17,"column":89,"nodeType":"393","messageId":"394","endLine":17,"endColumn":90,"suggestions":"406"},{"ruleId":"391","severity":1,"message":"396","line":17,"column":106,"nodeType":"393","messageId":"394","endLine":17,"endColumn":107,"suggestions":"407"},{"ruleId":"391","severity":1,"message":"398","line":17,"column":114,"nodeType":"393","messageId":"394","endLine":17,"endColumn":115,"suggestions":"408"},{"ruleId":"367","severity":1,"message":"409","line":18,"column":9,"nodeType":"369","messageId":"370","endLine":18,"endColumn":21},{"ruleId":"410","severity":1,"message":"411","line":341,"column":25,"nodeType":"412","messageId":"413","endLine":341,"endColumn":57},{"ruleId":"367","severity":1,"message":"414","line":11,"column":8,"nodeType":"369","messageId":"370","endLine":11,"endColumn":20},{"ruleId":"367","severity":1,"message":"368","line":1,"column":17,"nodeType":"369","messageId":"370","endLine":1,"endColumn":25},{"ruleId":"367","severity":1,"message":"387","line":3,"column":16,"nodeType":"369","messageId":"370","endLine":3,"endColumn":21},{"ruleId":"367","severity":1,"message":"388","line":5,"column":10,"nodeType":"369","messageId":"370","endLine":5,"endColumn":18},{"ruleId":"367","severity":1,"message":"387","line":3,"column":16,"nodeType":"369","messageId":"370","endLine":3,"endColumn":21},{"ruleId":"367","severity":1,"message":"388","line":5,"column":10,"nodeType":"369","messageId":"370","endLine":5,"endColumn":18},{"ruleId":"367","severity":1,"message":"374","line":5,"column":26,"nodeType":"369","messageId":"370","endLine":5,"endColumn":31},{"ruleId":"367","severity":1,"message":"390","line":6,"column":10,"nodeType":"369","messageId":"370","endLine":6,"endColumn":22},{"ruleId":"391","severity":1,"message":"392","line":11,"column":15,"nodeType":"393","messageId":"394","endLine":11,"endColumn":16,"suggestions":"415"},{"ruleId":"391","severity":1,"message":"396","line":11,"column":19,"nodeType":"393","messageId":"394","endLine":11,"endColumn":20,"suggestions":"416"},{"ruleId":"391","severity":1,"message":"398","line":11,"column":27,"nodeType":"393","messageId":"394","endLine":11,"endColumn":28,"suggestions":"417"},{"ruleId":"391","severity":1,"message":"392","line":11,"column":40,"nodeType":"393","messageId":"394","endLine":11,"endColumn":41,"suggestions":"418"},{"ruleId":"391","severity":1,"message":"396","line":11,"column":44,"nodeType":"393","messageId":"394","endLine":11,"endColumn":45,"suggestions":"419"},{"ruleId":"391","severity":1,"message":"398","line":11,"column":52,"nodeType":"393","messageId":"394","endLine":11,"endColumn":53,"suggestions":"420"},{"ruleId":"391","severity":1,"message":"398","line":11,"column":61,"nodeType":"393","messageId":"394","endLine":11,"endColumn":62,"suggestions":"421"},{"ruleId":"391","severity":1,"message":"398","line":11,"column":65,"nodeType":"393","messageId":"394","endLine":11,"endColumn":66,"suggestions":"422"},{"ruleId":"391","severity":1,"message":"396","line":11,"column":81,"nodeType":"393","messageId":"394","endLine":11,"endColumn":82,"suggestions":"423"},{"ruleId":"391","severity":1,"message":"398","line":11,"column":89,"nodeType":"393","messageId":"394","endLine":11,"endColumn":90,"suggestions":"424"},{"ruleId":"391","severity":1,"message":"396","line":11,"column":106,"nodeType":"393","messageId":"394","endLine":11,"endColumn":107,"suggestions":"425"},{"ruleId":"391","severity":1,"message":"398","line":11,"column":114,"nodeType":"393","messageId":"394","endLine":11,"endColumn":115,"suggestions":"426"},{"ruleId":"367","severity":1,"message":"409","line":12,"column":9,"nodeType":"369","messageId":"370","endLine":12,"endColumn":21},{"ruleId":"367","severity":1,"message":"427","line":5,"column":10,"nodeType":"369","messageId":"370","endLine":5,"endColumn":24},{"ruleId":"367","severity":1,"message":"428","line":6,"column":9,"nodeType":"369","messageId":"370","endLine":6,"endColumn":19},{"ruleId":"367","severity":1,"message":"379","line":7,"column":9,"nodeType":"369","messageId":"370","endLine":7,"endColumn":19},{"ruleId":"391","severity":1,"message":"392","line":12,"column":15,"nodeType":"393","messageId":"394","endLine":12,"endColumn":16,"suggestions":"429"},{"ruleId":"391","severity":1,"message":"396","line":12,"column":19,"nodeType":"393","messageId":"394","endLine":12,"endColumn":20,"suggestions":"430"},{"ruleId":"391","severity":1,"message":"398","line":12,"column":27,"nodeType":"393","messageId":"394","endLine":12,"endColumn":28,"suggestions":"431"},{"ruleId":"391","severity":1,"message":"392","line":12,"column":40,"nodeType":"393","messageId":"394","endLine":12,"endColumn":41,"suggestions":"432"},{"ruleId":"391","severity":1,"message":"396","line":12,"column":44,"nodeType":"393","messageId":"394","endLine":12,"endColumn":45,"suggestions":"433"},{"ruleId":"391","severity":1,"message":"398","line":12,"column":52,"nodeType":"393","messageId":"394","endLine":12,"endColumn":53,"suggestions":"434"},{"ruleId":"391","severity":1,"message":"398","line":12,"column":61,"nodeType":"393","messageId":"394","endLine":12,"endColumn":62,"suggestions":"435"},{"ruleId":"391","severity":1,"message":"398","line":12,"column":65,"nodeType":"393","messageId":"394","endLine":12,"endColumn":66,"suggestions":"436"},{"ruleId":"391","severity":1,"message":"396","line":12,"column":81,"nodeType":"393","messageId":"394","endLine":12,"endColumn":82,"suggestions":"437"},{"ruleId":"391","severity":1,"message":"398","line":12,"column":89,"nodeType":"393","messageId":"394","endLine":12,"endColumn":90,"suggestions":"438"},{"ruleId":"391","severity":1,"message":"396","line":12,"column":106,"nodeType":"393","messageId":"394","endLine":12,"endColumn":107,"suggestions":"439"},{"ruleId":"391","severity":1,"message":"398","line":12,"column":114,"nodeType":"393","messageId":"394","endLine":12,"endColumn":115,"suggestions":"440"},{"ruleId":"367","severity":1,"message":"409","line":13,"column":9,"nodeType":"369","messageId":"370","endLine":13,"endColumn":21},{"ruleId":"441","severity":1,"message":"442","line":25,"column":80,"nodeType":"443","messageId":"444","endLine":25,"endColumn":82},{"ruleId":"441","severity":1,"message":"442","line":25,"column":177,"nodeType":"443","messageId":"444","endLine":25,"endColumn":179},{"ruleId":"441","severity":1,"message":"442","line":29,"column":96,"nodeType":"443","messageId":"444","endLine":29,"endColumn":98},{"ruleId":"410","severity":1,"message":"411","line":334,"column":29,"nodeType":"412","messageId":"413","endLine":334,"endColumn":61},{"ruleId":"367","severity":1,"message":"445","line":13,"column":8,"nodeType":"369","messageId":"370","endLine":13,"endColumn":15},{"ruleId":"441","severity":1,"message":"442","line":96,"column":80,"nodeType":"443","messageId":"444","endLine":96,"endColumn":82},{"ruleId":"441","severity":1,"message":"442","line":96,"column":177,"nodeType":"443","messageId":"444","endLine":96,"endColumn":179},{"ruleId":"446","severity":1,"message":"447","line":137,"column":13,"nodeType":"369","messageId":"448","endLine":137,"endColumn":18},{"ruleId":"449","severity":1,"message":"450","line":138,"column":44,"nodeType":"451","messageId":"452","endLine":138,"endColumn":46},{"ruleId":"441","severity":1,"message":"453","line":138,"column":63,"nodeType":"443","messageId":"444","endLine":138,"endColumn":65},{"ruleId":"441","severity":1,"message":"453","line":140,"column":36,"nodeType":"443","messageId":"444","endLine":140,"endColumn":38},{"ruleId":"454","severity":1,"message":"455","line":142,"column":25,"nodeType":"456","messageId":"457","endLine":142,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":143,"column":25,"nodeType":"456","messageId":"457","endLine":143,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":144,"column":25,"nodeType":"456","messageId":"457","endLine":144,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":145,"column":25,"nodeType":"456","messageId":"457","endLine":145,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":146,"column":25,"nodeType":"456","messageId":"457","endLine":146,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":147,"column":25,"nodeType":"456","messageId":"457","endLine":147,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":148,"column":25,"nodeType":"456","messageId":"457","endLine":148,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":149,"column":25,"nodeType":"456","messageId":"457","endLine":149,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":150,"column":25,"nodeType":"456","messageId":"457","endLine":150,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":151,"column":25,"nodeType":"456","messageId":"457","endLine":151,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":152,"column":25,"nodeType":"456","messageId":"457","endLine":152,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":153,"column":25,"nodeType":"456","messageId":"457","endLine":153,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":154,"column":25,"nodeType":"456","messageId":"457","endLine":154,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":155,"column":25,"nodeType":"456","messageId":"457","endLine":155,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":156,"column":25,"nodeType":"456","messageId":"457","endLine":156,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":157,"column":25,"nodeType":"456","messageId":"457","endLine":157,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":158,"column":25,"nodeType":"456","messageId":"457","endLine":158,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":159,"column":25,"nodeType":"456","messageId":"457","endLine":159,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":160,"column":25,"nodeType":"456","messageId":"457","endLine":160,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":161,"column":25,"nodeType":"456","messageId":"457","endLine":161,"endColumn":41},{"ruleId":"441","severity":1,"message":"453","line":164,"column":36,"nodeType":"443","messageId":"444","endLine":164,"endColumn":38},{"ruleId":"454","severity":1,"message":"455","line":166,"column":25,"nodeType":"456","messageId":"457","endLine":166,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":167,"column":25,"nodeType":"456","messageId":"457","endLine":167,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":168,"column":25,"nodeType":"456","messageId":"457","endLine":168,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":169,"column":25,"nodeType":"456","messageId":"457","endLine":169,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":170,"column":25,"nodeType":"456","messageId":"457","endLine":170,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":171,"column":25,"nodeType":"456","messageId":"457","endLine":171,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":172,"column":25,"nodeType":"456","messageId":"457","endLine":172,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":173,"column":25,"nodeType":"456","messageId":"457","endLine":173,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":174,"column":25,"nodeType":"456","messageId":"457","endLine":174,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":175,"column":25,"nodeType":"456","messageId":"457","endLine":175,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":176,"column":25,"nodeType":"456","messageId":"457","endLine":176,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":177,"column":25,"nodeType":"456","messageId":"457","endLine":177,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":178,"column":25,"nodeType":"456","messageId":"457","endLine":178,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":179,"column":25,"nodeType":"456","messageId":"457","endLine":179,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":180,"column":25,"nodeType":"456","messageId":"457","endLine":180,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":181,"column":25,"nodeType":"456","messageId":"457","endLine":181,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":182,"column":25,"nodeType":"456","messageId":"457","endLine":182,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":183,"column":25,"nodeType":"456","messageId":"457","endLine":183,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":184,"column":25,"nodeType":"456","messageId":"457","endLine":184,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":185,"column":25,"nodeType":"456","messageId":"457","endLine":185,"endColumn":41},{"ruleId":"441","severity":1,"message":"453","line":188,"column":36,"nodeType":"443","messageId":"444","endLine":188,"endColumn":38},{"ruleId":"454","severity":1,"message":"455","line":190,"column":25,"nodeType":"456","messageId":"457","endLine":190,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":191,"column":25,"nodeType":"456","messageId":"457","endLine":191,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":192,"column":25,"nodeType":"456","messageId":"457","endLine":192,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":193,"column":25,"nodeType":"456","messageId":"457","endLine":193,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":194,"column":25,"nodeType":"456","messageId":"457","endLine":194,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":195,"column":25,"nodeType":"456","messageId":"457","endLine":195,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":196,"column":25,"nodeType":"456","messageId":"457","endLine":196,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":197,"column":25,"nodeType":"456","messageId":"457","endLine":197,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":198,"column":25,"nodeType":"456","messageId":"457","endLine":198,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":199,"column":25,"nodeType":"456","messageId":"457","endLine":199,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":200,"column":25,"nodeType":"456","messageId":"457","endLine":200,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":201,"column":25,"nodeType":"456","messageId":"457","endLine":201,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":202,"column":25,"nodeType":"456","messageId":"457","endLine":202,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":203,"column":25,"nodeType":"456","messageId":"457","endLine":203,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":204,"column":25,"nodeType":"456","messageId":"457","endLine":204,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":205,"column":25,"nodeType":"456","messageId":"457","endLine":205,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":206,"column":25,"nodeType":"456","messageId":"457","endLine":206,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":207,"column":25,"nodeType":"456","messageId":"457","endLine":207,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":208,"column":25,"nodeType":"456","messageId":"457","endLine":208,"endColumn":41},{"ruleId":"454","severity":1,"message":"455","line":209,"column":25,"nodeType":"456","messageId":"457","endLine":209,"endColumn":41},{"ruleId":"367","severity":1,"message":"458","line":261,"column":13,"nodeType":"369","messageId":"370","endLine":261,"endColumn":19},{"ruleId":"367","severity":1,"message":"459","line":3,"column":10,"nodeType":"369","messageId":"370","endLine":3,"endColumn":17},{"ruleId":"367","severity":1,"message":"379","line":6,"column":9,"nodeType":"369","messageId":"370","endLine":6,"endColumn":19},{"ruleId":"391","severity":1,"message":"392","line":14,"column":15,"nodeType":"393","messageId":"394","endLine":14,"endColumn":16,"suggestions":"460"},{"ruleId":"391","severity":1,"message":"396","line":14,"column":19,"nodeType":"393","messageId":"394","endLine":14,"endColumn":20,"suggestions":"461"},{"ruleId":"391","severity":1,"message":"398","line":14,"column":27,"nodeType":"393","messageId":"394","endLine":14,"endColumn":28,"suggestions":"462"},{"ruleId":"391","severity":1,"message":"392","line":14,"column":40,"nodeType":"393","messageId":"394","endLine":14,"endColumn":41,"suggestions":"463"},{"ruleId":"391","severity":1,"message":"396","line":14,"column":44,"nodeType":"393","messageId":"394","endLine":14,"endColumn":45,"suggestions":"464"},{"ruleId":"391","severity":1,"message":"398","line":14,"column":52,"nodeType":"393","messageId":"394","endLine":14,"endColumn":53,"suggestions":"465"},{"ruleId":"391","severity":1,"message":"398","line":14,"column":61,"nodeType":"393","messageId":"394","endLine":14,"endColumn":62,"suggestions":"466"},{"ruleId":"391","severity":1,"message":"398","line":14,"column":65,"nodeType":"393","messageId":"394","endLine":14,"endColumn":66,"suggestions":"467"},{"ruleId":"391","severity":1,"message":"396","line":14,"column":81,"nodeType":"393","messageId":"394","endLine":14,"endColumn":82,"suggestions":"468"},{"ruleId":"391","severity":1,"message":"398","line":14,"column":89,"nodeType":"393","messageId":"394","endLine":14,"endColumn":90,"suggestions":"469"},{"ruleId":"391","severity":1,"message":"396","line":14,"column":106,"nodeType":"393","messageId":"394","endLine":14,"endColumn":107,"suggestions":"470"},{"ruleId":"391","severity":1,"message":"398","line":14,"column":114,"nodeType":"393","messageId":"394","endLine":14,"endColumn":115,"suggestions":"471"},{"ruleId":"367","severity":1,"message":"409","line":15,"column":9,"nodeType":"369","messageId":"370","endLine":15,"endColumn":21},{"ruleId":"441","severity":1,"message":"442","line":27,"column":80,"nodeType":"443","messageId":"444","endLine":27,"endColumn":82},{"ruleId":"441","severity":1,"message":"442","line":27,"column":177,"nodeType":"443","messageId":"444","endLine":27,"endColumn":179},{"ruleId":"410","severity":1,"message":"411","line":318,"column":29,"nodeType":"412","messageId":"413","endLine":318,"endColumn":61},{"ruleId":"367","severity":1,"message":"472","line":6,"column":8,"nodeType":"369","messageId":"370","endLine":6,"endColumn":14},{"ruleId":"367","severity":1,"message":"427","line":9,"column":10,"nodeType":"369","messageId":"370","endLine":9,"endColumn":24},{"ruleId":"441","severity":1,"message":"442","line":41,"column":80,"nodeType":"443","messageId":"444","endLine":41,"endColumn":82},{"ruleId":"441","severity":1,"message":"442","line":41,"column":177,"nodeType":"443","messageId":"444","endLine":41,"endColumn":179},{"ruleId":"367","severity":1,"message":"378","line":7,"column":9,"nodeType":"369","messageId":"370","endLine":7,"endColumn":17},{"ruleId":"367","severity":1,"message":"379","line":7,"column":18,"nodeType":"369","messageId":"370","endLine":7,"endColumn":28},{"ruleId":"367","severity":1,"message":"427","line":8,"column":10,"nodeType":"369","messageId":"370","endLine":8,"endColumn":24},{"ruleId":"367","severity":1,"message":"445","line":9,"column":8,"nodeType":"369","messageId":"370","endLine":9,"endColumn":15},{"ruleId":"441","severity":1,"message":"442","line":53,"column":80,"nodeType":"443","messageId":"444","endLine":53,"endColumn":82},{"ruleId":"441","severity":1,"message":"442","line":53,"column":177,"nodeType":"443","messageId":"444","endLine":53,"endColumn":179},{"ruleId":"367","severity":1,"message":"472","line":9,"column":8,"nodeType":"369","messageId":"370","endLine":9,"endColumn":14},{"ruleId":"441","severity":1,"message":"442","line":43,"column":80,"nodeType":"443","messageId":"444","endLine":43,"endColumn":82},{"ruleId":"441","severity":1,"message":"442","line":43,"column":177,"nodeType":"443","messageId":"444","endLine":43,"endColumn":179},{"ruleId":"367","severity":1,"message":"427","line":8,"column":10,"nodeType":"369","messageId":"370","endLine":8,"endColumn":24},{"ruleId":"441","severity":1,"message":"442","line":22,"column":80,"nodeType":"443","messageId":"444","endLine":22,"endColumn":82},{"ruleId":"441","severity":1,"message":"442","line":22,"column":177,"nodeType":"443","messageId":"444","endLine":22,"endColumn":179},{"ruleId":"367","severity":1,"message":"459","line":3,"column":10,"nodeType":"369","messageId":"370","endLine":3,"endColumn":17},{"ruleId":"367","severity":1,"message":"379","line":3,"column":20,"nodeType":"369","messageId":"370","endLine":3,"endColumn":30},{"ruleId":"367","severity":1,"message":"368","line":1,"column":28,"nodeType":"369","messageId":"370","endLine":1,"endColumn":36},{"ruleId":"367","severity":1,"message":"473","line":2,"column":9,"nodeType":"369","messageId":"370","endLine":2,"endColumn":14},{"ruleId":"367","severity":1,"message":"378","line":2,"column":16,"nodeType":"369","messageId":"370","endLine":2,"endColumn":24},{"ruleId":"474","severity":1,"message":"475","line":12,"column":7,"nodeType":"476","endLine":12,"endColumn":9,"suggestions":"477"},{"ruleId":"367","severity":1,"message":"478","line":5,"column":10,"nodeType":"369","messageId":"370","endLine":5,"endColumn":26},{"ruleId":"367","severity":1,"message":"445","line":6,"column":8,"nodeType":"369","messageId":"370","endLine":6,"endColumn":15},{"ruleId":"367","severity":1,"message":"445","line":5,"column":8,"nodeType":"369","messageId":"370","endLine":5,"endColumn":15},{"ruleId":"367","severity":1,"message":"479","line":9,"column":11,"nodeType":"369","messageId":"370","endLine":9,"endColumn":13},{"ruleId":"441","severity":1,"message":"442","line":25,"column":76,"nodeType":"443","messageId":"444","endLine":25,"endColumn":78},{"ruleId":"441","severity":1,"message":"442","line":25,"column":173,"nodeType":"443","messageId":"444","endLine":25,"endColumn":175},{"ruleId":"474","severity":1,"message":"475","line":37,"column":6,"nodeType":"476","endLine":37,"endColumn":8,"suggestions":"480"},{"ruleId":"367","severity":1,"message":"479","line":8,"column":11,"nodeType":"369","messageId":"370","endLine":8,"endColumn":13},{"ruleId":"441","severity":1,"message":"442","line":24,"column":76,"nodeType":"443","messageId":"444","endLine":24,"endColumn":78},{"ruleId":"441","severity":1,"message":"442","line":24,"column":173,"nodeType":"443","messageId":"444","endLine":24,"endColumn":175},{"ruleId":"474","severity":1,"message":"475","line":35,"column":6,"nodeType":"476","endLine":35,"endColumn":8,"suggestions":"481"},{"ruleId":"367","severity":1,"message":"459","line":3,"column":10,"nodeType":"369","messageId":"370","endLine":3,"endColumn":17},{"ruleId":"367","severity":1,"message":"378","line":3,"column":20,"nodeType":"369","messageId":"370","endLine":3,"endColumn":28},{"ruleId":"367","severity":1,"message":"379","line":3,"column":30,"nodeType":"369","messageId":"370","endLine":3,"endColumn":40},{"ruleId":"367","severity":1,"message":"482","line":4,"column":8,"nodeType":"369","messageId":"370","endLine":4,"endColumn":18},{"ruleId":"367","severity":1,"message":"390","line":5,"column":10,"nodeType":"369","messageId":"370","endLine":5,"endColumn":22},{"ruleId":"367","severity":1,"message":"380","line":8,"column":8,"nodeType":"369","messageId":"370","endLine":8,"endColumn":9},{"ruleId":"441","severity":1,"message":"442","line":58,"column":21,"nodeType":"443","messageId":"444","endLine":58,"endColumn":23},{"ruleId":"474","severity":1,"message":"483","line":13,"column":9,"nodeType":"369","endLine":13,"endColumn":18,"suggestions":"484"},{"ruleId":"441","severity":1,"message":"442","line":14,"column":84,"nodeType":"443","messageId":"444","endLine":14,"endColumn":86},{"ruleId":"441","severity":1,"message":"442","line":14,"column":181,"nodeType":"443","messageId":"444","endLine":14,"endColumn":183},{"ruleId":"367","severity":1,"message":"485","line":19,"column":21,"nodeType":"369","messageId":"370","endLine":19,"endColumn":24},"no-native-reassign",["486"],"no-negated-in-lhs",["487"],"no-unused-vars","'useState' is defined but never used.","Identifier","unusedVar","'Component' is defined but never used.","'useEffect' is defined but never used.","'Navbar' is defined but never used.","'toast' is defined but never used.","'Ssstockdetails' is defined but never used.","'Next' is defined but never used.","'history' is assigned a value but never used.","'Redirect' is defined but never used.","'useHistory' is defined but never used.","'$' is defined but never used.","'Ssprofile' is defined but never used.","'Link' is defined but never used.","'FaGoMail' is defined but never used.","jsx-a11y/anchor-is-valid","The href attribute requires a valid value to be accessible. Provide a valid, navigable address as the href value. If you cannot provide a valid href, but still need the element to resemble a link, use a button and change it with appropriate styles. Learn more: https://github.com/evcohen/eslint-plugin-jsx-a11y/blob/master/docs/rules/anchor-is-valid.md","JSXOpeningElement","'Badge' is defined but never used.","'Dropdown' is defined but never used.","'axios' is defined but never used.","'trackPromise' is defined but never used.","no-useless-escape","Unnecessary escape character: \\[.","Literal","unnecessaryEscape",["488","489"],"Unnecessary escape character: \\..",["490","491"],"Unnecessary escape character: \\\".",["492","493"],["494","495"],["496","497"],["498","499"],["500","501"],["502","503"],["504","505"],["506","507"],["508","509"],["510","511"],"'validateForm' is assigned a value but never used.","react/jsx-no-duplicate-props","No duplicate props allowed","JSXAttribute","noDuplicateProps","'AdminProfile' is defined but never used.",["512","513"],["514","515"],["516","517"],["518","519"],["520","521"],["522","523"],["524","525"],["526","527"],["528","529"],["530","531"],["532","533"],["534","535"],"'ToastContainer' is defined but never used.","'DatePicker' is defined but never used.",["536","537"],["538","539"],["540","541"],["542","543"],["544","545"],["546","547"],["548","549"],["550","551"],["552","553"],["554","555"],["556","557"],["558","559"],"eqeqeq","Expected '!==' and instead saw '!='.","BinaryExpression","unexpected","'Navbar2' is defined but never used.","no-redeclare","'email' is already defined.","redeclared","array-callback-return","Array.prototype.map() expects a return value from arrow function.","ArrowFunctionExpression","expectedInside","Expected '===' and instead saw '=='.","react/no-direct-mutation-state","Do not mutate state directly. Use setState().","MemberExpression","noDirectMutation","'userID' is assigned a value but never used.","'NavLink' is defined but never used.",["560","561"],["562","563"],["564","565"],["566","567"],["568","569"],["570","571"],["572","573"],["574","575"],["576","577"],["578","579"],["580","581"],["582","583"],"'Loader' is defined but never used.","'Route' is defined but never used.","react-hooks/exhaustive-deps","React Hook useEffect has a missing dependency: 'history'. Either include it or remove the dependency array.","ArrayExpression",["584"],"'LoadingIndicator' is defined but never used.","'id' is assigned a value but never used.",["585"],["586"],"'jwt_decode' is defined but never used.","React Hook useEffect contains a call to 'setUser'. Without a list of dependencies, this can lead to an infinite chain of updates. To fix this, pass [] as a second argument to the useEffect Hook.",["587"],"'cid' is assigned a value but never used.","no-global-assign","no-unsafe-negation",{"messageId":"588","fix":"589","desc":"590"},{"messageId":"591","fix":"592","desc":"593"},{"messageId":"588","fix":"594","desc":"590"},{"messageId":"591","fix":"595","desc":"593"},{"messageId":"588","fix":"596","desc":"590"},{"messageId":"591","fix":"597","desc":"593"},{"messageId":"588","fix":"598","desc":"590"},{"messageId":"591","fix":"599","desc":"593"},{"messageId":"588","fix":"600","desc":"590"},{"messageId":"591","fix":"601","desc":"593"},{"messageId":"588","fix":"602","desc":"590"},{"messageId":"591","fix":"603","desc":"593"},{"messageId":"588","fix":"604","desc":"590"},{"messageId":"591","fix":"605","desc":"593"},{"messageId":"588","fix":"606","desc":"590"},{"messageId":"591","fix":"607","desc":"593"},{"messageId":"588","fix":"608","desc":"590"},{"messageId":"591","fix":"609","desc":"593"},{"messageId":"588","fix":"610","desc":"590"},{"messageId":"591","fix":"611","desc":"593"},{"messageId":"588","fix":"612","desc":"590"},{"messageId":"591","fix":"613","desc":"593"},{"messageId":"588","fix":"614","desc":"590"},{"messageId":"591","fix":"615","desc":"593"},{"messageId":"588","fix":"616","desc":"590"},{"messageId":"591","fix":"617","desc":"593"},{"messageId":"588","fix":"618","desc":"590"},{"messageId":"591","fix":"619","desc":"593"},{"messageId":"588","fix":"620","desc":"590"},{"messageId":"591","fix":"621","desc":"593"},{"messageId":"588","fix":"622","desc":"590"},{"messageId":"591","fix":"623","desc":"593"},{"messageId":"588","fix":"624","desc":"590"},{"messageId":"591","fix":"625","desc":"593"},{"messageId":"588","fix":"626","desc":"590"},{"messageId":"591","fix":"627","desc":"593"},{"messageId":"588","fix":"628","desc":"590"},{"messageId":"591","fix":"629","desc":"593"},{"messageId":"588","fix":"630","desc":"590"},{"messageId":"591","fix":"631","desc":"593"},{"messageId":"588","fix":"632","desc":"590"},{"messageId":"591","fix":"633","desc":"593"},{"messageId":"588","fix":"634","desc":"590"},{"messageId":"591","fix":"635","desc":"593"},{"messageId":"588","fix":"636","desc":"590"},{"messageId":"591","fix":"637","desc":"593"},{"messageId":"588","fix":"638","desc":"590"},{"messageId":"591","fix":"639","desc":"593"},{"messageId":"588","fix":"640","desc":"590"},{"messageId":"591","fix":"641","desc":"593"},{"messageId":"588","fix":"642","desc":"590"},{"messageId":"591","fix":"643","desc":"593"},{"messageId":"588","fix":"644","desc":"590"},{"messageId":"591","fix":"645","desc":"593"},{"messageId":"588","fix":"646","desc":"590"},{"messageId":"591","fix":"647","desc":"593"},{"messageId":"588","fix":"648","desc":"590"},{"messageId":"591","fix":"649","desc":"593"},{"messageId":"588","fix":"650","desc":"590"},{"messageId":"591","fix":"651","desc":"593"},{"messageId":"588","fix":"652","desc":"590"},{"messageId":"591","fix":"653","desc":"593"},{"messageId":"588","fix":"654","desc":"590"},{"messageId":"591","fix":"655","desc":"593"},{"messageId":"588","fix":"656","desc":"590"},{"messageId":"591","fix":"657","desc":"593"},{"messageId":"588","fix":"658","desc":"590"},{"messageId":"591","fix":"659","desc":"593"},{"messageId":"588","fix":"660","desc":"590"},{"messageId":"591","fix":"661","desc":"593"},{"messageId":"588","fix":"662","desc":"590"},{"messageId":"591","fix":"663","desc":"593"},{"messageId":"588","fix":"664","desc":"590"},{"messageId":"591","fix":"665","desc":"593"},{"messageId":"588","fix":"666","desc":"590"},{"messageId":"591","fix":"667","desc":"593"},{"messageId":"588","fix":"668","desc":"590"},{"messageId":"591","fix":"669","desc":"593"},{"messageId":"588","fix":"670","desc":"590"},{"messageId":"591","fix":"671","desc":"593"},{"messageId":"588","fix":"672","desc":"590"},{"messageId":"591","fix":"673","desc":"593"},{"messageId":"588","fix":"674","desc":"590"},{"messageId":"591","fix":"675","desc":"593"},{"messageId":"588","fix":"676","desc":"590"},{"messageId":"591","fix":"677","desc":"593"},{"messageId":"588","fix":"678","desc":"590"},{"messageId":"591","fix":"679","desc":"593"},{"messageId":"588","fix":"680","desc":"590"},{"messageId":"591","fix":"681","desc":"593"},{"messageId":"588","fix":"682","desc":"590"},{"messageId":"591","fix":"683","desc":"593"},{"messageId":"588","fix":"684","desc":"590"},{"messageId":"591","fix":"685","desc":"593"},{"messageId":"588","fix":"686","desc":"590"},{"messageId":"591","fix":"687","desc":"593"},{"desc":"688","fix":"689"},{"desc":"688","fix":"690"},{"desc":"688","fix":"691"},{"desc":"692","fix":"693"},"removeEscape",{"range":"694","text":"695"},"Remove the `\\`. This maintains the current functionality.","escapeBackslash",{"range":"696","text":"697"},"Replace the `\\` with `\\\\` to include the actual backslash character.",{"range":"698","text":"695"},{"range":"699","text":"697"},{"range":"700","text":"695"},{"range":"701","text":"697"},{"range":"702","text":"695"},{"range":"703","text":"697"},{"range":"704","text":"695"},{"range":"705","text":"697"},{"range":"706","text":"695"},{"range":"707","text":"697"},{"range":"708","text":"695"},{"range":"709","text":"697"},{"range":"710","text":"695"},{"range":"711","text":"697"},{"range":"712","text":"695"},{"range":"713","text":"697"},{"range":"714","text":"695"},{"range":"715","text":"697"},{"range":"716","text":"695"},{"range":"717","text":"697"},{"range":"718","text":"695"},{"range":"719","text":"697"},{"range":"720","text":"695"},{"range":"721","text":"697"},{"range":"722","text":"695"},{"range":"723","text":"697"},{"range":"724","text":"695"},{"range":"725","text":"697"},{"range":"726","text":"695"},{"range":"727","text":"697"},{"range":"728","text":"695"},{"range":"729","text":"697"},{"range":"730","text":"695"},{"range":"731","text":"697"},{"range":"732","text":"695"},{"range":"733","text":"697"},{"range":"734","text":"695"},{"range":"735","text":"697"},{"range":"736","text":"695"},{"range":"737","text":"697"},{"range":"738","text":"695"},{"range":"739","text":"697"},{"range":"740","text":"695"},{"range":"741","text":"697"},{"range":"742","text":"695"},{"range":"743","text":"697"},{"range":"744","text":"695"},{"range":"745","text":"697"},{"range":"746","text":"695"},{"range":"747","text":"697"},{"range":"748","text":"695"},{"range":"749","text":"697"},{"range":"750","text":"695"},{"range":"751","text":"697"},{"range":"752","text":"695"},{"range":"753","text":"697"},{"range":"754","text":"695"},{"range":"755","text":"697"},{"range":"756","text":"695"},{"range":"757","text":"697"},{"range":"758","text":"695"},{"range":"759","text":"697"},{"range":"760","text":"695"},{"range":"761","text":"697"},{"range":"762","text":"695"},{"range":"763","text":"697"},{"range":"764","text":"695"},{"range":"765","text":"697"},{"range":"766","text":"695"},{"range":"767","text":"697"},{"range":"768","text":"695"},{"range":"769","text":"697"},{"range":"770","text":"695"},{"range":"771","text":"697"},{"range":"772","text":"695"},{"range":"773","text":"697"},{"range":"774","text":"695"},{"range":"775","text":"697"},{"range":"776","text":"695"},{"range":"777","text":"697"},{"range":"778","text":"695"},{"range":"779","text":"697"},{"range":"780","text":"695"},{"range":"781","text":"697"},{"range":"782","text":"695"},{"range":"783","text":"697"},{"range":"784","text":"695"},{"range":"785","text":"697"},{"range":"786","text":"695"},{"range":"787","text":"697"},{"range":"788","text":"695"},{"range":"789","text":"697"},{"range":"790","text":"695"},{"range":"791","text":"697"},"Update the dependencies array to be: [history]",{"range":"792","text":"793"},{"range":"794","text":"793"},{"range":"795","text":"793"},"Add dependencies array: []",{"range":"796","text":"797"},[658,659],"",[658,658],"\\",[662,663],[662,662],[670,671],[670,670],[683,684],[683,683],[687,688],[687,687],[695,696],[695,695],[704,705],[704,704],[708,709],[708,708],[724,725],[724,724],[732,733],[732,732],[749,750],[749,749],[757,758],[757,757],[382,383],[382,382],[386,387],[386,386],[394,395],[394,394],[407,408],[407,407],[411,412],[411,411],[419,420],[419,419],[428,429],[428,428],[432,433],[432,432],[448,449],[448,448],[456,457],[456,456],[473,474],[473,473],[481,482],[481,481],[373,374],[373,373],[377,378],[377,377],[385,386],[385,385],[398,399],[398,398],[402,403],[402,402],[410,411],[410,410],[419,420],[419,419],[423,424],[423,423],[439,440],[439,439],[447,448],[447,447],[464,465],[464,464],[472,473],[472,472],[529,530],[529,529],[533,534],[533,533],[541,542],[541,541],[554,555],[554,554],[558,559],[558,558],[566,567],[566,566],[575,576],[575,575],[579,580],[579,579],[595,596],[595,595],[603,604],[603,603],[620,621],[620,620],[628,629],[628,628],[344,346],"[history]",[1131,1133],[1103,1105],[802,802],", []"]