Browse Source

leftmenu scss

Vlad 5 years ago
parent
commit
1d292a7996

+ 511 - 8
package-lock.json

@@ -1083,6 +1083,11 @@
       "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.0.tgz",
       "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.0.tgz",
       "integrity": "sha512-sY5AXXVZv4Y1VACTtR11UJCPHHudgY5i26Qj5TypE6DKlIApbwb5uqhXcJ5UUGbvZNRh7EeIoW+LrJumBsKp7w=="
       "integrity": "sha512-sY5AXXVZv4Y1VACTtR11UJCPHHudgY5i26Qj5TypE6DKlIApbwb5uqhXcJ5UUGbvZNRh7EeIoW+LrJumBsKp7w=="
     },
     },
+    "abbrev": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
+      "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
+    },
     "accepts": {
     "accepts": {
       "version": "1.3.5",
       "version": "1.3.5",
       "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz",
       "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz",
@@ -1170,6 +1175,11 @@
       "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz",
       "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz",
       "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM="
       "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM="
     },
     },
+    "amdefine": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
+      "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU="
+    },
     "ansi-colors": {
     "ansi-colors": {
       "version": "3.2.3",
       "version": "3.2.3",
       "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz",
       "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz",
@@ -1544,6 +1554,15 @@
       "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
       "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
       "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw=="
       "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw=="
     },
     },
+    "are-we-there-yet": {
+      "version": "1.1.5",
+      "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz",
+      "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==",
+      "requires": {
+        "delegates": "^1.0.0",
+        "readable-stream": "^2.0.6"
+      }
+    },
     "argparse": {
     "argparse": {
       "version": "1.0.10",
       "version": "1.0.10",
       "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
       "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
@@ -1589,6 +1608,11 @@
       "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz",
       "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz",
       "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw="
       "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw="
     },
     },
+    "array-find-index": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
+      "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E="
+    },
     "array-flatten": {
     "array-flatten": {
       "version": "2.1.2",
       "version": "2.1.2",
       "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz",
       "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz",
@@ -1720,6 +1744,11 @@
       "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz",
       "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz",
       "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0="
       "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0="
     },
     },
+    "async-foreach": {
+      "version": "0.1.3",
+      "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
+      "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI="
+    },
     "async-limiter": {
     "async-limiter": {
       "version": "1.0.0",
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz",
       "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz",
@@ -2382,6 +2411,14 @@
       "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.12.0.tgz",
       "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.12.0.tgz",
       "integrity": "sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg=="
       "integrity": "sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg=="
     },
     },
+    "block-stream": {
+      "version": "0.0.9",
+      "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
+      "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
+      "requires": {
+        "inherits": "~2.0.0"
+      }
+    },
     "bluebird": {
     "bluebird": {
       "version": "3.5.3",
       "version": "3.5.3",
       "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz",
       "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz",
@@ -2714,6 +2751,22 @@
       "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.0.0.tgz",
       "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.0.0.tgz",
       "integrity": "sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA=="
       "integrity": "sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA=="
     },
     },
+    "camelcase-keys": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
+      "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
+      "requires": {
+        "camelcase": "^2.0.0",
+        "map-obj": "^1.0.0"
+      },
+      "dependencies": {
+        "camelcase": {
+          "version": "2.1.1",
+          "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
+          "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8="
+        }
+      }
+    },
     "caniuse-api": {
     "caniuse-api": {
       "version": "3.0.0",
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz",
       "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz",
@@ -3171,6 +3224,11 @@
         "date-now": "^0.1.4"
         "date-now": "^0.1.4"
       }
       }
     },
     },
+    "console-control-strings": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
+      "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4="
+    },
     "constants-browserify": {
     "constants-browserify": {
       "version": "1.0.0",
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
       "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
@@ -3746,6 +3804,14 @@
         "cssom": "0.3.x"
         "cssom": "0.3.x"
       }
       }
     },
     },
+    "currently-unhandled": {
+      "version": "0.4.1",
+      "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
+      "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
+      "requires": {
+        "array-find-index": "^1.0.1"
+      }
+    },
     "cyclist": {
     "cyclist": {
       "version": "0.2.2",
       "version": "0.2.2",
       "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz",
       "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz",
@@ -3934,6 +4000,11 @@
       "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
       "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
       "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
       "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
     },
     },
