first commit
This commit is contained in:
		
						commit
						1ed65ca227
					
				
					 34 changed files with 1171 additions and 0 deletions
				
			
		
							
								
								
									
										1
									
								
								.gitignore
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
										
									
									
										vendored
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1 @@
 | 
			
		|||
node_modules/
 | 
			
		||||
							
								
								
									
										83
									
								
								assets/css/main.css
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										83
									
								
								assets/css/main.css
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,83 @@
 | 
			
		|||
@font-face {
 | 
			
		||||
  font-family: 'Gotham';
 | 
			
		||||
  src: url("../fonts/Gotham-Font/Gotham-Bold.otf");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
* {
 | 
			
		||||
  margin: 0;
 | 
			
		||||
  padding: 0;
 | 
			
		||||
  padding-cursor: pointer;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
body {
 | 
			
		||||
  font-family: 'Gotham', sans-serif;
 | 
			
		||||
  background-image: url("../images/background.png");
 | 
			
		||||
  background-size: cover;
 | 
			
		||||
  background-attachment: fixed;
 | 
			
		||||
  background-position: center;
 | 
			
		||||
  background-repeat: no-repeat;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.socials {
 | 
			
		||||
  font-size: 4vh;
 | 
			
		||||
  left: 0;
 | 
			
		||||
  line-height: 4vh;
 | 
			
		||||
  letter-spacing: 15px;
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  text-align: center;
 | 
			
		||||
  top: 25%;
 | 
			
		||||
  width: 100%;
 | 
			
		||||
  text-transform: uppercase;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.socials a {
 | 
			
		||||
  text-decoration: none;
 | 
			
		||||
  color: #ffffff;
 | 
			
		||||
  -webkit-animation: SocialsAnimated 5s linear infinite;
 | 
			
		||||
          animation: SocialsAnimated 5s linear infinite;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.socials a:hover {
 | 
			
		||||
  color: #a865ff81;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.logo {
 | 
			
		||||
  width: auto;
 | 
			
		||||
  height: 10vh;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.credits {
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  left: 50%;
 | 
			
		||||
  right: 25%;
 | 
			
		||||
  bottom: 30px;
 | 
			
		||||
  margin-left: -50px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.creator {
 | 
			
		||||
  font-size: 2.5vh;
 | 
			
		||||
  color: white;
 | 
			
		||||
  display: table-caption;
 | 
			
		||||
  padding: 1vh;
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  top: 95%;
 | 
			
		||||
  left: 50%;
 | 
			
		||||
  margin-left: -120px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.creator a {
 | 
			
		||||
  text-decoration: none;
 | 
			
		||||
  margin: 0;
 | 
			
		||||
  padding: 0;
 | 
			
		||||
  color: #8445fa;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.creator a:hover {
 | 
			
		||||
  color: #8445fa50;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.them {
 | 
			
		||||
  width: auto;
 | 
			
		||||
  height: 16vh;
 | 
			
		||||
}
 | 
			
		||||
/*# sourceMappingURL=main.css.map */
 | 
			
		||||
							
								
								
									
										9
									
								
								assets/css/main.css.map
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								assets/css/main.css.map
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,9 @@
 | 
			
		|||
{
 | 
			
		||||
    "version": 3,
 | 
			
		||||
    "mappings": "AAAA,UAAU;EACN,WAAW,EAAE,QAAQ;EACrB,GAAG,EAAE,2CAA2C;;;AAGpD,AAAA,CAAC,CAAC;EACD,MAAM,EAAE,CAAC;EACT,OAAO,EAAE,CAAC;EACP,cAAM,EAAE,OAAO;CAAK;;AAGxB,AAAA,IAAI,CAAC;EACD,WAAW,EAAE,oBAAoB;EACjC,gBAAgB,EAAE,+BAA+B;EACjD,eAAe,EAAE,KAAK;EACtB,qBAAqB,EAAE,KAAK;EAC5B,mBAAmB,EAAE,MAAM;EAC3B,iBAAiB,EAAE,SAAS;CAAG;;AAGnC,AAAA,QAAQ,CAAC;EACL,SAAS,EAAE,GAAG;EACd,IAAI,EAAE,CAAC;EACP,WAAW,EAAE,GAAG;EAChB,cAAc,EAAE,IAAI;EACpB,QAAQ,EAAE,QAAQ;EAClB,UAAU,EAAE,MAAM;EAClB,GAAG,EAAE,GAAG;EACR,KAAK,EAAE,IAAI;EACX,cAAc,EAAE,SAAS;CAQA;;AAjB7B,AAWI,QAXI,CAWJ,CAAC,CAAC;EACE,eAAe,EAAE,IAAI;EACrB,KAAK,EAAE,OAAO;EACd,SAAS,EAAE,kCAAkC;CAAG;;AAdxD,AAgBI,QAhBI,CAgBJ,CAAC,AAAA,MAAM,CAAC;EACJ,KAAK,EAAE,SAAS;CAAG;;AAG3B,AAAA,KAAK,CAAC;EACF,KAAK,EAAE,IAAI;EACX,MAAM,EAAE,IAAI;CAAG;;AAEnB,AAAA,QAAQ,CAAC;EACL,QAAQ,EAAE,QAAQ;EAClB,IAAI,EAAE,GAAG;EACT,KAAK,EAAE,GAAG;EACV,MAAM,EAAE,IAAI;EACZ,WAAW,EAAE,KAAK;CAAG;;AAEzB,AAAA,QAAQ,CAAC;EACL,SAAS,EAAE,KAAK;EAChB,KAAK,EAAE,KAAK;EACZ,OAAO,EAAE,aAAa;EACtB,OAAO,EAAE,GAAG;EACZ,QAAQ,EAAE,QAAQ;EAClB,GAAG,EAAE,GAAG;EACR,IAAI,EAAE,GAAG;EACT,WAAW,EAAE,MAAM;CAAG;;AAE1B,AAAA,QAAQ,CAAC,CAAC,CAAC;EACH,eAAe,EAAE,IAAI;EACrB,MAAM,EAAE,CAAC;EACT,OAAO,EAAE,CAAC;EACV,KAAK,EAAE,OAAO;CAAG;;AAEzB,AAAA,QAAQ,CAAC,CAAC,AAAA,MAAM,CAAC;EACb,KAAK,EAAE,SAAS;CAAG;;AAEvB,AAAA,KAAK,CAAC;EACF,KAAK,EAAE,IAAI;EACX,MAAM,EAAE,IAAI;CAAG",
 | 
			
		||||
    "sources": [
 | 
			
		||||
        "main.sass"
 | 
			
		||||
    ],
 | 
			
		||||
    "names": [],
 | 
			
		||||
    "file": "main.css"
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										74
									
								
								assets/css/main.sass
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										74
									
								
								assets/css/main.sass
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,74 @@
 | 
			
		|||
@font-face 
 | 
			
		||||
    font-family: 'Gotham';
 | 
			
		||||
    src: url('../fonts/Gotham-Font/Gotham-Bold.otf');
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
* 
 | 
			
		||||
	margin: 0
 | 
			
		||||
	padding: 0
 | 
			
		||||
    cursor: pointer
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
body
 | 
			
		||||
    font-family: 'Gotham', sans-serif
 | 
			
		||||
    background-image: url('../images/background.png')
 | 
			
		||||
    background-size: cover
 | 
			
		||||
    background-attachment: fixed
 | 
			
		||||
    background-position: center
 | 
			
		||||
    background-repeat: no-repeat
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.socials
 | 
			
		||||
    font-size: 4vh
 | 
			
		||||
    left: 0
 | 
			
		||||
    line-height: 4vh
 | 
			
		||||
    letter-spacing: 15px
 | 
			
		||||
    position: absolute
 | 
			
		||||
    text-align: center
 | 
			
		||||
    top: 25%
 | 
			
		||||
    width: 100%
 | 
			
		||||
    text-transform: uppercase
 | 
			
		||||
 | 
			
		||||
    a
 | 
			
		||||
        text-decoration: none
 | 
			
		||||
        color: #ffffff
 | 
			
		||||
        animation: SocialsAnimated 5s linear infinite
 | 
			
		||||
 | 
			
		||||
    a:hover
 | 
			
		||||
        color: #a865ff81
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.logo
 | 
			
		||||
    width: auto
 | 
			
		||||
    height: 10vh
 | 
			
		||||
 | 
			
		||||
.credits
 | 
			
		||||
    position: absolute
 | 
			
		||||
    left: 50%
 | 
			
		||||
    right: 25%
 | 
			
		||||
    bottom: 30px
 | 
			
		||||
    margin-left: -50px
 | 
			
		||||
 | 
			
		||||
.creator
 | 
			
		||||
    font-size: 2.5vh
 | 
			
		||||
    color: white
 | 
			
		||||
    display: table-caption
 | 
			
		||||
    padding: 1vh
 | 
			
		||||
    position: absolute
 | 
			
		||||
    top: 95%
 | 
			
		||||
    left: 50%
 | 
			
		||||
    margin-left: -120px
 | 
			
		||||
 | 
			
		||||
.creator a
 | 
			
		||||
        text-decoration: none
 | 
			
		||||
        margin: 0
 | 
			
		||||
        padding: 0
 | 
			
		||||
        color: #8445fa
 | 
			
		||||
 | 
			
		||||
.creator a:hover
 | 
			
		||||
    color: #8445fa50
 | 
			
		||||
 | 
			
		||||
.them
 | 
			
		||||
    width: auto
 | 
			
		||||
    height: 16vh
 | 
			
		||||
    
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-Black.otf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-Black.otf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-Bold.otf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-Bold.otf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-BookItalic.otf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-BookItalic.otf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-Light.otf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-Light.otf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-Thin.otf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-Thin.otf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-ThinItalic.otf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-ThinItalic.otf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-UltraItalic.otf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-UltraItalic.otf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-XLight.otf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-XLight.otf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-XLightItalic.otf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/Gotham-XLightItalic.otf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamBold.ttf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamBold.ttf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamBoldItalic.ttf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamBoldItalic.ttf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamBook.ttf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamBook.ttf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamBookItalic.ttf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamBookItalic.ttf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamLight.ttf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamLight.ttf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamLightItalic.ttf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamLightItalic.ttf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamMedium.ttf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamMedium.ttf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamMediumItalic.ttf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamMediumItalic.ttf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamMedium_1.ttf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/fonts/Gotham-Font/GothamMedium_1.ttf
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										1
									
								
								assets/fonts/Gotham-Font/freefontsfamily.com.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								assets/fonts/Gotham-Font/freefontsfamily.com.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1 @@
 | 
			
		|||
You can download this font here: https://freefontsfamily.com
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								assets/images/background.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/background.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 1.4 MiB  | 
							
								
								
									
										
											BIN
										
									
								
								assets/images/moon.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/moon.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 563 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								assets/images/sor_white.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/sor_white.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 35 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								assets/images/them.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/them.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 336 KiB  | 
							
								
								
									
										9
									
								
								constants.js
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								constants.js
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,9 @@
 | 
			
		|||
module.exports = {
 | 
			
		||||
    socials: {
 | 
			
		||||
        discord: 'https://discord.gg/eXST5gv',
 | 
			
		||||
        bandcamp: 'https://sorsor.bandcamp.com',
 | 
			
		||||
        patreon: 'https://patreon.com/sorsor',
 | 
			
		||||
        youtube: 'https://youtube.com/sorsor',
 | 
			
		||||
        twitter: 'https://twitter.com/YaiSor'
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										823
									
								
								package-lock.json
									
										
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										823
									
								
								package-lock.json
									
										
									
										generated
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,823 @@
 | 
			
		|||
{
 | 
			
		||||
  "requires": true,
 | 
			
		||||
  "lockfileVersion": 1,
 | 
			
		||||
  "dependencies": {
 | 
			
		||||
    "@types/color-name": {
 | 
			
		||||
      "version": "1.1.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
 | 
			
		||||
      "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ=="
 | 
			
		||||
    },
 | 
			
		||||
    "accepts": {
 | 
			
		||||
      "version": "1.3.7",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz",
 | 
			
		||||
      "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "mime-types": "~2.1.24",
 | 
			
		||||
        "negotiator": "0.6.2"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "ansi-styles": {
 | 
			
		||||
      "version": "4.2.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
 | 
			
		||||
      "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "@types/color-name": "^1.1.1",
 | 
			
		||||
        "color-convert": "^2.0.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "array-flatten": {
 | 
			
		||||
      "version": "1.1.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
 | 
			
		||||
      "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI="
 | 
			
		||||
    },
 | 
			
		||||
    "asap": {
 | 
			
		||||
      "version": "2.0.6",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
 | 
			
		||||
      "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY="
 | 
			
		||||
    },
 | 
			
		||||
    "balanced-match": {
 | 
			
		||||
      "version": "1.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
 | 
			
		||||
      "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
 | 
			
		||||
    },
 | 
			
		||||
    "basic-auth": {
 | 
			
		||||
      "version": "2.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz",
 | 
			
		||||
      "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "safe-buffer": "5.1.2"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "body-parser": {
 | 
			
		||||
      "version": "1.19.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz",
 | 
			
		||||
      "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "bytes": "3.1.0",
 | 
			
		||||
        "content-type": "~1.0.4",
 | 
			
		||||
        "debug": "2.6.9",
 | 
			
		||||
        "depd": "~1.1.2",
 | 
			
		||||
        "http-errors": "1.7.2",
 | 
			
		||||
        "iconv-lite": "0.4.24",
 | 
			
		||||
        "on-finished": "~2.3.0",
 | 
			
		||||
        "qs": "6.7.0",
 | 
			
		||||
        "raw-body": "2.4.0",
 | 
			
		||||
        "type-is": "~1.6.17"
 | 
			
		||||
      },
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "bytes": {
 | 
			
		||||
          "version": "3.1.0",
 | 
			
		||||
          "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
 | 
			
		||||
          "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg=="
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "bowser": {
 | 
			
		||||
      "version": "2.9.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.9.0.tgz",
 | 
			
		||||
      "integrity": "sha512-2ld76tuLBNFekRgmJfT2+3j5MIrP6bFict8WAIT3beq+srz1gcKNAdNKMqHqauQt63NmAa88HfP1/Ypa9Er3HA=="
 | 
			
		||||
    },
 | 
			
		||||
    "brace-expansion": {
 | 
			
		||||
      "version": "1.1.11",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
 | 
			
		||||
      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "balanced-match": "^1.0.0",
 | 
			
		||||
        "concat-map": "0.0.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "bytes": {
 | 
			
		||||
      "version": "3.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
 | 
			
		||||
      "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg="
 | 
			
		||||
    },
 | 
			
		||||
    "camelize": {
 | 
			
		||||
      "version": "1.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.0.tgz",
 | 
			
		||||
      "integrity": "sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs="
 | 
			
		||||
    },
 | 
			
		||||
    "chalk": {
 | 
			
		||||
      "version": "3.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
 | 
			
		||||
      "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "ansi-styles": "^4.1.0",
 | 
			
		||||
        "supports-color": "^7.1.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "color-convert": {
 | 
			
		||||
      "version": "2.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
 | 
			
		||||
      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "color-name": "~1.1.4"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "color-name": {
 | 
			
		||||
      "version": "1.1.4",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
 | 
			
		||||
      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
 | 
			
		||||
    },
 | 
			
		||||
    "commander": {
 | 
			
		||||
      "version": "2.20.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
 | 
			
		||||
      "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
 | 
			
		||||
      "optional": true
 | 
			
		||||
    },
 | 
			
		||||
    "compressible": {
 | 
			
		||||
      "version": "2.0.18",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz",
 | 
			
		||||
      "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "mime-db": ">= 1.43.0 < 2"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "compression": {
 | 
			
		||||
      "version": "1.7.4",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz",
 | 
			
		||||
      "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "accepts": "~1.3.5",
 | 
			
		||||
        "bytes": "3.0.0",
 | 
			
		||||
        "compressible": "~2.0.16",
 | 
			
		||||
        "debug": "2.6.9",
 | 
			
		||||
        "on-headers": "~1.0.2",
 | 
			
		||||
        "safe-buffer": "5.1.2",
 | 
			
		||||
        "vary": "~1.1.2"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "concat-map": {
 | 
			
		||||
      "version": "0.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
 | 
			
		||||
      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
 | 
			
		||||
    },
 | 
			
		||||
    "content-disposition": {
 | 
			
		||||
      "version": "0.5.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz",
 | 
			
		||||
      "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "safe-buffer": "5.1.2"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "content-security-policy-builder": {
 | 
			
		||||
      "version": "2.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/content-security-policy-builder/-/content-security-policy-builder-2.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-/MtLWhJVvJNkA9dVLAp6fg9LxD2gfI6R2Fi1hPmfjYXSahJJzcfvoeDOxSyp4NvxMuwWv3WMssE9o31DoULHrQ=="
 | 
			
		||||
    },
 | 
			
		||||
    "content-type": {
 | 
			
		||||
      "version": "1.0.4",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
 | 
			
		||||
      "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="
 | 
			
		||||
    },
 | 
			
		||||
    "cookie": {
 | 
			
		||||
      "version": "0.4.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz",
 | 
			
		||||
      "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg=="
 | 
			
		||||
    },
 | 
			
		||||
    "cookie-signature": {
 | 
			
		||||
      "version": "1.0.6",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
 | 
			
		||||
      "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw="
 | 
			
		||||
    },
 | 
			
		||||
    "cors": {
 | 
			
		||||
      "version": "2.8.5",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz",
 | 
			
		||||
      "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "object-assign": "^4",
 | 
			
		||||
        "vary": "^1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "dasherize": {
 | 
			
		||||
      "version": "2.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/dasherize/-/dasherize-2.0.0.tgz",
 | 
			
		||||
      "integrity": "sha1-bYCcnNDPe7iVLYD8hPoT1H3bEwg="
 | 
			
		||||
    },
 | 
			
		||||
    "debug": {
 | 
			
		||||
      "version": "2.6.9",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
 | 
			
		||||
      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "ms": "2.0.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "define-properties": {
 | 
			
		||||
      "version": "1.1.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
 | 
			
		||||
      "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "object-keys": "^1.0.12"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "depd": {
 | 
			
		||||
      "version": "1.1.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
 | 
			
		||||
      "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak="
 | 
			
		||||
    },
 | 
			
		||||
    "destroy": {
 | 
			
		||||
      "version": "1.0.4",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
 | 
			
		||||
      "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
 | 
			
		||||
    },
 | 
			
		||||
    "dns-prefetch-control": {
 | 
			
		||||
      "version": "0.2.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/dns-prefetch-control/-/dns-prefetch-control-0.2.0.tgz",
 | 
			
		||||
      "integrity": "sha512-hvSnros73+qyZXhHFjx2CMLwoj3Fe7eR9EJsFsqmcI1bB2OBWL/+0YzaEaKssCHnj/6crawNnUyw74Gm2EKe+Q=="
 | 
			
		||||
    },
 | 
			
		||||
    "dont-sniff-mimetype": {
 | 
			
		||||
      "version": "1.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/dont-sniff-mimetype/-/dont-sniff-mimetype-1.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-ZjI4zqTaxveH2/tTlzS1wFp+7ncxNZaIEWYg3lzZRHkKf5zPT/MnEG6WL0BhHMJUabkh8GeU5NL5j+rEUCb7Ug=="
 | 
			
		||||
    },
 | 
			
		||||
    "ee-first": {
 | 
			
		||||
      "version": "1.1.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
 | 
			
		||||
      "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
 | 
			
		||||
    },
 | 
			
		||||
    "encodeurl": {
 | 
			
		||||
      "version": "1.0.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
 | 
			
		||||
      "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
 | 
			
		||||
    },
 | 
			
		||||
    "escape-html": {
 | 
			
		||||
      "version": "1.0.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
 | 
			
		||||
      "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg="
 | 
			
		||||
    },
 | 
			
		||||
    "etag": {
 | 
			
		||||
      "version": "1.8.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
 | 
			
		||||
      "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc="
 | 
			
		||||
    },
 | 
			
		||||
    "expect-ct": {
 | 
			
		||||
      "version": "0.2.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/expect-ct/-/expect-ct-0.2.0.tgz",
 | 
			
		||||
      "integrity": "sha512-6SK3MG/Bbhm8MsgyJAylg+ucIOU71/FzyFalcfu5nY19dH8y/z0tBJU0wrNBXD4B27EoQtqPF/9wqH0iYAd04g=="
 | 
			
		||||
    },
 | 
			
		||||
    "express": {
 | 
			
		||||
      "version": "4.17.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz",
 | 
			
		||||
      "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "accepts": "~1.3.7",
 | 
			
		||||
        "array-flatten": "1.1.1",
 | 
			
		||||
        "body-parser": "1.19.0",
 | 
			
		||||
        "content-disposition": "0.5.3",
 | 
			
		||||
        "content-type": "~1.0.4",
 | 
			
		||||
        "cookie": "0.4.0",
 | 
			
		||||
        "cookie-signature": "1.0.6",
 | 
			
		||||
        "debug": "2.6.9",
 | 
			
		||||
        "depd": "~1.1.2",
 | 
			
		||||
        "encodeurl": "~1.0.2",
 | 
			
		||||
        "escape-html": "~1.0.3",
 | 
			
		||||
        "etag": "~1.8.1",
 | 
			
		||||
        "finalhandler": "~1.1.2",
 | 
			
		||||
        "fresh": "0.5.2",
 | 
			
		||||
        "merge-descriptors": "1.0.1",
 | 
			
		||||
        "methods": "~1.1.2",
 | 
			
		||||
        "on-finished": "~2.3.0",
 | 
			
		||||
        "parseurl": "~1.3.3",
 | 
			
		||||
        "path-to-regexp": "0.1.7",
 | 
			
		||||
        "proxy-addr": "~2.0.5",
 | 
			
		||||
        "qs": "6.7.0",
 | 
			
		||||
        "range-parser": "~1.2.1",
 | 
			
		||||
        "safe-buffer": "5.1.2",
 | 
			
		||||
        "send": "0.17.1",
 | 
			
		||||
        "serve-static": "1.14.1",
 | 
			
		||||
        "setprototypeof": "1.1.1",
 | 
			
		||||
        "statuses": "~1.5.0",
 | 
			
		||||
        "type-is": "~1.6.18",
 | 
			
		||||
        "utils-merge": "1.0.1",
 | 
			
		||||
        "vary": "~1.1.2"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "express-handlebars": {
 | 
			
		||||
      "version": "3.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/express-handlebars/-/express-handlebars-3.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-7QlaXnSREMmN5P2o4gmpUZDfJlLtfBka9d6r7/ccXaU7rPp76odw9YYtwZYdIiha2JqwiaG6o2Wu6NZJQ0u7Fg==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "glob": "^7.1.3",
 | 
			
		||||
        "graceful-fs": "^4.1.2",
 | 
			
		||||
        "handlebars": "^4.1.2",
 | 
			
		||||
        "object.assign": "^4.1.0",
 | 
			
		||||
        "promise": "^8.0.2"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "feature-policy": {
 | 
			
		||||
      "version": "0.3.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/feature-policy/-/feature-policy-0.3.0.tgz",
 | 
			
		||||
      "integrity": "sha512-ZtijOTFN7TzCujt1fnNhfWPFPSHeZkesff9AXZj+UEjYBynWNUIYpC87Ve4wHzyexQsImicLu7WsC2LHq7/xrQ=="
 | 
			
		||||
    },
 | 
			
		||||
    "finalhandler": {
 | 
			
		||||
      "version": "1.1.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz",
 | 
			
		||||
      "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "debug": "2.6.9",
 | 
			
		||||
        "encodeurl": "~1.0.2",
 | 
			
		||||
        "escape-html": "~1.0.3",
 | 
			
		||||
        "on-finished": "~2.3.0",
 | 
			
		||||
        "parseurl": "~1.3.3",
 | 
			
		||||
        "statuses": "~1.5.0",
 | 
			
		||||
        "unpipe": "~1.0.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "forwarded": {
 | 
			
		||||
      "version": "0.1.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz",
 | 
			
		||||
      "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ="
 | 
			
		||||
    },
 | 
			
		||||
    "frameguard": {
 | 
			
		||||
      "version": "3.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/frameguard/-/frameguard-3.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-TxgSKM+7LTA6sidjOiSZK9wxY0ffMPY3Wta//MqwmX0nZuEHc8QrkV8Fh3ZhMJeiH+Uyh/tcaarImRy8u77O7g=="
 | 
			
		||||
    },
 | 
			
		||||
    "fresh": {
 | 
			
		||||
      "version": "0.5.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
 | 
			
		||||
      "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
 | 
			
		||||
    },
 | 
			
		||||
    "fs.realpath": {
 | 
			
		||||
      "version": "1.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
 | 
			
		||||
      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
 | 
			
		||||
    },
 | 
			
		||||
    "function-bind": {
 | 
			
		||||
      "version": "1.1.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
 | 
			
		||||
      "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
 | 
			
		||||
    },
 | 
			
		||||
    "glob": {
 | 
			
		||||
      "version": "7.1.6",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
 | 
			
		||||
      "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "fs.realpath": "^1.0.0",
 | 
			
		||||
        "inflight": "^1.0.4",
 | 
			
		||||
        "inherits": "2",
 | 
			
		||||
        "minimatch": "^3.0.4",
 | 
			
		||||
        "once": "^1.3.0",
 | 
			
		||||
        "path-is-absolute": "^1.0.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "graceful-fs": {
 | 
			
		||||
      "version": "4.2.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz",
 | 
			
		||||
      "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ=="
 | 
			
		||||
    },
 | 
			
		||||
    "handlebars": {
 | 
			
		||||
      "version": "4.7.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.3.tgz",
 | 
			
		||||
      "integrity": "sha512-SRGwSYuNfx8DwHD/6InAPzD6RgeruWLT+B8e8a7gGs8FWgHzlExpTFMEq2IA6QpAfOClpKHy6+8IqTjeBCu6Kg==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "neo-async": "^2.6.0",
 | 
			
		||||
        "optimist": "^0.6.1",
 | 
			
		||||
        "source-map": "^0.6.1",
 | 
			
		||||
        "uglify-js": "^3.1.4"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "has-flag": {
 | 
			
		||||
      "version": "4.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
 | 
			
		||||
      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
 | 
			
		||||
    },
 | 
			
		||||
    "has-symbols": {
 | 
			
		||||
      "version": "1.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
 | 
			
		||||
      "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg=="
 | 
			
		||||
    },
 | 
			
		||||
    "helmet": {
 | 
			
		||||
      "version": "3.21.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/helmet/-/helmet-3.21.2.tgz",
 | 
			
		||||
      "integrity": "sha512-okUo+MeWgg00cKB8Csblu8EXgcIoDyb5ZS/3u0W4spCimeVuCUvVZ6Vj3O2VJ1Sxpyb8jCDvzu0L1KKT11pkIg==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "depd": "2.0.0",
 | 
			
		||||
        "dns-prefetch-control": "0.2.0",
 | 
			
		||||
        "dont-sniff-mimetype": "1.1.0",
 | 
			
		||||
        "expect-ct": "0.2.0",
 | 
			
		||||
        "feature-policy": "0.3.0",
 | 
			
		||||
        "frameguard": "3.1.0",
 | 
			
		||||
        "helmet-crossdomain": "0.4.0",
 | 
			
		||||
        "helmet-csp": "2.9.4",
 | 
			
		||||
        "hide-powered-by": "1.1.0",
 | 
			
		||||
        "hpkp": "2.0.0",
 | 
			
		||||
        "hsts": "2.2.0",
 | 
			
		||||
        "ienoopen": "1.1.0",
 | 
			
		||||
        "nocache": "2.1.0",
 | 
			
		||||
        "referrer-policy": "1.2.0",
 | 
			
		||||
        "x-xss-protection": "1.3.0"
 | 
			
		||||
      },
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "depd": {
 | 
			
		||||
          "version": "2.0.0",
 | 
			
		||||
          "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
 | 
			
		||||
          "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw=="
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "helmet-crossdomain": {
 | 
			
		||||
      "version": "0.4.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/helmet-crossdomain/-/helmet-crossdomain-0.4.0.tgz",
 | 
			
		||||
      "integrity": "sha512-AB4DTykRw3HCOxovD1nPR16hllrVImeFp5VBV9/twj66lJ2nU75DP8FPL0/Jp4jj79JhTfG+pFI2MD02kWJ+fA=="
 | 
			
		||||
    },
 | 
			
		||||
    "helmet-csp": {
 | 
			
		||||
      "version": "2.9.4",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/helmet-csp/-/helmet-csp-2.9.4.tgz",
 | 
			
		||||
      "integrity": "sha512-qUgGx8+yk7Xl8XFEGI4MFu1oNmulxhQVTlV8HP8tV3tpfslCs30OZz/9uQqsWPvDISiu/NwrrCowsZBhFADYqg==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "bowser": "^2.7.0",
 | 
			
		||||
        "camelize": "1.0.0",
 | 
			
		||||
        "content-security-policy-builder": "2.1.0",
 | 
			
		||||
        "dasherize": "2.0.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "hide-powered-by": {
 | 
			
		||||
      "version": "1.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/hide-powered-by/-/hide-powered-by-1.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-Io1zA2yOA1YJslkr+AJlWSf2yWFkKjvkcL9Ni1XSUqnGLr/qRQe2UI3Cn/J9MsJht7yEVCe0SscY1HgVMujbgg=="
 | 
			
		||||
    },
 | 
			
		||||
    "hpkp": {
 | 
			
		||||
      "version": "2.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/hpkp/-/hpkp-2.0.0.tgz",
 | 
			
		||||
      "integrity": "sha1-EOFCJk52IVpdMMROxD3mTe5tFnI="
 | 
			
		||||
    },
 | 
			
		||||
    "hsts": {
 | 
			
		||||
      "version": "2.2.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/hsts/-/hsts-2.2.0.tgz",
 | 
			
		||||
      "integrity": "sha512-ToaTnQ2TbJkochoVcdXYm4HOCliNozlviNsg+X2XQLQvZNI/kCHR9rZxVYpJB3UPcHz80PgxRyWQ7PdU1r+VBQ==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "depd": "2.0.0"
 | 
			
		||||
      },
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "depd": {
 | 
			
		||||
          "version": "2.0.0",
 | 
			
		||||
          "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
 | 
			
		||||
          "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw=="
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "http-errors": {
 | 
			
		||||
      "version": "1.7.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz",
 | 
			
		||||
      "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "depd": "~1.1.2",
 | 
			
		||||
        "inherits": "2.0.3",
 | 
			
		||||
        "setprototypeof": "1.1.1",
 | 
			
		||||
        "statuses": ">= 1.5.0 < 2",
 | 
			
		||||
        "toidentifier": "1.0.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "iconv-lite": {
 | 
			
		||||
      "version": "0.4.24",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
 | 
			
		||||
      "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "safer-buffer": ">= 2.1.2 < 3"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "ienoopen": {
 | 
			
		||||
      "version": "1.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/ienoopen/-/ienoopen-1.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-MFs36e/ca6ohEKtinTJ5VvAJ6oDRAYFdYXweUnGY9L9vcoqFOU4n2ZhmJ0C4z/cwGZ3YIQRSB3XZ1+ghZkY5NQ=="
 | 
			
		||||
    },
 | 
			
		||||
    "inflight": {
 | 
			
		||||
      "version": "1.0.6",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
 | 
			
		||||
      "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "once": "^1.3.0",
 | 
			
		||||
        "wrappy": "1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "inherits": {
 | 
			
		||||
      "version": "2.0.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
 | 
			
		||||
      "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
 | 
			
		||||
    },
 | 
			
		||||
    "ipaddr.js": {
 | 
			
		||||
      "version": "1.9.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz",
 | 
			
		||||
      "integrity": "sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA=="
 | 
			
		||||
    },
 | 
			
		||||
    "media-typer": {
 | 
			
		||||
      "version": "0.3.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
 | 
			
		||||
      "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
 | 
			
		||||
    },
 | 
			
		||||
    "merge-descriptors": {
 | 
			
		||||
      "version": "1.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
 | 
			
		||||
      "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E="
 | 
			
		||||
    },
 | 
			
		||||
    "methods": {
 | 
			
		||||
      "version": "1.1.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
 | 
			
		||||
      "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4="
 | 
			
		||||
    },
 | 
			
		||||
    "mime": {
 | 
			
		||||
      "version": "1.6.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
 | 
			
		||||
      "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg=="
 | 
			
		||||
    },
 | 
			
		||||
    "mime-db": {
 | 
			
		||||
      "version": "1.43.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz",
 | 
			
		||||
      "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ=="
 | 
			
		||||
    },
 | 
			
		||||
    "mime-types": {
 | 
			
		||||
      "version": "2.1.26",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz",
 | 
			
		||||
      "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "mime-db": "1.43.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "minimatch": {
 | 
			
		||||
      "version": "3.0.4",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
 | 
			
		||||
      "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "brace-expansion": "^1.1.7"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "minimist": {
 | 
			
		||||
      "version": "0.0.10",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
 | 
			
		||||
      "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8="
 | 
			
		||||
    },
 | 
			
		||||
    "morgan": {
 | 
			
		||||
      "version": "1.9.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.9.1.tgz",
 | 
			
		||||
      "integrity": "sha512-HQStPIV4y3afTiCYVxirakhlCfGkI161c76kKFca7Fk1JusM//Qeo1ej2XaMniiNeaZklMVrh3vTtIzpzwbpmA==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "basic-auth": "~2.0.0",
 | 
			
		||||
        "debug": "2.6.9",
 | 
			
		||||
        "depd": "~1.1.2",
 | 
			
		||||
        "on-finished": "~2.3.0",
 | 
			
		||||
        "on-headers": "~1.0.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "ms": {
 | 
			
		||||
      "version": "2.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
 | 
			
		||||
      "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
 | 
			
		||||
    },
 | 
			
		||||
    "negotiator": {
 | 
			
		||||
      "version": "0.6.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz",
 | 
			
		||||
      "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw=="
 | 
			
		||||
    },
 | 
			
		||||
    "neo-async": {
 | 
			
		||||
      "version": "2.6.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz",
 | 
			
		||||
      "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw=="
 | 
			
		||||
    },
 | 
			
		||||
    "nocache": {
 | 
			
		||||
      "version": "2.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/nocache/-/nocache-2.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-0L9FvHG3nfnnmaEQPjT9xhfN4ISk0A8/2j4M37Np4mcDesJjHgEUfgPhdCyZuFI954tjokaIj/A3NdpFNdEh4Q=="
 | 
			
		||||
    },
 | 
			
		||||
    "object-assign": {
 | 
			
		||||
      "version": "4.1.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
 | 
			
		||||
      "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
 | 
			
		||||
    },
 | 
			
		||||
    "object-keys": {
 | 
			
		||||
      "version": "1.1.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
 | 
			
		||||
      "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA=="
 | 
			
		||||
    },
 | 
			
		||||
    "object.assign": {
 | 
			
		||||
      "version": "4.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "define-properties": "^1.1.2",
 | 
			
		||||
        "function-bind": "^1.1.1",
 | 
			
		||||
        "has-symbols": "^1.0.0",
 | 
			
		||||
        "object-keys": "^1.0.11"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "on-finished": {
 | 
			
		||||
      "version": "2.3.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
 | 
			
		||||
      "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "ee-first": "1.1.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "on-headers": {
 | 
			
		||||
      "version": "1.0.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz",
 | 
			
		||||
      "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA=="
 | 
			
		||||
    },
 | 
			
		||||
    "once": {
 | 
			
		||||
      "version": "1.4.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
 | 
			
		||||
      "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "wrappy": "1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "optimist": {
 | 
			
		||||
      "version": "0.6.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
 | 
			
		||||
      "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "minimist": "~0.0.1",
 | 
			
		||||
        "wordwrap": "~0.0.2"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "parseurl": {
 | 
			
		||||
      "version": "1.3.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
 | 
			
		||||
      "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ=="
 | 
			
		||||
    },
 | 
			
		||||
    "path-is-absolute": {
 | 
			
		||||
      "version": "1.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
 | 
			
		||||
      "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
 | 
			
		||||
    },
 | 
			
		||||
    "path-to-regexp": {
 | 
			
		||||
      "version": "0.1.7",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
 | 
			
		||||
      "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w="
 | 
			
		||||
    },
 | 
			
		||||
    "promise": {
 | 
			
		||||
      "version": "8.0.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/promise/-/promise-8.0.3.tgz",
 | 
			
		||||
      "integrity": "sha512-HeRDUL1RJiLhyA0/grn+PTShlBAcLuh/1BJGtrvjwbvRDCTLLMEz9rOGCV+R3vHY4MixIuoMEd9Yq/XvsTPcjw==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "asap": "~2.0.6"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "proxy-addr": {
 | 
			
		||||
      "version": "2.0.5",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz",
 | 
			
		||||
      "integrity": "sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "forwarded": "~0.1.2",
 | 
			
		||||
        "ipaddr.js": "1.9.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "qs": {
 | 
			
		||||
      "version": "6.7.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz",
 | 
			
		||||
      "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ=="
 | 
			
		||||
    },
 | 
			
		||||
    "range-parser": {
 | 
			
		||||
      "version": "1.2.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
 | 
			
		||||
      "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg=="
 | 
			
		||||
    },
 | 
			
		||||
    "raw-body": {
 | 
			
		||||
      "version": "2.4.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz",
 | 
			
		||||
      "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "bytes": "3.1.0",
 | 
			
		||||
        "http-errors": "1.7.2",
 | 
			
		||||
        "iconv-lite": "0.4.24",
 | 
			
		||||
        "unpipe": "1.0.0"
 | 
			
		||||
      },
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "bytes": {
 | 
			
		||||
          "version": "3.1.0",
 | 
			
		||||
          "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
 | 
			
		||||
          "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg=="
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "referrer-policy": {
 | 
			
		||||
      "version": "1.2.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/referrer-policy/-/referrer-policy-1.2.0.tgz",
 | 
			
		||||
      "integrity": "sha512-LgQJIuS6nAy1Jd88DCQRemyE3mS+ispwlqMk3b0yjZ257fI1v9c+/p6SD5gP5FGyXUIgrNOAfmyioHwZtYv2VA=="
 | 
			
		||||
    },
 | 
			
		||||
    "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=="
 | 
			
		||||
    },
 | 
			
		||||
    "safer-buffer": {
 | 
			
		||||
      "version": "2.1.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
 | 
			
		||||
      "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
 | 
			
		||||
    },
 | 
			
		||||
    "send": {
 | 
			
		||||
      "version": "0.17.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz",
 | 
			
		||||
      "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "debug": "2.6.9",
 | 
			
		||||
        "depd": "~1.1.2",
 | 
			
		||||
        "destroy": "~1.0.4",
 | 
			
		||||
        "encodeurl": "~1.0.2",
 | 
			
		||||
        "escape-html": "~1.0.3",
 | 
			
		||||
        "etag": "~1.8.1",
 | 
			
		||||
        "fresh": "0.5.2",
 | 
			
		||||
        "http-errors": "~1.7.2",
 | 
			
		||||
        "mime": "1.6.0",
 | 
			
		||||
        "ms": "2.1.1",
 | 
			
		||||
        "on-finished": "~2.3.0",
 | 
			
		||||
        "range-parser": "~1.2.1",
 | 
			
		||||
        "statuses": "~1.5.0"
 | 
			
		||||
      },
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "ms": {
 | 
			
		||||
          "version": "2.1.1",
 | 
			
		||||
          "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
 | 
			
		||||
          "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg=="
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "serve-static": {
 | 
			
		||||
      "version": "1.14.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz",
 | 
			
		||||
      "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "encodeurl": "~1.0.2",
 | 
			
		||||
        "escape-html": "~1.0.3",
 | 
			
		||||
        "parseurl": "~1.3.3",
 | 
			
		||||
        "send": "0.17.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "setprototypeof": {
 | 
			
		||||
      "version": "1.1.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz",
 | 
			
		||||
      "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw=="
 | 
			
		||||
    },
 | 
			
		||||
    "source-map": {
 | 
			
		||||
      "version": "0.6.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
 | 
			
		||||
      "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
 | 
			
		||||
    },
 | 
			
		||||
    "statuses": {
 | 
			
		||||
      "version": "1.5.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
 | 
			
		||||
      "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow="
 | 
			
		||||
    },
 | 
			
		||||
    "supports-color": {
 | 
			
		||||
      "version": "7.1.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz",
 | 
			
		||||
      "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "has-flag": "^4.0.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "toidentifier": {
 | 
			
		||||
      "version": "1.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz",
 | 
			
		||||
      "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw=="
 | 
			
		||||
    },
 | 
			
		||||
    "type-is": {
 | 
			
		||||
      "version": "1.6.18",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
 | 
			
		||||
      "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "media-typer": "0.3.0",
 | 
			
		||||
        "mime-types": "~2.1.24"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "uglify-js": {
 | 
			
		||||
      "version": "3.8.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.8.0.tgz",
 | 
			
		||||
      "integrity": "sha512-ugNSTT8ierCsDHso2jkBHXYrU8Y5/fY2ZUprfrJUiD7YpuFvV4jODLFmb3h4btQjqr5Nh4TX4XtgDfCU1WdioQ==",
 | 
			
		||||
      "optional": true,
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "commander": "~2.20.3",
 | 
			
		||||
        "source-map": "~0.6.1"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "unpipe": {
 | 
			
		||||
      "version": "1.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
 | 
			
		||||
      "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw="
 | 
			
		||||
    },
 | 
			
		||||
    "utils-merge": {
 | 
			
		||||
      "version": "1.0.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
 | 
			
		||||
      "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM="
 | 
			
		||||
    },
 | 
			
		||||
    "vary": {
 | 
			
		||||
      "version": "1.1.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
 | 
			
		||||
      "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
 | 
			
		||||
    },
 | 
			
		||||
    "wordwrap": {
 | 
			
		||||
      "version": "0.0.3",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
 | 
			
		||||
      "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc="
 | 
			
		||||
    },
 | 
			
		||||
    "wrappy": {
 | 
			
		||||
      "version": "1.0.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
 | 
			
		||||
      "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
 | 
			
		||||
    },
 | 
			
		||||
    "x-xss-protection": {
 | 
			
		||||
      "version": "1.3.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/x-xss-protection/-/x-xss-protection-1.3.0.tgz",
 | 
			
		||||
      "integrity": "sha512-kpyBI9TlVipZO4diReZMAHWtS0MMa/7Kgx8hwG/EuZLiA6sg4Ah/4TRdASHhRRN3boobzcYgFRUFSgHRge6Qhg=="
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										22
									
								
								package.json
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								package.json
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,22 @@
 | 
			
		|||
{
 | 
			
		||||
  "name": "sor-dog",
 | 
			
		||||
  "version": "1.0.0",
 | 
			
		||||
  "description": "",
 | 
			
		||||
  "main": "index.js",
 | 
			
		||||
  "dependencies": {
 | 
			
		||||
    "chalk": "^3.0.0",
 | 
			
		||||
    "compression": "^1.7.4",
 | 
			
		||||
    "cors": "^2.8.5",
 | 
			
		||||
    "express": "^4.17.1",
 | 
			
		||||
    "express-handlebars": "^3.1.0",
 | 
			
		||||
    "helmet": "^3.21.2",
 | 
			
		||||
    "morgan": "^1.9.1"
 | 
			
		||||
  },
 | 
			
		||||
  "devDependencies": {},
 | 
			
		||||
  "scripts": {
 | 
			
		||||
    "test": "echo \"Error: no test specified\" && exit 1"
 | 
			
		||||
  },
 | 
			
		||||
  "keywords": [],
 | 
			
		||||
  "author": "",
 | 
			
		||||
  "license": "ISC"
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										3
									
								
								run.js
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								run.js
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,3 @@
 | 
			
		|||
const server = require('./server');
 | 
			
		||||
 | 
			
		||||
server();
 | 
			
		||||
							
								
								
									
										99
									
								
								server.js
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										99
									
								
								server.js
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,99 @@
 | 
			
		|||
//! Deps
 | 
			
		||||
const express = require('express');
 | 
			
		||||
const helmet = require('helmet');
 | 
			
		||||
const compression = require('compression');
 | 
			
		||||
const cors = require('cors');
 | 
			
		||||
const morgan = require('morgan');
 | 
			
		||||
const chalk = require('chalk');
 | 
			
		||||
const hbs = require('express-handlebars');
 | 
			
		||||
let {
 | 
			
		||||
    port,
 | 
			
		||||
    hostname
 | 
			
		||||
} = {
 | 
			
		||||
    port: 50269
 | 
			
		||||
};
 | 
			
		||||
const con = require('./constants')
 | 
			
		||||
 | 
			
		||||
const app = express();
 | 
			
		||||
 | 
			
		||||
app.engine(
 | 
			
		||||
    'hbs',
 | 
			
		||||
    hbs({
 | 
			
		||||
        extname: 'hbs',
 | 
			
		||||
        defaultView: 'default'
 | 
			
		||||
    })
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
app.set('view engine', 'hbs');
 | 
			
		||||
app.set('json spaces', 4);
 | 
			
		||||
app.use('/assets', express.static('./assets'));
 | 
			
		||||
app.use(express.json());
 | 
			
		||||
app.use(
 | 
			
		||||
    express.urlencoded({
 | 
			
		||||
        extended: true
 | 
			
		||||
    })
 | 
			
		||||
);
 | 
			
		||||
app.use(helmet());
 | 
			
		||||
app.use(compression());
 | 
			
		||||
app.use(cors());
 | 
			
		||||
// Logging
 | 
			
		||||
app.use(
 | 
			
		||||
    morgan((tokens, req, res) => {
 | 
			
		||||
        return [
 | 
			
		||||
            chalk.hex('#34ace0').bold(`[ ${tokens.method(req, res)} ]`),
 | 
			
		||||
            chalk.hex('#ffb142').bold(tokens.status(req, res)),
 | 
			
		||||
            chalk.hex('#ff5252').bold(req.hostname + tokens.url(req, res)),
 | 
			
		||||
            chalk.hex('#2ed573').bold(tokens['response-time'](req, res) + 'ms'),
 | 
			
		||||
            chalk.hex('#f78fb3').bold('@ ' + tokens.date(req, res))
 | 
			
		||||
        ].join(' ');
 | 
			
		||||
    })
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
module.exports = async =>{
 | 
			
		||||
    app.get('/', async (req, res) => {
 | 
			
		||||
        res.render('index', {
 | 
			
		||||
            layout: 'main',
 | 
			
		||||
            name: con.name,
 | 
			
		||||
            host: req.hostname,
 | 
			
		||||
            social: [{
 | 
			
		||||
                    name: 'Twitter',
 | 
			
		||||
                    link: 'twitter.com/yaisor',
 | 
			
		||||
                }, {
 | 
			
		||||
                    name: 'Patreon',
 | 
			
		||||
                    link: 'patreon.com/sorsor',
 | 
			
		||||
                }, {
 | 
			
		||||
                    name: 'Bandcamp',
 | 
			
		||||
                    link: 'sorsor.bandcamp.com/',
 | 
			
		||||
                }, {
 | 
			
		||||
                    name: 'Youtube',
 | 
			
		||||
                    link: 'youtube.com/sorsor',
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    name: 'Discord',
 | 
			
		||||
                    link: 'sor.dog/discord',
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
            ]
 | 
			
		||||
        });
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    app.get('/twitter', (req, res) => {
 | 
			
		||||
        res.redirect(con.socials.twitter);
 | 
			
		||||
    });
 | 
			
		||||
    app.get('/patreon', (req, res) => {
 | 
			
		||||
        res.redirect(con.socials.patreon);
 | 
			
		||||
    });
 | 
			
		||||
    app.get('/bandcamp', (req, res) => {
 | 
			
		||||
        res.redirect(con.socials.bandcamp);
 | 
			
		||||
    });
 | 
			
		||||
    app.get('/youtube', (req, res) => {
 | 
			
		||||
        res.redirect(con.socials.youtube);
 | 
			
		||||
    });
 | 
			
		||||
    app.get('/discord', (req, res) => {
 | 
			
		||||
        res.redirect(con.socials.discord);
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    app.listen(port /* , hostname */ , () => {
 | 
			
		||||
        console.log(`[ Server ] Listening on ${port}`);
 | 
			
		||||
    });
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										18
									
								
								views/index.hbs
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								views/index.hbs
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,18 @@
 | 
			
		|||
    <div id="main">
 | 
			
		||||
        <section class="socials">
 | 
			
		||||
            <img class="them" src="./assets/images/them.png" alt="Sor's Icon" srcset="">
 | 
			
		||||
            {{#each social}}
 | 
			
		||||
            <div id="{{name}}" ><a href="https://{{link}}">{{name}}</a></div>
 | 
			
		||||
            {{/each}}
 | 
			
		||||
        </section>
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    <div class="credits">
 | 
			
		||||
        <div class="sor">
 | 
			
		||||
            <img class="logo" src="./assets/images/sor_white.png" alt="Sor's Logo">
 | 
			
		||||
        </div>
 | 
			
		||||
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="creator">
 | 
			
		||||
        <p>made by <a href="https://floofy.dev">floofy.dev</a></p>
 | 
			
		||||
    </div>
 | 
			
		||||
							
								
								
									
										29
									
								
								views/layouts/main.hbs
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								views/layouts/main.hbs
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,29 @@
 | 
			
		|||
<!DOCTYPE html>
 | 
			
		||||
<html lang="en">
 | 
			
		||||
 | 
			
		||||
<head>
 | 
			
		||||
    <title>YaiSor | sor.dog</title>
 | 
			
		||||
    <meta charset="UTF-8">
 | 
			
		||||
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
 | 
			
		||||
 | 
			
		||||
    <link rel="stylesheet" type="text/css" href="./assets/css/main.css">
 | 
			
		||||
    
 | 
			
		||||
    <link rel="icon" type="image/png" href="/assets/images/them.png" sizes="32x32">
 | 
			
		||||
    <link rel="icon" type="image/png" href="/assets/images/them.png" sizes="96x96">
 | 
			
		||||
    <link rel="apple-touch-icon" sizes="180x180" href="/assets/images/them.png">
 | 
			
		||||
 | 
			
		||||
    <meta name="theme-color" content="#ffffff">
 | 
			
		||||
    <meta property="og:title" content="sor">
 | 
			
		||||
    <meta property="og:type" content="website">
 | 
			
		||||
    <meta property="og:url" content="https://sor.dog">
 | 
			
		||||
    <meta property="og:description" content="your one-stop shop for all things sor">
 | 
			
		||||
    <meta property="og:image" content="/assets/images/moon.png">
 | 
			
		||||
 | 
			
		||||
</head>
 | 
			
		||||
 | 
			
		||||
<body>
 | 
			
		||||
  {{{body}}}
 | 
			
		||||
</body>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
</html>
 | 
			
		||||
		Loading…
	
	Add table
		
		Reference in a new issue