{"version":3,"sources":["Components/Servers.tsx","Components/ServerBox.tsx","App.tsx","reportWebVitals.ts","index.tsx"],"names":["SortType","ShowFilterOptions","ServerBox","props","HideAnswer","bind","state","e","preventDefault","stopPropagation","input","mapName","startsWith","length","includes","split","className","src","this","ServerMap","join","alt","ServerName","ServerIP","ServerPort","ServerType","Region","PlayersOnline","href","convertToGuidesLink","trigger","modal","nested","close","ServerID","onClick","console","log","React","Component","Servers","FilteredServerTypes","FilterServerMap","FilterServerRegion","FilterServerTypes","SortBy","DefaultByNumber","ShowFilters","fetch","then","result","json","forEach","setState","sort","a","b","matcha","match","matchb","toString","match1","Number","parseInt","match2","SortValue","Set","map","i","MapName","type","filter","concat","Map","Maps","SelectUniqueMaps","indexOf","PlayerCount","ServerTypes","SelectUniqueServerTypes","id","onChange","ChangeFilterTypes","ServerMaps","ServerRegion","OrderBy","Fragment","ChangeSelectedServerType","name","ChangeOrderBy","SelectUniqueRegions","ChangeSelectedServerRegion","ChangeSelectedServerMap","style","color","DealWithSorting","GetServerIPPretty","IP","ResolveServerType","Port","ServerVersion","Version","_id","undefined","toLowerCase","trim","App","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","render","StrictMode","document","getElementById"],"mappings":"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","file":"static/js/main.100229cb.chunk.js","sourcesContent":["import React from \"react\";\nimport ServerBox from \"./ServerBox\";\n\nenum SortType {\n DefaultByNumber,\n PlayerCount,\n Map,\n ServerType,\n}\nenum ShowFilterOptions {\n ServerTypes,\n ServerRegion,\n ServerMaps,\n OrderBy,\n}\n\ntype MyState = {\n Servers: PublicServerInfo[];\n FilteredServerTypes: string[];\n FilterServerTypes: string[];\n FilterServerRegion: string[];\n FilterServerMap: string[];\n SortBy: SortType;\n ShowFilters: ShowFilterOptions[];\n};\ntype MyProps = {};\nexport class Servers extends React.Component {\n constructor(props: MyProps) {\n super(props);\n this.state = {\n Servers: [],\n FilteredServerTypes: [],\n FilterServerMap: [],\n FilterServerRegion: [],\n FilterServerTypes: [],\n SortBy: SortType.DefaultByNumber,\n ShowFilters: [],\n };\n }\n componentDidMount() {\n fetch(\"https://api.pandahut.net/api/ServerProxy/PublicList\")\n .then((result) => result.json())\n .then((result: PublicServerInfo[]) => {\n result.forEach((result) => {\n // Manually prettifying some Server Types\n if (result.ServerType === \"Unturnov15\") {\n result.ServerType = \"Unturnov 1.5\";\n }\n if (result.ServerType === \"RP\") {\n result.ServerType = \"Roleplay\";\n }\n if (result.ServerType === \"CreativeArena\") {\n result.ServerType = \"Creative Arena\";\n }\n });\n this.setState({\n Servers: result.sort((a, b) => {\n var matcha = a.ServerName.match(/(\\d+)/);\n var matchb = b.ServerName.match(/(\\d+)/);\n if (\n matcha != null &&\n matchb != null &&\n matcha?.length !== 0 &&\n matchb?.length !== 0\n ) {\n a.ServerID = matcha[0].toString();\n b.ServerID = matchb[0].toString();\n var match1 = Number.parseInt(matcha[0].toString());\n var match2 = Number.parseInt(matchb[0].toString());\n a.SortValue = match1;\n b.SortValue = match2;\n return match1 - match2;\n }\n return 0;\n //console.log(`We got the match1 ${match1} and the match2 ${match2}`);\n }),\n });\n });\n }\n SelectUniqueServerTypes(): string[] {\n return [...new Set(this.state.Servers.map((i) => i.ServerType))];\n }\n SelectUniqueMaps(): string[] {\n return [...new Set(this.state.Servers.map((i) => i.MapName))];\n }\n SelectUniqueRegions(): string[] {\n return [...new Set(this.state.Servers.map((i) => i.Region))];\n }\n ChangeSelectedServerType(type: string): void {\n if (this.state.FilteredServerTypes.includes(type)) {\n this.setState({\n FilteredServerTypes: this.state.FilteredServerTypes.filter(\n (e) => e !== type\n ),\n });\n } else {\n this.setState({\n FilteredServerTypes: this.state.FilteredServerTypes.concat(type),\n });\n }\n }\n ChangeSelectedServerRegion(type: string): void {\n if (this.state.FilterServerRegion.includes(type)) {\n this.setState({\n FilterServerRegion: this.state.FilterServerRegion.filter(\n (e) => e !== type\n ),\n });\n } else {\n this.setState({\n FilterServerRegion: this.state.FilterServerRegion.concat(type),\n });\n }\n }\n ChangeSelectedServerMap(type: string): void {\n if (this.state.FilterServerMap.includes(type)) {\n this.setState({\n FilterServerMap: this.state.FilterServerMap.filter((e) => e !== type),\n });\n } else {\n this.setState({\n FilterServerMap: this.state.FilterServerMap.concat(type),\n });\n }\n }\n ChangeFilterTypes(type: ShowFilterOptions): void {\n if (this.state.ShowFilters.includes(type)) {\n this.setState({\n ShowFilters: this.state.ShowFilters.filter((e) => e !== type),\n });\n } else {\n this.setState({\n ShowFilters: this.state.ShowFilters.concat(type),\n });\n }\n }\n ChangeOrderBy(input: SortType) {\n console.log(input);\n this.setState({\n SortBy: input,\n });\n }\n DealWithSorting(a: PublicServerInfo, b: PublicServerInfo): number {\n if (this.state.SortBy === SortType.DefaultByNumber) {\n if (b.SortValue === null || a.SortValue == null) {\n return 0;\n }\n return a.SortValue - b.SortValue;\n } else if (this.state.SortBy === SortType.Map) {\n var Maps = this.SelectUniqueMaps();\n return Maps.indexOf(b.MapName) - Maps.indexOf(a.MapName);\n } else if (this.state.SortBy === SortType.PlayerCount) {\n return b.PlayersOnline - a.PlayersOnline;\n } else if (this.state.SortBy === SortType.ServerType) {\n var ServerTypes = this.SelectUniqueServerTypes();\n return (\n ServerTypes.indexOf(b.ServerType) - ServerTypes.indexOf(a.ServerType)\n );\n }\n return 0;\n }\n render() {\n return (\n
\n
\n \n \n \n \n
\n {this.state.ShowFilters.includes(ShowFilterOptions.ServerTypes) ? (\n \n {\" \"}\n
\n {this.SelectUniqueServerTypes().map((type) => {\n return (\n \n );\n })}\n
\n
\n ) : null}\n {this.state.ShowFilters.includes(ShowFilterOptions.OrderBy) ? (\n \n {\" \"}\n
\n \n \n \n \n
\n
\n ) : null}\n {this.state.ShowFilters.includes(ShowFilterOptions.ServerRegion) ? (\n \n {\" \"}\n
\n {this.SelectUniqueRegions().map((type) => {\n return (\n \n );\n })}\n
\n
\n ) : null}\n {this.state.ShowFilters.includes(ShowFilterOptions.ServerMaps) ? (\n \n {\" \"}\n
\n {this.SelectUniqueMaps().map((type) => {\n return (\n \n );\n })}\n
\n
\n ) : null}\n {this.state.Servers.filter(\n (e) =>\n ((this.state.FilteredServerTypes.length === 0 &&\n e.ServerType !== \"Lobby\") ||\n this.state.FilteredServerTypes.includes(e.ServerType) !==\n false) &&\n (this.state.FilterServerMap.length === 0 ||\n this.state.FilterServerMap.includes(e.MapName)) &&\n (this.state.FilterServerRegion.length === 0 ||\n this.state.FilterServerRegion.includes(e.Region))\n ).length === 0 ? (\n \n
\n
\n No Servers Matched Your Filters.\n
\n
\n
\n ) : null}\n
\n {this.state.Servers.filter(\n (e: PublicServerInfo) =>\n ((this.state.FilteredServerTypes.length === 0 &&\n e.ServerType !== \"Lobby\") ||\n this.state.FilteredServerTypes.includes(e.ServerType) !==\n false) &&\n (this.state.FilterServerMap.length === 0 ||\n this.state.FilterServerMap.includes(e.MapName)) &&\n (this.state.FilterServerRegion.length === 0 ||\n this.state.FilterServerRegion.includes(e.Region))\n )\n .sort((a: PublicServerInfo, b: PublicServerInfo) =>\n this.DealWithSorting(a, b)\n )\n .map((result: PublicServerInfo) => {\n return (\n \n );\n })}\n
\n
\n );\n }\n}\nexport default Servers;\n\nfunction ResolveServerType(input: string): string {\n if (input === null || input === undefined) {\n return input;\n }\n var type = input.toLowerCase().trim();\n\n if (type.startsWith(\"semi-vanilla\")) {\n return `Semi-Vanilla - 10x Loot | No Bulletdrop | Feast | Airdrop | TPA/Home | Old School`;\n } else if (type.startsWith(\"kitpvp\")) {\n return `KitPvP - Start-out with 50k, Buy Kits with Bamboo, Loads of OP Kits, PvP, Economy, Shop`;\n } else if (type.startsWith(\"normal\")) {\n return `Normal PvP Econ - Shop, Economy, PvP. Nothing Complex about it!`;\n } else if (type.startsWith(\"rust\")) {\n return `Rust PvP - Kits, Vendors, Custom Map, Custom Config, Custom Plugins!`;\n } else if (type.startsWith(\"rp\")) {\n return `Roleplay - No RDM/KOS, Tons of Custom Plugins, Shop, Roles, and more!`;\n } else if (type.startsWith(\"unturnov 1.5\")) {\n return `Unturnov 1.5 - Vendors, Quests, Apartments, and more!`;\n } else if (type.startsWith(\"unturnov\")) {\n return `Unturnov - Vendors, Quests, Apartments, and more!`;\n } else if (type.startsWith(\"vanilla+\")) {\n return `Vanilla+ - A Near Vanilla Experience with some helpful additions like home and TPA!`;\n } else if (type.startsWith(\"lobby\")) {\n return `Lobby -- Easily join all Pandahut Servers, chill out and play Paintball! Default location if you are in a server that restarts.`;\n } else if (type.startsWith(\"creative arena\")) {\n return `Creative Arena -- You can use /i to spawn items, /save and /load to save and load inventories. Any item, any loadout, have fun!`;\n } else if (type.startsWith(\"creative\")) {\n return `Creative -- You can use /i to spawn items, /v to spawn vehicles, /save and /load to save and load inventories. Any item, any loadout, have fun!`;\n }\n return input;\n}\n\nfunction GetServerIPPretty(IP: string): string {\n IP = IP.toLowerCase().trim();\n switch (IP) {\n case \"51.81.233.200\":\n return \"semi.pandahut.net\";\n case \"213.32.111.47\":\n return \"eusemi.pandahut.net\";\n case \"51.81.51.128\":\n return \"vanilla3.pandahut.net\";\n case \"51.81.51.141\":\n return \"washsemi.pandahut.net\";\n case \"51.81.233.201\":\n return \"kitpvp.pandahut.net\";\n case \"51.81.51.130\":\n return \"pvp.pandahut.net\";\n case \"51.81.233.202\":\n return \"pvp2.pandahut.net\";\n case \"213.32.111.40\":\n return \"eusemi2.pandahut.net\";\n case \"51.81.51.132\":\n return \"rust.pandahut.net\";\n case \"51.81.51.131\":\n return \"rp.pandahut.net\";\n case \"51.81.51.133\":\n return \"peisemi.pandahut.net\";\n case \"51.81.51.134\":\n return \"unturnov.pandahut.net\";\n case \"213.32.111.41\":\n return \"unturnoveu.pandahut.net\";\n case \"213.32.111.42\":\n return \"kitpvpeu.pandahut.net\";\n case \"51.81.51.136\":\n return \"kitpvp2.pandahut.net\";\n case \"213.32.111.43\":\n return \"eusemielver.pandahut.net\";\n case \"51.81.233.203\":\n return \"vanilla18.pandahut.net\";\n case \"213.32.111.45\":\n return \"eusemipei.pandahut.net\";\n case \"213.32.111.46\":\n return \"eusemiwash.pandahut.net\";\n default:\n return IP;\n }\n}\n\nexport interface PublicServerInfo {\n _id: string;\n IP: string;\n Port: string;\n ServerName: string;\n MapName: string;\n Version: string;\n IsOnline: boolean;\n ServerType: string;\n ServerID: string;\n PlayersOnline: number;\n Region: string;\n SortValue: null | number;\n}\n","import React, { Fragment } from \"react\";\nimport Popup from \"reactjs-popup\";\n\ntype MyState = {};\ntype MyProps = {\n ServerName: string;\n ServerIP: string;\n ServerType: string;\n ServerPort: string;\n ServerMap: string;\n ServerVersion: string;\n ServerID: string;\n PlayersOnline: number;\n Region: string;\n};\nexport class ServerBox extends React.Component {\n constructor(props: MyProps) {\n super(props);\n this.HideAnswer = this.HideAnswer.bind(this);\n this.state = {};\n }\n componentDidMount() {}\n HideAnswer(e: any) {\n e.preventDefault();\n e.stopPropagation();\n }\n // Extremely hacky\n convertToGuidesLink(input: string, mapName: string) {\n if (mapName === \"PANDAHUT RP LARGE PEI\") {\n return \"RP-13-(PEI-Large)\";\n }\n switch (input) {\n case \"Roleplay\":\n return \"RP-10-(Washington)\";\n }\n if (input.startsWith(\"Unturnov 1.5\")) {\n return \"Unturnov-1.5-(12,-14)\";\n }\n if (input.length === 0 || input.includes(\" \") === false) {\n return input;\n }\n switch (input.split(\" \")[0]) {\n case \"Normal\":\n return \"Normal-Economy\";\n case \"Unturnov 1.5\":\n return \"Unturnov-1.5-(12,-14)\";\n case \"Unturnov\":\n return \"Unturnov-1.25-(19)\";\n case \"Roleplay\":\n return \"RP-10-(Washington)\";\n }\n return input.split(\" \")[0];\n }\n\n render() {\n return (\n
\n \n
\n

{this.props.ServerName}

\n
\n
\n
\n
    \n
  • \n IP: {this.props.ServerIP} Port:{\" \"}\n {this.props.ServerPort}\n
  • \n
  • \n Map: {this.props.ServerMap}\n
  • \n
  • \n Player Slots: 96\n
  • \n
  • \n Style: {this.props.ServerType}\n
  • \n
  • \n Region: {this.props.Region}\n
  • \n
  • \n Players:{\" \"}\n {this.props.PlayersOnline}/96\n
  • \n
  • \n \n \n \n
  • \n
  • \n Play Now}\n className=\"fa fa-gamepad playnowicon\"\n modal\n nested\n >\n {(close: () => void) => (\n \n
    \n
    How to connect
    \n
    \n In any Pandahut Server, do /lobby and find the server\n in the lobby!
    You can also direct connect to a\n lobby with the IP: lobby.pandahut.net and port: 27015.\n
    \n You can also direct connect via IP:{\" \"}\n {this.props.ServerIP} Port: {this.props.ServerPort}\n
    Lastly, you can use the server browser, just\n search Pandahut #{this.props.ServerID}{\" \"}\n
    \n
    \n
    \n {\n console.log(\"modal closed \");\n // eslint-disable-next-line no-restricted-globals\n close();\n }}\n >\n Close\n \n
    \n
    \n )}\n \n
  • \n
\n
\n
\n
\n );\n }\n}\nexport default ServerBox;\n","import React from \"react\";\nimport \"./App.css\";\nimport Servers from \"./Components/Servers\";\n\nfunction App() {\n return ;\n}\n\nexport default App;\n","import { ReportHandler } from 'web-vitals';\n\nconst reportWebVitals = (onPerfEntry?: ReportHandler) => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport './index.css';\nimport App from './App';\nimport reportWebVitals from './reportWebVitals';\n\nReactDOM.render(\n \n \n ,\n document.getElementById('root')\n);\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\nreportWebVitals();\n"],"sourceRoot":""}