+    "delegates": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
+      "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o="
+    },
     "depd": {
     "depd": {
       "version": "1.1.2",
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
       "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
@@ -5858,11 +5929,13 @@
         },
         },
         "balanced-match": {
         "balanced-match": {
           "version": "1.0.0",
           "version": "1.0.0",
-          "bundled": true
+          "bundled": true,
+          "optional": true
         },
         },
         "brace-expansion": {
         "brace-expansion": {
           "version": "1.1.11",
           "version": "1.1.11",
           "bundled": true,
           "bundled": true,
+          "optional": true,
           "requires": {
           "requires": {
             "balanced-match": "^1.0.0",
             "balanced-match": "^1.0.0",
             "concat-map": "0.0.1"
             "concat-map": "0.0.1"
@@ -5875,15 +5948,18 @@
         },
         },
         "code-point-at": {
         "code-point-at": {
           "version": "1.1.0",
           "version": "1.1.0",
-          "bundled": true
+          "bundled": true,
+          "optional": true
         },
         },
         "concat-map": {
         "concat-map": {
           "version": "0.0.1",
           "version": "0.0.1",
-          "bundled": true
+          "bundled": true,
+          "optional": true
         },
         },
         "console-control-strings": {
         "console-control-strings": {
           "version": "1.1.0",
           "version": "1.1.0",
-          "bundled": true
+          "bundled": true,
+          "optional": true
         },
         },
         "core-util-is": {
         "core-util-is": {
           "version": "1.0.2",
           "version": "1.0.2",
@@ -5986,7 +6062,8 @@
         },
         },
         "inherits": {
         "inherits": {
           "version": "2.0.3",
           "version": "2.0.3",
-          "bundled": true
+          "bundled": true,
+          "optional": true
         },
         },
         "ini": {
         "ini": {
           "version": "1.3.5",
           "version": "1.3.5",
@@ -5996,6 +6073,7 @@
         "is-fullwidth-code-point": {
         "is-fullwidth-code-point": {
           "version": "1.0.0",
           "version": "1.0.0",
           "bundled": true,
           "bundled": true,
+          "optional": true,
           "requires": {
           "requires": {
             "number-is-nan": "^1.0.0"
             "number-is-nan": "^1.0.0"
           }
           }
@@ -6008,6 +6086,7 @@
         "minimatch": {
         "minimatch": {
           "version": "3.0.4",
           "version": "3.0.4",
           "bundled": true,
           "bundled": true,
+          "optional": true,
           "requires": {
           "requires": {
             "brace-expansion": "^1.1.7"
             "brace-expansion": "^1.1.7"
           }
           }
@@ -6019,6 +6098,7 @@
         "minipass": {
         "minipass": {
           "version": "2.2.4",
           "version": "2.2.4",
           "bundled": true,
           "bundled": true,
+          "optional": true,
           "requires": {
           "requires": {
             "safe-buffer": "^5.1.1",
             "safe-buffer": "^5.1.1",
             "yallist": "^3.0.0"
             "yallist": "^3.0.0"
@@ -6107,7 +6187,8 @@
         },
         },
         "number-is-nan": {
         "number-is-nan": {
           "version": "1.0.1",
           "version": "1.0.1",
-          "bundled": true
+          "bundled": true,
+          "optional": true
         },
         },
         "object-assign": {
         "object-assign": {
           "version": "4.1.1",
           "version": "4.1.1",
@@ -6117,6 +6198,7 @@
         "once": {
         "once": {
           "version": "1.4.0",
           "version": "1.4.0",
           "bundled": true,
           "bundled": true,
+          "optional": true,
           "requires": {
           "requires": {
             "wrappy": "1"
             "wrappy": "1"
           }
           }
@@ -6222,6 +6304,7 @@
         "string-width": {
         "string-width": {
           "version": "1.0.2",
           "version": "1.0.2",
           "bundled": true,
           "bundled": true,
+          "optional": true,
           "requires": {
           "requires": {
             "code-point-at": "^1.0.0",
             "code-point-at": "^1.0.0",
             "is-fullwidth-code-point": "^1.0.0",
             "is-fullwidth-code-point": "^1.0.0",
@@ -6285,6 +6368,17 @@
         }
         }
       }
       }
     },
     },
+    "fstream": {
+      "version": "1.0.11",
+      "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
+      "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
+      "requires": {
+        "graceful-fs": "^4.1.2",
+        "inherits": "~2.0.0",
+        "mkdirp": ">=0.5 0",
+        "rimraf": "2"
+      }
+    },
     "function-bind": {
     "function-bind": {
       "version": "1.1.1",
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
       "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
@@ -6295,6 +6389,49 @@
       "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
       "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
       "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc="
       "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc="
     },
     },
+    "gauge": {
+      "version": "2.7.4",
+      "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
+      "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
+      "requires": {
+        "aproba": "^1.0.3",
+        "console-control-strings": "^1.0.0",
+        "has-unicode": "^2.0.0",
+        "object-assign": "^4.1.0",
+        "signal-exit": "^3.0.0",
+        "string-width": "^1.0.1",
+        "strip-ansi": "^3.0.1",
+        "wide-align": "^1.1.0"
+      },
+      "dependencies": {
+        "is-fullwidth-code-point": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
+          "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
+          "requires": {
+            "number-is-nan": "^1.0.0"
+          }
+        },
+        "string-width": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
+          "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
+          "requires": {
+            "code-point-at": "^1.0.0",
+            "is-fullwidth-code-point": "^1.0.0",
+            "strip-ansi": "^3.0.0"
+          }
+        }
+      }
+    },
+    "gaze": {
+      "version": "1.1.3",
+      "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz",
+      "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==",
+      "requires": {
+        "globule": "^1.0.0"
+      }
+    },
     "get-caller-file": {
     "get-caller-file": {
       "version": "1.0.3",
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz",
       "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz",
@@ -6305,6 +6442,11 @@
       "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.0.tgz",
       "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.0.tgz",
       "integrity": "sha512-CIJYJC4GGF06TakLg8z4GQKvDsx9EMspVxOYih7LerEL/WosUnFIww45CGfxfeKHqlg3twgUrYRT1O3WQqjGCg=="
       "integrity": "sha512-CIJYJC4GGF06TakLg8z4GQKvDsx9EMspVxOYih7LerEL/WosUnFIww45CGfxfeKHqlg3twgUrYRT1O3WQqjGCg=="
     },
     },
+    "get-stdin": {
+      "version": "4.0.1",
+      "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
+      "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4="
+    },
     "get-stream": {
     "get-stream": {
       "version": "3.0.0",
       "version": "3.0.0",
       "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
       "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
@@ -6411,6 +6553,16 @@
         }
         }
       }
       }
     },
     },
+    "globule": {
+      "version": "1.2.1",
+      "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz",
+      "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==",
+      "requires": {
+        "glob": "~7.1.1",
+        "lodash": "~4.17.10",
+        "minimatch": "~3.0.2"
+      }
+    },
     "graceful-fs": {
     "graceful-fs": {
       "version": "4.1.15",
       "version": "4.1.15",
       "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz",
       "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz",
@@ -6563,6 +6715,11 @@
       "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz",
       "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz",
       "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q="
       "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q="
     },
     },
+    "has-unicode": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
+      "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk="
+    },
     "has-value": {
     "has-value": {
       "version": "1.0.0",
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
       "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
@@ -7244,6 +7401,19 @@
       "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
       "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
       "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o="
       "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o="
     },
     },
+    "in-publish": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz",
+      "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E="
+    },
+    "indent-string": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
+      "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
+      "requires": {
+        "repeating": "^2.0.0"
+      }
+    },
     "indexes-of": {
     "indexes-of": {
       "version": "1.0.1",
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz",
       "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz",
@@ -8316,6 +8486,11 @@
         "topo": "2.x.x"
         "topo": "2.x.x"
       }
       }
     },
     },
+    "js-base64": {
+      "version": "2.5.0",
+      "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.0.tgz",
+      "integrity": "sha512-wlEBIZ5LP8usDylWbDNhKPEFVFdI5hCHpnVoT/Ysvoi/PRhJENm/Rlh9TvjYB38HFfKZN7OzEbRjmjvLkFw11g=="
+    },
     "js-levenshtein": {
     "js-levenshtein": {
       "version": "1.1.5",
       "version": "1.1.5",
       "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.5.tgz",
       "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.5.tgz",
@@ -8645,11 +8820,21 @@
       "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz",
       "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz",
       "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0="
       "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0="
     },
     },
+    "lodash.assign": {
+      "version": "4.2.0",
+      "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz",
+      "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc="
+    },
     "lodash.camelcase": {
     "lodash.camelcase": {
       "version": "4.3.0",
       "version": "4.3.0",
       "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz",
       "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz",
       "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY="
       "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY="
     },
     },
+    "lodash.clonedeep": {
+      "version": "4.5.0",
+      "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
+      "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8="
+    },
     "lodash.debounce": {
     "lodash.debounce": {
       "version": "4.0.8",
       "version": "4.0.8",
       "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
       "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
@@ -8680,6 +8865,11 @@
       "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz",
       "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz",
       "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4="
       "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4="
     },
     },
+    "lodash.mergewith": {
+      "version": "4.6.1",
+      "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz",
+      "integrity": "sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ=="
+    },
     "lodash.sortby": {
     "lodash.sortby": {
       "version": "4.7.0",
       "version": "4.7.0",
       "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz",
       "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz",
@@ -8730,6 +8920,15 @@
         "js-tokens": "^3.0.0 || ^4.0.0"
         "js-tokens": "^3.0.0 || ^4.0.0"
       }
       }
     },
     },
