added fontawsome localy
| @ -70,29 +70,32 @@ app.use('/api/user', middleware.auth, require('./routes/user')); | ||||
|  | ||||
| app.use('/api/token', middleware.auth, require('./routes/token')); | ||||
|  | ||||
| (async function(){ | ||||
|   app.api = await pvejs(app.conf.proxmox); | ||||
| })() | ||||
| if(app.conf.proxmox){ | ||||
|   (async function(){ | ||||
|     app.api = await pvejs(app.conf.proxmox); | ||||
|     setInterval(async function(){ | ||||
|       try{ | ||||
|         let res = await app.api.GET({path: '/cluster/resources'}); | ||||
|         let types = {}; | ||||
|  | ||||
| setInterval(async function(){ | ||||
|   try{ | ||||
|     let res = await app.api.GET({path: '/cluster/resources'}); | ||||
|     let types = {}; | ||||
|         for(let item of res.json){ | ||||
|           if(!types[item.type]){ | ||||
|              types[item.type] = []; | ||||
|           } | ||||
|           types[item.type].push(item); | ||||
|         } | ||||
|  | ||||
|     for(let item of res.json){ | ||||
|       if(!types[item.type]){ | ||||
|          types[item.type] = []; | ||||
|         app.p2p.publish('proxmox-cluster', {vpnSite: app.conf.vpnSite, data: types}); | ||||
|  | ||||
|       }catch(error){ | ||||
|         console.error('proxmox pub', error) | ||||
|       } | ||||
|       types[item.type].push(item); | ||||
|     } | ||||
|  | ||||
|     app.p2p.publish('proxmox-cluster', {vpnSite: app.conf.vpnSite, data: types}); | ||||
|     }, 10000); | ||||
|   })() | ||||
|    | ||||
| } | ||||
|  | ||||
|   }catch(error){ | ||||
|     console.error('proxmox pub', error) | ||||
|   } | ||||
|  | ||||
| }, 10000); | ||||
|  | ||||
| // Catch 404 and forward to error handler. If none of the above routes are | ||||
| // used, this is what will be called. | ||||
|  | ||||
| @ -3,7 +3,7 @@ | ||||
| module.exports = { | ||||
| 	userModel: 'ldap', // pam, redis, ldap | ||||
| 	ldap: { | ||||
| 		url: 'ldap://192.168.1.55:389, | ||||
| 		url: 'ldap://192.168.1.55:389', | ||||
| 		bindDN: 'cn=ldapclient service,ou=people,dc=theta42,dc=com', | ||||
| 		bindPassword: '__IN SRECREST FILE__', | ||||
| 		userBase: 'ou=people,dc=theta42,dc=com', | ||||
| @ -14,13 +14,13 @@ module.exports = { | ||||
| 	p2p: { | ||||
| 		listenPort: 7575 | ||||
| 	}, | ||||
| 	proxmox: { | ||||
| 		host: "__IN SRECREST FILE__",//this can be an ip or FQDN | ||||
| 		authInfo: { | ||||
| 			username: "__IN SRECREST FILE__",//this must include the username@realm | ||||
| 			apiToken: "__IN SRECREST FILE__"//In the future, i would like this to be encrypted | ||||
| 		},  | ||||
| 	}, | ||||
| 	// proxmox: { | ||||
| 	// 	host: "__IN SRECREST FILE__",//this can be an ip or FQDN | ||||
| 	// 	authInfo: { | ||||
| 	// 		username: "__IN SRECREST FILE__",//this must include the username@realm | ||||
| 	// 		apiToken: "__IN SRECREST FILE__"//In the future, i would like this to be encrypted | ||||
| 	// 	},  | ||||
| 	// }, | ||||
| 	vpnSite: { | ||||
| 		id: "__IN SRECREST FILE__", | ||||
| 		name: "__IN SRECREST FILE__", | ||||
|  | ||||
							
								
								
									
										12749
									
								
								nodejs/public/css/all.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										5
									
								
								nodejs/public/css/all.min.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										15
									
								
								nodejs/public/css/brands.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,15 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @font-face { | ||||
|   font-family: 'Font Awesome 5 Brands'; | ||||
|   font-style: normal; | ||||
|   font-weight: 400; | ||||
|   font-display: block; | ||||
|   src: url("../webfonts/fa-brands-400.eot"); | ||||
|   src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); } | ||||
|  | ||||
| .fab { | ||||
|   font-family: 'Font Awesome 5 Brands'; | ||||
|   font-weight: 400; } | ||||
							
								
								
									
										5
									
								
								nodejs/public/css/brands.min.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,5 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands";font-weight:400} | ||||
							
								
								
									
										5603
									
								
								nodejs/public/css/duotone.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										5
									
								
								nodejs/public/css/duotone.min.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										7105
									
								
								nodejs/public/css/fontawesome.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										5
									
								
								nodejs/public/css/fontawesome.min.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										15
									
								
								nodejs/public/css/light.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,15 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @font-face { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-style: normal; | ||||
|   font-weight: 300; | ||||
|   font-display: block; | ||||
|   src: url("../webfonts/fa-light-300.eot"); | ||||
|   src: url("../webfonts/fa-light-300.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-light-300.woff2") format("woff2"), url("../webfonts/fa-light-300.woff") format("woff"), url("../webfonts/fa-light-300.ttf") format("truetype"), url("../webfonts/fa-light-300.svg#fontawesome") format("svg"); } | ||||
|  | ||||
| .fal { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-weight: 300; } | ||||
							
								
								
									
										5
									
								
								nodejs/public/css/light.min.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,5 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @font-face{font-family:"Font Awesome 5 Pro";font-style:normal;font-weight:300;font-display:block;src:url(../webfonts/fa-light-300.eot);src:url(../webfonts/fa-light-300.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-light-300.woff2) format("woff2"),url(../webfonts/fa-light-300.woff) format("woff"),url(../webfonts/fa-light-300.ttf) format("truetype"),url(../webfonts/fa-light-300.svg#fontawesome) format("svg")}.fal{font-family:"Font Awesome 5 Pro";font-weight:300} | ||||
							
								
								
									
										15
									
								
								nodejs/public/css/regular.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,15 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @font-face { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-style: normal; | ||||
|   font-weight: 400; | ||||
|   font-display: block; | ||||
|   src: url("../webfonts/fa-regular-400.eot"); | ||||
|   src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); } | ||||
|  | ||||
| .far { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-weight: 400; } | ||||
							
								
								
									
										5
									
								
								nodejs/public/css/regular.min.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,5 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @font-face{font-family:"Font Awesome 5 Pro";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-family:"Font Awesome 5 Pro";font-weight:400} | ||||
							
								
								
									
										16
									
								
								nodejs/public/css/solid.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,16 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @font-face { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-style: normal; | ||||
|   font-weight: 900; | ||||
|   font-display: block; | ||||
|   src: url("../webfonts/fa-solid-900.eot"); | ||||
|   src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); } | ||||
|  | ||||
| .fa, | ||||
| .fas { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-weight: 900; } | ||||
							
								
								
									
										5
									
								
								nodejs/public/css/solid.min.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,5 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @font-face{font-family:"Font Awesome 5 Pro";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.fas{font-family:"Font Awesome 5 Pro";font-weight:900} | ||||
							
								
								
									
										371
									
								
								nodejs/public/css/svg-with-js.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,371 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| svg:not(:root).svg-inline--fa { | ||||
|   overflow: visible; } | ||||
|  | ||||
| .svg-inline--fa { | ||||
|   display: inline-block; | ||||
|   font-size: inherit; | ||||
|   height: 1em; | ||||
|   overflow: visible; | ||||
|   vertical-align: -.125em; } | ||||
|   .svg-inline--fa.fa-lg { | ||||
|     vertical-align: -.225em; } | ||||
|   .svg-inline--fa.fa-w-1 { | ||||
|     width: 0.0625em; } | ||||
|   .svg-inline--fa.fa-w-2 { | ||||
|     width: 0.125em; } | ||||
|   .svg-inline--fa.fa-w-3 { | ||||
|     width: 0.1875em; } | ||||
|   .svg-inline--fa.fa-w-4 { | ||||
|     width: 0.25em; } | ||||
|   .svg-inline--fa.fa-w-5 { | ||||
|     width: 0.3125em; } | ||||
|   .svg-inline--fa.fa-w-6 { | ||||
|     width: 0.375em; } | ||||
|   .svg-inline--fa.fa-w-7 { | ||||
|     width: 0.4375em; } | ||||
|   .svg-inline--fa.fa-w-8 { | ||||
|     width: 0.5em; } | ||||
|   .svg-inline--fa.fa-w-9 { | ||||
|     width: 0.5625em; } | ||||
|   .svg-inline--fa.fa-w-10 { | ||||
|     width: 0.625em; } | ||||
|   .svg-inline--fa.fa-w-11 { | ||||
|     width: 0.6875em; } | ||||
|   .svg-inline--fa.fa-w-12 { | ||||
|     width: 0.75em; } | ||||
|   .svg-inline--fa.fa-w-13 { | ||||
|     width: 0.8125em; } | ||||
|   .svg-inline--fa.fa-w-14 { | ||||
|     width: 0.875em; } | ||||
|   .svg-inline--fa.fa-w-15 { | ||||
|     width: 0.9375em; } | ||||
|   .svg-inline--fa.fa-w-16 { | ||||
|     width: 1em; } | ||||
|   .svg-inline--fa.fa-w-17 { | ||||
|     width: 1.0625em; } | ||||
|   .svg-inline--fa.fa-w-18 { | ||||
|     width: 1.125em; } | ||||
|   .svg-inline--fa.fa-w-19 { | ||||
|     width: 1.1875em; } | ||||
|   .svg-inline--fa.fa-w-20 { | ||||
|     width: 1.25em; } | ||||
|   .svg-inline--fa.fa-pull-left { | ||||
|     margin-right: .3em; | ||||
|     width: auto; } | ||||
|   .svg-inline--fa.fa-pull-right { | ||||
|     margin-left: .3em; | ||||
|     width: auto; } | ||||
|   .svg-inline--fa.fa-border { | ||||
|     height: 1.5em; } | ||||
|   .svg-inline--fa.fa-li { | ||||
|     width: 2em; } | ||||
|   .svg-inline--fa.fa-fw { | ||||
|     width: 1.25em; } | ||||
|  | ||||
| .fa-layers svg.svg-inline--fa { | ||||
|   bottom: 0; | ||||
|   left: 0; | ||||
|   margin: auto; | ||||
|   position: absolute; | ||||
|   right: 0; | ||||
|   top: 0; } | ||||
|  | ||||
| .fa-layers { | ||||
|   display: inline-block; | ||||
|   height: 1em; | ||||
|   position: relative; | ||||
|   text-align: center; | ||||
|   vertical-align: -.125em; | ||||
|   width: 1em; } | ||||
|   .fa-layers svg.svg-inline--fa { | ||||
|     -webkit-transform-origin: center center; | ||||
|             transform-origin: center center; } | ||||
|  | ||||
| .fa-layers-text, .fa-layers-counter { | ||||
|   display: inline-block; | ||||
|   position: absolute; | ||||
|   text-align: center; } | ||||
|  | ||||
| .fa-layers-text { | ||||
|   left: 50%; | ||||
|   top: 50%; | ||||
|   -webkit-transform: translate(-50%, -50%); | ||||
|           transform: translate(-50%, -50%); | ||||
|   -webkit-transform-origin: center center; | ||||
|           transform-origin: center center; } | ||||
|  | ||||
| .fa-layers-counter { | ||||
|   background-color: #ff253a; | ||||
|   border-radius: 1em; | ||||
|   -webkit-box-sizing: border-box; | ||||
|           box-sizing: border-box; | ||||
|   color: #fff; | ||||
|   height: 1.5em; | ||||
|   line-height: 1; | ||||
|   max-width: 5em; | ||||
|   min-width: 1.5em; | ||||
|   overflow: hidden; | ||||
|   padding: .25em; | ||||
|   right: 0; | ||||
|   text-overflow: ellipsis; | ||||
|   top: 0; | ||||
|   -webkit-transform: scale(0.25); | ||||
|           transform: scale(0.25); | ||||
|   -webkit-transform-origin: top right; | ||||
|           transform-origin: top right; } | ||||
|  | ||||
| .fa-layers-bottom-right { | ||||
|   bottom: 0; | ||||
|   right: 0; | ||||
|   top: auto; | ||||
|   -webkit-transform: scale(0.25); | ||||
|           transform: scale(0.25); | ||||
|   -webkit-transform-origin: bottom right; | ||||
|           transform-origin: bottom right; } | ||||
|  | ||||
| .fa-layers-bottom-left { | ||||
|   bottom: 0; | ||||
|   left: 0; | ||||
|   right: auto; | ||||
|   top: auto; | ||||
|   -webkit-transform: scale(0.25); | ||||
|           transform: scale(0.25); | ||||
|   -webkit-transform-origin: bottom left; | ||||
|           transform-origin: bottom left; } | ||||
|  | ||||
| .fa-layers-top-right { | ||||
|   right: 0; | ||||
|   top: 0; | ||||
|   -webkit-transform: scale(0.25); | ||||
|           transform: scale(0.25); | ||||
|   -webkit-transform-origin: top right; | ||||
|           transform-origin: top right; } | ||||
|  | ||||
| .fa-layers-top-left { | ||||
|   left: 0; | ||||
|   right: auto; | ||||
|   top: 0; | ||||
|   -webkit-transform: scale(0.25); | ||||
|           transform: scale(0.25); | ||||
|   -webkit-transform-origin: top left; | ||||
|           transform-origin: top left; } | ||||
|  | ||||
| .fa-lg { | ||||
|   font-size: 1.33333em; | ||||
|   line-height: 0.75em; | ||||
|   vertical-align: -.0667em; } | ||||
|  | ||||
| .fa-xs { | ||||
|   font-size: .75em; } | ||||
|  | ||||
| .fa-sm { | ||||
|   font-size: .875em; } | ||||
|  | ||||
| .fa-1x { | ||||
|   font-size: 1em; } | ||||
|  | ||||
| .fa-2x { | ||||
|   font-size: 2em; } | ||||
|  | ||||
| .fa-3x { | ||||
|   font-size: 3em; } | ||||
|  | ||||
| .fa-4x { | ||||
|   font-size: 4em; } | ||||
|  | ||||
| .fa-5x { | ||||
|   font-size: 5em; } | ||||
|  | ||||
| .fa-6x { | ||||
|   font-size: 6em; } | ||||
|  | ||||
| .fa-7x { | ||||
|   font-size: 7em; } | ||||
|  | ||||
| .fa-8x { | ||||
|   font-size: 8em; } | ||||
|  | ||||
| .fa-9x { | ||||
|   font-size: 9em; } | ||||
|  | ||||
| .fa-10x { | ||||
|   font-size: 10em; } | ||||
|  | ||||
| .fa-fw { | ||||
|   text-align: center; | ||||
|   width: 1.25em; } | ||||
|  | ||||
| .fa-ul { | ||||
|   list-style-type: none; | ||||
|   margin-left: 2.5em; | ||||
|   padding-left: 0; } | ||||
|   .fa-ul > li { | ||||
|     position: relative; } | ||||
|  | ||||
| .fa-li { | ||||
|   left: -2em; | ||||
|   position: absolute; | ||||
|   text-align: center; | ||||
|   width: 2em; | ||||
|   line-height: inherit; } | ||||
|  | ||||
| .fa-border { | ||||
|   border: solid 0.08em #eee; | ||||
|   border-radius: .1em; | ||||
|   padding: .2em .25em .15em; } | ||||
|  | ||||
| .fa-pull-left { | ||||
|   float: left; } | ||||
|  | ||||
| .fa-pull-right { | ||||
|   float: right; } | ||||
|  | ||||
| .fa.fa-pull-left, | ||||
| .fas.fa-pull-left, | ||||
| .far.fa-pull-left, | ||||
| .fal.fa-pull-left, | ||||
| .fab.fa-pull-left { | ||||
|   margin-right: .3em; } | ||||
|  | ||||
| .fa.fa-pull-right, | ||||
| .fas.fa-pull-right, | ||||
| .far.fa-pull-right, | ||||
| .fal.fa-pull-right, | ||||
| .fab.fa-pull-right { | ||||
|   margin-left: .3em; } | ||||
|  | ||||
| .fa-spin { | ||||
|   -webkit-animation: fa-spin 2s infinite linear; | ||||
|           animation: fa-spin 2s infinite linear; } | ||||
|  | ||||
| .fa-pulse { | ||||
|   -webkit-animation: fa-spin 1s infinite steps(8); | ||||
|           animation: fa-spin 1s infinite steps(8); } | ||||
|  | ||||
| @-webkit-keyframes fa-spin { | ||||
|   0% { | ||||
|     -webkit-transform: rotate(0deg); | ||||
|             transform: rotate(0deg); } | ||||
|   100% { | ||||
|     -webkit-transform: rotate(360deg); | ||||
|             transform: rotate(360deg); } } | ||||
|  | ||||
| @keyframes fa-spin { | ||||
|   0% { | ||||
|     -webkit-transform: rotate(0deg); | ||||
|             transform: rotate(0deg); } | ||||
|   100% { | ||||
|     -webkit-transform: rotate(360deg); | ||||
|             transform: rotate(360deg); } } | ||||
|  | ||||
| .fa-rotate-90 { | ||||
|   -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; | ||||
|   -webkit-transform: rotate(90deg); | ||||
|           transform: rotate(90deg); } | ||||
|  | ||||
| .fa-rotate-180 { | ||||
|   -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; | ||||
|   -webkit-transform: rotate(180deg); | ||||
|           transform: rotate(180deg); } | ||||
|  | ||||
| .fa-rotate-270 { | ||||
|   -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; | ||||
|   -webkit-transform: rotate(270deg); | ||||
|           transform: rotate(270deg); } | ||||
|  | ||||
| .fa-flip-horizontal { | ||||
|   -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; | ||||
|   -webkit-transform: scale(-1, 1); | ||||
|           transform: scale(-1, 1); } | ||||
|  | ||||
| .fa-flip-vertical { | ||||
|   -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; | ||||
|   -webkit-transform: scale(1, -1); | ||||
|           transform: scale(1, -1); } | ||||
|  | ||||
| .fa-flip-both, .fa-flip-horizontal.fa-flip-vertical { | ||||
|   -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; | ||||
|   -webkit-transform: scale(-1, -1); | ||||
|           transform: scale(-1, -1); } | ||||
|  | ||||
| :root .fa-rotate-90, | ||||
| :root .fa-rotate-180, | ||||
| :root .fa-rotate-270, | ||||
| :root .fa-flip-horizontal, | ||||
| :root .fa-flip-vertical, | ||||
| :root .fa-flip-both { | ||||
|   -webkit-filter: none; | ||||
|           filter: none; } | ||||
|  | ||||
| .fa-stack { | ||||
|   display: inline-block; | ||||
|   height: 2em; | ||||
|   position: relative; | ||||
|   width: 2.5em; } | ||||
|  | ||||
| .fa-stack-1x, | ||||
| .fa-stack-2x { | ||||
|   bottom: 0; | ||||
|   left: 0; | ||||
|   margin: auto; | ||||
|   position: absolute; | ||||
|   right: 0; | ||||
|   top: 0; } | ||||
|  | ||||
| .svg-inline--fa.fa-stack-1x { | ||||
|   height: 1em; | ||||
|   width: 1.25em; } | ||||
|  | ||||
| .svg-inline--fa.fa-stack-2x { | ||||
|   height: 2em; | ||||
|   width: 2.5em; } | ||||
|  | ||||
| .fa-inverse { | ||||
|   color: #fff; } | ||||
|  | ||||
| .sr-only { | ||||
|   border: 0; | ||||
|   clip: rect(0, 0, 0, 0); | ||||
|   height: 1px; | ||||
|   margin: -1px; | ||||
|   overflow: hidden; | ||||
|   padding: 0; | ||||
|   position: absolute; | ||||
|   width: 1px; } | ||||
|  | ||||
| .sr-only-focusable:active, .sr-only-focusable:focus { | ||||
|   clip: auto; | ||||
|   height: auto; | ||||
|   margin: 0; | ||||
|   overflow: visible; | ||||
|   position: static; | ||||
|   width: auto; } | ||||
|  | ||||
| .svg-inline--fa .fa-primary { | ||||
|   fill: var(--fa-primary-color, currentColor); | ||||
|   opacity: 1; | ||||
|   opacity: var(--fa-primary-opacity, 1); } | ||||
|  | ||||
| .svg-inline--fa .fa-secondary { | ||||
|   fill: var(--fa-secondary-color, currentColor); | ||||
|   opacity: 0.4; | ||||
|   opacity: var(--fa-secondary-opacity, 0.4); } | ||||
|  | ||||
| .svg-inline--fa.fa-swap-opacity .fa-primary { | ||||
|   opacity: 0.4; | ||||
|   opacity: var(--fa-secondary-opacity, 0.4); } | ||||
|  | ||||
| .svg-inline--fa.fa-swap-opacity .fa-secondary { | ||||
|   opacity: 1; | ||||
|   opacity: var(--fa-primary-opacity, 1); } | ||||
|  | ||||
| .svg-inline--fa mask .fa-primary, | ||||
| .svg-inline--fa mask .fa-secondary { | ||||
|   fill: black; } | ||||
|  | ||||
| .fad.fa-inverse { | ||||
|   color: #fff; } | ||||
							
								
								
									
										5
									
								
								nodejs/public/css/svg-with-js.min.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										2172
									
								
								nodejs/public/css/v4-shims.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										5
									
								
								nodejs/public/css/v4-shims.min.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										10951
									
								
								nodejs/public/js/all.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										5
									
								
								nodejs/public/js/all.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										577
									
								
								nodejs/public/js/brands.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										5
									
								
								nodejs/public/js/brands.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										998
									
								
								nodejs/public/js/conflict-detection.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,998 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| (function (global, factory) { | ||||
|   typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : | ||||
|   typeof define === 'function' && define.amd ? define(['exports'], factory) : | ||||
|   (factory((global['fontawesome-pro-conflict-detection'] = {}))); | ||||
| }(this, (function (exports) { 'use strict'; | ||||
|  | ||||
|   function _typeof(obj) { | ||||
|     if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { | ||||
|       _typeof = function (obj) { | ||||
|         return typeof obj; | ||||
|       }; | ||||
|     } else { | ||||
|       _typeof = function (obj) { | ||||
|         return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; | ||||
|       }; | ||||
|     } | ||||
|  | ||||
|     return _typeof(obj); | ||||
|   } | ||||
|  | ||||
|   function _defineProperty(obj, key, value) { | ||||
|     if (key in obj) { | ||||
|       Object.defineProperty(obj, key, { | ||||
|         value: value, | ||||
|         enumerable: true, | ||||
|         configurable: true, | ||||
|         writable: true | ||||
|       }); | ||||
|     } else { | ||||
|       obj[key] = value; | ||||
|     } | ||||
|  | ||||
|     return obj; | ||||
|   } | ||||
|  | ||||
|   function _objectSpread(target) { | ||||
|     for (var i = 1; i < arguments.length; i++) { | ||||
|       var source = arguments[i] != null ? arguments[i] : {}; | ||||
|       var ownKeys = Object.keys(source); | ||||
|  | ||||
|       if (typeof Object.getOwnPropertySymbols === 'function') { | ||||
|         ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { | ||||
|           return Object.getOwnPropertyDescriptor(source, sym).enumerable; | ||||
|         })); | ||||
|       } | ||||
|  | ||||
|       ownKeys.forEach(function (key) { | ||||
|         _defineProperty(target, key, source[key]); | ||||
|       }); | ||||
|     } | ||||
|  | ||||
|     return target; | ||||
|   } | ||||
|  | ||||
|   var _WINDOW = {}; | ||||
|   var _DOCUMENT = {}; | ||||
|  | ||||
|   try { | ||||
|     if (typeof window !== 'undefined') _WINDOW = window; | ||||
|     if (typeof document !== 'undefined') _DOCUMENT = document; | ||||
|   } catch (e) {} | ||||
|  | ||||
|   var _ref = _WINDOW.navigator || {}, | ||||
|       _ref$userAgent = _ref.userAgent, | ||||
|       userAgent = _ref$userAgent === void 0 ? '' : _ref$userAgent; | ||||
|  | ||||
|   var WINDOW = _WINDOW; | ||||
|   var DOCUMENT = _DOCUMENT; | ||||
|   var IS_BROWSER = !!WINDOW.document; | ||||
|   var IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === 'function' && typeof DOCUMENT.createElement === 'function'; | ||||
|   var IS_IE = ~userAgent.indexOf('MSIE') || ~userAgent.indexOf('Trident/'); | ||||
|  | ||||
|   var functions = []; | ||||
|  | ||||
|   var listener = function listener() { | ||||
|     DOCUMENT.removeEventListener('DOMContentLoaded', listener); | ||||
|     loaded = 1; | ||||
|     functions.map(function (fn) { | ||||
|       return fn(); | ||||
|     }); | ||||
|   }; | ||||
|  | ||||
|   var loaded = false; | ||||
|  | ||||
|   if (IS_DOM) { | ||||
|     loaded = (DOCUMENT.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(DOCUMENT.readyState); | ||||
|     if (!loaded) DOCUMENT.addEventListener('DOMContentLoaded', listener); | ||||
|   } | ||||
|  | ||||
|   function domready (fn) { | ||||
|     if (!IS_DOM) return; | ||||
|     loaded ? setTimeout(fn, 0) : functions.push(fn); | ||||
|   } | ||||
|  | ||||
|   function report (_ref) { | ||||
|     var nodesTested = _ref.nodesTested, | ||||
|         nodesFound = _ref.nodesFound; | ||||
|     var timedOutTests = {}; | ||||
|  | ||||
|     for (var key in nodesFound) { | ||||
|       if (!(nodesTested.conflict[key] || nodesTested.noConflict[key])) { | ||||
|         timedOutTests[key] = nodesFound[key]; | ||||
|       } | ||||
|     } | ||||
|  | ||||
|     var conflictsCount = Object.keys(nodesTested.conflict).length; | ||||
|  | ||||
|     if (conflictsCount > 0) { | ||||
|       console.info("%cConflict".concat(conflictsCount > 1 ? 's' : '', " found:"), 'color: darkred; font-size: large'); | ||||
|       var data = {}; | ||||
|  | ||||
|       for (var _key in nodesTested.conflict) { | ||||
|         var item = nodesTested.conflict[_key]; | ||||
|         data[_key] = { | ||||
|           'tagName': item.tagName, | ||||
|           'src/href': item.src || item.href || 'n/a', | ||||
|           'innerText excerpt': item.innerText && item.innerText !== '' ? item.innerText.slice(0, 200) + '...' : '(empty)' | ||||
|         }; | ||||
|       } | ||||
|  | ||||
|       console.table(data); | ||||
|     } | ||||
|  | ||||
|     var noConflictsCount = Object.keys(nodesTested.noConflict).length; | ||||
|  | ||||
|     if (noConflictsCount > 0) { | ||||
|       console.info("%cNo conflict".concat(noConflictsCount > 1 ? 's' : '', " found with ").concat(noConflictsCount == 1 ? 'this' : 'these', ":"), 'color: green; font-size: large'); | ||||
|       var _data = {}; | ||||
|  | ||||
|       for (var _key2 in nodesTested.noConflict) { | ||||
|         var _item = nodesTested.noConflict[_key2]; | ||||
|         _data[_key2] = { | ||||
|           'tagName': _item.tagName, | ||||
|           'src/href': _item.src || _item.href || 'n/a', | ||||
|           'innerText excerpt': _item.innerText && _item.innerText !== '' ? _item.innerText.slice(0, 200) + '...' : '(empty)' | ||||
|         }; | ||||
|       } | ||||
|  | ||||
|       console.table(_data); | ||||
|     } | ||||
|  | ||||
|     var timeOutCount = Object.keys(timedOutTests).length; | ||||
|  | ||||
|     if (timeOutCount > 0) { | ||||
|       console.info("%cLeftovers--we timed out before collecting test results for ".concat(timeOutCount == 1 ? 'this' : 'these', ":"), 'color: blue; font-size: large'); | ||||
|       var _data2 = {}; | ||||
|  | ||||
|       for (var _key3 in timedOutTests) { | ||||
|         var _item2 = timedOutTests[_key3]; | ||||
|         _data2[_key3] = { | ||||
|           'tagName': _item2.tagName, | ||||
|           'src/href': _item2.src || _item2.href || 'n/a', | ||||
|           'innerText excerpt': _item2.innerText && _item2.innerText !== '' ? _item2.innerText.slice(0, 200) + '...' : '(empty)' | ||||
|         }; | ||||
|       } | ||||
|  | ||||
|       console.table(_data2); | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   var commonjsGlobal = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {}; | ||||
|  | ||||
|   function createCommonjsModule(fn, module) { | ||||
|   	return module = { exports: {} }, fn(module, module.exports), module.exports; | ||||
|   } | ||||
|  | ||||
|   var md5 = createCommonjsModule(function (module) { | ||||
|  | ||||
|     (function ($) { | ||||
|       /** | ||||
|        * Add integers, wrapping at 2^32. | ||||
|        * This uses 16-bit operations internally to work around bugs in interpreters. | ||||
|        * | ||||
|        * @param {number} x First integer | ||||
|        * @param {number} y Second integer | ||||
|        * @returns {number} Sum | ||||
|        */ | ||||
|  | ||||
|       function safeAdd(x, y) { | ||||
|         var lsw = (x & 0xffff) + (y & 0xffff); | ||||
|         var msw = (x >> 16) + (y >> 16) + (lsw >> 16); | ||||
|         return msw << 16 | lsw & 0xffff; | ||||
|       } | ||||
|       /** | ||||
|        * Bitwise rotate a 32-bit number to the left. | ||||
|        * | ||||
|        * @param {number} num 32-bit number | ||||
|        * @param {number} cnt Rotation count | ||||
|        * @returns {number} Rotated number | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function bitRotateLeft(num, cnt) { | ||||
|         return num << cnt | num >>> 32 - cnt; | ||||
|       } | ||||
|       /** | ||||
|        * Basic operation the algorithm uses. | ||||
|        * | ||||
|        * @param {number} q q | ||||
|        * @param {number} a a | ||||
|        * @param {number} b b | ||||
|        * @param {number} x x | ||||
|        * @param {number} s s | ||||
|        * @param {number} t t | ||||
|        * @returns {number} Result | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function md5cmn(q, a, b, x, s, t) { | ||||
|         return safeAdd(bitRotateLeft(safeAdd(safeAdd(a, q), safeAdd(x, t)), s), b); | ||||
|       } | ||||
|       /** | ||||
|        * Basic operation the algorithm uses. | ||||
|        * | ||||
|        * @param {number} a a | ||||
|        * @param {number} b b | ||||
|        * @param {number} c c | ||||
|        * @param {number} d d | ||||
|        * @param {number} x x | ||||
|        * @param {number} s s | ||||
|        * @param {number} t t | ||||
|        * @returns {number} Result | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function md5ff(a, b, c, d, x, s, t) { | ||||
|         return md5cmn(b & c | ~b & d, a, b, x, s, t); | ||||
|       } | ||||
|       /** | ||||
|        * Basic operation the algorithm uses. | ||||
|        * | ||||
|        * @param {number} a a | ||||
|        * @param {number} b b | ||||
|        * @param {number} c c | ||||
|        * @param {number} d d | ||||
|        * @param {number} x x | ||||
|        * @param {number} s s | ||||
|        * @param {number} t t | ||||
|        * @returns {number} Result | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function md5gg(a, b, c, d, x, s, t) { | ||||
|         return md5cmn(b & d | c & ~d, a, b, x, s, t); | ||||
|       } | ||||
|       /** | ||||
|        * Basic operation the algorithm uses. | ||||
|        * | ||||
|        * @param {number} a a | ||||
|        * @param {number} b b | ||||
|        * @param {number} c c | ||||
|        * @param {number} d d | ||||
|        * @param {number} x x | ||||
|        * @param {number} s s | ||||
|        * @param {number} t t | ||||
|        * @returns {number} Result | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function md5hh(a, b, c, d, x, s, t) { | ||||
|         return md5cmn(b ^ c ^ d, a, b, x, s, t); | ||||
|       } | ||||
|       /** | ||||
|        * Basic operation the algorithm uses. | ||||
|        * | ||||
|        * @param {number} a a | ||||
|        * @param {number} b b | ||||
|        * @param {number} c c | ||||
|        * @param {number} d d | ||||
|        * @param {number} x x | ||||
|        * @param {number} s s | ||||
|        * @param {number} t t | ||||
|        * @returns {number} Result | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function md5ii(a, b, c, d, x, s, t) { | ||||
|         return md5cmn(c ^ (b | ~d), a, b, x, s, t); | ||||
|       } | ||||
|       /** | ||||
|        * Calculate the MD5 of an array of little-endian words, and a bit length. | ||||
|        * | ||||
|        * @param {Array} x Array of little-endian words | ||||
|        * @param {number} len Bit length | ||||
|        * @returns {Array<number>} MD5 Array | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function binlMD5(x, len) { | ||||
|         /* append padding */ | ||||
|         x[len >> 5] |= 0x80 << len % 32; | ||||
|         x[(len + 64 >>> 9 << 4) + 14] = len; | ||||
|         var i; | ||||
|         var olda; | ||||
|         var oldb; | ||||
|         var oldc; | ||||
|         var oldd; | ||||
|         var a = 1732584193; | ||||
|         var b = -271733879; | ||||
|         var c = -1732584194; | ||||
|         var d = 271733878; | ||||
|  | ||||
|         for (i = 0; i < x.length; i += 16) { | ||||
|           olda = a; | ||||
|           oldb = b; | ||||
|           oldc = c; | ||||
|           oldd = d; | ||||
|           a = md5ff(a, b, c, d, x[i], 7, -680876936); | ||||
|           d = md5ff(d, a, b, c, x[i + 1], 12, -389564586); | ||||
|           c = md5ff(c, d, a, b, x[i + 2], 17, 606105819); | ||||
|           b = md5ff(b, c, d, a, x[i + 3], 22, -1044525330); | ||||
|           a = md5ff(a, b, c, d, x[i + 4], 7, -176418897); | ||||
|           d = md5ff(d, a, b, c, x[i + 5], 12, 1200080426); | ||||
|           c = md5ff(c, d, a, b, x[i + 6], 17, -1473231341); | ||||
|           b = md5ff(b, c, d, a, x[i + 7], 22, -45705983); | ||||
|           a = md5ff(a, b, c, d, x[i + 8], 7, 1770035416); | ||||
|           d = md5ff(d, a, b, c, x[i + 9], 12, -1958414417); | ||||
|           c = md5ff(c, d, a, b, x[i + 10], 17, -42063); | ||||
|           b = md5ff(b, c, d, a, x[i + 11], 22, -1990404162); | ||||
|           a = md5ff(a, b, c, d, x[i + 12], 7, 1804603682); | ||||
|           d = md5ff(d, a, b, c, x[i + 13], 12, -40341101); | ||||
|           c = md5ff(c, d, a, b, x[i + 14], 17, -1502002290); | ||||
|           b = md5ff(b, c, d, a, x[i + 15], 22, 1236535329); | ||||
|           a = md5gg(a, b, c, d, x[i + 1], 5, -165796510); | ||||
|           d = md5gg(d, a, b, c, x[i + 6], 9, -1069501632); | ||||
|           c = md5gg(c, d, a, b, x[i + 11], 14, 643717713); | ||||
|           b = md5gg(b, c, d, a, x[i], 20, -373897302); | ||||
|           a = md5gg(a, b, c, d, x[i + 5], 5, -701558691); | ||||
|           d = md5gg(d, a, b, c, x[i + 10], 9, 38016083); | ||||
|           c = md5gg(c, d, a, b, x[i + 15], 14, -660478335); | ||||
|           b = md5gg(b, c, d, a, x[i + 4], 20, -405537848); | ||||
|           a = md5gg(a, b, c, d, x[i + 9], 5, 568446438); | ||||
|           d = md5gg(d, a, b, c, x[i + 14], 9, -1019803690); | ||||
|           c = md5gg(c, d, a, b, x[i + 3], 14, -187363961); | ||||
|           b = md5gg(b, c, d, a, x[i + 8], 20, 1163531501); | ||||
|           a = md5gg(a, b, c, d, x[i + 13], 5, -1444681467); | ||||
|           d = md5gg(d, a, b, c, x[i + 2], 9, -51403784); | ||||
|           c = md5gg(c, d, a, b, x[i + 7], 14, 1735328473); | ||||
|           b = md5gg(b, c, d, a, x[i + 12], 20, -1926607734); | ||||
|           a = md5hh(a, b, c, d, x[i + 5], 4, -378558); | ||||
|           d = md5hh(d, a, b, c, x[i + 8], 11, -2022574463); | ||||
|           c = md5hh(c, d, a, b, x[i + 11], 16, 1839030562); | ||||
|           b = md5hh(b, c, d, a, x[i + 14], 23, -35309556); | ||||
|           a = md5hh(a, b, c, d, x[i + 1], 4, -1530992060); | ||||
|           d = md5hh(d, a, b, c, x[i + 4], 11, 1272893353); | ||||
|           c = md5hh(c, d, a, b, x[i + 7], 16, -155497632); | ||||
|           b = md5hh(b, c, d, a, x[i + 10], 23, -1094730640); | ||||
|           a = md5hh(a, b, c, d, x[i + 13], 4, 681279174); | ||||
|           d = md5hh(d, a, b, c, x[i], 11, -358537222); | ||||
|           c = md5hh(c, d, a, b, x[i + 3], 16, -722521979); | ||||
|           b = md5hh(b, c, d, a, x[i + 6], 23, 76029189); | ||||
|           a = md5hh(a, b, c, d, x[i + 9], 4, -640364487); | ||||
|           d = md5hh(d, a, b, c, x[i + 12], 11, -421815835); | ||||
|           c = md5hh(c, d, a, b, x[i + 15], 16, 530742520); | ||||
|           b = md5hh(b, c, d, a, x[i + 2], 23, -995338651); | ||||
|           a = md5ii(a, b, c, d, x[i], 6, -198630844); | ||||
|           d = md5ii(d, a, b, c, x[i + 7], 10, 1126891415); | ||||
|           c = md5ii(c, d, a, b, x[i + 14], 15, -1416354905); | ||||
|           b = md5ii(b, c, d, a, x[i + 5], 21, -57434055); | ||||
|           a = md5ii(a, b, c, d, x[i + 12], 6, 1700485571); | ||||
|           d = md5ii(d, a, b, c, x[i + 3], 10, -1894986606); | ||||
|           c = md5ii(c, d, a, b, x[i + 10], 15, -1051523); | ||||
|           b = md5ii(b, c, d, a, x[i + 1], 21, -2054922799); | ||||
|           a = md5ii(a, b, c, d, x[i + 8], 6, 1873313359); | ||||
|           d = md5ii(d, a, b, c, x[i + 15], 10, -30611744); | ||||
|           c = md5ii(c, d, a, b, x[i + 6], 15, -1560198380); | ||||
|           b = md5ii(b, c, d, a, x[i + 13], 21, 1309151649); | ||||
|           a = md5ii(a, b, c, d, x[i + 4], 6, -145523070); | ||||
|           d = md5ii(d, a, b, c, x[i + 11], 10, -1120210379); | ||||
|           c = md5ii(c, d, a, b, x[i + 2], 15, 718787259); | ||||
|           b = md5ii(b, c, d, a, x[i + 9], 21, -343485551); | ||||
|           a = safeAdd(a, olda); | ||||
|           b = safeAdd(b, oldb); | ||||
|           c = safeAdd(c, oldc); | ||||
|           d = safeAdd(d, oldd); | ||||
|         } | ||||
|  | ||||
|         return [a, b, c, d]; | ||||
|       } | ||||
|       /** | ||||
|        * Convert an array of little-endian words to a string | ||||
|        * | ||||
|        * @param {Array<number>} input MD5 Array | ||||
|        * @returns {string} MD5 string | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function binl2rstr(input) { | ||||
|         var i; | ||||
|         var output = ''; | ||||
|         var length32 = input.length * 32; | ||||
|  | ||||
|         for (i = 0; i < length32; i += 8) { | ||||
|           output += String.fromCharCode(input[i >> 5] >>> i % 32 & 0xff); | ||||
|         } | ||||
|  | ||||
|         return output; | ||||
|       } | ||||
|       /** | ||||
|        * Convert a raw string to an array of little-endian words | ||||
|        * Characters >255 have their high-byte silently ignored. | ||||
|        * | ||||
|        * @param {string} input Raw input string | ||||
|        * @returns {Array<number>} Array of little-endian words | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function rstr2binl(input) { | ||||
|         var i; | ||||
|         var output = []; | ||||
|         output[(input.length >> 2) - 1] = undefined; | ||||
|  | ||||
|         for (i = 0; i < output.length; i += 1) { | ||||
|           output[i] = 0; | ||||
|         } | ||||
|  | ||||
|         var length8 = input.length * 8; | ||||
|  | ||||
|         for (i = 0; i < length8; i += 8) { | ||||
|           output[i >> 5] |= (input.charCodeAt(i / 8) & 0xff) << i % 32; | ||||
|         } | ||||
|  | ||||
|         return output; | ||||
|       } | ||||
|       /** | ||||
|        * Calculate the MD5 of a raw string | ||||
|        * | ||||
|        * @param {string} s Input string | ||||
|        * @returns {string} Raw MD5 string | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function rstrMD5(s) { | ||||
|         return binl2rstr(binlMD5(rstr2binl(s), s.length * 8)); | ||||
|       } | ||||
|       /** | ||||
|        * Calculates the HMAC-MD5 of a key and some data (raw strings) | ||||
|        * | ||||
|        * @param {string} key HMAC key | ||||
|        * @param {string} data Raw input string | ||||
|        * @returns {string} Raw MD5 string | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function rstrHMACMD5(key, data) { | ||||
|         var i; | ||||
|         var bkey = rstr2binl(key); | ||||
|         var ipad = []; | ||||
|         var opad = []; | ||||
|         var hash; | ||||
|         ipad[15] = opad[15] = undefined; | ||||
|  | ||||
|         if (bkey.length > 16) { | ||||
|           bkey = binlMD5(bkey, key.length * 8); | ||||
|         } | ||||
|  | ||||
|         for (i = 0; i < 16; i += 1) { | ||||
|           ipad[i] = bkey[i] ^ 0x36363636; | ||||
|           opad[i] = bkey[i] ^ 0x5c5c5c5c; | ||||
|         } | ||||
|  | ||||
|         hash = binlMD5(ipad.concat(rstr2binl(data)), 512 + data.length * 8); | ||||
|         return binl2rstr(binlMD5(opad.concat(hash), 512 + 128)); | ||||
|       } | ||||
|       /** | ||||
|        * Convert a raw string to a hex string | ||||
|        * | ||||
|        * @param {string} input Raw input string | ||||
|        * @returns {string} Hex encoded string | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function rstr2hex(input) { | ||||
|         var hexTab = '0123456789abcdef'; | ||||
|         var output = ''; | ||||
|         var x; | ||||
|         var i; | ||||
|  | ||||
|         for (i = 0; i < input.length; i += 1) { | ||||
|           x = input.charCodeAt(i); | ||||
|           output += hexTab.charAt(x >>> 4 & 0x0f) + hexTab.charAt(x & 0x0f); | ||||
|         } | ||||
|  | ||||
|         return output; | ||||
|       } | ||||
|       /** | ||||
|        * Encode a string as UTF-8 | ||||
|        * | ||||
|        * @param {string} input Input string | ||||
|        * @returns {string} UTF8 string | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function str2rstrUTF8(input) { | ||||
|         return unescape(encodeURIComponent(input)); | ||||
|       } | ||||
|       /** | ||||
|        * Encodes input string as raw MD5 string | ||||
|        * | ||||
|        * @param {string} s Input string | ||||
|        * @returns {string} Raw MD5 string | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function rawMD5(s) { | ||||
|         return rstrMD5(str2rstrUTF8(s)); | ||||
|       } | ||||
|       /** | ||||
|        * Encodes input string as Hex encoded string | ||||
|        * | ||||
|        * @param {string} s Input string | ||||
|        * @returns {string} Hex encoded string | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function hexMD5(s) { | ||||
|         return rstr2hex(rawMD5(s)); | ||||
|       } | ||||
|       /** | ||||
|        * Calculates the raw HMAC-MD5 for the given key and data | ||||
|        * | ||||
|        * @param {string} k HMAC key | ||||
|        * @param {string} d Input string | ||||
|        * @returns {string} Raw MD5 string | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function rawHMACMD5(k, d) { | ||||
|         return rstrHMACMD5(str2rstrUTF8(k), str2rstrUTF8(d)); | ||||
|       } | ||||
|       /** | ||||
|        * Calculates the Hex encoded HMAC-MD5 for the given key and data | ||||
|        * | ||||
|        * @param {string} k HMAC key | ||||
|        * @param {string} d Input string | ||||
|        * @returns {string} Raw MD5 string | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function hexHMACMD5(k, d) { | ||||
|         return rstr2hex(rawHMACMD5(k, d)); | ||||
|       } | ||||
|       /** | ||||
|        * Calculates MD5 value for a given string. | ||||
|        * If a key is provided, calculates the HMAC-MD5 value. | ||||
|        * Returns a Hex encoded string unless the raw argument is given. | ||||
|        * | ||||
|        * @param {string} string Input string | ||||
|        * @param {string} [key] HMAC key | ||||
|        * @param {boolean} raw Raw oytput switch | ||||
|        * @returns {string} MD5 output | ||||
|        */ | ||||
|  | ||||
|  | ||||
|       function md5(string, key, raw) { | ||||
|         if (!key) { | ||||
|           if (!raw) { | ||||
|             return hexMD5(string); | ||||
|           } | ||||
|  | ||||
|           return rawMD5(string); | ||||
|         } | ||||
|  | ||||
|         if (!raw) { | ||||
|           return hexHMACMD5(key, string); | ||||
|         } | ||||
|  | ||||
|         return rawHMACMD5(key, string); | ||||
|       } | ||||
|  | ||||
|       if (module.exports) { | ||||
|         module.exports = md5; | ||||
|       } else { | ||||
|         $.md5 = md5; | ||||
|       } | ||||
|     })(commonjsGlobal); | ||||
|   }); | ||||
|  | ||||
|   function md5ForNode(node) { | ||||
|     if (null === node || 'object' !== _typeof(node)) return undefined; | ||||
|  | ||||
|     if (node.src) { | ||||
|       return md5(node.src); | ||||
|     } else if (node.href) { | ||||
|       return md5(node.href); | ||||
|     } else if (node.innerText && '' !== node.innerText) { | ||||
|       // eslint-disable-line yoda | ||||
|       return md5(node.innerText); | ||||
|     } else { | ||||
|       return undefined; | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   var diagScriptId = 'fa-kits-diag'; | ||||
|   var nodeUnderTestId = 'fa-kits-node-under-test'; | ||||
|   var md5Attr = 'data-md5'; | ||||
|   var detectionIgnoreAttr = 'data-fa-detection-ignore'; | ||||
|   var timeoutAttr = 'data-fa-detection-timeout'; | ||||
|   var resultsCollectionMaxWaitAttr = 'data-fa-detection-results-collection-max-wait'; | ||||
|  | ||||
|   var silenceErrors = function silenceErrors(e) { | ||||
|     e.preventDefault(); | ||||
|     e.stopPropagation(); | ||||
|   }; | ||||
|  | ||||
|   function pollUntil(_ref) { | ||||
|     var _ref$fn = _ref.fn, | ||||
|         fn = _ref$fn === void 0 ? function () { | ||||
|       return true; | ||||
|     } : _ref$fn, | ||||
|         _ref$initialDuration = _ref.initialDuration, | ||||
|         initialDuration = _ref$initialDuration === void 0 ? 1 : _ref$initialDuration, | ||||
|         _ref$maxDuration = _ref.maxDuration, | ||||
|         maxDuration = _ref$maxDuration === void 0 ? WINDOW.FontAwesomeDetection.timeout : _ref$maxDuration, | ||||
|         _ref$showProgress = _ref.showProgress, | ||||
|         showProgress = _ref$showProgress === void 0 ? false : _ref$showProgress, | ||||
|         progressIndicator = _ref.progressIndicator; | ||||
|     return new Promise(function (resolve, reject) { | ||||
|       // eslint-disable-line compat/compat | ||||
|       function poll(duration, cumulativeDuration) { | ||||
|         setTimeout(function () { | ||||
|           var result = fn(); | ||||
|  | ||||
|           if (showProgress) { | ||||
|             console.info(progressIndicator); | ||||
|           } | ||||
|  | ||||
|           if (!!result) { | ||||
|             // eslint-disable-line no-extra-boolean-cast | ||||
|             resolve(result); | ||||
|           } else { | ||||
|             var nextDuration = 250; | ||||
|             var nextCumulativeDuration = nextDuration + cumulativeDuration; | ||||
|  | ||||
|             if (nextCumulativeDuration <= maxDuration) { | ||||
|               poll(nextDuration, nextCumulativeDuration); | ||||
|             } else { | ||||
|               reject('timeout'); // eslint-disable-line prefer-promise-reject-errors | ||||
|             } | ||||
|           } | ||||
|         }, duration); | ||||
|       } | ||||
|  | ||||
|       poll(initialDuration, 0); | ||||
|     }); | ||||
|   } | ||||
|  | ||||
|   function detectWebfontConflicts() { | ||||
|     var linkTags = Array.from(DOCUMENT.getElementsByTagName('link')).filter(function (t) { | ||||
|       return !t.hasAttribute(detectionIgnoreAttr); | ||||
|     }); | ||||
|     var styleTags = Array.from(DOCUMENT.getElementsByTagName('style')).filter(function (t) { | ||||
|       if (t.hasAttribute(detectionIgnoreAttr)) { | ||||
|         return false; | ||||
|       } // If the browser has loaded the FA5 CSS, let's not test that <style> element. | ||||
|       // Its enough that we'll be testing for traces of the corresponding JS being loaded, and testing | ||||
|       // this <style> would only produce a false negative anyway. | ||||
|  | ||||
|  | ||||
|       if (WINDOW.FontAwesomeConfig && t.innerText.match(new RegExp("svg:not\\(:root\\)\\.".concat(WINDOW.FontAwesomeConfig.replacementClass)))) { | ||||
|         return false; | ||||
|       } | ||||
|  | ||||
|       return true; | ||||
|     }); | ||||
|  | ||||
|     function runDiag(scriptOrLinkTag, md5) { | ||||
|       var diagFrame = DOCUMENT.createElement('iframe'); // Using "visibility: hidden; position: absolute" instead of "display: none;" because | ||||
|       // Firefox will not return the expected results for getComputedStyle if our iframe has display: none. | ||||
|  | ||||
|       diagFrame.setAttribute('style', 'visibility: hidden; position: absolute; height: 0; width: 0;'); | ||||
|       var testIconId = 'fa-test-icon-' + md5; | ||||
|       var iTag = DOCUMENT.createElement('i'); | ||||
|       iTag.setAttribute('class', 'fa fa-coffee'); | ||||
|       iTag.setAttribute('id', testIconId); | ||||
|       var diagScript = DOCUMENT.createElement('script'); | ||||
|       diagScript.setAttribute('id', diagScriptId); // WARNING: this function will be toString()'d and assigned to innerText of the diag script | ||||
|       // element that we'll be putting into a diagnostic iframe. | ||||
|       // That means that this code won't compile until after the outer script has run and injected | ||||
|       // this code into the iframe. There are some compile time errors that might occur there. | ||||
|       // For example, using single line (double-slash) comments like this one inside that function | ||||
|       // will probably cause it to choke. Chrome will show an error like this: | ||||
|       // Uncaught SyntaxError: Unexpected end of input | ||||
|  | ||||
|       var diagScriptFun = function diagScriptFun(nodeUnderTestId, testIconId, md5, parentOrigin) { | ||||
|         parent.FontAwesomeDetection.__pollUntil({ | ||||
|           fn: function fn() { | ||||
|             var iEl = document.getElementById(testIconId); | ||||
|             var computedStyle = window.getComputedStyle(iEl); | ||||
|             var fontFamily = computedStyle.getPropertyValue('font-family'); | ||||
|  | ||||
|             if (!!fontFamily.match(/FontAwesome/) || !!fontFamily.match(/Font Awesome 5/)) { | ||||
|               return true; | ||||
|             } else { | ||||
|               return false; | ||||
|             } | ||||
|           } | ||||
|         }).then(function () { | ||||
|           var node = document.getElementById(nodeUnderTestId); | ||||
|           parent.postMessage({ | ||||
|             type: 'fontawesome-conflict', | ||||
|             technology: 'webfont', | ||||
|             href: node.href, | ||||
|             innerText: node.innerText, | ||||
|             tagName: node.tagName, | ||||
|             md5: md5 | ||||
|           }, parentOrigin); | ||||
|         }).catch(function (e) { | ||||
|           var node = document.getElementById(nodeUnderTestId); | ||||
|  | ||||
|           if (e === 'timeout') { | ||||
|             parent.postMessage({ | ||||
|               type: 'no-conflict', | ||||
|               technology: 'webfont', | ||||
|               href: node.src, | ||||
|               innerText: node.innerText, | ||||
|               tagName: node.tagName, | ||||
|               md5: md5 | ||||
|             }, parentOrigin); | ||||
|           } else { | ||||
|             console.error(e); | ||||
|           } | ||||
|         }); | ||||
|       }; | ||||
|  | ||||
|       var parentOrigin = WINDOW.location.origin === 'file://' ? '*' : WINDOW.location.origin; | ||||
|       diagScript.innerText = "(".concat(diagScriptFun.toString(), ")('").concat(nodeUnderTestId, "', '").concat(testIconId || 'foo', "', '").concat(md5, "', '").concat(parentOrigin, "');"); | ||||
|  | ||||
|       diagFrame.onload = function () { | ||||
|         diagFrame.contentWindow.addEventListener('error', silenceErrors, true); | ||||
|         diagFrame.contentDocument.head.appendChild(diagScript); | ||||
|         diagFrame.contentDocument.head.appendChild(scriptOrLinkTag); | ||||
|         diagFrame.contentDocument.body.appendChild(iTag); | ||||
|       }; | ||||
|  | ||||
|       domready(function () { | ||||
|         return DOCUMENT.body.appendChild(diagFrame); | ||||
|       }); | ||||
|     } | ||||
|  | ||||
|     var cssByMD5 = {}; | ||||
|  | ||||
|     for (var i = 0; i < linkTags.length; i++) { | ||||
|       var linkUnderTest = DOCUMENT.createElement('link'); | ||||
|       linkUnderTest.setAttribute('id', nodeUnderTestId); | ||||
|       linkUnderTest.setAttribute('href', linkTags[i].href); | ||||
|       linkUnderTest.setAttribute('rel', linkTags[i].rel); | ||||
|       var md5ForLink = md5ForNode(linkTags[i]); | ||||
|       linkUnderTest.setAttribute(md5Attr, md5ForLink); | ||||
|       cssByMD5[md5ForLink] = linkTags[i]; | ||||
|       runDiag(linkUnderTest, md5ForLink); | ||||
|     } | ||||
|  | ||||
|     for (var _i = 0; _i < styleTags.length; _i++) { | ||||
|       var styleUnderTest = DOCUMENT.createElement('style'); | ||||
|       styleUnderTest.setAttribute('id', nodeUnderTestId); | ||||
|       var md5ForStyle = md5ForNode(styleTags[_i]); | ||||
|       styleUnderTest.setAttribute(md5Attr, md5ForStyle); | ||||
|       styleUnderTest.innerText = styleTags[_i].innerText; | ||||
|       cssByMD5[md5ForStyle] = styleTags[_i]; | ||||
|       runDiag(styleUnderTest, md5ForStyle); | ||||
|     } | ||||
|  | ||||
|     return cssByMD5; | ||||
|   } | ||||
|  | ||||
|   function detectSvgConflicts(currentScript) { | ||||
|     var scripts = Array.from(DOCUMENT.scripts).filter(function (t) { | ||||
|       return !t.hasAttribute(detectionIgnoreAttr) && t !== currentScript; | ||||
|     }); | ||||
|     var scriptsByMD5 = {}; | ||||
|  | ||||
|     var _loop = function _loop(scriptIdx) { | ||||
|       var diagFrame = DOCUMENT.createElement('iframe'); | ||||
|       diagFrame.setAttribute('style', 'display:none;'); | ||||
|       var scriptUnderTest = DOCUMENT.createElement('script'); | ||||
|       scriptUnderTest.setAttribute('id', nodeUnderTestId); | ||||
|       var md5ForScript = md5ForNode(scripts[scriptIdx]); | ||||
|       scriptUnderTest.setAttribute(md5Attr, md5ForScript); | ||||
|       scriptsByMD5[md5ForScript] = scripts[scriptIdx]; | ||||
|  | ||||
|       if (scripts[scriptIdx].src !== '') { | ||||
|         scriptUnderTest.src = scripts[scriptIdx].src; | ||||
|       } | ||||
|  | ||||
|       if (scripts[scriptIdx].innerText !== '') { | ||||
|         scriptUnderTest.innerText = scripts[scriptIdx].innerText; | ||||
|       } | ||||
|  | ||||
|       scriptUnderTest.async = true; | ||||
|       var diagScript = DOCUMENT.createElement('script'); | ||||
|       diagScript.setAttribute('id', diagScriptId); | ||||
|       var parentOrigin = WINDOW.location.origin === 'file://' ? '*' : WINDOW.location.origin; | ||||
|  | ||||
|       var diagScriptFun = function diagScriptFun(nodeUnderTestId, md5, parentOrigin) { | ||||
|         parent.FontAwesomeDetection.__pollUntil({ | ||||
|           fn: function fn() { | ||||
|             return !!window.FontAwesomeConfig; | ||||
|           } | ||||
|         }).then(function () { | ||||
|           var scriptNode = document.getElementById(nodeUnderTestId); | ||||
|           parent.postMessage({ | ||||
|             type: 'fontawesome-conflict', | ||||
|             technology: 'js', | ||||
|             src: scriptNode.src, | ||||
|             innerText: scriptNode.innerText, | ||||
|             tagName: scriptNode.tagName, | ||||
|             md5: md5 | ||||
|           }, parentOrigin); | ||||
|         }).catch(function (e) { | ||||
|           var scriptNode = document.getElementById(nodeUnderTestId); | ||||
|  | ||||
|           if (e === 'timeout') { | ||||
|             parent.postMessage({ | ||||
|               type: 'no-conflict', | ||||
|               src: scriptNode.src, | ||||
|               innerText: scriptNode.innerText, | ||||
|               tagName: scriptNode.tagName, | ||||
|               md5: md5 | ||||
|             }, parentOrigin); | ||||
|           } else { | ||||
|             console.error(e); | ||||
|           } | ||||
|         }); | ||||
|       }; | ||||
|  | ||||
|       diagScript.innerText = "(".concat(diagScriptFun.toString(), ")('").concat(nodeUnderTestId, "', '").concat(md5ForScript, "', '").concat(parentOrigin, "');"); | ||||
|  | ||||
|       diagFrame.onload = function () { | ||||
|         diagFrame.contentWindow.addEventListener('error', silenceErrors, true); | ||||
|         diagFrame.contentDocument.head.appendChild(diagScript); | ||||
|         diagFrame.contentDocument.head.appendChild(scriptUnderTest); | ||||
|       }; | ||||
|  | ||||
|       domready(function () { | ||||
|         return DOCUMENT.body.appendChild(diagFrame); | ||||
|       }); | ||||
|     }; | ||||
|  | ||||
|     for (var scriptIdx = 0; scriptIdx < scripts.length; scriptIdx++) { | ||||
|       _loop(scriptIdx); | ||||
|     } | ||||
|  | ||||
|     return scriptsByMD5; | ||||
|   } | ||||
|  | ||||
|   function setDoneResults(_ref2) { | ||||
|     var nodesTested = _ref2.nodesTested, | ||||
|         nodesFound = _ref2.nodesFound; | ||||
|     WINDOW.FontAwesomeDetection = WINDOW.FontAwesomeDetection || {}; | ||||
|     WINDOW.FontAwesomeDetection.nodesTested = nodesTested; | ||||
|     WINDOW.FontAwesomeDetection.nodesFound = nodesFound; | ||||
|     WINDOW.FontAwesomeDetection.detectionDone = true; | ||||
|   } | ||||
|  | ||||
|   function conflictDetection() { | ||||
|     var report$$1 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function () {}; | ||||
|     var nodesTested = { | ||||
|       conflict: {}, | ||||
|       noConflict: {} | ||||
|     }; | ||||
|  | ||||
|     WINDOW.onmessage = function (e) { | ||||
|       if (WINDOW.location.origin === 'file://' || e.origin === WINDOW.location.origin) { | ||||
|         if (e && e.data) { | ||||
|           if (e.data.type === 'fontawesome-conflict') { | ||||
|             nodesTested.conflict[e.data.md5] = e.data; | ||||
|           } else if (e.data.type === 'no-conflict') { | ||||
|             nodesTested.noConflict[e.data.md5] = e.data; | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|     }; | ||||
|  | ||||
|     var scriptsToTest = detectSvgConflicts(DOCUMENT.currentScript); | ||||
|     var cssToTest = detectWebfontConflicts(); | ||||
|  | ||||
|     var nodesFound = _objectSpread({}, scriptsToTest, cssToTest); | ||||
|  | ||||
|     var testCount = Object.keys(scriptsToTest).length + Object.keys(cssToTest).length; // The resultsCollectionMaxWait allows for the time between when the tests running under | ||||
|     // child iframes call postMessage with their results, and when the parent window | ||||
|     // receives and handles those events with window.onmessage. | ||||
|     // Making it configurable allows us to test the scenario where this timeout is exceeded. | ||||
|     // Naming it something very different from "timeout" is to help avoid the potential ambiguity between | ||||
|     // these two timeout-related settings. | ||||
|  | ||||
|     var masterTimeout = WINDOW.FontAwesomeDetection.timeout + WINDOW.FontAwesomeDetection.resultsCollectionMaxWait; | ||||
|     console.group('Font Awesome Detector'); | ||||
|  | ||||
|     if (testCount === 0) { | ||||
|       console.info('%cAll Good!', 'color: green; font-size: large'); | ||||
|       console.info('We didn\'t find anything that needs testing for conflicts. Ergo, no conflicts.'); | ||||
|     } else { | ||||
|       console.info("Testing ".concat(testCount, " possible conflicts.")); | ||||
|       console.info("We'll wait about ".concat(Math.round(WINDOW.FontAwesomeDetection.timeout / 10) / 100, " seconds while testing these and\n") + "then up to another ".concat(Math.round(WINDOW.FontAwesomeDetection.resultsCollectionMaxWait / 10) / 100, " to allow the browser time\n") + "to accumulate the results. But we'll probably be outta here way before then.\n\n"); | ||||
|       console.info("You can adjust those durations by assigning values to these attributes on the <script> element that loads this detection:"); | ||||
|       console.info("\t%c".concat(timeoutAttr, "%c: milliseconds to wait for each test before deciding whether it's a conflict."), 'font-weight: bold;', 'font-size: normal;'); | ||||
|       console.info("\t%c".concat(resultsCollectionMaxWaitAttr, "%c: milliseconds to wait for the browser to accumulate test results before giving up."), 'font-weight: bold;', 'font-size: normal;'); | ||||
|       pollUntil({ | ||||
|         // Give this overall timer a little extra cushion | ||||
|         maxDuration: masterTimeout, | ||||
|         showProgress: true, | ||||
|         progressIndicator: 'waiting...', | ||||
|         fn: function fn() { | ||||
|           return Object.keys(nodesTested.conflict).length + Object.keys(nodesTested.noConflict).length >= testCount; | ||||
|         } | ||||
|       }).then(function () { | ||||
|         console.info('DONE!'); | ||||
|         setDoneResults({ | ||||
|           nodesTested: nodesTested, | ||||
|           nodesFound: nodesFound | ||||
|         }); | ||||
|         report$$1({ | ||||
|           nodesTested: nodesTested, | ||||
|           nodesFound: nodesFound | ||||
|         }); | ||||
|         console.groupEnd(); | ||||
|       }).catch(function (e) { | ||||
|         if (e === 'timeout') { | ||||
|           console.info('TIME OUT! We waited until we got tired. Here\'s what we found:'); | ||||
|           setDoneResults({ | ||||
|             nodesTested: nodesTested, | ||||
|             nodesFound: nodesFound | ||||
|           }); | ||||
|           report$$1({ | ||||
|             nodesTested: nodesTested, | ||||
|             nodesFound: nodesFound | ||||
|           }); | ||||
|         } else { | ||||
|           console.info('Whoops! We hit an error:', e); | ||||
|           console.info('Here\'s what we\'d found up until that error:'); | ||||
|           setDoneResults({ | ||||
|             nodesTested: nodesTested, | ||||
|             nodesFound: nodesFound | ||||
|           }); | ||||
|           report$$1({ | ||||
|             nodesTested: nodesTested, | ||||
|             nodesFound: nodesFound | ||||
|           }); | ||||
|         } | ||||
|  | ||||
|         console.groupEnd(); | ||||
|       }); | ||||
|     } | ||||
|   } // Allow clients to access, and in some cases, override some properties | ||||
|  | ||||
|   var initialConfig = WINDOW.FontAwesomeDetection || {}; // These can be overridden | ||||
|  | ||||
|   var _default = { | ||||
|     report: report, | ||||
|     timeout: +(DOCUMENT.currentScript.getAttribute(timeoutAttr) || "2000"), | ||||
|     resultsCollectionMaxWait: +(DOCUMENT.currentScript.getAttribute(resultsCollectionMaxWaitAttr) || "5000") | ||||
|   }; | ||||
|  | ||||
|   var _config = _objectSpread({}, _default, initialConfig, { | ||||
|     // These cannot be overridden | ||||
|     __pollUntil: pollUntil, | ||||
|     md5ForNode: md5ForNode, | ||||
|     detectionDone: false, | ||||
|     nodesTested: null, | ||||
|     nodesFound: null | ||||
|   }); | ||||
|  | ||||
|   WINDOW.FontAwesomeDetection = _config; | ||||
|  | ||||
|   var PRODUCTION = function () { | ||||
|     try { | ||||
|       return process.env.NODE_ENV === 'production'; | ||||
|     } catch (e) { | ||||
|       return false; | ||||
|     } | ||||
|   }(); | ||||
|  | ||||
|   function bunker(fn) { | ||||
|     try { | ||||
|       fn(); | ||||
|     } catch (e) { | ||||
|       if (!PRODUCTION) { | ||||
|         throw e; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   bunker(function () { | ||||
|     if (IS_BROWSER && IS_DOM) { | ||||
|       conflictDetection(window.FontAwesomeDetection.report); | ||||
|     } | ||||
|   }); | ||||
|  | ||||
|   exports.conflictDetection = conflictDetection; | ||||
|  | ||||
|   Object.defineProperty(exports, '__esModule', { value: true }); | ||||
|  | ||||
| }))); | ||||
							
								
								
									
										5
									
								
								nodejs/public/js/conflict-detection.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										1979
									
								
								nodejs/public/js/duotone.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										5
									
								
								nodejs/public/js/duotone.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										2478
									
								
								nodejs/public/js/fontawesome.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										5
									
								
								nodejs/public/js/fontawesome.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										1979
									
								
								nodejs/public/js/light.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										5
									
								
								nodejs/public/js/light.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										1979
									
								
								nodejs/public/js/regular.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										5
									
								
								nodejs/public/js/regular.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										1979
									
								
								nodejs/public/js/solid.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										5
									
								
								nodejs/public/js/solid.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										68
									
								
								nodejs/public/js/v4-shims.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										5
									
								
								nodejs/public/js/v4-shims.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										19
									
								
								nodejs/public/less/_animated.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,19 @@ | ||||
| // Animated Icons | ||||
| // -------------------------- | ||||
|  | ||||
| .@{fa-css-prefix}-spin { | ||||
|   animation: fa-spin 2s infinite linear; | ||||
| } | ||||
|  | ||||
| .@{fa-css-prefix}-pulse { | ||||
|   animation: fa-spin 1s infinite steps(8); | ||||
| } | ||||
|  | ||||
| @keyframes fa-spin { | ||||
|   0% { | ||||
|     transform: rotate(0deg); | ||||
|   } | ||||
|   100% { | ||||
|     transform: rotate(360deg); | ||||
|   } | ||||
| } | ||||
							
								
								
									
										16
									
								
								nodejs/public/less/_bordered-pulled.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,16 @@ | ||||
| // Bordered & Pulled | ||||
| // ------------------------- | ||||
|  | ||||
| .@{fa-css-prefix}-border { | ||||
|   border-radius: .1em; | ||||
|   border: solid .08em @fa-border-color; | ||||
|   padding: .2em .25em .15em; | ||||
| } | ||||
|  | ||||
| .@{fa-css-prefix}-pull-left { float: left; } | ||||
| .@{fa-css-prefix}-pull-right { float: right; } | ||||
|  | ||||
| .@{fa-css-prefix}, .fas, .far, .fal, .fab { | ||||
|   &.@{fa-css-prefix}-pull-left { margin-right: .3em; } | ||||
|   &.@{fa-css-prefix}-pull-right { margin-left: .3em; } | ||||
| } | ||||
							
								
								
									
										12
									
								
								nodejs/public/less/_core.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,12 @@ | ||||
| // Base Class Definition | ||||
| // ------------------------- | ||||
|  | ||||
| .@{fa-css-prefix}, .fas, .far, .fal, .fad, .fab { | ||||
|   -moz-osx-font-smoothing: grayscale; | ||||
|   -webkit-font-smoothing: antialiased; | ||||
|   display: inline-block; | ||||
|   font-style: normal; | ||||
|   font-variant: normal; | ||||
|   text-rendering: auto; | ||||
|   line-height: 1; | ||||
| } | ||||
							
								
								
									
										6
									
								
								nodejs/public/less/_fixed-width.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,6 @@ | ||||
| // Fixed Width Icons | ||||
| // ------------------------- | ||||
| .@{fa-css-prefix}-fw { | ||||
|   text-align: center; | ||||
|   width: (20em / 16); | ||||
| } | ||||
							
								
								
									
										2302
									
								
								nodejs/public/less/_icons.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										27
									
								
								nodejs/public/less/_larger.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,27 @@ | ||||
| // Icon Sizes | ||||
| // ------------------------- | ||||
|  | ||||
| .larger(@factor) when (@factor > 0) { | ||||
|   .larger((@factor - 1)); | ||||
|  | ||||
|   .@{fa-css-prefix}-@{factor}x { | ||||
|     font-size: (@factor * 1em); | ||||
|   } | ||||
| } | ||||
|  | ||||
| /* makes the font 33% larger relative to the icon container */ | ||||
| .@{fa-css-prefix}-lg { | ||||
|   font-size: (4em / 3); | ||||
|   line-height: (3em / 4); | ||||
|   vertical-align: -.0667em; | ||||
| } | ||||
|  | ||||
| .@{fa-css-prefix}-xs { | ||||
|   font-size: .75em; | ||||
| } | ||||
|  | ||||
| .@{fa-css-prefix}-sm { | ||||
|   font-size: .875em; | ||||
| } | ||||
|  | ||||
| .larger(10); | ||||
							
								
								
									
										18
									
								
								nodejs/public/less/_list.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,18 @@ | ||||
| // List Icons | ||||
| // ------------------------- | ||||
|  | ||||
| .@{fa-css-prefix}-ul { | ||||
|   list-style-type: none; | ||||
|   margin-left: (@fa-li-width * 5/4); | ||||
|   padding-left: 0; | ||||
|  | ||||
|   > li { position: relative; } | ||||
| } | ||||
|  | ||||
| .@{fa-css-prefix}-li { | ||||
|   left: -@fa-li-width; | ||||
|   position: absolute; | ||||
|   text-align: center; | ||||
|   width: @fa-li-width; | ||||
|   line-height: inherit; | ||||
| } | ||||
							
								
								
									
										56
									
								
								nodejs/public/less/_mixins.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,56 @@ | ||||
| // Mixins | ||||
| // -------------------------- | ||||
|  | ||||
| .fa-icon() { | ||||
|   -moz-osx-font-smoothing: grayscale; | ||||
|   -webkit-font-smoothing: antialiased; | ||||
|   display: inline-block; | ||||
|   font-style: normal; | ||||
|   font-variant: normal; | ||||
|   font-weight: normal; | ||||
|   line-height: 1; | ||||
| } | ||||
|  | ||||
| .fa-icon-rotate(@degrees, @rotation) { | ||||
|   -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=@{rotation})"; | ||||
|   transform: rotate(@degrees); | ||||
| } | ||||
|  | ||||
| .fa-icon-flip(@horiz, @vert, @rotation) { | ||||
|   -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=@{rotation}, mirror=1)"; | ||||
|   transform: scale(@horiz, @vert); | ||||
| } | ||||
|  | ||||
|  | ||||
| // Only display content to screen readers. A la Bootstrap 4. | ||||
| // | ||||
| // See: http://a11yproject.com/posts/how-to-hide-content/ | ||||
|  | ||||
| .sr-only() { | ||||
|   border: 0; | ||||
|   clip: rect(0,0,0,0); | ||||
|   height: 1px; | ||||
|   margin: -1px; | ||||
|   overflow: hidden; | ||||
|   padding: 0; | ||||
|   position: absolute; | ||||
|   width: 1px; | ||||
| } | ||||
|  | ||||
| // Use in conjunction with .sr-only to only display content when it's focused. | ||||
| // | ||||
| // Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1 | ||||
| // | ||||
| // Credit: HTML5 Boilerplate | ||||
|  | ||||
| .sr-only-focusable() { | ||||
|   &:active, | ||||
|   &:focus { | ||||
|     clip: auto; | ||||
|     height: auto; | ||||
|     margin: 0; | ||||
|     overflow: visible; | ||||
|     position: static; | ||||
|     width: auto; | ||||
|   } | ||||
| } | ||||
							
								
								
									
										24
									
								
								nodejs/public/less/_rotated-flipped.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,24 @@ | ||||
| // Rotated & Flipped Icons | ||||
| // ------------------------- | ||||
|  | ||||
| .@{fa-css-prefix}-rotate-90  { .fa-icon-rotate(90deg, 1);  } | ||||
| .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } | ||||
| .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } | ||||
|  | ||||
| .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } | ||||
| .@{fa-css-prefix}-flip-vertical   { .fa-icon-flip(1, -1, 2); } | ||||
| .@{fa-css-prefix}-flip-both, .@{fa-css-prefix}-flip-horizontal.@{fa-css-prefix}-flip-vertical { .fa-icon-flip(-1, -1, 2); } | ||||
|  | ||||
| // Hook for IE8-9 | ||||
| // ------------------------- | ||||
|  | ||||
| :root { | ||||
|   .@{fa-css-prefix}-rotate-90, | ||||
|   .@{fa-css-prefix}-rotate-180, | ||||
|   .@{fa-css-prefix}-rotate-270, | ||||
|   .@{fa-css-prefix}-flip-horizontal, | ||||
|   .@{fa-css-prefix}-flip-vertical, | ||||
|   .@{fa-css-prefix}-flip-both { | ||||
|     filter: none; | ||||
|   } | ||||
| } | ||||
							
								
								
									
										5
									
								
								nodejs/public/less/_screen-reader.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,5 @@ | ||||
| // Screen Readers | ||||
| // ------------------------- | ||||
|  | ||||
| .sr-only { .sr-only(); } | ||||
| .sr-only-focusable { .sr-only-focusable(); } | ||||
							
								
								
									
										2066
									
								
								nodejs/public/less/_shims.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										22
									
								
								nodejs/public/less/_stacked.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,22 @@ | ||||
| // Stacked Icons | ||||
| // ------------------------- | ||||
|  | ||||
| .@{fa-css-prefix}-stack { | ||||
|   display: inline-block; | ||||
|   height: 2em; | ||||
|   line-height: 2em; | ||||
|   position: relative; | ||||
|   vertical-align: middle; | ||||
|   width: 2em; | ||||
| } | ||||
|  | ||||
| .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { | ||||
|   left: 0; | ||||
|   position: absolute; | ||||
|   text-align: center; | ||||
|   width: 100%; | ||||
| } | ||||
|  | ||||
| .@{fa-css-prefix}-stack-1x { line-height: inherit; } | ||||
| .@{fa-css-prefix}-stack-2x { font-size: 2em; } | ||||
| .@{fa-css-prefix}-inverse { color: @fa-inverse; } | ||||
							
								
								
									
										2314
									
								
								nodejs/public/less/_variables.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										23
									
								
								nodejs/public/less/brands.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,23 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @import "_variables.less"; | ||||
|  | ||||
| @font-face { | ||||
|   font-family: 'Font Awesome 5 Brands'; | ||||
|   font-style: normal; | ||||
|   font-weight: 400; | ||||
|   font-display: @fa-font-display; | ||||
|   src: url('@{fa-font-path}/fa-brands-400.eot'); | ||||
|   src: url('@{fa-font-path}/fa-brands-400.eot?#iefix') format('embedded-opentype'), | ||||
|     url('@{fa-font-path}/fa-brands-400.woff2') format('woff2'), | ||||
|     url('@{fa-font-path}/fa-brands-400.woff') format('woff'), | ||||
|     url('@{fa-font-path}/fa-brands-400.ttf') format('truetype'), | ||||
|     url('@{fa-font-path}/fa-brands-400.svg#fontawesome') format('svg'); | ||||
| } | ||||
|  | ||||
| .fab { | ||||
|   font-family: 'Font Awesome 5 Brands'; | ||||
|   font-weight: 400; | ||||
| } | ||||
							
								
								
									
										1916
									
								
								nodejs/public/less/duotone.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										16
									
								
								nodejs/public/less/fontawesome.less
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,16 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @import "_variables.less"; | ||||
| @import "_mixins.less"; | ||||
| @import "_core.less"; | ||||
| @import "_larger.less"; | ||||
| @import "_fixed-width.less"; | ||||
| @import "_list.less"; | ||||
| @import "_bordered-pulled.less"; | ||||
| @import "_animated.less"; | ||||
| @import "_rotated-flipped.less"; | ||||
| @import "_stacked.less"; | ||||
| @import "_icons.less"; | ||||
| @import "_screen-reader.less"; | ||||
							
								
								
									
										23
									
								
								nodejs/public/less/light.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,23 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @import "_variables.less"; | ||||
|  | ||||
| @font-face { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-style: normal; | ||||
|   font-weight: 300; | ||||
|   font-display: @fa-font-display; | ||||
|   src: url('@{fa-font-path}/fa-light-300.eot'); | ||||
|   src: url('@{fa-font-path}/fa-light-300.eot?#iefix') format('embedded-opentype'), | ||||
|     url('@{fa-font-path}/fa-light-300.woff2') format('woff2'), | ||||
|     url('@{fa-font-path}/fa-light-300.woff') format('woff'), | ||||
|     url('@{fa-font-path}/fa-light-300.ttf') format('truetype'), | ||||
|     url('@{fa-font-path}/fa-light-300.svg#fontawesome') format('svg'); | ||||
| } | ||||
|  | ||||
| .fal { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-weight: 300; | ||||
| } | ||||
							
								
								
									
										23
									
								
								nodejs/public/less/regular.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,23 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @import "_variables.less"; | ||||
|  | ||||
| @font-face { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-style: normal; | ||||
|   font-weight: 400; | ||||
|   font-display: @fa-font-display; | ||||
|   src: url('@{fa-font-path}/fa-regular-400.eot'); | ||||
|   src: url('@{fa-font-path}/fa-regular-400.eot?#iefix') format('embedded-opentype'), | ||||
|     url('@{fa-font-path}/fa-regular-400.woff2') format('woff2'), | ||||
|     url('@{fa-font-path}/fa-regular-400.woff') format('woff'), | ||||
|     url('@{fa-font-path}/fa-regular-400.ttf') format('truetype'), | ||||
|     url('@{fa-font-path}/fa-regular-400.svg#fontawesome') format('svg'); | ||||
| } | ||||
|  | ||||
| .far { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-weight: 400; | ||||
| } | ||||
							
								
								
									
										24
									
								
								nodejs/public/less/solid.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,24 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @import "_variables.less"; | ||||
|  | ||||
| @font-face { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-style: normal; | ||||
|   font-weight: 900; | ||||
|   font-display: @fa-font-display; | ||||
|   src: url('@{fa-font-path}/fa-solid-900.eot'); | ||||
|   src: url('@{fa-font-path}/fa-solid-900.eot?#iefix') format('embedded-opentype'), | ||||
|     url('@{fa-font-path}/fa-solid-900.woff2') format('woff2'), | ||||
|     url('@{fa-font-path}/fa-solid-900.woff') format('woff'), | ||||
|     url('@{fa-font-path}/fa-solid-900.ttf') format('truetype'), | ||||
|     url('@{fa-font-path}/fa-solid-900.svg#fontawesome') format('svg'); | ||||
| } | ||||
|  | ||||
| .fa, | ||||
| .fas { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-weight: 900; | ||||
| } | ||||
							
								
								
									
										6
									
								
								nodejs/public/less/v4-shims.less
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,6 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @import '_variables.less'; | ||||
| @import '_shims.less'; | ||||
							
								
								
									
										4086
									
								
								nodejs/public/metadata/categories.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										172069
									
								
								nodejs/public/metadata/icons.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										41070
									
								
								nodejs/public/metadata/icons.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										2317
									
								
								nodejs/public/metadata/shims.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										298
									
								
								nodejs/public/metadata/shims.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,298 @@ | ||||
| area-chart: | ||||
|   name: chart-area | ||||
| arrow-circle-o-down: | ||||
|   name: arrow-alt-circle-down | ||||
|   prefix: far | ||||
| arrow-circle-o-left: | ||||
|   name: arrow-alt-circle-left | ||||
|   prefix: far | ||||
| arrow-circle-o-right: | ||||
|   name: arrow-alt-circle-right | ||||
|   prefix: far | ||||
| arrow-circle-o-up: | ||||
|   name: arrow-alt-circle-up | ||||
|   prefix: far | ||||
| arrows: | ||||
|   name: arrows-alt | ||||
| arrows-alt: | ||||
|   name: expand-arrows-alt | ||||
| arrows-h: | ||||
|   name: arrows-alt-h | ||||
| arrows-v: | ||||
|   name: arrows-alt-v | ||||
| bar-chart: | ||||
|   name: chart-bar | ||||
|   prefix: far | ||||
| bitbucket-square: | ||||
|   name: bitbucket | ||||
|   prefix: fab | ||||
| calendar: | ||||
|   name: calendar-alt | ||||
| calendar-o: | ||||
|   name: calendar | ||||
|   prefix: far | ||||
| caret-square-o-down: | ||||
|   name: caret-square-down | ||||
|   prefix: far | ||||
| caret-square-o-left: | ||||
|   name: caret-square-left | ||||
|   prefix: far | ||||
| caret-square-o-right: | ||||
|   name: caret-square-right | ||||
|   prefix: far | ||||
| caret-square-o-up: | ||||
|   name: caret-square-up | ||||
|   prefix: far | ||||
| cc: | ||||
|   name: closed-captioning | ||||
|   prefix: far | ||||
| chain-broken: | ||||
|   name: unlink | ||||
| circle-o-notch: | ||||
|   name: circle-notch | ||||
| circle-thin: | ||||
|   name: circle | ||||
|   prefix: far | ||||
| clipboard: | ||||
|   prefix: far | ||||
| clone: | ||||
|   prefix: far | ||||
| cloud-download: | ||||
|   name: cloud-download-alt | ||||
| cloud-upload: | ||||
|   name: cloud-upload-alt | ||||
| code-fork: | ||||
|   name: code-branch | ||||
| comment-alt: | ||||
|   name: comment-dots | ||||
|   prefix: far | ||||
| commenting: | ||||
|   name: comment-dots | ||||
| compass: | ||||
|   prefix: far | ||||
| compress: | ||||
|   name: compress-alt | ||||
| copyright: | ||||
|   prefix: far | ||||
| creative-commons: | ||||
|   prefix: fab | ||||
| credit-card: | ||||
|   prefix: far | ||||
| credit-card-alt: | ||||
|   name: credit-card | ||||
| cutlery: | ||||
|   name: utensils | ||||
| diamond: | ||||
|   name: gem | ||||
|   prefix: far | ||||
| eercast: | ||||
|   name: sellcast | ||||
|   prefix: fab | ||||
| eur: | ||||
|   name: euro-sign | ||||
| exchange: | ||||
|   name: exchange-alt | ||||
| expand: | ||||
|   name: expand-alt | ||||
| external-link: | ||||
|   name: external-link-alt | ||||
| external-link-square: | ||||
|   name: external-link-square-alt | ||||
| eye: | ||||
|   prefix: far | ||||
| eye-dropper: | ||||
|   name: eye-dropper | ||||
|   prefix: far | ||||
| eye-slash: | ||||
|   prefix: far | ||||
| eyedropper: | ||||
|   name: eye-dropper | ||||
| facebook: | ||||
|   name: facebook-f | ||||
|   prefix: fab | ||||
| facebook-official: | ||||
|   name: facebook | ||||
|   prefix: fab | ||||
| file-text: | ||||
|   name: file-alt | ||||
| files-o: | ||||
|   name: copy | ||||
|   prefix: far | ||||
| floppy-o: | ||||
|   name: save | ||||
|   prefix: far | ||||
| gbp: | ||||
|   name: pound-sign | ||||
| glass: | ||||
|   name: glass-martini | ||||
| google-plus: | ||||
|   name: google-plus-g | ||||
|   prefix: fab | ||||
| google-plus-circle: | ||||
|   name: google-plus | ||||
|   prefix: fab | ||||
| google-plus-official: | ||||
|   name: google-plus | ||||
|   prefix: fab | ||||
| hand-o-down: | ||||
|   name: hand-point-down | ||||
|   prefix: far | ||||
| hand-o-left: | ||||
|   name: hand-point-left | ||||
|   prefix: far | ||||
| hand-o-right: | ||||
|   name: hand-point-right | ||||
|   prefix: far | ||||
| hand-o-up: | ||||
|   name: hand-point-up | ||||
|   prefix: far | ||||
| header: | ||||
|   name: heading | ||||
| id-badge: | ||||
|   prefix: far | ||||
| ils: | ||||
|   name: shekel-sign | ||||
| inr: | ||||
|   name: rupee-sign | ||||
| intersex: | ||||
|   name: transgender | ||||
| jpy: | ||||
|   name: yen-sign | ||||
| krw: | ||||
|   name: won-sign | ||||
| level-down: | ||||
|   name: level-down-alt | ||||
| level-up: | ||||
|   name: level-up-alt | ||||
| life-ring: | ||||
|   prefix: far | ||||
| line-chart: | ||||
|   name: chart-line | ||||
| linkedin: | ||||
|   name: linkedin-in | ||||
|   prefix: fab | ||||
| linkedin-square: | ||||
|   name: linkedin | ||||
|   prefix: fab | ||||
| list-alt: | ||||
|   prefix: far | ||||
| long-arrow-down: | ||||
|   name: long-arrow-alt-down | ||||
| long-arrow-left: | ||||
|   name: long-arrow-alt-left | ||||
| long-arrow-right: | ||||
|   name: long-arrow-alt-right | ||||
| long-arrow-up: | ||||
|   name: long-arrow-alt-up | ||||
| map-marker: | ||||
|   name: map-marker-alt | ||||
| meanpath: | ||||
|   name: font-awesome | ||||
|   prefix: fab | ||||
| mobile: | ||||
|   name: mobile-alt | ||||
| money: | ||||
|   name: money-bill-alt | ||||
|   prefix: far | ||||
| object-group: | ||||
|   prefix: far | ||||
| object-ungroup: | ||||
|   prefix: far | ||||
| paste: | ||||
|   prefix: far | ||||
| pencil: | ||||
|   name: pencil-alt | ||||
| pencil-square: | ||||
|   name: pen-square | ||||
| pencil-square-o: | ||||
|   name: edit | ||||
|   prefix: far | ||||
| picture: | ||||
|   name: image | ||||
| pie-chart: | ||||
|   name: chart-pie | ||||
| refresh: | ||||
|   name: sync | ||||
| registered: | ||||
|   prefix: far | ||||
| repeat: | ||||
|   name: redo | ||||
| rub: | ||||
|   name: ruble-sign | ||||
| scissors: | ||||
|   name: cut | ||||
| shield: | ||||
|   name: shield-alt | ||||
| sign-in: | ||||
|   name: sign-in-alt | ||||
| sign-out: | ||||
|   name: sign-out-alt | ||||
| sliders: | ||||
|   name: sliders-h | ||||
| sort-alpha-asc: | ||||
|   name: sort-alpha-down | ||||
| sort-alpha-desc: | ||||
|   name: sort-alpha-down-alt | ||||
| sort-amount-asc: | ||||
|   name: sort-amount-down | ||||
| sort-amount-desc: | ||||
|   name: sort-amount-down-alt | ||||
| sort-asc: | ||||
|   name: sort-up | ||||
| sort-desc: | ||||
|   name: sort-down | ||||
| sort-numeric-asc: | ||||
|   name: sort-numeric-down | ||||
| sort-numeric-desc: | ||||
|   name: sort-numeric-down-alt | ||||
| spoon: | ||||
|   name: utensil-spoon | ||||
| star-half-empty: | ||||
|   name: star-half | ||||
| star-half-full: | ||||
|   name: star-half | ||||
| support: | ||||
|   name: life-ring | ||||
|   prefix: far | ||||
| tablet: | ||||
|   name: tablet-alt | ||||
| tachometer: | ||||
|   name: tachometer-alt | ||||
| television: | ||||
|   name: tv | ||||
| thumb-tack: | ||||
|   name: thumbtack | ||||
| thumbs-o-down: | ||||
|   name: thumbs-down | ||||
|   prefix: far | ||||
| thumbs-o-up: | ||||
|   name: thumbs-up | ||||
|   prefix: far | ||||
| ticket: | ||||
|   name: ticket-alt | ||||
| trash: | ||||
|   name: trash-alt | ||||
| trash-o: | ||||
|   name: trash-alt | ||||
|   prefix: far | ||||
| try: | ||||
|   name: lira-sign | ||||
| usd: | ||||
|   name: dollar-sign | ||||
| video-camera: | ||||
|   name: video | ||||
| vimeo: | ||||
|   name: vimeo-v | ||||
|   prefix: fab | ||||
| volume-control-phone: | ||||
|   name: phone-volume | ||||
| wheelchair-alt: | ||||
|   name: accessible-icon | ||||
|   prefix: fab | ||||
| window-maximize: | ||||
|   prefix: far | ||||
| window-restore: | ||||
|   prefix: far | ||||
| youtube-play: | ||||
|   name: youtube | ||||
|   prefix: fab | ||||
							
								
								
									
										796
									
								
								nodejs/public/metadata/sponsors.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,796 @@ | ||||
| accusoft: | ||||
|   icons: | ||||
|     - accusoft | ||||
|   label: Accusoft | ||||
|   url: 'https://www.accusoft.com' | ||||
| administrator-technology: | ||||
|   icons: | ||||
|     - stream | ||||
|   label: Administrator Technology | ||||
|   url: 'https://administrator.de' | ||||
| adversal: | ||||
|   icons: | ||||
|     - adversal | ||||
|   label: Adversal | ||||
|   url: 'https://www.adversal.com' | ||||
| affiliatetheme: | ||||
|   icons: | ||||
|     - affiliatetheme | ||||
|   label: affiliatetheme | ||||
|   url: 'https://affiliatetheme.io/en' | ||||
| algolia: | ||||
|   icons: | ||||
|     - algolia | ||||
|   label: Algolia | ||||
|   url: 'http://www.algolia.com' | ||||
| amazon-web-services: | ||||
|   icons: | ||||
|     - aws | ||||
|   label: Amazon Web Services | ||||
|   url: 'https://aws.amazon.com' | ||||
| amilia: | ||||
|   icons: | ||||
|     - amilia | ||||
|   label: Amilia | ||||
|   url: 'http://www.amilia.com' | ||||
| angry-creative: | ||||
|   icons: | ||||
|     - angrycreative | ||||
|   label: Angry Creative | ||||
|   url: 'https://angrycreative.se' | ||||
| app-signal: | ||||
|   icons: | ||||
|     - stroopwafel | ||||
|   label: AppSignal | ||||
|   url: 'https://appsignal.com' | ||||
| apper-systems-ab: | ||||
|   icons: | ||||
|     - apper | ||||
|   label: Apper Systems AB | ||||
|   url: 'http://www.apper.com' | ||||
| 'asymmetrik,ltd': | ||||
|   icons: | ||||
|     - asymmetrik | ||||
|   label: 'Asymmetrik, Ltd.' | ||||
|   url: 'http://asymmetrik.com' | ||||
| ausmed-education: | ||||
|   icons: | ||||
|     - user-nurse | ||||
|   label: Ausmed Education | ||||
|   url: 'https://www.ausmed.com.au' | ||||
| avianex: | ||||
|   icons: | ||||
|     - avianex | ||||
|   label: avianex | ||||
|   url: 'https://www.avianex.de' | ||||
| bi-mobject: | ||||
|   icons: | ||||
|     - bimobject | ||||
|   label: BIMobject | ||||
|   url: 'http://bimobject.com' | ||||
| bity: | ||||
|   icons: | ||||
|     - bity | ||||
|   label: Bity | ||||
|   url: 'http://bity.com' | ||||
| blackpulp-designs: | ||||
|   icons: | ||||
|     - pray | ||||
|   label: Blackpulp Designs | ||||
|   url: 'https://www.blackpulp.com' | ||||
| blissbook: | ||||
|   icons: | ||||
|     - pen-fancy | ||||
|   label: Blissbook | ||||
|   url: 'https://blissbook.com' | ||||
| büromöbel-experte-gmb-h &co-kg: | ||||
|   icons: | ||||
|     - buromobelexperte | ||||
|   label: Büromöbel-Experte GmbH & Co. KG. | ||||
|   url: 'https://www.bueromoebel-experte.de' | ||||
| c-panel: | ||||
|   icons: | ||||
|     - cpanel | ||||
|   label: cPanel | ||||
|   url: 'http://cpanel.com' | ||||
| centercode: | ||||
|   icons: | ||||
|     - centercode | ||||
|   label: Centercode | ||||
|   url: 'https://www.centercode.com' | ||||
| cibltd: | ||||
|   icons: | ||||
|     - drum-steelpan | ||||
|   label: Comprehensive Insurance Brokers Limited | ||||
|   url: 'http://www.cibltd.com' | ||||
| clear-blue-technologies: | ||||
|   icons: | ||||
|     - solar-panel | ||||
|   label: Clear Blue Technologies | ||||
|   url: 'http://www.clearbluetechnologies.com' | ||||
| cloudscale-ch: | ||||
|   icons: | ||||
|     - cloudscale | ||||
|   label: cloudscale.ch | ||||
|   url: 'https://www.cloudscale.ch' | ||||
| cloudsmith: | ||||
|   icons: | ||||
|     - cloudsmith | ||||
|   label: Cloudsmith | ||||
|   url: 'https://cloudsmith.io' | ||||
| cloudversify: | ||||
|   icons: | ||||
|     - cloudversify | ||||
|   label: cloudversify | ||||
|   url: 'https://www.cloudversify.com' | ||||
| cuttlefish: | ||||
|   icons: | ||||
|     - cuttlefish | ||||
|   label: Cuttlefish | ||||
|   url: 'http://wearecuttlefish.com' | ||||
| cymedica: | ||||
|   icons: | ||||
|     - wave-square | ||||
|   label: CyMedica | ||||
|   url: 'https://www.cymedicaortho.com' | ||||
| darren-wiebe: | ||||
|   icons: | ||||
|     - church | ||||
|   label: Darren Wiebe | ||||
| deploy-dog: | ||||
|   icons: | ||||
|     - deploydog | ||||
|   label: deploy.dog | ||||
|   url: 'http://deploy.dog' | ||||
| deskpro: | ||||
|   icons: | ||||
|     - deskpro | ||||
|   label: Deskpro | ||||
|   url: 'http://www.deskpro.com' | ||||
| discourse: | ||||
|   icons: | ||||
|     - discourse | ||||
|   label: Discourse | ||||
|   url: 'https://discourse.org' | ||||
| doc-hub: | ||||
|   icons: | ||||
|     - dochub | ||||
|   label: DocHub | ||||
|   url: 'https://dochub.com' | ||||
| draft2-digital: | ||||
|   icons: | ||||
|     - draft2digital | ||||
|   label: Draft2Digital | ||||
|   url: 'http://draft2digital.com' | ||||
| dyalog-apl: | ||||
|   icons: | ||||
|     - dyalog | ||||
|   label: Dyalog APL | ||||
|   url: 'http://www.dyalog.com' | ||||
| econopublish: | ||||
|   icons: | ||||
|     - hat-cowboy-side | ||||
|   label: EconoPublish | ||||
|   url: 'https://www.econopublish.com' | ||||
| firstdraft: | ||||
|   icons: | ||||
|     - firstdraft | ||||
|   label: firstdraft | ||||
|   url: 'http://www.firstdraft.com' | ||||
| fleetplan: | ||||
|   icons: | ||||
|     - helicopter | ||||
|   label: FLEETPLAN | ||||
|   url: 'https://www.fleetplan.net' | ||||
| getaroom: | ||||
|   icons: | ||||
|     - archway | ||||
|     - dumbbell | ||||
|     - hotel | ||||
|     - map-marked | ||||
|     - map-marked-alt | ||||
|     - monument | ||||
|     - spa | ||||
|     - swimmer | ||||
|     - swimming-pool | ||||
|   label: getaroom | ||||
|   url: 'https://www.getaroom.com' | ||||
| git-kraken: | ||||
|   icons: | ||||
|     - gitkraken | ||||
|   label: GitKraken | ||||
|   url: 'https://www.gitkraken.com' | ||||
| gofore: | ||||
|   icons: | ||||
|     - gofore | ||||
|   label: Gofore | ||||
|   url: 'http://gofore.com' | ||||
| 'gripfire,inc': | ||||
|   icons: | ||||
|     - gripfire | ||||
|   label: 'Gripfire, Inc.' | ||||
|   url: 'http://gripfire.io' | ||||
| harvard-medical-school: | ||||
|   icons: | ||||
|     - allergies | ||||
|     - ambulance | ||||
|     - band-aid | ||||
|     - briefcase-medical | ||||
|     - burn | ||||
|     - capsules | ||||
|     - diagnoses | ||||
|     - dna | ||||
|     - file-medical | ||||
|     - file-medical-alt | ||||
|     - first-aid | ||||
|     - heart | ||||
|     - heartbeat | ||||
|     - hospital | ||||
|     - hospital-alt | ||||
|     - hospital-symbol | ||||
|     - id-card-alt | ||||
|     - notes-medical | ||||
|     - pills | ||||
|     - plus | ||||
|     - prescription-bottle | ||||
|     - prescription-bottle-alt | ||||
|     - procedures | ||||
|     - smoking | ||||
|     - stethoscope | ||||
|     - syringe | ||||
|     - tablets | ||||
|     - thermometer | ||||
|     - user-md | ||||
|     - vial | ||||
|     - vials | ||||
|     - weight | ||||
|     - x-ray | ||||
|   label: Harvard Medical School | ||||
|   url: 'https://hms.harvard.edu' | ||||
| hips: | ||||
|   icons: | ||||
|     - hips | ||||
|   label: Hips | ||||
|   url: 'https://hips.com' | ||||
| hire-a-helper: | ||||
|   icons: | ||||
|     - archive | ||||
|     - blanket | ||||
|     - box-alt | ||||
|     - box-fragile | ||||
|     - box-full | ||||
|     - box-open | ||||
|     - box-up | ||||
|     - boxes-alt | ||||
|     - container-storage | ||||
|     - couch | ||||
|     - dolly | ||||
|     - dolly-empty | ||||
|     - fragile | ||||
|     - lamp | ||||
|     - loveseat | ||||
|     - people-carry | ||||
|     - person-carry | ||||
|     - person-dolly | ||||
|     - person-dolly-empty | ||||
|     - ramp-loading | ||||
|     - route | ||||
|     - sign | ||||
|     - suitcase | ||||
|     - tape | ||||
|     - truck-container | ||||
|     - truck-couch | ||||
|     - truck-loading | ||||
|     - truck-moving | ||||
|     - truck-ramp | ||||
|     - wine-glass | ||||
|   label: HireAHelper | ||||
|   url: 'https://www.hireahelper.com' | ||||
| hornbill: | ||||
|   icons: | ||||
|     - hornbill | ||||
|   label: Hornbill | ||||
|   url: 'https://www.hornbill.com' | ||||
| hotjar: | ||||
|   icons: | ||||
|     - hotjar | ||||
|   label: Hotjar | ||||
|   url: 'https://www.hotjar.com' | ||||
| hub-spot: | ||||
|   icons: | ||||
|     - hubspot | ||||
|   label: HubSpot | ||||
|   url: 'http://www.HubSpot.com' | ||||
| in-site-systems: | ||||
|   icons: | ||||
|     - toolbox | ||||
|   label: InSite Systems | ||||
|   url: 'https://www.insitesystems.com' | ||||
| inspira-bvba: | ||||
|   icons: | ||||
|     - chess-knight | ||||
|   label: Inspira bvba | ||||
|   url: 'https://www.inspira.be' | ||||
| joe-emison: | ||||
|   icons: | ||||
|     - blender-phone | ||||
|   label: Joe Emison | ||||
| joget: | ||||
|   icons: | ||||
|     - joget | ||||
|   label: Joget | ||||
|   url: 'http://www.joget.org' | ||||
| jon-galloway: | ||||
|   icons: | ||||
|     - crow | ||||
|   label: Jon Galloway | ||||
| kevin-barone: | ||||
|   icons: | ||||
|     - file-contract | ||||
|   label: Kevin Barone | ||||
| key-cdn: | ||||
|   icons: | ||||
|     - keycdn | ||||
|   label: KeyCDN | ||||
|   url: 'https://www.keycdn.com' | ||||
| korvue: | ||||
|   icons: | ||||
|     - korvue | ||||
|   label: Korvue | ||||
|   url: 'https://korvue.com' | ||||
| max-elman: | ||||
|   icons: | ||||
|     - frog | ||||
|   label: Max Elman | ||||
| med-apps: | ||||
|   icons: | ||||
|     - medapps | ||||
|   label: MedApps | ||||
|   url: 'http://medapps.com.au' | ||||
| medapps: | ||||
|   icons: | ||||
|     - book-medical | ||||
|     - book-user | ||||
|     - books-medical | ||||
|     - clinic-medical | ||||
|     - clipboard-user | ||||
|     - comment-alt-medical | ||||
|     - comment-medical | ||||
|     - crutch | ||||
|     - crutches | ||||
|     - disease | ||||
|     - files-medical | ||||
|     - head-side-brain | ||||
|     - head-side-medical | ||||
|     - hospital-user | ||||
|     - hospitals | ||||
|     - laptop-medical | ||||
|     - pager | ||||
|     - stretcher | ||||
|     - user-md-chat | ||||
|     - users-medical | ||||
|     - walker | ||||
|   label: MedApps | ||||
|   url: 'https://medapps.com.au' | ||||
| megaport: | ||||
|   icons: | ||||
|     - megaport | ||||
|   label: Megaport | ||||
|   url: 'https://www.megaport.com' | ||||
| mix: | ||||
|   icons: | ||||
|     - mix | ||||
|   label: Mix | ||||
|   url: 'http://mix.com' | ||||
| mizuni: | ||||
|   icons: | ||||
|     - mizuni | ||||
|   label: Mizuni | ||||
|   url: 'http://www.mizuni.com' | ||||
| mrt: | ||||
|   icons: | ||||
|     - medrt | ||||
|   label: MRT | ||||
|   url: 'https://medrt.co.jp' | ||||
| mylogin-info: | ||||
|   icons: | ||||
|     - user-shield | ||||
|   label: mylogin.info | ||||
|   url: 'https://www.mylogin.info' | ||||
| napster: | ||||
|   icons: | ||||
|     - napster | ||||
|   label: Napster | ||||
|   url: 'http://www.napster.com' | ||||
| nimblr: | ||||
|   icons: | ||||
|     - nimblr | ||||
|   label: Nimblr | ||||
|   url: 'https://nimblr.ai' | ||||
| nompse: | ||||
|   icons: | ||||
|     - chalkboard | ||||
|     - chalkboard-teacher | ||||
|   label: Nomp.se | ||||
|   url: 'https://nomp.se' | ||||
| ns8: | ||||
|   icons: | ||||
|     - ns8 | ||||
|   label: NS8 | ||||
|   url: 'https://www.ns8.com' | ||||
| nutritionix: | ||||
|   icons: | ||||
|     - nutritionix | ||||
|   label: Nutritionix | ||||
|   url: 'http://www.nutritionix.com' | ||||
| page4-corporation: | ||||
|   icons: | ||||
|     - page4 | ||||
|   label: page4 Corporation | ||||
|   url: 'https://en.page4.com' | ||||
| pal-fed: | ||||
|   icons: | ||||
|     - palfed | ||||
|   label: PalFed | ||||
|   url: 'https://www.palfed.com' | ||||
| pcsg: | ||||
|   icons: | ||||
|     - horse-head | ||||
|   label: PCSG | ||||
|   url: 'https://www.pcsg.de' | ||||
| phabricator: | ||||
|   icons: | ||||
|     - phabricator | ||||
|   label: Phabricator | ||||
|   url: 'http://phacility.com' | ||||
| promo-wizard: | ||||
|   icons: | ||||
|     - hat-wizard | ||||
|   label: Promo Wizard | ||||
|   url: 'https://promowizard.co.uk' | ||||
| pulse-eight: | ||||
|   icons: | ||||
|     - volume-mute | ||||
|   label: Pulse-Eight | ||||
|   url: 'https://pulse-eight.com' | ||||
| purely-interactive: | ||||
|   icons: | ||||
|     - kiwi-bird | ||||
|   label: Purely Interactive | ||||
|   url: 'https://www.purelyinteractive.ca' | ||||
| pushed: | ||||
|   icons: | ||||
|     - pushed | ||||
|   label: Pushed | ||||
|   url: 'https://pushed.co' | ||||
| quin-scape: | ||||
|   icons: | ||||
|     - quinscape | ||||
|   label: QuinScape | ||||
|   url: 'https://www.quinscape.de' | ||||
| reacteurope: | ||||
|   icons: | ||||
|     - reacteurope | ||||
|   label: ReactEurope | ||||
|   url: 'https://www.react-europe.org' | ||||
| readme-io: | ||||
|   icons: | ||||
|     - readme | ||||
|   label: Readme.io | ||||
|   url: 'http://readme.io' | ||||
| red-river: | ||||
|   icons: | ||||
|     - red-river | ||||
|   label: red river | ||||
|   url: 'https://river.red' | ||||
| replyd: | ||||
|   icons: | ||||
|     - replyd | ||||
|   label: replyd | ||||
| resolving: | ||||
|   icons: | ||||
|     - resolving | ||||
|   label: Resolving | ||||
|   url: 'https://resolving.com' | ||||
| rev-io: | ||||
|   icons: | ||||
|     - rev | ||||
|   label: Rev.io | ||||
|   url: 'https://rev.io' | ||||
| rock-rms: | ||||
|   icons: | ||||
|     - rockrms | ||||
|   label: Rock RMS | ||||
|   url: 'http://rockrms.com' | ||||
| rocket-chat: | ||||
|   icons: | ||||
|     - comment | ||||
|     - comment-alt | ||||
|     - comment-alt-check | ||||
|     - comment-alt-dots | ||||
|     - comment-alt-edit | ||||
|     - comment-alt-exclamation | ||||
|     - comment-alt-lines | ||||
|     - comment-alt-minus | ||||
|     - comment-alt-plus | ||||
|     - comment-alt-slash | ||||
|     - comment-alt-smile | ||||
|     - comment-alt-times | ||||
|     - comment-check | ||||
|     - comment-dots | ||||
|     - comment-edit | ||||
|     - comment-exclamation | ||||
|     - comment-lines | ||||
|     - comment-minus | ||||
|     - comment-plus | ||||
|     - comment-slash | ||||
|     - comment-smile | ||||
|     - comment-times | ||||
|     - comments | ||||
|     - comments-alt | ||||
|     - frown | ||||
|     - meh | ||||
|     - phone | ||||
|     - phone-plus | ||||
|     - phone-slash | ||||
|     - poo | ||||
|     - quote-left | ||||
|     - quote-right | ||||
|     - rocketchat | ||||
|     - smile | ||||
|     - smile-plus | ||||
|     - video | ||||
|     - video-plus | ||||
|     - video-slash | ||||
|   label: Rocket.Chat | ||||
|   url: 'https://rocket.chat' | ||||
| rodney-oliver: | ||||
|   icons: | ||||
|     - folder-minus | ||||
|     - folder-plus | ||||
|   label: Rodney Oliver | ||||
| schlix: | ||||
|   icons: | ||||
|     - schlix | ||||
|   label: SCHLIX | ||||
|   url: 'http://schlix.com' | ||||
| search-eng-in: | ||||
|   icons: | ||||
|     - searchengin | ||||
|   label: SearchEng.in | ||||
|   url: 'http://searcheng.in' | ||||
| service-stack: | ||||
|   icons: | ||||
|     - servicestack | ||||
|   label: ServiceStack | ||||
|   url: 'https://servicestack.net' | ||||
| shawn-storie: | ||||
|   icons: | ||||
|     - teeth | ||||
|     - teeth-open | ||||
|   label: Shawn Storie | ||||
| shopware: | ||||
|   icons: | ||||
|     - shopware | ||||
|   label: Shopware | ||||
|   url: 'https://shopware.de' | ||||
| shp: | ||||
|   icons: | ||||
|     - school | ||||
|   label: SHP | ||||
|   url: 'http://shp.com' | ||||
| silicon-barn-inc: | ||||
|   icons: | ||||
|     - project-diagram | ||||
|   label: Silicon Barn Inc | ||||
|   url: 'https://siliconbarn.com' | ||||
| sistrix: | ||||
|   icons: | ||||
|     - sistrix | ||||
|   label: SISTRIX | ||||
|   url: 'https://www.sistrix.de' | ||||
| smup: | ||||
|   icons: | ||||
|     - shoe-prints | ||||
|   label: Smup | ||||
|   url: 'https://www.atomsoftware.com.au' | ||||
| speakap: | ||||
|   icons: | ||||
|     - speakap | ||||
|   label: Speakap | ||||
|   url: 'https://speakap.com' | ||||
| stay-linked: | ||||
|   icons: | ||||
|     - barcode-alt | ||||
|     - barcode-read | ||||
|     - barcode-scan | ||||
|     - box | ||||
|     - box-check | ||||
|     - boxes | ||||
|     - clipboard-check | ||||
|     - clipboard-list | ||||
|     - conveyor-belt | ||||
|     - conveyor-belt-alt | ||||
|     - dolly | ||||
|     - dolly-empty | ||||
|     - dolly-flatbed | ||||
|     - dolly-flatbed-alt | ||||
|     - dolly-flatbed-empty | ||||
|     - forklift | ||||
|     - hand-holding-box | ||||
|     - hand-receiving | ||||
|     - inventory | ||||
|     - pallet | ||||
|     - pallet-alt | ||||
|     - scanner | ||||
|     - scanner-keyboard | ||||
|     - scanner-touchscreen | ||||
|     - shipping-fast | ||||
|     - shipping-timed | ||||
|     - tablet-rugged | ||||
|     - truck | ||||
|     - warehouse | ||||
|     - warehouse-alt | ||||
|   label: StayLinked | ||||
|   url: 'https://www.staylinked.com' | ||||
| sticker-mule: | ||||
|   icons: | ||||
|     - sticker-mule | ||||
|   label: Sticker Mule | ||||
|   url: 'https://stickermule.com' | ||||
| studio-vinari: | ||||
|   icons: | ||||
|     - studiovinari | ||||
|   label: Studio Vinari | ||||
|   url: 'https://studiovinari.com' | ||||
| supple: | ||||
|   icons: | ||||
|     - ad | ||||
|     - analytics | ||||
|     - badge-check | ||||
|     - badge-dollar | ||||
|     - badge-percent | ||||
|     - bullhorn | ||||
|     - bullseye | ||||
|     - bullseye-arrow | ||||
|     - bullseye-pointer | ||||
|     - comment-alt-dollar | ||||
|     - comment-dollar | ||||
|     - comments-alt-dollar | ||||
|     - comments-dollar | ||||
|     - envelope-open-dollar | ||||
|     - envelope-open-text | ||||
|     - funnel-dollar | ||||
|     - gift-card | ||||
|     - lightbulb-dollar | ||||
|     - lightbulb-exclamation | ||||
|     - lightbulb-on | ||||
|     - lightbulb-slash | ||||
|     - mail-bulk | ||||
|     - megaphone | ||||
|     - poll | ||||
|     - poll-h | ||||
|     - search-dollar | ||||
|     - search-location | ||||
|     - supple | ||||
|     - user-crown | ||||
|     - users-crown | ||||
|   label: Supple | ||||
|   url: 'https://supple.com.au' | ||||
| the-red-yeti: | ||||
|   icons: | ||||
|     - the-red-yeti | ||||
|   label: The Red Yeti | ||||
|   url: 'http://theredyeti.com' | ||||
| the-us-sunnah-foundation: | ||||
|   icons: | ||||
|     - book-heart | ||||
|     - box-heart | ||||
|     - box-usd | ||||
|     - dollar-sign | ||||
|     - donate | ||||
|     - dove | ||||
|     - gift | ||||
|     - globe | ||||
|     - hand-heart | ||||
|     - hand-holding-heart | ||||
|     - hand-holding-seedling | ||||
|     - hand-holding-usd | ||||
|     - hand-holding-water | ||||
|     - hands-heart | ||||
|     - hands-helping | ||||
|     - hands-usd | ||||
|     - handshake | ||||
|     - handshake-alt | ||||
|     - heart | ||||
|     - heart-circle | ||||
|     - heart-square | ||||
|     - home-heart | ||||
|     - leaf | ||||
|     - leaf-heart | ||||
|     - parachute-box | ||||
|     - piggy-bank | ||||
|     - ribbon | ||||
|     - seedling | ||||
|     - usd-circle | ||||
|     - usd-square | ||||
|   label: The us-Sunnah Foundation | ||||
|   url: 'https://www.ussunnah.org' | ||||
| themeco: | ||||
|   icons: | ||||
|     - themeco | ||||
|   label: Themeco | ||||
|   url: 'https://theme.co' | ||||
| think-peaks: | ||||
|   icons: | ||||
|     - think-peaks | ||||
|   label: Think Peaks | ||||
|   url: 'https://thinkpeaks.com/' | ||||
| typo3: | ||||
|   icons: | ||||
|     - typo3 | ||||
|   label: Typo3 | ||||
|   url: 'https://typo3.org' | ||||
| uniregistry: | ||||
|   icons: | ||||
|     - uniregistry | ||||
|   label: Uniregistry | ||||
|   url: 'https://uniregistry.com' | ||||
| us-sunnah-foundation: | ||||
|   icons: | ||||
|     - ussunnah | ||||
|   label: us-Sunnah Foundation | ||||
|   url: 'https://www.ussunnah.org' | ||||
| vaadin: | ||||
|   icons: | ||||
|     - vaadin | ||||
|   label: Vaadin | ||||
|   url: 'http://vaadin.com' | ||||
| via: | ||||
|   icons: | ||||
|     - car-crash | ||||
|     - draw-circle | ||||
|     - draw-polygon | ||||
|     - draw-square | ||||
|     - house-damage | ||||
|     - layer-group | ||||
|     - layer-minus | ||||
|     - layer-plus | ||||
|     - skull-crossbones | ||||
|     - user-injured | ||||
|   label: VIA Traffic Software Solutions | ||||
|   url: 'https://www.via.software' | ||||
| victor-costan: | ||||
|   icons: | ||||
|     - otter | ||||
|   label: Staphany Park and Victor Costan | ||||
| vnv: | ||||
|   icons: | ||||
|     - vnv | ||||
|   label: VNV | ||||
|   url: 'https://www.vnv.ch' | ||||
| weedable: | ||||
|   icons: | ||||
|     - bong | ||||
|     - cannabis | ||||
|     - hippo | ||||
|     - joint | ||||
|     - mortar-pestle | ||||
|     - prescription | ||||
|   label: Weedable | ||||
|   url: 'https://www.weedable.com' | ||||
| whmcs: | ||||
|   icons: | ||||
|     - whmcs | ||||
|   label: WHMCS | ||||
|   url: 'https://www.whmcs.com' | ||||
| workrails: | ||||
|   icons: | ||||
|     - briefcase | ||||
|   label: WorkRails | ||||
|   url: 'https://www.workrails.com' | ||||
| wpressr: | ||||
|   icons: | ||||
|     - wpressr | ||||
|   label: wpressr | ||||
|   url: 'https://wpressr.com' | ||||
							
								
								
									
										20
									
								
								nodejs/public/scss/_animated.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,20 @@ | ||||
| // Animated Icons | ||||
| // -------------------------- | ||||
|  | ||||
| .#{$fa-css-prefix}-spin { | ||||
|   animation: fa-spin 2s infinite linear; | ||||
| } | ||||
|  | ||||
| .#{$fa-css-prefix}-pulse { | ||||
|   animation: fa-spin 1s infinite steps(8); | ||||
| } | ||||
|  | ||||
| @keyframes fa-spin { | ||||
|   0% { | ||||
|     transform: rotate(0deg); | ||||
|   } | ||||
|  | ||||
|   100% { | ||||
|     transform: rotate(360deg); | ||||
|   } | ||||
| } | ||||
							
								
								
									
										20
									
								
								nodejs/public/scss/_bordered-pulled.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,20 @@ | ||||
| // Bordered & Pulled | ||||
| // ------------------------- | ||||
|  | ||||
| .#{$fa-css-prefix}-border { | ||||
|   border: solid .08em $fa-border-color; | ||||
|   border-radius: .1em; | ||||
|   padding: .2em .25em .15em; | ||||
| } | ||||
|  | ||||
| .#{$fa-css-prefix}-pull-left { float: left; } | ||||
| .#{$fa-css-prefix}-pull-right { float: right; } | ||||
|  | ||||
| .#{$fa-css-prefix}, | ||||
| .fas, | ||||
| .far, | ||||
| .fal, | ||||
| .fab { | ||||
|   &.#{$fa-css-prefix}-pull-left { margin-right: .3em; } | ||||
|   &.#{$fa-css-prefix}-pull-right { margin-left: .3em; } | ||||
| } | ||||
							
								
								
									
										21
									
								
								nodejs/public/scss/_core.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,21 @@ | ||||
| // Base Class Definition | ||||
| // ------------------------- | ||||
|  | ||||
| .#{$fa-css-prefix}, | ||||
| .fas, | ||||
| .far, | ||||
| .fal, | ||||
| .fad, | ||||
| .fab { | ||||
|   -moz-osx-font-smoothing: grayscale; | ||||
|   -webkit-font-smoothing: antialiased; | ||||
|   display: inline-block; | ||||
|   font-style: normal; | ||||
|   font-variant: normal; | ||||
|   text-rendering: auto; | ||||
|   line-height: 1; | ||||
| } | ||||
|  | ||||
| %fa-icon { | ||||
|   @include fa-icon; | ||||
| } | ||||
							
								
								
									
										6
									
								
								nodejs/public/scss/_fixed-width.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,6 @@ | ||||
| // Fixed Width Icons | ||||
| // ------------------------- | ||||
| .#{$fa-css-prefix}-fw { | ||||
|   text-align: center; | ||||
|   width: $fa-fw-width; | ||||
| } | ||||
							
								
								
									
										2302
									
								
								nodejs/public/scss/_icons.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										23
									
								
								nodejs/public/scss/_larger.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,23 @@ | ||||
| // Icon Sizes | ||||
| // ------------------------- | ||||
|  | ||||
| // makes the font 33% larger relative to the icon container | ||||
| .#{$fa-css-prefix}-lg { | ||||
|   font-size: (4em / 3); | ||||
|   line-height: (3em / 4); | ||||
|   vertical-align: -.0667em; | ||||
| } | ||||
|  | ||||
| .#{$fa-css-prefix}-xs { | ||||
|   font-size: .75em; | ||||
| } | ||||
|  | ||||
| .#{$fa-css-prefix}-sm { | ||||
|   font-size: .875em; | ||||
| } | ||||
|  | ||||
| @for $i from 1 through 10 { | ||||
|   .#{$fa-css-prefix}-#{$i}x { | ||||
|     font-size: $i * 1em; | ||||
|   } | ||||
| } | ||||
							
								
								
									
										18
									
								
								nodejs/public/scss/_list.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,18 @@ | ||||
| // List Icons | ||||
| // ------------------------- | ||||
|  | ||||
| .#{$fa-css-prefix}-ul { | ||||
|   list-style-type: none; | ||||
|   margin-left: $fa-li-width * 5/4; | ||||
|   padding-left: 0; | ||||
|  | ||||
|   > li { position: relative; } | ||||
| } | ||||
|  | ||||
| .#{$fa-css-prefix}-li { | ||||
|   left: -$fa-li-width; | ||||
|   position: absolute; | ||||
|   text-align: center; | ||||
|   width: $fa-li-width; | ||||
|   line-height: inherit; | ||||
| } | ||||
							
								
								
									
										56
									
								
								nodejs/public/scss/_mixins.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,56 @@ | ||||
