-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.eslintcache
More file actions
1 lines (1 loc) · 295 KB
/
.eslintcache
File metadata and controls
1 lines (1 loc) · 295 KB
1
[{"C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\index.js":"1","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\App.js":"2","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\serviceWorker.js":"3","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\reducer\\index.js":"4","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\MainPage.js":"5","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Login.js":"6","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Signup.js":"7","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\hoc\\auth.js":"8","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\reducer\\userReducer.js":"9","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Status.js":"10","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Curriculum.js":"11","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Notice.js":"12","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Welcome.js":"13","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Professor.js":"14","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Timetable.js":"15","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Userquestion.js":"16","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Question.js":"17","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Bestqa.js":"18","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\DataModify.js":"19","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\components\\Menu.js":"20","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\components\\Footer.js":"21","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\components\\Header.js":"22","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\actions\\userAction.js":"23","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\actions\\types.js":"24","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Userquestionlist.js":"25","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\QuestionList.js":"26","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\DataModifyList.js":"27","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\utils\\axios.js":"28","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Adminpage.js":"29","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\utils\\dep.js":"30","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\ProfessorModify.js":"31","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\ProfessorAdd.js":"32","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\TimetableAdd.js":"33","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\TimetableModify.js":"34","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Fallbacklist.js":"35","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\AdminRequest.js":"36","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Fallback.js":"37","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\index.js":"38","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\serviceWorker.js":"39","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\App.js":"40","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\reducer\\index.js":"41","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Signup.js":"42","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\hoc\\auth.js":"43","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Login.js":"44","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\MainPage.js":"45","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\reducer\\userReducer.js":"46","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Welcome.js":"47","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Curriculum.js":"48","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Userquestion.js":"49","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Status.js":"50","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Notice.js":"51","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Timetable.js":"52","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Question.js":"53","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Professor.js":"54","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Adminpage.js":"55","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\DataModify.js":"56","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Bestqa.js":"57","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\actions\\userAction.js":"58","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\components\\Header.js":"59","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\components\\Menu.js":"60","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\components\\Footer.js":"61","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\actions\\types.js":"62","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Userquestionlist.js":"63","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\QuestionList.js":"64","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\DataModifyList.js":"65","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Fallback.js":"66","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\TimetableModify.js":"67","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\AdminRequest.js":"68","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\ProfessorModify.js":"69","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\ProfessorAdd.js":"70","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\TimetableAdd.js":"71","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\utils\\axios.js":"72","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Fallbacklist.js":"73","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\AdminRequestList.js":"74"},{"size":1076,"mtime":1607858755749,"results":"75","hashOfConfig":"76"},{"size":1010,"mtime":1612601919198,"results":"77","hashOfConfig":"76"},{"size":5227,"mtime":1607858755756,"results":"78","hashOfConfig":"76"},{"size":161,"mtime":1607858755755,"results":"79","hashOfConfig":"76"},{"size":4215,"mtime":1614084638398,"results":"80","hashOfConfig":"76"},{"size":5166,"mtime":1612429135360,"results":"81","hashOfConfig":"76"},{"size":16288,"mtime":1614955380996,"results":"82","hashOfConfig":"76"},{"size":1188,"mtime":1612528622009,"results":"83","hashOfConfig":"76"},{"size":876,"mtime":1607858755756,"results":"84","hashOfConfig":"76"},{"size":7391,"mtime":1612444596695,"results":"85","hashOfConfig":"76"},{"size":5228,"mtime":1612615912002,"results":"86","hashOfConfig":"76"},{"size":5404,"mtime":1612627810743,"results":"87","hashOfConfig":"76"},{"size":7126,"mtime":1612605182933,"results":"88","hashOfConfig":"76"},{"size":1666,"mtime":1612183817700,"results":"89","hashOfConfig":"76"},{"size":1467,"mtime":1612611883177,"results":"90","hashOfConfig":"76"},{"size":4054,"mtime":1612628454123,"results":"91","hashOfConfig":"76"},{"size":12245,"mtime":1612628375517,"results":"92","hashOfConfig":"76"},{"size":4907,"mtime":1612445909805,"results":"93","hashOfConfig":"76"},{"size":4171,"mtime":1612628445956,"results":"94","hashOfConfig":"76"},{"size":5167,"mtime":1614589946579,"results":"95","hashOfConfig":"76"},{"size":1185,"mtime":1607858755747,"results":"96","hashOfConfig":"76"},{"size":3172,"mtime":1614590176802,"results":"97","hashOfConfig":"76"},{"size":2839,"mtime":1612614080291,"results":"98","hashOfConfig":"76"},{"size":351,"mtime":1607858755746,"results":"99","hashOfConfig":"76"},{"size":2956,"mtime":1612184087511,"results":"100","hashOfConfig":"76"},{"size":9819,"mtime":1612449975352,"results":"101","hashOfConfig":"76"},{"size":2980,"mtime":1612617008286,"results":"102","hashOfConfig":"76"},{"size":381,"mtime":1611237096699,"results":"103","hashOfConfig":"76"},{"size":2142,"mtime":1614084783774,"results":"104","hashOfConfig":"76"},{"size":284,"mtime":1611233041255,"results":"105","hashOfConfig":"76"},{"size":8603,"mtime":1612445233182,"results":"106","hashOfConfig":"76"},{"size":3683,"mtime":1612445220478,"results":"107","hashOfConfig":"76"},{"size":4616,"mtime":1612535425158,"results":"108","hashOfConfig":"76"},{"size":9256,"mtime":1612614043241,"results":"109","hashOfConfig":"76"},{"size":2864,"mtime":1612362558071,"results":"110","hashOfConfig":"76"},{"size":3792,"mtime":1614868042690,"results":"111","hashOfConfig":"76"},{"size":3766,"mtime":1614867983724,"results":"112","hashOfConfig":"76"},{"size":1076,"mtime":1607858755749,"results":"113","hashOfConfig":"114"},{"size":5227,"mtime":1607858755756,"results":"115","hashOfConfig":"114"},{"size":1010,"mtime":1612601919198,"results":"116","hashOfConfig":"114"},{"size":161,"mtime":1607858755755,"results":"117","hashOfConfig":"114"},{"size":16291,"mtime":1613720981159,"results":"118","hashOfConfig":"114"},{"size":1188,"mtime":1612528622009,"results":"119","hashOfConfig":"114"},{"size":5166,"mtime":1612429135360,"results":"120","hashOfConfig":"114"},{"size":4215,"mtime":1614084638398,"results":"121","hashOfConfig":"114"},{"size":876,"mtime":1607858755756,"results":"122","hashOfConfig":"114"},{"size":7126,"mtime":1612605182933,"results":"123","hashOfConfig":"114"},{"size":5228,"mtime":1612615912002,"results":"124","hashOfConfig":"114"},{"size":4054,"mtime":1612628454123,"results":"125","hashOfConfig":"114"},{"size":7391,"mtime":1612444596695,"results":"126","hashOfConfig":"114"},{"size":5404,"mtime":1612627810743,"results":"127","hashOfConfig":"114"},{"size":1467,"mtime":1612611883177,"results":"128","hashOfConfig":"114"},{"size":12245,"mtime":1612628375517,"results":"129","hashOfConfig":"114"},{"size":1666,"mtime":1612183817700,"results":"130","hashOfConfig":"114"},{"size":2142,"mtime":1614084783774,"results":"131","hashOfConfig":"114"},{"size":4171,"mtime":1612628445956,"results":"132","hashOfConfig":"114"},{"size":4907,"mtime":1612445909805,"results":"133","hashOfConfig":"114"},{"size":2839,"mtime":1612614080291,"results":"134","hashOfConfig":"114"},{"size":3052,"mtime":1612177661278,"results":"135","hashOfConfig":"114"},{"size":5167,"mtime":1614084344152,"results":"136","hashOfConfig":"114"},{"size":1185,"mtime":1607858755747,"results":"137","hashOfConfig":"114"},{"size":351,"mtime":1607858755746,"results":"138","hashOfConfig":"114"},{"size":2956,"mtime":1612184087511,"results":"139","hashOfConfig":"114"},{"size":9819,"mtime":1612449975352,"results":"140","hashOfConfig":"114"},{"size":2980,"mtime":1612617008286,"results":"141","hashOfConfig":"114"},{"size":3766,"mtime":1614084851116,"results":"142","hashOfConfig":"114"},{"size":9256,"mtime":1612614043241,"results":"143","hashOfConfig":"114"},{"size":3780,"mtime":1614084804251,"results":"144","hashOfConfig":"114"},{"size":8603,"mtime":1612445233182,"results":"145","hashOfConfig":"114"},{"size":3683,"mtime":1612445220478,"results":"146","hashOfConfig":"114"},{"size":4616,"mtime":1612535425158,"results":"147","hashOfConfig":"114"},{"size":381,"mtime":1611237096699,"results":"148","hashOfConfig":"114"},{"size":2864,"mtime":1612362558071,"results":"149","hashOfConfig":"114"},{"size":2868,"mtime":1614867766116,"results":"150","hashOfConfig":"76"},{"filePath":"151","messages":"152","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"153"},"r246ep",{"filePath":"154","messages":"155","errorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":"156","usedDeprecatedRules":"153"},{"filePath":"157","messages":"158","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"153"},{"filePath":"159","messages":"160","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"153"},{"filePath":"161","messages":"162","errorCount":0,"warningCount":15,"fixableErrorCount":0,"fixableWarningCount":0,"source":"163","usedDeprecatedRules":"153"},{"filePath":"164","messages":"165","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":"166","usedDeprecatedRules":"153"},{"filePath":"167","messages":"168","errorCount":0,"warningCount":17,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"169","messages":"170","errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"171","usedDeprecatedRules":"153"},{"filePath":"172","messages":"173","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"174","usedDeprecatedRules":"153"},{"filePath":"175","messages":"176","errorCount":0,"warningCount":7,"fixableErrorCount":0,"fixableWarningCount":0,"source":"177","usedDeprecatedRules":"153"},{"filePath":"178","messages":"179","errorCount":0,"warningCount":13,"fixableErrorCount":0,"fixableWarningCount":0,"source":"180","usedDeprecatedRules":"153"},{"filePath":"181","messages":"182","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":"183","usedDeprecatedRules":"153"},{"filePath":"184","messages":"185","errorCount":0,"warningCount":19,"fixableErrorCount":0,"fixableWarningCount":0,"source":"186","usedDeprecatedRules":"153"},{"filePath":"187","messages":"188","errorCount":0,"warningCount":16,"fixableErrorCount":0,"fixableWarningCount":0,"source":"189","usedDeprecatedRules":"153"},{"filePath":"190","messages":"191","errorCount":0,"warningCount":14,"fixableErrorCount":0,"fixableWarningCount":0,"source":"192","usedDeprecatedRules":"153"},{"filePath":"193","messages":"194","errorCount":0,"warningCount":25,"fixableErrorCount":0,"fixableWarningCount":0,"source":"195","usedDeprecatedRules":"153"},{"filePath":"196","messages":"197","errorCount":0,"warningCount":16,"fixableErrorCount":0,"fixableWarningCount":0,"source":"198","usedDeprecatedRules":"153"},{"filePath":"199","messages":"200","errorCount":0,"warningCount":7,"fixableErrorCount":0,"fixableWarningCount":0,"source":"201","usedDeprecatedRules":"153"},{"filePath":"202","messages":"203","errorCount":0,"warningCount":25,"fixableErrorCount":0,"fixableWarningCount":0,"source":"204","usedDeprecatedRules":"153"},{"filePath":"205","messages":"206","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":"207","usedDeprecatedRules":"153"},{"filePath":"208","messages":"209","errorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":"210","usedDeprecatedRules":"153"},{"filePath":"211","messages":"212","errorCount":0,"warningCount":12,"fixableErrorCount":0,"fixableWarningCount":0,"source":"213","usedDeprecatedRules":"153"},{"filePath":"214","messages":"215","errorCount":0,"warningCount":8,"fixableErrorCount":0,"fixableWarningCount":0,"source":"216","usedDeprecatedRules":"153"},{"filePath":"217","messages":"218","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"153"},{"filePath":"219","messages":"220","errorCount":0,"warningCount":12,"fixableErrorCount":0,"fixableWarningCount":0,"source":"221","usedDeprecatedRules":"153"},{"filePath":"222","messages":"223","errorCount":0,"warningCount":10,"fixableErrorCount":0,"fixableWarningCount":0,"source":"224","usedDeprecatedRules":"153"},{"filePath":"225","messages":"226","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":"227","usedDeprecatedRules":"153"},{"filePath":"228","messages":"229","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"153"},{"filePath":"230","messages":"231","errorCount":0,"warningCount":20,"fixableErrorCount":0,"fixableWarningCount":0,"source":"232","usedDeprecatedRules":"153"},{"filePath":"233","messages":"234","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"235","messages":"236","errorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":"237","usedDeprecatedRules":"153"},{"filePath":"238","messages":"239","errorCount":0,"warningCount":10,"fixableErrorCount":0,"fixableWarningCount":0,"source":"240","usedDeprecatedRules":"153"},{"filePath":"241","messages":"242","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":"243","usedDeprecatedRules":"153"},{"filePath":"244","messages":"245","errorCount":0,"warningCount":8,"fixableErrorCount":0,"fixableWarningCount":0,"source":"246","usedDeprecatedRules":"153"},{"filePath":"247","messages":"248","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":"249","usedDeprecatedRules":"153"},{"filePath":"250","messages":"251","errorCount":0,"warningCount":29,"fixableErrorCount":0,"fixableWarningCount":0,"source":"252","usedDeprecatedRules":"153"},{"filePath":"253","messages":"254","errorCount":0,"warningCount":29,"fixableErrorCount":0,"fixableWarningCount":0,"source":"255","usedDeprecatedRules":"153"},{"filePath":"256","messages":"257","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"1k1tdje",{"filePath":"258","messages":"259","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"260","messages":"261","errorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"262","messages":"263","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"264","messages":"265","errorCount":0,"warningCount":17,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"266","messages":"267","errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"268","messages":"269","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"270","messages":"271","errorCount":0,"warningCount":15,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"272","messages":"273","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"274","messages":"275","errorCount":0,"warningCount":19,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"276","messages":"277","errorCount":0,"warningCount":13,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"278","messages":"279","errorCount":0,"warningCount":25,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"280","messages":"281","errorCount":0,"warningCount":7,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"282","messages":"283","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"284","messages":"285","errorCount":0,"warningCount":14,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"286","messages":"287","errorCount":0,"warningCount":16,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"288","messages":"289","errorCount":0,"warningCount":16,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"290","messages":"291","errorCount":0,"warningCount":20,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"292","messages":"293","errorCount":0,"warningCount":25,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"294","messages":"295","errorCount":0,"warningCount":7,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"296","messages":"297","errorCount":0,"warningCount":8,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"298","messages":"299","errorCount":0,"warningCount":12,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"300","messages":"301","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"302","messages":"303","errorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"304","messages":"305","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"306","messages":"307","errorCount":0,"warningCount":12,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"308","messages":"309","errorCount":0,"warningCount":10,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"310","messages":"311","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"312","messages":"313","errorCount":0,"warningCount":29,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"314","messages":"315","errorCount":0,"warningCount":8,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"316","messages":"317","errorCount":0,"warningCount":29,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"318","messages":"319","errorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"320","messages":"321","errorCount":0,"warningCount":10,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"322","messages":"323","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"324","messages":"325","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"326","messages":"327","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"328","messages":"329","errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":"330","usedDeprecatedRules":"153"},"C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\index.js",[],["331","332"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\App.js",["333","334","335","336"],"import React, { Component, useState } from \"react\";\r\nimport {\r\n Link,\r\n Route,\r\n Switch,\r\n withRouter,\r\n HashRouter,\r\n BrowserRouter as Router,\r\n} from \"react-router-dom\";\r\nimport styled from \"styled-components\";\r\nimport Login from \"./pages/Login\";\r\nimport MainPage from \"./pages/MainPage\";\r\nimport Signup from \"./pages/Signup\";\r\nimport \"./App.css\";\r\nimport Auth from \"./hoc/auth\";\r\n\r\nconst Container = styled.div`\r\n -ms-user-select: none;\r\n -moz-user-select: -moz-none;\r\n -khtml-user-select: none;\r\n -webkit-user-select: none;\r\n user-select: none;\r\n`;\r\n\r\nclass App extends Component {\r\n render() {\r\n return (\r\n <Container>\r\n <Router basename={`${process.env.PUBLIC_URL}/`}>\r\n <Switch>\r\n <Route path=\"/\" component={Login} exact />\r\n <Route path=\"/signup\" component={Signup} exact />\r\n <Route path=\"/main\" component={Auth(MainPage)} exact />\r\n </Switch>\r\n </Router>\r\n </Container>\r\n );\r\n }\r\n}\r\n\r\nexport default App;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\serviceWorker.js",[],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\reducer\\index.js",[],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\MainPage.js",["337","338","339","340","341","342","343","344","345","346","347","348","349","350","351"],"import React, { Component } from \"react\";\r\nimport { Link, Route, Switch, BrowserRouter as Router, HashRouter } from \"react-router-dom\";\r\nimport {\r\n AutoComplete,\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n Carousel,\r\n Image,\r\n} from \"antd\";\r\nimport styled from \"styled-components\";\r\nimport Header from \"../components/Header\";\r\nimport Footer from \"../components/Footer\";\r\nimport Menu from \"../components/Menu\";\r\nimport Welcome from \"./Welcome\";\r\nimport Curriculum from \"./Curriculum\";\r\nimport Status from \"./Status\";\r\nimport Notice from \"./Notice\";\r\nimport Question from \"./Question\";\r\nimport Userquestion from \"./Userquestion\";\r\nimport Professor from \"./Professor\";\r\nimport Timetable from \"./Timetable\";\r\nimport Bestqa from \"./Bestqa\";\r\nimport Datamodify from \"./DataModify\";\r\nimport Adminpage from \"./Adminpage\";\r\nimport oc from \"open-color\";\r\nimport Auth from \"../hoc/auth\";\r\n\r\nconst Container = styled.div`\r\n display: flex;\r\n position: relative;\r\n flex-direction: row;\r\n width: 100%;\r\n height: 100%;\r\n min-width: 800px;\r\n min-height: 800px;\r\n margin-bottom: 3rem;\r\n margin-top: 4rem;\r\n padding-left: 1rem;\r\n -ms-user-select: none;\r\n -moz-user-select: -moz-none;\r\n -khtml-user-select: none;\r\n -webkit-user-select: none;\r\n user-select: none;\r\n`;\r\n\r\nconst MenuBar = styled.div`\r\n width: 12rem;\r\n height: 85%;\r\n background-color: ${oc.gray[1]};\r\n border-radius: 1rem;\r\n position: fixed;\r\n z-index: 2;\r\n border: 4px groove ${oc.gray[4]};\r\n \"&:hover\": {\r\n background: \"#efefef\";\r\n }\r\n // @media (max-width: 767px) {\r\n // display:none;\r\n // }\r\n`;\r\n\r\nconst Contents = styled.div`\r\n width: 90%;\r\n height: 85%;\r\n min-height: 600px;\r\n min-width: 800px;\r\n margin: 2rem 2rem 1rem 13rem;\r\n border-radius: 0.5rem;\r\n background-color: ${oc.gray[1]};\r\n border: 2px groove ${oc.gray[4]};\r\n`;\r\n\r\nconst MainPage = (props) => {\r\n const userdata = props.data;\r\n const [menu,setmenu] = React.useState(Number(localStorage.getItem(\"menuIndex\")));\r\n\r\n const loadcontents = (() => {\r\n switch (menu){\r\n case 0:\r\n return <Welcome/>;\r\n case 1:\r\n return <Question menu={menu} setmenu={setmenu}/>;\r\n case 2:\r\n return <Userquestion menu={menu} setmenu={setmenu}/>;\r\n case 3:\r\n return <Datamodify menu={menu} setmenu={setmenu}/>;\r\n case 4:\r\n return <Status/>;\r\n case 5:\r\n return <Curriculum/>;\r\n case 6:\r\n return <Notice/>;\r\n case 7:\r\n return <Professor/>;\r\n case 8:\r\n return <Timetable/>;\r\n case 9:\r\n return <Bestqa/>;\r\n case 10:\r\n return <Adminpage/>;\r\n default:\r\n return null;\r\n }\r\n })\r\n\r\n React.useEffect(()=>{\r\n localStorage.setItem(\"menuIndex\",menu);\r\n console.log(menu);\r\n },[menu,setmenu])\r\n\r\n return (\r\n <div>\r\n <header>\r\n <Header />\r\n </header>\r\n <Container>\r\n <Router basename={`${process.env.PUBLIC_URL}/`}>\r\n <MenuBar style={{ marginTop: \"2rem\" }}>\r\n <Menu menu={menu} setmenu={setmenu}/>\r\n </MenuBar>\r\n <Contents>\r\n {/* 라우트 방식은 새로고침 문제가 있어서 state로 변경 */}\r\n {/* <Switch>\r\n <Route path=\"/status\" component={Auth(Status)} exact />\r\n <Route path=\"/question\" component={Auth(Question)} exact />\r\n <Route path=\"/userquestion\" component={Auth(Userquestion)} exact />\r\n <Route path=\"/curriculum\" component={Auth(Curriculum)} exact />\r\n <Route path=\"/notice\" component={Auth(Notice)} exact />\r\n <Route path=\"/professor\" component={Auth(Professor)} exact />\r\n <Route path=\"/timetable\" component={Auth(Timetable)} exact />\r\n <Route path=\"/bestqa\" component={Auth(Bestqa)} exact />\r\n <Route path=\"/datamodify\" component={Auth(Datamodify)} exact />\r\n <Route path=\"/main\" component={Auth(Welcome)} exact />\r\n <Route path=\"/adminpage\" component={Auth(Adminpage)} exact />\r\n </Switch> */}\r\n {loadcontents()}\r\n </Contents>\r\n </Router>\r\n </Container>\r\n {/* <Footer/> */}\r\n </div>\r\n );\r\n};\r\n\r\nexport default MainPage;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Login.js",["352","353","354","355","356","357","358","359","360","361","362"],"import React, { Component, useState } from \"react\";\r\nimport {\r\n Link,\r\n Redirect,\r\n Route,\r\n Switch,\r\n BrowserRouter as Router,\r\n} from \"react-router-dom\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport styled from \"styled-components\";\r\nimport { Form, Input, Button, Checkbox } from \"antd\";\r\nimport { UserOutlined, LockOutlined } from \"@ant-design/icons\";\r\nimport { loginUser, authUser, loginSuccess } from \"../actions/userAction\";\r\nimport axios from \"axios\";\r\nimport oc from \"open-color\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\n\r\nconst LoginForm = styled.div`\r\n display: flex;\r\n min-width: 800px;\r\n min-height: 600px;\r\n position: absolute;\r\n width: 100%;\r\n height: 100%;\r\n background-color: #a31432;\r\n justify-content: center;\r\n align-items: center;\r\n`;\r\n\r\nconst Logo = styled.div`\r\n font-size: 6rem;\r\n letter-spacing: 1rem;\r\n color: #a31432;\r\n font-family: \"Rajdhani\";\r\n`;\r\n\r\nconst Whitespace = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n background-color: white;\r\n justify-content: center;\r\n align-items: center;\r\n padding-bottom: 6rem;\r\n width: 90%;\r\n height: 90%;\r\n border-radius: 2rem;\r\n`;\r\n\r\nconst Login = (props) => {\r\n const [_id, setId] = useState(\"\");\r\n const [_password, setPassword] = useState(\"\");\r\n const [_studentid, setStudentId] = useState(\"\");\r\n const dispatch = useDispatch();\r\n const onIdHandler = (e) => {\r\n setId(e.currentTarget.value);\r\n };\r\n const onPasswordHanlder = (e) => {\r\n setPassword(e.currentTarget.value);\r\n };\r\n\r\n const onLogin = (e) => {\r\n localStorage.clear();\r\n const body = {\r\n userid: _id,\r\n password: _password,\r\n };\r\n\r\n dispatch(loginUser(body))\r\n .then((res) => {\r\n console.log(res)\r\n \r\n if (res.status === 200) {\r\n const accessToken = res.data.result[0].token;\r\n dispatch(loginSuccess(accessToken));\r\n dispatch(authUser()).then((res) => {\r\n if (res) {\r\n // res 추가해서 비동기적으로 실행되게 하기위함 (로그인 됬을 때 username 못불러오는 현상 해결)\r\n props.history.push(\"/main\");\r\n }\r\n });\r\n } else {\r\n Swal.fire({\r\n icon: \"error\",\r\n title: \"로그인 실패\",\r\n text: res.data.message,\r\n showConfirmButton: true,\r\n width: \"25rem\",\r\n timer: 2000,\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n Swal.fire({\r\n icon: \"error\",\r\n text: \"로그인이 실패 하였습니다.\",\r\n title: \"로그인실패\",\r\n showConfirmButton: true,\r\n width: \"25rem\",\r\n timer: 2000,\r\n });\r\n });\r\n };\r\n\r\n return (\r\n <LoginForm>\r\n <Whitespace>\r\n <Logo style={{ marginBottom: \"3%\"}}>SYB ADMIN</Logo>\r\n <Form\r\n name=\"normal_login\"\r\n className=\"login-form\"\r\n onFinish={onLogin}\r\n autoComplete=\"off\"\r\n >\r\n <Form.Item\r\n name=\"id\"\r\n rules={[\r\n {\r\n required: true,\r\n message: \"ID를 입력해주세요\",\r\n },\r\n ]}\r\n style={{ paddingBottom: \"0.5rem\" }}\r\n >\r\n <Input\r\n prefix={\r\n <UserOutlined\r\n className=\"site-form-item-icon\"\r\n style={{ paddingRight: \"0.5rem\" }}\r\n />\r\n }\r\n onChange={onIdHandler}\r\n placeholder=\"아이디\"\r\n />\r\n </Form.Item>\r\n <Form.Item\r\n name=\"password\"\r\n rules={[\r\n {\r\n required: true,\r\n message: \"비밀번호를 입력해주세요\",\r\n },\r\n ]}\r\n style={{ paddingBottom: \"1rem\" }}\r\n >\r\n <Input\r\n prefix={\r\n <LockOutlined\r\n className=\"site-form-item-icon\"\r\n style={{ paddingRight: \"0.5rem\" }}\r\n />\r\n }\r\n type=\"password\"\r\n placeholder=\"비밀번호\"\r\n onChange={onPasswordHanlder}\r\n />\r\n </Form.Item>\r\n\r\n <Form.Item>\r\n <Button\r\n type=\"primary\"\r\n htmlType=\"submit\"\r\n style={{\r\n backgroundColor: \"#a31432\",\r\n border: \"none\",\r\n margin: \"0 1rem\",\r\n }}\r\n >\r\n 로그인\r\n </Button>\r\n <Link to=\"/signup\" style={{ margin: \"0 1rem\" }}>\r\n <Button\r\n type=\"primary\"\r\n htmlType=\"submit\"\r\n className=\"login-form-button\"\r\n style={{ backgroundColor: \"#a31432\", border: \"none\" }}\r\n >\r\n 회원가입\r\n </Button>\r\n </Link>\r\n </Form.Item>\r\n </Form>\r\n </Whitespace>\r\n </LoginForm>\r\n );\r\n};\r\n\r\nexport default Login;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Signup.js",["363","364","365","366","367","368","369","370","371","372","373","374","375","376","377","378","379"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\hoc\\auth.js",["380","381","382"],"import React, { useEffect } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { authUser } from \"../actions/userAction\";\r\nimport Swal from 'sweetalert2'\r\nimport withReactContent from 'sweetalert2-react-content'\r\n\r\nconst MySwal = withReactContent(Swal);\r\n\r\nexport default function (Component, option , adminRoute = null){\r\n //option\r\n //null => 아무나 출입 가능\r\n //true => 로그인한 유저만 출입 가능\r\n //false => 로그인한 유저는 출입 불가능\r\n\r\n function AuthCheck(props){\r\n const dispatch = useDispatch();\r\n let _data={};\r\n useEffect(() =>{\r\n dispatch(authUser()).then((res) =>{\r\n if(!res){\r\n Swal.fire({\r\n icon: 'error',\r\n title:'로그인이 필요합니다',\r\n showConfirmButton: true,\r\n width:'25rem',\r\n timer: 2000,\r\n }).then(props.history.push(\"/\"));\r\n }\r\n else{\r\n _data = Object.assign(_data,res);\r\n }\r\n });\r\n },[]);\r\n return <Component data={_data}/>\r\n }\r\n\r\n return AuthCheck;\r\n}\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\reducer\\userReducer.js",["383","384"],"import { REGISTER_USER, LOGIN_USER,LOGOUT_USER,REGISTER_ERROR,AUTH_USER,LOGIN_SUCCESS,AUTH_SUCCESS,AUTH_FAILED } from \"../actions/types\";\r\n\r\nconst defaultState = {\r\n loggedIn : false,\r\n user : {},\r\n}\r\n\r\nexport default function (state = defaultState, action) {\r\n switch (action.type) {\r\n case REGISTER_USER:\r\n return { ...state, loggedIn:false, user:{}};\r\n case REGISTER_ERROR:\r\n return { ...state, loggedIn:false, user:{}};\r\n case LOGIN_USER:\r\n return { ...state, loggedIn:true, user:{...action.payload} };\r\n case LOGOUT_USER:\r\n return { ...state, loggedIn:false, user:{} };\r\n case AUTH_USER:\r\n return {...state,loggedIn:true,user:{...action.payload}};\r\n case AUTH_FAILED:\r\n return {...state,loggedIn:false,user:{}};\r\n case AUTH_SUCCESS:\r\n return {...state,loggedIn:true};\r\n default:\r\n return state;\r\n }\r\n}","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Status.js",["385","386","387","388","389","390","391"],"import React from \"react\";\r\nimport moment from \"moment\";\r\nimport { Form, Select, Input, Button,notification, Carousel, Image, Divider } from \"antd\";\r\nimport axios from \"axios\";\r\nimport styled from \"styled-components\";\r\nimport { FormInstance } from \"antd/lib/form\";\r\nimport { CloudUploadOutlined } from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 1.5,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst Option = Select.Option;\r\nconst { TextArea } = Input;\r\n\r\nconst Status = () => {\r\n const id = localStorage.getItem(\"username\");\r\n //const [time,setTime] = React.useState(new Date().toLocaleString());\r\n const [form] = Form.useForm();\r\n const department = localStorage.getItem(\"department\");\r\n const deptname = localStorage.getItem(\"dept_name\");\r\n const [isDisable, setDisable] = React.useState(true);\r\n const [data, setData] = React.useState({});\r\n const getData = React.useCallback(async () => {\r\n const response = await axios.get(`https://sjswbot.site/status/${department}`);\r\n console.log(response);\r\n let data = \"\";\r\n if (response.data.result.status === 1) {\r\n data = \"근무중\";\r\n } else if (response.data.result.status === 2) {\r\n data = \"휴가중\";\r\n }\r\n setData({\r\n modifier: response.data.result.User.username,\r\n time: moment(response.data.result.updatedAt).format(\"LLL\"),\r\n // 시간 안더해줘도 됨 (21-01-21)\r\n });\r\n form.setFieldsValue({\r\n // department: response.data.result.department,\r\n status: data,\r\n comment: response.data.result.comment,\r\n position: response.data.result.position,\r\n phoneNumber: response.data.result.phoneNumber,\r\n // time: time,\r\n });\r\n });\r\n\r\n const onValuesChange = (changedValue, allValue) => {\r\n\r\n };\r\n\r\n const confirmFunc = (formData) => {\r\n Swal.fire({\r\n title: \"수정하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n // setTime(new Date().toLocaleString());\r\n console.log(formData);\r\n onFinish(formData);\r\n }\r\n });\r\n };\r\n\r\n const onFinish = async (data) => {\r\n // data.modifier = localStorage.getItem(\"username\");\r\n // 기존 modifier 넣어준 것 뺌\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n if(data.status === \"근무중\"){\r\n data.status = 1;\r\n }\r\n else if (data.status === \"휴가중\"){\r\n data.status = 2;\r\n }\r\n \r\n const response = await axios\r\n .put(`https://sjswbot.site/status/${department}`, data, header, { widthCredentials: true })\r\n .then((res) => {\r\n if (res.status === 200) {\r\n return Swal.fire({\r\n icon: \"success\",\r\n title: \"수정 완료\",\r\n showConfirmButton: false,\r\n width: \"20rem\",\r\n timer: 1500,\r\n }).then(()=>getData());\r\n }\r\n })\r\n .catch((err) => {\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n };\r\n\r\n React.useEffect(() => {\r\n setDisable(false);\r\n }, [form.data]);\r\n\r\n React.useEffect(() => {\r\n console.log(department);\r\n if (department === \"\") return;\r\n getData();\r\n }, [department]);\r\n\r\n return (\r\n <div\r\n style={{\r\n margin: \"3% 10%\",\r\n padding: \"1% 0%\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n borderRadius: \"0.5rem\",\r\n border: \"2px solid lightgray\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n textAlign: \"center\",\r\n fontSize: \"30px\",\r\n fontFamily: \"Gothic A1\",\r\n }}\r\n >\r\n <p>{deptname} 사무실 수정 페이지</p>\r\n </div>\r\n <Carousel\r\n style={{ width: \"50rem\", height: \"32rem\", margin: \"1rem 1rem 2rem\" }}\r\n >\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106897620-86a83e80-6736-11eb-91dd-f37794b6b38d.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106897237-0255bb80-6736-11eb-896c-d422910a0b07.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106897240-0386e880-6736-11eb-8caa-02efd92dcb3d.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106897248-04b81580-6736-11eb-9e1f-a16b9ef476e8.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n </Carousel>\r\n <Form\r\n form={form}\r\n onFinish={confirmFunc}\r\n onFieldsChange={onValuesChange}\r\n style={{ width: \"40rem\" }}\r\n >\r\n {/* <Form.Item\r\n label=\"학과\"\r\n name=\"department\"\r\n value={department}\r\n style={{\r\n width: \"0rem\",\r\n height: \"0rem\",\r\n visibility: \"hidden\",\r\n margin: \"0\",\r\n }}\r\n >\r\n <Input readOnly={true} />\r\n </Form.Item> */}\r\n {/* <Form.Item label=\"시간\" name=\"time\" value={time} style={{width:\"0rem\", height:\"0rem\" , visibility:\"hidden\", margin:\"0\"}}>\r\n <Input readOnly=\"true\"/>\r\n </Form.Item> */}\r\n {/* <Form.Item\r\n label=\"이름\"\r\n name=\"modifier\"\r\n value={id}\r\n style={{\r\n width: \"0rem\",\r\n height: \"0rem\",\r\n visibility: \"hidden\",\r\n margin: \"0\",\r\n }}\r\n >\r\n <Input readOnly={true} />\r\n </Form.Item> */}\r\n <Form.Item label=\"위치\" name=\"position\" required>\r\n <Input />\r\n </Form.Item>\r\n <Form.Item label=\"전화번호\" name=\"phoneNumber\" required>\r\n <Input />\r\n </Form.Item>\r\n <Form.Item label=\"조교 부재여부\" name=\"status\" required>\r\n <Select>\r\n <Option value=\"1\">근무중</Option>\r\n <Option value=\"2\">휴가중</Option>\r\n </Select>\r\n </Form.Item>\r\n <Form.Item\r\n label=\"기타내용\"\r\n name=\"comment\"\r\n // rules={[\r\n // { required: true, messsage: \"코멘트르 입력해주세요\" },\r\n // ]}\\\r\n required\r\n >\r\n <TextArea disabled={isDisable} style={{ resize: \"none\" }} />\r\n </Form.Item>\r\n <Divider />\r\n <p style={{ width: \"100%\", color: \"gray\" }}>\r\n {data.modifier} 조교님\r\n <br />({data.time})\r\n </p>\r\n <Form.Item colon={false} wrapperCol={{ offset: 11 }}>\r\n <Button icon={<CloudUploadOutlined />} htmlType=\"submit\">\r\n 수정하기\r\n </Button>\r\n </Form.Item>\r\n </Form>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Status;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Curriculum.js",["392","393","394","395","396","397","398","399","400","401","402","403","404"],"import React from \"react\";\r\nimport moment from \"moment\";\r\nimport axios from \"axios\";\r\nimport {\r\n AutoComplete,\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n notification,\r\n Carousel,\r\n Image,\r\n Divider,\r\n} from \"antd\";\r\nimport ImageUploader from 'react-images-upload';\r\nimport { CloudUploadOutlined } from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 1.5,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst Option = Select.Option;\r\nconst { TextArea } = Input;\r\n\r\nconst Curriculum = () => {\r\n const [form] = Form.useForm();\r\n const department = localStorage.getItem(\"department\");\r\n const deptname = localStorage.getItem(\"dept_name\");\r\n const [data, setData] = React.useState([]);\r\n const [fileList, setFileList] = React.useState([]);\r\n const [isDisable, setDisable] = React.useState(true);\r\n const getData = React.useCallback(async () => {\r\n const response = await axios.get(\r\n `https://sjswbot.site/curriculum/${department}`\r\n );\r\n console.log(response);\r\n setData({\r\n modifier: response.data.result.User.username,\r\n time: moment(response.data.result.updatedAt).format(\"LLL\"),\r\n });\r\n\r\n form.setFieldsValue({\r\n department: deptname,\r\n link: response.data.result.link,\r\n });\r\n }, [department]);\r\n\r\n const onChangeSelectFunc = React.useCallback((e) => {\r\n console.log(form.getFieldValue(\"department\"));\r\n }, []);\r\n\r\n const onValuesChange = (changedValue, allValue) => {\r\n console.log(changedValue);\r\n };\r\n\r\n const confirmFunc = (formData) => {\r\n Swal.fire({\r\n title: \"수정하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n onFinish(formData);\r\n }\r\n });\r\n };\r\n\r\n const onFinish = async (formData) => {\r\n // formData.modifier = localStorage.getItem(\"username\");\r\n // formdata에 userid 추가\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n \r\n const response = await axios\r\n .put(`https://sjswbot.site/curriculum/${department}`, formData , header, { widthCredentials: true })\r\n .then((res) => {\r\n if (res.status === 200) {\r\n return Swal.fire({\r\n icon: \"success\",\r\n title: \"수정 완료\",\r\n showConfirmButton: false,\r\n width: \"20rem\",\r\n timer: 1500,\r\n }).then(()=>getData());\r\n }\r\n })\r\n .catch((err) => {\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n };\r\n\r\n React.useEffect(() => {\r\n getData();\r\n // eslint-disable-next-line\r\n }, [department, getData]);\r\n\r\n return (\r\n <div\r\n style={{\r\n margin: \"3% 10%\",\r\n padding: \"1% 0%\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n borderRadius: \"0.5rem\",\r\n border: \"2px solid lightgray\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n textAlign: \"center\",\r\n fontSize: \"30px\",\r\n fontFamily: \"Gothic A1\",\r\n }}\r\n >\r\n <p>{deptname} 교과과정 수정 페이지</p>\r\n </div>\r\n <Carousel\r\n style={{ width: \"50rem\", height: \"32rem\", margin: \"1rem 1rem 2rem\" }}\r\n >\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106897492-59f42700-6736-11eb-89ba-662f61ecc7ad.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106897503-5bbdea80-6736-11eb-864b-55fa1e16fd18.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/107118637-77a3c680-68c5-11eb-8863-fc4fff1956da.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n </Carousel>\r\n <Form\r\n form={form}\r\n onFinish={confirmFunc}\r\n onFieldsChange={onValuesChange}\r\n autoComplete=\"off\"\r\n style={{ width: \"40rem\" }}\r\n >\r\n <Form.Item label=\"학과\" name=\"department\" value={department} required>\r\n <Input readOnly={true} />\r\n </Form.Item>\r\n <Form.Item label=\"링크\" name=\"link\" required>\r\n <Input />\r\n </Form.Item>\r\n <Divider />\r\n <p style={{ width: \"100%\", color: \"gray\" }}>\r\n {data.modifier} 조교님\r\n <br />({data.time})\r\n </p>\r\n <Form.Item colon={false} wrapperCol={{ offset: 11 }}>\r\n <Button icon={<CloudUploadOutlined />} htmlType=\"submit\">\r\n 수정하기\r\n </Button>\r\n </Form.Item>\r\n </Form>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Curriculum;","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Notice.js",["405","406","407","408","409","410","411","412","413","414","415"],"import React from \"react\";\r\nimport moment from \"moment\";\r\nimport axios from \"axios\";\r\nimport {\r\n AutoComplete,\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n notification,\r\n Carousel,\r\n Image,\r\n Divider,\r\n} from \"antd\";\r\nimport { CloudUploadOutlined } from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 1.5,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst Option = Select.Option;\r\nconst { TextArea } = Input;\r\n\r\nconst Notice = () => {\r\n const name = localStorage.getItem(\"username\");\r\n const [form] = Form.useForm();\r\n const department = localStorage.getItem(\"department\");\r\n const deptname = localStorage.getItem(\"dept_name\");\r\n const [data, setData] = React.useState([]);\r\n const [isDisable, setDisable] = React.useState(true);\r\n const getData = React.useCallback(async () => {\r\n const response = await axios.get(`https://sjswbot.site/notice/${department}`);\r\n console.log(response);\r\n setData({\r\n modifier: response.data.result.User.username,\r\n time: moment(response.data.result.updatedAt).format(\"LLL\"),\r\n });\r\n\r\n form.setFieldsValue({\r\n department: deptname,\r\n link: response.data.result.link,\r\n content:response.data.result.content,\r\n });\r\n }, [department]);\r\n\r\n const onChangeSelectFunc = React.useCallback((e) => {\r\n console.log(form.getFieldValue(\"department\"));\r\n }, []);\r\n\r\n const onValuesChange = (changedValue, allValue) => {\r\n console.log(changedValue);\r\n };\r\n\r\n const confirmFunc = (formData) => {\r\n Swal.fire({\r\n title: \"수정하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n onFinish(formData);\r\n }\r\n });\r\n };\r\n\r\n const onFinish = async (formData) => {\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n const response = await axios\r\n .put(`https://sjswbot.site/notice/${department}`, formData , header, { widthCredentials: true })\r\n .then((res) => {\r\n if (res.status === 200) {\r\n return Swal.fire({\r\n icon: \"success\",\r\n title: \"수정 완료\",\r\n showConfirmButton: false,\r\n width: \"20rem\",\r\n timer: 1500,\r\n }).then(()=>getData());\r\n }\r\n })\r\n .catch((err) => {\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n };\r\n\r\n React.useEffect(() => {\r\n getData();\r\n }, []);\r\n\r\n return (\r\n <div\r\n style={{\r\n margin: \"3% 10%\",\r\n padding: \"1% 0%\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n borderRadius: \"0.5rem\",\r\n border: \"2px solid lightgray\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n textAlign: \"center\",\r\n fontSize: \"30px\",\r\n fontFamily: \"Gothic A1\",\r\n }}\r\n >\r\n <p>{deptname} 공지 링크 페이지</p>\r\n </div>\r\n <Carousel\r\n style={{ width: \"50rem\", height: \"32rem\", margin: \"1rem 1rem 2rem\" }}\r\n >\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/107045026-6779e180-6808-11eb-9d8b-e66e21d92e28.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/107045032-68127800-6808-11eb-8cc4-c3d1d297c985.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/107045039-6943a500-6808-11eb-967f-98e341c584a2.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/107118658-93a76800-68c5-11eb-97bd-0ca0fbab4cd2.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n </Carousel>\r\n <Form\r\n form={form}\r\n onFinish={confirmFunc}\r\n onFieldsChange={onValuesChange}\r\n autoComplete=\"off\"\r\n style={{ width: \"40rem\" }}\r\n >\r\n <Form.Item label=\"학과\" name=\"department\" value={department} required>\r\n <Input readOnly={true} />\r\n </Form.Item>\r\n <Form.Item label=\"내용\" name=\"content\" required>\r\n <TextArea maxLength={300} style={{height:\"20rem\", resize:\"none\"}}/>\r\n </Form.Item>\r\n <Form.Item label=\"링크\" name=\"link\" required>\r\n <Input />\r\n </Form.Item>\r\n <Divider />\r\n <p style={{ width: \"100%\", color: \"gray\" }}>\r\n {data.modifier} 조교님\r\n <br />({data.time})\r\n </p>\r\n <Form.Item colon={false} wrapperCol={{ offset: 11 }}>\r\n <Button icon={<CloudUploadOutlined />} htmlType=\"submit\">\r\n 수정하기\r\n </Button>\r\n </Form.Item>\r\n </Form>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Notice;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Welcome.js",["416","417","418","419","420","421","422","423","424","425","426","427","428","429","430","431","432","433","434"],"import React from \"react\";\r\nimport moment from \"moment\";\r\nimport {\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n Row,\r\n Col,\r\n notification,\r\n Divider,\r\n Modal,\r\n Pagination,\r\n Image,\r\n Carousel,\r\n} from \"antd\";\r\nimport ReactQuill from 'react-quill';\r\nimport 'react-quill/dist/quill.snow.css';\r\nimport axios from \"axios\";\r\nimport styled from \"styled-components\";\r\nimport { FormInstance } from \"antd/lib/form\";\r\nimport { CloudUploadOutlined, LoadingOutlined } from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 1.5,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst Option = Select.Option;\r\nconst { TextArea } = Input;\r\n\r\nconst Welcome = (props) => {\r\n const name = localStorage.getItem(\"username\");\r\n const department = localStorage.getItem(\"department\");\r\n const deptname = localStorage.getItem(\"dept_name\");\r\n const [form] = Form.useForm();\r\n const [visible, setVisible] = React.useState(false);\r\n const [data, setData] = React.useState([]);\r\n\r\n const confirmFunc = (formData) => {\r\n Swal.fire({\r\n title: \"수정하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n onFinishFunc(formData);\r\n }\r\n });\r\n };\r\n\r\n const FormHandler = () => {\r\n setVisible(true);\r\n };\r\n\r\n const handleOk = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const handleCancel = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const CancleModify = () => {\r\n setVisible(false);\r\n };\r\n\r\n const onFinishFunc = async (formData) => {\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n \r\n // 공백 문자처리\r\n for (const [key, value] of Object.entries(formData)) {\r\n if (value === undefined || value === null || value === NaN) {\r\n formData[key] = \"\";\r\n }\r\n }\r\n formData.modifier = name;\r\n const response = await axios\r\n .put(`https://sjswbot.site/assistantNotice/${department}`, formData,header,{ widthCredentials: true })\r\n .then((res) => {\r\n if (res.status === 200) {\r\n Swal.fire({\r\n icon: \"success\",\r\n title: \"수정 완료\",\r\n showConfirmButton: false,\r\n width: \"20rem\",\r\n timer: 1500,\r\n }).then(()=>{\r\n getData()\r\n setVisible(false);\r\n });\r\n } else {\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n }\r\n })\r\n .catch((err) => {\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n };\r\n\r\n const loadContent = () => {\r\n if (visible === true) {\r\n return (\r\n <Form\r\n form={form}\r\n onFinish={confirmFunc}\r\n onFieldsChange={onValuesChange}\r\n autoComplete=\"off\"\r\n >\r\n <Form.Item\r\n name=\"content\"\r\n rules={[\r\n {\r\n required: true,\r\n message: \"내용을 입력해주세요\",\r\n },\r\n ]}\r\n required\r\n >\r\n {/* <TextArea\r\n style={{\r\n fontSize: \"1rem\",\r\n width: \"50rem\",\r\n resize: \"none\",\r\n padding: \"1rem\",\r\n textAlign: \"center\",\r\n }}\r\n autoSize={true}\r\n resize=\"none\"\r\n /> */}\r\n <ReactQuill theme=\"snow\" value={data.content} style={{width:\"50rem\",height:\"auto\"}}/>\r\n </Form.Item>\r\n <div style={{ marginBottom: \"1rem\" }} />\r\n <Divider />\r\n <p style={{ width: \"100%\", color: \"gray\", marginBottom: \"2rem\" }}>\r\n 수정 하시려면 수정하기 버튼을, 취소하려면 취소 버튼을 눌러주세요{\" \"}\r\n </p>\r\n <Form.Item >\r\n <div style={{ display: \"inline-block\" ,float:\"right\"}}>\r\n <Button htmlType=\"submit\" style={{ margin: \"0 1rem\" }}>\r\n 수정하기\r\n </Button>\r\n <Button onClick={CancleModify} style={{ margin: \"0 1rem\" }}>\r\n 취소\r\n </Button>\r\n </div>\r\n </Form.Item>\r\n </Form>\r\n );\r\n } else {\r\n return (\r\n <div>\r\n {/* <TextArea\r\n value={data.content}\r\n style={{\r\n fontSize: \"1rem\",\r\n width: \"50rem\",\r\n resize: \"none\",\r\n padding: \"1rem\",\r\n textAlign: \"center\",\r\n }}\r\n bordered={false}\r\n autoSize={true}\r\n readOnly={true}\r\n /> */}\r\n <div dangerouslySetInnerHTML={{ __html: data.content }} style={{width:\"50rem\"}}></div>\r\n <div style={{ marginBottom: \"1rem\" }} />\r\n <Divider />\r\n <p style={{ width: \"100%\", color: \"gray\" }}>\r\n {data.modifier} 조교님\r\n <br />({data.time})\r\n </p>\r\n <Button onClick={FormHandler} style={{float:\"right\"}}>수정하기</Button>\r\n </div>\r\n );\r\n }\r\n };\r\n\r\n const onValuesChange = (changedValue, allValue) => {\r\n console.log(changedValue);\r\n };\r\n\r\n const getData = React.useCallback(async () => {\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n const response = await axios.get(\r\n `https://sjswbot.site/assistantNotice/${department}`, header, { widthCredentials: true }\r\n );\r\n console.log(response);\r\n setData({\r\n content: response.data.result.content,\r\n modifier: response.data.result.User.username,\r\n time: moment(response.data.result.updatedAt).format(\"LLL\"),\r\n });\r\n\r\n form.setFieldsValue({\r\n content: response.data.result.content,\r\n });\r\n }, [department]);\r\n\r\n React.useEffect(() => {\r\n getData();\r\n }, []);\r\n\r\n return (\r\n <div\r\n style={{\r\n margin: \"3% 10%\",\r\n padding: \"1% 0%\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n borderRadius: \"0.5rem\",\r\n border: \"2px solid lightgray\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n fontSize: \"30px\",\r\n fontFamily: \"Gothic A1\",\r\n }}\r\n >\r\n <p>{deptname} 공지사항 </p>\r\n </div>\r\n <div\r\n style={{\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n justifyContent: \"center\",\r\n alignItems: \"center\",\r\n padding: \"2rem 2rem\",\r\n }}\r\n >\r\n {loadContent()}\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Welcome;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Professor.js",["435","436","437","438","439","440","441","442","443","444","445","446","447","448","449","450"],"import React, { useEffect,useState} from \"react\";\r\nimport moment from \"moment\";\r\nimport axios from \"axios\";\r\nimport {\r\n AutoComplete,\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n Carousel,\r\n notification,\r\n Image,\r\n Divider,\r\n Tabs,\r\n} from \"antd\";\r\nimport { SearchOutlined } from \"@ant-design/icons\";\r\nimport { CloudUploadOutlined } from \"@ant-design/icons\";\r\nimport ProfessorAdd from './ProfessorAdd';\r\nimport ProfessorModify from './ProfessorModify';\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 1.5,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst { TabPane } = Tabs;\r\n\r\nconst Professor = () => {\r\n return (\r\n <div\r\n style={{\r\n margin: \"3% 10%\",\r\n padding: \"1% 0%\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n borderRadius: \"0.5rem\",\r\n border: \"2px solid lightgray\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n textAlign: \"center\",\r\n fontSize: \"30px\",\r\n fontFamily: \"Gothic A1\",\r\n }}\r\n >\r\n <p>교수님 연구실 페이지</p>\r\n </div>\r\n <Tabs defaultActiveKey=\"1\">\r\n <TabPane tab=\"교수님 데이터 추가\" key=\"1\">\r\n <ProfessorAdd/>\r\n </TabPane>\r\n <TabPane tab=\"교수님 데이터 수정/삭제\" key=\"2\">\r\n <ProfessorModify/>\r\n </TabPane>\r\n </Tabs>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Professor;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Timetable.js",["451","452","453","454","455","456","457","458","459","460","461","462","463","464"],"import React, { useEffect } from \"react\";\r\nimport moment from \"moment\";\r\nimport axios from \"axios\";\r\nimport {\r\n AutoComplete,\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n Carousel,\r\n Image,\r\n Divider,\r\n Tabs,\r\n} from \"antd\";\r\nimport { SearchOutlined } from \"@ant-design/icons\";\r\nimport { CloudUploadOutlined } from \"@ant-design/icons\";\r\nimport TimetableAdd from './TimetableAdd';\r\nimport TimetableModify from './TimetableModify';\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst { TabPane } = Tabs;\r\n\r\nconst Timetable = () => {\r\n return (\r\n <div\r\n style={{\r\n margin: \"3% 10%\",\r\n padding: \"1% 0%\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n borderRadius: \"0.5rem\",\r\n border: \"2px solid lightgray\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n textAlign: \"center\",\r\n fontSize: \"30px\",\r\n fontFamily: \"Gothic A1\",\r\n }}\r\n >\r\n <p>강의실 시간표 수정 페이지</p>\r\n </div>\r\n <Tabs defaultActiveKey=\"1\">\r\n <TabPane tab=\"강의실 시간표 추가\" key=\"1\">\r\n <TimetableAdd/>\r\n </TabPane>\r\n <TabPane tab=\"강의실 시간표 수정/삭제\" key=\"2\">\r\n <TimetableModify/>\r\n </TabPane>\r\n </Tabs>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Timetable;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Userquestion.js",["465","466","467","468","469","470","471","472","473","474","475","476","477","478","479","480","481","482","483","484","485","486","487","488","489"],"import React from \"react\";\r\nimport {\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n Row,\r\n Col,\r\n Divider,\r\n Modal,\r\n Pagination,\r\n Image,\r\n Carousel,\r\n} from \"antd\";\r\nimport { Link } from \"react-router-dom\";\r\nimport axios from \"axios\";\r\nimport styled from \"styled-components\";\r\nimport { FormInstance } from \"antd/lib/form\";\r\nimport { CloudUploadOutlined } from \"@ant-design/icons\";\r\nimport Userquestionlist from \"./Userquestionlist\";\r\n\r\nconst Option = Select.Option;\r\nconst { TextArea } = Input;\r\n\r\nconst Userquestion = (props) => {\r\n const department = localStorage.getItem(\"department\");\r\n const pageSize = parseInt(window.innerHeight / 70);\r\n let count = 0;\r\n const [dataSize,setdataSize] = React.useState(0);\r\n const [size, setSize] = React.useState(0);\r\n // 한 페이지에 담을 데이터 수 (height에 따라 개수 다르게 설정)\r\n const [form] = Form.useForm();\r\n const [visible, setVisible] = React.useState(false);\r\n const [data, setData] = React.useState([]);\r\n const [page, setPage] = React.useState(0);\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n const {\r\n menu,\r\n setmenu\r\n } = props;\r\n\r\n const FormHandler = () => {\r\n setVisible(true);\r\n };\r\n\r\n const handleOk = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const handleCancel = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const PageRefresh = () => {\r\n window.scrollTo({ top: 0, behavior: \"smooth\" });\r\n // data 새로 불러올시 맨 위로 스크롤\r\n\r\n return data.map((it, i) => {\r\n // 게시글 번호 계산\r\n\r\n // if (it.department === \"공통 질문\" || it.department === department) {\r\n return (\r\n <Userquestionlist\r\n key={i}\r\n data={it}\r\n getData={getData}\r\n setPage={setPage}\r\n pageSize={pageSize}\r\n page={page}\r\n />\r\n );\r\n // }\r\n });\r\n };\r\n\r\n const onValuesChange = (changedValue, allValue) => {\r\n console.log(changedValue);\r\n };\r\n\r\n const onPageChange = (pagenum) => {\r\n //pagenum은 1,2,3,4 식으로 전송 됨.\r\n setPage(pagenum-1);\r\n };\r\n\r\n const getData = React.useCallback(async () => {\r\n const response = await axios.get(`https://sjswbot.site/question/${department}?page=${page}&size=${pageSize}`,header, { widthCredentials: true });\r\n console.log(response);\r\n setdataSize(response.data.result.count);\r\n setData(response.data.result.rows);\r\n }, [page,setPage]);\r\n\r\n React.useEffect(() => {\r\n getData();\r\n }, [page,setPage]);\r\n\r\n return (\r\n <div\r\n style={{\r\n margin: \"3% 10%\",\r\n padding: \"1% 0%\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n borderRadius: \"0.5rem\",\r\n border: \"2px solid lightgray\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n textAlign: \"center\",\r\n fontSize: \"30px\",\r\n fontFamily: \"Gothic A1\",\r\n }}\r\n >\r\n <p>유저들의 질문</p>\r\n </div>\r\n 소융봇에서 제공하고 있지 않은 질문들에 대해서 유저들이 남긴 질문입니다.\r\n <div style={{ display: \"flex\", flexDirection: \"row\", margin: \"10px 0 2rem\" }}>\r\n <div onClick={()=>setmenu(1)} style={{color:'RGB(50,50,255)',cursor:'pointer'}}>\r\n <u>질문 추가 및 수정페이지 </u>\r\n </div>\r\n 에서 질문에 대한 답변을 올려주세요 😊\r\n </div>\r\n {/* {data.map((it,i)=>{\r\n it.count=data.length-i;\r\n it.props=props;\r\n return(\r\n <QuestionList key = {i} data={it} getData={getData}/>\r\n )\r\n })} */}\r\n {PageRefresh()}\r\n <div style={{ marginBottom: \"2rem\" }} />\r\n <Pagination\r\n current={page+1}\r\n total={dataSize}\r\n defaultPageSize={pageSize}\r\n onChange={onPageChange}\r\n style={{ marginBottom: \"1.5rem\" }}\r\n />\r\n </div>\r\n );\r\n};\r\n\r\nexport default Userquestion;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Question.js",["490","491","492","493","494","495","496","497","498","499","500","501","502","503","504","505"],"import React from \"react\";\r\nimport {\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n Row,\r\n Col,\r\n Divider,\r\n Modal,\r\n notification,\r\n Tooltip,\r\n Pagination,\r\n Image,\r\n Carousel,\r\n Checkbox,\r\n} from \"antd\";\r\nimport axios from \"axios\";\r\nimport { Link } from \"react-router-dom\";\r\nimport styled from \"styled-components\";\r\nimport { FormInstance } from \"antd/lib/form\";\r\nimport { CloudUploadOutlined ,QuestionCircleOutlined } from \"@ant-design/icons\";\r\nimport QuestionList from \"./QuestionList\";\r\n\r\nconst Option = Select.Option;\r\nconst category = [\"일반공지\",\"입학\",\"학사\",\"국제교류\",\"졸업\",\"행사\",\"취업\",\"장학\",\"교내모집\",\"경시대회/공모전\",\"기타\"];\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 1.5,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst { TextArea } = Input;\r\n\r\nconst Question = (props) => {\r\n const pageSize = parseInt(window.innerHeight / 70);\r\n // 한 페이지에 담을 데이터 수 (height에 따라 개수 다르게 설정)\r\n const department = localStorage.getItem(\"department\");\r\n const deptname = localStorage.getItem(\"dept_name\");\r\n const [mode,setmode] = React.useState(false);\r\n const [dataSize,setdataSize] = React.useState(0);\r\n const [form] = Form.useForm();\r\n const [visible, setVisible] = React.useState(false);\r\n const [helpvisible,setHelpVisible] = React.useState(false);\r\n const [data, setData] = React.useState([]);\r\n const [page, setPage] = React.useState(0);\r\n const [dep,setDep] = React.useState([]);\r\n const {\r\n menu,\r\n setmenu\r\n } = props;\r\n\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n const loadDep = () => {\r\n axios\r\n .get(\"https://sjswbot.site/dep\")\r\n .then((res) => {\r\n setDep(res.data.result);\r\n })\r\n .catch((error) => {\r\n console.log(\"에러발생\")\r\n });\r\n }\r\n\r\n const FormHandler = () => {\r\n setVisible(true);\r\n };\r\n\r\n const handleOk = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const handleCancel = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const PageRefresh = () => {\r\n window.scrollTo({ top: 0, behavior: \"smooth\" });\r\n // data 새로 불러올시 맨 위로 스크롤\r\n\r\n // return data.map((it, i) => {\r\n\r\n // return (\r\n // <QuestionList\r\n // key={i}\r\n // data={it}\r\n // count={dataSize - i - pageSize * (page)}\r\n // getData={getData}\r\n // setPage={setPage}\r\n // pageSize={pageSize}\r\n // page={page}\r\n // />\r\n // );\r\n // });\r\n };\r\n\r\n const onFinishFunc = async (formData) => {\r\n // 공백 문자처리\r\n for (const [key, value] of Object.entries(formData)) {\r\n if (value === undefined || value === null || value === NaN) {\r\n formData[key] = \"\";\r\n }\r\n }\r\n\r\n const response = await axios\r\n .post(`https://sjswbot.site/knowledgePlus`, formData, header, { widthCredentials:true })\r\n .then((res) => {\r\n console.log(res);\r\n if (res.status === 200) {\r\n setPage(0);\r\n getData();\r\n setVisible(false);\r\n form.setFieldsValue({\r\n faqno: \"\",\r\n category1: \"\",\r\n category2: \"\",\r\n category3: \"\",\r\n category4: \"\",\r\n question: \"\",\r\n questionAnswer: \"\",\r\n landingUrl: \"\",\r\n imageinfo: \"\",\r\n });\r\n return openNotification('success', '질문을 등록했습니다!');\r\n }\r\n })\r\n .catch((error) => {\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n };\r\n\r\n const onValuesChange = (changedValue, allValue) => {\r\n console.log(changedValue);\r\n };\r\n\r\n const onPageChange = (pagenum) => {\r\n //pagenum은 1,2,3,4 식으로 전송 됨.\r\n setPage(pagenum-1);\r\n };\r\n\r\n const getData = React.useCallback(async () => {\r\n if (!mode){\r\n const response = await axios.get(`https://sjswbot.site/knowledgePlus/list/${deptname}?page=${page}&size=${pageSize}`,header,{ widthCredentials: true });\r\n console.log(response);\r\n setdataSize(response.data.result.count);\r\n setData(response.data.result.rows);\r\n }\r\n else{\r\n const response = await axios.get(`https://sjswbot.site/knowledgePlus/?page=${page}&size=${pageSize}`,header,{ widthCredentials: true });\r\n console.log(response);\r\n setdataSize(response.data.result.count);\r\n setData(response.data.result.rows);\r\n }\r\n }, [page,setPage]);\r\n\r\n const changeMode = React.useCallback(async () =>{\r\n if(!mode){\r\n const response = await axios.get(`https://sjswbot.site/knowledgePlus/list/${deptname}?page=0&size=${pageSize}`,header,{ widthCredentials: true });\r\n console.log(response);\r\n setdataSize(response.data.result.count);\r\n setData(response.data.result.rows);\r\n setPage(0);\r\n }\r\n else{\r\n const response = await axios.get(`https://sjswbot.site/knowledgePlus/?page=0&size=${pageSize}`,header,{ widthCredentials: true });\r\n console.log(response);\r\n setdataSize(response.data.result.count);\r\n setData(response.data.result.rows);\r\n setPage(0);\r\n }\r\n },[mode,setmode]);\r\n\r\n React.useEffect(() => {\r\n getData();\r\n loadDep();\r\n }, [page,setPage]);\r\n\r\n React.useEffect(() => {\r\n changeMode();\r\n }, [mode,setmode]);\r\n\r\n return (\r\n <div\r\n style={{\r\n margin: \"3% 10%\",\r\n padding: \"1% 0%\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n borderRadius: \"0.5rem\",\r\n border: \"2px solid lightgray\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n textAlign: \"center\",\r\n fontSize: \"30px\",\r\n fontFamily: \"Gothic A1\",\r\n width:\"100%\"\r\n }}\r\n >\r\n <div style={{width:\"100%\",margin:\"1rem 0 1rem\"}}>\r\n 지식+ 질문 추가/수정 페이지\r\n <QuestionCircleOutlined onClick={()=>setHelpVisible(true)} style={{fontSize:\"1.5rem\",margin:\"1rem 5rem 0\",float:\"right\",position:\"absolute\"}}/>\r\n </div>\r\n\r\n </div>\r\n 소융봇에서 제공 할 질문과 답변을 관리하는 페이지입니다.\r\n <div style={{ display: \"flex\", flexDirection: \"row\", margin: \"10px 0 2rem\" }}>\r\n <div onClick={()=>setmenu(2)} style={{color:'RGB(50,50,255)',cursor:'pointer'}}>\r\n <u>유저들의 질문</u>\r\n </div>{\" \"}\r\n 에서 질문을 골라보세요 😊\r\n </div>\r\n <div style={{width:\"100%\",marginRight:\"8rem\"}}>\r\n <Checkbox \r\n onClick={()=>{\r\n mode\r\n ?setmode(false)\r\n :setmode(true)\r\n }\r\n }\r\n style={{float:\"right\",fontSize:\"0.7rem\"}}\r\n >\r\n 타학과 질문 포함하기\r\n </Checkbox>\r\n </div>\r\n <Modal\r\n centered\r\n visible={helpvisible}\r\n onOk={() => setHelpVisible(false)}\r\n onCancel={() => setHelpVisible(false)}\r\n width={\"auto\"}\r\n height={\"auto\"}\r\n footer={null}\r\n >\r\n <Carousel\r\n style={{ width: \"65rem\", margin: \"1rem\", lineHeight:\"8rem\" }}\r\n >\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106896939-983d1680-6735-11eb-8afc-a03366f22dba.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106896944-9a9f7080-6735-11eb-92a8-a764fd6cd534.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106896949-9c693400-6735-11eb-9478-183d37ed4362.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106896953-9e32f780-6735-11eb-821d-980d9cf48950.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106896957-9f642480-6735-11eb-9952-ee7b45c4e614.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n </Carousel>\r\n </Modal>\r\n {data.map((it, i) => {\r\n return (\r\n <QuestionList\r\n key={i}\r\n data={it}\r\n count={dataSize - i - pageSize * (page)}\r\n getData={getData}\r\n setPage={setPage}\r\n pageSize={pageSize}\r\n page={page}\r\n />\r\n );\r\n })}\r\n <div style={{ marginBottom: \"2rem\" }} />\r\n <Pagination\r\n current={page+1}\r\n total={dataSize}\r\n defaultPageSize={pageSize}\r\n onChange={onPageChange}\r\n style={{ marginBottom: \"1.5rem\" }}\r\n />\r\n <Button onClick={FormHandler}>질문 추가</Button>\r\n <Modal\r\n title=\"질문추가\"\r\n visible={visible}\r\n onOk={handleOk}\r\n onCancel={handleCancel}\r\n maskClosable={false}\r\n footer={[null, null]} //ok와 cancel 버튼을 없애기 위함\r\n width=\"40rem\"\r\n >\r\n <Form\r\n form={form}\r\n onFinish={onFinishFunc}\r\n onFieldsChange={onValuesChange}\r\n autoComplete=\"off\"\r\n style={{ width: \"95%\", padding: \"0 5%\" }}\r\n >\r\n <Form.Item\r\n label=\"질문\"\r\n name=\"question\"\r\n rules={[\r\n {\r\n required: true,\r\n message: \"질문을 입력해주세요\",\r\n },\r\n ]}\r\n required\r\n >\r\n <Input />\r\n </Form.Item>\r\n <Form.Item\r\n label=\"답변\"\r\n name=\"questionAnswer\"\r\n rules={[\r\n {\r\n required: true,\r\n message: \"답변을 입력해주세요\",\r\n },\r\n ]}\r\n required\r\n >\r\n <Input.TextArea \r\n initialvalues={data.questionAnswer} \r\n style={{height:\"10rem\", resize:\"none\"}}\r\n /> \r\n </Form.Item>\r\n <Form.Item\r\n label=\"학과\"\r\n name=\"category1\"\r\n rules={[\r\n {\r\n required: true,\r\n message: \"학과를 설정해주세요\",\r\n },\r\n ]}\r\n required\r\n >\r\n <Select>\r\n {dep.map(i => (i.department === \"공통\" || i.idx === Number(department)) ? <Option value={i.department}>{i.department}</Option>:null)}\r\n </Select>\r\n </Form.Item>\r\n <Form.Item \r\n label=\"대분류\" \r\n name=\"category2\"\r\n rules={[\r\n {\r\n required: true,\r\n message: \"대분류를 설정해주세요\",\r\n },\r\n ]}\r\n required\r\n >\r\n <Select>\r\n {category.map(i => <Option value={i}>{i}</Option>)}\r\n </Select>\r\n </Form.Item>\r\n <Form.Item label=\"소분류\" name=\"category3\">\r\n <Input />\r\n </Form.Item>\r\n {/* <Form.Item label=\"카테고리 2\" name=\"category4\">\r\n <Input />\r\n </Form.Item>\r\n <Form.Item label=\"카테고리 3\" name=\"category5\">\r\n <Input />\r\n </Form.Item> */}\r\n <Form.Item label=\"답변링크\" name=\"landingUrl\">\r\n <Input />\r\n </Form.Item>\r\n {/* <Form.Item label=\"이미지링크\" name=\"imageinfo\">\r\n <Input />\r\n </Form.Item> */}\r\n <Form.Item colon={false} wrapperCol={{ offset: 11 }}>\r\n <Button\r\n icon={<CloudUploadOutlined />}\r\n htmlType=\"submit\"\r\n style={{ margin: \"1rem 1rem 0 1rem\" }}\r\n >\r\n 추가하기\r\n </Button>\r\n </Form.Item>\r\n </Form>\r\n </Modal>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Question;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Bestqa.js",["506","507","508","509","510","511","512"],"import React, { useState } from \"react\";\r\nimport axios from \"axios\";\r\nimport {\r\n AutoComplete,\r\n Form,\r\n Select,\r\n Input,\r\n Divider,\r\n notification,\r\n Button,\r\n Carousel,\r\n Image,\r\n} from \"antd\";\r\nimport moment from \"moment\";\r\nimport { CloudUploadOutlined } from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 2,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst BestqaData = ({ data, key }) => {\r\n const [form] = Form.useForm();\r\n const confirmFunc = (formData) => {\r\n Swal.fire({\r\n title: \"수정하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n onFinishFunc(formData);\r\n }\r\n });\r\n };\r\n\r\n const onFinishFunc = async (formData) => {\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n console.log(formData);\r\n const response = await axios\r\n .put(`https://sjswbot.site/bestqa/${data.idx}`, formData,header,{ widthCredentials: true })\r\n .then((res) => {\r\n if (res.status === 200) {\r\n Swal.fire({\r\n icon: \"success\",\r\n title: \"수정 완료\",\r\n showConfirmButton: false,\r\n width: \"20rem\",\r\n timer: 1500,\r\n });\r\n } else {\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n }\r\n })\r\n .catch((err) => {\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n };\r\n\r\n return (\r\n <div\r\n style={{\r\n width: \"100%\",\r\n height:\"auto\",\r\n margin:\"0.5rem 0\"\r\n }}\r\n >\r\n <Form\r\n initialValues={{ id: data.idx, question: data.question }}\r\n onFinish={confirmFunc}\r\n autoComplete=\"off\"\r\n form={form}\r\n style={{\r\n display: \"flex\",\r\n flexDirection: \"row\",\r\n justifyContent: \"center\",\r\n }}\r\n >\r\n <Form.Item label={`TOP ${data.idx} `} name=\"question\">\r\n <Input style={{ width: \"30vw\" }} />\r\n </Form.Item>\r\n <Form.Item colon={false} wrapperCol={{ span: 11, offset: 11 }}>\r\n <Button icon={<CloudUploadOutlined />} htmlType=\"submit\">\r\n 수정하기\r\n </Button>\r\n </Form.Item>\r\n <div style={{color: \"gray\" ,marginLeft:'5rem'}}>\r\n {data.User.username} 조교님\r\n <br />({moment(data.updatedAt).format(\"LLL\")})\r\n </div>\r\n </Form>\r\n </div>\r\n );\r\n};\r\n\r\nconst Bestqa = () => {\r\n const [data, setData] = React.useState([]);\r\n const getData = React.useCallback(async () => {\r\n const response = await axios.get(\"https://sjswbot.site/bestqa\");\r\n console.log(response);\r\n setData(response.data.result);\r\n }, []);\r\n React.useEffect(() => {\r\n getData();\r\n }, []);\r\n return (\r\n <div\r\n style={{\r\n margin: \"3% 10%\",\r\n padding: \"1% 0%\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n borderRadius: \"0.5rem\",\r\n border: \"2px solid lightgray\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n textAlign: \"center\",\r\n fontSize: \"30px\",\r\n fontFamily: \"Gothic A1\",\r\n }}\r\n >\r\n <p>자주 묻는 질문 수정 페이지</p>\r\n </div>\r\n <Carousel\r\n style={{ width: \"50rem\", height: \"32rem\", margin: \"1rem 1rem 2rem\" }}\r\n >\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106900224-9bd29c80-6739-11eb-982b-2d8dfdadb5b5.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106900225-9d03c980-6739-11eb-8318-f08e617a2651.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106900229-9e34f680-6739-11eb-8e25-a8dac86eff44.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106900234-9f662380-6739-11eb-8d10-08bfc76dca34.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n </Carousel>\r\n {data.map((it, i) => {\r\n return <BestqaData key={i} data={it} />;\r\n })}\r\n </div>\r\n );\r\n};\r\n\r\nexport default Bestqa;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\DataModify.js",["513","514","515","516","517","518","519","520","521","522","523","524","525","526","527","528","529","530","531","532","533","534","535","536","537"],"import React from \"react\";\r\nimport {\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n Row,\r\n Col,\r\n Divider,\r\n Modal,\r\n Pagination,\r\n Image,\r\n Carousel,\r\n} from \"antd\";\r\nimport { Link } from \"react-router-dom\";\r\nimport axios from \"axios\";\r\nimport styled from \"styled-components\";\r\nimport { FormInstance } from \"antd/lib/form\";\r\nimport { CloudUploadOutlined } from \"@ant-design/icons\";\r\nimport DataModifylist from \"./DataModifyList\";\r\n\r\nconst Option = Select.Option;\r\nconst { TextArea } = Input;\r\n\r\nconst DataModify = (props) => {\r\n const department = localStorage.getItem(\"department\");\r\n const pageSize = parseInt(window.innerHeight / 70);\r\n const [dataSize,setdataSize] = React.useState(0);\r\n let count = 0;\r\n const [size, setSize] = React.useState(0);\r\n // 한 페이지에 담을 데이터 수 (height에 따라 개수 다르게 설정)\r\n const [form] = Form.useForm();\r\n const [visible, setVisible] = React.useState(false);\r\n const [data, setData] = React.useState([]);\r\n const [page, setPage] = React.useState(0);\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n const {\r\n menu,\r\n setmenu\r\n } = props;\r\n \r\n const FormHandler = () => {\r\n setVisible(true);\r\n };\r\n\r\n const handleOk = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const handleCancel = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const PageRefresh = () => {\r\n // const _data = data.slice(\r\n // (count - 1) * pageSize,\r\n // (count - 1) * pageSize + pageSize\r\n // );\r\n // data page에 따라 자르는 작업\r\n\r\n window.scrollTo({ top: 0, behavior: \"smooth\" });\r\n // data 새로 불러올시 맨 위로 스크롤\r\n\r\n return data.map((it, i) => {\r\n // 게시글 번호 계산\r\n\r\n return (\r\n <DataModifylist\r\n key={i}\r\n data={it}\r\n count={dataSize - i - pageSize * (page)}\r\n getData={getData}\r\n setPage={setPage}\r\n pageSize={pageSize}\r\n page={page}\r\n />\r\n );\r\n });\r\n };\r\n\r\n const onValuesChange = (changedValue, allValue) => {\r\n console.log(changedValue);\r\n };\r\n\r\n const onPageChange = (pagenum) => {\r\n setPage(pagenum-1);\r\n };\r\n\r\n const getData = React.useCallback(async () => {\r\n const response = await axios.get(`https://sjswbot.site/fixRequest/${department}?page=${page}&size=${pageSize}`, header, { widthCredentials: true });\r\n \r\n console.log(response);\r\n \r\n setdataSize(response.data.result.count);\r\n setData(response.data.result.rows);\r\n PageRefresh();\r\n // setData(response.data.values.reverse());\r\n },[page,setPage]);\r\n\r\n React.useEffect(() => {\r\n getData();\r\n }, [page,setPage]);\r\n\r\n return (\r\n <div\r\n style={{\r\n margin: \"3% 10%\",\r\n padding: \"1% 0%\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n borderRadius: \"0.5rem\",\r\n border: \"2px solid lightgray\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n textAlign: \"center\",\r\n fontSize: \"30px\",\r\n fontFamily: \"Gothic A1\",\r\n }}\r\n >\r\n <p>유저들의 데이터 수정 요청</p>\r\n </div>\r\n 데이터에 오류가 있는 질문들의 수정 요청입니다.\r\n <div style={{ display: \"flex\", flexDirection: \"row\", margin: \"10px 0 2rem\" }}>\r\n <div onClick={()=>setmenu(1)} style={{color:'RGB(50,50,255)',cursor:'pointer'}}>\r\n <u>질문 추가 및 수정페이지</u>\r\n </div>\r\n 에서 질문에 대한 답변을 수정해주세요 😊\r\n </div>\r\n {/* {data.map((it,i)=>{\r\n it.count=data.length-i;\r\n it.props=props;\r\n return(\r\n <QuestionList key = {i} data={it} getData={getData}/>\r\n )\r\n })} */}\r\n {PageRefresh()}\r\n <div style={{ marginBottom: \"2rem\" }} />\r\n <Pagination\r\n current={page+1}\r\n total={dataSize}\r\n defaultPageSize={pageSize}\r\n onChange={onPageChange}\r\n style={{ marginBottom: \"1.5rem\" }}\r\n />\r\n </div>\r\n );\r\n};\r\n\r\nexport default DataModify;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\components\\Menu.js",["538","539","540","541","542","543","544","545","546","547","548"],"import React, { Component ,useEffect} from \"react\";\r\nimport {\r\n Link,\r\n Route,\r\n useHistory,\r\n Switch,\r\n BrowserRouter as Router,\r\n} from \"react-router-dom\";\r\nimport {\r\n NotificationOutlined,\r\n LoadingOutlined,\r\n CalendarOutlined,\r\n BarsOutlined,\r\n AuditOutlined,\r\n LayoutOutlined,\r\n MessageOutlined,\r\n BulbOutlined,\r\n ClockCircleOutlined,\r\n QuestionCircleOutlined,\r\n WarningOutlined,\r\n LockOutlined,\r\n} from \"@ant-design/icons\";\r\nimport { Divider,Button } from \"antd\";\r\nimport styled from \"styled-components\";\r\nimport oc from \"open-color\";\r\n\r\nconst MenuContainer = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n padding-top: 2rem;\r\n`;\r\n\r\nconst MenuContent = styled.div`\r\n color: ${oc.gray[7]};\r\n width: 11rem; // 클릭 박스 조정\r\n height: 100%;\r\n padding: 1rem 0;\r\n font-weight: bold;\r\n`;\r\n\r\nconst MenuItem = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n height: 3rem;\r\n width: 100%;\r\n border-radius: 5px;\r\n transition: all 0.2s;\r\n &:hover {\r\n background: ${oc.gray[3]};\r\n cursor: pointer;\r\n font-size: 1rem;\r\n }\r\n`;\r\n\r\nconst Menu = (props) => {\r\n let history = useHistory();\r\n const {\r\n menu,\r\n setmenu\r\n } = props;\r\n const role = localStorage.getItem(\"role\");\r\n const name = localStorage.getItem(\"username\");\r\n const ScrollTop = () => {\r\n window.scrollTo({ top: 0, behavior: \"smooth\" });\r\n };\r\n\r\n return (\r\n <MenuContainer>\r\n <MenuItem onClick={ScrollTop}>\r\n <div onClick={()=>setmenu(0)} style={{ textDecoration: \"none\" }}>\r\n <MenuContent>\r\n <NotificationOutlined style={{ padding: \"0 1rem\" }} />\r\n 공지사항\r\n </MenuContent>\r\n </div>\r\n </MenuItem>\r\n <Divider style={{ margin: \"0\" }} />\r\n <MenuItem onClick={ScrollTop}>\r\n <div onClick={()=>setmenu(1)} style={{ textDecoration: \"none\" }}>\r\n <MenuContent>\r\n <BulbOutlined style={{ padding: \"0 1rem\" }} />\r\n 질문 추가 및 수정\r\n </MenuContent>\r\n </div>\r\n </MenuItem>\r\n <Divider style={{ margin: \"0\" }} />\r\n <MenuItem onClick={ScrollTop}>\r\n <div onClick={()=>setmenu(2)} style={{ textDecoration: \"none\" }}>\r\n <MenuContent>\r\n <QuestionCircleOutlined style={{ padding: \"0 1rem\" }} />\r\n 유저들의 질문\r\n </MenuContent>\r\n </div>\r\n </MenuItem>\r\n <Divider style={{ margin: \"0\" }} />\r\n <MenuItem onClick={ScrollTop}>\r\n <div onClick={()=>setmenu(3)} style={{ textDecoration: \"none\" }}>\r\n <MenuContent>\r\n <WarningOutlined style={{ padding: \"0 1rem\" }} />\r\n 데이터 수정 요청\r\n </MenuContent>\r\n </div>\r\n </MenuItem>\r\n\r\n <Divider style={{ margin: \"0\" }} />\r\n <MenuItem onClick={ScrollTop}>\r\n <div onClick={()=>setmenu(4)} style={{ textDecoration: \"none\" }}>\r\n <MenuContent>\r\n <ClockCircleOutlined style={{ padding: \"0 1rem\" }} />\r\n 학과 사무실\r\n </MenuContent>\r\n </div>\r\n </MenuItem>\r\n <Divider style={{ margin: \"0\" }} />\r\n <MenuItem onClick={ScrollTop}>\r\n <div onClick={()=>setmenu(5)} style={{ textDecoration: \"none\" }}>\r\n <MenuContent>\r\n <BarsOutlined style={{ padding: \"0 1rem\" }} />\r\n 교과과정\r\n </MenuContent>\r\n </div>\r\n </MenuItem>\r\n <Divider style={{ margin: \"0\" }} />\r\n <MenuItem onClick={ScrollTop}>\r\n <div onClick={()=>setmenu(6)} style={{ textDecoration: \"none\" }}>\r\n <MenuContent>\r\n <CalendarOutlined style={{ padding: \"0 1rem\" }} />\r\n 학과공지\r\n </MenuContent>\r\n </div>\r\n </MenuItem>\r\n <Divider style={{ margin: \"0\" }} />\r\n <MenuItem onClick={ScrollTop}>\r\n <div onClick={()=>setmenu(7)} style={{ textDecoration: \"none\" }}>\r\n <MenuContent>\r\n <AuditOutlined style={{ padding: \"0 1rem\" }} />\r\n 교수님 연구실\r\n </MenuContent>\r\n </div>\r\n </MenuItem>\r\n <Divider style={{ margin: \"0\" }} />\r\n <MenuItem onClick={ScrollTop}>\r\n <div onClick={()=>setmenu(8)} style={{ textDecoration: \"none\" }}>\r\n <MenuContent>\r\n <LayoutOutlined style={{ padding: \"0 1rem\" }} />\r\n 강의실\r\n </MenuContent>\r\n </div>\r\n </MenuItem>\r\n <Divider style={{ margin: \"0\" }} />\r\n <MenuItem onClick={ScrollTop}>\r\n <div onClick={()=>setmenu(9)} style={{ textDecoration: \"none\" }}>\r\n <MenuContent>\r\n <MessageOutlined style={{ padding: \"0 1rem\" }} />\r\n 자주 묻는 질문\r\n </MenuContent>\r\n </div>\r\n </MenuItem>\r\n { role === \"1\" ?(<MenuItem onClick={ScrollTop}>\r\n <div onClick={()=>setmenu(10)} style={{ textDecoration: \"none\" }}>\r\n <MenuContent>\r\n <LockOutlined style={{ padding: \"0 1rem\" }} />\r\n 관리자페이지\r\n </MenuContent>\r\n </div>\r\n </MenuItem>):null}\r\n </MenuContainer>\r\n );\r\n};\r\n\r\nexport default Menu;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\components\\Footer.js",["549","550","551","552","553","554"],"import React, { Component } from \"react\";\r\nimport styled from \"styled-components\";\r\nimport { Link, Route, Switch, BrowserRouter as Router } from \"react-router-dom\";\r\nimport oc from \"open-color\";\r\n\r\nconst Logo = styled.div`\r\n font-size: 2rem;\r\n letter-spacing: 3px;\r\n color: white;\r\n font-family: \"Rajdhani\";\r\n`;\r\n\r\nconst Spacer = styled.div`\r\n flex-grow: 1;\r\n`;\r\n\r\nconst Positioner = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n background-color: ${oc.gray[8]};\r\n position: fixed;\r\n height: 6.5%;\r\n bottom: 0%;\r\n width: 100%;\r\n min-width: 800px;\r\n z-index: 0;\r\n`;\r\n\r\nconst GradientBorder = styled.div`\r\n height: 2px;\r\n margin: 0rem 1rem 0 2rem;\r\n border-radius: 5rem;\r\n background: linear-gradient(to right, #a31432, #ffcccb);\r\n`;\r\n\r\nconst HeaderContents = styled.div`\r\n width: 100%;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n padding-right: 3rem;\r\n padding-left: 1rem;\r\n`;\r\n\r\nconst Footer = ({ children }) => {\r\n return (\r\n <Positioner>\r\n <HeaderContents>\r\n <Logo>Footer TEST</Logo>\r\n <Spacer />\r\n <Logo>SYB</Logo>\r\n </HeaderContents>\r\n </Positioner>\r\n );\r\n};\r\n\r\nexport default Footer;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\components\\Header.js",["555","556","557","558","559","560","561","562","563","564","565","566"],"import React, { Component, useState } from \"react\";\r\nimport styled from \"styled-components\";\r\nimport {\r\n Link,\r\n Redirect,\r\n Route,\r\n Switch,\r\n withRouter,\r\n BrowserRouter as Router,\r\n} from \"react-router-dom\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { logoutUser, authUser } from \"../actions/userAction\";\r\nimport { UserOutlined, LockOutlined } from \"@ant-design/icons\";\r\nimport { Button } from \"antd\";\r\nimport oc from \"open-color\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst Logo = styled.div`\r\n font-size: 2.5rem;\r\n letter-spacing: 15px;\r\n color: white;\r\n font-family: \"Rajdhani\";\r\n`;\r\n\r\nconst Spacer = styled.div`\r\n flex-grow: 1;\r\n`;\r\n\r\nconst Positioner = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n background: #a31432;\r\n position: fixed;\r\n top: 0px;\r\n width: 100%;\r\n min-width: 800px;\r\n z-index: 5;\r\n`;\r\n\r\nconst Logout = styled.div`\r\n font-size: 1.2rem;\r\n letter-spacing: 3px;\r\n color: black;\r\n font-family: \"Rajdhani\";\r\n &:hover {\r\n color: ${oc.gray[6]};\r\n cursor: pointer;\r\n }\r\n`;\r\n\r\nconst GradientBorder = styled.div`\r\n height: 10 px;\r\n background: linear-gradient(to right, black, white);\r\n`;\r\n\r\nconst UserContainer = styled.div`\r\n background-color: white;\r\n padding: 0 2rem;\r\n height: 70%;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n border-radius: 55px;\r\n border: 3px solid ${oc.red[8]};\r\n`;\r\n\r\nconst HeaderContents = styled.div`\r\n width: 100%;\r\n height: 75px;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n margin: 0 2rem;\r\n padding-right: 3rem;\r\n padding-left: 1rem;\r\n z-index:2;\r\n`;\r\n\r\nconst EmptyBox = styled.div`\r\n height: 1.3rem;\r\n background-color:white;\r\n display: fixed;\r\n`;\r\n\r\nfunction Header(props) {\r\n const dispatch = useDispatch();\r\n const username = localStorage.getItem(\"username\");\r\n const dept = localStorage.getItem(\"dept_name\");\r\n const onClickHandler = () => {\r\n dispatch(logoutUser());\r\n localStorage.clear();\r\n props.history.push(\"/\");\r\n };\r\n return (\r\n <Positioner>\r\n <HeaderContents>\r\n <Logo>SYB ADMIN</Logo>\r\n <Spacer />\r\n <UserContainer>\r\n <Logo\r\n style={{\r\n fontSize: \"1.2rem\",\r\n letterSpacing: \"1px\",\r\n paddingRight: \"3rem\",\r\n fontFamily: \"Gothic A1\",\r\n color: \"black\",\r\n }}\r\n >\r\n <UserOutlined\r\n style={{\r\n color: \"white\",\r\n padding: \"5px\",\r\n fontSize: \"1.5rem\",\r\n marginRight: \"1rem\",\r\n borderRadius: \"100%\",\r\n backgroundColor: \"gray\",\r\n }}\r\n />\r\n {/* {dept}  */}\r\n {username} 조교님\r\n </Logo>\r\n <Logout onClick={onClickHandler}>Logout</Logout>\r\n </UserContainer>\r\n </HeaderContents>\r\n <GradientBorder />\r\n <EmptyBox/>\r\n </Positioner>\r\n );\r\n}\r\n\r\nexport default withRouter(Header); // withRouter 해야 'push'를 못찾는 에러 메세지 뜨지 않음\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\actions\\userAction.js",["567","568","569","570","571","572","573","574"],"import {\r\n REGISTER_USER,\r\n LOGIN_USER,\r\n LOGOUT_USER,\r\n AUTH_USER,\r\n REGISTER_ERROR,\r\n LOGIN_SUCCESS,\r\n AUTH_SUCCESS,\r\n AUTH_FAILED,\r\n} from \"./types\";\r\nimport React, { Component, useState } from \"react\";\r\nimport axios from \"axios\";\r\nimport { request } from \"../utils/axios\";\r\n\r\nexport function registerUser(dataToSubmit) {\r\n return (dispatch) => {\r\n dispatch({\r\n type: REGISTER_USER,\r\n });\r\n\r\n return axios\r\n .post(\"https://sjswbot.site/auth/signup\", dataToSubmit)\r\n .then((response) => {\r\n console.log(response);\r\n return response;\r\n }\r\n )\r\n .catch((error) => {\r\n console.log(error);\r\n return error.response;\r\n })\r\n };\r\n}\r\n\r\n// export function loginUser(dataToSubmit) {\r\n// const data = request(\"post\", \"/auth/login\", dataToSubmit);\r\n// return {\r\n// type: LOGIN_USER,\r\n// payload: data,\r\n// };\r\n// }\r\n\r\nexport function loginUser(dataToSubmit) {\r\n const uid = dataToSubmit.userid;\r\n\r\n return (dispatch) => {\r\n dispatch({\r\n type: LOGIN_USER,\r\n payload: uid,\r\n });\r\n\r\n return axios\r\n .post(\"https://sjswbot.site/auth/login\", dataToSubmit)\r\n .then((response) => response)\r\n .catch((error) => error.response);\r\n };\r\n}\r\n\r\nexport function loginSuccess(accessToken) {\r\n localStorage.setItem(\"user_token\", accessToken);\r\n //axios.defaults.headers.common['Authorization'] = accessToken;\r\n localStorage.setItem(\"menuIndex\",0);\r\n return (dispatch) => {\r\n dispatch({\r\n type: LOGIN_SUCCESS,\r\n });\r\n };\r\n}\r\n\r\nexport function logoutUser() {\r\n return (dispatch) => {\r\n dispatch({\r\n type: LOGOUT_USER,\r\n });\r\n };\r\n}\r\n\r\nexport function authUser(props) {\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n return (dispatch) => {\r\n return axios\r\n .get(\"https://sjswbot.site/auth/check\", header, { widthCredentials: true })\r\n .then((res) => {\r\n dispatch({\r\n type: AUTH_SUCCESS,\r\n });\r\n let dept = \"\";\r\n console.log(res);\r\n axios\r\n .get(\"https://sjswbot.site/dep\")\r\n .then((res2) => {\r\n localStorage.setItem(\"dept_name\",res2.data.result[res.data.result[0].department-1].department);\r\n }) \r\n localStorage.setItem(\"username\", res.data.result[0].user);\r\n localStorage.setItem(\"department\", res.data.result[0].department);\r\n localStorage.setItem(\"role\",res.data.result[0].role);\r\n return res.data.result[0];\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n dispatch({\r\n type: AUTH_FAILED,\r\n });\r\n });\r\n };\r\n}\r\n\r\nfunction dep(num) {\r\n return axios\r\n .get(\"https://sjswbot.site/dep\")\r\n .then((res) => res.data.result[num-1].department\r\n )\r\n}","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\actions\\types.js",[],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Userquestionlist.js",["575","576","577","578","579","580","581","582","583","584","585","586"],"import React, { useEffect } from \"react\";\r\nimport { Form, Select, Input, Button, Row, Col, Divider,notification, Modal } from \"antd\";\r\nimport axios from \"axios\";\r\nimport styled from \"styled-components\";\r\nimport { FormInstance } from \"antd/lib/form\";\r\nimport moment from \"moment\";\r\nimport {\r\n CloudUploadOutlined,\r\n ExclamationCircleOutlined,\r\n} from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 1.5,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst Userquestionlist = ({ data, getData, setPage, page }) => {\r\n const token = localStorage.getItem(\"user_token\");\r\n const deptname = localStorage.getItem(\"dept_name\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n const confirmFunc = (formData) => {\r\n Swal.fire({\r\n title: \"삭제하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n onDeleteFunc(formData);\r\n }\r\n });\r\n };\r\n\r\n const onDeleteFunc = async (formData) => {\r\n const response = await axios\r\n .delete(`https://sjswbot.site/question/${data.idx}`,header, {widthCredentials:true})\r\n .catch((error) => {\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n console.log(error);\r\n });\r\n setPage(page);\r\n getData();\r\n return openNotification('success', '데이터를 삭제했습니다!');\r\n };\r\n\r\n return (\r\n <>\r\n <Divider style={{ margin: \"1vh 0\" }} />\r\n <Row\r\n justify=\"start\"\r\n style={{\r\n width: \"90%\",\r\n border: \"1px solid lightgray\",\r\n padding: \"0.8rem 0\",\r\n margin: \"0.1rem 1rem\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n borderRadius: \"5px\",\r\n }}\r\n >\r\n <Col\r\n flex={1}\r\n style={{ textAlign: \"center\", width: \"15%\", fontWeight: \"bold\" }}\r\n >\r\n {data.department === 11\r\n ?\"공통질문\"\r\n :deptname}\r\n </Col>\r\n <Col flex={8} style={{ marginLeft: \"2rem\", width: \"50%\" }}>\r\n {data.content}\r\n </Col>\r\n <Col flex={2} style={{ width: \"15%\" }}>\r\n {moment(data.updatedAt).format(\"LLL\")}\r\n </Col>\r\n <Col flex={1}>\r\n <Button\r\n onClick={confirmFunc}\r\n type=\"primary\"\r\n style={{ backgroundColor: \"RGB(255,0,0,0.6)\", border: \"none\"}}\r\n >\r\n 삭제하기\r\n </Button>\r\n </Col>\r\n </Row>\r\n </>\r\n );\r\n};\r\n\r\nexport default Userquestionlist;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\QuestionList.js",["587","588","589","590","591","592","593","594","595","596"],"import React, { useEffect } from \"react\";\r\nimport { Form, Select, Input, Button, Row, Col,notification, Divider, Modal,Tooltip} from \"antd\";\r\nimport axios from \"axios\";\r\nimport styled from \"styled-components\";\r\nimport moment from \"moment\";\r\nimport { FormInstance } from \"antd/lib/form\";\r\nimport {\r\n CloudUploadOutlined,\r\n ExclamationCircleOutlined,\r\n} from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 1.5,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst Option = Select.Option;\r\nconst category = [\"일반공지\",\"입학\",\"학사\",\"국제교류\",\"졸업\",\"행사\",\"취업\",\"장학\",\"교내모집\",\"경시대회/공모전\",\"기타\"];\r\n\r\nconst QuestionList = ({ data, getData, setPage, page,\r\n count,pageSize }) => {\r\n const deptname = localStorage.getItem(\"dept_name\");\r\n const department = localStorage.getItem(\"department\");\r\n const [form] = Form.useForm();\r\n const [visible, setVisible] = React.useState(false);\r\n const [dep,setDep] = React.useState([]);\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n const loadDep = () => {\r\n axios\r\n .get(\"https://sjswbot.site/dep\")\r\n .then((res) => {\r\n setDep(res.data.result);\r\n })\r\n .catch((error) => {\r\n console.log(\"에러발생\")\r\n });\r\n }\r\n \r\n const FormHandler = () => {\r\n form.setFieldsValue({\r\n faqno: data.faqno,\r\n category1: data.category1,\r\n category2: data.category2,\r\n category3: data.category3,\r\n // category4: data.category4,\r\n // category5: data.category5,\r\n question: data.question,\r\n questionAnswer: data.questionAnswer,\r\n landingUrl: data.landingUrl,\r\n // imageinfo: data.imageinfo,\r\n });\r\n setVisible(true);\r\n };\r\n\r\n const handleOk = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const handleCancel = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const confirmFunc = (formData) => {\r\n Swal.fire({\r\n title: \"삭제하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n onDeleteFunc(formData);\r\n }\r\n });\r\n };\r\n\r\n const onDeleteFunc = async (formData) => {\r\n const response = await axios\r\n .delete(`https://sjswbot.site/knowledgePlus/${data.faqno}`, header, { withReactContent : true })\r\n .catch((error) => {\r\n console.log(error);\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n setVisible(false);\r\n setPage(page);\r\n getData();\r\n return openNotification('success', '질문을 삭제했습니다!');\r\n };\r\n\r\n const onChangeFunc = async (formData) => {\r\n // 공백 문자처리\r\n for (const [key, value] of Object.entries(formData)) {\r\n if (value === undefined || value === null || value === NaN) {\r\n formData[key] = \"\";\r\n }\r\n }\r\n console.log(formData);\r\n const response = await axios\r\n .put(`https://sjswbot.site/knowledgePlus/${data.faqno}`, formData, header, { withReactContent : true })\r\n .then((res) => {\r\n console.log(res.status);\r\n if (res.status === 200) {\r\n setVisible(false);\r\n setPage(0);\r\n getData();\r\n return openNotification('success', '질문을 수정했습니다!');\r\n } else {\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n }\r\n })\r\n .catch((error) => {\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n };\r\n\r\n const onValuesChange = (changedValue, allValue) => {\r\n console.log(changedValue);\r\n };\r\n\r\n useEffect(() => {\r\n form.setFieldsValue({\r\n faqno: data.faqno,\r\n category1: data.category1,\r\n category2: data.category2,\r\n category3: data.category3,\r\n category4: data.category4,\r\n category5: data.category5,\r\n question: data.question,\r\n questionAnswer: data.questionAnswer,\r\n landingUrl: data.landingUrl,\r\n imageinfo: data.imageinfo,\r\n });\r\n },[]);\r\n\r\n return (\r\n <>\r\n <Divider style={{ margin: \"1vh 0\" }} />\r\n <Row\r\n justify=\"start\"\r\n style={{\r\n width: \"90%\",\r\n border: \"1px solid lightgray\",\r\n padding: \"0.8rem 0\",\r\n margin: \"0.1rem 1rem\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n borderRadius: \"5px\",\r\n }}\r\n >\r\n <Col\r\n flex={1}\r\n style={{ paddingLeft: \"2rem\", width: \"5%\", fontWeight: \"bold\" }}\r\n >\r\n {count}\r\n </Col>\r\n <Col flex={8} style={{ paddingLeft: \"2rem\", width: \"60%\" }}>\r\n {data.question}\r\n </Col>\r\n <Col flex={2} style={{ width: \"15%\" }}>\r\n {moment(data.updatedAt).format(\"LLL\")}\r\n </Col>\r\n <Col flex={1}>\r\n {\r\n data.category1 === \"공통\" || data.category1 === deptname\r\n ?<Button onClick={FormHandler}>수정하기</Button>\r\n :<Tooltip placement=\"bottom\" title={data.category1+\"의 질문입니다.\"}>\r\n <Button onClick={FormHandler} disabled>수정하기</Button>\r\n </Tooltip>\r\n }\r\n <Modal\r\n title=\"질문수정\"\r\n visible={visible}\r\n onOk={handleOk}\r\n onCancel={handleCancel}\r\n maskClosable={false}\r\n footer={[null, null]} //ok와 cancel 버튼을 없애기 위함\r\n width=\"40rem\"\r\n >\r\n <Form\r\n form={form}\r\n onFinish={onChangeFunc}\r\n onFieldsChange={onValuesChange}\r\n autoComplete=\"off\"\r\n style={{ width: \"95%\", padding: \"0 5%\" }}\r\n >\r\n <Form.Item\r\n label=\"질문\"\r\n name=\"question\"\r\n rules={[\r\n {\r\n required: true,\r\n message: \"질문을 입력해주세요\",\r\n },\r\n ]}\r\n required\r\n >\r\n <Input initialvalues={data.question} />\r\n </Form.Item>\r\n <Form.Item\r\n label=\"답변\"\r\n name=\"questionAnswer\"\r\n rules={[\r\n {\r\n required: true,\r\n message: \"답변을 입력해주세요\",\r\n },\r\n ]}\r\n required\r\n >\r\n <Input.TextArea \r\n initialvalues={data.questionAnswer} \r\n style={{height:\"10rem\", resize:\"none\"}}\r\n />\r\n </Form.Item>\r\n <Form.Item\r\n label=\"학과\"\r\n name=\"category1\"\r\n rules={[\r\n {\r\n required: true,\r\n message: \"학과를 설정해주세요\",\r\n },\r\n ]}\r\n required\r\n >\r\n <Input initialvalues={data.category1} readOnly/>\r\n </Form.Item>\r\n <Form.Item \r\n label=\"대분류\" \r\n name=\"category2\"\r\n rules={[\r\n {\r\n required: true,\r\n message: \"대분류를 설정해주세요\",\r\n },\r\n ]}\r\n required\r\n >\r\n <Select>\r\n {category.map(i => <Option value={i}>{i}</Option>)}\r\n </Select>\r\n </Form.Item>\r\n <Form.Item label=\"소분류\" name=\"category3\">\r\n <Input initialvalues={data.category3} />\r\n </Form.Item>\r\n {/* <Form.Item label=\"카테고리 2\" name=\"category4\">\r\n <Input initialvalues={data.category4} />\r\n </Form.Item>\r\n <Form.Item label=\"카테고리 3\" name=\"category5\">\r\n <Input initialvalues={data.category5} />\r\n </Form.Item> */}\r\n <Form.Item label=\"답변링크\" name=\"landingUrl\">\r\n <Input initialvalues={data.landingUrl} />\r\n </Form.Item>\r\n {/* <Form.Item label=\"이미지링크\" name=\"imageinfo\">\r\n <Input initialvalues={data.imageinfo} />\r\n </Form.Item> */}\r\n <Divider />\r\n <p style={{ width: \"100%\", color: \"gray\" }}>\r\n {data.User.username} 조교님\r\n <br />({moment(data.updatedAt).format(\"LLL\")})\r\n </p>\r\n <Form.Item colon={false} wrapperCol={{ span: 20, offset: 7 }}>\r\n <Button icon={<CloudUploadOutlined />} htmlType=\"submit\">\r\n 수정하기\r\n </Button>\r\n <Button\r\n icon={<ExclamationCircleOutlined />}\r\n type=\"primary\"\r\n onClick={confirmFunc}\r\n style={{\r\n backgroundColor: \"RGB(255,0,0,0.6)\",\r\n color: \"white\",\r\n border: \"none\",\r\n marginLeft: \"3rem\",\r\n }}\r\n >\r\n 삭제하기\r\n </Button>\r\n </Form.Item>\r\n </Form>\r\n </Modal>\r\n </Col>\r\n </Row>\r\n </>\r\n );\r\n};\r\n\r\nexport default QuestionList;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\DataModifyList.js",["597","598","599","600","601","602","603","604","605","606","607"],"import React, { useEffect } from \"react\";\r\nimport { Form, Select, Input, Button, Row, Col, notification, Divider, Modal } from \"antd\";\r\nimport axios from \"axios\";\r\nimport styled from \"styled-components\";\r\nimport moment from \"moment\";\r\nimport { FormInstance } from \"antd/lib/form\";\r\nimport {\r\n CloudUploadOutlined,\r\n ExclamationCircleOutlined,\r\n} from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 1.5,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst DataModifylist = ({ data, getData, setPage, page, count ,pageSize}) => {\r\n const token = localStorage.getItem(\"user_token\");\r\n const deptname = localStorage.getItem(\"dept_name\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n const confirmFunc = (formData) => {\r\n Swal.fire({\r\n title: \"삭제하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n onDeleteFunc(formData);\r\n }\r\n });\r\n };\r\n\r\n const onDeleteFunc = async (formData) => {\r\n const response = await axios\r\n .delete(`https://sjswbot.site/fixRequest/${data.idx}`, header, { widthCredentials: true })\r\n .catch((error) => {\r\n console.log(error);\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n setPage(page);\r\n getData();\r\n return openNotification('success', '데이터를 삭제했습니다!');\r\n };\r\n\r\n return (\r\n <>\r\n <Divider style={{ margin: \"1vh 0\" }} />\r\n <Row\r\n justify=\"start\"\r\n style={{\r\n width: \"90%\",\r\n border: \"1px solid lightgray\",\r\n padding: \"0.8rem 0\",\r\n margin: \"0.1rem 1rem\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n borderRadius: \"5px\",\r\n }}\r\n >\r\n <Col\r\n flex={1}\r\n style={{ textAlign: \"center\", width: \"15%\", fontWeight: \"bold\" }}\r\n >\r\n {data.department === 11\r\n ?\"공통질문\"\r\n :deptname}\r\n </Col>\r\n <Col flex={8} style={{ paddingLeft: \"2rem\", width: \"60%\" }}>\r\n {data.question}\r\n </Col>\r\n <Col flex={2} style={{ width: \"15%\" }}>\r\n {moment(data.updatedAt).format(\"LLL\")}\r\n </Col>\r\n <Col flex={1}>\r\n <Button\r\n onClick={confirmFunc}\r\n type=\"primary\"\r\n style={{ backgroundColor: \"RGB(255,0,0,0.6)\", border: \"none\" }}\r\n >\r\n 삭제하기\r\n </Button>\r\n </Col>\r\n </Row>\r\n </>\r\n );\r\n};\r\n\r\nexport default DataModifylist;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\utils\\axios.js",[],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Adminpage.js",["608","609","610","611","612","613","614","615","616","617","618","619","620","621","622","623","624","625","626","627"],"import React from \"react\";\r\nimport moment from \"moment\";\r\nimport {\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n Row,\r\n Col,\r\n Divider,\r\n Modal,\r\n Pagination,\r\n Image,\r\n Carousel,\r\n Tabs,\r\n} from \"antd\";\r\nimport { Link } from \"react-router-dom\";\r\nimport axios from \"axios\";\r\nimport AdminRequest from \"./AdminRequest\";\r\nimport Fallback from \"./Fallback\";\r\nimport styled from \"styled-components\";\r\nimport { FormInstance } from \"antd/lib/form\";\r\nimport { CloudUploadOutlined, LoadingOutlined } from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\n\r\nconst Option = Select.Option;\r\nconst { TextArea } = Input;\r\nconst { TabPane } = Tabs;\r\n\r\nconst AdminPage = (props) => {\r\n const role = localStorage.getItem(\"role\");\r\n const department = localStorage.getItem(\"department\");\r\n\r\n return (\r\n <>\r\n {role === \"1\" ? (\r\n <div\r\n style={{\r\n margin: \"3% 10%\",\r\n padding: \"1% 0%\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n borderRadius: \"0.5rem\",\r\n border: \"2px solid lightgray\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n textAlign: \"center\",\r\n fontSize: \"30px\",\r\n fontFamily: \"Gothic A1\",\r\n }}\r\n >\r\n <p>관리자페이지</p>\r\n </div>\r\n <p>사용자 폴백블록은 챗봇내에서 인식하지 못한 블록의 발화를,</p>\r\n <p>관리자 요청사항은 챗봇에서 사용자들이 관리자에게 보낸 요청사항의 리스트를 보여줍니다.</p>\r\n <Tabs defaultActiveKey=\"1\" style={{width:\"90%\"}}>\r\n <TabPane tab=\"사용자 폴백블록\" key=\"1\">\r\n <Fallback/>\r\n </TabPane>\r\n <TabPane tab=\"관리자 요청사항\" key=\"2\">\r\n <AdminRequest/>\r\n </TabPane>\r\n </Tabs>\r\n </div>\r\n ):\r\n <p>관리자만 접근 가능한 페이지 입니다.</p>\r\n }\r\n </>\r\n );\r\n};\r\n\r\nexport default AdminPage;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\utils\\dep.js",["628"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\ProfessorModify.js",["629","630","631","632","633","634"],"import React, { useEffect } from \"react\";\r\nimport moment from \"moment\";\r\nimport axios from \"axios\";\r\nimport {\r\n AutoComplete,\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n notification,\r\n Carousel,\r\n Image,\r\n Divider,\r\n} from \"antd\";\r\nimport { SearchOutlined } from \"@ant-design/icons\";\r\nimport { CloudUploadOutlined } from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 2,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst ProfessorModify = () => {\r\n const [list, setlist] = React.useState([]);\r\n const [form] = Form.useForm();\r\n const [data, setData] = React.useState({});\r\n const [inputValue, setInputValue] = React.useState(\"\");\r\n const [nameCheck, setNameCheck] = React.useState(false);\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n const onDeleteFunc = async () => {\r\n if (nameCheck === false) {\r\n return openNotification('error', '성함을 입력 후 search 버튼을 눌러주세요');\r\n }\r\n\r\n Swal.fire({\r\n title: \"삭제하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n axios.delete(`https://sjswbot.site/professor/${inputValue}`, header, { widthCredentials: true })\r\n .then(()=>\r\n Swal.fire({\r\n icon: \"success\",\r\n title: \"삭제되었습니다.\",\r\n showConfirmButton: false,\r\n width: \"auto\",\r\n timer: 1500,\r\n }).then(()=>{\r\n form.setFieldsValue({\r\n classPosition: \"\",\r\n phoneNumber: \"\",\r\n email: \"\",\r\n });\r\n })\r\n );\r\n }\r\n });\r\n };\r\n\r\n const onFinishFunc = async (_data) => {\r\n console.log(inputValue);\r\n const response = await axios\r\n .put(`https://sjswbot.site/professor/${inputValue}`, _data , header, { widthCredentials: true })\r\n .then((res) => {\r\n if (res.status === 200) {\r\n return Swal.fire({\r\n icon: \"success\",\r\n title: \"수정되었습니다.\",\r\n showConfirmButton: false,\r\n width: \"auto\",\r\n timer: 1500,\r\n }).then(()=>\r\n onSearchFunc()\r\n );\r\n }\r\n })\r\n .catch((err) => {\r\n \r\n });\r\n };\r\n\r\n const confirmFunc = (formData) => {\r\n if (nameCheck === false) {\r\n return openNotification('error', '성함을 입력 후 search 버튼을 눌러주세요');\r\n }\r\n\r\n Swal.fire({\r\n title: \"수정하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n onFinishFunc(formData);\r\n }\r\n });\r\n };\r\n\r\n const onChangeFunc = (name) => {\r\n setNameCheck(false);\r\n setInputValue(name);\r\n };\r\n\r\n const showModifier = () => {\r\n return (\r\n <p style={{ width: \"100%\", color: \"gray\" }}>\r\n {data.modifier}\r\n <br />\r\n {data.time}\r\n </p>\r\n );\r\n };\r\n\r\n const getData = React.useCallback(async () => {\r\n\r\n const response = await axios\r\n .get(`https://sjswbot.site/professor/${inputValue}`)\r\n .catch((error) => {\r\n });\r\n console.log(response);\r\n\r\n if (!response.data.result) {\r\n return openNotification('error', '존재하지 않는 이름입니다.');\r\n }\r\n openNotification('success','데이터를 성공적으로 불러왔습니다.');\r\n setNameCheck(true);\r\n setData({\r\n modifier: response.data.result.User.username + \" 조교님\",\r\n time: moment(response.data.result.updatedAt).format(\"LLL\"),\r\n });\r\n\r\n form.setFieldsValue({\r\n classPosition: response.data.result.classPosition,\r\n phoneNumber: response.data.result.phoneNumber,\r\n email: response.data.result.email,\r\n });\r\n }, []);\r\n\r\n const onSearchFunc = async () => {\r\n let name = inputValue;\r\n if (name.length < 2) {\r\n return openNotification('error', '존재하지 않는 이름입니다.');\r\n }\r\n const response = await axios\r\n .get(`https://sjswbot.site/professor/${name}`)\r\n .catch((error) => {\r\n });\r\n\r\n if (!response.data.result) {\r\n return openNotification('error', '존재하지 않는 이름입니다.');\r\n }\r\n openNotification('success','데이터를 성공적으로 불러왔습니다.');\r\n setNameCheck(true);\r\n setData({\r\n modifier: response.data.result.User.username + \" 조교님\",\r\n time: moment(response.data.result.updatedAt).format(\"LLL\"),\r\n });\r\n\r\n form.setFieldsValue({\r\n classPosition: response.data.result.classPosition,\r\n phoneNumber: response.data.result.phoneNumber,\r\n email: response.data.result.email,\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n let p_list = [];\r\n axios.get(`https://sjswbot.site/professor/list`).then((res) => {\r\n console.log(res.data.result);\r\n res.data.result.map((v, i) => {\r\n p_list.push({ value: v.name });\r\n });\r\n })\r\n setlist(p_list);\r\n console.log(p_list);\r\n },[]);\r\n\r\n return (\r\n <div\r\n style={{\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n }}\r\n >\r\n <Carousel\r\n style={{ width: \"50rem\", height: \"32rem\", margin: \"1rem 1rem 2rem\" }}\r\n >\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106898715-e18e6580-6737-11eb-9b89-aaed3a8979cb.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106898719-e3582900-6737-11eb-8931-05536127a510.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106898725-e4895600-6737-11eb-95d4-774d237a14e5.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n </Carousel>\r\n <div\r\n style={{\r\n display: \"flex\",\r\n flexDirection: \"row\",\r\n margin: \"0 0 2rem 0\",\r\n width: \"40rem\",\r\n height:\"auto\",\r\n }}\r\n >\r\n <p style={{ width: \"5rem\" }}>성함:</p>\r\n <AutoComplete\r\n style={{ width: \"100%\", marginRight: \"1rem\"}}\r\n options={list}\r\n placeholder=\"교수님 성함을 입력해주세요\"\r\n filterOption={(input, option) => option.value.indexOf(input) === 0}\r\n onChange={onChangeFunc}\r\n />\r\n {/* <Input style={{ margin: \"0 4% 0 0\" }} onChange={onChangeFunc} /> */}\r\n <Button icon={<SearchOutlined />} onClick={onSearchFunc}>\r\n Search\r\n </Button>\r\n </div>\r\n <Form\r\n form={form}\r\n onFinish={confirmFunc}\r\n autoComplete=\"off\"\r\n style={{ width: \"40rem\" }}\r\n >\r\n {\r\n nameCheck === true\r\n ? <>\r\n <Form.Item label=\"연구실\" name=\"classPosition\" required>\r\n <Input />\r\n </Form.Item>\r\n <Form.Item label=\"전화번호\" name=\"phoneNumber\" required>\r\n <Input />\r\n </Form.Item>\r\n <Form.Item label=\"이메일\" name=\"email\" required>\r\n <Input />\r\n </Form.Item>\r\n \r\n </>\r\n :null\r\n }\r\n <Divider />\r\n {\r\n nameCheck === true\r\n ?showModifier()\r\n :null\r\n }\r\n <Form.Item>\r\n <center>\r\n <Button icon={<CloudUploadOutlined />} htmlType=\"submit\" style={{float:'left', marginLeft:'12rem'}}>\r\n 수정하기\r\n </Button>\r\n <Button icon={<CloudUploadOutlined />} onClick={onDeleteFunc} style={{float:'right',marginRight:'12rem'}}>\r\n 삭제하기\r\n </Button>\r\n </center>\r\n </Form.Item>\r\n </Form>\r\n </div>\r\n );\r\n};\r\n\r\nexport default ProfessorModify;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\ProfessorAdd.js",["635","636","637","638","639","640","641","642","643","644"],"import React, { useEffect } from \"react\";\r\nimport moment from \"moment\";\r\nimport axios from \"axios\";\r\nimport {\r\n AutoComplete,\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n Carousel,\r\n notification,\r\n Image,\r\n Divider,\r\n} from \"antd\";\r\nimport { SearchOutlined } from \"@ant-design/icons\";\r\nimport { CloudUploadOutlined } from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 2,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst ProfessorAdd = () => {\r\n const [form] = Form.useForm();\r\n const [data, getData] = React.useState({});\r\n const onFinishFunc = async (_data) => {\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n console.log(_data);\r\n\r\n const response = await axios\r\n .post(`https://sjswbot.site/professor`, _data , header, { widthCredentials: true })\r\n .then((res) => {\r\n if (res.status === 200) {\r\n return Swal.fire({\r\n icon: \"success\",\r\n title: `등록되었습니다.`,\r\n showConfirmButton: false,\r\n width: \"auto\",\r\n timer: 1500,\r\n }).then(()=>{\r\n form.setFieldsValue({\r\n name:\"\",\r\n classPosition:\"\",\r\n phoneNumber:\"\",\r\n email:\"\",\r\n });\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n form.setFieldsValue({\r\n name:\"\",\r\n classPosition:\"\",\r\n phoneNumber:\"\",\r\n email:\"\",\r\n });\r\n }, []);\r\n\r\n return (\r\n <div\r\n style={{\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n }}\r\n >\r\n <Carousel\r\n style={{ width: \"50rem\", height: \"32rem\", margin: \"1rem 1rem 2rem\" }}\r\n >\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106898715-e18e6580-6737-11eb-9b89-aaed3a8979cb.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106898719-e3582900-6737-11eb-8931-05536127a510.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106898725-e4895600-6737-11eb-95d4-774d237a14e5.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n </Carousel>\r\n <Form\r\n form={form}\r\n onFinish={onFinishFunc}\r\n autoComplete=\"off\"\r\n style={{ width: \"40rem\" }}\r\n >\r\n <Form.Item label=\"성함\" name=\"name\" required>\r\n <Input />\r\n </Form.Item>\r\n <Form.Item label=\"연구실\" name=\"classPosition\" required>\r\n <Input />\r\n </Form.Item>\r\n <Form.Item label=\"전화번호\" name=\"phoneNumber\" required>\r\n <Input />\r\n </Form.Item>\r\n <Form.Item label=\"이메일\" name=\"email\" required>\r\n <Input />\r\n </Form.Item>\r\n <Divider />\r\n <Form.Item colon={false}>\r\n <center>\r\n <Button htmlType=\"submit\">\r\n 등록하기\r\n </Button>\r\n </center>\r\n </Form.Item>\r\n </Form>\r\n </div>\r\n );\r\n};\r\n\r\nexport default ProfessorAdd;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\TimetableAdd.js",["645","646","647","648","649","650","651","652","653","654","655"],"import React, { useEffect , useState } from \"react\";\r\nimport moment from \"moment\";\r\nimport axios from \"axios\";\r\nimport {\r\n AutoComplete,\r\n Form,\r\n Select,\r\n notification,\r\n Input,\r\n message,\r\n Button,\r\n Carousel,\r\n Image,\r\n Upload,\r\n Divider,\r\n} from \"antd\";\r\nimport ImageUploader from 'react-images-upload';\r\nimport { SearchOutlined,UploadOutlined } from \"@ant-design/icons\";\r\nimport { CloudUploadOutlined } from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 2,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst TimetableAdd = () => {\r\n const [form] = Form.useForm();\r\n const [data, getData] = useState({});\r\n const [fileList, setFileList] = useState([]);\r\n const [classname,setClassname] = useState(\"\");\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n const meta = {\r\n title:'title 1',\r\n contents: 'contents 1',\r\n }\r\n\r\n const handleUpload = async () => {\r\n const formData = new FormData();\r\n\r\n formData.append('img',fileList[0]);\r\n // fileList.forEach(file => formData.append('img',file));\r\n formData.classname=classname;\r\n\r\n for(let key in meta) {\r\n formData.append(key,meta[key]);\r\n }\r\n console.log(formData);\r\n await axios\r\n .post(`https://sjswbot.site/timetable/${classname}`, formData , header , { widthCredentials: true })\r\n .then((res)=>{\r\n if(res.status === 200){\r\n return Swal.fire({\r\n icon: \"success\",\r\n title: `등록되었습니다.`,\r\n showConfirmButton: false,\r\n width: \"auto\",\r\n timer: 1500,\r\n }).then(()=>{\r\n form.setFieldsValue({\r\n classname:\"\",\r\n });\r\n });\r\n }\r\n\r\n })\r\n .catch((err) => {\r\n openNotification('error','서버와의 에러가 발생했습니다.');\r\n });\r\n }\r\n\r\n const nameHandler = (e) => {\r\n setClassname(e.target.value);\r\n }\r\n\r\n const showModifier = () => {\r\n return (\r\n <div style={{ width: \"100%\", color: \"gray\" }}>\r\n {data.modifier}\r\n <br />\r\n {data.time}\r\n </div>\r\n );\r\n };\r\n\r\n useEffect(() => {\r\n form.setFieldsValue({\r\n classname:\"\",\r\n });\r\n }, []);\r\n\r\n return (\r\n <div\r\n style={{\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n }}\r\n >\r\n <Carousel\r\n style={{ width: \"50rem\", height: \"32rem\", margin: \"1rem 1rem 2rem\" }}\r\n >\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106899261-80b35d00-6738-11eb-90e8-0b56566f653a.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106899269-827d2080-6738-11eb-8adf-70c59f18cb5c.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106899277-8446e400-6738-11eb-93f6-6fb72c2550f6.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n </Carousel>\r\n <Form\r\n form={form}\r\n onFinish={handleUpload}\r\n autoComplete=\"off\"\r\n initialValues = {{img:fileList}}\r\n style={{ width: \"40rem\" }}\r\n >\r\n <Form.Item label=\"강의실\" name=\"classname\" required>\r\n <Input onChange={nameHandler} />\r\n </Form.Item>\r\n <Form.Item \r\n label=\"시간표\" \r\n name=\"img\" \r\n required\r\n >\r\n <ImageUploader\r\n withIcon={true}\r\n withPreview={true}\r\n buttonText='이미지를 업로드해주세요'\r\n onChange = {(pictureFiles,pictureDataURLs)=>setFileList(pictureFiles)}\r\n imgExtension={['.jpg', '.gif', '.png', '.gif']}\r\n maxFileSize={5242880}\r\n singleImage\r\n />\r\n </Form.Item>\r\n <Divider />\r\n {showModifier()}\r\n <Form.Item colon={false}>\r\n <center>\r\n <Button htmlType=\"submit\">\r\n 등록하기\r\n </Button>\r\n </center>\r\n </Form.Item>\r\n </Form>\r\n </div>\r\n );\r\n};\r\n\r\nexport default TimetableAdd;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\TimetableModify.js",["656","657","658","659","660","661","662","663"],"import React, { useEffect ,useState} from \"react\";\r\nimport axios from \"axios\";\r\nimport moment from \"moment\";\r\nimport {\r\n AutoComplete,\r\n Form,\r\n Select,\r\n Input,\r\n notification,\r\n Button,\r\n Carousel,\r\n Image,\r\n Divider,\r\n} from \"antd\";\r\nimport ImageUploader from 'react-images-upload';\r\nimport { SearchOutlined } from \"@ant-design/icons\";\r\nimport { CloudUploadOutlined } from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\nimport { getDefaultNormalizer } from \"@testing-library/react\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 2,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst TimetableModify = () => {\r\n const name = localStorage.getItem(\"username\");\r\n const [list, setlist] = useState([]);\r\n const [form] = Form.useForm();\r\n const [data, setData] = useState({});\r\n const [fileList, setFileList] = useState([]);\r\n const [inputValue, setInputValue] = useState(\"\");\r\n const [nameCheck, setNameCheck] = useState(false);\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n const meta = {\r\n title:'title 1',\r\n contents: 'contents 1',\r\n }\r\n\r\n const onDeleteFunc = async () => {\r\n if (nameCheck === false) {\r\n return openNotification('error', '강의실을 입력 후 Search 버튼을 눌러주세요');\r\n }\r\n\r\n Swal.fire({\r\n title: \"삭제하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n axios.delete(`https://sjswbot.site/timetable/${inputValue}`, header, { widthCredentials: true })\r\n .then(()=>\r\n Swal.fire({\r\n icon: \"success\",\r\n title: \"삭제되었습니다.\",\r\n showConfirmButton: false,\r\n width: \"auto\",\r\n timer: 1500,\r\n }).then(()=>{\r\n setInputValue(\"\");\r\n setData([]);\r\n setNameCheck(false);\r\n })\r\n );\r\n }\r\n });\r\n };\r\n\r\n const handleUpload = async () => {\r\n const formData = new FormData();\r\n\r\n formData.append('img',fileList[0]);\r\n\r\n for(let key in meta) {\r\n formData.append(key,meta[key]);\r\n }\r\n console.log(formData);\r\n\r\n await axios\r\n .put(`https://sjswbot.site/timetable/${inputValue}`, formData , header , { widthCredentials: true })\r\n .then((res)=>{\r\n if(res.status === 200){\r\n return Swal.fire({\r\n icon: \"success\",\r\n title: `등록되었습니다.`,\r\n showConfirmButton: false,\r\n width: \"auto\",\r\n timer: 1500,\r\n }).then(()=>{\r\n onSearchFunc();\r\n });\r\n }\r\n })\r\n .catch((err) => {\r\n openNotification('error','서버와의 에러가 발생했습니다.');\r\n });\r\n }\r\n\r\n const confirmFunc = (formData) => {\r\n if (nameCheck === false) {\r\n return openNotification('error', '강의실을 입력 후 Search 버튼을 눌러주세요');\r\n }\r\n\r\n Swal.fire({\r\n title: \"수정하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n handleUpload();\r\n }\r\n });\r\n };\r\n\r\n const onChangeFunc = (name) => {\r\n setNameCheck(false);\r\n setInputValue(name);\r\n };\r\n\r\n const getData = React.useCallback(async () => {\r\n const response = await axios\r\n .get(`https://sjswbot.site/timetable/${inputValue}`)\r\n .catch((error) => {\r\n openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n\r\n if (!response.data.result) {\r\n return openNotification('error', '존재하지 않는 강의실 입니다.');\r\n } else {\r\n openNotification('success', '강의실 정보를 성공적으로 불러왔습니다.');\r\n setNameCheck(true);\r\n setData({\r\n modifier: response.data.result.User.username + \" 조교님\",\r\n time: moment(response.data.result.updatedAt).format(\"LLL\"),\r\n link: response.data.result.link,\r\n });\r\n }\r\n }, []);\r\n\r\n const onSearchFunc = async () => {\r\n let value = inputValue.replace(/(\\s*)/g, \"\"); // 띄어쓰기 제거\r\n if (value.length < 1) {\r\n return openNotification('error', '강의실을 입력 후 Search 버튼을 눌러주세요');\r\n }\r\n const response = await axios\r\n .get(`https://sjswbot.site/timetable/${value}`)\r\n .catch((error) => {\r\n openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n\r\n console.log(response);\r\n if (!response.data.result) {\r\n return openNotification('error', '존재하지 않는 강의실 입니다.');\r\n } else {\r\n openNotification('success', '강의실 정보를 성공적으로 불러왔습니다.');\r\n setNameCheck(true);\r\n setData({\r\n modifier: response.data.result.User.username + \" 조교님\",\r\n time: moment(response.data.result.updatedAt).format(\"LLL\"),\r\n link: response.data.result.link,\r\n });\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n let p_list = [];\r\n axios.get(`https://sjswbot.site/timetable/list`).then((res) => {\r\n console.log(res.data.result);\r\n res.data.result.map((v, i) => {\r\n p_list.push({ value: v.classname });\r\n });\r\n })\r\n setlist(p_list);\r\n console.log(p_list);\r\n },[]);\r\n\r\n return (\r\n <div\r\n style={{\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n }}\r\n >\r\n <Carousel\r\n style={{ width: \"50rem\", height: \"32rem\", margin: \"1rem 1rem 2rem\" }}\r\n >\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106899261-80b35d00-6738-11eb-90e8-0b56566f653a.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106899269-827d2080-6738-11eb-8adf-70c59f18cb5c.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n <div>\r\n <Image\r\n src=\"https://user-images.githubusercontent.com/51112542/106899277-8446e400-6738-11eb-93f6-6fb72c2550f6.png\"\r\n width=\"100%\"\r\n />\r\n </div>\r\n </Carousel>\r\n <div\r\n style={{\r\n display: \"flex\",\r\n flexDirection: \"row\",\r\n margin: \"0 0 2rem 0\",\r\n width: \"40rem\",\r\n }}\r\n >\r\n <p style={{ width: \"6rem\" }}>강의실:</p>\r\n <AutoComplete\r\n name=\"classname\"\r\n style={{ width: \"100%\", marginRight: \"1rem\" }}\r\n options={list}\r\n placeholder=\"강의실을 입력해주세요\"\r\n filterOption={(input, option) => option.value.indexOf(input) !== -1}\r\n onChange={onChangeFunc}\r\n />\r\n <Button icon={<SearchOutlined />} onClick={onSearchFunc}>\r\n Search\r\n </Button>\r\n </div>\r\n <Form\r\n form={form}\r\n onFinish={confirmFunc}\r\n autoComplete=\"off\"\r\n style={{ width: \"40rem\" }}\r\n >\r\n {\r\n data.link?\r\n <Form.Item\r\n label = \"현재 시간표\"\r\n >\r\n <Image src={\"https://sjswbot.site\"+data.link+\"?\"+new Date().getTime()} style={{maxWidth:\"40rem\"}}></Image>\r\n </Form.Item>\r\n :null\r\n }\r\n {\r\n data.link?\r\n <Form.Item \r\n label=\"수정 시간표\" \r\n name=\"img\" \r\n >\r\n <ImageUploader\r\n withIcon={true}\r\n withPreview={true}\r\n buttonText='이미지를 업로드해주세요'\r\n onChange = {(pictureFiles,pictureDataURLs)=>setFileList(pictureFiles)}\r\n imgExtension={['.jpg', '.gif', '.png', '.gif']}\r\n maxFileSize={5242880}\r\n singleImage\r\n />\r\n </Form.Item>\r\n :null\r\n } \r\n\r\n <Divider />\r\n {\r\n data.modifier\r\n ?<p style={{ width: \"100%\", color: \"gray\",cursor:\"pointer\" }}>\r\n {data.modifier}\r\n <br />\r\n {data.time}\r\n </p>\r\n :null\r\n }\r\n <Form.Item style={{margin:'3rem 0 0'}}>\r\n <center>\r\n <Button icon={<CloudUploadOutlined />} htmlType=\"submit\" style={{float:'left', marginLeft:'12rem'}}>\r\n 수정하기\r\n </Button>\r\n <Button icon={<CloudUploadOutlined />} onClick={onDeleteFunc} style={{float:'right',marginRight:'12rem'}}>\r\n 삭제하기\r\n </Button>\r\n </center>\r\n </Form.Item>\r\n </Form>\r\n </div>\r\n );\r\n};\r\n\r\nexport default TimetableModify;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Fallbacklist.js",["664","665","666","667","668","669","670","671","672","673","674"],"import React, { useEffect } from \"react\";\r\nimport { Form, Select, Input, Button, Row, Col, Divider,notification, Modal } from \"antd\";\r\nimport axios from \"axios\";\r\nimport styled from \"styled-components\";\r\nimport moment from \"moment\";\r\nimport { FormInstance } from \"antd/lib/form\";\r\nimport {\r\n CloudUploadOutlined,\r\n ExclamationCircleOutlined,\r\n} from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 1.5,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst Fallbacklist = ({ data, getData, setPage, page, count ,pageSize}) => {\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n const confirmFunc = (formData) => {\r\n Swal.fire({\r\n title: \"삭제하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n onDeleteFunc(formData);\r\n }\r\n });\r\n };\r\n\r\n const onDeleteFunc = async (formData) => {\r\n const response = await axios\r\n .delete(`https://sjswbot.site/fallback/${data.idx}`, header, { widthCredentials: true })\r\n .catch((error) => {\r\n console.log(error);\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n setPage(page);\r\n getData();\r\n return openNotification('success', '데이터를 삭제했습니다!');\r\n };\r\n\r\n return (\r\n <>\r\n <Divider style={{ margin: \"1vh 0\" }} />\r\n <Row\r\n justify=\"start\"\r\n style={{\r\n width: \"90%\",\r\n border: \"1px solid lightgray\",\r\n padding: \"0.8rem 0\",\r\n margin: \"0.1rem 1rem\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n borderRadius: \"5px\",\r\n }}\r\n >\r\n <Col\r\n flex={1}\r\n style={{ paddingLeft: \"2rem\", width: \"5%\", fontWeight: \"bold\" }}\r\n >\r\n {count}\r\n </Col>\r\n <Col flex={8} style={{ paddingLeft: \"2rem\", width: \"60%\" }}>\r\n {data.question}\r\n </Col>\r\n <Col flex={2} style={{ width: \"15%\" }}>\r\n {moment(data.updatedAt).format(\"LLL\")}\r\n </Col>\r\n <Col flex={1}>\r\n <Button\r\n onClick={confirmFunc}\r\n type=\"primary\"\r\n style={{ backgroundColor: \"RGB(255,0,0,0.6)\", border: \"none\" }}\r\n >\r\n 삭제하기\r\n </Button>\r\n </Col>\r\n </Row>\r\n </>\r\n );\r\n};\r\n\r\nexport default Fallbacklist;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\AdminRequest.js",["675","676","677","678","679","680","681","682","683","684","685","686","687","688","689","690","691","692","693","694","695","696","697","698","699","700","701","702","703"],"import React from \"react\";\r\nimport moment from \"moment\";\r\nimport {\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n Row,\r\n Col,\r\n Divider,\r\n Modal,\r\n Pagination,\r\n Image,\r\n Carousel,\r\n Tabs,\r\n} from \"antd\";\r\nimport { Link } from \"react-router-dom\";\r\nimport axios from \"axios\";\r\nimport AdminRequestList from \"./AdminRequestList\";\r\nimport styled from \"styled-components\";\r\nimport { FormInstance } from \"antd/lib/form\";\r\nimport { CloudUploadOutlined, LoadingOutlined } from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\n\r\nconst Option = Select.Option;\r\nconst { TextArea } = Input;\r\n\r\nconst AdminRequest = (props) => {\r\n const role = localStorage.getItem(\"role\");\r\n const department = localStorage.getItem(\"department\");\r\n const pageSize = parseInt(window.innerHeight / 70);\r\n const [dataSize,setdataSize] = React.useState(0);\r\n let count = 0;\r\n const [size, setSize] = React.useState(0);\r\n // 한 페이지에 담을 데이터 수 (height에 따라 개수 다르게 설정)\r\n const [form] = Form.useForm();\r\n const [visible, setVisible] = React.useState(false);\r\n const [data, setData] = React.useState([]);\r\n const [page, setPage] = React.useState(0);\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n \r\n const FormHandler = () => {\r\n setVisible(true);\r\n };\r\n\r\n const handleOk = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const handleCancel = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const PageRefresh = () => {\r\n // const _data = data.slice(\r\n // (count - 1) * pageSize,\r\n // (count - 1) * pageSize + pageSize\r\n // );\r\n // data page에 따라 자르는 작업\r\n\r\n window.scrollTo({ top: 0, behavior: \"smooth\" });\r\n // data 새로 불러올시 맨 위로 스크롤\r\n\r\n return data.map((it, i) => {\r\n // 게시글 번호 계산\r\n\r\n return (\r\n <AdminRequestList\r\n key={i}\r\n data={it}\r\n count={dataSize - i - pageSize * (page)}\r\n getData={getData}\r\n setPage={setPage}\r\n pageSize={pageSize}\r\n page={page}\r\n />\r\n );\r\n });\r\n };\r\n\r\n const onValuesChange = (changedValue, allValue) => {\r\n console.log(changedValue);\r\n };\r\n\r\n const onPageChange = (pagenum) => {\r\n setPage(pagenum-1);\r\n };\r\n\r\n const getData = React.useCallback(async () => {\r\n const response = await axios.get(`https://sjswbot.site/adminRequest?page=${page}&size=${pageSize}`, header, { widthCredentials: true });\r\n setdataSize(response.data.result.count);\r\n setData(response.data.result.rows);\r\n PageRefresh();\r\n // setData(response.data.values.reverse());\r\n },[page,setPage]);\r\n\r\n React.useEffect(() => {\r\n getData();\r\n }, [page,setPage]);\r\n\r\n return (\r\n <>\r\n {role === \"1\" ? (\r\n <div\r\n style={{\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n }}\r\n >\r\n {/* {data.map((it,i)=>{\r\n it.count=data.length-i;\r\n it.props=props;\r\n return(\r\n <QuestionList key = {i} data={it} getData={getData}/>\r\n )\r\n })} */}\r\n {PageRefresh()}\r\n <div style={{ marginBottom: \"2rem\" }} />\r\n <Pagination\r\n current={page+1}\r\n total={dataSize}\r\n defaultPageSize={pageSize}\r\n showSizeChanger={false}\r\n onChange={onPageChange}\r\n style={{ marginBottom: \"1.5rem\" }}\r\n />\r\n </div>\r\n ):\r\n <p>관리자만 접근 가능한 페이지 입니다.</p>\r\n }\r\n </>\r\n );\r\n};\r\n\r\nexport default AdminRequest;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\Fallback.js",["704","705","706","707","708","709","710","711","712","713","714","715","716","717","718","719","720","721","722","723","724","725","726","727","728","729","730","731","732"],"import React from \"react\";\r\nimport moment from \"moment\";\r\nimport {\r\n Form,\r\n Select,\r\n Input,\r\n Button,\r\n Row,\r\n Col,\r\n Divider,\r\n Modal,\r\n Pagination,\r\n Image,\r\n Carousel,\r\n Tabs,\r\n} from \"antd\";\r\nimport { Link } from \"react-router-dom\";\r\nimport axios from \"axios\";\r\nimport FallbackList from \"./Fallbacklist\";\r\nimport styled from \"styled-components\";\r\nimport { FormInstance } from \"antd/lib/form\";\r\nimport { CloudUploadOutlined, LoadingOutlined } from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\n\r\nconst Option = Select.Option;\r\nconst { TextArea } = Input;\r\n\r\nconst Fallback = (props) => {\r\n const role = localStorage.getItem(\"role\");\r\n const department = localStorage.getItem(\"department\");\r\n const pageSize = parseInt(window.innerHeight / 70);\r\n const [dataSize,setdataSize] = React.useState(0);\r\n let count = 0;\r\n const [size, setSize] = React.useState(0);\r\n // 한 페이지에 담을 데이터 수 (height에 따라 개수 다르게 설정)\r\n const [form] = Form.useForm();\r\n const [visible, setVisible] = React.useState(false);\r\n const [data, setData] = React.useState([]);\r\n const [page, setPage] = React.useState(0);\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n \r\n const FormHandler = () => {\r\n setVisible(true);\r\n };\r\n\r\n const handleOk = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const handleCancel = (e) => {\r\n setVisible(false);\r\n };\r\n\r\n const PageRefresh = () => {\r\n // const _data = data.slice(\r\n // (count - 1) * pageSize,\r\n // (count - 1) * pageSize + pageSize\r\n // );\r\n // data page에 따라 자르는 작업\r\n\r\n window.scrollTo({ top: 0, behavior: \"smooth\" });\r\n // data 새로 불러올시 맨 위로 스크롤\r\n\r\n return data.map((it, i) => {\r\n // 게시글 번호 계산\r\n\r\n return (\r\n <FallbackList\r\n key={i}\r\n data={it}\r\n count={dataSize - i - pageSize * (page)}\r\n getData={getData}\r\n setPage={setPage}\r\n pageSize={pageSize}\r\n page={page}\r\n />\r\n );\r\n });\r\n };\r\n\r\n const onValuesChange = (changedValue, allValue) => {\r\n console.log(changedValue);\r\n };\r\n\r\n const onPageChange = (pagenum) => {\r\n setPage(pagenum-1);\r\n };\r\n\r\n const getData = React.useCallback(async () => {\r\n const response = await axios.get(`https://sjswbot.site/fallback?page=${page}&size=${pageSize}`, header, { widthCredentials: true });\r\n setdataSize(response.data.result.count);\r\n setData(response.data.result.rows);\r\n PageRefresh();\r\n // setData(response.data.values.reverse());\r\n },[page,setPage]);\r\n\r\n React.useEffect(() => {\r\n getData();\r\n }, [page,setPage]);\r\n\r\n return (\r\n <>\r\n {role === \"1\" ? (\r\n <div\r\n style={{\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n flexDirection: \"column\",\r\n background: \"white\",\r\n }}\r\n >\r\n {/* {data.map((it,i)=>{\r\n it.count=data.length-i;\r\n it.props=props;\r\n return(\r\n <QuestionList key = {i} data={it} getData={getData}/>\r\n )\r\n })} */}\r\n {PageRefresh()}\r\n <div style={{ marginBottom: \"2rem\" }} />\r\n <Pagination\r\n current={page+1}\r\n total={dataSize}\r\n defaultPageSize={pageSize}\r\n showSizeChanger={false}\r\n onChange={onPageChange}\r\n style={{ marginBottom: \"1.5rem\" }}\r\n />\r\n </div>\r\n ):\r\n <p>관리자만 접근 가능한 페이지 입니다.</p>\r\n }\r\n </>\r\n );\r\n};\r\n\r\nexport default Fallback;\r\n","C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\index.js",[],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\serviceWorker.js",[],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\App.js",["733","734","735","736"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\reducer\\index.js",[],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Signup.js",["737","738","739","740","741","742","743","744","745","746","747","748","749","750","751","752","753"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\hoc\\auth.js",["754","755","756"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Login.js",["757","758","759","760","761","762","763","764","765","766","767"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\MainPage.js",["768","769","770","771","772","773","774","775","776","777","778","779","780","781","782"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\reducer\\userReducer.js",["783","784"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Welcome.js",["785","786","787","788","789","790","791","792","793","794","795","796","797","798","799","800","801","802","803"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Curriculum.js",["804","805","806","807","808","809","810","811","812","813","814","815","816"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Userquestion.js",["817","818","819","820","821","822","823","824","825","826","827","828","829","830","831","832","833","834","835","836","837","838","839","840","841"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Status.js",["842","843","844","845","846","847","848"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Notice.js",["849","850","851","852","853","854","855","856","857","858","859"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Timetable.js",["860","861","862","863","864","865","866","867","868","869","870","871","872","873"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Question.js",["874","875","876","877","878","879","880","881","882","883","884","885","886","887","888","889"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Professor.js",["890","891","892","893","894","895","896","897","898","899","900","901","902","903","904","905"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Adminpage.js",["906","907","908","909","910","911","912","913","914","915","916","917","918","919","920","921","922","923","924","925"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\DataModify.js",["926","927","928","929","930","931","932","933","934","935","936","937","938","939","940","941","942","943","944","945","946","947","948","949","950"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Bestqa.js",["951","952","953","954","955","956","957"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\actions\\userAction.js",["958","959","960","961","962","963","964","965"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\components\\Header.js",["966","967","968","969","970","971","972","973","974","975","976","977"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\components\\Menu.js",["978","979","980","981","982","983","984","985","986","987","988"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\components\\Footer.js",["989","990","991","992","993","994"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\actions\\types.js",[],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Userquestionlist.js",["995","996","997","998","999","1000","1001","1002","1003","1004","1005","1006"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\QuestionList.js",["1007","1008","1009","1010","1011","1012","1013","1014","1015","1016"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\DataModifyList.js",["1017","1018","1019","1020","1021","1022","1023","1024","1025","1026","1027"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Fallback.js",["1028","1029","1030","1031","1032","1033","1034","1035","1036","1037","1038","1039","1040","1041","1042","1043","1044","1045","1046","1047","1048","1049","1050","1051","1052","1053","1054","1055","1056"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\TimetableModify.js",["1057","1058","1059","1060","1061","1062","1063","1064"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\AdminRequest.js",["1065","1066","1067","1068","1069","1070","1071","1072","1073","1074","1075","1076","1077","1078","1079","1080","1081","1082","1083","1084","1085","1086","1087","1088","1089","1090","1091","1092","1093"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\ProfessorModify.js",["1094","1095","1096","1097","1098","1099"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\ProfessorAdd.js",["1100","1101","1102","1103","1104","1105","1106","1107","1108","1109"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\TimetableAdd.js",["1110","1111","1112","1113","1114","1115","1116","1117","1118","1119","1120"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\utils\\axios.js",[],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\syb-web\\src\\pages\\Fallbacklist.js",["1121","1122","1123","1124","1125","1126","1127","1128","1129","1130","1131"],"C:\\Users\\Jongmin\\Desktop\\Jongmin\\SYB-web\\src\\pages\\AdminRequestList.js",["1132","1133","1134","1135","1136","1137","1138","1139","1140","1141","1142"],"import React, { useEffect } from \"react\";\r\nimport { Form, Select, Input, Button, Row, Col, Divider,notification, Modal } from \"antd\";\r\nimport axios from \"axios\";\r\nimport styled from \"styled-components\";\r\nimport moment from \"moment\";\r\nimport { FormInstance } from \"antd/lib/form\";\r\nimport {\r\n CloudUploadOutlined,\r\n ExclamationCircleOutlined,\r\n} from \"@ant-design/icons\";\r\nimport Swal from \"sweetalert2\";\r\nimport withReactContent from \"sweetalert2-react-content\";\r\n\r\nconst MySwal = withReactContent(Swal);\r\nconst openNotification = (type,comment) => {\r\n notification[type]({\r\n description: comment,\r\n placement: \"bottomRight\",\r\n duration: 1.5,\r\n width: \"auto\",\r\n });\r\n};\r\n\r\nconst AdminRequestList = ({ data, getData, setPage, page, count ,pageSize}) => {\r\n const token = localStorage.getItem(\"user_token\");\r\n const header = {\r\n headers: {\r\n authorization: `${token}`,\r\n },\r\n };\r\n\r\n const confirmFunc = (formData) => {\r\n Swal.fire({\r\n title: \"삭제하시겠습니까?\",\r\n icon: \"warning\",\r\n showCancelButton: true,\r\n confirmButtonColor: \"#3085d6\",\r\n cancelButtonColor: \"#d33\",\r\n confirmButtonText: \"네\",\r\n cancelButtonText: \"아니요\",\r\n }).then((result) => {\r\n if (result.isConfirmed) {\r\n onDeleteFunc(formData);\r\n }\r\n });\r\n };\r\n\r\n const onDeleteFunc = async () => {\r\n const response = await axios\r\n .delete(`https://sjswbot.site/adminRequest/${data.idx}`, header, { widthCredentials: true })\r\n .catch((error) => {\r\n console.log(error);\r\n return openNotification('error', '서버와의 에러가 발생했습니다.');\r\n });\r\n setPage(page);\r\n getData();\r\n return openNotification('success', '데이터를 삭제했습니다!');\r\n };\r\n\r\n return (\r\n <>\r\n <Divider style={{ margin: \"1vh 0\" }} />\r\n <Row\r\n justify=\"start\"\r\n style={{\r\n width: \"90%\",\r\n border: \"1px solid lightgray\",\r\n padding: \"0.8rem 0\",\r\n margin: \"0.1rem 1rem\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n borderRadius: \"5px\",\r\n }}\r\n >\r\n <Col\r\n flex={1}\r\n style={{ paddingLeft: \"2rem\", width: \"5%\", fontWeight: \"bold\" }}\r\n >\r\n {count}\r\n </Col>\r\n <Col flex={8} style={{ paddingLeft: \"2rem\", width: \"60%\" }}>\r\n {data.question}\r\n </Col>\r\n <Col flex={2} style={{ width: \"15%\" }}>\r\n {moment(data.updatedAt).format(\"LLL\")}\r\n </Col>\r\n <Col flex={1}>\r\n <Button\r\n onClick={confirmFunc}\r\n type=\"primary\"\r\n style={{ backgroundColor: \"RGB(255,0,0,0.6)\", border: \"none\" }}\r\n >\r\n 삭제하기\r\n </Button>\r\n </Col>\r\n </Row>\r\n </>\r\n );\r\n};\r\n\r\nexport default AdminRequestList;\r\n",{"ruleId":"1143","replacedBy":"1144"},{"ruleId":"1145","replacedBy":"1146"},{"ruleId":"1147","severity":1,"message":"1148","line":1,"column":28,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":36},{"ruleId":"1147","severity":1,"message":"1151","line":3,"column":3,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1152","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1153","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1154","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1151","line":2,"column":10,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1155","line":2,"column":16,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1156","line":2,"column":23,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1153","line":2,"column":56,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":66},{"ruleId":"1147","severity":1,"message":"1157","line":4,"column":3,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1158","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1159","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1160","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1161","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1162","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1163","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1164","line":14,"column":8,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1165","line":28,"column":8,"nodeType":"1149","messageId":"1150","endLine":28,"endColumn":12},{"ruleId":"1147","severity":1,"message":"1166","line":76,"column":9,"nodeType":"1149","messageId":"1150","endLine":76,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1154","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1167","line":4,"column":3,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1155","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1156","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1168","line":7,"column":20,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1169","line":11,"column":31,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":39},{"ruleId":"1147","severity":1,"message":"1170","line":14,"column":8,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1171","line":15,"column":8,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1172","line":19,"column":7,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1173","line":55,"column":10,"nodeType":"1149","messageId":"1150","endLine":55,"endColumn":20},{"ruleId":"1147","severity":1,"message":"1174","line":55,"column":22,"nodeType":"1149","messageId":"1150","endLine":55,"endColumn":34},{"ruleId":"1147","severity":1,"message":"1154","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1151","line":2,"column":10,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1155","line":2,"column":16,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1156","line":2,"column":23,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1168","line":2,"column":48,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":54},{"ruleId":"1147","severity":1,"message":"1175","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1176","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1177","line":11,"column":3,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1169","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1179","line":18,"column":10,"nodeType":"1149","messageId":"1150","endLine":18,"endColumn":32},{"ruleId":"1147","severity":1,"message":"1172","line":25,"column":7,"nodeType":"1149","messageId":"1150","endLine":25,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1180","line":51,"column":7,"nodeType":"1149","messageId":"1150","endLine":51,"endColumn":25},{"ruleId":"1181","severity":1,"message":"1182","line":207,"column":6,"nodeType":"1183","endLine":207,"endColumn":8,"suggestions":"1184"},{"ruleId":"1181","severity":1,"message":"1185","line":363,"column":5,"nodeType":"1183","endLine":363,"endColumn":7,"suggestions":"1186"},{"ruleId":"1187","severity":1,"message":"1188","line":483,"column":45,"nodeType":"1189","messageId":"1190","endLine":483,"endColumn":47},{"ruleId":"1187","severity":1,"message":"1188","line":483,"column":70,"nodeType":"1189","messageId":"1190","endLine":483,"endColumn":72},{"ruleId":"1147","severity":1,"message":"1172","line":7,"column":7,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":13},{"ruleId":"1191","severity":1,"message":"1192","line":9,"column":1,"nodeType":"1193","endLine":38,"endColumn":2},{"ruleId":"1181","severity":1,"message":"1194","line":30,"column":25,"nodeType":"1195","endLine":30,"endColumn":49},{"ruleId":"1147","severity":1,"message":"1196","line":1,"column":73,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":86},{"ruleId":"1191","severity":1,"message":"1192","line":8,"column":1,"nodeType":"1193","endLine":27,"endColumn":2},{"ruleId":"1147","severity":1,"message":"1197","line":5,"column":8,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":6,"column":10,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1172","line":11,"column":7,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1199","line":25,"column":9,"nodeType":"1149","messageId":"1150","endLine":25,"endColumn":11},{"ruleId":"1181","severity":1,"message":"1200","line":32,"column":19,"nodeType":"1201","endLine":32,"endColumn":36},{"ruleId":"1147","severity":1,"message":"1202","line":95,"column":11,"nodeType":"1149","messageId":"1150","endLine":95,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1203","line":121,"column":6,"nodeType":"1183","endLine":121,"endColumn":18,"suggestions":"1204"},{"ruleId":"1147","severity":1,"message":"1157","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1205","line":15,"column":8,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1172","line":20,"column":7,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1206","line":30,"column":7,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":31,"column":9,"nodeType":"1149","messageId":"1150","endLine":31,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1208","line":38,"column":10,"nodeType":"1149","messageId":"1150","endLine":38,"endColumn":18},{"ruleId":"1147","severity":1,"message":"1209","line":38,"column":20,"nodeType":"1149","messageId":"1150","endLine":38,"endColumn":31},{"ruleId":"1147","severity":1,"message":"1210","line":39,"column":10,"nodeType":"1149","messageId":"1150","endLine":39,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1211","line":39,"column":21,"nodeType":"1149","messageId":"1150","endLine":39,"endColumn":31},{"ruleId":"1181","severity":1,"message":"1212","line":54,"column":6,"nodeType":"1183","endLine":54,"endColumn":18,"suggestions":"1213"},{"ruleId":"1147","severity":1,"message":"1214","line":56,"column":9,"nodeType":"1149","messageId":"1150","endLine":56,"endColumn":27},{"ruleId":"1181","severity":1,"message":"1182","line":58,"column":6,"nodeType":"1183","endLine":58,"endColumn":8,"suggestions":"1215"},{"ruleId":"1147","severity":1,"message":"1202","line":90,"column":11,"nodeType":"1149","messageId":"1150","endLine":90,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1157","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1172","line":19,"column":7,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1206","line":29,"column":7,"nodeType":"1149","messageId":"1150","endLine":29,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1216","line":33,"column":9,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1210","line":38,"column":10,"nodeType":"1149","messageId":"1150","endLine":38,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1211","line":38,"column":21,"nodeType":"1149","messageId":"1150","endLine":38,"endColumn":31},{"ruleId":"1181","severity":1,"message":"1212","line":52,"column":6,"nodeType":"1183","endLine":52,"endColumn":18,"suggestions":"1217"},{"ruleId":"1147","severity":1,"message":"1214","line":54,"column":9,"nodeType":"1149","messageId":"1150","endLine":54,"endColumn":27},{"ruleId":"1181","severity":1,"message":"1182","line":56,"column":6,"nodeType":"1183","endLine":56,"endColumn":8,"suggestions":"1218"},{"ruleId":"1147","severity":1,"message":"1202","line":86,"column":11,"nodeType":"1149","messageId":"1150","endLine":86,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1203","line":106,"column":6,"nodeType":"1183","endLine":106,"endColumn":8,"suggestions":"1219"},{"ruleId":"1147","severity":1,"message":"1177","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1220","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1221","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1163","line":14,"column":3,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1162","line":15,"column":3,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1197","line":20,"column":8,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":21,"column":10,"nodeType":"1149","messageId":"1150","endLine":21,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":22,"column":10,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1223","line":22,"column":31,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":46},{"ruleId":"1147","severity":1,"message":"1172","line":26,"column":7,"nodeType":"1149","messageId":"1150","endLine":26,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1206","line":36,"column":7,"nodeType":"1149","messageId":"1150","endLine":36,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":37,"column":9,"nodeType":"1149","messageId":"1150","endLine":37,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1224","line":67,"column":9,"nodeType":"1149","messageId":"1150","endLine":67,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1225","line":71,"column":9,"nodeType":"1149","messageId":"1150","endLine":71,"endColumn":21},{"ruleId":"1226","severity":1,"message":"1227","line":89,"column":52,"nodeType":"1189","messageId":"1228","endLine":89,"endColumn":65},{"ruleId":"1147","severity":1,"message":"1202","line":94,"column":11,"nodeType":"1149","messageId":"1150","endLine":94,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1182","line":220,"column":6,"nodeType":"1183","endLine":220,"endColumn":18,"suggestions":"1229"},{"ruleId":"1181","severity":1,"message":"1203","line":224,"column":6,"nodeType":"1183","endLine":224,"endColumn":8,"suggestions":"1230"},{"ruleId":"1147","severity":1,"message":"1231","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1148","line":1,"column":27,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":35},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1170","line":3,"column":8,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1157","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1158","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1159","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1160","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1161","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1162","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1163","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1233","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1234","line":16,"column":10,"nodeType":"1149","messageId":"1150","endLine":16,"endColumn":24},{"ruleId":"1147","severity":1,"message":"1222","line":17,"column":10,"nodeType":"1149","messageId":"1150","endLine":17,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1172","line":23,"column":7,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1235","line":24,"column":7,"nodeType":"1149","messageId":"1150","endLine":24,"endColumn":23},{"ruleId":"1147","severity":1,"message":"1231","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1170","line":3,"column":8,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1157","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1158","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1159","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1160","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1161","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1162","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1163","line":11,"column":3,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1233","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1234","line":15,"column":10,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":24},{"ruleId":"1147","severity":1,"message":"1222","line":16,"column":10,"nodeType":"1149","messageId":"1150","endLine":16,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1172","line":22,"column":7,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1161","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1177","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1233","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1220","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1163","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1162","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1151","line":15,"column":10,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1197","line":17,"column":8,"nodeType":"1149","messageId":"1150","endLine":17,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":18,"column":10,"nodeType":"1149","messageId":"1150","endLine":18,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":19,"column":10,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1206","line":22,"column":7,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":23,"column":9,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1236","line":28,"column":7,"nodeType":"1149","messageId":"1150","endLine":28,"endColumn":12},{"ruleId":"1147","severity":1,"message":"1237","line":30,"column":10,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1238","line":30,"column":16,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":23},{"ruleId":"1147","severity":1,"message":"1239","line":32,"column":10,"nodeType":"1149","messageId":"1150","endLine":32,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1240","line":33,"column":10,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1241","line":44,"column":5,"nodeType":"1149","messageId":"1150","endLine":44,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1242","line":48,"column":9,"nodeType":"1149","messageId":"1150","endLine":48,"endColumn":20},{"ruleId":"1147","severity":1,"message":"1224","line":52,"column":9,"nodeType":"1149","messageId":"1150","endLine":52,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1225","line":56,"column":9,"nodeType":"1149","messageId":"1150","endLine":56,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1243","line":82,"column":9,"nodeType":"1149","messageId":"1150","endLine":82,"endColumn":23},{"ruleId":"1181","severity":1,"message":"1244","line":96,"column":6,"nodeType":"1183","endLine":96,"endColumn":20,"suggestions":"1245"},{"ruleId":"1181","severity":1,"message":"1203","line":100,"column":6,"nodeType":"1183","endLine":100,"endColumn":20,"suggestions":"1246"},{"ruleId":"1147","severity":1,"message":"1177","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1233","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1175","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1151","line":19,"column":10,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1197","line":20,"column":8,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":21,"column":10,"nodeType":"1149","messageId":"1150","endLine":21,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1207","line":36,"column":9,"nodeType":"1149","messageId":"1150","endLine":36,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1241","line":52,"column":5,"nodeType":"1149","messageId":"1150","endLine":52,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1247","line":86,"column":9,"nodeType":"1149","messageId":"1150","endLine":86,"endColumn":20},{"ruleId":"1226","severity":1,"message":"1227","line":109,"column":52,"nodeType":"1189","messageId":"1228","endLine":109,"endColumn":65},{"ruleId":"1147","severity":1,"message":"1202","line":114,"column":11,"nodeType":"1149","messageId":"1150","endLine":114,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1248","line":163,"column":6,"nodeType":"1183","endLine":163,"endColumn":20,"suggestions":"1249"},{"ruleId":"1181","severity":1,"message":"1250","line":180,"column":5,"nodeType":"1183","endLine":180,"endColumn":19,"suggestions":"1251"},{"ruleId":"1181","severity":1,"message":"1203","line":185,"column":6,"nodeType":"1183","endLine":185,"endColumn":20,"suggestions":"1252"},{"ruleId":"1181","severity":1,"message":"1253","line":189,"column":6,"nodeType":"1183","endLine":189,"endColumn":20,"suggestions":"1254"},{"ruleId":"1147","severity":1,"message":"1148","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":25},{"ruleId":"1147","severity":1,"message":"1157","line":4,"column":3,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1159","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1233","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1172","line":19,"column":7,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1202","line":55,"column":11,"nodeType":"1149","messageId":"1150","endLine":55,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1203","line":120,"column":6,"nodeType":"1183","endLine":120,"endColumn":8,"suggestions":"1255"},{"ruleId":"1147","severity":1,"message":"1161","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1177","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1233","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1220","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1163","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1162","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1151","line":15,"column":10,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1197","line":17,"column":8,"nodeType":"1149","messageId":"1150","endLine":17,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":18,"column":10,"nodeType":"1149","messageId":"1150","endLine":18,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":19,"column":10,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1206","line":22,"column":7,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":23,"column":9,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1236","line":29,"column":7,"nodeType":"1149","messageId":"1150","endLine":29,"endColumn":12},{"ruleId":"1147","severity":1,"message":"1237","line":30,"column":10,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1238","line":30,"column":16,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":23},{"ruleId":"1147","severity":1,"message":"1239","line":32,"column":10,"nodeType":"1149","messageId":"1150","endLine":32,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1240","line":33,"column":10,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1241","line":44,"column":5,"nodeType":"1149","messageId":"1150","endLine":44,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1242","line":48,"column":9,"nodeType":"1149","messageId":"1150","endLine":48,"endColumn":20},{"ruleId":"1147","severity":1,"message":"1224","line":52,"column":9,"nodeType":"1149","messageId":"1150","endLine":52,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1225","line":56,"column":9,"nodeType":"1149","messageId":"1150","endLine":56,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1243","line":87,"column":9,"nodeType":"1149","messageId":"1150","endLine":87,"endColumn":23},{"ruleId":"1181","severity":1,"message":"1256","line":104,"column":5,"nodeType":"1183","endLine":104,"endColumn":19,"suggestions":"1257"},{"ruleId":"1181","severity":1,"message":"1203","line":108,"column":6,"nodeType":"1183","endLine":108,"endColumn":20,"suggestions":"1258"},{"ruleId":"1147","severity":1,"message":"1154","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1231","line":1,"column":28,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":37},{"ruleId":"1147","severity":1,"message":"1151","line":3,"column":3,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1155","line":4,"column":3,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1156","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1168","line":7,"column":20,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1223","line":11,"column":3,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":18},{"ruleId":"1147","severity":1,"message":"1161","line":23,"column":18,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":24},{"ruleId":"1147","severity":1,"message":"1259","line":58,"column":7,"nodeType":"1149","messageId":"1150","endLine":58,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1241","line":60,"column":5,"nodeType":"1149","messageId":"1150","endLine":60,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1216","line":64,"column":9,"nodeType":"1149","messageId":"1150","endLine":64,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1154","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1151","line":3,"column":10,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1155","line":3,"column":16,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1156","line":3,"column":23,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1168","line":3,"column":48,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":54},{"ruleId":"1147","severity":1,"message":"1260","line":29,"column":7,"nodeType":"1149","messageId":"1150","endLine":29,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1154","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1148","line":1,"column":28,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":36},{"ruleId":"1147","severity":1,"message":"1151","line":4,"column":3,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1167","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1155","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1156","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1168","line":9,"column":20,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1261","line":12,"column":22,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":30},{"ruleId":"1147","severity":1,"message":"1262","line":13,"column":24,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":36},{"ruleId":"1147","severity":1,"message":"1161","line":14,"column":10,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":16},{"ruleId":"1147","severity":1,"message":"1172","line":19,"column":7,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1263","line":90,"column":9,"nodeType":"1149","messageId":"1150","endLine":90,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1264","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":12},{"ruleId":"1147","severity":1,"message":"1265","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1266","line":11,"column":8,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1154","line":11,"column":17,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1148","line":11,"column":28,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":36},{"ruleId":"1147","severity":1,"message":"1267","line":13,"column":10,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1263","line":93,"column":13,"nodeType":"1149","messageId":"1150","endLine":93,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1268","line":114,"column":10,"nodeType":"1149","messageId":"1150","endLine":114,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1231","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1158","line":2,"column":10,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1159","line":2,"column":16,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1160","line":2,"column":24,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1220","line":2,"column":71,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":76},{"ruleId":"1147","severity":1,"message":"1197","line":4,"column":8,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":5,"column":10,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1269","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":28},{"ruleId":"1147","severity":1,"message":"1172","line":14,"column":7,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1202","line":49,"column":11,"nodeType":"1149","messageId":"1150","endLine":49,"endColumn":19},{"ruleId":"1270","severity":1,"message":"1271","line":53,"column":9,"nodeType":"1272","messageId":"1273","endLine":53,"endColumn":28},{"ruleId":"1147","severity":1,"message":"1197","line":4,"column":8,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":6,"column":10,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1172","line":14,"column":7,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1274","line":30,"column":9,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1275","line":33,"column":10,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1276","line":41,"column":9,"nodeType":"1149","messageId":"1150","endLine":41,"endColumn":16},{"ruleId":"1147","severity":1,"message":"1202","line":93,"column":11,"nodeType":"1149","messageId":"1150","endLine":93,"endColumn":19},{"ruleId":"1226","severity":1,"message":"1227","line":108,"column":52,"nodeType":"1189","messageId":"1228","endLine":108,"endColumn":65},{"ruleId":"1147","severity":1,"message":"1202","line":113,"column":11,"nodeType":"1149","messageId":"1150","endLine":113,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1277","line":148,"column":5,"nodeType":"1183","endLine":148,"endColumn":7,"suggestions":"1278"},{"ruleId":"1147","severity":1,"message":"1231","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1158","line":2,"column":10,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1159","line":2,"column":16,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1160","line":2,"column":24,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1220","line":2,"column":72,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":77},{"ruleId":"1147","severity":1,"message":"1197","line":4,"column":8,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":6,"column":10,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1269","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":28},{"ruleId":"1147","severity":1,"message":"1172","line":14,"column":7,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1202","line":50,"column":11,"nodeType":"1149","messageId":"1150","endLine":50,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1158","line":4,"column":3,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1161","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1177","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1233","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1220","line":11,"column":3,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1221","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1163","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1162","line":14,"column":3,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1151","line":17,"column":10,"nodeType":"1149","messageId":"1150","endLine":17,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1170","line":18,"column":8,"nodeType":"1149","messageId":"1150","endLine":18,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1197","line":21,"column":8,"nodeType":"1149","messageId":"1150","endLine":21,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":22,"column":10,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":23,"column":10,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1223","line":23,"column":31,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":46},{"ruleId":"1147","severity":1,"message":"1172","line":27,"column":7,"nodeType":"1149","messageId":"1150","endLine":27,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1206","line":29,"column":7,"nodeType":"1149","messageId":"1150","endLine":29,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":30,"column":9,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1274","line":35,"column":9,"nodeType":"1149","messageId":"1150","endLine":35,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1267","line":2,"column":10,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1159","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1172","line":20,"column":7,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1202","line":80,"column":11,"nodeType":"1149","messageId":"1150","endLine":80,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1279","line":135,"column":9,"nodeType":"1149","messageId":"1150","endLine":135,"endColumn":16},{"ruleId":"1181","severity":1,"message":"1280","line":158,"column":6,"nodeType":"1183","endLine":158,"endColumn":8,"suggestions":"1281"},{"ruleId":"1282","severity":1,"message":"1283","line":191,"column":32,"nodeType":"1284","messageId":"1285","endLine":191,"endColumn":34},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1157","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1159","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1234","line":15,"column":10,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":24},{"ruleId":"1147","severity":1,"message":"1222","line":16,"column":10,"nodeType":"1149","messageId":"1150","endLine":16,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1172","line":20,"column":7,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1286","line":32,"column":10,"nodeType":"1149","messageId":"1150","endLine":32,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1279","line":32,"column":16,"nodeType":"1149","messageId":"1150","endLine":32,"endColumn":23},{"ruleId":"1147","severity":1,"message":"1202","line":43,"column":11,"nodeType":"1149","messageId":"1150","endLine":43,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1287","line":75,"column":6,"nodeType":"1183","endLine":75,"endColumn":8,"suggestions":"1288"},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1157","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1159","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1289","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1290","line":14,"column":3,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1234","line":18,"column":10,"nodeType":"1149","messageId":"1150","endLine":18,"endColumn":24},{"ruleId":"1147","severity":1,"message":"1291","line":18,"column":25,"nodeType":"1149","messageId":"1150","endLine":18,"endColumn":39},{"ruleId":"1147","severity":1,"message":"1222","line":19,"column":10,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1172","line":23,"column":7,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1279","line":35,"column":16,"nodeType":"1149","messageId":"1150","endLine":35,"endColumn":23},{"ruleId":"1181","severity":1,"message":"1287","line":101,"column":6,"nodeType":"1183","endLine":101,"endColumn":8,"suggestions":"1292"},{"ruleId":"1147","severity":1,"message":"1159","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1160","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1293","line":20,"column":10,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":30},{"ruleId":"1147","severity":1,"message":"1172","line":22,"column":7,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1216","line":33,"column":9,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1279","line":140,"column":9,"nodeType":"1149","messageId":"1150","endLine":140,"endColumn":16},{"ruleId":"1181","severity":1,"message":"1294","line":158,"column":6,"nodeType":"1183","endLine":158,"endColumn":8,"suggestions":"1295"},{"ruleId":"1282","severity":1,"message":"1283","line":189,"column":32,"nodeType":"1284","messageId":"1285","endLine":189,"endColumn":34},{"ruleId":"1147","severity":1,"message":"1231","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1158","line":2,"column":10,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1159","line":2,"column":16,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1160","line":2,"column":24,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1220","line":2,"column":71,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":76},{"ruleId":"1147","severity":1,"message":"1197","line":4,"column":8,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":6,"column":10,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1269","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":28},{"ruleId":"1147","severity":1,"message":"1172","line":14,"column":7,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1202","line":49,"column":11,"nodeType":"1149","messageId":"1150","endLine":49,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1161","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1177","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1233","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1220","line":11,"column":3,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1163","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1162","line":14,"column":3,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1296","line":15,"column":3,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1151","line":17,"column":10,"nodeType":"1149","messageId":"1150","endLine":17,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1197","line":20,"column":8,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":21,"column":10,"nodeType":"1149","messageId":"1150","endLine":21,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":22,"column":10,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1223","line":22,"column":31,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":46},{"ruleId":"1147","severity":1,"message":"1172","line":26,"column":7,"nodeType":"1149","messageId":"1150","endLine":26,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1206","line":28,"column":7,"nodeType":"1149","messageId":"1150","endLine":28,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":29,"column":9,"nodeType":"1149","messageId":"1150","endLine":29,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1274","line":33,"column":9,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1236","line":36,"column":7,"nodeType":"1149","messageId":"1150","endLine":36,"endColumn":12},{"ruleId":"1147","severity":1,"message":"1237","line":37,"column":10,"nodeType":"1149","messageId":"1150","endLine":37,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1238","line":37,"column":16,"nodeType":"1149","messageId":"1150","endLine":37,"endColumn":23},{"ruleId":"1147","severity":1,"message":"1239","line":39,"column":10,"nodeType":"1149","messageId":"1150","endLine":39,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1240","line":40,"column":10,"nodeType":"1149","messageId":"1150","endLine":40,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1242","line":50,"column":9,"nodeType":"1149","messageId":"1150","endLine":50,"endColumn":20},{"ruleId":"1147","severity":1,"message":"1224","line":54,"column":9,"nodeType":"1149","messageId":"1150","endLine":54,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1225","line":58,"column":9,"nodeType":"1149","messageId":"1150","endLine":58,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1243","line":89,"column":9,"nodeType":"1149","messageId":"1150","endLine":89,"endColumn":23},{"ruleId":"1181","severity":1,"message":"1297","line":103,"column":5,"nodeType":"1183","endLine":103,"endColumn":19,"suggestions":"1298"},{"ruleId":"1181","severity":1,"message":"1203","line":107,"column":6,"nodeType":"1183","endLine":107,"endColumn":20,"suggestions":"1299"},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1161","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1177","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1233","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1220","line":11,"column":3,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1163","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1162","line":14,"column":3,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1296","line":15,"column":3,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1151","line":17,"column":10,"nodeType":"1149","messageId":"1150","endLine":17,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1197","line":20,"column":8,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":21,"column":10,"nodeType":"1149","messageId":"1150","endLine":21,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":22,"column":10,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1223","line":22,"column":31,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":46},{"ruleId":"1147","severity":1,"message":"1172","line":26,"column":7,"nodeType":"1149","messageId":"1150","endLine":26,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1206","line":28,"column":7,"nodeType":"1149","messageId":"1150","endLine":28,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":29,"column":9,"nodeType":"1149","messageId":"1150","endLine":29,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1274","line":33,"column":9,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1236","line":36,"column":7,"nodeType":"1149","messageId":"1150","endLine":36,"endColumn":12},{"ruleId":"1147","severity":1,"message":"1237","line":37,"column":10,"nodeType":"1149","messageId":"1150","endLine":37,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1238","line":37,"column":16,"nodeType":"1149","messageId":"1150","endLine":37,"endColumn":23},{"ruleId":"1147","severity":1,"message":"1239","line":39,"column":10,"nodeType":"1149","messageId":"1150","endLine":39,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1240","line":40,"column":10,"nodeType":"1149","messageId":"1150","endLine":40,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1242","line":50,"column":9,"nodeType":"1149","messageId":"1150","endLine":50,"endColumn":20},{"ruleId":"1147","severity":1,"message":"1224","line":54,"column":9,"nodeType":"1149","messageId":"1150","endLine":54,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1225","line":58,"column":9,"nodeType":"1149","messageId":"1150","endLine":58,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1243","line":89,"column":9,"nodeType":"1149","messageId":"1150","endLine":89,"endColumn":23},{"ruleId":"1181","severity":1,"message":"1297","line":103,"column":5,"nodeType":"1183","endLine":103,"endColumn":19,"suggestions":"1300"},{"ruleId":"1181","severity":1,"message":"1203","line":107,"column":6,"nodeType":"1183","endLine":107,"endColumn":20,"suggestions":"1301"},{"ruleId":"1147","severity":1,"message":"1148","line":1,"column":28,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":36},{"ruleId":"1147","severity":1,"message":"1151","line":3,"column":3,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1152","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1153","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1154","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1151","line":2,"column":10,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1155","line":2,"column":16,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1156","line":2,"column":23,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1168","line":2,"column":48,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":54},{"ruleId":"1147","severity":1,"message":"1175","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1176","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1177","line":11,"column":3,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1169","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1179","line":18,"column":10,"nodeType":"1149","messageId":"1150","endLine":18,"endColumn":32},{"ruleId":"1147","severity":1,"message":"1172","line":25,"column":7,"nodeType":"1149","messageId":"1150","endLine":25,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1180","line":51,"column":7,"nodeType":"1149","messageId":"1150","endLine":51,"endColumn":25},{"ruleId":"1181","severity":1,"message":"1182","line":207,"column":6,"nodeType":"1183","endLine":207,"endColumn":8,"suggestions":"1302"},{"ruleId":"1181","severity":1,"message":"1185","line":363,"column":5,"nodeType":"1183","endLine":363,"endColumn":7,"suggestions":"1303"},{"ruleId":"1187","severity":1,"message":"1188","line":483,"column":45,"nodeType":"1189","messageId":"1190","endLine":483,"endColumn":47},{"ruleId":"1187","severity":1,"message":"1188","line":483,"column":70,"nodeType":"1189","messageId":"1190","endLine":483,"endColumn":72},{"ruleId":"1147","severity":1,"message":"1172","line":7,"column":7,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":13},{"ruleId":"1191","severity":1,"message":"1192","line":9,"column":1,"nodeType":"1193","endLine":38,"endColumn":2},{"ruleId":"1181","severity":1,"message":"1194","line":30,"column":25,"nodeType":"1195","endLine":30,"endColumn":49},{"ruleId":"1147","severity":1,"message":"1154","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1167","line":4,"column":3,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1155","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1156","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1168","line":7,"column":20,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1169","line":11,"column":31,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":39},{"ruleId":"1147","severity":1,"message":"1170","line":14,"column":8,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1171","line":15,"column":8,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1172","line":19,"column":7,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1173","line":55,"column":10,"nodeType":"1149","messageId":"1150","endLine":55,"endColumn":20},{"ruleId":"1147","severity":1,"message":"1174","line":55,"column":22,"nodeType":"1149","messageId":"1150","endLine":55,"endColumn":34},{"ruleId":"1147","severity":1,"message":"1154","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1151","line":2,"column":10,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1155","line":2,"column":16,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1156","line":2,"column":23,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1153","line":2,"column":56,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":66},{"ruleId":"1147","severity":1,"message":"1157","line":4,"column":3,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1158","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1159","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1160","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1161","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1162","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1163","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1164","line":14,"column":8,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1165","line":28,"column":8,"nodeType":"1149","messageId":"1150","endLine":28,"endColumn":12},{"ruleId":"1147","severity":1,"message":"1166","line":76,"column":9,"nodeType":"1149","messageId":"1150","endLine":76,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1196","line":1,"column":73,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":86},{"ruleId":"1191","severity":1,"message":"1192","line":8,"column":1,"nodeType":"1193","endLine":27,"endColumn":2},{"ruleId":"1147","severity":1,"message":"1177","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1220","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1221","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1163","line":14,"column":3,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1162","line":15,"column":3,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1197","line":20,"column":8,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":21,"column":10,"nodeType":"1149","messageId":"1150","endLine":21,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":22,"column":10,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1223","line":22,"column":31,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":46},{"ruleId":"1147","severity":1,"message":"1172","line":26,"column":7,"nodeType":"1149","messageId":"1150","endLine":26,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1206","line":36,"column":7,"nodeType":"1149","messageId":"1150","endLine":36,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":37,"column":9,"nodeType":"1149","messageId":"1150","endLine":37,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1224","line":67,"column":9,"nodeType":"1149","messageId":"1150","endLine":67,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1225","line":71,"column":9,"nodeType":"1149","messageId":"1150","endLine":71,"endColumn":21},{"ruleId":"1226","severity":1,"message":"1227","line":89,"column":52,"nodeType":"1189","messageId":"1228","endLine":89,"endColumn":65},{"ruleId":"1147","severity":1,"message":"1202","line":94,"column":11,"nodeType":"1149","messageId":"1150","endLine":94,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1182","line":220,"column":6,"nodeType":"1183","endLine":220,"endColumn":18,"suggestions":"1304"},{"ruleId":"1181","severity":1,"message":"1203","line":224,"column":6,"nodeType":"1183","endLine":224,"endColumn":8,"suggestions":"1305"},{"ruleId":"1147","severity":1,"message":"1157","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1205","line":15,"column":8,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1172","line":20,"column":7,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1206","line":30,"column":7,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":31,"column":9,"nodeType":"1149","messageId":"1150","endLine":31,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1208","line":38,"column":10,"nodeType":"1149","messageId":"1150","endLine":38,"endColumn":18},{"ruleId":"1147","severity":1,"message":"1209","line":38,"column":20,"nodeType":"1149","messageId":"1150","endLine":38,"endColumn":31},{"ruleId":"1147","severity":1,"message":"1210","line":39,"column":10,"nodeType":"1149","messageId":"1150","endLine":39,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1211","line":39,"column":21,"nodeType":"1149","messageId":"1150","endLine":39,"endColumn":31},{"ruleId":"1181","severity":1,"message":"1212","line":54,"column":6,"nodeType":"1183","endLine":54,"endColumn":18,"suggestions":"1306"},{"ruleId":"1147","severity":1,"message":"1214","line":56,"column":9,"nodeType":"1149","messageId":"1150","endLine":56,"endColumn":27},{"ruleId":"1181","severity":1,"message":"1182","line":58,"column":6,"nodeType":"1183","endLine":58,"endColumn":8,"suggestions":"1307"},{"ruleId":"1147","severity":1,"message":"1202","line":90,"column":11,"nodeType":"1149","messageId":"1150","endLine":90,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1161","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1177","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1233","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1220","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1163","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1162","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1151","line":15,"column":10,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1197","line":17,"column":8,"nodeType":"1149","messageId":"1150","endLine":17,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":18,"column":10,"nodeType":"1149","messageId":"1150","endLine":18,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":19,"column":10,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1206","line":22,"column":7,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":23,"column":9,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1236","line":28,"column":7,"nodeType":"1149","messageId":"1150","endLine":28,"endColumn":12},{"ruleId":"1147","severity":1,"message":"1237","line":30,"column":10,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1238","line":30,"column":16,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":23},{"ruleId":"1147","severity":1,"message":"1239","line":32,"column":10,"nodeType":"1149","messageId":"1150","endLine":32,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1240","line":33,"column":10,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1241","line":44,"column":5,"nodeType":"1149","messageId":"1150","endLine":44,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1242","line":48,"column":9,"nodeType":"1149","messageId":"1150","endLine":48,"endColumn":20},{"ruleId":"1147","severity":1,"message":"1224","line":52,"column":9,"nodeType":"1149","messageId":"1150","endLine":52,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1225","line":56,"column":9,"nodeType":"1149","messageId":"1150","endLine":56,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1243","line":82,"column":9,"nodeType":"1149","messageId":"1150","endLine":82,"endColumn":23},{"ruleId":"1181","severity":1,"message":"1244","line":96,"column":6,"nodeType":"1183","endLine":96,"endColumn":20,"suggestions":"1308"},{"ruleId":"1181","severity":1,"message":"1203","line":100,"column":6,"nodeType":"1183","endLine":100,"endColumn":20,"suggestions":"1309"},{"ruleId":"1147","severity":1,"message":"1197","line":5,"column":8,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":6,"column":10,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1172","line":11,"column":7,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1199","line":25,"column":9,"nodeType":"1149","messageId":"1150","endLine":25,"endColumn":11},{"ruleId":"1181","severity":1,"message":"1200","line":32,"column":19,"nodeType":"1201","endLine":32,"endColumn":36},{"ruleId":"1147","severity":1,"message":"1202","line":95,"column":11,"nodeType":"1149","messageId":"1150","endLine":95,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1203","line":121,"column":6,"nodeType":"1183","endLine":121,"endColumn":18,"suggestions":"1310"},{"ruleId":"1147","severity":1,"message":"1157","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1172","line":19,"column":7,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1206","line":29,"column":7,"nodeType":"1149","messageId":"1150","endLine":29,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1216","line":33,"column":9,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1210","line":38,"column":10,"nodeType":"1149","messageId":"1150","endLine":38,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1211","line":38,"column":21,"nodeType":"1149","messageId":"1150","endLine":38,"endColumn":31},{"ruleId":"1181","severity":1,"message":"1212","line":52,"column":6,"nodeType":"1183","endLine":52,"endColumn":18,"suggestions":"1311"},{"ruleId":"1147","severity":1,"message":"1214","line":54,"column":9,"nodeType":"1149","messageId":"1150","endLine":54,"endColumn":27},{"ruleId":"1181","severity":1,"message":"1182","line":56,"column":6,"nodeType":"1183","endLine":56,"endColumn":8,"suggestions":"1312"},{"ruleId":"1147","severity":1,"message":"1202","line":86,"column":11,"nodeType":"1149","messageId":"1150","endLine":86,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1203","line":106,"column":6,"nodeType":"1183","endLine":106,"endColumn":8,"suggestions":"1313"},{"ruleId":"1147","severity":1,"message":"1231","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1170","line":3,"column":8,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1157","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1158","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1159","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1160","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1161","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1162","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1163","line":11,"column":3,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1233","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1234","line":15,"column":10,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":24},{"ruleId":"1147","severity":1,"message":"1222","line":16,"column":10,"nodeType":"1149","messageId":"1150","endLine":16,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1172","line":22,"column":7,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1177","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1233","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1175","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1151","line":19,"column":10,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1197","line":20,"column":8,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":21,"column":10,"nodeType":"1149","messageId":"1150","endLine":21,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1207","line":36,"column":9,"nodeType":"1149","messageId":"1150","endLine":36,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1241","line":52,"column":5,"nodeType":"1149","messageId":"1150","endLine":52,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1247","line":86,"column":9,"nodeType":"1149","messageId":"1150","endLine":86,"endColumn":20},{"ruleId":"1226","severity":1,"message":"1227","line":109,"column":52,"nodeType":"1189","messageId":"1228","endLine":109,"endColumn":65},{"ruleId":"1147","severity":1,"message":"1202","line":114,"column":11,"nodeType":"1149","messageId":"1150","endLine":114,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1248","line":163,"column":6,"nodeType":"1183","endLine":163,"endColumn":20,"suggestions":"1314"},{"ruleId":"1181","severity":1,"message":"1250","line":180,"column":5,"nodeType":"1183","endLine":180,"endColumn":19,"suggestions":"1315"},{"ruleId":"1181","severity":1,"message":"1203","line":185,"column":6,"nodeType":"1183","endLine":185,"endColumn":20,"suggestions":"1316"},{"ruleId":"1181","severity":1,"message":"1253","line":189,"column":6,"nodeType":"1183","endLine":189,"endColumn":20,"suggestions":"1317"},{"ruleId":"1147","severity":1,"message":"1231","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1148","line":1,"column":27,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":35},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1170","line":3,"column":8,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1157","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1158","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1159","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1160","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1161","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1162","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1163","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1233","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1234","line":16,"column":10,"nodeType":"1149","messageId":"1150","endLine":16,"endColumn":24},{"ruleId":"1147","severity":1,"message":"1222","line":17,"column":10,"nodeType":"1149","messageId":"1150","endLine":17,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1172","line":23,"column":7,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1235","line":24,"column":7,"nodeType":"1149","messageId":"1150","endLine":24,"endColumn":23},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1158","line":4,"column":3,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1161","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1177","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1233","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1220","line":11,"column":3,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1221","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1163","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1162","line":14,"column":3,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1151","line":17,"column":10,"nodeType":"1149","messageId":"1150","endLine":17,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1170","line":18,"column":8,"nodeType":"1149","messageId":"1150","endLine":18,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1197","line":21,"column":8,"nodeType":"1149","messageId":"1150","endLine":21,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":22,"column":10,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":23,"column":10,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1223","line":23,"column":31,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":46},{"ruleId":"1147","severity":1,"message":"1172","line":27,"column":7,"nodeType":"1149","messageId":"1150","endLine":27,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1206","line":29,"column":7,"nodeType":"1149","messageId":"1150","endLine":29,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":30,"column":9,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1274","line":35,"column":9,"nodeType":"1149","messageId":"1150","endLine":35,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1161","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1177","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1233","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1220","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1163","line":12,"column":3,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1162","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1151","line":15,"column":10,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1197","line":17,"column":8,"nodeType":"1149","messageId":"1150","endLine":17,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":18,"column":10,"nodeType":"1149","messageId":"1150","endLine":18,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":19,"column":10,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1206","line":22,"column":7,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":23,"column":9,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1236","line":29,"column":7,"nodeType":"1149","messageId":"1150","endLine":29,"endColumn":12},{"ruleId":"1147","severity":1,"message":"1237","line":30,"column":10,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1238","line":30,"column":16,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":23},{"ruleId":"1147","severity":1,"message":"1239","line":32,"column":10,"nodeType":"1149","messageId":"1150","endLine":32,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1240","line":33,"column":10,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1241","line":44,"column":5,"nodeType":"1149","messageId":"1150","endLine":44,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1242","line":48,"column":9,"nodeType":"1149","messageId":"1150","endLine":48,"endColumn":20},{"ruleId":"1147","severity":1,"message":"1224","line":52,"column":9,"nodeType":"1149","messageId":"1150","endLine":52,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1225","line":56,"column":9,"nodeType":"1149","messageId":"1150","endLine":56,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1243","line":87,"column":9,"nodeType":"1149","messageId":"1150","endLine":87,"endColumn":23},{"ruleId":"1181","severity":1,"message":"1256","line":104,"column":5,"nodeType":"1183","endLine":104,"endColumn":19,"suggestions":"1318"},{"ruleId":"1181","severity":1,"message":"1203","line":108,"column":6,"nodeType":"1183","endLine":108,"endColumn":20,"suggestions":"1319"},{"ruleId":"1147","severity":1,"message":"1148","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":25},{"ruleId":"1147","severity":1,"message":"1157","line":4,"column":3,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1159","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1233","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1172","line":19,"column":7,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1202","line":55,"column":11,"nodeType":"1149","messageId":"1150","endLine":55,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1203","line":120,"column":6,"nodeType":"1183","endLine":120,"endColumn":8,"suggestions":"1320"},{"ruleId":"1147","severity":1,"message":"1264","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":12},{"ruleId":"1147","severity":1,"message":"1265","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1266","line":11,"column":8,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1154","line":11,"column":17,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1148","line":11,"column":28,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":36},{"ruleId":"1147","severity":1,"message":"1267","line":13,"column":10,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1263","line":93,"column":13,"nodeType":"1149","messageId":"1150","endLine":93,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1268","line":114,"column":10,"nodeType":"1149","messageId":"1150","endLine":114,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1154","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1148","line":1,"column":28,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":36},{"ruleId":"1147","severity":1,"message":"1151","line":4,"column":3,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1167","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1155","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1156","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1168","line":9,"column":20,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1261","line":12,"column":22,"nodeType":"1149","messageId":"1150","endLine":12,"endColumn":30},{"ruleId":"1147","severity":1,"message":"1262","line":13,"column":24,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":36},{"ruleId":"1147","severity":1,"message":"1161","line":14,"column":10,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":16},{"ruleId":"1147","severity":1,"message":"1172","line":19,"column":7,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1263","line":84,"column":9,"nodeType":"1149","messageId":"1150","endLine":84,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1154","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1231","line":1,"column":28,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":37},{"ruleId":"1147","severity":1,"message":"1151","line":3,"column":3,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1155","line":4,"column":3,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1156","line":6,"column":3,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1168","line":7,"column":20,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1223","line":11,"column":3,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":18},{"ruleId":"1147","severity":1,"message":"1161","line":23,"column":18,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":24},{"ruleId":"1147","severity":1,"message":"1259","line":58,"column":7,"nodeType":"1149","messageId":"1150","endLine":58,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1241","line":60,"column":5,"nodeType":"1149","messageId":"1150","endLine":60,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1216","line":64,"column":9,"nodeType":"1149","messageId":"1150","endLine":64,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1154","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1151","line":3,"column":10,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1155","line":3,"column":16,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1156","line":3,"column":23,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1168","line":3,"column":48,"nodeType":"1149","messageId":"1150","endLine":3,"endColumn":54},{"ruleId":"1147","severity":1,"message":"1260","line":29,"column":7,"nodeType":"1149","messageId":"1150","endLine":29,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1231","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1158","line":2,"column":10,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1159","line":2,"column":16,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1160","line":2,"column":24,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1220","line":2,"column":71,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":76},{"ruleId":"1147","severity":1,"message":"1197","line":4,"column":8,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":5,"column":10,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1269","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":28},{"ruleId":"1147","severity":1,"message":"1172","line":14,"column":7,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1202","line":49,"column":11,"nodeType":"1149","messageId":"1150","endLine":49,"endColumn":19},{"ruleId":"1270","severity":1,"message":"1271","line":53,"column":9,"nodeType":"1272","messageId":"1273","endLine":53,"endColumn":28},{"ruleId":"1147","severity":1,"message":"1197","line":4,"column":8,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":6,"column":10,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1172","line":14,"column":7,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1274","line":30,"column":9,"nodeType":"1149","messageId":"1150","endLine":30,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1275","line":33,"column":10,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1276","line":41,"column":9,"nodeType":"1149","messageId":"1150","endLine":41,"endColumn":16},{"ruleId":"1147","severity":1,"message":"1202","line":93,"column":11,"nodeType":"1149","messageId":"1150","endLine":93,"endColumn":19},{"ruleId":"1226","severity":1,"message":"1227","line":108,"column":52,"nodeType":"1189","messageId":"1228","endLine":108,"endColumn":65},{"ruleId":"1147","severity":1,"message":"1202","line":113,"column":11,"nodeType":"1149","messageId":"1150","endLine":113,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1277","line":148,"column":5,"nodeType":"1183","endLine":148,"endColumn":7,"suggestions":"1321"},{"ruleId":"1147","severity":1,"message":"1231","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1158","line":2,"column":10,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1159","line":2,"column":16,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1160","line":2,"column":24,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1220","line":2,"column":72,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":77},{"ruleId":"1147","severity":1,"message":"1197","line":4,"column":8,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":6,"column":10,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1269","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":28},{"ruleId":"1147","severity":1,"message":"1172","line":14,"column":7,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1202","line":50,"column":11,"nodeType":"1149","messageId":"1150","endLine":50,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1161","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1177","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1233","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1220","line":11,"column":3,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1163","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1162","line":14,"column":3,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1296","line":15,"column":3,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1151","line":17,"column":10,"nodeType":"1149","messageId":"1150","endLine":17,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1197","line":20,"column":8,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":21,"column":10,"nodeType":"1149","messageId":"1150","endLine":21,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":22,"column":10,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1223","line":22,"column":31,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":46},{"ruleId":"1147","severity":1,"message":"1172","line":26,"column":7,"nodeType":"1149","messageId":"1150","endLine":26,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1206","line":28,"column":7,"nodeType":"1149","messageId":"1150","endLine":28,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":29,"column":9,"nodeType":"1149","messageId":"1150","endLine":29,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1274","line":33,"column":9,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1236","line":36,"column":7,"nodeType":"1149","messageId":"1150","endLine":36,"endColumn":12},{"ruleId":"1147","severity":1,"message":"1237","line":37,"column":10,"nodeType":"1149","messageId":"1150","endLine":37,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1238","line":37,"column":16,"nodeType":"1149","messageId":"1150","endLine":37,"endColumn":23},{"ruleId":"1147","severity":1,"message":"1239","line":39,"column":10,"nodeType":"1149","messageId":"1150","endLine":39,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1240","line":40,"column":10,"nodeType":"1149","messageId":"1150","endLine":40,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1242","line":50,"column":9,"nodeType":"1149","messageId":"1150","endLine":50,"endColumn":20},{"ruleId":"1147","severity":1,"message":"1224","line":54,"column":9,"nodeType":"1149","messageId":"1150","endLine":54,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1225","line":58,"column":9,"nodeType":"1149","messageId":"1150","endLine":58,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1243","line":89,"column":9,"nodeType":"1149","messageId":"1150","endLine":89,"endColumn":23},{"ruleId":"1181","severity":1,"message":"1297","line":103,"column":5,"nodeType":"1183","endLine":103,"endColumn":19,"suggestions":"1322"},{"ruleId":"1181","severity":1,"message":"1203","line":107,"column":6,"nodeType":"1183","endLine":107,"endColumn":20,"suggestions":"1323"},{"ruleId":"1147","severity":1,"message":"1159","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1160","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1293","line":20,"column":10,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":30},{"ruleId":"1147","severity":1,"message":"1172","line":22,"column":7,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1216","line":33,"column":9,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1279","line":140,"column":9,"nodeType":"1149","messageId":"1150","endLine":140,"endColumn":16},{"ruleId":"1181","severity":1,"message":"1294","line":158,"column":6,"nodeType":"1183","endLine":158,"endColumn":8,"suggestions":"1324"},{"ruleId":"1282","severity":1,"message":"1283","line":189,"column":32,"nodeType":"1284","messageId":"1285","endLine":189,"endColumn":34},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1161","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1177","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1178","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":6},{"ruleId":"1147","severity":1,"message":"1233","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1220","line":11,"column":3,"nodeType":"1149","messageId":"1150","endLine":11,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1163","line":13,"column":3,"nodeType":"1149","messageId":"1150","endLine":13,"endColumn":8},{"ruleId":"1147","severity":1,"message":"1162","line":14,"column":3,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":11},{"ruleId":"1147","severity":1,"message":"1296","line":15,"column":3,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":7},{"ruleId":"1147","severity":1,"message":"1151","line":17,"column":10,"nodeType":"1149","messageId":"1150","endLine":17,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1197","line":20,"column":8,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":21,"column":10,"nodeType":"1149","messageId":"1150","endLine":21,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":22,"column":10,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1223","line":22,"column":31,"nodeType":"1149","messageId":"1150","endLine":22,"endColumn":46},{"ruleId":"1147","severity":1,"message":"1172","line":26,"column":7,"nodeType":"1149","messageId":"1150","endLine":26,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1206","line":28,"column":7,"nodeType":"1149","messageId":"1150","endLine":28,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1207","line":29,"column":9,"nodeType":"1149","messageId":"1150","endLine":29,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1274","line":33,"column":9,"nodeType":"1149","messageId":"1150","endLine":33,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1236","line":36,"column":7,"nodeType":"1149","messageId":"1150","endLine":36,"endColumn":12},{"ruleId":"1147","severity":1,"message":"1237","line":37,"column":10,"nodeType":"1149","messageId":"1150","endLine":37,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1238","line":37,"column":16,"nodeType":"1149","messageId":"1150","endLine":37,"endColumn":23},{"ruleId":"1147","severity":1,"message":"1239","line":39,"column":10,"nodeType":"1149","messageId":"1150","endLine":39,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1240","line":40,"column":10,"nodeType":"1149","messageId":"1150","endLine":40,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1242","line":50,"column":9,"nodeType":"1149","messageId":"1150","endLine":50,"endColumn":20},{"ruleId":"1147","severity":1,"message":"1224","line":54,"column":9,"nodeType":"1149","messageId":"1150","endLine":54,"endColumn":17},{"ruleId":"1147","severity":1,"message":"1225","line":58,"column":9,"nodeType":"1149","messageId":"1150","endLine":58,"endColumn":21},{"ruleId":"1147","severity":1,"message":"1243","line":89,"column":9,"nodeType":"1149","messageId":"1150","endLine":89,"endColumn":23},{"ruleId":"1181","severity":1,"message":"1297","line":103,"column":5,"nodeType":"1183","endLine":103,"endColumn":19,"suggestions":"1325"},{"ruleId":"1181","severity":1,"message":"1203","line":107,"column":6,"nodeType":"1183","endLine":107,"endColumn":20,"suggestions":"1326"},{"ruleId":"1147","severity":1,"message":"1159","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1172","line":20,"column":7,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1202","line":80,"column":11,"nodeType":"1149","messageId":"1150","endLine":80,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1279","line":135,"column":9,"nodeType":"1149","messageId":"1150","endLine":135,"endColumn":16},{"ruleId":"1181","severity":1,"message":"1280","line":158,"column":6,"nodeType":"1183","endLine":158,"endColumn":8,"suggestions":"1327"},{"ruleId":"1282","severity":1,"message":"1283","line":191,"column":32,"nodeType":"1284","messageId":"1285","endLine":191,"endColumn":34},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1157","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1159","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1234","line":15,"column":10,"nodeType":"1149","messageId":"1150","endLine":15,"endColumn":24},{"ruleId":"1147","severity":1,"message":"1222","line":16,"column":10,"nodeType":"1149","messageId":"1150","endLine":16,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1172","line":20,"column":7,"nodeType":"1149","messageId":"1150","endLine":20,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1286","line":32,"column":10,"nodeType":"1149","messageId":"1150","endLine":32,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1279","line":32,"column":16,"nodeType":"1149","messageId":"1150","endLine":32,"endColumn":23},{"ruleId":"1147","severity":1,"message":"1202","line":43,"column":11,"nodeType":"1149","messageId":"1150","endLine":43,"endColumn":19},{"ruleId":"1181","severity":1,"message":"1287","line":75,"column":6,"nodeType":"1183","endLine":75,"endColumn":8,"suggestions":"1328"},{"ruleId":"1147","severity":1,"message":"1232","line":2,"column":8,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1157","line":5,"column":3,"nodeType":"1149","messageId":"1150","endLine":5,"endColumn":15},{"ruleId":"1147","severity":1,"message":"1159","line":7,"column":3,"nodeType":"1149","messageId":"1150","endLine":7,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1289","line":10,"column":3,"nodeType":"1149","messageId":"1150","endLine":10,"endColumn":10},{"ruleId":"1147","severity":1,"message":"1290","line":14,"column":3,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":9},{"ruleId":"1147","severity":1,"message":"1234","line":18,"column":10,"nodeType":"1149","messageId":"1150","endLine":18,"endColumn":24},{"ruleId":"1147","severity":1,"message":"1291","line":18,"column":25,"nodeType":"1149","messageId":"1150","endLine":18,"endColumn":39},{"ruleId":"1147","severity":1,"message":"1222","line":19,"column":10,"nodeType":"1149","messageId":"1150","endLine":19,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1172","line":23,"column":7,"nodeType":"1149","messageId":"1150","endLine":23,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1279","line":35,"column":16,"nodeType":"1149","messageId":"1150","endLine":35,"endColumn":23},{"ruleId":"1181","severity":1,"message":"1287","line":101,"column":6,"nodeType":"1183","endLine":101,"endColumn":8,"suggestions":"1329"},{"ruleId":"1147","severity":1,"message":"1231","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1158","line":2,"column":10,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1159","line":2,"column":16,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1160","line":2,"column":24,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1220","line":2,"column":71,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":76},{"ruleId":"1147","severity":1,"message":"1197","line":4,"column":8,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":6,"column":10,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1269","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":28},{"ruleId":"1147","severity":1,"message":"1172","line":14,"column":7,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1202","line":49,"column":11,"nodeType":"1149","messageId":"1150","endLine":49,"endColumn":19},{"ruleId":"1147","severity":1,"message":"1231","line":1,"column":17,"nodeType":"1149","messageId":"1150","endLine":1,"endColumn":26},{"ruleId":"1147","severity":1,"message":"1158","line":2,"column":10,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1159","line":2,"column":16,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1160","line":2,"column":24,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":29},{"ruleId":"1147","severity":1,"message":"1220","line":2,"column":71,"nodeType":"1149","messageId":"1150","endLine":2,"endColumn":76},{"ruleId":"1147","severity":1,"message":"1197","line":4,"column":8,"nodeType":"1149","messageId":"1150","endLine":4,"endColumn":14},{"ruleId":"1147","severity":1,"message":"1198","line":6,"column":10,"nodeType":"1149","messageId":"1150","endLine":6,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1222","line":8,"column":3,"nodeType":"1149","messageId":"1150","endLine":8,"endColumn":22},{"ruleId":"1147","severity":1,"message":"1269","line":9,"column":3,"nodeType":"1149","messageId":"1150","endLine":9,"endColumn":28},{"ruleId":"1147","severity":1,"message":"1172","line":14,"column":7,"nodeType":"1149","messageId":"1150","endLine":14,"endColumn":13},{"ruleId":"1147","severity":1,"message":"1202","line":49,"column":11,"nodeType":"1149","messageId":"1150","endLine":49,"endColumn":19},"no-native-reassign",["1330"],"no-negated-in-lhs",["1331"],"no-unused-vars","'useState' is defined but never used.","Identifier","unusedVar","'Link' is defined but never used.","'withRouter' is defined but never used.","'HashRouter' is defined but never used.","'Component' is defined but never used.","'Route' is defined but never used.","'Switch' is defined but never used.","'AutoComplete' is defined but never used.","'Form' is defined but never used.","'Select' is defined but never used.","'Input' is defined but never used.","'Button' is defined but never used.","'Carousel' is defined but never used.","'Image' is defined but never used.","'Footer' is defined but never used.","'Auth' is defined but never used.","'userdata' is assigned a value but never used.","'Redirect' is defined but never used.","'Router' is defined but never used.","'Checkbox' is defined but never used.","'axios' is defined but never used.","'oc' is defined but never used.","'MySwal' is assigned a value but never used.","'_studentid' is assigned a value but never used.","'setStudentId' is assigned a value but never used.","'Tooltip' is defined but never used.","'Cascader' is defined but never used.","'Row' is defined but never used.","'Col' is defined but never used.","'QuestionCircleOutlined' is defined but never used.","'AutoCompleteOption' is assigned a value but never used.","react-hooks/exhaustive-deps","React Hook React.useCallback has a missing dependency: 'form'. Either include it or remove the dependency array.","ArrayExpression",["1332"],"React Hook useEffect has a missing dependency: 'loadDep'. Either include it or remove the dependency array.",["1333"],"eqeqeq","Expected '!==' and instead saw '!='.","BinaryExpression","unexpected","import/no-anonymous-default-export","Unexpected default export of anonymous function","ExportDefaultDeclaration","Assignments to the '_data' variable from inside React Hook useEffect will be lost after each render. To preserve the value over time, store it in a useRef Hook and keep the mutable value in the '.current' property. Otherwise, you can move this variable directly inside useEffect.","CallExpression","'LOGIN_SUCCESS' is defined but never used.","'styled' is defined but never used.","'FormInstance' is defined but never used.","'id' is assigned a value but never used.","React Hook useCallback does nothing when called with only one argument. Did you forget to pass an array of dependencies?","MemberExpression","'response' is assigned a value but never used.","React Hook React.useEffect has a missing dependency: 'getData'. Either include it or remove the dependency array.",["1334"],"'ImageUploader' is defined but never used.","'Option' is assigned a value but never used.","'TextArea' is assigned a value but never used.","'fileList' is assigned a value but never used.","'setFileList' is assigned a value but never used.","'isDisable' is assigned a value but never used.","'setDisable' is assigned a value but never used.","React Hook React.useCallback has missing dependencies: 'deptname' and 'form'. Either include them or remove the dependency array.",["1335"],"'onChangeSelectFunc' is assigned a value but never used.",["1336"],"'name' is assigned a value but never used.",["1337"],["1338"],["1339"],"'Modal' is defined but never used.","'Pagination' is defined but never used.","'CloudUploadOutlined' is defined but never used.","'LoadingOutlined' is defined but never used.","'handleOk' is assigned a value but never used.","'handleCancel' is assigned a value but never used.","use-isnan","Use the isNaN function to compare with NaN.","comparisonWithNaN",["1340"],["1341"],"'useEffect' is defined but never used.","'moment' is defined but never used.","'Divider' is defined but never used.","'SearchOutlined' is defined but never used.","'openNotification' is assigned a value but never used.","'count' is assigned a value but never used.","'size' is assigned a value but never used.","'setSize' is assigned a value but never used.","'form' is assigned a value but never used.","'visible' is assigned a value but never used.","'menu' is assigned a value but never used.","'FormHandler' is assigned a value but never used.","'onValuesChange' is assigned a value but never used.","React Hook React.useCallback has missing dependencies: 'department', 'header', and 'pageSize'. Either include them or remove the dependency array.",["1342"],["1343"],"'PageRefresh' is assigned a value but never used.","React Hook React.useCallback has missing dependencies: 'deptname', 'header', 'mode', and 'pageSize'. Either include them or remove the dependency array.",["1344"],"React Hook React.useCallback has missing dependencies: 'deptname', 'header', and 'pageSize'. Either include them or remove the dependency array.",["1345"],["1346"],"React Hook React.useEffect has a missing dependency: 'changeMode'. Either include it or remove the dependency array.",["1347"],["1348"],"React Hook React.useCallback has missing dependencies: 'PageRefresh', 'department', 'header', and 'pageSize'. Either include them or remove the dependency array.",["1349"],["1350"],"'history' is assigned a value but never used.","'GradientBorder' is assigned a value but never used.","'authUser' is defined but never used.","'LockOutlined' is defined but never used.","'dept' is assigned a value but never used.","'AUTH_USER' is defined but never used.","'REGISTER_ERROR' is defined but never used.","'React' is defined but never used.","'request' is defined but never used.","'dep' is defined but never used.","'ExclamationCircleOutlined' is defined but never used.","no-unreachable","Unreachable code.","ExpressionStatement","unreachableCode","'department' is assigned a value but never used.","'dep' is assigned a value but never used.","'loadDep' is assigned a value but never used.","React Hook useEffect has missing dependencies: 'data.category1', 'data.category2', 'data.category3', 'data.category4', 'data.category5', 'data.faqno', 'data.imageinfo', 'data.landingUrl', 'data.question', 'data.questionAnswer', and 'form'. Either include them or remove the dependency array.",["1351"],"'getData' is assigned a value but never used.","React Hook React.useCallback has missing dependencies: 'form' and 'inputValue'. Either include them or remove the dependency array.",["1352"],"array-callback-return","Array.prototype.map() expects a return value from arrow function.","ArrowFunctionExpression","expectedInside","'data' is assigned a value but never used.","React Hook useEffect has a missing dependency: 'form'. Either include it or remove the dependency array.",["1353"],"'message' is defined but never used.","'Upload' is defined but never used.","'UploadOutlined' is defined but never used.",["1354"],"'getDefaultNormalizer' is defined but never used.","React Hook React.useCallback has a missing dependency: 'inputValue'. Either include it or remove the dependency array.",["1355"],"'Tabs' is defined but never used.","React Hook React.useCallback has missing dependencies: 'PageRefresh', 'header', and 'pageSize'. Either include them or remove the dependency array.",["1356"],["1357"],["1358"],["1359"],["1360"],["1361"],["1362"],["1363"],["1364"],["1365"],["1366"],["1367"],["1368"],["1369"],["1370"],["1371"],["1372"],["1373"],["1374"],["1375"],["1376"],["1377"],["1378"],["1379"],["1380"],["1381"],["1382"],["1383"],["1384"],["1385"],["1386"],["1387"],"no-global-assign","no-unsafe-negation",{"desc":"1388","fix":"1389"},{"desc":"1390","fix":"1391"},{"desc":"1392","fix":"1393"},{"desc":"1394","fix":"1395"},{"desc":"1388","fix":"1396"},{"desc":"1394","fix":"1397"},{"desc":"1388","fix":"1398"},{"desc":"1399","fix":"1400"},{"desc":"1401","fix":"1402"},{"desc":"1399","fix":"1403"},{"desc":"1404","fix":"1405"},{"desc":"1406","fix":"1407"},{"desc":"1408","fix":"1409"},{"desc":"1410","fix":"1411"},{"desc":"1406","fix":"1412"},{"desc":"1413","fix":"1414"},{"desc":"1399","fix":"1415"},{"desc":"1416","fix":"1417"},{"desc":"1406","fix":"1418"},{"desc":"1419","fix":"1420"},{"desc":"1421","fix":"1422"},{"desc":"1388","fix":"1423"},{"desc":"1388","fix":"1424"},{"desc":"1425","fix":"1426"},{"desc":"1427","fix":"1428"},{"desc":"1406","fix":"1429"},{"desc":"1427","fix":"1430"},{"desc":"1406","fix":"1431"},{"desc":"1388","fix":"1432"},{"desc":"1390","fix":"1433"},{"desc":"1401","fix":"1434"},{"desc":"1399","fix":"1435"},{"desc":"1394","fix":"1436"},{"desc":"1388","fix":"1437"},{"desc":"1404","fix":"1438"},{"desc":"1406","fix":"1439"},{"desc":"1392","fix":"1440"},{"desc":"1394","fix":"1441"},{"desc":"1388","fix":"1442"},{"desc":"1399","fix":"1443"},{"desc":"1408","fix":"1444"},{"desc":"1410","fix":"1445"},{"desc":"1406","fix":"1446"},{"desc":"1413","fix":"1447"},{"desc":"1416","fix":"1448"},{"desc":"1406","fix":"1449"},{"desc":"1399","fix":"1450"},{"desc":"1419","fix":"1451"},{"desc":"1427","fix":"1452"},{"desc":"1406","fix":"1453"},{"desc":"1425","fix":"1454"},{"desc":"1427","fix":"1455"},{"desc":"1406","fix":"1456"},{"desc":"1421","fix":"1457"},{"desc":"1388","fix":"1458"},{"desc":"1388","fix":"1459"},"Update the dependencies array to be: [form]",{"range":"1460","text":"1461"},"Update the dependencies array to be: [loadDep]",{"range":"1462","text":"1463"},"Update the dependencies array to be: [department, getData]",{"range":"1464","text":"1465"},"Update the dependencies array to be: [department, deptname, form]",{"range":"1466","text":"1467"},{"range":"1468","text":"1461"},{"range":"1469","text":"1467"},{"range":"1470","text":"1461"},"Update the dependencies array to be: [getData]",{"range":"1471","text":"1472"},"Update the dependencies array to be: [department, form]",{"range":"1473","text":"1474"},{"range":"1475","text":"1472"},"Update the dependencies array to be: [department, header, page, pageSize]",{"range":"1476","text":"1477"},"Update the dependencies array to be: [getData, page, setPage]",{"range":"1478","text":"1479"},"Update the dependencies array to be: [deptname, header, mode, page, pageSize]",{"range":"1480","text":"1481"},"Update the dependencies array to be: [deptname, header, mode, pageSize]",{"range":"1482","text":"1483"},{"range":"1484","text":"1479"},"Update the dependencies array to be: [changeMode, mode, setmode]",{"range":"1485","text":"1486"},{"range":"1487","text":"1472"},"Update the dependencies array to be: [PageRefresh, department, header, page, pageSize]",{"range":"1488","text":"1489"},{"range":"1490","text":"1479"},"Update the dependencies array to be: [data.category1, data.category2, data.category3, data.category4, data.category5, data.faqno, data.imageinfo, data.landingUrl, data.question, data.questionAnswer, form]",{"range":"1491","text":"1492"},"Update the dependencies array to be: [form, inputValue]",{"range":"1493","text":"1494"},{"range":"1495","text":"1461"},{"range":"1496","text":"1461"},"Update the dependencies array to be: [inputValue]",{"range":"1497","text":"1498"},"Update the dependencies array to be: [PageRefresh, header, page, pageSize]",{"range":"1499","text":"1500"},{"range":"1501","text":"1479"},{"range":"1502","text":"1500"},{"range":"1503","text":"1479"},{"range":"1504","text":"1461"},{"range":"1505","text":"1463"},{"range":"1506","text":"1474"},{"range":"1507","text":"1472"},{"range":"1508","text":"1467"},{"range":"1509","text":"1461"},{"range":"1510","text":"1477"},{"range":"1511","text":"1479"},{"range":"1512","text":"1465"},{"range":"1513","text":"1467"},{"range":"1514","text":"1461"},{"range":"1515","text":"1472"},{"range":"1516","text":"1481"},{"range":"1517","text":"1483"},{"range":"1518","text":"1479"},{"range":"1519","text":"1486"},{"range":"1520","text":"1489"},{"range":"1521","text":"1479"},{"range":"1522","text":"1472"},{"range":"1523","text":"1492"},{"range":"1524","text":"1500"},{"range":"1525","text":"1479"},{"range":"1526","text":"1498"},{"range":"1527","text":"1500"},{"range":"1528","text":"1479"},{"range":"1529","text":"1494"},{"range":"1530","text":"1461"},{"range":"1531","text":"1461"},[4874,4876],"[form]",[8356,8358],"[loadDep]",[3569,3581],"[department, getData]",[1478,1490],"[department, deptname, form]",[1610,1612],[1446,1458],[1578,1580],[2855,2857],"[getData]",[6076,6088],"[department, form]",[6142,6144],[2412,2426],"[department, header, page, pageSize]",[2480,2494],"[getData, page, setPage]",[4406,4420],"[deptname, header, mode, page, pageSize]",[5096,5110],"[deptname, header, mode, pageSize]",[5180,5194],[5251,5265],"[changeMode, mode, setmode]",[3181,3183],[2554,2568],"[PageRefresh, department, header, page, pageSize]",[2622,2636],[4262,4264],"[data.category1, data.category2, data.category3, data.category4, data.category5, data.faqno, data.imageinfo, data.landingUrl, data.question, data.questionAnswer, form]",[4190,4192],"[form, inputValue]",[1839,1841],[2480,2482],[4306,4308],"[inputValue]",[2695,2709],"[PageRefresh, header, page, pageSize]",[2763,2777],[2675,2689],[2743,2757],[4877,4879],[8359,8361],[6076,6088],[6142,6144],[1478,1490],[1610,1612],[2412,2426],[2480,2494],[3569,3581],[1446,1458],[1578,1580],[2855,2857],[4406,4420],[5096,5110],[5180,5194],[5251,5265],[2554,2568],[2622,2636],[3181,3183],[4262,4264],[2675,2689],[2743,2757],[4306,4308],[2683,2697],[2751,2765],[4190,4192],[1839,1841],[2480,2482]]