6
.gitignore
vendored
|
|
@ -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
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"python.formatting.provider": "black"
|
||||
}
|
||||
|
|
@ -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"
|
||||
}
|
||||
}
|
||||
|
Before Width: | Height: | Size: 1.1 KiB |
|
|
@ -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>
|
||||
|
|
@ -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"
|
||||
}
|
||||
|
|
@ -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"
|
||||
}
|
||||
]);
|
||||
|
|
@ -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: [/^\/_/,/\/[^\/]+\.[^\/]+$/],
|
||||
});
|
||||
|
|
@ -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 */
|
||||
|
|
@ -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"]}
|
||||
|
|
@ -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
|
||||
|
Before Width: | Height: | Size: 659 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 546 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 1.1 MiB |
|
Before Width: | Height: | Size: 570 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 558 KiB |
|
Before Width: | Height: | Size: 1.4 MiB |
|
Before Width: | Height: | Size: 759 KiB |
|
Before Width: | Height: | Size: 544 KiB |
|
Before Width: | Height: | Size: 487 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 1.4 MiB |
|
Before Width: | Height: | Size: 654 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 642 KiB |
|
Before Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 634 KiB |
|
Before Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 1.5 MiB |
|
Before Width: | Height: | Size: 629 KiB |
|
Before Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 648 KiB |
|
Before Width: | Height: | Size: 640 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 547 KiB |
|
Before Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 558 KiB |
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 513 KiB |
|
Before Width: | Height: | Size: 489 KiB |
|
Before Width: | Height: | Size: 689 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 631 KiB |
|
Before Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 720 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 1.2 MiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 667 KiB |
|
Before Width: | Height: | Size: 707 KiB |
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 590 KiB |
|
Before Width: | Height: | Size: 851 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 526 KiB |
|
Before Width: | Height: | Size: 561 KiB |
159
index.js
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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)
|
||||
|
|
|
|||
108
models/player.js
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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": {
|
||||
|
|
|
|||
18
package.json
|
|
@ -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
|
|
@ -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*
|
||||
15
react-ui/config-overrides.js
vendored
|
|
@ -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'}
|
||||
})
|
||||
)
|
||||
6985
react-ui/package-lock.json
generated
|
|
@ -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"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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
|
After Width: | Height: | Size: 25 KiB |
BIN
react-ui/public/logo512.png
Normal file
|
After Width: | Height: | Size: 133 KiB |