| // Mixins | ||||
| // -------------------------- | ||||
|  | ||||
| @mixin fa-icon { | ||||
|   -webkit-font-smoothing: antialiased; | ||||
|   -moz-osx-font-smoothing: grayscale; | ||||
|   display: inline-block; | ||||
|   font-style: normal; | ||||
|   font-variant: normal; | ||||
|   font-weight: normal; | ||||
|   line-height: 1; | ||||
| } | ||||
|  | ||||
| @mixin fa-icon-rotate($degrees, $rotation) { | ||||
|   -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation})"; | ||||
|   transform: rotate($degrees); | ||||
| } | ||||
|  | ||||
| @mixin fa-icon-flip($horiz, $vert, $rotation) { | ||||
|   -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}, mirror=1)"; | ||||
|   transform: scale($horiz, $vert); | ||||
| } | ||||
|  | ||||
|  | ||||
| // Only display content to screen readers. A la Bootstrap 4. | ||||
| // | ||||
| // See: http://a11yproject.com/posts/how-to-hide-content/ | ||||
|  | ||||
| @mixin sr-only { | ||||
|   border: 0; | ||||
|   clip: rect(0, 0, 0, 0); | ||||
|   height: 1px; | ||||
|   margin: -1px; | ||||
|   overflow: hidden; | ||||
|   padding: 0; | ||||
|   position: absolute; | ||||
|   width: 1px; | ||||
| } | ||||
|  | ||||
| // Use in conjunction with .sr-only to only display content when it's focused. | ||||
| // | ||||
| // Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1 | ||||
| // | ||||
| // Credit: HTML5 Boilerplate | ||||
|  | ||||
| @mixin sr-only-focusable { | ||||
|   &:active, | ||||
|   &:focus { | ||||
|     clip: auto; | ||||
|     height: auto; | ||||
|     margin: 0; | ||||
|     overflow: visible; | ||||
|     position: static; | ||||
|     width: auto; | ||||
|   } | ||||
| } | ||||
							
								
								
									
										24
									
								
								nodejs/public/scss/_rotated-flipped.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,24 @@ | ||||
