x trend in build
@@ -1,13 +1,13 @@
|
||||
{
|
||||
"files": {
|
||||
"main.js": "/static/js/main.6f48211f.chunk.js",
|
||||
"main.js.map": "/static/js/main.6f48211f.chunk.js.map",
|
||||
"main.js": "/static/js/main.96b0fe8c.chunk.js",
|
||||
"main.js.map": "/static/js/main.96b0fe8c.chunk.js.map",
|
||||
"runtime~main.js": "/static/js/runtime~main.a8a9905a.js",
|
||||
"runtime~main.js.map": "/static/js/runtime~main.a8a9905a.js.map",
|
||||
"static/js/2.dfd026ad.chunk.js": "/static/js/2.dfd026ad.chunk.js",
|
||||
"static/js/2.dfd026ad.chunk.js.map": "/static/js/2.dfd026ad.chunk.js.map",
|
||||
"static/js/2.927d0046.chunk.js": "/static/js/2.927d0046.chunk.js",
|
||||
"static/js/2.927d0046.chunk.js.map": "/static/js/2.927d0046.chunk.js.map",
|
||||
"index.html": "/index.html",
|
||||
"precache-manifest.13d7c239a910b29d71f8dba4db3bb071.js": "/precache-manifest.13d7c239a910b29d71f8dba4db3bb071.js",
|
||||
"precache-manifest.fdbbacc9c69b520be3c6cd828a7fe28f.js": "/precache-manifest.fdbbacc9c69b520be3c6cd828a7fe28f.js",
|
||||
"service-worker.js": "/service-worker.js",
|
||||
"static/media/academy-sz.png": "/static/media/academy-sz.d3862485.png",
|
||||
"static/media/ancho-v_games.png": "/static/media/ancho-v_games.07d5d0f6.png",
|
||||
@@ -24,10 +24,10 @@
|
||||
"static/media/games-sz.png": "/static/media/games-sz.778c3044.png",
|
||||
"static/media/goby_arena.png": "/static/media/goby_arena.567a4ee9.png",
|
||||
"static/media/heights.png": "/static/media/heights.7e33477e.png",
|
||||
"static/media/hotel-sz.png": "/static/media/hotel-sz.20f89d17.png",
|
||||
"static/media/hotel-sz.png": "/static/media/hotel-sz.ba2dec26.png",
|
||||
"static/media/humpback_pump_track.png": "/static/media/humpback_pump_track.fac19229.png",
|
||||
"static/media/inkblot_art_academy.png": "/static/media/inkblot_art_academy.fdae0280.png",
|
||||
"static/media/institute-sz.png": "/static/media/institute-sz.8d8688d5.png",
|
||||
"static/media/institute-sz.png": "/static/media/institute-sz.79c63268.png",
|
||||
"static/media/kelp_dome.png": "/static/media/kelp_dome.6610593e.png",
|
||||
"static/media/koshienBanner.png": "/static/media/koshienBanner.34fca5d9.png",
|
||||
"static/media/league.png": "/static/media/league.7aa42d81.png",
|
||||
|
||||
@@ -1 +1 @@
|
||||
<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="shortcut icon" href="/favicon.ico"/><link rel="stylesheet" href="//cdn.jsdelivr.net/npm/semantic-ui@2.4.2/dist/semantic.min.css"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><link rel="manifest" href="/manifest.json"/><title>sendou.ink</title></head><body style="background-color:#f2f7fd"><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(l){function e(e){for(var r,t,n=e[0],o=e[1],u=e[2],f=0,i=[];f<n.length;f++)t=n[f],p[t]&&i.push(p[t][0]),p[t]=0;for(r in o)Object.prototype.hasOwnProperty.call(o,r)&&(l[r]=o[r]);for(s&&s(e);i.length;)i.shift()();return c.push.apply(c,u||[]),a()}function a(){for(var e,r=0;r<c.length;r++){for(var t=c[r],n=!0,o=1;o<t.length;o++){var u=t[o];0!==p[u]&&(n=!1)}n&&(c.splice(r--,1),e=f(f.s=t[0]))}return e}var t={},p={1:0},c=[];function f(e){if(t[e])return t[e].exports;var r=t[e]={i:e,l:!1,exports:{}};return l[e].call(r.exports,r,r.exports,f),r.l=!0,r.exports}f.m=l,f.c=t,f.d=function(e,r,t){f.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},f.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.t=function(r,e){if(1&e&&(r=f(r)),8&e)return r;if(4&e&&"object"==typeof r&&r&&r.__esModule)return r;var t=Object.create(null);if(f.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:r}),2&e&&"string"!=typeof r)for(var n in r)f.d(t,n,function(e){return r[e]}.bind(null,n));return t},f.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return f.d(r,"a",r),r},f.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},f.p="/";var r=window.webpackJsonp=window.webpackJsonp||[],n=r.push.bind(r);r.push=e,r=r.slice();for(var o=0;o<r.length;o++)e(r[o]);var s=n;a()}([])</script><script src="/static/js/2.dfd026ad.chunk.js"></script><script src="/static/js/main.6f48211f.chunk.js"></script></body></html>
|
||||
<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="shortcut icon" href="/favicon.ico"/><link rel="stylesheet" href="//cdn.jsdelivr.net/npm/semantic-ui@2.4.2/dist/semantic.min.css"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><link rel="manifest" href="/manifest.json"/><title>sendou.ink</title></head><body style="background-color:#f2f7fd"><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(l){function e(e){for(var r,t,n=e[0],o=e[1],u=e[2],f=0,i=[];f<n.length;f++)t=n[f],p[t]&&i.push(p[t][0]),p[t]=0;for(r in o)Object.prototype.hasOwnProperty.call(o,r)&&(l[r]=o[r]);for(s&&s(e);i.length;)i.shift()();return c.push.apply(c,u||[]),a()}function a(){for(var e,r=0;r<c.length;r++){for(var t=c[r],n=!0,o=1;o<t.length;o++){var u=t[o];0!==p[u]&&(n=!1)}n&&(c.splice(r--,1),e=f(f.s=t[0]))}return e}var t={},p={1:0},c=[];function f(e){if(t[e])return t[e].exports;var r=t[e]={i:e,l:!1,exports:{}};return l[e].call(r.exports,r,r.exports,f),r.l=!0,r.exports}f.m=l,f.c=t,f.d=function(e,r,t){f.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},f.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.t=function(r,e){if(1&e&&(r=f(r)),8&e)return r;if(4&e&&"object"==typeof r&&r&&r.__esModule)return r;var t=Object.create(null);if(f.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:r}),2&e&&"string"!=typeof r)for(var n in r)f.d(t,n,function(e){return r[e]}.bind(null,n));return t},f.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return f.d(r,"a",r),r},f.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},f.p="/";var r=window.webpackJsonp=window.webpackJsonp||[],n=r.push.bind(r);r.push=e,r=r.slice();for(var o=0;o<r.length;o++)e(r[o]);var s=n;a()}([])</script><script src="/static/js/2.927d0046.chunk.js"></script><script src="/static/js/main.96b0fe8c.chunk.js"></script></body></html>
|
||||
@@ -1,15 +1,15 @@
|
||||
self.__precacheManifest = (self.__precacheManifest || []).concat([
|
||||
{
|
||||
"revision": "d951dbac74010d2d49792747e03705ae",
|
||||
"revision": "ccfe360e0d1fdc25d6116a3c449e4ab3",
|
||||
"url": "/index.html"
|
||||
},
|
||||
{
|
||||
"revision": "2f7a8d8ebed4eee5a9fe",
|
||||
"url": "/static/js/2.dfd026ad.chunk.js"
|
||||
"revision": "7b6e8a4f2f8f21c5ae31",
|
||||
"url": "/static/js/2.927d0046.chunk.js"
|
||||
},
|
||||
{
|
||||
"revision": "8bf28d2dabeb1c82099c",
|
||||
"url": "/static/js/main.6f48211f.chunk.js"
|
||||
"revision": "d5c51826364fb7884e8c",
|
||||
"url": "/static/js/main.96b0fe8c.chunk.js"
|
||||
},
|
||||
{
|
||||
"revision": "42ac5946195a7306e2a5",
|
||||
@@ -76,8 +76,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
|
||||
"url": "/static/media/heights.7e33477e.png"
|
||||
},
|
||||
{
|
||||
"revision": "20f89d17f3cd499e244d8fd54e92b267",
|
||||
"url": "/static/media/hotel-sz.20f89d17.png"
|
||||
"revision": "ba2dec26e982ed1be57fd11ae15d659f",
|
||||
"url": "/static/media/hotel-sz.ba2dec26.png"
|
||||
},
|
||||
{
|
||||
"revision": "fac19229b892def33b3a7623e3395626",
|
||||
@@ -88,8 +88,8 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
|
||||
"url": "/static/media/inkblot_art_academy.fdae0280.png"
|
||||
},
|
||||
{
|
||||
"revision": "8d8688d579384a1828990d37bd162cfc",
|
||||
"url": "/static/media/institute-sz.8d8688d5.png"
|
||||
"revision": "79c63268fea8e9dfabc8c16a372f2e9c",
|
||||
"url": "/static/media/institute-sz.79c63268.png"
|
||||
},
|
||||
{
|
||||
"revision": "6610593ec2d587f95a48f82f3f31ab2c",
|
||||
@@ -14,7 +14,7 @@
|
||||
importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.0/workbox-sw.js");
|
||||
|
||||
importScripts(
|
||||
"/precache-manifest.13d7c239a910b29d71f8dba4db3bb071.js"
|
||||
"/precache-manifest.fdbbacc9c69b520be3c6cd828a7fe28f.js"
|
||||
);
|
||||
|
||||
self.addEventListener('message', (event) => {
|
||||
|
||||
2
build/static/js/2.927d0046.chunk.js
Normal file
2
build/static/js/main.96b0fe8c.chunk.js
Normal file
1
build/static/js/main.96b0fe8c.chunk.js.map
Normal file
|
Before Width: | Height: | Size: 820 KiB |
BIN
build/static/media/hotel-sz.ba2dec26.png
Normal file
|
After Width: | Height: | Size: 828 KiB |
BIN
build/static/media/institute-sz.79c63268.png
Normal file
|
After Width: | Height: | Size: 825 KiB |
|
Before Width: | Height: | Size: 721 KiB |
|
Before Width: | Height: | Size: 2.1 KiB |
BIN
build/wpnSmall/Wst_AquaBall.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
build/wpnSmall/Wst_Bomb_Curling.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
build/wpnSmall/Wst_Bomb_Piyo.png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
build/wpnSmall/Wst_Bomb_Quick.png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
build/wpnSmall/Wst_Bomb_Robo.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
build/wpnSmall/Wst_Bomb_Splash.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
build/wpnSmall/Wst_Bomb_Suction.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
build/wpnSmall/Wst_Bomb_Tako.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
build/wpnSmall/Wst_Flag.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
build/wpnSmall/Wst_Jetpack.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
build/wpnSmall/Wst_LauncherCurling.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
build/wpnSmall/Wst_LauncherQuick.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
build/wpnSmall/Wst_LauncherRobo.png
Normal file
|
After Width: | Height: | Size: 2.7 KiB |
BIN
build/wpnSmall/Wst_LauncherSplash.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
build/wpnSmall/Wst_LauncherSuction.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
build/wpnSmall/Wst_PointSensor.png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
build/wpnSmall/Wst_PoisonFog.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
build/wpnSmall/Wst_RainCloud.png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
build/wpnSmall/Wst_Shield.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
build/wpnSmall/Wst_Sprinkler.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
build/wpnSmall/Wst_SuperArmor.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
build/wpnSmall/Wst_SuperBall.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
build/wpnSmall/Wst_SuperBubble.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
build/wpnSmall/Wst_SuperLanding.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
build/wpnSmall/Wst_SuperMissile.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
build/wpnSmall/Wst_SuperStamp.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
build/wpnSmall/Wst_TimerTrap.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
build/wpnSmall/Wst_WaterCutter.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
30
react-ui/src/components/Misc/HomePage.js
vendored
@@ -8,10 +8,11 @@ const HomePage = ({ setMenuSelection }) => {
|
||||
return (
|
||||
<div>
|
||||
<Segment>
|
||||
<div style={{"padding": "5px"}}>
|
||||
<div style={{ textAlign: "center"}}>
|
||||
<div style={{ padding: "5px" }}>
|
||||
<div style={{ textAlign: "center" }}>
|
||||
<Header as="h2">
|
||||
Welcome to sendou.ink!<Header sub>Competitive Splatoon Hub</Header>
|
||||
Welcome to sendou.ink!
|
||||
<Header sub>Competitive Splatoon Hub</Header>
|
||||
</Header>
|
||||
</div>
|
||||
<div style={{ paddingTop: "20px" }}>
|
||||
@@ -28,8 +29,8 @@ const HomePage = ({ setMenuSelection }) => {
|
||||
</b>{" "}
|
||||
- Generate a maplist to use when scrimming. You can choose the map
|
||||
pool to be used including monthly ranked maps or an upcoming event.
|
||||
Any maps you don't feel like you need to practice can be excluded from
|
||||
the pool.
|
||||
Any maps you don't feel like you need to practice can be excluded
|
||||
from the pool.
|
||||
</div>
|
||||
<div style={{ paddingTop: "15px" }}>
|
||||
<b>
|
||||
@@ -45,17 +46,24 @@ const HomePage = ({ setMenuSelection }) => {
|
||||
<Link to="/xleaderboard">Leaderboards</Link>
|
||||
</b>{" "}
|
||||
- Browse through X Rank Top 500 Leaderboards. There is a leaderboard
|
||||
for each weapon class where players are ranked by the average of their
|
||||
top four powers.
|
||||
for each weapon class where players are ranked by the average of
|
||||
their top four powers.
|
||||
</div>
|
||||
<div style={{ paddingTop: "15px" }}>
|
||||
<b>
|
||||
<Link to="/xsearch">Top 500 Search</Link>
|
||||
</b>{" "}
|
||||
- Search through X Rank Top 500 results. You can choose any weapon to
|
||||
find out the top performing players with it. Another way is to search
|
||||
for a player name if you are curious how a specific player has
|
||||
performed in the past.
|
||||
- Search through X Rank Top 500 results. You can choose any weapon
|
||||
to find out the top performing players with it. Another way is to
|
||||
search for a player name if you are curious how a specific player
|
||||
has performed in the past.
|
||||
</div>
|
||||
<div style={{ paddingTop: "15px" }}>
|
||||
<b>
|
||||
<Link to="/trends">X Rank Trends</Link>
|
||||
</b>{" "}
|
||||
- Compare weapons on a chart based on how many times they finished
|
||||
in the Top 500 of X Rank. You can also combine weapon data freely.
|
||||
</div>
|
||||
<div style={{ paddingTop: "15px" }}>
|
||||
<b>
|
||||
|
||||
36
react-ui/src/components/XSearch/XTrends.js
vendored
@@ -7,7 +7,9 @@ import {
|
||||
List,
|
||||
Image,
|
||||
Grid,
|
||||
Dropdown
|
||||
Dropdown,
|
||||
Message,
|
||||
Header
|
||||
} from "semantic-ui-react"
|
||||
import WeaponForm from "./WeaponForm"
|
||||
import useTrends from "../hooks/useTrends"
|
||||
@@ -24,14 +26,6 @@ import {
|
||||
Brush
|
||||
} from "recharts"
|
||||
|
||||
const circleStyle = {
|
||||
width: "25px",
|
||||
height: "25px",
|
||||
WebkitBorderRadius: "12.5px",
|
||||
MozBorderRadius: "12.5px",
|
||||
borderRadius: "12.5px"
|
||||
}
|
||||
|
||||
const customToolTipStyle = {
|
||||
width: "200px",
|
||||
margin: "0",
|
||||
@@ -91,8 +85,9 @@ const XTrends = ({ setMenuSelection }) => {
|
||||
document.title = "X Rank Trends - sendou.ink"
|
||||
}, [setMenuSelection])
|
||||
|
||||
const CustomTooltip = ({ active, payload, label }) => {
|
||||
const CustomTooltip = ({ active, payload }) => {
|
||||
if (active) {
|
||||
if (payload.length === 0) return null
|
||||
const monthNumber = payload[0].payload.name
|
||||
const yearNumber = payload[0].payload.year
|
||||
let patchDescription = null
|
||||
@@ -121,10 +116,17 @@ const XTrends = ({ setMenuSelection }) => {
|
||||
return null
|
||||
}
|
||||
|
||||
if (error) {
|
||||
return <div style={{ color: "red" }}>{error.message}</div>
|
||||
}
|
||||
|
||||
return (
|
||||
<div>
|
||||
<Segment>
|
||||
<div style={{ padding: "5px" }}>
|
||||
<Header as="h2">
|
||||
Compare weapons based on their X Rank Top 500 appearances
|
||||
</Header>
|
||||
<WeaponForm
|
||||
showSubSpecials
|
||||
weaponForm={weaponForm}
|
||||
@@ -351,6 +353,20 @@ const XTrends = ({ setMenuSelection }) => {
|
||||
</div>
|
||||
)}
|
||||
</div>
|
||||
<Message>
|
||||
<Message.List>
|
||||
<Message.Item>
|
||||
You can check out all the patch notes{" "}
|
||||
<a href="https://splatoonwiki.org/wiki/List_of_updates_in_Splatoon_2">
|
||||
here
|
||||
</a>
|
||||
</Message.Item>
|
||||
<Message.Item>
|
||||
For alternative take on X Rank trends check out{" "}
|
||||
<a href="https://www.splatmeta.ink">Splat Meta</a>
|
||||
</Message.Item>
|
||||
</Message.List>
|
||||
</Message>
|
||||
</Segment>
|
||||
</div>
|
||||
)
|
||||
|
||||