+    "loud-rejection": {
+      "version": "1.6.0",
+      "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
+      "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
+      "requires": {
+        "currently-unhandled": "^0.4.1",
+        "signal-exit": "^3.0.0"
+      }
+    },
     "lower-case": {
     "lower-case": {
       "version": "1.1.4",
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz",
       "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz",
@@ -8785,6 +8984,11 @@
       "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
       "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
       "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8="
       "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8="
     },
     },
+    "map-obj": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
+      "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0="
+    },
     "map-visit": {
     "map-visit": {
       "version": "1.0.0",
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
       "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
@@ -8835,6 +9039,23 @@
         "readable-stream": "^2.0.1"
         "readable-stream": "^2.0.1"
       }
       }
     },
     },
+    "meow": {
+      "version": "3.7.0",
+      "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
+      "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
+      "requires": {
+        "camelcase-keys": "^2.0.0",
+        "decamelize": "^1.1.2",
+        "loud-rejection": "^1.0.0",
+        "map-obj": "^1.0.1",
+        "minimist": "^1.1.3",
+        "normalize-package-data": "^2.3.4",
+        "object-assign": "^4.0.1",
+        "read-pkg-up": "^1.0.1",
+        "redent": "^1.0.0",
+        "trim-newlines": "^1.0.0"
+      }
+    },
     "merge": {
     "merge": {
       "version": "1.2.1",
       "version": "1.2.1",
       "resolved": "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz",
       "resolved": "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz",
@@ -9086,8 +9307,7 @@
     "nan": {
     "nan": {
       "version": "2.12.1",
       "version": "2.12.1",
       "resolved": "https://registry.npmjs.org/nan/-/nan-2.12.1.tgz",
       "resolved": "https://registry.npmjs.org/nan/-/nan-2.12.1.tgz",
-      "integrity": "sha512-JY7V6lRkStKcKTvHO5NVSQRv+RV+FIL5pvDoLiAtSL9pKlC5x9PKQcZDsq7m4FO4d57mkhC6Z+QhAh3Jdk5JFw==",
-      "optional": true
+      "integrity": "sha512-JY7V6lRkStKcKTvHO5NVSQRv+RV+FIL5pvDoLiAtSL9pKlC5x9PKQcZDsq7m4FO4d57mkhC6Z+QhAh3Jdk5JFw=="
     },
     },
     "nanomatch": {
     "nanomatch": {
       "version": "1.2.13",
       "version": "1.2.13",
@@ -9166,6 +9386,32 @@
       "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz",
       "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz",
       "integrity": "sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ=="
       "integrity": "sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ=="
     },
     },
+    "node-gyp": {
+      "version": "3.8.0",
+      "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz",
+      "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==",
+      "requires": {
+        "fstream": "^1.0.0",
+        "glob": "^7.0.3",
+        "graceful-fs": "^4.1.2",
+        "mkdirp": "^0.5.0",
+        "nopt": "2 || 3",
+        "npmlog": "0 || 1 || 2 || 3 || 4",
+        "osenv": "0",
+        "request": "^2.87.0",
+        "rimraf": "2",
+        "semver": "~5.3.0",
+        "tar": "^2.0.0",
+        "which": "1"
+      },
+      "dependencies": {
+        "semver": {
+          "version": "5.3.0",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
+          "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8="
+        }
+      }
+    },
     "node-int64": {
     "node-int64": {
       "version": "0.4.0",
       "version": "0.4.0",
       "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
       "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
@@ -9227,6 +9473,73 @@
         "semver": "^5.3.0"
         "semver": "^5.3.0"
       }
       }
     },
     },