| // Rotated & Flipped Icons | ||||
| // ------------------------- | ||||
|  | ||||
| .#{$fa-css-prefix}-rotate-90  { @include fa-icon-rotate(90deg, 1);  } | ||||
| .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } | ||||
| .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } | ||||
|  | ||||
| .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } | ||||
| .#{$fa-css-prefix}-flip-vertical   { @include fa-icon-flip(1, -1, 2); } | ||||
| .#{$fa-css-prefix}-flip-both, .#{$fa-css-prefix}-flip-horizontal.#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(-1, -1, 2); } | ||||
|  | ||||
| // Hook for IE8-9 | ||||
| // ------------------------- | ||||
|  | ||||
| :root { | ||||
|   .#{$fa-css-prefix}-rotate-90, | ||||
|   .#{$fa-css-prefix}-rotate-180, | ||||
|   .#{$fa-css-prefix}-rotate-270, | ||||
|   .#{$fa-css-prefix}-flip-horizontal, | ||||
|   .#{$fa-css-prefix}-flip-vertical, | ||||
|   .#{$fa-css-prefix}-flip-both { | ||||
|     filter: none; | ||||
|   } | ||||
| } | ||||
							
								
								
									
										5
									
								
								nodejs/public/scss/_screen-reader.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,5 @@ | ||||
