Archived
1
0
This repository has been archived on 2023-05-15. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
home-page/node_modules/.cache/babel-loader/88e34eb8d8a0388965b7f863d0ae24b6.json
Sean Edmunds 0584430b5c First commit
2021-12-13 17:00:40 -06:00

1 line
46 KiB
JSON

{"ast":null,"code":"var _jsxFileName = \"/home/seanedmunds/dev/home-page/src/index.js\",\n _s = $RefreshSig$();\n\nimport React from 'react';\nimport { useState, useEffect } from 'react';\nimport ReactDOM from 'react-dom';\nimport { unstable_createPortal } from 'react-dom';\nimport './index.css';\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\n\nfunction Homepage() {\n return /*#__PURE__*/_jsxDEV(\"main\", {\n id: \"container\",\n class: \"fade\",\n children: [/*#__PURE__*/_jsxDEV(\"div\", {\n children: /*#__PURE__*/_jsxDEV(ModalMenu, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 11,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 10,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n children: /*#__PURE__*/_jsxDEV(Search, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 14,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 13,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n children: /*#__PURE__*/_jsxDEV(Header, {\n date: date(),\n greet: greet()\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 17,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 16,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n children: /*#__PURE__*/_jsxDEV(Applications, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 23,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 22,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n children: /*#__PURE__*/_jsxDEV(Bookmarks, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 26,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 25,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n children: /*#__PURE__*/_jsxDEV(ModalInit, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 29,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 28,\n columnNumber: 9\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 9,\n columnNumber: 5\n }, this);\n}\n\n_c = Homepage;\n\nfunction Search() {\n return /*#__PURE__*/_jsxDEV(\"section\", {\n id: \"search\",\n children: /*#__PURE__*/_jsxDEV(\"div\", {\n class: \"abackground\",\n children: [/*#__PURE__*/_jsxDEV(\"input\", {\n name: \"keywords\",\n type: \"text\",\n class: \"keyword\",\n id: \"keywords\",\n size: \"50\",\n placeholder: \"\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 39,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(\"label\", {\n id: \"searchType\",\n class: \"Input-label\",\n children: \"Google search\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 40,\n columnNumber: 9\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 38,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 37,\n columnNumber: 5\n }, this);\n}\n\n_c2 = Search;\n\nfunction Header(props) {\n return /*#__PURE__*/_jsxDEV(\"section\", {\n id: \"header\",\n children: [/*#__PURE__*/_jsxDEV(\"div\", {\n id: \"greeting_block\",\n children: /*#__PURE__*/_jsxDEV(\"h1\", {\n id: \"header_greet\",\n children: props.greet\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 50,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 49,\n columnNumber: 7\n }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n id: \"date_block\",\n children: [/*#__PURE__*/_jsxDEV(\"h2\", {\n id: \"header_date\",\n children: props.date\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 53,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(Clock, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 54,\n columnNumber: 9\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 52,\n columnNumber: 7\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 48,\n columnNumber: 5\n }, this);\n}\n\n_c3 = Header;\n\nfunction Applications() {\n let appList = getApps();\n var items = [];\n\n for (var i = 0; i < appList.apps.length; i++) {\n items.push( /*#__PURE__*/_jsxDEV(App, {\n name: appList.apps[i].name,\n url: appList.apps[i].url,\n icon: appList.apps[i].icon,\n NSFW: appList.apps[i].NSFW\n }, i, false, {\n fileName: _jsxFileName,\n lineNumber: 65,\n columnNumber: 7\n }, this));\n }\n\n return /*#__PURE__*/_jsxDEV(\"section\", {\n id: \"apps\",\n children: [/*#__PURE__*/_jsxDEV(\"h3\", {\n children: \"Applications\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 76,\n columnNumber: 7\n }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n id: \"apps_loop\",\n children: items\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 77,\n columnNumber: 7\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 75,\n columnNumber: 5\n }, this);\n}\n\n_c4 = Applications;\n\nfunction App(props) {\n let classType = props.NSFW + \"-content\";\n let hrefUrl = \"https://\" + props.url;\n let iconName = \"mdi-\" + props.icon;\n return /*#__PURE__*/_jsxDEV(\"div\", {\n children: /*#__PURE__*/_jsxDEV(\"a\", {\n href: hrefUrl,\n class: classType,\n children: /*#__PURE__*/_jsxDEV(\"div\", {\n class: \"apps_item\",\n children: [/*#__PURE__*/_jsxDEV(\"div\", {\n class: \"apps_icon\",\n children: /*#__PURE__*/_jsxDEV(\"span\", {\n class: \"iconify icon\",\n \"data-icon\": iconName\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 93,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 92,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n class: \"apps_text\",\n children: [/*#__PURE__*/_jsxDEV(\"span\", {\n id: \"app-name\",\n children: props.name\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 96,\n columnNumber: 13\n }, this), /*#__PURE__*/_jsxDEV(\"span\", {\n id: \"app-address\",\n children: props.url\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 97,\n columnNumber: 13\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 95,\n columnNumber: 11\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 91,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 90,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 89,\n columnNumber: 5\n }, this);\n}\n\n_c5 = App;\n\nfunction Bookmarks() {\n let bookmarkList = getLinks();\n var items = [];\n\n for (var i = 0; i < bookmarkList.bookmarks.length; i++) {\n items.push( /*#__PURE__*/_jsxDEV(LinkGroups, {\n category: bookmarkList.bookmarks[i].category,\n links: bookmarkList.bookmarks[i].links\n }, i, false, {\n fileName: _jsxFileName,\n lineNumber: 110,\n columnNumber: 7\n }, this));\n }\n\n return /*#__PURE__*/_jsxDEV(\"section\", {\n id: \"links\",\n children: [/*#__PURE__*/_jsxDEV(\"h3\", {\n children: \"Bookmarks\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 119,\n columnNumber: 7\n }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n id: \"links_loop\",\n children: items\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 120,\n columnNumber: 7\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 118,\n columnNumber: 5\n }, this);\n}\n\n_c6 = Bookmarks;\n\nfunction LinkGroups(props) {\n var items = [];\n\n for (var i = 0; i < props.links.length; i++) {\n items.push( /*#__PURE__*/_jsxDEV(LinkItem, {\n link: props.links[i]\n }, i, false, {\n fileName: _jsxFileName,\n lineNumber: 131,\n columnNumber: 7\n }, this));\n }\n\n return /*#__PURE__*/_jsxDEV(\"div\", {\n id: \"links_item\",\n children: [/*#__PURE__*/_jsxDEV(\"h4\", {\n children: props.category\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 139,\n columnNumber: 7\n }, this), items]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 138,\n columnNumber: 5\n }, this);\n}\n\n_c7 = LinkGroups;\n\nfunction LinkItem(props) {\n return /*#__PURE__*/_jsxDEV(\"div\", {\n children: /*#__PURE__*/_jsxDEV(\"a\", {\n href: props.link.url,\n class: \"theme_color-border theme_text-select\",\n children: props.link.name\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 148,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 147,\n columnNumber: 5\n }, this);\n}\n\n_c8 = LinkItem;\n\nfunction ModalMenu() {\n var providers = getProviders();\n var items = [];\n\n for (var i = 0; i < providers.providers.length; i++) {\n items.push( /*#__PURE__*/_jsxDEV(Provider, {\n provider: providers.providers[i]\n }, i, false, {\n fileName: _jsxFileName,\n lineNumber: 158,\n columnNumber: 7\n }, this));\n }\n\n return /*#__PURE__*/_jsxDEV(\"section\", {\n id: \"modal\",\n children: /*#__PURE__*/_jsxDEV(\"div\", {\n children: [/*#__PURE__*/_jsxDEV(\"header\", {\n id: \"modal-header\",\n children: [/*#__PURE__*/_jsxDEV(\"h1\", {\n children: \"Options\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 168,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"a\", {\n href: \"#\",\n title: \"Close\",\n class: \"modal-close\",\n children: /*#__PURE__*/_jsxDEV(\"span\", {\n class: \"iconify\",\n \"data-icon\": \"mdi-close\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 170,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 169,\n columnNumber: 11\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 167,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(\"h2\", {\n children: \"Color themes\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 174,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n id: \"modal-theme\",\n children: [/*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"blackboard\",\n class: \"theme-button theme-blackboard\",\n children: \"Blackboard\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 177,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"gazette\",\n class: \"theme-button theme-gazette\",\n children: \"Gazette\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 178,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"espresso\",\n class: \"theme-button theme-espresso\",\n children: \"Espresso\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 179,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"cab\",\n class: \"theme-button theme-cab\",\n children: \"Cab\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 180,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"cloud\",\n class: \"theme-button theme-cloud\",\n children: \"Cloud\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 181,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"lime\",\n class: \"theme-button theme-lime\",\n children: \"Lime\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 182,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"passion\",\n class: \"theme-button theme-passion\",\n children: \"Passion\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 183,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"blues\",\n class: \"theme-button theme-blues\",\n children: \"Blues\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 184,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"chalk\",\n class: \"theme-button theme-chalk\",\n children: \"Chalk\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 185,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"tron\",\n class: \"theme-button theme-tron\",\n children: \"Tron\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 186,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"paper\",\n class: \"theme-button theme-paper\",\n children: \"Paper\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 187,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"cyberpunk\",\n class: \"theme-button theme-cyberpunk\",\n children: \"Cyberpunk\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 188,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"quadra\",\n class: \"theme-button theme-panam\",\n children: \"Quadra\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 189,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"panam\",\n class: \"theme-button theme-panam\",\n children: \"Panam\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 190,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"touch\",\n class: \"theme-button theme-touch\",\n children: \"Touch\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 191,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n \"data-theme\": \"peek\",\n class: \"theme-button theme-peek\",\n children: \"Peek\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 192,\n columnNumber: 11\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 176,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(\"h2\", {\n children: \"Search options\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 196,\n columnNumber: 9\n }, this), /*#__PURE__*/_jsxDEV(\"section\", {\n id: \"providers\",\n children: /*#__PURE__*/_jsxDEV(\"script\", {\n type: \"text/handlebars-template\",\n id: \"providers-template\",\n children: /*#__PURE__*/_jsxDEV(\"table\", {\n children: /*#__PURE__*/_jsxDEV(\"tbody\", {\n children: [/*#__PURE__*/_jsxDEV(\"tr\", {\n children: [/*#__PURE__*/_jsxDEV(\"th\", {\n children: \"Website\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 202,\n columnNumber: 21\n }, this), /*#__PURE__*/_jsxDEV(\"th\", {\n children: \"Prefix\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 203,\n columnNumber: 21\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 201,\n columnNumber: 19\n }, this), items]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 200,\n columnNumber: 17\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 199,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 198,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 197,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"header\", {\n id: \"modal-footer\",\n children: [/*#__PURE__*/_jsxDEV(\"a\", {\n href: \"https://github.com/jeroenpardon/\",\n children: /*#__PURE__*/_jsxDEV(\"span\", {\n class: \"iconify\",\n \"data-icon\": \"mdi-github-box\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 212,\n columnNumber: 54\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 212,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"a\", {\n href: \"https://materialdesignicons.com/\",\n children: /*#__PURE__*/_jsxDEV(\"span\", {\n class: \"iconify\",\n \"data-icon\": \"mdi-material-design\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 213,\n columnNumber: 54\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 213,\n columnNumber: 11\n }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n class: \"sneaky\",\n children: [/*#__PURE__*/_jsxDEV(\"input\", {\n type: \"checkbox\",\n id: \"contenttype\",\n onChange: \"nsfw(this)\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 214,\n columnNumber: 31\n }, this), /*#__PURE__*/_jsxDEV(\"label\", {\n for: \"contenttype\",\n children: /*#__PURE__*/_jsxDEV(\"span\", {\n class: \"iconify\",\n \"data-icon\": \"mdi-domino-mask\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 215,\n columnNumber: 36\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 215,\n columnNumber: 11\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 214,\n columnNumber: 11\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 211,\n columnNumber: 9\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 166,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 165,\n columnNumber: 5\n }, this);\n}\n\n_c9 = ModalMenu;\n\nfunction Provider(props) {\n return /*#__PURE__*/_jsxDEV(\"tr\", {\n children: [/*#__PURE__*/_jsxDEV(\"td\", {\n children: /*#__PURE__*/_jsxDEV(\"a\", {\n href: props.url,\n children: props.name\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 226,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 226,\n columnNumber: 7\n }, this), /*#__PURE__*/_jsxDEV(\"td\", {\n children: props.prefix\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 227,\n columnNumber: 7\n }, this)]\n }, void 0, true, {\n fileName: _jsxFileName,\n lineNumber: 225,\n columnNumber: 5\n }, this);\n}\n\n_c10 = Provider;\n\nfunction ModalInit() {\n return /*#__PURE__*/_jsxDEV(\"div\", {\n id: \"modal_init\",\n children: /*#__PURE__*/_jsxDEV(\"a\", {\n class: \"btn\",\n href: \"#modal\",\n children: /*#__PURE__*/_jsxDEV(\"span\", {\n class: \"iconify icon\",\n \"data-icon\": \"mdi-xbox-controller-menu\"\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 236,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 235,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 234,\n columnNumber: 5\n }, this);\n}\n\n_c11 = ModalInit;\nReactDOM.render( /*#__PURE__*/_jsxDEV(Homepage, {}, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 243,\n columnNumber: 3\n}, this), document.getElementById('root')); //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}\n\nfunction fixDigits(k) {\n if (k < 10) {\n return \"0\" + k;\n } else {\n return k;\n }\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\n let greetings = require('./messages.json');\n\n let timeBased = [];\n let easterEggs = [];\n\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\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}\n\nfunction Clock() {\n _s();\n\n const [date, setDate] = useState(new Date());\n\n function refreshClock() {\n setDate(new Date());\n }\n\n useEffect(() => {\n const timerId = setInterval(refreshClock, 1000);\n return function cleanup() {\n clearInterval(timerId);\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 return /*#__PURE__*/_jsxDEV(\"h2\", {\n id: \"clock\",\n children: time\n }, void 0, false, {\n fileName: _jsxFileName,\n lineNumber: 314,\n columnNumber: 5\n }, this);\n}\n\n_s(Clock, \"Gqi45WOZhU2c0BLYX0HoJeiR0fk=\");\n\n_c12 = Clock;\n\nfunction getApps() {\n let applications = require('./apps.json');\n\n return applications;\n}\n\nfunction getLinks() {\n let links = require('./links.json');\n\n return links;\n}\n\nfunction getProviders() {\n let providers = require('./providers.json');\n\n return providers;\n}\n\nvar _c, _c2, _c3, _c4, _c5, _c6, _c7, _c8, _c9, _c10, _c11, _c12;\n\n$RefreshReg$(_c, \"Homepage\");\n$RefreshReg$(_c2, \"Search\");\n$RefreshReg$(_c3, \"Header\");\n$RefreshReg$(_c4, \"Applications\");\n$RefreshReg$(_c5, \"App\");\n$RefreshReg$(_c6, \"Bookmarks\");\n$RefreshReg$(_c7, \"LinkGroups\");\n$RefreshReg$(_c8, \"LinkItem\");\n$RefreshReg$(_c9, \"ModalMenu\");\n$RefreshReg$(_c10, \"Provider\");\n$RefreshReg$(_c11, \"ModalInit\");\n$RefreshReg$(_c12, \"Clock\");","map":{"version":3,"sources":["/home/seanedmunds/dev/home-page/src/index.js"],"names":["React","useState","useEffect","ReactDOM","unstable_createPortal","Homepage","date","greet","Search","Header","props","Applications","appList","getApps","items","i","apps","length","push","name","url","icon","NSFW","App","classType","hrefUrl","iconName","Bookmarks","bookmarkList","getLinks","bookmarks","category","links","LinkGroups","LinkItem","link","ModalMenu","providers","getProviders","Provider","prefix","ModalInit","render","document","getElementById","currentDate","Date","dateOptions","weekday","year","month","day","toLocaleDateString","fixDigits","k","currentTime","Math","floor","getHours","easterEggChance","random","greetings","require","timeBased","easterEggs","messages","easteregg","concat","message","easterEggText","Clock","setDate","refreshClock","timerId","setInterval","cleanup","clearInterval","hour","minutes","getMinutes","seconds","getSeconds","midday","time","applications"],"mappings":"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","sourcesContent":["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 <main id=\"container\" class=\"fade\">\n <div>\n <ModalMenu />\n </div>\n <div>\n <Search />\n </div>\n <div>\n <Header\n date={date()}\n greet={greet()}\n />\n </div>\n <div>\n <Applications />\n </div>\n <div>\n <Bookmarks />\n </div>\n <div>\n <ModalInit />\n </div>\n </main>\n );\n}\n\nfunction Search() {\n return (\n <section id=\"search\">\n <div class=\"abackground\">\n <input name=\"keywords\" type=\"text\" class=\"keyword\" id=\"keywords\" size=\"50\" placeholder=\"\" />\n <label id=\"searchType\" class=\"Input-label\">Google search</label>\n </div>\n </section>\n )\n}\n\nfunction Header(props) {\n return (\n <section id=\"header\">\n <div id=\"greeting_block\">\n <h1 id=\"header_greet\">{props.greet}</h1>\n </div>\n <div id=\"date_block\">\n <h2 id=\"header_date\">{props.date}</h2>\n <Clock />\n </div>\n </section>\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 <App\n key={i}\n name={appList.apps[i].name}\n url={appList.apps[i].url}\n icon={appList.apps[i].icon}\n NSFW={appList.apps[i].NSFW}\n />\n );\n }\n return (\n <section id=\"apps\">\n <h3>Applications</h3>\n <div id=\"apps_loop\">\n {items}\n </div>\n </section>\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 <div>\n <a href={hrefUrl} class={classType}>\n <div class=\"apps_item\">\n <div class=\"apps_icon\">\n <span class=\"iconify icon\" data-icon={iconName}></span>\n </div>\n <div class=\"apps_text\">\n <span id=\"app-name\">{props.name}</span>\n <span id=\"app-address\">{props.url}</span>\n </div>\n </div>\n </a>\n </div>\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 <LinkGroups\n key={i}\n category={bookmarkList.bookmarks[i].category}\n links={bookmarkList.bookmarks[i].links}\n />\n );\n }\n return (\n <section id=\"links\">\n <h3>Bookmarks</h3>\n <div id=\"links_loop\">\n {items}\n </div>\n </section>\n );\n}\n\nfunction LinkGroups(props) {\n var items = [];\n for (var i = 0; i < props.links.length; i++) {\n items.push(\n <LinkItem\n key={i}\n link={props.links[i]}\n />\n );\n }\n return (\n <div id=\"links_item\">\n <h4>{props.category}</h4>\n {items}\n </div>\n );\n}\n\nfunction LinkItem(props) {\n return (\n <div>\n <a href={props.link.url} class=\"theme_color-border theme_text-select\">{props.link.name}</a>\n </div>\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 <Provider \n key={i}\n provider={providers.providers[i]}\n />\n );\n }\n return (\n <section id=\"modal\">\n <div>\n <header id=\"modal-header\">\n <h1>Options</h1>\n <a href=\"#\" title=\"Close\" class=\"modal-close\">\n <span class=\"iconify\" data-icon=\"mdi-close\"></span>\n </a>\n </header>\n\n <h2>Color themes</h2>\n\n <div id=\"modal-theme\">\n <button data-theme=\"blackboard\" class=\"theme-button theme-blackboard\">Blackboard</button>\n <button data-theme=\"gazette\" class=\"theme-button theme-gazette\">Gazette</button>\n <button data-theme=\"espresso\" class=\"theme-button theme-espresso\">Espresso</button>\n <button data-theme=\"cab\" class=\"theme-button theme-cab\">Cab</button>\n <button data-theme=\"cloud\" class=\"theme-button theme-cloud\">Cloud</button>\n <button data-theme=\"lime\" class=\"theme-button theme-lime\">Lime</button>\n <button data-theme=\"passion\" class=\"theme-button theme-passion\">Passion</button>\n <button data-theme=\"blues\" class=\"theme-button theme-blues\">Blues</button>\n <button data-theme=\"chalk\" class=\"theme-button theme-chalk\">Chalk</button>\n <button data-theme=\"tron\" class=\"theme-button theme-tron\">Tron</button>\n <button data-theme=\"paper\" class=\"theme-button theme-paper\">Paper</button>\n <button data-theme=\"cyberpunk\" class=\"theme-button theme-cyberpunk\">Cyberpunk</button>\n <button data-theme=\"quadra\" class=\"theme-button theme-panam\">Quadra</button>\n <button data-theme=\"panam\" class=\"theme-button theme-panam\">Panam</button>\n <button data-theme=\"touch\" class=\"theme-button theme-touch\">Touch</button>\n <button data-theme=\"peek\" class=\"theme-button theme-peek\">Peek</button>\n </div>\n\n\n <h2>Search options</h2>\n <section id=\"providers\">\n <script type=\"text/handlebars-template\" id=\"providers-template\">\n <table>\n <tbody>\n <tr>\n <th>Website</th>\n <th>Prefix</th>\n </tr>\n {items}\n </tbody>\n </table>\n </script>\n </section>\n\n <header id=\"modal-footer\">\n <a href=\"https://github.com/jeroenpardon/\"><span class=\"iconify\" data-icon=\"mdi-github-box\"></span></a>\n <a href=\"https://materialdesignicons.com/\"><span class=\"iconify\" data-icon=\"mdi-material-design\"></span></a>\n <div class=\"sneaky\"><input type=\"checkbox\" id=\"contenttype\" onChange=\"nsfw(this)\"></input>\n <label for=\"contenttype\"><span class=\"iconify\" data-icon=\"mdi-domino-mask\"></span></label></div>\n </header>\n </div>\n </section>\n );\n}\n\nfunction Provider(props) {\n \n return (\n <tr>\n <td><a href={props.url}>{props.name}</a></td>\n <td>{props.prefix}</td>\n </tr>\n );\n}\n\nfunction ModalInit() {\n return (\n <div id=\"modal_init\">\n <a class=\"btn\" href=\"#modal\">\n <span class=\"iconify icon\" data-icon=\"mdi-xbox-controller-menu\"></span>\n </a>\n </div>\n );\n}\n\nReactDOM.render(\n <Homepage />,\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 <h2 id=\"clock\">{time}</h2>\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}"]},"metadata":{},"sourceType":"module"}