Merge pull request #4 from Sendouc/develop

sendou.ink 2.0
This commit is contained in:
Kalle 2019-11-10 17:28:44 +02:00 committed by GitHub
commit df730cd52c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
952 changed files with 12743 additions and 9895 deletions

6
.gitignore vendored
View File

@ -6,9 +6,12 @@ node_modules
# testing
coverage
# build
build
# misc
xrank_data
maps
tourney_maps
.DS_Store
.env
.env.local
@ -23,5 +26,6 @@ yarn-error.log*
config.py
test.py
google_sheet_secret.json
__pycache__

3
.vscode/settings.json vendored Normal file
View File

@ -0,0 +1,3 @@
{
"python.formatting.provider": "black"
}

View File

@ -1,85 +0,0 @@
{
"files": {
"main.css": "/static/css/main.833d239f.chunk.css",
"main.js": "/static/js/main.f12a46bc.chunk.js",
"main.js.map": "/static/js/main.f12a46bc.chunk.js.map",
"runtime~main.js": "/static/js/runtime~main.92405270.js",
"runtime~main.js.map": "/static/js/runtime~main.92405270.js.map",
"static/js/2.457cf87f.chunk.js": "/static/js/2.457cf87f.chunk.js",
"static/js/2.457cf87f.chunk.js.map": "/static/js/2.457cf87f.chunk.js.map",
"static/css/3.42fb0cfa.chunk.css": "/static/css/3.42fb0cfa.chunk.css",
"static/js/3.fe1b3956.chunk.js": "/static/js/3.fe1b3956.chunk.js",
"static/js/3.fe1b3956.chunk.js.map": "/static/js/3.fe1b3956.chunk.js.map",
"static/js/4.d07136ce.chunk.js": "/static/js/4.d07136ce.chunk.js",
"static/js/4.d07136ce.chunk.js.map": "/static/js/4.d07136ce.chunk.js.map",
"static/js/5.7c7119b7.chunk.js": "/static/js/5.7c7119b7.chunk.js",
"static/js/5.7c7119b7.chunk.js.map": "/static/js/5.7c7119b7.chunk.js.map",
"static/js/6.7a91e4e8.chunk.js": "/static/js/6.7a91e4e8.chunk.js",
"static/js/6.7a91e4e8.chunk.js.map": "/static/js/6.7a91e4e8.chunk.js.map",
"index.html": "/index.html",
"precache-manifest.7d193744ceede71fe7e79cf75fd2a409.js": "/precache-manifest.7d193744ceede71fe7e79cf75fd2a409.js",
"service-worker.js": "/service-worker.js",
"static/css/3.42fb0cfa.chunk.css.map": "/static/css/3.42fb0cfa.chunk.css.map",
"static/css/main.833d239f.chunk.css.map": "/static/css/main.833d239f.chunk.css.map",
"static/media/academy-sz.png": "/static/media/academy-sz.91729bf3.png",
"static/media/ancho-v_games.png": "/static/media/ancho-v_games.07d5d0f6.png",
"static/media/arena-sz.png": "/static/media/arena-sz.f9294191.png",
"static/media/arowana_mall.png": "/static/media/arowana_mall.26cf0823.png",
"static/media/blackbelly_skatepark.png": "/static/media/blackbelly_skatepark.a90313b1.png",
"static/media/bridge.png": "/static/media/bridge.fba72008.png",
"static/media/camp-sz.png": "/static/media/camp-sz.8eb5bd84.png",
"static/media/camp_triggerfish.png": "/static/media/camp_triggerfish.c698e702.png",
"static/media/canal-sz.png": "/static/media/canal-sz.4a2190ce.png",
"static/media/depot.png": "/static/media/depot.c5459318.png",
"static/media/dome-sz.png": "/static/media/dome-sz.c3b1ea61.png",
"static/media/fitness-sz.png": "/static/media/fitness-sz.6fb26ef7.png",
"static/media/games-sz.png": "/static/media/games-sz.55625ff4.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.93386fbb.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.dfd92638.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",
"static/media/mahi.png": "/static/media/mahi.0e9369da.png",
"static/media/mainstage-sz.png": "/static/media/mainstage-sz.f95da3c9.png",
"static/media/makomart.png": "/static/media/makomart.8a4f661e.png",
"static/media/mall-sz.png": "/static/media/mall-sz.9e4d36b5.png",
"static/media/manta-sz.png": "/static/media/manta-sz.90294810.png",
"static/media/manta_maria.png": "/static/media/manta_maria.38baf9f6.png",
"static/media/mart-sz.png": "/static/media/mart-sz.e7a5f536.png",
"static/media/moray_towers.png": "/static/media/moray_towers.4f71cd0b.png",
"static/media/museum.png": "/static/media/museum.176394c2.png",
"static/media/musselforge_fitness.png": "/static/media/musselforge_fitness.a66323de.png",
"static/media/new_albacore_hotel.png": "/static/media/new_albacore_hotel.0c283c87.png",
"static/media/pavilion-sz.png": "/static/media/pavilion-sz.1009ee1d.png",
"static/media/piranha_pit.png": "/static/media/piranha_pit.48621b6f.png",
"static/media/pit-rm.png": "/static/media/pit-rm.e861338d.png",
"static/media/pit-sz.png": "/static/media/pit-sz.a7ff6986.png",
"static/media/port-sz.png": "/static/media/port-sz.551eb498.png",
"static/media/port_mackerel.png": "/static/media/port_mackerel.d73c53e5.png",
"static/media/pumptrack-sz.png": "/static/media/pumptrack-sz.096736b8.png",
"static/media/ranked.png": "/static/media/ranked.415f6ad8.png",
"static/media/reef-sz.png": "/static/media/reef-sz.1e2cecf1.png",
"static/media/regular.png": "/static/media/regular.4848edcb.png",
"static/media/rig.png": "/static/media/rig.87b5e71c.png",
"static/media/rm.png": "/static/media/rm.ee623ae2.png",
"static/media/shellendorf_institute.png": "/static/media/shellendorf_institute.d6669767.png",
"static/media/shipyard-sz.png": "/static/media/shipyard-sz.9b629225.png",
"static/media/skatepark-sz.png": "/static/media/skatepark-sz.15bfa2fd.png",
"static/media/skipper_pavilion.png": "/static/media/skipper_pavilion.1b3dbb2a.png",
"static/media/snapper_canal.png": "/static/media/snapper_canal.870cef8e.png",
"static/media/starfish_mainstage.png": "/static/media/starfish_mainstage.10fbda60.png",
"static/media/sturgeon_shipyard.png": "/static/media/sturgeon_shipyard.828ad6dd.png",
"static/media/sz.png": "/static/media/sz.563a7566.png",
"static/media/tc.png": "/static/media/tc.bd2d39a4.png",
"static/media/the_reef.png": "/static/media/the_reef.5b7355e7.png",
"static/media/towers-sz.png": "/static/media/towers-sz.4c6a6ff5.png",
"static/media/underpass.png": "/static/media/underpass.c55c527a.png",
"static/media/wahoo_world.png": "/static/media/wahoo_world.27b4f7eb.png",
"static/media/warehouse-sz.png": "/static/media/warehouse-sz.d6228a2d.png",
"static/media/world-sz.png": "/static/media/world-sz.eacd5d68.png"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -1 +0,0 @@
<!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><link href="/static/css/3.42fb0cfa.chunk.css" rel="stylesheet"><link href="/static/css/main.833d239f.chunk.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(c){function e(e){for(var r,t,n=e[0],o=e[1],u=e[2],i=0,a=[];i<n.length;i++)t=n[i],l[t]&&a.push(l[t][0]),l[t]=0;for(r in o)Object.prototype.hasOwnProperty.call(o,r)&&(c[r]=o[r]);for(d&&d(e);a.length;)a.shift()();return p.push.apply(p,u||[]),f()}function f(){for(var e,r=0;r<p.length;r++){for(var t=p[r],n=!0,o=1;o<t.length;o++){var u=t[o];0!==l[u]&&(n=!1)}n&&(p.splice(r--,1),e=s(s.s=t[0]))}return e}var t={},l={1:0},p=[];function s(e){if(t[e])return t[e].exports;var r=t[e]={i:e,l:!1,exports:{}};return c[e].call(r.exports,r,r.exports,s),r.l=!0,r.exports}s.e=function(u){var e=[],t=l[u];if(0!==t)if(t)e.push(t[2]);else{var r=new Promise(function(e,r){t=l[u]=[e,r]});e.push(t[2]=r);var n,i=document.createElement("script");i.charset="utf-8",i.timeout=120,s.nc&&i.setAttribute("nonce",s.nc),i.src=s.p+"static/js/"+({}[u]||u)+"."+{2:"457cf87f",4:"d07136ce",5:"7c7119b7",6:"7a91e4e8"}[u]+".chunk.js",n=function(e){i.onerror=i.onload=null,clearTimeout(a);var r=l[u];if(0!==r){if(r){var t=e&&("load"===e.type?"missing":e.type),n=e&&e.target&&e.target.src,o=new Error("Loading chunk "+u+" failed.\n("+t+": "+n+")");o.type=t,o.request=n,r[1](o)}l[u]=void 0}};var a=setTimeout(function(){n({type:"timeout",target:i})},12e4);i.onerror=i.onload=n,document.head.appendChild(i)}return Promise.all(e)},s.m=c,s.c=t,s.d=function(e,r,t){s.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},s.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.t=function(r,e){if(1&e&&(r=s(r)),8&e)return r;if(4&e&&"object"==typeof r&&r&&r.__esModule)return r;var t=Object.create(null);if(s.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:r}),2&e&&"string"!=typeof r)for(var n in r)s.d(t,n,function(e){return r[e]}.bind(null,n));return t},s.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return s.d(r,"a",r),r},s.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},s.p="/",s.oe=function(e){throw console.error(e),e};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 d=n;f()}([])</script><script src="/static/js/3.fe1b3956.chunk.js"></script><script src="/static/js/main.f12a46bc.chunk.js"></script></body></html>

View File

@ -1,15 +0,0 @@
{
"short_name": "React App",
"name": "Create React App Sample",
"icons": [
{
"src": "favicon.ico",
"sizes": "64x64 32x32 24x24 16x16",
"type": "image/x-icon"
}
],
"start_url": ".",
"display": "standalone",
"theme_color": "#000000",
"background_color": "#ffffff"
}

View File

@ -1,282 +0,0 @@
self.__precacheManifest = (self.__precacheManifest || []).concat([
{
"revision": "5384d608dfabda8eb088cbc5c928fbf3",
"url": "/index.html"
},
{
"revision": "730f8adf81a32cd63624",
"url": "/static/css/3.42fb0cfa.chunk.css"
},
{
"revision": "07334a415e335c6835ec",
"url": "/static/css/main.833d239f.chunk.css"
},
{
"revision": "ee02aac889b576990664",
"url": "/static/js/2.457cf87f.chunk.js"
},
{
"revision": "730f8adf81a32cd63624",
"url": "/static/js/3.fe1b3956.chunk.js"
},
{
"revision": "65f51cc869c509307c18",
"url": "/static/js/4.d07136ce.chunk.js"
},
{
"revision": "a7ade0848967fb6a8127",
"url": "/static/js/5.7c7119b7.chunk.js"
},
{
"revision": "74c8cfe49323dddcdc00",
"url": "/static/js/6.7a91e4e8.chunk.js"
},
{
"revision": "07334a415e335c6835ec",
"url": "/static/js/main.f12a46bc.chunk.js"
},
{
"revision": "5f87f53933beee644bc3",
"url": "/static/js/runtime~main.92405270.js"
},
{
"revision": "91729bf3b2dafe1d4d2cc811f8395a71",
"url": "/static/media/academy-sz.91729bf3.png"
},
{
"revision": "07d5d0f61430f1817edfe2dbb733da66",
"url": "/static/media/ancho-v_games.07d5d0f6.png"
},
{
"revision": "f92941916609b9106d3d6938f2c77efa",
"url": "/static/media/arena-sz.f9294191.png"
},
{
"revision": "26cf082351f37127260252c125762568",
"url": "/static/media/arowana_mall.26cf0823.png"
},
{
"revision": "a90313b117226d46d73d170371878e4a",
"url": "/static/media/blackbelly_skatepark.a90313b1.png"
},
{
"revision": "fba720089b3644e959ae4d7d7f87e328",
"url": "/static/media/bridge.fba72008.png"
},
{
"revision": "8eb5bd84d57c16fe302c5cbf5df66cc6",
"url": "/static/media/camp-sz.8eb5bd84.png"
},
{
"revision": "c698e7024cbc51d209ca714ddf966b78",
"url": "/static/media/camp_triggerfish.c698e702.png"
},
{
"revision": "4a2190ce5e3f34047eee7036fbefa11c",
"url": "/static/media/canal-sz.4a2190ce.png"
},
{
"revision": "c5459318010bbec7ac0f9b4ed0625967",
"url": "/static/media/depot.c5459318.png"
},
{
"revision": "c3b1ea61c93a4032888612ab4101a9e0",
"url": "/static/media/dome-sz.c3b1ea61.png"
},
{
"revision": "6fb26ef7744cf91ab66a169223a2998b",
"url": "/static/media/fitness-sz.6fb26ef7.png"
},
{
"revision": "55625ff4319379e9be99abb5e99e0ff8",
"url": "/static/media/games-sz.55625ff4.png"
},
{
"revision": "567a4ee9b0c771d28f94896429a2a92d",
"url": "/static/media/goby_arena.567a4ee9.png"
},
{
"revision": "7e33477e6270d5436d0e31069ce6ba75",
"url": "/static/media/heights.7e33477e.png"
},
{
"revision": "93386fbb05a93f7974ee1932892444fc",
"url": "/static/media/hotel-sz.93386fbb.png"
},
{
"revision": "fac19229b892def33b3a7623e3395626",
"url": "/static/media/humpback_pump_track.fac19229.png"
},
{
"revision": "fdae0280f3033b34230bee6376b178e1",
"url": "/static/media/inkblot_art_academy.fdae0280.png"
},
{
"revision": "dfd926386a73fa3940490f5208d0e0bc",
"url": "/static/media/institute-sz.dfd92638.png"
},
{
"revision": "6610593ec2d587f95a48f82f3f31ab2c",
"url": "/static/media/kelp_dome.6610593e.png"
},
{
"revision": "34fca5d92b48e8f6b4c1a2501cea5ce1",
"url": "/static/media/koshienBanner.34fca5d9.png"
},
{
"revision": "7aa42d817869c09c604225434d0c09c1",
"url": "/static/media/league.7aa42d81.png"
},
{
"revision": "0e9369da56634efad39d159a7275d993",
"url": "/static/media/mahi.0e9369da.png"
},
{
"revision": "f95da3c9b401114468d7fc775a2be6a0",
"url": "/static/media/mainstage-sz.f95da3c9.png"
},
{
"revision": "8a4f661e7ea2c4b7d40398ad02639f07",
"url": "/static/media/makomart.8a4f661e.png"
},
{
"revision": "9e4d36b5b39afc34b0a423369f5d9baa",
"url": "/static/media/mall-sz.9e4d36b5.png"
},
{
"revision": "902948109453e7411652feafcb7235d0",
"url": "/static/media/manta-sz.90294810.png"
},
{
"revision": "38baf9f610b7ad757d64a65e4e7459ba",
"url": "/static/media/manta_maria.38baf9f6.png"
},
{
"revision": "e7a5f53696e8287088bf1727c8c98a13",
"url": "/static/media/mart-sz.e7a5f536.png"
},
{
"revision": "4f71cd0b781714eab42fdffc7eaeba8d",
"url": "/static/media/moray_towers.4f71cd0b.png"
},
{
"revision": "176394c281c9142a8ac75444e740dd00",
"url": "/static/media/museum.176394c2.png"
},
{
"revision": "a66323de7045d3874bac6d701d6b2e31",
"url": "/static/media/musselforge_fitness.a66323de.png"
},
{
"revision": "0c283c87ddd2cc2841ca1dc4eee60942",
"url": "/static/media/new_albacore_hotel.0c283c87.png"
},
{
"revision": "1009ee1d5bb2b25d5bc225dff2c0efd3",
"url": "/static/media/pavilion-sz.1009ee1d.png"
},
{
"revision": "48621b6fe27e7cface671a7302437888",
"url": "/static/media/piranha_pit.48621b6f.png"
},
{
"revision": "e861338d18e17d1ab48b56490cec9131",
"url": "/static/media/pit-rm.e861338d.png"
},
{
"revision": "a7ff6986686eb8b5271d07e747d74535",
"url": "/static/media/pit-sz.a7ff6986.png"
},
{
"revision": "551eb49878e853fef0ef360d2475979e",
"url": "/static/media/port-sz.551eb498.png"
},
{
"revision": "d73c53e5b66491368591b9beb0933daa",
"url": "/static/media/port_mackerel.d73c53e5.png"
},
{
"revision": "096736b81b0e5c741f51cae281f3d48d",
"url": "/static/media/pumptrack-sz.096736b8.png"
},
{
"revision": "415f6ad807ea2b730558b437f1929043",
"url": "/static/media/ranked.415f6ad8.png"
},
{
"revision": "1e2cecf181f2e5510060e9b1a069bec9",
"url": "/static/media/reef-sz.1e2cecf1.png"
},
{
"revision": "4848edcb5eba727112fc12301e9bf5cd",
"url": "/static/media/regular.4848edcb.png"
},
{
"revision": "87b5e71c29a70bc15a501002b4192517",
"url": "/static/media/rig.87b5e71c.png"
},
{
"revision": "ee623ae225822d4a257120c58516eb86",
"url": "/static/media/rm.ee623ae2.png"
},
{
"revision": "d6669767d9544a4826ded8279571e3bc",
"url": "/static/media/shellendorf_institute.d6669767.png"
},
{
"revision": "9b6292256b99c765a9c96a12a0a745c9",
"url": "/static/media/shipyard-sz.9b629225.png"
},
{
"revision": "15bfa2fdd1d4539a6bce231a5e4cdc17",
"url": "/static/media/skatepark-sz.15bfa2fd.png"
},
{
"revision": "1b3dbb2a194816f6fd1c3c52237da7db",
"url": "/static/media/skipper_pavilion.1b3dbb2a.png"
},
{
"revision": "870cef8e7a4d93c7f4ff5dce02e62c45",
"url": "/static/media/snapper_canal.870cef8e.png"
},
{
"revision": "10fbda601f96dc32dc9204e13b33a12a",
"url": "/static/media/starfish_mainstage.10fbda60.png"
},
{
"revision": "828ad6dd7a731cbda68ff1f7b8af15ff",
"url": "/static/media/sturgeon_shipyard.828ad6dd.png"
},
{
"revision": "563a75668da994dc8c3a42e75daf038c",
"url": "/static/media/sz.563a7566.png"
},
{
"revision": "bd2d39a43fc0bcfae9955e647842571d",
"url": "/static/media/tc.bd2d39a4.png"
},
{
"revision": "5b7355e761ab75bb5d0f7eed36c0e2e3",
"url": "/static/media/the_reef.5b7355e7.png"
},
{
"revision": "4c6a6ff592ef336e054c19e5efafc8d6",
"url": "/static/media/towers-sz.4c6a6ff5.png"
},
{
"revision": "c55c527ab9b1f079f606848b880b5f4c",
"url": "/static/media/underpass.c55c527a.png"
},
{
"revision": "27b4f7ebda451ca449c81ad69b4d0292",
"url": "/static/media/wahoo_world.27b4f7eb.png"
},
{
"revision": "d6228a2d3e64f8c0c533ae2ff371149c",
"url": "/static/media/warehouse-sz.d6228a2d.png"
},
{
"revision": "eacd5d68a3902a03ff11dd0abb87fa6f",
"url": "/static/media/world-sz.eacd5d68.png"
}
]);

View File

@ -1,39 +0,0 @@
/**
* Welcome to your Workbox-powered service worker!
*
* You'll need to register this file in your web app and you should
* disable HTTP caching for this file too.
* See https://goo.gl/nhQhGp
*
* The rest of the code is auto-generated. Please don't update this file
* directly; instead, make changes to your Workbox build configuration
* and re-run your build process.
* See https://goo.gl/2aRDsh
*/
importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.0/workbox-sw.js");
importScripts(
"/precache-manifest.7d193744ceede71fe7e79cf75fd2a409.js"
);
self.addEventListener('message', (event) => {
if (event.data && event.data.type === 'SKIP_WAITING') {
self.skipWaiting();
}
});
workbox.core.clientsClaim();
/**
* The workboxSW.precacheAndRoute() method efficiently caches and responds to
* requests for URLs in the manifest.
* See https://goo.gl/S9QRab
*/
self.__precacheManifest = [].concat(self.__precacheManifest || []);
workbox.precaching.precacheAndRoute(self.__precacheManifest, {});
workbox.routing.registerNavigationRoute(workbox.precaching.getCacheKeyForURL("/index.html"), {
blacklist: [/^\/_/,/\/[^\/]+\.[^\/]+$/],
});

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,2 +0,0 @@
body,html{height:100%}body{margin:0;background:#60dd8e;background:-webkit-gradient(linear,left top,left bottom,from(#60dd8e),color-stop(25%,#1b8d8d),to(#141163));background:-webkit-linear-gradient(top,#60dd8e,#1b8d8d 25%,#141163);background:linear-gradient(180deg,#60dd8e,#1b8d8d 25%,#141163);background-repeat:no-repeat;background-attachment:fixed}
/*# sourceMappingURL=main.833d239f.chunk.css.map */

View File

@ -1 +0,0 @@
{"version":3,"sources":["index.css"],"names":[],"mappings":"AAIA,UAHE,WAUF,CAPA,KAEE,QAAS,CACT,kBAA2B,CAC3B,0GAAyG,CAAzG,mEAAyG,CAAzG,8DAAyG,CACzG,2BAA4B,CAC5B,2BACF","file":"main.833d239f.chunk.css","sourcesContent":["html {\n height: 100%;\n}\n\nbody {\n height: 100%;\n margin: 0;\n background: rgb(96,221,142);\n background: linear-gradient(180deg, rgba(96,221,142,1) 0%, rgba(27,141,141,1) 25%, rgba(20,17,99,1) 100%);\n background-repeat: no-repeat;\n background-attachment: fixed;\n}\n"]}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,2 +0,0 @@
!function(e){function r(r){for(var n,i,a=r[0],c=r[1],f=r[2],p=0,s=[];p<a.length;p++)i=a[p],o[i]&&s.push(o[i][0]),o[i]=0;for(n in c)Object.prototype.hasOwnProperty.call(c,n)&&(e[n]=c[n]);for(l&&l(r);s.length;)s.shift()();return u.push.apply(u,f||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,a=1;a<t.length;a++){var c=t[a];0!==o[c]&&(n=!1)}n&&(u.splice(r--,1),e=i(i.s=t[0]))}return e}var n={},o={1:0},u=[];function i(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,i),t.l=!0,t.exports}i.e=function(e){var r=[],t=o[e];if(0!==t)if(t)r.push(t[2]);else{var n=new Promise(function(r,n){t=o[e]=[r,n]});r.push(t[2]=n);var u,a=document.createElement("script");a.charset="utf-8",a.timeout=120,i.nc&&a.setAttribute("nonce",i.nc),a.src=function(e){return i.p+"static/js/"+({}[e]||e)+"."+{2:"457cf87f",4:"d07136ce",5:"7c7119b7",6:"7a91e4e8"}[e]+".chunk.js"}(e),u=function(r){a.onerror=a.onload=null,clearTimeout(c);var t=o[e];if(0!==t){if(t){var n=r&&("load"===r.type?"missing":r.type),u=r&&r.target&&r.target.src,i=new Error("Loading chunk "+e+" failed.\n("+n+": "+u+")");i.type=n,i.request=u,t[1](i)}o[e]=void 0}};var c=setTimeout(function(){u({type:"timeout",target:a})},12e4);a.onerror=a.onload=u,document.head.appendChild(a)}return Promise.all(r)},i.m=e,i.c=n,i.d=function(e,r,t){i.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},i.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,r){if(1&r&&(e=i(e)),8&r)return e;if(4&r&&"object"===typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(i.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)i.d(t,n,function(r){return e[r]}.bind(null,n));return t},i.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(r,"a",r),r},i.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},i.p="/",i.oe=function(e){throw console.error(e),e};var a=window.webpackJsonp=window.webpackJsonp||[],c=a.push.bind(a);a.push=r,a=a.slice();for(var f=0;f<a.length;f++)r(a[f]);var l=c;t()}([]);
//# sourceMappingURL=runtime~main.92405270.js.map

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 659 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 546 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 570 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 558 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 759 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 544 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 487 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 654 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 642 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 634 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 629 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 648 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 640 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 547 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 558 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 513 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 489 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 689 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 631 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 720 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 667 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 707 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 590 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 851 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 526 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 561 KiB