| // Screen Readers | ||||
| // ------------------------- | ||||
|  | ||||
| .sr-only { @include sr-only; } | ||||
| .sr-only-focusable { @include sr-only-focusable; } | ||||
							
								
								
									
										2066
									
								
								nodejs/public/scss/_shims.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										31
									
								
								nodejs/public/scss/_stacked.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,31 @@ | ||||
| // Stacked Icons | ||||
| // ------------------------- | ||||
|  | ||||
| .#{$fa-css-prefix}-stack { | ||||
|   display: inline-block; | ||||
|   height: 2em; | ||||
|   line-height: 2em; | ||||
|   position: relative; | ||||
|   vertical-align: middle; | ||||
|   width: ($fa-fw-width*2); | ||||
| } | ||||
|  | ||||
| .#{$fa-css-prefix}-stack-1x, | ||||
| .#{$fa-css-prefix}-stack-2x { | ||||
|   left: 0; | ||||
|   position: absolute; | ||||
|   text-align: center; | ||||
|   width: 100%; | ||||
| } | ||||
|  | ||||
| .#{$fa-css-prefix}-stack-1x { | ||||
|   line-height: inherit; | ||||
| } | ||||
|  | ||||
| .#{$fa-css-prefix}-stack-2x { | ||||
|   font-size: 2em; | ||||
| } | ||||
|  | ||||
| .#{$fa-css-prefix}-inverse { | ||||
|   color: $fa-inverse; | ||||
| } | ||||
							
								
								
									
										2319
									
								
								nodejs/public/scss/_variables.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										23
									
								
								nodejs/public/scss/brands.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,23 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @import 'variables'; | ||||