+    "node-sass": {
+      "version": "4.11.0",
+      "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.11.0.tgz",
+      "integrity": "sha512-bHUdHTphgQJZaF1LASx0kAviPH7sGlcyNhWade4eVIpFp6tsn7SV8xNMTbsQFpEV9VXpnwTTnNYlfsZXgGgmkA==",
+      "requires": {
+        "async-foreach": "^0.1.3",
+        "chalk": "^1.1.1",
+        "cross-spawn": "^3.0.0",
+        "gaze": "^1.0.0",
+        "get-stdin": "^4.0.1",
+        "glob": "^7.0.3",
+        "in-publish": "^2.0.0",
+        "lodash.assign": "^4.2.0",
+        "lodash.clonedeep": "^4.3.2",
+        "lodash.mergewith": "^4.6.0",
+        "meow": "^3.7.0",
+        "mkdirp": "^0.5.1",
+        "nan": "^2.10.0",
+        "node-gyp": "^3.8.0",
+        "npmlog": "^4.0.0",
+        "request": "^2.88.0",
+        "sass-graph": "^2.2.4",
+        "stdout-stream": "^1.4.0",
+        "true-case-path": "^1.0.2"
+      },
+      "dependencies": {
+        "ansi-styles": {
+          "version": "2.2.1",
+          "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
+          "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4="
+        },
+        "chalk": {
+          "version": "1.1.3",
+          "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+          "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
+          "requires": {
+            "ansi-styles": "^2.2.1",
+            "escape-string-regexp": "^1.0.2",
+            "has-ansi": "^2.0.0",
+            "strip-ansi": "^3.0.0",
+            "supports-color": "^2.0.0"
+          }
+        },
+        "cross-spawn": {
+          "version": "3.0.1",
+          "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz",
+          "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
+          "requires": {
+            "lru-cache": "^4.0.1",
+            "which": "^1.2.9"
+          }
+        },
+        "supports-color": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
+          "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc="
+        }
+      }
+    },
+    "nopt": {
+      "version": "3.0.6",
+      "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
+      "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
+      "requires": {
+        "abbrev": "1"
+      }
+    },
     "normalize-package-data": {
     "normalize-package-data": {
       "version": "2.4.0",
       "version": "2.4.0",
       "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz",
       "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz",
@@ -9264,6 +9577,17 @@
         "path-key": "^2.0.0"
         "path-key": "^2.0.0"
       }
       }
     },
     },
+    "npmlog": {
+      "version": "4.1.2",
+      "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
+      "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
+      "requires": {
+        "are-we-there-yet": "~1.1.2",
+        "console-control-strings": "~1.1.0",
+        "gauge": "~2.7.3",
+        "set-blocking": "~2.0.0"
+      }
+    },
     "nth-check": {
     "nth-check": {
       "version": "1.0.2",
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
       "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
@@ -9509,6 +9833,15 @@
       "resolved": "http://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
       "resolved": "http://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
       "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ="
       "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ="
     },
     },
+    "osenv": {
+      "version": "0.1.5",
+      "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
+      "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
+      "requires": {
+        "os-homedir": "^1.0.0",
+        "os-tmpdir": "^1.0.0"
+      }
+    },
     "p-defer": {
     "p-defer": {
       "version": "1.0.0",
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz",
       "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz",
@@ -14684,6 +15017,15 @@
         "minimatch": "3.0.4"
         "minimatch": "3.0.4"
       }
       }
     },
     },
+    "redent": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
+      "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
+      "requires": {
+        "indent-string": "^2.1.0",
+        "strip-indent": "^1.0.1"
+      }
+    },
     "redux": {
     "redux": {
       "version": "4.0.1",
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/redux/-/redux-4.0.1.tgz",
       "resolved": "https://registry.npmjs.org/redux/-/redux-4.0.1.tgz",
@@ -15402,6 +15744,101 @@
         }
         }
       }
       }
     },
     },
+    "sass": {
+      "version": "1.16.0",
+      "resolved": "https://registry.npmjs.org/sass/-/sass-1.16.0.tgz",
+      "integrity": "sha512-uJu+dH8XlyN7WCTLg1L1L49EK9mBJyNgS0qDd9NW2eb1h0EnIs50Z0Y+XFev5ae7NdHY/xi1wVnJiLLOE/ojnQ==",
+      "requires": {
+        "chokidar": "^2.0.0"
+      }
+    },
+    "sass-graph": {
+      "version": "2.2.4",
+      "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz",
+      "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=",
+      "requires": {
+        "glob": "^7.0.0",
+        "lodash": "^4.0.0",
+        "scss-tokenizer": "^0.2.3",
+        "yargs": "^7.0.0"
+      },
+      "dependencies": {
+        "camelcase": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz",
+          "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo="
+        },
+        "cliui": {
+          "version": "3.2.0",
+          "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
+          "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
+          "requires": {
+            "string-width": "^1.0.1",
+            "strip-ansi": "^3.0.1",
+            "wrap-ansi": "^2.0.0"
+          }
+        },
+        "is-fullwidth-code-point": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
+          "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
+          "requires": {
+            "number-is-nan": "^1.0.0"
+          }
+        },
+        "os-locale": {
+          "version": "1.4.0",
+          "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
+          "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
+          "requires": {
+            "lcid": "^1.0.0"
+          }
+        },
+        "string-width": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
+          "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
+          "requires": {
+            "code-point-at": "^1.0.0",
+            "is-fullwidth-code-point": "^1.0.0",
+            "strip-ansi": "^3.0.0"
+          }
+        },
+        "which-module": {
+          "version": "1.0.0",
+          "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz",
+          "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8="
+        },
+        "yargs": {
+          "version": "7.1.0",
+          "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz",
+          "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=",
+          "requires": {
+            "camelcase": "^3.0.0",
+            "cliui": "^3.2.0",
+            "decamelize": "^1.1.1",
+            "get-caller-file": "^1.0.1",
+            "os-locale": "^1.4.0",
+            "read-pkg-up": "^1.0.1",
+            "require-directory": "^2.1.1",
+            "require-main-filename": "^1.0.1",
+            "set-blocking": "^2.0.0",
+            "string-width": "^1.0.2",
+            "which-module": "^1.0.0",
+            "y18n": "^3.2.1",
+            "yargs-parser": "^5.0.0"
+          }
+        },
+        "yargs-parser": {
+          "version": "5.0.0",
+          "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz",
+          "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=",
+          "requires": {
+            "camelcase": "^3.0.0"
+          }
+        }
+      }
+    },
     "sass-loader": {
     "sass-loader": {
       "version": "7.1.0",
       "version": "7.1.0",
       "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.1.0.tgz",
       "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.1.0.tgz",
@@ -15495,6 +15932,25 @@
         "ajv-keywords": "^3.1.0"
         "ajv-keywords": "^3.1.0"
       }
       }
     },
     },