159
index.js
View File

@ -1,72 +1,87 @@
require('dotenv').config()
const { ApolloServer } = require('apollo-server-express')
const mongoose = require('mongoose')
const express = require('express')
const session = require('express-session')
const cors = require('cors')
const passport = require('passport')
const DiscordStrategy = require('passport-discord').Strategy
const User = require('./models/user')
const path = require('path')
const schema = require('./schema')
require("dotenv").config()
const { ApolloServer } = require("apollo-server-express")
const mongoose = require("mongoose")
const express = require("express")
const session = require("express-session")
const cors = require("cors")
const passport = require("passport")
const DiscordStrategy = require("passport-discord").Strategy
const User = require("./models/user")
const path = require("path")
const schema = require("./schema")
mongoose.set('useFindAndModify', false)
mongoose.set('useCreateIndex', true)
mongoose.set("useFindAndModify", false)
mongoose.set("useCreateIndex", true)
const callbackURL = process.env.NODE_ENV === 'development' ?
'http://localhost:3001/auth/discord/callback' :
'https://www.sendou.ink/auth/discord/callback'
const callbackURL =
process.env.NODE_ENV === "development"
? "http://localhost:3001/auth/discord/callback"
: "https://www.sendou.ink/auth/discord/callback"
passport.use(new DiscordStrategy({
clientID: process.env.CLIENT_ID,
clientSecret: process.env.CLIENT_SECRET,
callbackURL,
scope: ['identify', 'connections']
},
function(accessToken, refreshToken, profile, cb) {
const userToSave = {
username: profile.username,
discriminator: profile.discriminator,
avatar: profile.avatar,
discord_id: profile.id
}
for (var i = 0; i < profile.connections.length; i++) {
const connection = profile.connections[i]
if (connection.visibility === 1 && connection.verified) {
if (connection.type === 'twitch') {
userToSave.twitch_name = connection.name.toLowerCase()
} else if (connection.type === 'twitter') {
userToSave.twitter_name = connection.name.toLowerCase()
passport.use(
new DiscordStrategy(
{
clientID: process.env.CLIENT_ID,
clientSecret: process.env.CLIENT_SECRET,
callbackURL,
scope: ["identify", "connections"]
},
function(accessToken, refreshToken, profile, cb) {
const userToSave = {
username: profile.username,
discriminator: profile.discriminator,
avatar: profile.avatar,
discord_id: profile.id
}
for (var i = 0; i < profile.connections.length; i++) {
const connection = profile.connections[i]
if (connection.visibility === 1 && connection.verified) {
if (connection.type === "twitch") {
userToSave.twitch_name = connection.name.toLowerCase()
} else if (connection.type === "twitter") {
userToSave.twitter_name = connection.name.toLowerCase()
}
}
}
}
}
User.updateOne({discord_id: userToSave.discord_id}, userToSave, {upsert: true}, function(err, user) {
return cb(err, userToSave)
})
}))
User.updateOne(
{ discord_id: userToSave.discord_id },
userToSave,
{ upsert: true },
function(err, user) {
return cb(err, userToSave)
}
)
}
)
)
passport.serializeUser(function(user, done) {
done(null, user.discord_id)
})
passport.deserializeUser(function(discord_id, done) {
User.findOne({discord_id}, function(err, user) {
User.findOne({ discord_id }, function(err, user) {
done(err, user)
})
})
console.log('connecting to MongoDB')
console.log("connecting to MongoDB")
mongoose.connect(process.env.MONGODB_URI, { useNewUrlParser: true, dbName: "production" })
.then(() => {
console.log('connected to MongoDB')
mongoose
.connect(process.env.MONGODB_URI, {
useNewUrlParser: true,
dbName: "production",
useUnifiedTopology: true
})
.then(() => {
console.log("connected to MongoDB")
})
.catch(error => {
console.log("error connection to MongoDB:", error.message)
})
.catch((error) => {
console.log('error connection to MongoDB:', error.message)
})
const server = new ApolloServer({
const server = new ApolloServer({
schema,
context: ({ req }) => {
return { user: req.user }
@ -81,8 +96,12 @@ app.use(cors())
function requireHTTPS(req, res, next) {
// The 'x-forwarded-proto' check is for Heroku
if (!req.secure && req.get('x-forwarded-proto') !== 'https' && process.env.NODE_ENV !== "development") {
return res.redirect('https://' + req.get('host') + req.url)
if (
!req.secure &&
req.get("x-forwarded-proto") !== "https" &&
process.env.NODE_ENV !== "development"
) {
return res.redirect("https://" + req.get("host") + req.url)
}
next()
}
@ -98,35 +117,39 @@ let sess = {
cookie: {}
}
if (process.env.NODE_ENV === 'production') {
app.set('trust proxy', 1)
sess.cookie.secure = true
if (process.env.NODE_ENV === "production") {
app.set("trust proxy", 1)
sess.cookie.secure = true
}
app.use(session(sess))
app.use(express.static('build'))
app.use(express.static("build"))
app.use(passport.initialize())
app.use(passport.session())
server.applyMiddleware({ app })
app.get('/auth/discord', passport.authenticate('discord'))
app.get("/auth/discord", passport.authenticate("discord"))
app.get('/auth/discord/callback', passport.authenticate('discord', {
failureRedirect: '/404'
}), function(req, res) {
res.redirect('/u/' + req.user.discord_id) // Successful auth
})
app.get(
"/auth/discord/callback",
passport.authenticate("discord", {
failureRedirect: "/404"
}),
function(req, res) {
res.redirect("/u/" + req.user.discord_id) // Successful auth
}
)
app.get('/logout', function(req, res){
app.get("/logout", function(req, res) {
req.logout()
res.redirect('/')
res.redirect("/")
})
app.get('*', (req, res) => {
res.sendFile(path.resolve(__dirname, 'build', 'index.html'))
app.get("*", (req, res) => {
res.sendFile(path.resolve(__dirname, "build", "index.html"))
})
const PORT = process.env.PORT || 3001

View File

@ -1,20 +1,27 @@
const mongoose = require('mongoose')
const mongoose = require("mongoose")
const buildSchema = new mongoose.Schema({
discord_id: {type: String, required: true},
weapon: {type: String, required: true},
title: {type: String},
headgear: {type: [String], required: true},
clothing: {type: [String], required: true},
shoes: {type: [String], required: true},
top: {type: Boolean}
}, { timestamps: true })
const buildSchema = new mongoose.Schema(
{
discord_id: { type: String, required: true },
weapon: { type: String, required: true },
title: { type: String, required: false },
description: { type: String, required: false },
headgear: { type: [String], required: true },
headgearItem: { type: String, required: false },
clothing: { type: [String], required: true },
clothingItem: { type: String, required: false },
shoes: { type: [String], required: true },
shoesItem: { type: String, required: false },
top: { type: Boolean }
},
{ timestamps: true }
)
buildSchema.virtual('discord_user', {
ref: 'User',
localField: 'discord_id',
foreignField: 'discord_id',
buildSchema.virtual("discord_user", {
ref: "User",
localField: "discord_id",
foreignField: "discord_id",
justOne: true
})
module.exports = mongoose.model('Build', buildSchema)
module.exports = mongoose.model("Build", buildSchema)

View File

@ -1,78 +1,106 @@
const mongoose = require('mongoose')
const mongoose = require("mongoose")
const playerSchema = new mongoose.Schema({
name: {type: String, required: true },
name: { type: String, required: true },
unique_id: { type: String, unique: true, required: true },
alias: String,
twitter: String,
weapons: [String],
topTotal: {
type: [{
type: [
{
type: mongoose.Schema.Types.ObjectId,
ref: 'Placement'
}
], validate: [arrayLimit, '{PATH} exceeds the limit of 4']},
ref: "Placement"
}
],
validate: [arrayLimit, "{PATH} exceeds the limit of 4"]
},
topTotalScore: Number,
topShooter: {
type: [{
type: [
{
type: mongoose.Schema.Types.ObjectId,
ref: 'Placement'
}
], validate: [arrayLimit, '{PATH} exceeds the limit of 4']},
ref: "Placement"
}
],
validate: [arrayLimit, "{PATH} exceeds the limit of 4"]
},
topShooterScore: Number,
topBlaster: {
type: [{
type: [
{
type: mongoose.Schema.Types.ObjectId,
ref: 'Placement'
}
], validate: [arrayLimit, '{PATH} exceeds the limit of 4']},
ref: "Placement"
}
],
validate: [arrayLimit, "{PATH} exceeds the limit of 4"]
},
topBlasterScore: Number,
topRoller: {
type: [{
type: [
{
type: mongoose.Schema.Types.ObjectId,
ref: 'Placement'
}
], validate: [arrayLimit, '{PATH} exceeds the limit of 4']},
ref: "Placement"
}
],
validate: [arrayLimit, "{PATH} exceeds the limit of 4"]
},
topRollerScore: Number,
topCharger: {
type: [{
type: [
{
type: mongoose.Schema.Types.ObjectId,
ref: 'Placement'
}
], validate: [arrayLimit, '{PATH} exceeds the limit of 4']},
ref: "Placement"
}
],
validate: [arrayLimit, "{PATH} exceeds the limit of 4"]
},
topChargerScore: Number,
topSlosher: {
type: [{
type: [
{
type: mongoose.Schema.Types.ObjectId,
ref: 'Placement'
}
], validate: [arrayLimit, '{PATH} exceeds the limit of 4']},
ref: "Placement"
}
],
validate: [arrayLimit, "{PATH} exceeds the limit of 4"]
},
topSlosherScore: Number,
topSplatling: {
type: [{
type: [
{
type: mongoose.Schema.Types.ObjectId,
ref: 'Placement'
}
], validate: [arrayLimit, '{PATH} exceeds the limit of 4']},
ref: "Placement"
}
],
validate: [arrayLimit, "{PATH} exceeds the limit of 4"]
},
topSplatlingScore: Number,
topDualies: {
type: [{
type: [
{
type: mongoose.Schema.Types.ObjectId,
ref: 'Placement'
}
], validate: [arrayLimit, '{PATH} exceeds the limit of 4']},
ref: "Placement"
}
],
validate: [arrayLimit, "{PATH} exceeds the limit of 4"]
},
topDualiesScore: Number,
topBrella: {
type: [{
type: [
{
type: mongoose.Schema.Types.ObjectId,
ref: 'Placement'
}
], validate: [arrayLimit, '{PATH} exceeds the limit of 4']},
topBrellaScore: Number
ref: "Placement"
}
],
validate: [arrayLimit, "{PATH} exceeds the limit of 4"]
},
topBrellaScore: Number,
weaponsCount: Number
})
function arrayLimit(val) {
return val.length <= 4
}
module.exports = mongoose.model('Player', playerSchema)
module.exports = mongoose.model("Player", playerSchema)

98
models/round.js Normal file
View File

@ -0,0 +1,98 @@
const mongoose = require("mongoose")
const roundSchema = new mongoose.Schema({
tournament_id: {
type: mongoose.Schema.Types.ObjectId,
ref: "Tournament",
required: true
},
stage: { type: String, required: true },
mode: { type: String, required: true },
game_number: { type: Number, required: true },
round_number: { type: Number, required: true },
round_name: { type: String, required: true },
winning_team_name: { type: String, required: true },
winning_team_players: {
type: [String],
required: true,
validate: [player_limit, "{PATH} must be 4"]
},
winning_team_weapons: {
type: [String],
required: true,
validate: [player_limit, "{PATH} must be 4"]
},
winning_team_unique_ids: {
type: [String],
required: false,
validate: [player_limit, "{PATH} must be 4"],
default: [null, null, null, null]
},
winning_team_main_abilities: {
type: [[String]],
required: false,
validate: [player_limit, "{PATH} must be 4"],
default: [
[null, null, null],
[null, null, null],
[null, null, null],
[null, null, null]
]
},
winning_team_sub_abilities: {
type: [[String]],
required: false,
validate: [player_limit, "{PATH} must be 4"],
default: [
[null, null, null, null, null, null, null, null, null],
[null, null, null, null, null, null, null, null, null],
[null, null, null, null, null, null, null, null, null],
[null, null, null, null, null, null, null, null, null]
]
},
losing_team_name: { type: String, required: true },
losing_team_players: {
type: [String],
required: true,
validate: [player_limit, "{PATH} must be 4"]
},
losing_team_weapons: {
type: [String],
required: true,
validate: [player_limit, "{PATH} must be 4"]
},
losing_team_unique_ids: {
type: [String],
required: false,
validate: [player_limit, "{PATH} must be 4"],
default: [null, null, null, null]
},
losing_team_main_abilities: {
type: [[String]],
required: false,
validate: [player_limit, "{PATH} must be 4"],
default: [
[null, null, null],
[null, null, null],
[null, null, null],
[null, null, null]
]
},
losing_team_sub_abilities: {
type: [[String]],
required: false,
validate: [player_limit, "{PATH} must be 4"],
default: [
[null, null, null, null, null, null, null, null, null],
[null, null, null, null, null, null, null, null, null],
[null, null, null, null, null, null, null, null, null],
[null, null, null, null, null, null, null, null, null]
]
}
})
function player_limit(val) {
return val.length === 4
}
module.exports = mongoose.model("Round", roundSchema)

35
models/tournament.js Normal file
View File

@ -0,0 +1,35 @@
const mongoose = require("mongoose")
const tournamentSchema = new mongoose.Schema({
name: { type: String, required: true },
jpn: { type: Boolean, default: false },
google_sheet_url: { type: String },
bracket: { type: String },
date: { type: Date, required: true },
popular_weapons: {
type: [String],
validate: [popular_weapon_limit, "{PATH} must be 5"]
},
winning_team_name: { type: String, required: true },
winning_team_players: {
type: [String],
required: true,
validate: [player_limit, "{PATH} must be 4"]
},
winning_team_unique_ids: {
type: [String],
required: false,
validate: [player_limit, "{PATH} must be 4"],
default: [null, null, null, null]
}
})
function popular_weapon_limit(val) {
return val.length === 5
}
function player_limit(val) {
return val.length === 4
}
module.exports = mongoose.model("Tournament", tournamentSchema)

336
package-lock.json generated
View File

@ -116,9 +116,9 @@
}
},
"@types/express": {
"version": "4.17.1",
"resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.1.tgz",
"integrity": "sha512-VfH/XCP0QbQk5B5puLqTLEeFgR8lfCJHZJKkInZ9mkYd+u8byX0kztXEQxEk4wZXJs8HI+7km2ALXjn4YKcX9w==",
"version": "4.17.2",
"resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.2.tgz",
"integrity": "sha512-5mHFNyavtLoJmnusB8OKJ5bshSzw+qkMIBAobLrIM48HJvunFva9mOa6aBwh64lBFyNwBbs0xiEFuj4eU/NjCA==",
"requires": {
"@types/body-parser": "*",
"@types/express-serve-static-core": "*",
@ -126,9 +126,9 @@
}
},
"@types/express-serve-static-core": {
"version": "4.16.9",
"resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.16.9.tgz",
"integrity": "sha512-GqpaVWR0DM8FnRUJYKlWgyARoBUAVfRIeVDZQKOttLFp5SmhhF9YFIYeTPwMd/AXfxlP7xVO2dj1fGu0Q+krKQ==",
"version": "4.16.11",
"resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.16.11.tgz",
"integrity": "sha512-K8d2M5t3tBQimkyaYTXxtHYyoJPUEhy2/omVRnTAKw5FEdT+Ft6lTaTOpoJdHeG+mIwQXXtqiTcYZ6IR8LTzjQ==",
"requires": {
"@types/node": "*",
"@types/range-parser": "*"
@ -164,9 +164,9 @@
"integrity": "sha1-/1QEYtL7TQqIRBzq8n0oewHD2Hg="
},
"@types/koa": {
"version": "2.0.50",
"resolved": "https://registry.npmjs.org/@types/koa/-/koa-2.0.50.tgz",
"integrity": "sha512-TcgOD2lh0EISSadAk1DOBYw7kNoY9XdeB3vEMOKiDDaTMYm+V54nyPsU7Ulb/htb5OBIR79RgTeCWntCcophLw==",
"version": "2.0.52",
"resolved": "https://registry.npmjs.org/@types/koa/-/koa-2.0.52.tgz",
"integrity": "sha512-cp/GTOhOYwomlSKqEoG0kaVEVJEzP4ojYmfa7EKaGkmkkRwJ4B/1VBLbQZ49Z+WJNvzXejQB/9GIKqMo9XLgFQ==",
"requires": {
"@types/accepts": "*",
"@types/cookies": "*",
@ -177,9 +177,9 @@
}
},
"@types/koa-compose": {
"version": "3.2.4",
"resolved": "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.4.tgz",
"integrity": "sha512-ioou0rxkuWL+yBQYsHUQAzRTfVxAg8Y2VfMftU+Y3RA03/MzuFL0x/M2sXXj3PkfnENbHsjeHR1aMdezLYpTeA==",
"version": "3.2.5",
"resolved": "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.5.tgz",
"integrity": "sha512-B8nG/OoE1ORZqCkBVsup/AKcvjdgoHnfi4pZMn5UwAPCbhk/96xyv284eBYW8JlQbQ7zDmnpFr68I/40mFoIBQ==",
"requires": {
"@types/koa": "*"
}
@ -195,9 +195,9 @@
"integrity": "sha512-FwI9gX75FgVBJ7ywgnq/P7tw+/o1GUbtP0KzbtusLigAOgIgNISRK0ZPl4qertvXSIE8YbsVJueQ90cDt9YYyw=="
},
"@types/node": {
"version": "12.7.11",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.11.tgz",
"integrity": "sha512-Otxmr2rrZLKRYIybtdG/sgeO+tHY20GxeDjcGmUnmmlCWyEnv2a2x1ZXBo3BTec4OiTXMQCiazB8NMBf0iRlFw=="
"version": "12.12.7",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.7.tgz",
"integrity": "sha512-E6Zn0rffhgd130zbCbAr/JdXfXkoOUFAKNs/rF8qnafSJ8KYaA/j3oz7dcwal+lYjLA7xvdd5J4wdYpCTlP8+w=="
},
"@types/range-parser": {
"version": "1.2.3",
@ -290,12 +290,12 @@
}
},
"apollo-cache-control": {
"version": "0.8.4",
"resolved": "https://registry.npmjs.org/apollo-cache-control/-/apollo-cache-control-0.8.4.tgz",
"integrity": "sha512-IZ1d3AXZtkZhLYo0kWqTbZ6nqLFaeUvLdMESs+9orMadBZ7mvzcAfBwrhKyCWPGeAAZ/jKv8FtYHybpchHgFAg==",
"version": "0.8.5",
"resolved": "https://registry.npmjs.org/apollo-cache-control/-/apollo-cache-control-0.8.5.tgz",
"integrity": "sha512-2yQ1vKgJQ54SGkoQS/ZLZrDX3La6cluAYYdruFYJMJtL4zQrSdeOCy11CQliCMYEd6eKNyE70Rpln51QswW2Og==",
"requires": {
"apollo-server-env": "^2.4.3",
"graphql-extensions": "^0.10.3"
"graphql-extensions": "^0.10.4"
}
},
"apollo-datasource": {
@ -308,23 +308,23 @@
}
},
"apollo-engine-reporting": {
"version": "1.4.6",
"resolved": "https://registry.npmjs.org/apollo-engine-reporting/-/apollo-engine-reporting-1.4.6.tgz",
"integrity": "sha512-acfb7oFnru/8YQdY4x6+7WJbZfzdVETI8Cl+9ImgUrvUnE8P+f2SsGTKXTC1RuUvve4c56PAvaPgE+z8X1a1Mw==",
"version": "1.4.7",
"resolved": "https://registry.npmjs.org/apollo-engine-reporting/-/apollo-engine-reporting-1.4.7.tgz",
"integrity": "sha512-qsKDz9VkoctFhojM3Nj3nvRBO98t8TS2uTgtiIjUGs3Hln2poKMP6fIQ37Nm2Q2B3JJst76HQtpPwXmRJd1ZUg==",
"requires": {
"apollo-engine-reporting-protobuf": "^0.4.0",
"apollo-graphql": "^0.3.3",
"apollo-engine-reporting-protobuf": "^0.4.1",
"apollo-graphql": "^0.3.4",
"apollo-server-caching": "^0.5.0",
"apollo-server-env": "^2.4.3",
"apollo-server-types": "^0.2.4",
"apollo-server-types": "^0.2.5",
"async-retry": "^1.2.1",
"graphql-extensions": "^0.10.3"
"graphql-extensions": "^0.10.4"
}
},
"apollo-engine-reporting-protobuf": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/apollo-engine-reporting-protobuf/-/apollo-engine-reporting-protobuf-0.4.0.tgz",
"integrity": "sha512-cXHZSienkis8v4RhqB3YG3DkaksqLpcxApRLTpRMs7IXNozgV7CUPYGFyFBEra1ZFgUyHXx4G9MpelV+n2cCfA==",
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/apollo-engine-reporting-protobuf/-/apollo-engine-reporting-protobuf-0.4.1.tgz",
"integrity": "sha512-d7vFFZ2oUrvGaN0Hpet8joe2ZG0X0lIGilN+SwgVP38dJnOuadjsaYMyrD9JudGQJg0bJA5wVQfYzcCVy0slrw==",
"requires": {
"protobufjs": "^6.8.6"
}
@ -340,11 +340,11 @@
}
},
"apollo-graphql": {
"version": "0.3.3",
"resolved": "https://registry.npmjs.org/apollo-graphql/-/apollo-graphql-0.3.3.tgz",
"integrity": "sha512-t3CO/xIDVsCG2qOvx2MEbuu4b/6LzQjcBBwiVnxclmmFyAxYCIe7rpPlnLHSq7HyOMlCWDMozjoeWfdqYSaLqQ==",
"version": "0.3.4",
"resolved": "https://registry.npmjs.org/apollo-graphql/-/apollo-graphql-0.3.4.tgz",
"integrity": "sha512-w+Az1qxePH4oQ8jvbhQBl5iEVvqcqynmU++x/M7MM5xqN1C7m1kyIzpN17gybXlTJXY4Oxej2WNURC2/hwpfYw==",
"requires": {
"apollo-env": "0.5.1",
"apollo-env": "^0.5.1",
"lodash.sortby": "^4.7.0"
}
},
@ -360,12 +360,12 @@
}
},
"apollo-server": {
"version": "2.9.4",
"resolved": "https://registry.npmjs.org/apollo-server/-/apollo-server-2.9.4.tgz",
"integrity": "sha512-huAgQizkmzUkREixsSJHNM4ZnJ08plkwK70dm36mX9j+yYbc0h9J5b5o4E2Fb9U5PMR8kEVto1dz2rOJ0XPApA==",
"version": "2.9.7",
"resolved": "https://registry.npmjs.org/apollo-server/-/apollo-server-2.9.7.tgz",
"integrity": "sha512-maGGCsK4Ft5ucox5ZJf6oaKhgPvzHY3jXWbA1F/mn0/EYX8e1RVO3Qtj8aQQ0/vCKx8r4vYgj+ctqBVaN/nr4A==",
"requires": {
"apollo-server-core": "^2.9.4",
"apollo-server-express": "^2.9.4",
"apollo-server-core": "^2.9.7",
"apollo-server-express": "^2.9.7",
"express": "^4.0.0",
"graphql-subscriptions": "^1.0.0",
"graphql-tools": "^4.0.0"
@ -380,25 +380,25 @@
}
},
"apollo-server-core": {
"version": "2.9.4",
"resolved": "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-2.9.4.tgz",
"integrity": "sha512-6mzipnn9woJxgo/JQFWTlY13svS7HCr0ZsN035eRmKOsXzROfB9ugXcTuc6MP94ICM7TlB/DtJOP+bLX53mijw==",
"version": "2.9.7",
"resolved": "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-2.9.7.tgz",
"integrity": "sha512-EqKyROy+21sM93YHjGpy6wlnzK/vH0fnZh7RCf3uB69aQ3OjgdP4AQ5oWRQ62NDN+aoic7OLhChSDJeDonq/NQ==",
"requires": {
"@apollographql/apollo-tools": "^0.4.0",
"@apollographql/graphql-playground-html": "1.6.24",
"@types/graphql-upload": "^8.0.0",
"@types/ws": "^6.0.0",
"apollo-cache-control": "^0.8.4",
"apollo-cache-control": "^0.8.5",
"apollo-datasource": "^0.6.3",
"apollo-engine-reporting": "^1.4.6",
"apollo-engine-reporting": "^1.4.7",
"apollo-server-caching": "^0.5.0",
"apollo-server-env": "^2.4.3",
"apollo-server-errors": "^2.3.3",
"apollo-server-plugin-base": "^0.6.4",
"apollo-server-types": "^0.2.4",
"apollo-tracing": "^0.8.4",
"apollo-server-errors": "^2.3.4",
"apollo-server-plugin-base": "^0.6.5",
"apollo-server-types": "^0.2.5",
"apollo-tracing": "^0.8.5",
"fast-json-stable-stringify": "^2.0.0",
"graphql-extensions": "^0.10.3",
"graphql-extensions": "^0.10.4",
"graphql-tag": "^2.9.2",
"graphql-tools": "^4.0.0",
"graphql-upload": "^8.0.2",
@ -417,14 +417,14 @@
}
},
"apollo-server-errors": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/apollo-server-errors/-/apollo-server-errors-2.3.3.tgz",
"integrity": "sha512-MO4oJ129vuCcbqwr5ZwgxqGGiLz3hCyowz0bstUF7MR+vNGe4oe3DWajC9lv4CxrhcqUHQOeOPViOdIo1IxE3g=="
"version": "2.3.4",
"resolved": "https://registry.npmjs.org/apollo-server-errors/-/apollo-server-errors-2.3.4.tgz",
"integrity": "sha512-Y0PKQvkrb2Kd18d1NPlHdSqmlr8TgqJ7JQcNIfhNDgdb45CnqZlxL1abuIRhr8tiw8OhVOcFxz2KyglBi8TKdA=="
},
"apollo-server-express": {
"version": "2.9.4",
"resolved": "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-2.9.4.tgz",
"integrity": "sha512-diX9n81E0tIJ0Sy2bHvDGPM9QsFBsZ76Nx/dszinY00ViyWG0yIAYEYWeRbsoKTeNDWWTvlMrh/3Eu2oaCIEhQ==",
"version": "2.9.7",
"resolved": "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-2.9.7.tgz",
"integrity": "sha512-+DuJk1oq34Zx0bLYzgBgJH/eXS0JNxw2JycHQvV0+PAQ0Qi01oomJRA2r1S5isnfnSAnHb2E9jyBTptoHdw3MQ==",
"requires": {
"@apollographql/graphql-playground-html": "1.6.24",
"@types/accepts": "^1.3.5",
@ -432,8 +432,8 @@
"@types/cors": "^2.8.4",
"@types/express": "4.17.1",
"accepts": "^1.3.5",
"apollo-server-core": "^2.9.4",
"apollo-server-types": "^0.2.4",
"apollo-server-core": "^2.9.7",
"apollo-server-types": "^0.2.5",
"body-parser": "^1.18.3",
"cors": "^2.8.4",
"express": "^4.17.1",
@ -442,33 +442,45 @@
"parseurl": "^1.3.2",
"subscriptions-transport-ws": "^0.9.16",
"type-is": "^1.6.16"
},
"dependencies": {
"@types/express": {
"version": "4.17.1",
"resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.1.tgz",
"integrity": "sha512-VfH/XCP0QbQk5B5puLqTLEeFgR8lfCJHZJKkInZ9mkYd+u8byX0kztXEQxEk4wZXJs8HI+7km2ALXjn4YKcX9w==",
"requires": {
"@types/body-parser": "*",
"@types/express-serve-static-core": "*",
"@types/serve-static": "*"
}
}
}
},
"apollo-server-plugin-base": {
"version": "0.6.4",
"resolved": "https://registry.npmjs.org/apollo-server-plugin-base/-/apollo-server-plugin-base-0.6.4.tgz",
"integrity": "sha512-4rY+cBAIpQomGWYBtk8hHkLQWHrh5hgIBPQqmhXh00YFdcY+Ob1/cU2/2iqTcIzhtcaezsc8OZ63au6ahSBQqg==",
"version": "0.6.5",
"resolved": "https://registry.npmjs.org/apollo-server-plugin-base/-/apollo-server-plugin-base-0.6.5.tgz",
"integrity": "sha512-z2ve7HEPWmZI3EzL0iiY9qyt1i0hitT+afN5PzssCw594LB6DfUQWsI14UW+W+gcw8hvl8VQUpXByfUntAx5vw==",
"requires": {
"apollo-server-types": "^0.2.4"
"apollo-server-types": "^0.2.5"
}
},
"apollo-server-types": {
"version": "0.2.4",
"resolved": "https://registry.npmjs.org/apollo-server-types/-/apollo-server-types-0.2.4.tgz",
"integrity": "sha512-G4FvBVgGQcTW6ZBS2+hvcDQkSfdOIKV+cHADduXA275v+5zl42g+bCaGd/hCCKTDRjmQvObLiMxH/BJ6pDMQgA==",
"version": "0.2.5",
"resolved": "https://registry.npmjs.org/apollo-server-types/-/apollo-server-types-0.2.5.tgz",
"integrity": "sha512-6iJQsPh59FWu4K7ABrVmpnQVgeK8Ockx8BcawBh+saFYWTlVczwcLyGSZPeV1tPSKwFwKZutyEslrYSafcarXQ==",
"requires": {
"apollo-engine-reporting-protobuf": "^0.4.0",
"apollo-engine-reporting-protobuf": "^0.4.1",
"apollo-server-caching": "^0.5.0",
"apollo-server-env": "^2.4.3"
}
},
"apollo-tracing": {
"version": "0.8.4",
"resolved": "https://registry.npmjs.org/apollo-tracing/-/apollo-tracing-0.8.4.tgz",
"integrity": "sha512-DjbFW0IvHicSlTVG+vK+1WINfBMRCdPPHJSW/j65JMir9Oe56WGeqL8qz8hptdUUmLYEb+azvcyyGsJsiR3zpQ==",
"version": "0.8.5",
"resolved": "https://registry.npmjs.org/apollo-tracing/-/apollo-tracing-0.8.5.tgz",
"integrity": "sha512-lZn10/GRBZUlMxVYLghLMFsGcLN0jTYDd98qZfBtxw+wEWUx+PKkZdljDT+XNoOm/kDvEutFGmi5tSLhArIzWQ==",
"requires": {
"apollo-server-env": "^2.4.3",
"graphql-extensions": "^0.10.3"
"graphql-extensions": "^0.10.4"
}
},
"apollo-utilities": {
@ -543,9 +555,9 @@
"dev": true
},
"axios": {
"version": "0.18.1",
"resolved": "https://registry.npmjs.org/axios/-/axios-0.18.1.tgz",
"integrity": "sha512-0BfJq4NSfQXd+SkFdrvFbG7addhYSBA2mQwISr46pD6E5iqkWg02RAs8vyTT/j0RTnoYmeXauBuSv1qKwR179g==",
"version": "0.19.0",
"resolved": "https://registry.npmjs.org/axios/-/axios-0.19.0.tgz",
"integrity": "sha512-1uvKqKQta3KBxIz14F2v06AEHZ/dIoeKfbTRkK1E5oqjDnuEerLmYTgJB5AiQZHJcljpg1TuRzdjDR06qNk0DQ==",
"requires": {
"follow-redirects": "1.5.10",
"is-buffer": "^2.0.2"
@ -724,9 +736,9 @@
}
},
"bson": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/bson/-/bson-1.1.1.tgz",
"integrity": "sha512-jCGVYLoYMHDkOsbwJZBCqwMHyH4c+wzgI9hG7Z6SZJRXWr+x58pdIbm2i9a/jFGCkRJqRUr8eoI7lDWa0hTkxg=="
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/bson/-/bson-1.1.3.tgz",
"integrity": "sha512-TdiJxMVnodVS7r0BdL42y/pqC9cL2iKynVwA0Ho3qbsQYr428veL3l7BQyuqiw+Q5SqqoT0m4srSY/BlZ9AxXg=="
},
"btoa": {
"version": "1.2.1",
@ -898,6 +910,13 @@
"integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==",
"requires": {
"safe-buffer": "5.1.2"
},
"dependencies": {
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
}
}
},
"content-type": {
@ -922,9 +941,9 @@
"dev": true
},
"core-js": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.2.1.tgz",
"integrity": "sha512-Qa5XSVefSVPRxy2XfUC13WbvqkxhkwB3ve+pgCQveNgYzbM/UxZeu1dcOX/xr4UmfUd+muuvsaxilQzCyUurMw=="
"version": "3.4.0",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.4.0.tgz",
"integrity": "sha512-lQxb4HScV71YugF/X28LtePZj9AB7WqOpcB+YztYxusvhrgZiQXPmCYfPC5LHsw/+ScEtDbXU3xbqH3CjBRmYA=="
},
"core-util-is": {
"version": "1.0.2",
@ -1087,9 +1106,9 @@
}
},
"dotenv": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/dotenv/-/dotenv-7.0.0.tgz",
"integrity": "sha512-M3NhsLbV1i6HuGzBUH8vXrtxOk+tWmzWKDMbAVSUp3Zsjm7ywFeuwrUXhmhQyRK1q5B5GGy7hcXPbj3bnfZg2g=="
"version": "8.2.0",
"resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz",
"integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw=="
},
"duplexer3": {
"version": "0.1.4",
@ -1108,9 +1127,9 @@
"integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
},
"es-abstract": {
"version": "1.15.0",
"resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.15.0.tgz",
"integrity": "sha512-bhkEqWJ2t2lMeaJDuk7okMkJWI/yqgH/EoGwpcvv0XW9RWQsRspI4wt6xuyuvMvvQE3gg/D9HXppgk21w78GyQ==",
"version": "1.16.0",
"resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.0.tgz",
"integrity": "sha512-xdQnfykZ9JMEiasTAJZJdMWCQ1Vm00NBw79/AWi7ELfZuuPCSOMDZbT9mkOfSctVtfhb+sAAzrm+j//GjjLHLg==",
"requires": {
"es-to-primitive": "^1.2.0",
"function-bind": "^1.1.1",
@ -1125,9 +1144,9 @@
}
},
"es-to-primitive": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz",
"integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==",
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
"integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
"requires": {
"is-callable": "^1.1.4",
"is-date-object": "^1.0.1",
@ -1240,28 +1259,30 @@
"type-is": "~1.6.18",
"utils-merge": "1.0.1",
"vary": "~1.1.2"
},
"dependencies": {
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
}
}
},
"express-session": {
"version": "1.16.2",
"resolved": "https://registry.npmjs.org/express-session/-/express-session-1.16.2.tgz",
"integrity": "sha512-oy0sRsdw6n93E9wpCNWKRnSsxYnSDX9Dnr9mhZgqUEEorzcq5nshGYSZ4ZReHFhKQ80WI5iVUUSPW7u3GaKauw==",
"version": "1.17.0",
"resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.0.tgz",
"integrity": "sha512-t4oX2z7uoSqATbMfsxWMbNjAL0T5zpvcJCk3Z9wnPPN7ibddhnmDZXHfEcoBMG2ojKXZoCyPMc5FbtK+G7SoDg==",
"requires": {
"cookie": "0.3.1",
"cookie": "0.4.0",
"cookie-signature": "1.0.6",
"debug": "2.6.9",
"depd": "~2.0.0",
"on-headers": "~1.0.2",
"parseurl": "~1.3.3",
"safe-buffer": "5.1.2",
"safe-buffer": "5.2.0",
"uid-safe": "~2.1.5"
},
"dependencies": {
"cookie": {
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
"integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s="
},
"depd": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
@ -2074,13 +2095,13 @@
}
},
"graphql-extensions": {
"version": "0.10.3",
"resolved": "https://registry.npmjs.org/graphql-extensions/-/graphql-extensions-0.10.3.tgz",
"integrity": "sha512-kwU0gUe+Qdfr8iZYT91qrPSwQNgPhB/ClF1m1LEPdxlptk5FhFmjpxAcbMZ8q7j0kjfnbp2IeV1OhRDCEPqz2w==",
"version": "0.10.4",
"resolved": "https://registry.npmjs.org/graphql-extensions/-/graphql-extensions-0.10.4.tgz",
"integrity": "sha512-lE6MroluEYocbR/ICwccv39w+Pz4cBPadJ11z1rJkbZv5wstISEganbDOwl9qN21rcZGiWzh7QUNxUiFUXXEDw==",
"requires": {
"@apollographql/apollo-tools": "^0.4.0",
"apollo-server-env": "^2.4.3",
"apollo-server-types": "^0.2.4"
"apollo-server-types": "^0.2.5"
}
},
"graphql-subscriptions": {
@ -2097,9 +2118,9 @@
"integrity": "sha512-jApXqWBzNXQ8jYa/HLkZJaVw9jgwNqZkywa2zfFn16Iv1Zb7ELNHkJaXHR7Quvd5SIGsy6Ny7SUKATgnu05uEg=="
},
"graphql-tools": {
"version": "4.0.5",
"resolved": "https://registry.npmjs.org/graphql-tools/-/graphql-tools-4.0.5.tgz",
"integrity": "sha512-kQCh3IZsMqquDx7zfIGWBau42xe46gmqabwYkpPlCLIjcEY1XK+auP7iGRD9/205BPyoQdY8hT96MPpgERdC9Q==",
"version": "4.0.6",
"resolved": "https://registry.npmjs.org/graphql-tools/-/graphql-tools-4.0.6.tgz",
"integrity": "sha512-jHLQw8x3xmSNRBCsaZqelXXsFfUSUSktSCUP8KYHiX1Z9qEuwcMpAf+FkdBzk8aTAFqOlPdNZ3OI4DKKqGKUqg==",
"requires": {
"apollo-link": "^1.2.3",
"apollo-utilities": "^1.0.1",
@ -2109,13 +2130,13 @@
}
},
"graphql-upload": {
"version": "8.0.7",
"resolved": "https://registry.npmjs.org/graphql-upload/-/graphql-upload-8.0.7.tgz",
"integrity": "sha512-gi2yygbDPXbHPC7H0PNPqP++VKSoNoJO4UrXWq4T0Bi4IhyUd3Ycop/FSxhx2svWIK3jdXR/i0vi91yR1aAF0g==",
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/graphql-upload/-/graphql-upload-8.1.0.tgz",
"integrity": "sha512-U2OiDI5VxYmzRKw0Z2dmfk0zkqMRaecH9Smh1U277gVgVe9Qn+18xqf4skwr4YJszGIh7iQDZ57+5ygOK9sM/Q==",
"requires": {
"busboy": "^0.3.1",
"fs-capacitor": "^2.0.4",
"http-errors": "^1.7.2",
"http-errors": "^1.7.3",
"object-path": "^0.11.4"
}
},
@ -2266,9 +2287,9 @@
}
},
"is-buffer": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz",
"integrity": "sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw=="
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz",
"integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A=="
},
"is-callable": {
"version": "1.1.4",
@ -2578,6 +2599,12 @@
"resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
"integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
},
"memory-pager": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz",
"integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==",
"optional": true
},
"merge-descriptors": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
@ -2664,23 +2691,24 @@
}
},
"mongodb": {
"version": "3.3.2",
"resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.3.2.tgz",
"integrity": "sha512-fqJt3iywelk4yKu/lfwQg163Bjpo5zDKhXiohycvon4iQHbrfflSAz9AIlRE6496Pm/dQKQK5bMigdVo2s6gBg==",
"version": "3.3.3",
"resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.3.3.tgz",
"integrity": "sha512-MdRnoOjstmnrKJsK8PY0PjP6fyF/SBS4R8coxmhsfEU7tQ46/J6j+aSHF2n4c2/H8B+Hc/Klbfp8vggZfI0mmA==",
"requires": {
"bson": "^1.1.1",
"require_optional": "^1.0.1",
"safe-buffer": "^5.1.2"
"safe-buffer": "^5.1.2",
"saslprep": "^1.0.0"
}
},
"mongoose": {
"version": "5.7.3",
"resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.7.3.tgz",
"integrity": "sha512-CKCCCAhFnJRtmdmver8Ud9/NZ9m7D2H/xLgmrcL6cb9D4nril/idL8lsWWpBsJI81AOCVsktiZJ4X4vfo2S0fw==",
"version": "5.7.9",
"resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.7.9.tgz",
"integrity": "sha512-wXYY4+IEvplbEEeOxLVOHBGosBDNn/DYgwKzBFgsamCTvRQZHbdw88m9xUH8Srza+jdKND73/4XbQLynPseRAQ==",
"requires": {
"bson": "~1.1.1",
"kareem": "2.3.1",
"mongodb": "3.3.2",
"mongodb": "3.3.3",
"mongoose-legacy-pluralize": "1.0.2",
"mpath": "0.6.0",
"mquery": "3.2.2",
@ -2695,6 +2723,11 @@
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
},
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
}
}
},
@ -2736,6 +2769,11 @@
"requires": {
"ms": "2.0.0"
}
},
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
}
}
},
@ -2781,18 +2819,18 @@
"integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA=="
},
"nodemon": {
"version": "1.19.3",
"resolved": "https://registry.npmjs.org/nodemon/-/nodemon-1.19.3.tgz",
"integrity": "sha512-TBNKRmJykEbxpTniZBusqRrUTHIEqa2fpecbTQDQj1Gxjth7kKAPP296ztR0o5gPUWsiYbuEbt73/+XMYab1+w==",
"version": "1.19.4",
"resolved": "https://registry.npmjs.org/nodemon/-/nodemon-1.19.4.tgz",
"integrity": "sha512-VGPaqQBNk193lrJFotBU8nvWZPqEZY2eIzymy2jjY0fJ9qIsxA0sxQ8ATPl0gZC645gijYEc1jtZvpS8QWzJGQ==",
"dev": true,
"requires": {
"chokidar": "^2.1.5",
"debug": "^3.1.0",
"chokidar": "^2.1.8",
"debug": "^3.2.6",
"ignore-by-default": "^1.0.1",
"minimatch": "^3.0.4",
"pstree.remy": "^1.1.6",
"semver": "^5.5.0",
"supports-color": "^5.2.0",
"pstree.remy": "^1.1.7",
"semver": "^5.7.1",
"supports-color": "^5.5.0",
"touch": "^3.1.0",
"undefsafe": "^2.0.2",
"update-notifier": "^2.5.0"
@ -3083,9 +3121,9 @@
},
"dependencies": {
"@types/node": {
"version": "10.14.20",
"resolved": "https://registry.npmjs.org/@types/node/-/node-10.14.20.tgz",
"integrity": "sha512-An+MXSV8CGXz/BO9C1KKsoJ/8WDrvlNUaRMsm2h+IHZuSyQkM8U5bJJkb8ItLKA73VePG/nUK+t+EuW2IWuhsQ=="
"version": "10.17.5",
"resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.5.tgz",
"integrity": "sha512-RElZIr/7JreF1eY6oD5RF3kpmdcreuQPjg5ri4oQ5g9sq7YWU8HkfB3eH8GwAwxf5OaCh0VPi7r4N/yoTGelrA=="
}
}
},
@ -3180,6 +3218,14 @@
"safe-buffer": "~5.1.1",
"string_decoder": "~1.1.1",
"util-deprecate": "~1.0.1"
},
"dependencies": {
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
"dev": true
}
}
},
"readdirp": {
@ -3277,9 +3323,9 @@
"integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs="
},
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz",
"integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg=="
},
"safe-regex": {
"version": "1.1.0",
@ -3295,6 +3341,15 @@
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
},
"saslprep": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz",
"integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==",
"optional": true,
"requires": {
"sparse-bitfield": "^3.0.3"
}
},
"semver": {
"version": "5.7.1",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
@ -3553,6 +3608,15 @@
"integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=",
"dev": true
},
"sparse-bitfield": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz",
"integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=",
"optional": true,
"requires": {
"memory-pager": "^1.0.2"
}
},
"split-string": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
@ -3628,6 +3692,14 @@
"dev": true,
"requires": {
"safe-buffer": "~5.1.0"
},
"dependencies": {
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
"dev": true
}
}
},
"strip-ansi": {

View File

@ -5,27 +5,29 @@
"main": "index.js",
"scripts": {
"start": "node index.js",
"watch": "nodemon index.js"
"watch": "nodemon index.js",
"build": "rm -rf build && cd react-ui && npm run build && mv build ../build",
"testbuild": "rmdir /s /q build && cd react-ui && npm run build && move build ../build"
},
"author": "Sendou",
"license": "ISC",
"dependencies": {
"apollo-server": "^2.9.4",
"apollo-server-express": "^2.9.4",
"axios": "^0.18.1",
"apollo-server": "^2.9.7",
"apollo-server-express": "^2.9.7",
"axios": "^0.19.0",
"btoa": "^1.2.1",
"cors": "^2.8.5",
"dotenv": "^7.0.0",
"express-session": "^1.16.2",
"dotenv": "^8.2.0",
"express-session": "^1.17.0",
"graphql": "^14.5.8",
"lodash": "^4.17.15",
"mongoose": "^5.7.3",
"mongoose": "^5.7.9",
"mongoose-unique-validator": "^2.0.3",
"node-fetch": "^2.6.0",
"passport": "^0.4.0",
"passport-discord": "^0.1.3"
},
"devDependencies": {
"nodemon": "^1.19.3"
"nodemon": "^1.19.4"
}
}