|  | ||||
| @font-face { | ||||
|   font-family: 'Font Awesome 5 Brands'; | ||||
|   font-style: normal; | ||||
|   font-weight: 400; | ||||
|   font-display: $fa-font-display; | ||||
|   src: url('#{$fa-font-path}/fa-brands-400.eot'); | ||||
|   src: url('#{$fa-font-path}/fa-brands-400.eot?#iefix') format('embedded-opentype'), | ||||
|   url('#{$fa-font-path}/fa-brands-400.woff2') format('woff2'), | ||||
|   url('#{$fa-font-path}/fa-brands-400.woff') format('woff'), | ||||
|   url('#{$fa-font-path}/fa-brands-400.ttf') format('truetype'), | ||||
|   url('#{$fa-font-path}/fa-brands-400.svg#fontawesome') format('svg'); | ||||
| } | ||||
|  | ||||
| .fab { | ||||
|   font-family: 'Font Awesome 5 Brands'; | ||||
|   font-weight: 400; | ||||
| } | ||||
							
								
								
									
										1916
									
								
								nodejs/public/scss/duotone.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										16
									
								
								nodejs/public/scss/fontawesome.scss
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,16 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @import 'variables'; | ||||
| @import 'mixins'; | ||||
| @import 'core'; | ||||
| @import 'larger'; | ||||
| @import 'fixed-width'; | ||||
| @import 'list'; | ||||
| @import 'bordered-pulled'; | ||||
| @import 'animated'; | ||||
| @import 'rotated-flipped'; | ||||
| @import 'stacked'; | ||||
| @import 'icons'; | ||||
| @import 'screen-reader'; | ||||
							
								
								
									
										23
									
								
								nodejs/public/scss/light.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,23 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @import 'variables'; | ||||
