0
Fork 0
mirror of https://github.com/verdaccio/verdaccio.git synced 2024-12-16 21:56:25 -05:00

refactor: changed footer (#1125)

refactor: added types, css in js styles, new comp

refactor: updated emotion

fix: fixed import

refactor: updated image path and type

refactor: minified svg

refactor: now it's stateless

refactor: updated snap & removed click test

feat: added capitalize helper

refactor: changed medium

refactor: added title and image option

refactor: added missed &&

refactor: updated snap

fix: fixed types

fix: fixed types

fix: added flow type ignore line

fix: fixed index map

refactor: updated icons

refactor: removed unnecessary capitalize func

refactor: removed empty lines

fix: fixed svg 404
This commit is contained in:
Priscila 2018-11-24 22:12:46 +01:00 committed by Ayush Sharma
parent 77199531ee
commit 9869edfb38
33 changed files with 301 additions and 212 deletions

View file

@ -88,7 +88,7 @@
"codecov": "3.1.0",
"cross-env": "5.2.0",
"css-loader": "0.28.10",
"emotion": "9.2.8",
"emotion": "9.2.12",
"enzyme": "3.6.0",
"enzyme-adapter-react-16": "1.5.0",
"eslint": "5.6.0",
@ -127,7 +127,7 @@
"puppeteer": "1.8.0",
"react": "16.4.2",
"react-dom": "16.4.2",
"react-emotion": "9.2.8",
"react-emotion": "9.2.12",
"react-hot-loader": "4.2.0",
"react-router-dom": "4.2.2",
"rimraf": "2.6.2",

View file

@ -1 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 45 45" style="enable-background:new 0 0 45 45;" xml:space="preserve" version="1.1" id="svg2"><metadata id="metadata8"><rdf:RDF><cc:Work rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/></cc:Work></rdf:RDF></metadata><defs id="defs6"><clipPath id="clipPath16" clipPathUnits="userSpaceOnUse"><path id="path18" d="M 0,36 36,36 36,0 0,0 0,36 Z"/></clipPath><clipPath id="clipPath28" clipPathUnits="userSpaceOnUse"><path id="path30" d="M 18,36 C 8.059,36 0,27.941 0,18 l 0,0 C 0,8.059 8.059,0 18,0 l 0,0 c 9.941,0 18,8.059 18,18 l 0,0 c 0,9.941 -8.059,18 -18,18 z"/></clipPath></defs><g transform="matrix(1.25,0,0,-1.25,0,45)" id="g10"><g id="g12"><g clip-path="url(#clipPath16)" id="g14"><g transform="translate(36,18)" id="g20"><path id="path22" style="fill:#88c9f9;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,-9.941 -8.059,-18 -18,-18 -9.941,0 -18,8.059 -18,18 0,9.941 8.059,18 18,18 C -8.059,18 0,9.941 0,0"/></g></g></g><g id="g24"><g clip-path="url(#clipPath28)" id="g26"><g transform="translate(3.6274,28.9521)" id="g32"><path id="path34" style="fill:#5c913b;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 0,0 C -0.451,2.93 2.195,4.156 3.607,4.469 5.019,4.784 6.383,5.09 6.54,4.464 6.696,3.836 6.851,3.003 7.713,3.316 8.575,3.63 10.756,3.875 11.776,4.658 12.795,5.441 14.02,5.445 15.04,5.131 16.059,4.818 18.917,4.904 18.29,3.964 17.663,3.023 16.465,3.137 15.839,2.04 15.212,0.941 16.011,0.214 16.873,0.214 c 0.865,0 1.709,-0.135 2.259,0.727 0.549,0.863 -0.382,2.463 0.325,2.357 0.706,-0.106 1.477,-0.866 2.03,-2.043 0.547,-1.176 1.408,-0.47 1.723,-1.176 0.313,-0.705 2.04,-2.039 1.177,-1.804 -0.864,0.236 -1.726,0.392 -1.961,-0.47 -0.236,-0.863 0.389,-1.726 -0.236,-1.647 -0.627,0.079 -0.861,-0.089 -1.725,-0.004 -0.862,0.083 -1.333,0.631 -2.039,-0.545 -0.705,-1.175 -1.254,-1.961 -1.567,-2.509 -0.315,-0.549 -0.785,-0.861 -0.55,-1.96 0.235,-1.099 -0.628,-0.785 -0.628,0.156 0,0.94 -0.548,1.098 -1.253,0.942 -0.706,-0.157 -1.803,-0.313 -1.724,-1.098 0.077,-0.784 -0.315,-1.725 0.313,-2.352 0.627,-0.629 1.33,0.076 1.723,-0.158 0.393,-0.237 1.525,-0.023 1.133,-0.416 -0.393,-0.391 -1.76,-0.881 -0.976,-1.509 0.786,-0.626 1.578,-0.829 1.893,-0.907 0.313,-0.08 0.062,0.774 1.083,1.166 1.017,0.392 2.608,1.29 3,0.584 0.391,-0.705 0.338,-0.595 1.75,-0.75 1.41,-0.156 1.79,-0.585 2.417,-1.917 0.626,-1.333 0.446,-1.192 1.462,-1.581 1.021,-0.393 1.678,-0.222 0.737,-1.086 -0.941,-0.86 -1.651,-0.814 -2.199,-1.833 -0.55,-1.017 -0.153,-1.731 -1.25,-2.75 -1.098,-1.019 -2.242,-1.876 -3.417,-2.583 -0.618,-0.37 -2.162,-2.07 -3.083,-2.667 -0.834,-0.541 -1.083,0 -1.083,0 0,0 0.256,1.667 0.964,2.372 0.704,0.705 1.105,3.344 0.869,4.128 -0.234,0.783 -1.36,1.02 -1.75,1.333 -0.392,0.312 -1.417,1.548 -1.417,2.334 0,0.784 1.71,2.809 1.71,2.809 0.218,-1.088 -1.039,0.329 -1.627,0.524 -0.47,0.157 -1.542,1.656 -2.459,1.814 -0.916,0.159 -1.363,0.7 -2.068,1.25 -0.706,0.549 -2.431,1.332 -2.353,2.195 0.079,0.862 -1.725,1.568 -2.038,1.568 -0.314,0 -1.019,0 -1.647,1.098 -0.627,1.098 -1.725,2.196 -1.411,2.979 0.313,0.784 0.392,1.727 0.234,2.589 C 3.058,0.236 1.882,0.55 1.647,0.315 1.412,0.079 0.158,-1.02 0,0"/></g></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 3.4 KiB

View file

@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 45 45" style="enable-background:new 0 0 45 45;" xml:space="preserve" version="1.1" id="svg2"><metadata id="metadata8"><rdf:RDF><cc:Work rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/></cc:Work></rdf:RDF></metadata><defs id="defs6"><clipPath id="clipPath16" clipPathUnits="userSpaceOnUse"><path id="path18" d="M 0,36 36,36 36,0 0,0 0,36 Z"/></clipPath></defs><g transform="matrix(1.25,0,0,-1.25,0,45)" id="g10"><g id="g12"><g clip-path="url(#clipPath16)" id="g14"><g transform="translate(36,9)" id="g20"><path id="path22" style="fill:#009b3a;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,-2.209 -1.791,-4 -4,-4 l -28,0 c -2.209,0 -4,1.791 -4,4 l 0,18 c 0,2.209 1.791,4 4,4 l 28,0 c 2.209,0 4,-1.791 4,-4 L 0,0 Z"/></g><g transform="translate(32.7275,18)" id="g24"><path id="path26" style="fill:#fedf01;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 0,0 -14.728,-11.124 -29.456,0 -14.728,11.125 0,0 Z"/></g><g transform="translate(24.4336,18.0762)" id="g28"><path id="path30" style="fill:#002776;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,3.567 -2.892,6.458 -6.458,6.458 -3.567,0 -6.458,-2.891 -6.458,-6.458 0,-3.566 2.891,-6.458 6.458,-6.458 C -2.892,-6.458 0,-3.566 0,0"/></g><g transform="translate(12.2769,21.1128)" id="g32"><path id="path34" style="fill:#cbe9d4;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c -0.332,-0.621 -0.558,-1.303 -0.672,-2.023 3.994,0.29 9.417,-1.892 11.744,-4.596 0.402,0.604 0.7,1.281 0.882,2.004 C 9.083,-1.806 4.038,0.016 0,0"/></g><path id="path36" style="fill:#88c9f9;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 13,16.767 -1,0 0,1 1,0 0,-1 z"/><path id="path38" style="fill:#88c9f9;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 14,14.767 -1,0 0,1 1,0 0,-1 z"/><path id="path40" style="fill:#55acee;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 16,16.767 -1,0 0,1 1,0 0,-1 z"/><path id="path42" style="fill:#55acee;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 18,15.767 -1,0 0,1 1,0 0,-1 z"/><path id="path44" style="fill:#55acee;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 22,13.767 -1,0 0,1 1,0 0,-1 z"/><path id="path46" style="fill:#55acee;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 19,12.767 -1,0 0,1 1,0 0,-1 z"/><path id="path48" style="fill:#55acee;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 22,18.767 -1,0 0,1 1,0 0,-1 z"/><path id="path50" style="fill:#3b88c3;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 20,14.767 -1,0 0,1 1,0 0,-1 z"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.8 KiB

View file

@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 45 45" style="enable-background:new 0 0 45 45;" xml:space="preserve" version="1.1" id="svg2"><metadata id="metadata8"><rdf:RDF><cc:Work rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/></cc:Work></rdf:RDF></metadata><defs id="defs6"><clipPath id="clipPath16" clipPathUnits="userSpaceOnUse"><path id="path18" d="M 0,36 36,36 36,0 0,0 0,36 Z"/></clipPath></defs><g transform="matrix(1.25,0,0,-1.25,0,45)" id="g10"><g id="g12"><g clip-path="url(#clipPath16)" id="g14"><g transform="translate(36,9)" id="g20"><path id="path22" style="fill:#de2910;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,-2.209 -1.791,-4 -4,-4 l -28,0 c -2.209,0 -4,1.791 -4,4 l 0,18 c 0,2.209 1.791,4 4,4 l 28,0 c 2.209,0 4,-1.791 4,-4 L 0,0 Z"/></g><g transform="translate(7,25.0488)" id="g24"><path id="path26" style="fill:#ffde02;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 0,0 0.929,-2.67 3.755,-2.729 1.502,-4.436 2.321,-7.143 0,-5.528 -2.321,-7.143 -1.502,-4.436 -3.755,-2.729 -0.929,-2.67 0,0 Z"/></g><g transform="translate(13,28.4722)" id="g28"><path id="path30" style="fill:#ffde02;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 0,0 0.34,-0.688 1.099,-0.798 0.55,-1.334 0.679,-2.09 0,-1.733 -0.679,-2.09 l 0.13,0.756 -0.55,0.536 0.76,0.11 L 0,0 Z"/></g><g transform="translate(15,24.4722)" id="g32"><path id="path34" style="fill:#ffde02;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 0,0 0.34,-0.688 1.099,-0.798 0.55,-1.334 0.679,-2.09 0,-1.733 -0.679,-2.09 l 0.13,0.756 -0.55,0.536 0.76,0.11 L 0,0 Z"/></g><g transform="translate(15,20.4722)" id="g36"><path id="path38" style="fill:#ffde02;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 0,0 0.34,-0.688 1.099,-0.798 0.55,-1.334 0.679,-2.09 0,-1.733 -0.679,-2.09 l 0.13,0.756 -0.55,0.536 0.76,0.11 L 0,0 Z"/></g><g transform="translate(13,16.4727)" id="g40"><path id="path42" style="fill:#ffde02;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 0,0 0.34,-0.689 1.099,-0.799 0.55,-1.334 0.679,-2.091 0,-1.734 l -0.679,-0.357 0.13,0.757 -0.55,0.535 0.76,0.11 L 0,0 Z"/></g></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.4 KiB

View file

@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 45 45" style="enable-background:new 0 0 45 45;" xml:space="preserve" version="1.1" id="svg2"><metadata id="metadata8"><rdf:RDF><cc:Work rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/></cc:Work></rdf:RDF></metadata><defs id="defs6"><clipPath id="clipPath16" clipPathUnits="userSpaceOnUse"><path id="path18" d="M 0,36 36,36 36,0 0,0 0,36 Z"/></clipPath><clipPath id="clipPath42" clipPathUnits="userSpaceOnUse"><path id="path44" d="m 15,21 6,0 0,-6 -6,0 0,6 z"/></clipPath></defs><g transform="matrix(1.25,0,0,-1.25,0,45)" id="g10"><g id="g12"><g clip-path="url(#clipPath16)" id="g14"><g transform="translate(0,9)" id="g20"><path id="path22" style="fill:#138808;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,-2.209 1.791,-4 4,-4 l 28,0 c 2.209,0 4,1.791 4,4 L 36,4 0,4 0,0 Z"/></g><path id="path24" style="fill:#eeeeee;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 0,13 36,13 36,23 0,23 0,13 Z"/><g transform="translate(36,23)" id="g26"><path id="path28" style="fill:#ff9933;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 0,4 c 0,2.209 -1.791,4 -4,4 l -28,0 c -2.209,0 -4,-1.791 -4,-4 l 0,-4 36,0 z"/></g><g transform="translate(22,18)" id="g30"><path id="path32" style="fill:#000080;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,2.21 -1.791,4.001 -4.001,4.001 -2.209,0 -4,-1.791 -4,-4.001 0,-2.209 1.791,-4 4,-4 C -1.791,-4 0,-2.209 0,0"/></g><g transform="translate(21,18)" id="g34"><path id="path36" style="fill:#eeeeee;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,1.657 -1.344,3.001 -3.001,3.001 -1.657,0 -3,-1.344 -3,-3.001 0,-1.657 1.343,-3 3,-3 C -1.344,-3 0,-1.657 0,0"/></g><g id="g38"><g id="g40"/><g id="g46"><g style="opacity:0.60000598" id="g48" clip-path="url(#clipPath42)"><g id="g50" transform="translate(18,21)"><path id="path52" style="fill:#000080;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 0,0 0.146,-2.264 1.148,-0.229 0.417,-2.376 2.121,-0.878 0.624,-2.583 2.771,-1.852 0.736,-2.854 3,-3 0.736,-3.146 2.771,-4.147 0.624,-3.417 2.121,-5.121 0.417,-3.624 1.148,-5.771 0.146,-3.736 0,-6 l -0.146,2.264 -1.002,-2.035 0.731,2.147 -1.705,-1.497 1.498,1.704 -2.147,-0.73 2.035,1.001 L -3,-3 l 2.264,0.146 -2.035,1.002 2.147,-0.731 -1.498,1.705 1.705,-1.498 -0.731,2.147 1.002,-2.035 L 0,0 Z"/></g></g></g></g><g transform="translate(17,18)" id="g54"><path id="path56" style="fill:#000080;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 0,0 C 0,0.552 0.448,1 1,1 1.552,1 2,0.552 2,0 2,-0.552 1.552,-1 1,-1 0.448,-1 0,-0.552 0,0"/></g></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.8 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 6.4 KiB

View file

@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 45 45" style="enable-background:new 0 0 45 45;" xml:space="preserve" version="1.1" id="svg2"><metadata id="metadata8"><rdf:RDF><cc:Work rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/></cc:Work></rdf:RDF></metadata><defs id="defs6"><clipPath id="clipPath16" clipPathUnits="userSpaceOnUse"><path id="path18" d="M 0,36 36,36 36,0 0,0 0,36 Z"/></clipPath></defs><g transform="matrix(1.25,0,0,-1.25,0,45)" id="g10"><g id="g12"><g clip-path="url(#clipPath16)" id="g14"><g transform="translate(27.6102,20.9519)" id="g20"><path id="path22" style="fill:#004600;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 -1.213,-2.022 -0.208,2.349 -2.298,0.528 2.17,0.924 -0.207,2.349 1.548,-1.779 2.17,0.924 L 0.75,1.25 2.298,-0.529 0,0 Z m -5.11,-10.424 c -4.142,0 -7.5,3.358 -7.5,7.5 0,3.72 2.711,6.798 6.263,7.389 -2.221,-1.034 -3.763,-3.279 -3.763,-5.889 0,-3.59 2.91,-6.5 6.5,-6.5 2.61,0 4.855,1.542 5.889,3.763 -0.591,-3.552 -3.669,-6.263 -7.389,-6.263 m 9.5,20.472 -23,0 0,-26 23,0 c 2.209,0 4,1.791 4,4 l 0,18 c 0,2.209 -1.791,4 -4,4"/></g><g transform="translate(4,31)" id="g24"><path id="path26" style="fill:#eeeeee;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c -2.209,0 -4,-1.791 -4,-4 l 0,-18 c 0,-2.209 1.791,-4 4,-4 l 5,0 0,26 -5,0 z"/></g><g transform="translate(29.5723,24.2247)" id="g28"><path id="path30" style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 -2.17,-0.924 -1.548,1.779 0.207,-2.349 -2.17,-0.923 2.298,-0.528 0.208,-2.35 1.213,2.022 2.298,-0.529 -1.548,1.779 L 0,0 Z"/></g><g transform="translate(24,13.0276)" id="g32"><path id="path34" style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c -3.59,0 -6.5,2.91 -6.5,6.5 0,2.611 1.543,4.856 3.763,5.89 C -6.289,11.799 -9,8.72 -9,5 c 0,-4.142 3.358,-7.5 7.5,-7.5 3.72,0 6.799,2.711 7.39,6.263 C 4.856,1.543 2.611,0 0,0"/></g></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.2 KiB

View file

@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 45 45" style="enable-background:new 0 0 45 45;" xml:space="preserve" version="1.1" id="svg2"><metadata id="metadata8"><rdf:RDF><cc:Work rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/></cc:Work></rdf:RDF></metadata><defs id="defs6"><clipPath id="clipPath16" clipPathUnits="userSpaceOnUse"><path id="path18" d="M 0,36 36,36 36,0 0,0 0,36 Z"/></clipPath></defs><g transform="matrix(1.25,0,0,-1.25,0,45)" id="g10"><g id="g12"><g clip-path="url(#clipPath16)" id="g14"><g transform="translate(36,9)" id="g20"><path id="path22" style="fill:#c60a1d;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,-2.209 -1.791,-4 -4,-4 l -28,0 c -2.209,0 -4,1.791 -4,4 l 0,18 c 0,2.209 1.791,4 4,4 l 28,0 c 2.209,0 4,-1.791 4,-4 L 0,0 Z"/></g><path id="path24" style="fill:#ffc400;fill-opacity:1;fill-rule:nonzero;stroke:none" d="M 36,12 0,12 0,24 36,24 36,12 Z"/><g transform="translate(9,19)" id="g26"><path id="path28" style="fill:#ea596e;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 0,-3 c 0,-1.657 1.343,-3 3,-3 1.657,0 3,1.343 3,3 L 6,0 0,0 Z"/></g><path id="path30" style="fill:#f4a2b2;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 12,17 3,0 0,3 -3,0 0,-3 z"/><path id="path32" style="fill:#dd2e44;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 12,17 -3,0 0,3 3,0 0,-3 z"/><g transform="translate(15,21.5)" id="g34"><path id="path36" style="fill:#ea596e;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,-0.829 -1.343,-1.5 -3,-1.5 -1.657,0 -3,0.671 -3,1.5 0,0.829 1.343,1.5 3,1.5 1.657,0 3,-0.671 3,-1.5"/></g><g transform="translate(15,22.25)" id="g38"><path id="path40" style="fill:#ffac33;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 0,0 c 0,0.414 -1.343,0.75 -3,0.75 -1.657,0 -3,-0.336 -3,-0.75 0,-0.414 1.343,-0.75 3,-0.75 1.657,0 3,0.336 3,0.75"/></g><path id="path42" style="fill:#99aab5;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 7,13 1,0 0,7 -1,0 0,-7 z"/><path id="path44" style="fill:#99aab5;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 17,13 -1,0 0,7 1,0 0,-7 z"/><path id="path46" style="fill:#66757f;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 9,13 -3,0 0,1 3,0 0,-1 z"/><path id="path48" style="fill:#66757f;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 18,13 -3,0 0,1 3,0 0,-1 z"/><path id="path50" style="fill:#66757f;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 8,20 -1,0 0,1 1,0 0,-1 z"/><path id="path52" style="fill:#66757f;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 17,20 -1,0 0,1 1,0 0,-1 z"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 2.8 KiB

View file

@ -1,81 +0,0 @@
@import '../../styles/variables';
@import '../../styles/mixins';
.wrap {
background: $snow;
@include border(top, 1px, solid, $greyGainsboro);
}
footer.footer {
display: flex;
margin-top: 0;
padding: 20px 0;
font-size: $font-size-sm;
height: 18px;
color: $nobel-01;
span {
display: inline-block;
height: 18px;
vertical-align: middle;
}
.tooltip {
align-items: center;
margin-left: 5px;
position: relative;
margin-top: -2px;
height: 20px;
background: $greyAthens;
padding: 1px 4px;
border-radius: 2px;
transform: scaleX(0);
transition: transform 0.3s cubic-bezier(.12,.76,.14,.99);
transform-origin: left;
&:before {
content: '';
position: absolute;
top: 3px;
left: -7px;
display: block;
width: 7px;
height: 15px;
background: $greyAthens;
background-image: linear-gradient(45deg, white, white 30%, transparent 30%), linear-gradient(-225deg, white, white 30%, transparent 30%);
}
img:not(:first-child) {
margin-left: 8px;
}
}
// Footer Hover
&.showAuthorsGeographic .tooltip,
&:hover .tooltip {
display: flex;
transform: scaleX(1);
}
.earth {
margin-left: 8px;
margin-right: 8px;
}
:global {
.emoji {
width: 18px;
height: 18px;
}
}
.right {
margin-left: auto;
}
.logo {
vertical-align: top;
height: 18px;
width: 20px;
}
}

View file

@ -1,63 +1,41 @@
import React, {Component} from 'react';
/**
* @prettier
* @flow
*/
import classes from './footer.scss';
import logo from './logo.svg';
import earth from './earth.svg';
import React from 'react';
import type { Element } from 'react';
// Vectors from Twitter Emoji (Open Source)
import brazilFlag from './flags/brazil-1f1e7-1f1f7.svg';
import chinaFlag from './flags/china-1f1e8-1f1f3.svg';
import indiaFlag from './flags/india-1f1ee-1f1f3.svg';
import nicaraguaFlag from './flags/nicaragua-1f1f3-1f1ee.svg';
import pakistanFlag from './flags/pakistan-1f1f5-1f1f0.svg';
import spainFlag from './flags/spain-1f1ea-1f1f8.svg';
import { version } from '../../../../package.json';
import { Wrapper, Left, Right, Earth, Flags, Love, Flag, Logo, Inner, ToolTip } from './styles';
export default class Footer extends Component {
constructor(props) {
super(props);
this.handleEarthIconClick = this.handleEarthIconClick.bind(this);
this.state = {
showAuthorsGeographic: false
};
}
const Footer = (): Element<Wrapper> => (
<Wrapper>
<Inner>
<Left>
Made with
<Love></Love>
on
<ToolTip>
<Earth name="earth" />
<Flags>
<Flag name="spain" />
<Flag name="nicaragua" />
<Flag name="india" />
<Flag name="brazil" />
<Flag name="pakistan" />
<Flag name="china" />
<Flag name="austria" />
</Flags>
</ToolTip>
</Left>
<Right>
Powered by
<Logo name="verdaccio" size="md" pointer img onClick={() => window.open('http://www.verdaccio.org/', '_blank')} />
{`/ ${version}`}
</Right>
</Inner>
</Wrapper>
);
handleEarthIconClick() {
this.setState({
showAuthorsGeographic: true
});
}
render() {
return (
<div className={classes.wrap}>
<footer
className={`container ${classes.footer} ${this.state.showAuthorsGeographic && classes.showAuthorsGeographic}`}
>
<span>Made with&nbsp;</span>
<span></span>
<span>&nbsp;on</span>
<img className={`${classes.earth} emoji`} src={earth} alt="Earth" onClick={this.handleEarthIconClick}/>
<div className={classes.tooltip}>
<img src={brazilFlag} alt="Brazil" title="Brazil" className="emoji"/>
<img src={chinaFlag} alt="China" title="China" className="emoji"/>
<img src={indiaFlag} alt="India" title="India" className="emoji"/>
<img src={nicaraguaFlag} alt="Nicaragua" title="Nicaragua" className="emoji"/>
<img src={pakistanFlag} alt="Pakistan" title="Pakistan" className="emoji"/>
<img src={spainFlag} alt="Spain" title="Spain" className="emoji"/>
</div>
{/* Countries are order by alphabets */}
<div className={classes.right}>
Powered by&nbsp;
{ /* Can't switch to HTTPS due it hosted on GitHub Pages */ }
<a href="http://www.verdaccio.org/">
<img className={classes.logo} src={logo} alt="Verdaccio" title="Verdaccio"/>
</a>
&nbsp;/&nbsp;
{__APP_VERSION__}
</div>
</footer>
</div>
);
}
}
export default Footer;

View file

@ -1 +0,0 @@
<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><path d="M48 17.6L32.8 48H24L.4.8h15.2l12.8 25.6 4.4-8.8H48z" id="a"/><filter id="b" filterUnits="objectBoundingBox" height="140.3%" width="139.9%" y="-11.7%" x="-20%"><feGaussianBlur stdDeviation="2.5"/></filter><path d="M50.8 12H35.6L41.2.8h15.2L50.8 12z" id="c"/><filter id="d" filterUnits="objectBoundingBox" height="269.6%" width="191.3%" y="-49.1%" x="-45.7%"><feGaussianBlur stdDeviation="2.5"/></filter><path d="M32.8 48H24L.4.8h15.2l20.377 40.89L32.8 48z" id="e"/></defs><path fill="none" d="M-1-1h582v402H-1z"/><g><g stroke="null" fill-rule="evenodd" fill="none"><use transform="matrix(1.71429 0 0 1.71429 -37.027 -40.362)" x="22.366" y="28.311" xlink:href="#a" filter="url(#b)" fill="#000"/><use transform="matrix(1.71429 0 0 1.71429 -37.027 -40.362)" x="22.366" y="28.311" xlink:href="#a" fill="#405236"/><path stroke="#405236" d="M80.27 40.4H58.816L50 58.028 26.785 11.6H5.33l38.4 76.8h12.542l24-48z" stroke-width="2.4"/><use transform="matrix(1.71429 0 0 1.71429 -37.027 -40.362)" x="22.366" y="28.311" xlink:href="#c" filter="url(#d)" fill="#000"/><use transform="matrix(1.71429 0 0 1.71429 -37.027 -40.362)" x="22.366" y="28.311" xlink:href="#c" fill="#CD4000"/><path stroke="#CD4000" d="M87.128 26.686L94.671 11.6H73.215l-7.543 15.086h21.456z" stroke-width="2.4"/><g><use transform="matrix(1.71429 0 0 1.71429 -37.027 -40.362)" x="22.366" y="28.311" xlink:href="#e" fill="#4A5E3F"/><path stroke="#405236" d="M56.274 88.4l4.415-8.763L26.783 11.6H5.33l38.4 76.8h12.547-.002z" stroke-width="2.4"/></g><path stroke="#CD4000" stroke-linecap="square" stroke-width="2.4" d="M65.771 11.6h26.094m-32.95 6.857h26.092m-32.95 8.229H78.15"/></g></g></svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

View file

@ -0,0 +1,108 @@
/**
* @prettier
* @flow
*/
import styled, { css } from 'react-emotion';
import mq from '../../utils/styles/media';
import Icon from '../Icon';
export const Wrapper = styled.div`
&& {
background: #f9f9f9;
border-top: 1px solid #e3e3e3;
color: #999999;
font-size: 14px;
padding: 20px;
}
`;
export const Inner = styled.div`
&& {
display: flex;
align-items: center;
justify-content: flex-end;
width: 100%;
${mq.medium(css`
min-width: 400px;
max-width: 800px;
margin: auto;
justify-content: space-between;
`)};
${mq.large(css`
max-width: 1240px;
`)};
}
`;
export const Left = styled.div`
&& {
display: flex;
align-items: center;
display: none;
${mq.medium(css`
display: flex;
`)};
}
`;
export const Right = styled(Left)`
&& {
display: flex;
}
`;
export const ToolTip = styled.span`
&& {
position: relative;
height: 18px;
}
`;
export const Earth = styled(Icon)`
&& {
padding 0 10px;
}
`;
export const Flags = styled.span`
&& {
position: absolute;
background: #d3dddd;
padding: 1px 4px;
border-radius: 3px;
height: 20px;
display: inline-flex;
align-items: center;
visibility: hidden;
top: -2px;
:before {
content: '';
position: absolute;
top: 29%;
left: -4px;
margin-left: -5px;
border: 5px solid;
border-color: #d3dddd transparent transparent transparent;
transform: rotate(90deg);
}
${ToolTip}:hover & {
visibility: visible;
}
}
`;
export const Love = styled.span`
&& {
color: #e25555;
padding: 0 5px;
}
`;
export const Flag = styled(Icon)`
&& {
padding: 0 5px;
}
`;
export const Logo = styled(Flag)``;

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" id="austria"><path d="M473.655 88.276H38.345C17.167 88.276 0 105.443 0 126.621v73.471h512v-73.471c0-21.178-17.167-38.345-38.345-38.345zM0 385.379c0 21.177 17.167 38.345 38.345 38.345h435.31c21.177 0 38.345-17.167 38.345-38.345v-73.471H0v73.471z" fill="#ff4b55"/><path fill="#f5f5f5" d="M0 200.09h512V311.9H0z"/></svg>

After

Width:  |  Height:  |  Size: 380 B

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 45 45" id="brazil"><defs><clipPath id="a"><path d="M0 36h36V0H0v36z"/></clipPath></defs><g clip-path="url(#a)" transform="matrix(1.25 0 0 -1.25 0 45)"><path d="M36 9a4 4 0 0 0-4-4H4a4 4 0 0 0-4 4v18a4 4 0 0 0 4 4h28a4 4 0 0 0 4-4V9z" fill="#009b3a"/><path d="M32.727 18L18 6.876 3.27 18 18 29.125 32.727 18z" fill="#fedf01"/><path d="M24.434 18.076a6.458 6.458 0 1 1-12.917 0 6.458 6.458 0 0 1 12.917 0" fill="#002776"/><path d="M12.277 21.113a6.406 6.406 0 0 1-.672-2.023c3.994.29 9.417-1.892 11.744-4.596.402.604.7 1.28.882 2.004-2.871 2.809-7.916 4.63-11.954 4.615" fill="#cbe9d4"/><path d="M13 16.767h-1v1h1v-1zM14 14.767h-1v1h1v-1z" fill="#88c9f9"/><path d="M16 16.767h-1v1h1v-1zM18 15.767h-1v1h1v-1zM22 13.767h-1v1h1v-1zM19 12.767h-1v1h1v-1zM22 18.767h-1v1h1v-1z" fill="#55acee"/><path d="M20 14.767h-1v1h1v-1z" fill="#3b88c3"/></g></svg>

After

Width:  |  Height:  |  Size: 898 B

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 45 45" id="china"><defs><clipPath id="a"><path d="M0 36h36V0H0v36z"/></clipPath></defs><g clip-path="url(#a)" transform="matrix(1.25 0 0 -1.25 0 45)"><path d="M36 9a4 4 0 0 0-4-4H4a4 4 0 0 0-4 4v18a4 4 0 0 0 4 4h28a4 4 0 0 0 4-4V9z" fill="#de2910"/><path d="M7 25.049l.929-2.67 2.826-.06-2.253-1.706.819-2.707L7 19.52l-2.321-1.615.819 2.707-2.253 1.707 2.826.059.929 2.67zM13 28.472l.34-.688.759-.11-.549-.536.129-.756-.679.357-.679-.357.13.756-.55.536.76.11.339.688zM15 24.472l.34-.688.759-.11-.549-.536.129-.756-.679.357-.679-.357.13.756-.55.536.76.11.339.688zM15 20.472l.34-.688.759-.11-.549-.536.129-.756-.679.357-.679-.357.13.756-.55.536.76.11.339.688zM13 16.473l.34-.69.759-.11-.549-.534.129-.757-.679.357-.679-.357.13.757-.55.535.76.11.339.689z" fill="#ffde02"/></g></svg>

After

Width:  |  Height:  |  Size: 833 B

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 45 45" id="earth"><Title>Earth</Title><defs><clipPath id="a"><path d="M0 36h36V0H0v36z"/></clipPath><clipPath id="b"><path d="M18 36C8.059 36 0 27.941 0 18S8.059 0 18 0s18 8.059 18 18-8.059 18-18 18z"/></clipPath></defs><g clip-path="url(#a)" transform="matrix(1.25 0 0 -1.25 0 45)"><path d="M36 18c0-9.941-8.059-18-18-18S0 8.059 0 18s8.059 18 18 18 18-8.059 18-18" fill="#88c9f9"/></g><g clip-path="url(#b)" transform="matrix(1.25 0 0 -1.25 0 45)"><path d="M3.627 28.952c-.45 2.93 2.195 4.156 3.607 4.47 1.412.314 2.776.62 2.933-.006.156-.628.311-1.46 1.173-1.148.862.314 3.043.56 4.063 1.342 1.02.783 2.244.787 3.264.473 1.02-.313 3.877-.227 3.25-1.167-.627-.94-1.825-.827-2.45-1.924-.628-1.099.171-1.826 1.033-1.826.865 0 1.71-.135 2.26.727.548.863-.383 2.463.324 2.357.706-.106 1.477-.866 2.03-2.043.547-1.176 1.408-.47 1.723-1.176.313-.705 2.04-2.039 1.177-1.804-.864.236-1.726.392-1.96-.47-.237-.863.388-1.726-.237-1.647-.627.08-.86-.089-1.725-.004-.862.083-1.333.631-2.039-.545-.705-1.175-1.254-1.96-1.567-2.509-.315-.549-.785-.86-.55-1.96.235-1.099-.628-.785-.628.156 0 .94-.548 1.098-1.253.942-.706-.157-1.803-.313-1.724-1.098.077-.784-.315-1.725.313-2.352.627-.629 1.33.076 1.723-.158.393-.237 1.525-.023 1.133-.416-.393-.39-1.76-.88-.976-1.509a4.831 4.831 0 0 1 1.893-.907c.313-.08.062.774 1.083 1.166 1.017.392 2.608 1.29 3 .584.391-.705.338-.595 1.75-.75 1.41-.156 1.79-.585 2.417-1.917.626-1.333.446-1.192 1.462-1.58 1.021-.394 1.678-.223.737-1.087-.94-.86-1.65-.814-2.199-1.833-.55-1.017-.153-1.73-1.25-2.75A20.755 20.755 0 0 0 24 4c-.618-.37-2.162-2.07-3.083-2.667-.834-.54-1.083 0-1.083 0s.256 1.667.964 2.372c.704.705 1.105 3.344.87 4.128-.235.783-1.36 1.02-1.75 1.333-.393.312-1.418 1.548-1.418 2.334 0 .784 1.71 2.81 1.71 2.81.218-1.089-1.039.328-1.627.523-.47.157-1.542 1.656-2.459 1.814-.916.16-1.363.7-2.068 1.25-.706.55-2.43 1.332-2.353 2.195.08.862-1.725 1.568-2.038 1.568-.314 0-1.019 0-1.647 1.098-.627 1.098-1.725 2.196-1.41 2.98.312.783.391 1.726.233 2.588-.156.862-1.332 1.176-1.567.941-.235-.236-1.489-1.335-1.647-.315" fill="#5c913b"/></g></svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" id="india"><Title>India</Title><path d="M0 384c0 31.418 25.473 56.889 56.889 56.889H455.11C486.53 440.889 512 415.416 512 384v-56.889H0V384z" fill="#138808"/><path d="M0 327.111h512V184.89H0V327.11z" fill="#eee"/><path d="M512 184.889V128c0-31.417-25.473-56.889-56.889-56.889H56.89C25.472 71.111 0 96.583 0 128v56.889h512z" fill="#f93"/><path d="M312.889 256c0-31.431-25.473-56.902-56.903-56.902-31.417 0-56.888 25.472-56.888 56.902 0 31.418 25.472 56.889 56.888 56.889 31.432 0 56.903-25.472 56.903-56.889" fill="navy"/><path d="M298.666 256c0-23.566-19.115-42.681-42.681-42.681S213.319 232.434 213.319 256s19.1 42.666 42.666 42.666 42.681-19.1 42.681-42.666" fill="#eee"/><path d="M256 213.334l2.076 32.199 14.251-28.943-10.396 30.535 24.235-21.305-21.291 24.249 30.535-10.396-28.942 14.25L298.666 256l-32.198 2.076 28.942 14.237-30.535-10.383 21.291 24.235-24.235-21.29 10.396 30.535-14.25-28.942L256 298.666l-2.076-32.198-14.252 28.942 10.397-30.535-24.249 21.291 21.305-24.235-30.535 10.383 28.942-14.236L213.334 256l32.199-2.076-28.943-14.251 30.535 10.396-21.305-24.249 24.249 21.305-10.396-30.535 14.25 28.943 2.077-32.2z" fill="navy" opacity=".6"/><path d="M241.778 256c0-7.851 6.37-14.223 14.222-14.223s14.223 6.372 14.223 14.223-6.372 14.223-14.223 14.223-14.223-6.372-14.223-14.223" fill="navy"/></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" id="nicaragua"><Title>Nicaragua</Title><path d="M512 384c0 31.418-25.473 56.889-56.889 56.889H56.89C25.472 440.889 0 415.417 0 384V128c0-31.418 25.472-56.889 56.889-56.889H455.11C486.53 71.111 512 96.584 512 128v256z" fill="#265fb5"/><path d="M512 327.111H0V184.89h512V327.11z" fill="#eee"/><path d="M320.811 256c0 35.797-29.014 64.811-64.811 64.811-35.783 0-64.811-29.014-64.811-64.811s29.027-64.811 64.811-64.811c35.797 0 64.811 29.013 64.811 64.811" fill="#a9bf4c"/><path d="M312.889 256c0 31.418-25.473 56.889-56.889 56.889S199.111 287.416 199.111 256s25.473-56.889 56.889-56.889 56.889 25.471 56.889 56.889" fill="#eee"/><path d="M209.891 286.649l45.909-79.517 45.909 79.517H209.89z" fill="#265fb5"/><path d="M215.04 283.591l40.818-70.685 40.803 70.685H215.04z" fill="#55acee"/><path d="M215.04 283.591l9.841-17.052 61.483-.783 10.297 17.835H215.04z" fill="#bbddf5"/><path d="M222.891 272.441l15.331-12.445 6.67 7.553 5.774-6.215 4.893 4.892 4.665-5.12 5.561 5.12 5.106-5.334 4.665 5.334 4.451-4.892 7.325 9.102 1.338 2.674s-7.78 1.55-18.446.669c-10.667-.896-16.882 1.55-25.33 2.66-8.448 1.109-23.553-1.109-23.553-1.109l1.55-2.889z" fill="#5c913b"/><g fill="#e2f09f"><path d="M237.995 262.67l10.226 11.107-5.12.442-5.774-8.434.668-3.115zM250.226 263.553l8.22 7.338-3.782.654-3.996-5.546-.442-2.446zM260.665 263.111l7.111 6.67L266 270.89l-5.774-6.229.44-1.55zM269.995 263.111l-2.888 2.66 1.338 1.565 1.55-4.225zM278.884 263.339l-3.328 4.224 1.109 1.99 2.446-4.664-.227-1.55z"/></g><path d="M256.426 233.671l.939 13.227 7.566-10.867-5.675 11.805 11.805-5.66-10.851 7.553 13.213.939-13.213.952 10.851 7.553-11.805-5.66 5.675 11.805-7.566-10.867-.939 13.226-.939-13.226-7.566 10.867 5.675-11.805-11.805 5.66 10.851-7.553-13.212-.953 13.212-.938-10.85-7.553 11.804 5.66-5.675-11.805 7.566 10.866.94-13.226z" fill="#bbddf5"/><path d="M256 244.665l-2.66 2.66s.654 4.011.441 4.679C253.554 252.658 256 256 256 256l3.327-3.996-.88-5.334-2.447-2.005z" fill="#dd2e44"/><path d="M257.28 240.071c10.894 0 17.109 5.334 17.109 5.334l-3.996-7.111s-6.443-4.893-13.995-4.893c-7.567 0-16 6.001-16 6.001l-3.783 7.553s9.771-6.884 20.665-6.884" fill="#269"/><path d="M257.28 240.071c10.894 0 17.109 5.334 17.109 5.334l-2.888-5.106s-7.78-4.665-15.331-4.665-16.896 5.987-16.896 5.987l-2.66 5.334c.001 0 9.772-6.884 20.666-6.884" fill="#ffcc4d"/><path d="M257.28 240.071c10.894 0 17.109 5.334 17.109 5.334l-2.005-3.327s-5.988-4.224-16.214-3.783c-7.553 0-18.005 5.561-18.005 5.561l-1.55 3.1c0-.001 9.771-6.885 20.665-6.885" fill="#dd2e44"/><g fill="#eee"><path d="M264.291 322.873h-14.165V309.29h14.165v13.582zM247.865 203.975h-10.183l-5.106-12.459 10.198-1.137 5.091 13.596zM271.075 209.635l-6.784-2.261 3.385-16.426 13.028 1.137-9.629 17.55zM209.934 279.281l-19.811 4.523-.57-13.583 19.812-2.83.569 11.89zM215.04 293.433l-16.426 6.812-3.954-10.766 15.289-5.106 5.091 9.06zM324.309 280.989l-18.105-5.091v-9.63l20.366-2.83-2.261 17.55zM315.306 299.663l-16.981-7.937 5.646-10.182 18.703 5.66-7.368 12.459z"/></g></svg>

After

Width:  |  Height:  |  Size: 3 KiB

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 45 45" id="pakistan"><defs><clipPath id="a"><path d="M0 36h36V0H0v36z"/></clipPath></defs><g clip-path="url(#a)" transform="matrix(1.25 0 0 -1.25 0 45)"><path d="M27.61 20.952l-1.213-2.022-.208 2.349-2.298.528 2.17.924-.207 2.349 1.548-1.78 2.17.925-1.212-2.023 1.548-1.78-2.298.53zM22.5 10.528a7.5 7.5 0 0 0-7.5 7.5c0 3.72 2.711 6.798 6.263 7.389a6.494 6.494 0 0 1-3.763-5.89 6.5 6.5 0 0 1 6.5-6.5 6.494 6.494 0 0 1 5.89 3.764c-.592-3.552-3.67-6.263-7.39-6.263M32 31H9V5h23a4 4 0 0 1 4 4v18a4 4 0 0 1-4 4" fill="#004600"/><path d="M4 31a4 4 0 0 1-4-4V9a4 4 0 0 1 4-4h5v26H4z" fill="#eee"/><path d="M29.572 24.225l-2.17-.924-1.548 1.779.207-2.35-2.17-.922 2.298-.528.208-2.35 1.213 2.022 2.298-.53-1.548 1.78 1.212 2.023z" fill="#fff"/><path d="M24 13.028a6.496 6.496 0 1 0-2.737 12.39c-3.552-.591-6.263-3.67-6.263-7.39a7.5 7.5 0 0 1 7.5-7.5c3.72 0 6.799 2.71 7.39 6.263A6.496 6.496 0 0 0 24 13.028" fill="#fff"/></g></svg>

After

Width:  |  Height:  |  Size: 977 B

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 45 45" id="spain"><defs><clipPath id="a"><path d="M0 36h36V0H0v36z"/></clipPath></defs><g clip-path="url(#a)" transform="matrix(1.25 0 0 -1.25 0 45)"><path d="M36 9a4 4 0 0 0-4-4H4a4 4 0 0 0-4 4v18a4 4 0 0 0 4 4h28a4 4 0 0 0 4-4V9z" fill="#c60a1d"/><path d="M36 12H0v12h36V12z" fill="#ffc400"/><path d="M9 19v-3a3 3 0 1 1 6 0v3H9z" fill="#ea596e"/><path d="M12 17h3v3h-3v-3z" fill="#f4a2b2"/><path d="M12 17H9v3h3v-3z" fill="#dd2e44"/><path d="M15 21.5c0-.829-1.343-1.5-3-1.5s-3 .671-3 1.5 1.343 1.5 3 1.5 3-.671 3-1.5" fill="#ea596e"/><path d="M15 22.25c0 .414-1.343.75-3 .75s-3-.336-3-.75 1.343-.75 3-.75 3 .336 3 .75" fill="#ffac33"/><path d="M7 13h1v7H7v-7zM17 13h-1v7h1v-7z" fill="#99aab5"/><path d="M9 13H6v1h3v-1zM18 13h-3v1h3v-1zM8 20H7v1h1v-1zM17 20h-1v1h1v-1z" fill="#66757f"/></g></svg>

After

Width:  |  Height:  |  Size: 851 B

View file

@ -0,0 +1 @@
<svg width='100px' height='100px' xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="verdaccio"><defs><path d="M48 17.6L32.8 48H24L.4.8h15.2l12.8 25.6 4.4-8.8H48z" id="a"/><filter id="b" filterUnits="objectBoundingBox" height="140.3%" width="139.9%" y="-11.7%" x="-20%"><feGaussianBlur stdDeviation="2.5"/></filter><path d="M50.8 12H35.6L41.2.8h15.2L50.8 12z" id="c"/><filter id="d" filterUnits="objectBoundingBox" height="269.6%" width="191.3%" y="-49.1%" x="-45.7%"><feGaussianBlur stdDeviation="2.5"/></filter><path d="M32.8 48H24L.4.8h15.2l20.377 40.89L32.8 48z" id="e"/></defs><path fill="none" d="M-1-1h582v402H-1z"/><g stroke="null" fill-rule="evenodd" fill="none"><use transform="translate(-37.027 -40.362) scale(1.71429)" x="22.366" y="28.311" xlink:href="#a" filter="url(#b)" fill="#000"/><use transform="translate(-37.027 -40.362) scale(1.71429)" x="22.366" y="28.311" xlink:href="#a" fill="#405236"/><path stroke="#405236" d="M80.27 40.4H58.816L50 58.028 26.785 11.6H5.33l38.4 76.8h12.542l24-48z" stroke-width="2.4"/><use transform="translate(-37.027 -40.362) scale(1.71429)" x="22.366" y="28.311" xlink:href="#c" filter="url(#d)" fill="#000"/><use transform="translate(-37.027 -40.362) scale(1.71429)" x="22.366" y="28.311" xlink:href="#c" fill="#CD4000"/><path stroke="#CD4000" d="M87.128 26.686L94.671 11.6H73.215l-7.543 15.086h21.456z" stroke-width="2.4"/><use transform="translate(-37.027 -40.362) scale(1.71429)" x="22.366" y="28.311" xlink:href="#e" fill="#4A5E3F"/><path stroke="#405236" d="M56.274 88.4l4.415-8.763L26.783 11.6H5.33l38.4 76.8h12.547-.002z" stroke-width="2.4"/><path stroke="#CD4000" stroke-linecap="square" stroke-width="2.4" d="M65.771 11.6h26.094m-32.95 6.857h26.092m-32.95 8.229H78.15"/></g></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View file

@ -0,0 +1,50 @@
/**
* @prettier
* @flow
*/
import React from 'react';
import type { Node } from 'react';
import capitalize from 'lodash/capitalize';
import { SVG, Img, ImgWrapper } from './styles';
import { IProps, IIconsMap } from './types';
import brazil from './img/brazil.svg';
import china from './img/china.svg';
import india from './img/india.svg';
import nicaragua from './img/nicaragua.svg';
import pakistan from './img/pakistan.svg';
import austria from './img/austria.svg';
import spain from './img/spain.svg';
import earth from './img/earth.svg';
import verdaccio from './img/verdaccio.svg';
export const Icons: $Shape<IIconsMap> = {
// flags
brazil,
spain,
china,
nicaragua,
pakistan,
india,
austria,
earth,
verdaccio,
};
const Icon = ({ className, name, size = 'sm', img = false, pointer = false, ...props }: IProps): Node => {
const title = capitalize(name);
return img ? (
<ImgWrapper className={className} size={size} title={title} pointer={pointer} {...props}>
<Img src={Icons[name]} alt={title} />
</ImgWrapper>
) : (
<SVG className={className} size={size} pointer={pointer} {...props}>
<title>{title}</title>
<use xlinkHref={`${Icons[name]}#${name}`} />
</SVG>
);
};
export default Icon;

View file

@ -0,0 +1,50 @@
/**
* @prettier
* @flow
*/
import styled, { css } from 'react-emotion';
import { IProps } from './types';
const getSize = (size: string) => {
switch (size) {
case 'md':
return `
width: 20px;
height: 18px;
`;
default:
return `
width: 18px;
height: 18px;
`;
}
};
const commonStyle = ({ size = 'sm', pointer }: IProps) => css`
&& {
padding: 0 5px;
display: inline-block;
cursor: ${pointer ? 'pointer' : 'default'};
${getSize(size)};
}
`;
export const SVG = styled.svg`
&& {
${commonStyle};
}
`;
export const ImgWrapper = styled.span`
&& {
${commonStyle};
}
`;
export const Img = styled.img`
&& {
width: 100%;
height: auto;
}
`;

View file

@ -0,0 +1,29 @@
/**
* @prettier
* @flow
*/
import { Icons } from './index';
export interface IIconsMap {
brazil: string;
spain: string;
china: string;
nicaragua: string;
pakistan: string;
austria: string;
india: string;
earth: string;
verdaccio: string;
[key: string]: string;
}
export interface IProps {
name: $Keys<typeof Icons>;
className?: string;
// $FlowFixMe
onClick?: (event: SyntheticMouseEvent<SVGElement | HTMLSpanElement>) => void;
size?: 'sm' | 'md';
pointer?: boolean;
img?: boolean;
}

View file

@ -3,8 +3,10 @@
* @flow
*/
import type { Node } from 'react';
export interface IProps {
children?: React.Node;
children?: Node;
to?: string;
blank?: boolean;
}

View file

@ -1,41 +1 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="100px" height="100px" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 51.2 (57519) - http://www.bohemiancoding.com/sketch -->
<title>verdaccio-tiny</title>
<desc>Created with Sketch.</desc>
<defs>
<polygon id="path-1" points="48 17.6 32.8 48 24 48 0.4 0.8 15.6 0.8 28.4 26.4 32.8 17.6 48 17.6"></polygon>
<filter x="-20.0%" y="-11.7%" width="139.9%" height="140.3%" filterUnits="objectBoundingBox" id="filter-2">
<feOffset dx="0" dy="4" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feComposite in="shadowBlurOuter1" in2="SourceAlpha" operator="out" result="shadowBlurOuter1"></feComposite>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
<polygon id="path-3" points="50.8 12 35.6 12 41.2 0.8 56.4 0.8 50.8 12"></polygon>
<filter x="-45.7%" y="-49.1%" width="191.3%" height="269.6%" filterUnits="objectBoundingBox" id="filter-4">
<feOffset dx="0" dy="4" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feComposite in="shadowBlurOuter1" in2="SourceAlpha" operator="out" result="shadowBlurOuter1"></feComposite>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
</defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="verdaccio-tiny">
<rect id="BG" fill="#F7F8F6" x="0" y="0" width="100" height="100" rx="37"></rect>
<g id="Group" transform="translate(22.000000, 29.000000)">
<g id="Combined-Shape">
<use fill="black" fill-opacity="1" filter="url(#filter-2)" xlink:href="#path-1"></use>
<path stroke="#405236" stroke-width="2.4" d="M46.0583592,18.8 L33.5416408,18.8 L28.4,29.0832816 L14.8583592,2 L2.34164079,2 L24.7416408,46.8 L32.0583592,46.8 L46.0583592,18.8 Z" stroke-linejoin="square" fill="#405236" fill-rule="evenodd"></path>
</g>
<g id="Path">
<use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-3"></use>
<path stroke="#CD4000" stroke-width="2.4" d="M50.0583592,10.8 L54.4583592,2 L41.9416408,2 L37.5416408,10.8 L50.0583592,10.8 Z" stroke-linejoin="square" fill="#CD4000" fill-rule="evenodd"></path>
</g>
<path d="M32.0607372,46.8 L34.6351125,41.6879866 L14.8572527,2 L2.34164079,2 L24.7416408,46.8 L32.0607372,46.8 Z" id="Combined-Shape" stroke="#405236" stroke-width="2.4" fill="#4A5E3F"></path>
<path d="M37.6,2 L52.8210381,2" id="Line-3" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"></path>
<path d="M33.6,6 L48.8210381,6" id="Line-3" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"></path>
<path d="M29.6,10.8 L44.8210381,10.8" id="Line-3" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"></path>
</g>
</g>
</g>
</svg>
<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="verdaccio"><Title>Verdaccio</Title><defs><path id="b" d="M48 17.6L32.8 48H24L.4.8h15.2l12.8 25.6 4.4-8.8H48z"/><filter x="-20%" y="-11.7%" width="139.9%" height="140.3%" filterUnits="objectBoundingBox" id="a"><feOffset dy="4" in="SourceAlpha" result="shadowOffsetOuter1"/><feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"/><feComposite in="shadowBlurOuter1" in2="SourceAlpha" operator="out" result="shadowBlurOuter1"/><feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" in="shadowBlurOuter1"/></filter><path id="d" d="M50.8 12H35.6L41.2.8h15.2L50.8 12z"/><filter x="-45.7%" y="-49.1%" width="191.3%" height="269.6%" filterUnits="objectBoundingBox" id="c"><feOffset dy="4" in="SourceAlpha" result="shadowOffsetOuter1"/><feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"/><feComposite in="shadowBlurOuter1" in2="SourceAlpha" operator="out" result="shadowBlurOuter1"/><feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" in="shadowBlurOuter1"/></filter></defs><g fill="none" fill-rule="evenodd"><rect fill="#F7F8F6" width="100" height="100" rx="37"/><g transform="translate(22 29)"><use fill="#000" filter="url(#a)" xlink:href="#b"/><path stroke="#405236" stroke-width="2.4" d="M46.058 18.8H33.542L28.4 29.083 14.858 2H2.342l22.4 44.8h7.316l14-28z" stroke-linejoin="square" fill="#405236"/></g><g transform="translate(22 29)"><use fill="#000" filter="url(#c)" xlink:href="#d"/><path stroke="#CD4000" stroke-width="2.4" d="M50.058 10.8l4.4-8.8H41.942l-4.4 8.8h12.516z" stroke-linejoin="square" fill="#CD4000"/></g><path d="M54.06 75.8l2.575-5.112L36.857 31H24.342l22.4 44.8h7.319z" stroke="#405236" stroke-width="2.4" fill="#4A5E3F"/><path d="M59.6 31h15.221M55.6 35h15.221M51.6 39.8h15.221" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"/></g></svg>

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

View file

@ -2,7 +2,7 @@ import { css } from 'emotion';
const breakpoints = {
small: 576,
medium: 800,
medium: 768,
large: 1240
};

View file

@ -1,3 +1,3 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`<Footer /> component should load the inital state of Footer component 1`] = `"<div class=\\"wrap\\"><footer class=\\"container footer false\\"><span>Made with&nbsp;</span><span>❤</span><span>&nbsp;on</span><img class=\\"earth emoji\\" src=\\"[object Object]\\" alt=\\"Earth\\"><div class=\\"tooltip\\"><img src=\\"[object Object]\\" alt=\\"Brazil\\" title=\\"Brazil\\" class=\\"emoji\\"><img src=\\"[object Object]\\" alt=\\"China\\" title=\\"China\\" class=\\"emoji\\"><img src=\\"[object Object]\\" alt=\\"India\\" title=\\"India\\" class=\\"emoji\\"><img src=\\"[object Object]\\" alt=\\"Nicaragua\\" title=\\"Nicaragua\\" class=\\"emoji\\"><img src=\\"[object Object]\\" alt=\\"Pakistan\\" title=\\"Pakistan\\" class=\\"emoji\\"><img src=\\"[object Object]\\" alt=\\"Spain\\" title=\\"Spain\\" class=\\"emoji\\"></div><div class=\\"right\\">Powered by&nbsp;<a href=\\"http://www.verdaccio.org/\\"><img class=\\"logo\\" src=\\"[object Object]\\" alt=\\"Verdaccio\\" title=\\"Verdaccio\\"></a>&nbsp;/&nbsp;1.0.0</div></footer></div>"`;
exports[`<Footer /> component should load the inital state of Footer component 1`] = `"<div class=\\"css-i0nj2g efsnl070\\"><div class=\\"css-1b88909 efsnl071\\"><div class=\\"css-4kqzh2 efsnl072\\">Made with<span class=\\"css-1so4oe0 efsnl077\\">♥</span>on<span class=\\"css-1ie354y efsnl074\\"><svg class=\\"efsnl075 css-1kbpdsb ej4jd2o0\\"><title>Earth</title><use xlink:href=\\"[object Object]#earth\\"></use></svg><span class=\\"css-e8kfuf efsnl076\\"><svg class=\\"efsnl078 css-1v4xhqk ej4jd2o0\\"><title>Spain</title><use xlink:href=\\"[object Object]#spain\\"></use></svg><svg class=\\"efsnl078 css-1v4xhqk ej4jd2o0\\"><title>Nicaragua</title><use xlink:href=\\"[object Object]#nicaragua\\"></use></svg><svg class=\\"efsnl078 css-1v4xhqk ej4jd2o0\\"><title>India</title><use xlink:href=\\"[object Object]#india\\"></use></svg><svg class=\\"efsnl078 css-1v4xhqk ej4jd2o0\\"><title>Brazil</title><use xlink:href=\\"[object Object]#brazil\\"></use></svg><svg class=\\"efsnl078 css-1v4xhqk ej4jd2o0\\"><title>Pakistan</title><use xlink:href=\\"[object Object]#pakistan\\"></use></svg><svg class=\\"efsnl078 css-1v4xhqk ej4jd2o0\\"><title>China</title><use xlink:href=\\"[object Object]#china\\"></use></svg><svg class=\\"efsnl078 css-1v4xhqk ej4jd2o0\\"><title>Austria</title><use xlink:href=\\"[object Object]#austria\\"></use></svg></span></span></div><div class=\\"css-zxlexh efsnl073\\">Powered by<span class=\\"efsnl079 css-yqd0z3 ej4jd2o1\\" title=\\"Verdaccio\\"><img src=\\"[object Object]\\" alt=\\"Verdaccio\\" class=\\"css-1ncdhax ej4jd2o2\\"></span>/ 4.0.0-alpha.3</div></div></div>"`;

View file

@ -1,5 +1,5 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`<Header /> component with logged in state should load the component in logged in state 1`] = `"<div><header class=\\"MuiPaper-root-10 MuiPaper-elevation4-16 MuiAppBar-root-1 MuiAppBar-positionStatic-5 MuiAppBar-colorPrimary-8 css-1rvhilz e1ctrp120\\"><div class=\\"MuiToolbar-root-37 MuiToolbar-regular-39 MuiToolbar-gutters-38 css-ioebmw e1ctrp121\\"><div class=\\"MuiToolbar-root-37 MuiToolbar-regular-39 MuiToolbar-gutters-38 css-1vacr9s e1ctrp124\\"><a href=\\"/\\" target=\\"_self\\" style=\\"margin-right: 1em;\\"><div class=\\"css-12nq0oo e18wxr160\\"></div></a></div><div class=\\"MuiToolbar-root-37 MuiToolbar-regular-39 MuiToolbar-gutters-38 css-m61s5i e1ctrp123\\"><a href=\\"https://verdaccio.org/docs/en/installation\\" target=\\"_blank\\" tabindex=\\"0\\" class=\\"MuiButtonBase-root-54 MuiIconButton-root-48 MuiIconButton-colorInherit-49\\" role=\\"button\\" title=\\"Documentation\\"><span class=\\"MuiIconButton-label-53\\"><svg class=\\"MuiSvgIcon-root-57\\" focusable=\\"false\\" viewBox=\\"0 0 24 24\\" aria-hidden=\\"true\\" role=\\"presentation\\"><path fill=\\"none\\" d=\\"M0 0h24v24H0z\\"></path><path d=\\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z\\"></path></svg></span><span class=\\"MuiTouchRipple-root-66\\"></span></a><button tabindex=\\"0\\" class=\\"MuiButtonBase-root-54 MuiIconButton-root-48 MuiIconButton-colorInherit-49\\" type=\\"button\\" id=\\"header--button-registryInfo\\" title=\\"Registry Information\\"><span class=\\"MuiIconButton-label-53\\"><svg class=\\"MuiSvgIcon-root-57\\" focusable=\\"false\\" viewBox=\\"0 0 24 24\\" aria-hidden=\\"true\\" role=\\"presentation\\"><path fill=\\"none\\" d=\\"M0 0h24v24H0z\\"></path><path d=\\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z\\"></path></svg></span><span class=\\"MuiTouchRipple-root-66\\"></span></button><button tabindex=\\"0\\" class=\\"MuiButtonBase-root-54 MuiIconButton-root-48 MuiIconButton-colorInherit-49\\" type=\\"button\\" id=\\"header--button-account\\"><span class=\\"MuiIconButton-label-53\\"><svg class=\\"MuiSvgIcon-root-57\\" focusable=\\"false\\" viewBox=\\"0 0 24 24\\" aria-hidden=\\"true\\" role=\\"presentation\\"><path d=\\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14.2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1.94-3.5 3.22-6 3.22z\\"></path><path fill=\\"none\\" d=\\"M0 0h24v24H0z\\"></path></svg></span><span class=\\"MuiTouchRipple-root-66\\"></span></button></div></div></header></div>"`;
exports[`<Header /> component with logged in state should load the component in logged in state 1`] = `"<div><header class=\\"MuiPaper-root-10 MuiPaper-elevation4-16 MuiAppBar-root-1 MuiAppBar-positionStatic-5 MuiAppBar-colorPrimary-8 css-1rvhilz e1ctrp120\\"><div class=\\"MuiToolbar-root-37 MuiToolbar-regular-39 MuiToolbar-gutters-38 css-1uq6w3o e1ctrp121\\"><div class=\\"MuiToolbar-root-37 MuiToolbar-regular-39 MuiToolbar-gutters-38 css-1vacr9s e1ctrp124\\"><a href=\\"/\\" target=\\"_self\\" style=\\"margin-right: 1em;\\"><div class=\\"css-12nq0oo e18wxr160\\"></div></a></div><div class=\\"MuiToolbar-root-37 MuiToolbar-regular-39 MuiToolbar-gutters-38 css-m61s5i e1ctrp123\\"><a href=\\"https://verdaccio.org/docs/en/installation\\" target=\\"_blank\\" tabindex=\\"0\\" class=\\"MuiButtonBase-root-54 MuiIconButton-root-48 MuiIconButton-colorInherit-49\\" role=\\"button\\" title=\\"Documentation\\"><span class=\\"MuiIconButton-label-53\\"><svg class=\\"MuiSvgIcon-root-57\\" focusable=\\"false\\" viewBox=\\"0 0 24 24\\" aria-hidden=\\"true\\" role=\\"presentation\\"><path fill=\\"none\\" d=\\"M0 0h24v24H0z\\"></path><path d=\\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z\\"></path></svg></span><span class=\\"MuiTouchRipple-root-66\\"></span></a><button tabindex=\\"0\\" class=\\"MuiButtonBase-root-54 MuiIconButton-root-48 MuiIconButton-colorInherit-49\\" type=\\"button\\" id=\\"header--button-registryInfo\\" title=\\"Registry Information\\"><span class=\\"MuiIconButton-label-53\\"><svg class=\\"MuiSvgIcon-root-57\\" focusable=\\"false\\" viewBox=\\"0 0 24 24\\" aria-hidden=\\"true\\" role=\\"presentation\\"><path fill=\\"none\\" d=\\"M0 0h24v24H0z\\"></path><path d=\\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z\\"></path></svg></span><span class=\\"MuiTouchRipple-root-66\\"></span></button><button tabindex=\\"0\\" class=\\"MuiButtonBase-root-54 MuiIconButton-root-48 MuiIconButton-colorInherit-49\\" type=\\"button\\" id=\\"header--button-account\\"><span class=\\"MuiIconButton-label-53\\"><svg class=\\"MuiSvgIcon-root-57\\" focusable=\\"false\\" viewBox=\\"0 0 24 24\\" aria-hidden=\\"true\\" role=\\"presentation\\"><path d=\\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14.2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1.94-3.5 3.22-6 3.22z\\"></path><path fill=\\"none\\" d=\\"M0 0h24v24H0z\\"></path></svg></span><span class=\\"MuiTouchRipple-root-66\\"></span></button></div></div></header></div>"`;
exports[`<Header /> component with logged out state should load the component in logged out state 1`] = `"<div><header class=\\"MuiPaper-root-10 MuiPaper-elevation4-16 MuiAppBar-root-1 MuiAppBar-positionStatic-5 MuiAppBar-colorPrimary-8 css-1rvhilz e1ctrp120\\"><div class=\\"MuiToolbar-root-37 MuiToolbar-regular-39 MuiToolbar-gutters-38 css-ioebmw e1ctrp121\\"><div class=\\"MuiToolbar-root-37 MuiToolbar-regular-39 MuiToolbar-gutters-38 css-1vacr9s e1ctrp124\\"><a href=\\"/\\" target=\\"_self\\" style=\\"margin-right: 1em;\\"><div class=\\"css-12nq0oo e18wxr160\\"></div></a></div><div class=\\"MuiToolbar-root-37 MuiToolbar-regular-39 MuiToolbar-gutters-38 css-m61s5i e1ctrp123\\"><a href=\\"https://verdaccio.org/docs/en/installation\\" target=\\"_blank\\" tabindex=\\"0\\" class=\\"MuiButtonBase-root-54 MuiIconButton-root-48 MuiIconButton-colorInherit-49\\" role=\\"button\\" title=\\"Documentation\\"><span class=\\"MuiIconButton-label-53\\"><svg class=\\"MuiSvgIcon-root-57\\" focusable=\\"false\\" viewBox=\\"0 0 24 24\\" aria-hidden=\\"true\\" role=\\"presentation\\"><path fill=\\"none\\" d=\\"M0 0h24v24H0z\\"></path><path d=\\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z\\"></path></svg></span><span class=\\"MuiTouchRipple-root-66\\"></span></a><button tabindex=\\"0\\" class=\\"MuiButtonBase-root-54 MuiIconButton-root-48 MuiIconButton-colorInherit-49\\" type=\\"button\\" id=\\"header--button-registryInfo\\" title=\\"Registry Information\\"><span class=\\"MuiIconButton-label-53\\"><svg class=\\"MuiSvgIcon-root-57\\" focusable=\\"false\\" viewBox=\\"0 0 24 24\\" aria-hidden=\\"true\\" role=\\"presentation\\"><path fill=\\"none\\" d=\\"M0 0h24v24H0z\\"></path><path d=\\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z\\"></path></svg></span><span class=\\"MuiTouchRipple-root-66\\"></span></button><button tabindex=\\"0\\" class=\\"MuiButtonBase-root-54 MuiButton-root-108 MuiButton-text-110 MuiButton-flat-113 MuiButton-colorInherit-129\\" type=\\"button\\" id=\\"header--button-login\\"><span class=\\"MuiButton-label-109\\">Login</span><span class=\\"MuiTouchRipple-root-66\\"></span></button></div></div></header></div>"`;
exports[`<Header /> component with logged out state should load the component in logged out state 1`] = `"<div><header class=\\"MuiPaper-root-10 MuiPaper-elevation4-16 MuiAppBar-root-1 MuiAppBar-positionStatic-5 MuiAppBar-colorPrimary-8 css-1rvhilz e1ctrp120\\"><div class=\\"MuiToolbar-root-37 MuiToolbar-regular-39 MuiToolbar-gutters-38 css-1uq6w3o e1ctrp121\\"><div class=\\"MuiToolbar-root-37 MuiToolbar-regular-39 MuiToolbar-gutters-38 css-1vacr9s e1ctrp124\\"><a href=\\"/\\" target=\\"_self\\" style=\\"margin-right: 1em;\\"><div class=\\"css-12nq0oo e18wxr160\\"></div></a></div><div class=\\"MuiToolbar-root-37 MuiToolbar-regular-39 MuiToolbar-gutters-38 css-m61s5i e1ctrp123\\"><a href=\\"https://verdaccio.org/docs/en/installation\\" target=\\"_blank\\" tabindex=\\"0\\" class=\\"MuiButtonBase-root-54 MuiIconButton-root-48 MuiIconButton-colorInherit-49\\" role=\\"button\\" title=\\"Documentation\\"><span class=\\"MuiIconButton-label-53\\"><svg class=\\"MuiSvgIcon-root-57\\" focusable=\\"false\\" viewBox=\\"0 0 24 24\\" aria-hidden=\\"true\\" role=\\"presentation\\"><path fill=\\"none\\" d=\\"M0 0h24v24H0z\\"></path><path d=\\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z\\"></path></svg></span><span class=\\"MuiTouchRipple-root-66\\"></span></a><button tabindex=\\"0\\" class=\\"MuiButtonBase-root-54 MuiIconButton-root-48 MuiIconButton-colorInherit-49\\" type=\\"button\\" id=\\"header--button-registryInfo\\" title=\\"Registry Information\\"><span class=\\"MuiIconButton-label-53\\"><svg class=\\"MuiSvgIcon-root-57\\" focusable=\\"false\\" viewBox=\\"0 0 24 24\\" aria-hidden=\\"true\\" role=\\"presentation\\"><path fill=\\"none\\" d=\\"M0 0h24v24H0z\\"></path><path d=\\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z\\"></path></svg></span><span class=\\"MuiTouchRipple-root-66\\"></span></button><button tabindex=\\"0\\" class=\\"MuiButtonBase-root-54 MuiButton-root-108 MuiButton-text-110 MuiButton-flat-113 MuiButton-colorInherit-129\\" type=\\"button\\" id=\\"header--button-login\\"><span class=\\"MuiButton-label-109\\">Login</span><span class=\\"MuiTouchRipple-root-66\\"></span></button></div></div></header></div>"`;

View file

@ -13,10 +13,4 @@ describe('<Footer /> component', () => {
it('should load the inital state of Footer component', () => {
expect(wrapper.html()).toMatchSnapshot();
});
it('should hover the earth in footer', () => {
const earth = wrapper.find('img[alt="Earth"]');
earth.simulate('click');
expect(wrapper.state('showAuthorsGeographic')).toEqual(true);
});
});
});

View file

@ -56,11 +56,15 @@ module.exports = {
use: 'babel-loader',
},
{
test: /\.(jpe?g|png|gif)$/,
use: 'file-loader?name=[name].[ext]',
test: /\.(jpe?g|png|gif|svg)$/,
use: [
{
loader: 'file-loader'
},
]
},
{
test: /\.(ttf|eot|woff|woff2|svg)$/,
test: /\.(ttf|eot|woff|woff2)$/,
loader: 'url-loader',
options: {
limit: 50000,

BIN
yarn.lock

Binary file not shown.