+    "scss-tokenizer": {
+      "version": "0.2.3",
+      "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz",
+      "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=",
+      "requires": {
+        "js-base64": "^2.1.8",
+        "source-map": "^0.4.2"
+      },
+      "dependencies": {
+        "source-map": {
+          "version": "0.4.4",
+          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
+          "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
+          "requires": {
+            "amdefine": ">=0.0.4"
+          }
+        }
+      }
+    },
     "select-hose": {
     "select-hose": {
       "version": "2.0.0",
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz",
       "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz",
@@ -16069,6 +16525,14 @@
       "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
       "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
       "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew=="
       "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew=="
     },
     },
+    "stdout-stream": {
+      "version": "1.4.1",
+      "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz",
+      "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==",
+      "requires": {
+        "readable-stream": "^2.0.1"
+      }
+    },
     "stealthy-require": {
     "stealthy-require": {
       "version": "1.1.1",
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz",
       "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz",
@@ -16210,6 +16674,14 @@
       "resolved": "http://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
       "resolved": "http://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
       "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8="
       "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8="
     },
     },
+    "strip-indent": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
+      "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
+      "requires": {
+        "get-stdin": "^4.0.1"
+      }
+    },
     "strip-json-comments": {
     "strip-json-comments": {
       "version": "2.0.1",
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
       "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
@@ -16357,6 +16829,16 @@
       "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.1.tgz",
       "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.1.tgz",
       "integrity": "sha512-9I2ydhj8Z9veORCw5PRm4u9uebCn0mcCa6scWoNcbZ6dAtoo2618u9UUzxgmsCOreJpqDDuv61LvwofW7hLcBA=="
       "integrity": "sha512-9I2ydhj8Z9veORCw5PRm4u9uebCn0mcCa6scWoNcbZ6dAtoo2618u9UUzxgmsCOreJpqDDuv61LvwofW7hLcBA=="
     },
     },
+    "tar": {
+      "version": "2.2.1",
+      "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz",
+      "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=",
+      "requires": {
+        "block-stream": "*",
+        "fstream": "^1.0.2",
+        "inherits": "2"
+      }
+    },
     "terser": {
     "terser": {
       "version": "3.14.1",
       "version": "3.14.1",
       "resolved": "https://registry.npmjs.org/terser/-/terser-3.14.1.tgz",
       "resolved": "https://registry.npmjs.org/terser/-/terser-3.14.1.tgz",
@@ -16611,11 +17093,24 @@
         "punycode": "^2.1.0"
         "punycode": "^2.1.0"
       }
       }
     },
     },
+    "trim-newlines": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
+      "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM="
+    },
     "trim-right": {
     "trim-right": {
       "version": "1.0.1",
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz",
       "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz",
       "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM="
       "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM="
     },
     },
+    "true-case-path": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz",
+      "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==",
+      "requires": {
+        "glob": "^7.1.2"
+      }
+    },
     "tryer": {
     "tryer": {
       "version": "1.0.1",
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz",
       "resolved": "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz",
@@ -17768,6 +18263,14 @@
       "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
       "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
       "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho="
       "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho="
     },
     },