|  | ||||
| @font-face { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-style: normal; | ||||
|   font-weight: 300; | ||||
|   font-display: $fa-font-display; | ||||
|   src: url('#{$fa-font-path}/fa-light-300.eot'); | ||||
|   src: url('#{$fa-font-path}/fa-light-300.eot?#iefix') format('embedded-opentype'), | ||||
|   url('#{$fa-font-path}/fa-light-300.woff2') format('woff2'), | ||||
|   url('#{$fa-font-path}/fa-light-300.woff') format('woff'), | ||||
|   url('#{$fa-font-path}/fa-light-300.ttf') format('truetype'), | ||||
|   url('#{$fa-font-path}/fa-light-300.svg#fontawesome') format('svg'); | ||||
| } | ||||
|  | ||||
| .fal { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-weight: 300; | ||||
| } | ||||
							
								
								
									
										23
									
								
								nodejs/public/scss/regular.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,23 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @import 'variables'; | ||||
|  | ||||
| @font-face { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-style: normal; | ||||
|   font-weight: 400; | ||||
|   font-display: $fa-font-display; | ||||
|   src: url('#{$fa-font-path}/fa-regular-400.eot'); | ||||
|   src: url('#{$fa-font-path}/fa-regular-400.eot?#iefix') format('embedded-opentype'), | ||||
|   url('#{$fa-font-path}/fa-regular-400.woff2') format('woff2'), | ||||
|   url('#{$fa-font-path}/fa-regular-400.woff') format('woff'), | ||||
|   url('#{$fa-font-path}/fa-regular-400.ttf') format('truetype'), | ||||
|   url('#{$fa-font-path}/fa-regular-400.svg#fontawesome') format('svg'); | ||||
| } | ||||
|  | ||||
| .far { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-weight: 400; | ||||
| } | ||||
							
								
								
									
										24
									
								
								nodejs/public/scss/solid.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,24 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @import 'variables'; | ||||
