[{"/home/seanedmunds/dev/home-page/src/index.js":"1"},{"size":8516,"mtime":1639427704000,"results":"2","hashOfConfig":"3"},{"filePath":"4","messages":"5","errorCount":0,"fatalErrorCount":0,"warningCount":5,"fixableErrorCount":0,"fixableWarningCount":0,"source":"6"},"szjdbt","/home/seanedmunds/dev/home-page/src/index.js",["7","8","9","10","11"],"import React from 'react';\nimport { useState, useEffect } from 'react';\nimport ReactDOM from 'react-dom';\nimport { unstable_createPortal } from 'react-dom';\nimport './index.css';\n\nfunction Homepage() {\n return (\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n );\n}\n\nfunction Search() {\n return (\n
\n
\n \n \n
\n
\n )\n}\n\nfunction Header(props) {\n return (\n
\n
\n

{props.greet}

\n
\n
\n

{props.date}

\n \n
\n
\n );\n}\n\nfunction Applications() {\n let appList = getApps();\n var items = [];\n for (var i = 0; i < appList.apps.length; i++) {\n items.push(\n \n );\n }\n return (\n
\n

Applications

\n
\n {items}\n
\n
\n );\n}\n\nfunction App(props) {\n let classType = props.NSFW + \"-content\";\n let hrefUrl = \"https://\" + props.url;\n let iconName = \"mdi-\" + props.icon;\n return (\n
\n \n
\n
\n \n
\n
\n {props.name}\n {props.url}\n
\n
\n
\n
\n );\n}\n\nfunction Bookmarks() {\n let bookmarkList = getLinks();\n var items = [];\n for (var i = 0; i < bookmarkList.bookmarks.length; i++) {\n items.push(\n \n );\n }\n return (\n
\n

Bookmarks

\n \n
\n );\n}\n\nfunction LinkGroups(props) {\n var items = [];\n for (var i = 0; i < props.links.length; i++) {\n items.push(\n \n );\n }\n return (\n \n );\n}\n\nfunction LinkItem(props) {\n return (\n
\n {props.link.name}\n
\n );\n}\n\nfunction ModalMenu() {\n var providers = getProviders();\n var items = [];\n for (var i = 0; i < providers.providers.length; i++) {\n items.push(\n \n );\n }\n return (\n
\n
\n
\n

Options

\n \n \n \n
\n\n

Color themes

\n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n\n\n

Search options

\n
\n \n \n \n \n \n \n {items}\n \n
WebsitePrefix
\n
\n\n
\n \n \n
\n
\n
\n
\n
\n );\n}\n\nfunction Provider(props) {\n console.log(props);\n return (\n \n {props.provider.name}\n {props.provider.prefix}\n \n );\n}\n\nfunction ModalInit() {\n return (\n
\n \n \n \n
\n );\n}\n\nReactDOM.render(\n ,\n document.getElementById('root')\n);\n\n//Functions below this line are for calculating data for\n//other functions\n\nfunction date() {\n let currentDate = new Date();\n let dateOptions = {\n weekday: \"long\",\n year: \"numeric\",\n month: \"long\",\n day: \"numeric\"\n };\n let date = currentDate.toLocaleDateString(\"en-GB\", dateOptions);\n return date;\n}\nfunction fixDigits(k) {\n if (k < 10) {\n return \"0\" + k;\n }\n else {\n return k;\n }\n}\nfunction greet() {\n let currentTime = new Date();\n let greet = Math.floor(currentTime.getHours() / 6);\n let easterEggChance = Math.floor(Math.random() * 100);\n let greetings = require('./messages.json');\n let timeBased = [];\n let easterEggs = [];\n for (var i = 0; i < greetings.messages.length; i++) {\n if (greetings.messages[i].easteregg == \"FALSE\") {\n timeBased = timeBased.concat(greetings.messages[i]);\n } else {\n easterEggs = easterEggs.concat(greetings.messages[i]);\n }\n }\n if (easterEggChance > 10) {\n return timeBased[greet].message;\n } else {\n let easterEggText = Math.floor(Math.random() * easterEggs.length);\n return easterEggs[easterEggText].message;\n }\n}\nfunction Clock() {\n const [date, setDate] = useState(new Date());\n\n function refreshClock() {\n setDate(new Date());\n }\n useEffect(() => {\n const timerId = setInterval(refreshClock, 1000);\n return function cleanup() {\n clearInterval(timerId);\n };\n }, []);\n\n var hour = date.getHours();\n var minutes = date.getMinutes();\n var seconds = date.getSeconds();\n var midday = \"AM\";\n midday = (hour >= 12) ? \"PM\" : \"AM\";\n hour = (hour == 0) ? 12 : ((hour > 12) ? (hour - 12) : hour);\n minutes = fixDigits(minutes);\n seconds = fixDigits(seconds);\n let time = hour + \":\" + minutes + \" \" + midday;\n\n return (\n

{time}

\n\n );\n}\nfunction getApps() {\n let applications = require('./apps.json');\n return applications;\n}\nfunction getLinks() {\n let links = require('./links.json');\n return links;\n}\nfunction getProviders() {\n let providers = require('./providers.json');\n return providers;\n}",{"ruleId":"12","severity":1,"message":"13","line":4,"column":10,"nodeType":"14","messageId":"15","endLine":4,"endColumn":31},{"ruleId":"16","severity":1,"message":"17","line":169,"column":11,"nodeType":"18","endLine":169,"endColumn":57},{"ruleId":"19","severity":1,"message":"20","line":275,"column":41,"nodeType":"21","messageId":"22","endLine":275,"endColumn":43},{"ruleId":"19","severity":1,"message":"20","line":306,"column":16,"nodeType":"21","messageId":"22","endLine":306,"endColumn":18},{"ruleId":"12","severity":1,"message":"23","line":308,"column":3,"nodeType":"14","messageId":"15","endLine":308,"endColumn":10},"no-unused-vars","'unstable_createPortal' is defined but never used.","Identifier","unusedVar","jsx-a11y/anchor-is-valid","The href attribute requires a valid value to be accessible. Provide a valid, navigable address as the href value. If you cannot provide a valid href, but still need the element to resemble a link, use a button and change it with appropriate styles. Learn more: https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/HEAD/docs/rules/anchor-is-valid.md","JSXOpeningElement","eqeqeq","Expected '===' and instead saw '=='.","BinaryExpression","unexpected","'seconds' is assigned a value but never used."]