+    "wide-align": {
+      "version": "1.1.3",
+      "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz",
+      "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
+      "requires": {
+        "string-width": "^1.0.2 || 2"
+      }
+    },
     "wordwrap": {
     "wordwrap": {
       "version": "1.0.0",
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
       "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",

+ 3 - 1
package.json

@@ -5,13 +5,15 @@
   "dependencies": {
   "dependencies": {
     "antd": "^3.11.2",
     "antd": "^3.11.2",
     "axios": "^0.18.0",
     "axios": "^0.18.0",
+    "node-sass": "^4.11.0",
     "react": "^16.6.3",
     "react": "^16.6.3",
     "react-dom": "^16.6.3",
     "react-dom": "^16.6.3",
     "react-redux": "^6.0.0",
     "react-redux": "^6.0.0",
     "react-router-dom": "^4.3.1",
     "react-router-dom": "^4.3.1",
     "react-scripts": "^2.1.3",
     "react-scripts": "^2.1.3",
     "redux": "^4.0.1",
     "redux": "^4.0.1",
-    "redux-form": "^8.1.0"
+    "redux-form": "^8.1.0",
+    "sass": "^1.16.0"
   },
   },
   "scripts": {
   "scripts": {
     "start": "react-scripts start",
     "start": "react-scripts start",

+ 8 - 7
src/components/Header/Myprofile.js

@@ -4,14 +4,15 @@ import { Avatar } from 'antd';
 class Myprofile extends Component {
 class Myprofile extends Component {
     render() {
     render() {
         return (
         return (
-        <div className="auth">
+        <div className="header__auth">
             <Link to="/registration" className="link" target="_blank">
             <Link to="/registration" className="link" target="_blank">
-            
-                <div className="avatar">
-                    <Avatar icon="user" style={{ backgroundColor: '#1890ff' }}/>
-                </div>
-                <div>
-                    Мой профиль
+                <div className="header__auth__container">
+                    <div className="avatar">
+                        <Avatar icon="user" style={{ backgroundColor: '#1890ff' }}/>
+                    </div>
+                    <div>
+                        Мой профиль
+                    </div>
                 </div>    
                 </div>    
             </Link>    
             </Link>    
         </div>
         </div>

+ 1 - 1
src/components/Header/logo.js

@@ -4,7 +4,7 @@ import { Link } from "react-router-dom";
 class HeaderLogo extends Component {
 class HeaderLogo extends Component {
     render() {
     render() {
         return (
         return (
-            <div className="logo">
+            <div className="header__logo">
                <Link to="/logo"><img src={logo} alt="Logo"/></Link> 
                <Link to="/logo"><img src={logo} alt="Logo"/></Link> 
             </div>
             </div>
         );
         );

+ 65 - 5
src/components/Header/searchLine.js

@@ -13,12 +13,12 @@ const axios = require('axios');
 //Добавить пользователя
 //Добавить пользователя
 // axios.post(`http://127.0.0.1:2000/api/users`,{
 // axios.post(`http://127.0.0.1:2000/api/users`,{
 //         "name": "John",
 //         "name": "John",
-//         "description": "dfgfdhd",
+//         "description": "Крутой перец",
 //         "login": "Johny",
 //         "login": "Johny",
 //         "password": "1234567",
 //         "password": "1234567",
-//         "isAdmin": "1",
-//         "email": "dsgdsgdf@gmail.com",
-//         "avatar": "",
+//         "isAdmin": "0",
+//         "email": "vladbabich@gmail.com",
+//         "avatar": "https://st.kp.yandex.net/images/actor_iphone/iphone360_6245.jpg",
 //         "phone": "+380951242245"  
 //         "phone": "+380951242245"  
 // })
 // })
 //   .then(function (response) {
 //   .then(function (response) {
@@ -51,11 +51,71 @@ const axios = require('axios');
 //     console.log(response);
 //     console.log(response);
 //   })
 //   })
 
 
+//     axios.post(
+//     'http://127.0.0.1:2000/api/categories',
+//     {
+//         "title": "Одежда",
+//         "description": "Стыдно, когда видно!",
+//         "parentId": "0"
+//     }
+    
+// )
+
+// .then(function (response) { console.log(response) })
+// .catch((err)=>console.log(err))
+
+
+
+// axios.post(
+//     'http://127.0.0.1:2000/api/staffs',
+//     {
+//         "title": "Куртка зимняя",
+//         "description": "Очень теплая",
+//         "staff": "Стаф. Не знаю, что вы хотите тут, но я сделал",
+//         "price": "80000",
+//         "state": "1",
+//         "img": "https://militarist.ua/upload/tmp/resize_420_420/ed8006d3e4b83a6643cd16a3247463de.jpg",
+//         "userId": "1",
+//         "categoryId": "3"
+//     }
+    
+    
+// )
+
+// .then(function (response) { console.log(response) })
+// .catch((err)=>console.log(err))
+
+// axios.post(
+//     'http://127.0.0.1:2000/api/categories',
+//     {
+//         "title": "Женская",
+//         "description": "Стыдно, когда видно!",
+//         "parentId": "1"
+//     }
+    
+// )
+
+// .then(function (response) { console.log(response) })
+// .catch((err)=>console.log(err))
+
+// axios.post(
+//     'http://127.0.0.1:2000/api/categories',
+//     {
+//         "title": "Мужская одежда",
+//         "description": "Стыдно, когда видно!",
+//         "parentId": "1"
+//     }
+    
+// )
+
+// .then(function (response) { console.log(response) })
+// .catch((err)=>console.log(err))
+
 
 
 class SearchLine extends Component {
 class SearchLine extends Component {
     render() {
     render() {
         return (
         return (
-            <div className="searchLine">
+            <div className="header__searchLine">
                 <Search className="searchInput"
                 <Search className="searchInput"
                     placeholder="input search text"
                     placeholder="input search text"
                     onSearch={value => console.log(value)}
                     onSearch={value => console.log(value)}

+ 98 - 0
src/components/LeftMenu/DrawCategory.js

@@ -0,0 +1,98 @@
+import React, {Component, Fragment} from 'react'
+import { Layout, Menu, Icon } from 'antd';
+  
+const { Sider } = Layout;
+const SubMenu = Menu.SubMenu;
+
+const axios = require('axios');
+
+axios.get('http://127.0.0.1:2000/api/categories')
+        .then(function (response) { console.log(response.data) })
+
+class Category extends Component {
+    
+
+    onChange = ()=>{
+        axios.post(
+            'http://127.0.0.1:2000/api/categories',
+            {
+                "title": "Авторио",
+                "description": "Током бахнет!",
+                "parentId": 0
+            }
+            
+        )
+        
+        .then(function (response) { console.log(response) })
+        .catch((err)=>console.log(err))
+    }
+    
+    onChange1 = ()=>{
+        axios.get('http://127.0.0.1:2000/api/staffs')
+        .then(function (response) { console.log(response.data) })
+    }
+
+    render(){
+        console.log(Layout, Menu, Icon)
+        return (
+            <Menu theme="dark" defaultSelectedKeys={['1']} mode="inline">    
+                {/* { test[count].answers.map((el,key) => <Answers test={el} 
+																type={test[count].type} 
+																youMark={youMark} 
+																count={count} 
+																addMark={addMark}
+																allMark={allMark}
+																allMarks={allMarks} 
+																key={key} />) }        */}
+                <Menu.Item key="10">
+                    <Icon type="pie-chart" />
+                    <span>Футболка</span>
+                </Menu.Item>
+
+                
+                    <Menu.Item key="1">
+                    <Icon type="pie-chart" />
+                    <span>Option 1</span>
+                    </Menu.Item>
+                    <Menu.Item key="2">
+                    <Icon type="desktop" />
+                    <span>Option 2</span>
+                    </Menu.Item>
+                    <SubMenu
+                    key="sub1"
+                    title={<span><Icon type="user" /><span>Одежда</span></span>}
+                    >
+                    <SubMenu
+                    key="sub6"
+                    title={<span><Icon type="shopping" /><span>Женское белье</span></span>}
+                    >
+                    <Menu.Item key="3"><button onClick={this.onChange}>Post
+        </button></Menu.Item>
+                    <Menu.Item key="4"><button onClick={this.onChange1}>Get
+        </button></Menu.Item>
+                    </SubMenu>
+                    <Menu.Item key="5">Bill</Menu.Item>
+                    <Menu.Item key="6">Alex</Menu.Item>
+                    </SubMenu>
+                    <SubMenu
+                    key="sub2"
+                    title={<span><Icon type="team" /><span>Team</span></span>}
+                    >
+                    <Menu.Item key="7">Team 1</Menu.Item>
+                    <Menu.Item key="8">Team 2</Menu.Item>
+                    </SubMenu>
+                    <Menu.Item key="9">
+                    <Icon type="file" />
+                    <span>File</span>
+                    </Menu.Item>
+                
+                            
+            </Menu>
+                
+            
+        );
+    }
+}
+
+export default Category
+

+ 38 - 84
src/components/LeftMenu/index.js

@@ -1,98 +1,52 @@
-import React, { Component } from 'react';
-import {
-    Layout, Menu, Icon,
-  } from 'antd';
+import React, {Component, Fragment} from 'react';
+import { Layout, Menu, Icon } from 'antd';
+
+import Category from './DrawCategory'
   
   
-  const {
-     Sider
-  } = Layout;
-  const SubMenu = Menu.SubMenu;
-  const axios = require('axios');
+const { Sider } = Layout;
+const axios = require('axios');
+
 class LeftMenu extends Component {
 class LeftMenu extends Component {
     state = {
     state = {
         collapsed: false,
         collapsed: false,
-      };
-    onCollapse = (collapsed) => {
-        
+    };
+
+    onCollapse = collapsed => {
         this.setState({ collapsed });
         this.setState({ collapsed });
     }
     }
+
     onChange = ()=>{
     onChange = ()=>{
-        axios.post(`http://127.0.0.1:2000/api/staffs`,{
-            "title": "Футлка",
-            "description": "Продаю футболку Адидас",
-            "staff": "Одежда",
-            "price": 100,
-            "state": "0",
-            "img": "",
-            "userId": "1",
-            "categoryId": "1"
-        }
+        axios.post(
+            'http://127.0.0.1:2000/api/categories',
+            {
+                "title": "Авто",
+                "description": "Током бахнет!",
+                "parentId": 0
+            }
+            
         )
         )
-  .then(function (response) {
-    // handle success
-    console.log(response);
-  }).catch((err)=>
-    console.log(err))
-}
-    onChange1 = ()=>{
-        axios.get('http://127.0.0.1:2000/api/staffs')
-  .then(function (response) {
-    // handle success
-    console.log(response.data);
-  })
+        
+        .then(function (response) { console.log(response) })
+        .catch((err)=>console.log(err))
     }
     }
+    
+    // onChange1 = ()=>{
+    //     axios.get('http://127.0.0.1:2000/api/staffs')
+    //     .then(function (response) { console.log(response.data) })
+    // }
+    
     render() {
     render() {
-        
         return (
         return (
-        <div >
-            <Layout style={{ minHeight: '100vh' }}>
-                <Sider
-                collapsible
-                collapsed={this.state.collapsed}
-                onCollapse={this.onCollapse}
-                >
-                <div className="logo" />
-                <Menu theme="dark" defaultSelectedKeys={['1']} mode="inline">
-                    <Menu.Item key="1">
-                    <Icon type="pie-chart" />
-                    <span>Option 1</span>
-                    </Menu.Item>
-                    <Menu.Item key="2">
-                    <Icon type="desktop" />
-                    <span>Option 2</span>
-                    </Menu.Item>
-                    <SubMenu
-                    key="sub1"
-                    title={<span><Icon type="user" /><span>Одежда</span></span>}
-                    >
-                    <SubMenu
-                    key="sub6"
-                    title={<span><Icon type="shopping" /><span>Женское белье</span></span>}
-                    >
-                    <Menu.Item key="3"><button onClick={this.onChange}>Post
-        </button></Menu.Item>
-                    <Menu.Item key="4"><button onClick={this.onChange1}>Get
-        </button></Menu.Item>
-                    </SubMenu>
-                    <Menu.Item key="5">Bill</Menu.Item>
-                    <Menu.Item key="6">Alex</Menu.Item>
-                    </SubMenu>
-                    <SubMenu
-                    key="sub2"
-                    title={<span><Icon type="team" /><span>Team</span></span>}
-                    >
-                    <Menu.Item key="7">Team 1</Menu.Item>
-                    <Menu.Item key="8">Team 2</Menu.Item>
-                    </SubMenu>
-                    <Menu.Item key="9">
-                    <Icon type="file" />
-                    <span>File</span>
-                    </Menu.Item>
-                </Menu>
-                </Sider>
-                
-            </Layout>
-      </div>
+            <div>
+                <Layout style={{ minHeight: '100vh' }}>
+                    <Sider collapsible
+                        collapsed={this.state.collapsed}
+                        onCollapse={this.onCollapse}
+                    >  
+                        <Category />   
+                    </Sider>
+                </Layout>
+            </div>
         );
         );
     }
     }
 }
 }

+ 1 - 1
src/container/App.js

@@ -1,7 +1,7 @@
 import React, { Component } from 'react';
 import React, { Component } from 'react';
 
 
 
 
-import LeftMenu from '../components/LeftMenu'
+import LeftMenu from '../components/LeftMenu/DrawCategory'
 
 
 class App extends Component {
 class App extends Component {
   render() {
   render() {

BIN
src/img/logoBazar.jpg


BIN
src/img/logoBazar.png


BIN
src/img/myFoto.jpg


+ 9 - 6
src/index.js

@@ -1,20 +1,23 @@
 import React from 'react';
 import React from 'react';
+import { Provider } from "react-redux";
+import { BrowserRouter } from "react-router-dom";
 import ReactDOM from 'react-dom';
 import ReactDOM from 'react-dom';
-import './index.css';
 import * as serviceWorker from './serviceWorker';
 import * as serviceWorker from './serviceWorker';
-import { BrowserRouter } from "react-router-dom";
+
 import Router from "./router";
 import Router from "./router";
-import { Provider } from "react-redux";
+
 import store from "./state/state";
 import store from "./state/state";
 
 
+import "./style/index.scss";
+// import "./index.css";
+
 ReactDOM.render(
 ReactDOM.render(
     <BrowserRouter>
     <BrowserRouter>
         <Provider store={store}>
         <Provider store={store}>
             <Router/>
             <Router/>
         </Provider>
         </Provider>
-    </BrowserRouter>
-,
-document.getElementById("root")
+    </BrowserRouter>,
+    document.getElementById("root")
 );
 );
 
 
 
 

+ 5 - 6
src/router.js

@@ -7,13 +7,12 @@ import Form from './components/Auth/index'
 import RegistrForm from './components/Auth/registration'
 import RegistrForm from './components/Auth/registration'
 
 
 export default () => (
 export default () => (
-    <div>
+    <Fragment>
         <Header/>
         <Header/>
 	        <Switch>
 	        <Switch>
-                <Route path="/" exact component={App} />
-                <Route path="/auth" exact component={Form} />
-                <Route path="/registration" exact component={RegistrForm} />
-
+                    <Route path="/" exact component={App} />
+                    <Route path="/auth" exact component={Form} />
+                    <Route path="/registration" exact component={RegistrForm} />
 	        </Switch>
 	        </Switch>
-    </div>
+    </Fragment>
 );
 );

+ 26 - 0
src/style/abstracts/variables.scss

@@ -0,0 +1,26 @@
+// COLORS
+$color-black: #000;
+$color-white: #fff;
+$color-red: #f00;
+$color-red-dark: #b40000;
+$color-yellow: #f5a623;
+$color-green: #0ea500;
+$color-blue: #008ff7;
+$color-blue-light-dark: #4a90e2;
+$color-blue-dark: #29336f;
+$color-blue-light: #eaf1f9;
+$color-brown: #4c4c4c;
+$color-grey: #51606a;
+$color-grey-light: #999999;
+$color-grey-lighter: #d8d8d8;
+$color-grey-the-lightest: #f9fbfd;
+$color-grey-transparent: rgba(247, 249, 251, 0.7);
+
+//BASE COLORS
+$color-shadow: #d4d4d4;
+
+// BASE
+$color-backgtound: #f5f8fb;
+$box-shadow: 0 0 16px 0 $color-shadow;
+$input-box-shadow: 0 8px 16px rgba($color-black, 0.1);
+$layout-border-radius: 2px;

+ 14 - 0
src/style/base/_typography.scss

@@ -0,0 +1,14 @@
+.h1-tag {
+	font-size: 3rem;
+	margin-bottom: 4rem;
+
+	&--add {
+		color: $color-blue-light-dark;
+		cursor: pointer;
+		margin-left: 2rem;
+
+		&:hover {
+			color: $color-blue-dark;
+		}
+	}
+}

+ 97 - 0
src/style/base/base.scss

@@ -0,0 +1,97 @@
+*,
+*:after,
+*:before {
+	margin: 0;
+	padding: 0;
+	-webkit-box-sizing: inherit;
+	box-sizing: inherit;
+}
+
+html {
+	font-size: 62.5%;
+}
+
+body,
+div,
+dl,
+dt,
+dd,
+ul,
+ol,
+li,
+h1,
+h2,
+h3,
+h4,
+h5,
+h6,
+pre,
+form,
+fieldset,
+input,
+textarea,
+p,
+blockquote,
+th,
+td {
+	padding: 0;
+	margin: 0;
+}
+table {
+	border-collapse: collapse;
+	border-spacing: 0;
+}
+fieldset,
+img {
+	border: 0;
+}
+address,
+caption,
+cite,
+code,
+dfn,
+em,
+strong,
+th,
+var {
+	font-weight: normal;
+	font-style: normal;
+}
+ol,
+ul {
+	list-style: none;
+}
+caption,
+th {
+	text-align: left;
+}
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+	font-weight: normal;
+	font-size: 100%;
+}
+
+abbr,
+acronym {
+	border: 0;
+}
+
+body {
+	font-family: "roboto", sans-serif;
+	line-height: 1.7;
+	box-sizing: border-box;
+	background: $color-backgtound;
+	min-width: 320px;
+}
+
+a:hover {
+	text-decoration: none;
+}
+
+button {
+	cursor: pointer;
+}

+ 60 - 0
src/style/components/_header.scss

@@ -0,0 +1,60 @@
+body {
+	
+	margin: 0;
+	padding: 0;
+	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen",
+	  "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue",
+	  sans-serif;
+	-webkit-font-smoothing: antialiased;
+	-moz-osx-font-smoothing: grayscale;
+  }
+
+.header {
+	display:flex;
+
+	&__logo {
+		width: 20%;
+	}
+
+	&__searchLine{
+		width: 60%;
+		display: flex;
+		justify-content: center;
+		align-items: center;	
+	}
+
+	&__auth {
+		width: 20%;
+		display: flex;
+		justify-content: center;
+		align-items: center;
+		
+		&__container{
+			
+			display: flex;
+			justify-content: center;
+			align-items: center;
+
+			.avatar{
+				padding: 5px;
+			}
+		}
+	}
+}
+
+
+// import React from "react";
+// import { Link } from "react-router-dom";
+
+// export default () => (
+// 	<header className="header">
+// 		<nav className="header__nav">
+// 			<Link className="header__nav-item" to="/">
+// 				Home
+// 			</Link>
+// 			<Link className="header__nav-item" to="/fetch">
+// 				Weather
+// 			</Link>
+// 		</nav>
+// 	</header>
+// );

+ 3 - 0
src/style/header/logo.scss

@@ -0,0 +1,3 @@
+.logo{
+    width: 20%;
+}

+ 15 - 0
src/style/index.scss

@@ -0,0 +1,15 @@
+@import "~antd/dist/antd.css";
+
+@import "abstracts/variables.scss";
+
+@import "base/base";
+@import "base/typography";
+
+// @import "layout/container";
+
+// @import "components/list";
+@import "components/header";
+// @import "components/form";
+
+
+@import "header/logo.scss"