|  | ||||
| @font-face { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-style: normal; | ||||
|   font-weight: 900; | ||||
|   font-display: $fa-font-display; | ||||
|   src: url('#{$fa-font-path}/fa-solid-900.eot'); | ||||
|   src: url('#{$fa-font-path}/fa-solid-900.eot?#iefix') format('embedded-opentype'), | ||||
|   url('#{$fa-font-path}/fa-solid-900.woff2') format('woff2'), | ||||
|   url('#{$fa-font-path}/fa-solid-900.woff') format('woff'), | ||||
|   url('#{$fa-font-path}/fa-solid-900.ttf') format('truetype'), | ||||
|   url('#{$fa-font-path}/fa-solid-900.svg#fontawesome') format('svg'); | ||||
| } | ||||
|  | ||||
| .fa, | ||||
| .fas { | ||||
|   font-family: 'Font Awesome 5 Pro'; | ||||
|   font-weight: 900; | ||||
| } | ||||
							
								
								
									
										6
									
								
								nodejs/public/scss/v4-shims.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1,6 @@ | ||||
| /*! | ||||
|  * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com | ||||
|  * License - https://fontawesome.com/license (Commercial License) | ||||
|  */ | ||||
| @import 'variables'; | ||||
| @import 'shims'; | ||||
							
								
								
									
										1354
									
								
								nodejs/public/sprites/brands.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 448 KiB | 
							
								
								
									
										5561
									
								
								nodejs/public/sprites/duotone.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.4 MiB | 
							
								
								
									
										5560
									
								
								nodejs/public/sprites/light.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.6 MiB | 
							
								
								
									
										5560
									
								
								nodejs/public/sprites/regular.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.4 MiB | 
							
								
								
									
										5560
									
								
								nodejs/public/sprites/solid.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.2 MiB | 
							
								
								
									
										1
									
								
								nodejs/public/svgs/brands/500px.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1 @@ | ||||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M103.3 344.3c-6.5-14.2-6.9-18.3 7.4-23.1 25.6-8 8 9.2 43.2 49.2h.3v-93.9c1.2-50.2 44-92.2 97.7-92.2 53.9 0 97.7 43.5 97.7 96.8 0 63.4-60.8 113.2-128.5 93.3-10.5-4.2-2.1-31.7 8.5-28.6 53 0 89.4-10.1 89.4-64.4 0-61-77.1-89.6-116.9-44.6-23.5 26.4-17.6 42.1-17.6 157.6 50.7 31 118.3 22 160.4-20.1 24.8-24.8 38.5-58 38.5-93 0-35.2-13.8-68.2-38.8-93.3-24.8-24.8-57.8-38.5-93.3-38.5s-68.8 13.8-93.5 38.5c-.3.3-16 16.5-21.2 23.9l-.5.6c-3.3 4.7-6.3 9.1-20.1 6.1-6.9-1.7-14.3-5.8-14.3-11.8V20c0-5 3.9-10.5 10.5-10.5h241.3c8.3 0 8.3 11.6 8.3 15.1 0 3.9 0 15.1-8.3 15.1H130.3v132.9h.3c104.2-109.8 282.8-36 282.8 108.9 0 178.1-244.8 220.3-310.1 62.8zm63.3-260.8c-.5 4.2 4.6 24.5 14.6 20.6C306 56.6 384 144.5 390.6 144.5c4.8 0 22.8-15.3 14.3-22.8-93.2-89-234.5-57-238.3-38.2zM393 414.7C283 524.6 94 475.5 61 310.5c0-12.2-30.4-7.4-28.9 3.3 24 173.4 246 256.9 381.6 121.3 6.9-7.8-12.6-28.4-20.7-20.4zM213.6 306.6c0 4 4.3 7.3 5.5 8.5 3 3 6.1 4.4 8.5 4.4 3.8 0 2.6.2 22.3-19.5 19.6 19.3 19.1 19.5 22.3 19.5 5.4 0 18.5-10.4 10.7-18.2L265.6 284l18.2-18.2c6.3-6.8-10.1-21.8-16.2-15.7L249.7 268c-18.6-18.8-18.4-19.5-21.5-19.5-5 0-18 11.7-12.4 17.3L234 284c-18.1 17.9-20.4 19.2-20.4 22.6z"/></svg> | ||||