23
react-ui/.gitignore vendored Normal file
View File

@ -0,0 +1,23 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
/node_modules
/.pnp
.pnp.js
# testing
/coverage
# production
/build
# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
npm-debug.log*
yarn-debug.log*
yarn-error.log*

View File

@ -1,15 +0,0 @@
// https://ant.design/docs/react/use-with-create-react-app
const { override, fixBabelImports, addLessLoader } = require("customize-cra")
module.exports = override(
fixBabelImports("import", {
libraryName: "antd",
libraryDirectory: "es",
style: true
}),
addLessLoader({
javascriptEnabled: true,
modifyVars: { '@primary-color': '#141163'}
})
)

File diff suppressed because it is too large Load Diff

View File

@ -1,37 +1,27 @@
{
"name": "react-ui",
"name": "sendou-ink-new",
"version": "0.1.0",
"private": true,
"dependencies": {
"@apollo/react-hooks": "^3.1.2",
"antd": "^3.23.5",
"@apollo/react-hooks": "^3.1.3",
"apollo-boost": "^0.4.4",
"apollo-link": "^1.2.13",
"apollo-link-context": "^1.0.19",
"babel-plugin-import": "^1.12.2",
"customize-cra": "^0.5.0",
"graphql": "^14.5.8",
"jstz": "^2.1.1",
"less": "^3.10.3",
"less-loader": "^5.0.0",
"react": "^16.10.2",
"react-app-rewired": "^2.1.3",
"react": "^16.11.0",
"react-color": "^2.17.3",
"react-dom": "^16.10.2",
"react-localization": "^1.0.15",
"react-redux": "^7.1.1",
"react-router": "^5.1.2",
"react-dom": "^16.11.0",
"react-router-dom": "^5.1.2",
"react-scripts": "3.0.0",
"react-scripts": "^3.2.0",
"react-sketch": "^0.5.1",
"recharts": "^1.7.1",
"redux": "^4.0.4",
"semantic-ui-react": "^0.86.0"
"recharts": "^1.8.5",
"semantic-ui-css": "^2.4.1",
"semantic-ui-react": "^0.88.1",
"use-query-params": "^0.4.4"
},
"scripts": {
"start": "react-app-rewired start",
"build": "react-app-rewired build && move build ../build",
"test": "react-app-rewired test",
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
@ -48,6 +38,5 @@
"last 1 firefox version",
"last 1 safari version"
]
},
"proxy": "http://localhost:3001"
}
}

View File

@ -3,12 +3,13 @@
<head>
<meta charset="utf-8" />
<link rel="shortcut icon" href="%PUBLIC_URL%/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" />
<meta
name="description"
content="Web site created using create-react-app"
/>
<link rel="apple-touch-icon" href="logo192.png" />
<!--
manifest.json provides metadata used when your web app is installed on a
user's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/

BIN
react-ui/public/logo192.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

BIN
react-ui/public/logo512.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 133 KiB

Some files were not shown because too many files have changed in this diff Show More