| After Width: | Height: | Size: 1.2 KiB | 
							
								
								
									
										1
									
								
								nodejs/public/svgs/brands/accessible-icon.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1 @@ | ||||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M423.9 255.8L411 413.1c-3.3 40.7-63.9 35.1-60.6-4.9l10-122.5-41.1 2.3c10.1 20.7 15.8 43.9 15.8 68.5 0 41.2-16.1 78.7-42.3 106.5l-39.3-39.3c57.9-63.7 13.1-167.2-74-167.2-25.9 0-49.5 9.9-67.2 26L73 243.2c22-20.7 50.1-35.1 81.4-40.2l75.3-85.7-42.6-24.8-51.6 46c-30 26.8-70.6-18.5-40.5-45.4l68-60.7c9.8-8.8 24.1-10.2 35.5-3.6 0 0 139.3 80.9 139.5 81.1 16.2 10.1 20.7 36 6.1 52.6L285.7 229l106.1-5.9c18.5-1.1 33.6 14.4 32.1 32.7zm-64.9-154c28.1 0 50.9-22.8 50.9-50.9C409.9 22.8 387.1 0 359 0c-28.1 0-50.9 22.8-50.9 50.9 0 28.1 22.8 50.9 50.9 50.9zM179.6 456.5c-80.6 0-127.4-90.6-82.7-156.1l-39.7-39.7C36.4 287 24 320.3 24 356.4c0 130.7 150.7 201.4 251.4 122.5l-39.7-39.7c-16 10.9-35.3 17.3-56.1 17.3z"/></svg> | ||||
| After Width: | Height: | Size: 775 B | 
							
								
								
									
										1
									
								
								nodejs/public/svgs/brands/accusoft.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1 @@ | ||||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path d="M322.1 252v-1l-51.2-65.8s-12 1.6-25 15.1c-9 9.3-242.1 239.1-243.4 240.9-7 10 1.6 6.8 15.7 1.7.8 0 114.5-36.6 114.5-36.6.5-.6-.1-.1.6-.6-.4-5.1-.8-26.2-1-27.7-.6-5.2 2.2-6.9 7-8.9l92.6-33.8c.6-.8 88.5-81.7 90.2-83.3zm160.1 120.1c13.3 16.1 20.7 13.3 30.8 9.3 3.2-1.2 115.4-47.6 117.8-48.9 8-4.3-1.7-16.7-7.2-23.4-2.1-2.5-205.1-245.6-207.2-248.3-9.7-12.2-14.3-12.9-38.4-12.8-10.2 0-106.8.5-116.5.6-19.2.1-32.9-.3-19.2 16.9C250 75 476.5 365.2 482.2 372.1zm152.7 1.6c-2.3-.3-24.6-4.7-38-7.2 0 0-115 50.4-117.5 51.6-16 7.3-26.9-3.2-36.7-14.6l-57.1-74c-5.4-.9-60.4-9.6-65.3-9.3-3.1.2-9.6.8-14.4 2.9-4.9 2.1-145.2 52.8-150.2 54.7-5.1 2-11.4 3.6-11.1 7.6.2 2.5 2 2.6 4.6 3.5 2.7.8 300.9 67.6 308 69.1 15.6 3.3 38.5 10.5 53.6 1.7 2.1-1.2 123.8-76.4 125.8-77.8 5.4-4 4.3-6.8-1.7-8.2z"/></svg> | ||||
| After Width: | Height: | Size: 852 B | 
							
								
								
									
										1
									
								
								nodejs/public/svgs/brands/acquisitions-incorporated.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1 @@ | ||||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M357.45 468.2c-1.2-7.7-1.3-7.6-9.6-7.6-99.8.2-111.8-2.4-112.7-2.6-12.3-1.7-20.6-10.5-21-23.1-.1-1.6-.2-71.6-1-129.1-.1-4.7 1.6-6.4 5.9-7.5 12.5-3 24.9-6.1 37.3-9.7 4.3-1.3 6.8-.2 8.4 3.5 4.5 10.3 8.8 20.6 13.2 30.9 1.6 3.7.1 4.4-3.4 4.4-10-.2-20-.1-30.4-.1v27h116c-1.4-9.5-2.7-18.1-4-27.5-7 0-13.8.4-20.4-.1-22.6-1.6-18.3-4.4-84-158.6-8.8-20.1-27.9-62.1-36.5-89.2-4.4-14 5.5-25.4 18.9-26.6 18.6-1.7 37.5-1.6 56.2-2 20.6-.4 41.2-.4 61.8-.5 3.1 0 4-1.4 4.3-4.3 1.2-9.8 2.7-19.5 4-29.2.8-5.3 1.6-10.7 2.4-16.1L23.75 0c-3.6 0-5.3 1.1-4.6 5.3 2.2 13.2-.8.8 6.4 45.3 63.4 0 71.8.9 101.8.5 12.3-.2 37 3.5 37.7 22.1.4 11.4-1.1 11.3-32.6 87.4-53.8 129.8-50.7 120.3-67.3 161-1.7 4.1-3.6 5.2-7.6 5.2-8.5-.2-17-.3-25.4.1-1.9.1-5.2 1.8-5.5 3.2-1.5 8.1-2.2 16.3-3.2 24.9h114.3v-27.6c-6.9 0-33.5.4-35.3-2.9 5.3-12.3 10.4-24.4 15.7-36.7 16.3 4 31.9 7.8 47.6 11.7 3.4.9 4.6 3 4.6 6.8-.1 42.9.1 85.9.2 128.8 0 10.2-5.5 19.1-14.9 23.1-6.5 2.7-3.3 3.4-121.4 2.4-5.3 0-7.1 2-7.6 6.8-1.5 12.9-2.9 25.9-5 38.8-.8 5 1.3 5.7 5.3 5.7 183.2.6-30.7 0 337.1 0-2.5-15-4.4-29.4-6.6-43.7zm-174.9-205.7c-13.3-4.2-26.6-8.2-39.9-12.5a44.53 44.53 0 0 1-5.8-2.9c17.2-44.3 34.2-88.1 51.3-132.1 7.5 2.4 7.9-.8 9.4 0 9.3 22.5 18.1 60.1 27 82.8 6.6 16.7 13 33.5 19.7 50.9a35.78 35.78 0 0 1-3.9 2.1c-13.1 3.9-26.4 7.5-39.4 11.7a27.66 27.66 0 0 1-18.4 0z"/></svg> | ||||
| After Width: | Height: | Size: 1.4 KiB | 
							
								
								
									
										1
									
								
								nodejs/public/svgs/brands/adn.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1 @@ | ||||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path d="M248 167.5l64.9 98.8H183.1l64.9-98.8zM496 256c0 136.9-111.1 248-248 248S0 392.9 0 256 111.1 8 248 8s248 111.1 248 248zm-99.8 82.7L248 115.5 99.8 338.7h30.4l33.6-51.7h168.6l33.6 51.7h30.2z"/></svg> | ||||
| After Width: | Height: | Size: 267 B | 
							
								
								
									
										1
									
								
								nodejs/public/svgs/brands/adobe.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1 @@ | ||||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M315.5 64h170.9v384L315.5 64zm-119 0H25.6v384L196.5 64zM256 206.1L363.5 448h-73l-30.7-76.8h-78.7L256 206.1z"/></svg> | ||||
| After Width: | Height: | Size: 187 B | 
							
								
								
									
										1
									
								
								nodejs/public/svgs/brands/adversal.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1 @@ | ||||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M482.1 32H28.7C5.8 32 0 37.9 0 60.9v390.2C0 474.4 5.8 480 28.7 480h453.4c24.4 0 29.9-5.2 29.9-29.7V62.2c0-24.6-5.4-30.2-29.9-30.2zM178.4 220.3c-27.5-20.2-72.1-8.7-84.2 23.4-4.3 11.1-9.3 9.5-17.5 8.3-9.7-1.5-17.2-3.2-22.5-5.5-28.8-11.4 8.6-55.3 24.9-64.3 41.1-21.4 83.4-22.2 125.3-4.8 40.9 16.8 34.5 59.2 34.5 128.5 2.7 25.8-4.3 58.3 9.3 88.8 1.9 4.4.4 7.9-2.7 10.7-8.4 6.7-39.3 2.2-46.6-7.4-1.9-2.2-1.8-3.6-3.9-6.2-3.6-3.9-7.3-2.2-11.9 1-57.4 36.4-140.3 21.4-147-43.3-3.1-29.3 12.4-57.1 39.6-71 38.2-19.5 112.2-11.8 114-30.9 1.1-10.2-1.9-20.1-11.3-27.3zm286.7 222c0 15.1-11.1 9.9-17.8 9.9H52.4c-7.4 0-18.2 4.8-17.8-10.7.4-13.9 10.5-9.1 17.1-9.1 132.3-.4 264.5-.4 396.8 0 6.8 0 16.6-4.4 16.6 9.9zm3.8-340.5v291c0 5.7-.7 13.9-8.1 13.9-12.4-.4-27.5 7.1-36.1-5.6-5.8-8.7-7.8-4-12.4-1.2-53.4 29.7-128.1 7.1-144.4-85.2-6.1-33.4-.7-67.1 15.7-100 11.8-23.9 56.9-76.1 136.1-30.5v-71c0-26.2-.1-26.2 26-26.2 3.1 0 6.6.4 9.7 0 10.1-.8 13.6 4.4 13.6 14.3-.1.2-.1.3-.1.5zm-51.5 232.3c-19.5 47.6-72.9 43.3-90 5.2-15.1-33.3-15.5-68.2.4-101.5 16.3-34.1 59.7-35.7 81.5-4.8 20.6 28.8 14.9 84.6 8.1 101.1zm-294.8 35.3c-7.5-1.3-33-3.3-33.7-27.8-.4-13.9 7.8-23 19.8-25.8 24.4-5.9 49.3-9.9 73.7-14.7 8.9-2 7.4 4.4 7.8 9.5 1.4 33-26.1 59.2-67.6 58.8z"/></svg> | ||||
| After Width: | Height: | Size: 1.3 KiB | 
							
								
								
									
										1
									
								
								nodejs/public/svgs/brands/affiliatetheme.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1 @@ | ||||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M159.7 237.4C108.4 308.3 43.1 348.2 14 326.6-15.2 304.9 2.8 230 54.2 159.1c51.3-70.9 116.6-110.8 145.7-89.2 29.1 21.6 11.1 96.6-40.2 167.5zm351.2-57.3C437.1 303.5 319 367.8 246.4 323.7c-25-15.2-41.3-41.2-49-73.8-33.6 64.8-92.8 113.8-164.1 133.2 49.8 59.3 124.1 96.9 207 96.9 150 0 271.6-123.1 271.6-274.9.1-8.5-.3-16.8-1-25z"/></svg> | ||||
| After Width: | Height: | Size: 404 B | 
							
								
								
									
										1
									
								
								nodejs/public/svgs/brands/airbnb.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1 @@ | ||||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M224 373.12c-25.24-31.67-40.08-59.43-45-83.18-22.55-88 112.61-88 90.06 0-5.45 24.25-20.29 52-45 83.18zm138.15 73.23c-42.06 18.31-83.67-10.88-119.3-50.47 103.9-130.07 46.11-200-18.85-200-54.92 0-85.16 46.51-73.28 100.5 6.93 29.19 25.23 62.39 54.43 99.5-32.53 36.05-60.55 52.69-85.15 54.92-50 7.43-89.11-41.06-71.3-91.09 15.1-39.16 111.72-231.18 115.87-241.56 15.75-30.07 25.56-57.4 59.38-57.4 32.34 0 43.4 25.94 60.37 59.87 36 70.62 89.35 177.48 114.84 239.09 13.17 33.07-1.37 71.29-37.01 86.64zm47-136.12C280.27 35.93 273.13 32 224 32c-45.52 0-64.87 31.67-84.66 72.79C33.18 317.1 22.89 347.19 22 349.81-3.22 419.14 48.74 480 111.63 480c21.71 0 60.61-6.06 112.37-62.4 58.68 63.78 101.26 62.4 112.37 62.4 62.89.05 114.85-60.86 89.61-130.19.02-3.89-16.82-38.9-16.82-39.58z"/></svg> | ||||
| After Width: | Height: | Size: 849 B | 
							
								
								
									
										1
									
								
								nodejs/public/svgs/brands/algolia.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1 @@ | ||||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M229.3 182.6c-49.3 0-89.2 39.9-89.2 89.2 0 49.3 39.9 89.2 89.2 89.2s89.2-39.9 89.2-89.2c0-49.3-40-89.2-89.2-89.2zm62.7 56.6l-58.9 30.6c-1.8.9-3.8-.4-3.8-2.3V201c0-1.5 1.3-2.7 2.7-2.6 26.2 1 48.9 15.7 61.1 37.1.7 1.3.2 3-1.1 3.7zM389.1 32H58.9C26.4 32 0 58.4 0 90.9V421c0 32.6 26.4 59 58.9 59H389c32.6 0 58.9-26.4 58.9-58.9V90.9C448 58.4 421.6 32 389.1 32zm-202.6 84.7c0-10.8 8.7-19.5 19.5-19.5h45.3c10.8 0 19.5 8.7 19.5 19.5v15.4c0 1.8-1.7 3-3.3 2.5-12.3-3.4-25.1-5.1-38.1-5.1-13.5 0-26.7 1.8-39.4 5.5-1.7.5-3.4-.8-3.4-2.5v-15.8zm-84.4 37l9.2-9.2c7.6-7.6 19.9-7.6 27.5 0l7.7 7.7c1.1 1.1 1 3-.3 4-6.2 4.5-12.1 9.4-17.6 14.9-5.4 5.4-10.4 11.3-14.8 17.4-1 1.3-2.9 1.5-4 .3l-7.7-7.7c-7.6-7.5-7.6-19.8 0-27.4zm127.2 244.8c-70 0-126.6-56.7-126.6-126.6s56.7-126.6 126.6-126.6c70 0 126.6 56.6 126.6 126.6 0 69.8-56.7 126.6-126.6 126.6z"/></svg> | ||||
| After Width: | Height: | Size: 907 B | 
							
								
								
									
										1
									
								
								nodejs/public/svgs/brands/alipay.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -0,0 +1 @@ | ||||
| <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M377.74 32H70.26C31.41 32 0 63.41 0 102.26v307.48C0 448.59 31.41 480 70.26 480h307.48c38.52 0 69.76-31.08 70.26-69.6-45.96-25.62-110.59-60.34-171.6-88.44-32.07 43.97-84.14 81-148.62 81-70.59 0-93.73-45.3-97.04-76.37-3.97-39.01 14.88-81.5 99.52-81.5 35.38 0 79.35 10.25 127.13 24.96 16.53-30.09 26.45-60.34 26.45-60.34h-178.2v-16.7h92.08v-31.24H88.28v-19.01h109.44V92.34h50.92v50.42h109.44v19.01H248.63v31.24h88.77s-15.21 46.62-38.35 90.92c48.93 16.7 100.01 36.04 148.62 52.74V102.26C447.83 63.57 416.43 32 377.74 32zM47.28 322.95c.99 20.17 10.25 53.73 69.93 53.73 52.07 0 92.58-39.68 117.87-72.9-44.63-18.68-84.48-31.41-109.44-31.41-67.45 0-79.35 33.06-78.36 50.58z"/></svg> | ||||
| After Width: | Height: | Size: 745 B |