about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/web-apps
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/web-apps')
-rw-r--r--nixpkgs/pkgs/servers/web-apps/codimd/CodeMirror/node-packages.nix52
-rw-r--r--nixpkgs/pkgs/servers/web-apps/codimd/CodeMirror/node.nix4
-rw-r--r--nixpkgs/pkgs/servers/web-apps/codimd/node-packages.nix1656
-rw-r--r--nixpkgs/pkgs/servers/web-apps/codimd/node.nix4
-rw-r--r--nixpkgs/pkgs/servers/web-apps/cryptpad/bower-packages.nix39
-rw-r--r--nixpkgs/pkgs/servers/web-apps/cryptpad/default.nix76
-rwxr-xr-xnixpkgs/pkgs/servers/web-apps/cryptpad/generate.sh11
-rw-r--r--nixpkgs/pkgs/servers/web-apps/cryptpad/node-packages-generated.nix746
-rw-r--r--nixpkgs/pkgs/servers/web-apps/cryptpad/node-packages.json3
-rw-r--r--nixpkgs/pkgs/servers/web-apps/cryptpad/node-packages.nix17
10 files changed, 1846 insertions, 762 deletions
diff --git a/nixpkgs/pkgs/servers/web-apps/codimd/CodeMirror/node-packages.nix b/nixpkgs/pkgs/servers/web-apps/codimd/CodeMirror/node-packages.nix
index 2aab16d1ec20..ad868f9955d1 100644
--- a/nixpkgs/pkgs/servers/web-apps/codimd/CodeMirror/node-packages.nix
+++ b/nixpkgs/pkgs/servers/web-apps/codimd/CodeMirror/node-packages.nix
@@ -1,4 +1,4 @@
-# This file has been generated by node2nix 1.6.0. Do not edit!
+# This file has been generated by node2nix 1.7.0. Do not edit!
 
 {nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}:
 
@@ -238,13 +238,13 @@ let
         sha1 = "4b475760ff80264c762c3a1719032e91c7fea0d1";
       };
     };
-    "combined-stream-1.0.7" = {
+    "combined-stream-1.0.8" = {
       name = "combined-stream";
       packageName = "combined-stream";
-      version = "1.0.7";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz";
-        sha512 = "brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==";
+        url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz";
+        sha512 = "FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==";
       };
     };
     "concat-map-0.0.1" = {
@@ -706,22 +706,22 @@ let
         sha1 = "591d84d3653a6b0b4a3b9df8de5aa8108e72e5e0";
       };
     };
-    "mime-db-1.38.0" = {
+    "mime-db-1.40.0" = {
       name = "mime-db";
       packageName = "mime-db";
-      version = "1.38.0";
+      version = "1.40.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz";
-        sha512 = "bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==";
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz";
+        sha512 = "jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==";
       };
     };
-    "mime-types-2.1.22" = {
+    "mime-types-2.1.24" = {
       name = "mime-types";
       packageName = "mime-types";
-      version = "2.1.22";
+      version = "2.1.24";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz";
-        sha512 = "aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==";
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz";
+        sha512 = "WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==";
       };
     };
     "minimatch-3.0.4" = {
@@ -850,13 +850,13 @@ let
         sha1 = "e260c78f6161cdd9b0e56cc3e0a85de17c7a57be";
       };
     };
-    "psl-1.1.31" = {
+    "psl-1.1.32" = {
       name = "psl";
       packageName = "psl";
-      version = "1.1.31";
+      version = "1.1.32";
       src = fetchurl {
-        url = "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz";
-        sha512 = "/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==";
+        url = "https://registry.npmjs.org/psl/-/psl-1.1.32.tgz";
+        sha512 = "MHACAkHpihU/REGGPLj4sEfc/XKW2bheigvHO1dUqjaKigMp1C8+WLQYRGgeKFMsw5PMfegZcaN8IDXK/cD0+g==";
       };
     };
     "punycode-1.4.1" = {
@@ -1206,10 +1206,11 @@ in
     buildInputs = globalBuildInputs;
     meta = {
       description = "No-ceremony linter";
-      homepage = https://github.com/marijnh/blint;
+      homepage = http://github.com/marijnh/blint;
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "node-static-0.6.0" = nodeEnv.buildNodePackage {
     name = "node-static";
@@ -1226,6 +1227,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "phantomjs-prebuilt-^2.1.12" = nodeEnv.buildNodePackage {
     name = "phantomjs-prebuilt";
@@ -1245,7 +1247,7 @@ in
       sources."bcrypt-pbkdf-1.0.2"
       sources."buffer-from-1.1.1"
       sources."caseless-0.12.0"
-      sources."combined-stream-1.0.7"
+      sources."combined-stream-1.0.8"
       sources."concat-stream-1.6.2"
       sources."core-util-is-1.0.2"
       sources."dashdash-1.14.1"
@@ -1282,8 +1284,8 @@ in
       sources."jsprim-1.4.1"
       sources."kew-0.7.0"
       sources."klaw-1.3.1"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
       sources."ms-2.0.0"
@@ -1294,7 +1296,7 @@ in
       sources."pinkie-promise-2.0.1"
       sources."process-nextick-args-2.0.0"
       sources."progress-1.1.8"
-      sources."psl-1.1.31"
+      sources."psl-1.1.32"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
       sources."readable-stream-2.3.6"
@@ -1328,6 +1330,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "rollup-^0.41.0" = nodeEnv.buildNodePackage {
     name = "rollup";
@@ -1349,6 +1352,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "rollup-plugin-buble-^0.15.0" = nodeEnv.buildNodePackage {
     name = "rollup-plugin-buble";
@@ -1389,6 +1393,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "rollup-watch-^3.2.0" = nodeEnv.buildNodePackage {
     name = "rollup-watch";
@@ -1409,6 +1414,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "uglify-js-^2.8.15" = nodeEnv.buildNodePackage {
     name = "uglify-js";
@@ -1444,6 +1450,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "url-loader-^0.5.7" = nodeEnv.buildNodePackage {
     name = "url-loader";
@@ -1469,5 +1476,6 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
 }
\ No newline at end of file
diff --git a/nixpkgs/pkgs/servers/web-apps/codimd/CodeMirror/node.nix b/nixpkgs/pkgs/servers/web-apps/codimd/CodeMirror/node.nix
index 7f95c2b88019..fd7fc4dfe0ce 100644
--- a/nixpkgs/pkgs/servers/web-apps/codimd/CodeMirror/node.nix
+++ b/nixpkgs/pkgs/servers/web-apps/codimd/CodeMirror/node.nix
@@ -1,4 +1,4 @@
-# This file has been generated by node2nix 1.6.0. Do not edit!
+# This file has been generated by node2nix 1.7.0. Do not edit!
 
 {pkgs ? import <nixpkgs> {
     inherit system;
@@ -14,4 +14,4 @@ in
 import ./node-packages.nix {
   inherit (pkgs) fetchurl fetchgit;
   inherit nodeEnv;
-}
+}
\ No newline at end of file
diff --git a/nixpkgs/pkgs/servers/web-apps/codimd/node-packages.nix b/nixpkgs/pkgs/servers/web-apps/codimd/node-packages.nix
index bec83653aefd..43a2eb351a6d 100644
--- a/nixpkgs/pkgs/servers/web-apps/codimd/node-packages.nix
+++ b/nixpkgs/pkgs/servers/web-apps/codimd/node-packages.nix
@@ -1,16 +1,16 @@
-# This file has been generated by node2nix 1.6.0. Do not edit!
+# This file has been generated by node2nix 1.7.0. Do not edit!
 
 {nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}:
 
 let
   sources = {
-    "@textlint/ast-node-types-4.2.1" = {
+    "@textlint/ast-node-types-4.2.2" = {
       name = "_at_textlint_slash_ast-node-types";
       packageName = "@textlint/ast-node-types";
-      version = "4.2.1";
+      version = "4.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-4.2.1.tgz";
-        sha512 = "Pqg1LTJpF929Ovi/lCaPqlyz8yDwBFbQulC0jyQcbRAoTxYS4AZMc48Ug2yk0so5hISQXKrlAxyVBmBVl9EKGA==";
+        url = "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-4.2.2.tgz";
+        sha512 = "5VHykhxgUat7dvRWGw52Tk55SWjuZDpDO7PKDhfcLTFrD1cjbTtFFnWeJc0BfoqB2AUjfHXRoMdnqbFRGmnPVQ==";
       };
     };
     "@textlint/markdown-to-ast-6.0.9" = {
@@ -49,31 +49,22 @@ let
         sha512 = "EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==";
       };
     };
-    "@types/events-3.0.0" = {
-      name = "_at_types_slash_events";
-      packageName = "@types/events";
-      version = "3.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz";
-        sha512 = "EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==";
-      };
-    };
-    "@types/express-4.16.1" = {
+    "@types/express-4.17.0" = {
       name = "_at_types_slash_express";
       packageName = "@types/express";
-      version = "4.16.1";
+      version = "4.17.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/express/-/express-4.16.1.tgz";
-        sha512 = "V0clmJow23WeyblmACoxbHBu2JKlE5TiIme6Lem14FnPW9gsttyHtk6wq7njcdIWH1njAaFgR8gW09lgY98gQg==";
+        url = "https://registry.npmjs.org/@types/express/-/express-4.17.0.tgz";
+        sha512 = "CjaMu57cjgjuZbh9DpkloeGxV45CnMGlVd+XpG7Gm9QgVrd7KFq+X4HY0vM+2v0bczS48Wg7bvnMY5TN+Xmcfw==";
       };
     };
-    "@types/express-serve-static-core-4.16.2" = {
+    "@types/express-serve-static-core-4.16.6" = {
       name = "_at_types_slash_express-serve-static-core";
       packageName = "@types/express-serve-static-core";
-      version = "4.16.2";
+      version = "4.16.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.16.2.tgz";
-        sha512 = "qgc8tjnDrc789rAQed8NoiFLV5VGcItA4yWNFphqGU0RcuuQngD00g3LHhWIK3HQ2XeDgVCmlNPDlqi3fWBHnQ==";
+        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.16.6.tgz";
+        sha512 = "8wr3CA/EMybyb6/V8qvTRKiNkPmgUA26uA9XWD6hlA0yFDuqi4r2L0C2B0U2HAYltJamoYJszlkaWM31vrKsHg==";
       };
     };
     "@types/geojson-1.0.6" = {
@@ -85,13 +76,13 @@ let
         sha512 = "Xqg/lIZMrUd0VRmSRbCAewtwGZiAk3mEUDvV4op1tGl+LvyPcb/MIOSxTl9z+9+J+R4/vpjiCAT4xeKzH9ji1w==";
       };
     };
-    "@types/ldapjs-1.0.3" = {
+    "@types/ldapjs-1.0.4" = {
       name = "_at_types_slash_ldapjs";
       packageName = "@types/ldapjs";
-      version = "1.0.3";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-1.0.3.tgz";
-        sha512 = "FSj24s1WsFEfOy8taIKp2DokSZfFkjWYZb88AS5eDj3WTocZ+4DnHjhzrXEs048WQ5mfOLJXMOAnc0kSnHh5Lw==";
+        url = "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-1.0.4.tgz";
+        sha512 = "TXOYipuauiZV+nRslqgm02+wP007GNN7ZFHZtXe8GhnRJw2zxCOtVDi3ZnKTBxbZhFz3xPFSwJ5bCIRmXDMqTg==";
       };
     };
     "@types/mime-2.0.1" = {
@@ -103,22 +94,22 @@ let
         sha512 = "FwI9gX75FgVBJ7ywgnq/P7tw+/o1GUbtP0KzbtusLigAOgIgNISRK0ZPl4qertvXSIE8YbsVJueQ90cDt9YYyw==";
       };
     };
-    "@types/node-10.14.4" = {
+    "@types/node-10.14.8" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "10.14.4";
+      version = "10.14.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-10.14.4.tgz";
-        sha512 = "DT25xX/YgyPKiHFOpNuANIQIVvYEwCWXgK2jYYwqgaMrYE6+tq+DtmMwlD3drl6DJbUwtlIDnn0d7tIn/EbXBg==";
+        url = "https://registry.npmjs.org/@types/node/-/node-10.14.8.tgz";
+        sha512 = "I4+DbJEhLEg4/vIy/2gkWDvXBOOtPKV9EnLhYjMoqxcRW+TTZtUftkHktz/a8suoD5mUL7m6ReLrkPvSsCQQmw==";
       };
     };
-    "@types/node-11.13.0" = {
+    "@types/node-12.0.4" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "11.13.0";
+      version = "12.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-11.13.0.tgz";
-        sha512 = "rx29MMkRdVmzunmiA4lzBYJNnXsW/PhG4kMBy2ATsYaDjGGR75dCFEVVROKpNwlVdcUX3xxlghKQOeDPBJobng==";
+        url = "https://registry.npmjs.org/@types/node/-/node-12.0.4.tgz";
+        sha512 = "j8YL2C0fXq7IONwl/Ud5Kt0PeXw22zGERt+HSSnwbKOJVsAGkEz3sFCYwaF9IOuoG1HOtE0vKCj6sXF7Q0+Vaw==";
       };
     };
     "@types/passport-1.0.0" = {
@@ -175,13 +166,13 @@ let
         sha512 = "nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==";
       };
     };
-    "accepts-1.3.5" = {
+    "accepts-1.3.7" = {
       name = "accepts";
       packageName = "accepts";
-      version = "1.3.5";
+      version = "1.3.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz";
-        sha1 = "eb777df6011723a3b14e8a72c0805c8e86746bd2";
+        url = "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz";
+        sha512 = "Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==";
       };
     };
     "acorn-3.3.0" = {
@@ -265,13 +256,13 @@ let
         sha1 = "fedb394f9f0e02aa9768e702bda23b505fae7e1f";
       };
     };
-    "agent-base-4.2.1" = {
+    "agent-base-4.3.0" = {
       name = "agent-base";
       packageName = "agent-base";
-      version = "4.2.1";
+      version = "4.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz";
-        sha512 = "JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==";
+        url = "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz";
+        sha512 = "salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==";
       };
     };
     "ajv-4.11.8" = {
@@ -598,13 +589,13 @@ let
         sha1 = "a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428";
       };
     };
-    "array.prototype.find-2.0.4" = {
+    "array.prototype.find-2.1.0" = {
       name = "array.prototype.find";
       packageName = "array.prototype.find";
-      version = "2.0.4";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/array.prototype.find/-/array.prototype.find-2.0.4.tgz";
-        sha1 = "556a5c5362c08648323ddaeb9de9d14bc1864c90";
+        url = "https://registry.npmjs.org/array.prototype.find/-/array.prototype.find-2.1.0.tgz";
+        sha512 = "Wn41+K1yuO5p7wRZDl7890c3xvv5UBrfVXTVIe28rSQb6LS0fZMDrQB6PAcxQFRFy6vJTLDc3A2+3CjQdzVKRg==";
       };
     };
     "arraybuffer.slice-0.0.7" = {
@@ -643,13 +634,13 @@ let
         sha512 = "jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==";
       };
     };
-    "assert-1.4.1" = {
+    "assert-1.5.0" = {
       name = "assert";
       packageName = "assert";
-      version = "1.4.1";
+      version = "1.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz";
-        sha1 = "99912d591836b5a6f5b345c0f07eefc08fc65d91";
+        url = "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz";
+        sha512 = "EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==";
       };
     };
     "assert-plus-0.1.5" = {
@@ -733,13 +724,13 @@ let
         sha512 = "H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==";
       };
     };
-    "async-each-1.0.2" = {
+    "async-each-1.0.3" = {
       name = "async-each";
       packageName = "async-each";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/async-each/-/async-each-1.0.2.tgz";
-        sha512 = "6xrbvN0MOBKSJDdonmSSz2OwFSgxRaVtBDes26mj9KIGtDo+g9xosFRSC+i1gQh2oAN/tQ62AI/pGZGQjVOiRg==";
+        url = "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz";
+        sha512 = "z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==";
       };
     };
     "async-limiter-1.0.0" = {
@@ -1237,13 +1228,13 @@ let
         sha1 = "f616eda9d3e4b66b8ca7fca79f695722c5f8e26f";
       };
     };
-    "bail-1.0.3" = {
+    "bail-1.0.4" = {
       name = "bail";
       packageName = "bail";
-      version = "1.0.3";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bail/-/bail-1.0.3.tgz";
-        sha512 = "1X8CnjFVQ+a+KW36uBNMTU5s8+v5FzeqrP7hTG5aTb4aPreSbZJlhwPon9VKMuEVgV++JM+SQrALY3kr7eswdg==";
+        url = "https://registry.npmjs.org/bail/-/bail-1.0.4.tgz";
+        sha512 = "S8vuDB4w6YpRhICUDET3guPlQpaJl7od94tpZ0Fvnyp+MKW/HyDTcRDck+29C9g+d/qQHnddRH3+94kZdrW0Ww==";
       };
     };
     "balanced-match-0.4.2" = {
@@ -1381,13 +1372,13 @@ let
         sha512 = "vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==";
       };
     };
-    "bignumber.js-4.1.0" = {
+    "bignumber.js-7.2.1" = {
       name = "bignumber.js";
       packageName = "bignumber.js";
-      version = "4.1.0";
+      version = "7.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bignumber.js/-/bignumber.js-4.1.0.tgz";
-        sha512 = "eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA==";
+        url = "https://registry.npmjs.org/bignumber.js/-/bignumber.js-7.2.1.tgz";
+        sha512 = "S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ==";
       };
     };
     "binary-extensions-1.13.1" = {
@@ -1444,22 +1435,22 @@ let
         sha1 = "c738e3a91ba977ebb5e1fef431e13ca11d8639e2";
       };
     };
-    "bluebird-3.5.4" = {
+    "bluebird-3.5.5" = {
       name = "bluebird";
       packageName = "bluebird";
-      version = "3.5.4";
+      version = "3.5.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bluebird/-/bluebird-3.5.4.tgz";
-        sha512 = "FG+nFEZChJrbQ9tIccIfZJBz3J7mLrAhxakAbnrJWn8d7aKOC+LWifa0G+p4ZqKp4y13T7juYvdhq9NzKdsrjw==";
+        url = "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz";
+        sha512 = "5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==";
       };
     };
-    "body-parser-1.18.3" = {
+    "body-parser-1.19.0" = {
       name = "body-parser";
       packageName = "body-parser";
-      version = "1.18.3";
+      version = "1.19.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz";
-        sha1 = "5b292198ffdd553b3a0f20ded0592b956955c8b4";
+        url = "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz";
+        sha512 = "dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==";
       };
     };
     "boolbase-1.0.0" = {
@@ -1660,6 +1651,15 @@ let
         sha1 = "d32815404d689699f85a4ea4fa8755dd13a96048";
       };
     };
+    "bytes-3.1.0" = {
+      name = "bytes";
+      packageName = "bytes";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz";
+        sha512 = "zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==";
+      };
+    };
     "cacache-10.0.4" = {
       name = "cacache";
       packageName = "cacache";
@@ -1750,13 +1750,13 @@ let
         sha1 = "b534e7c734c4f81ec5fbe8aca2ad24354b962c6c";
       };
     };
-    "caniuse-db-1.0.30000957" = {
+    "caniuse-db-1.0.30000973" = {
       name = "caniuse-db";
       packageName = "caniuse-db";
-      version = "1.0.30000957";
+      version = "1.0.30000973";
       src = fetchurl {
-        url = "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000957.tgz";
-        sha512 = "13rVZZO/75kPKJhJsi86lPUme7zlvfGDnnvSYx3TA+kYQxLtGywth5+81pyVZDjUfYyzatwA/yjv6DNsh66gmQ==";
+        url = "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000973.tgz";
+        sha512 = "leylQOpbgiYSm4G3NT8kq/KkKhKHlOLIBugpr6QsmjrYWgIR+S/iTDjM/5uM6FVqJg4YiD0en3P1udVvnRmrWA==";
       };
     };
     "caseless-0.12.0" = {
@@ -1804,31 +1804,31 @@ let
         sha512 = "Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==";
       };
     };
-    "character-entities-1.2.2" = {
+    "character-entities-1.2.3" = {
       name = "character-entities";
       packageName = "character-entities";
-      version = "1.2.2";
+      version = "1.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/character-entities/-/character-entities-1.2.2.tgz";
-        sha512 = "sMoHX6/nBiy3KKfC78dnEalnpn0Az0oSNvqUWYTtYrhRI5iUIYsROU48G+E+kMFQzqXaJ8kHJZ85n7y6/PHgwQ==";
+        url = "https://registry.npmjs.org/character-entities/-/character-entities-1.2.3.tgz";
+        sha512 = "yB4oYSAa9yLcGyTbB4ItFwHw43QHdH129IJ5R+WvxOkWlyFnR5FAaBNnUq4mcxsTVZGh28bHoeTHMKXH1wZf3w==";
       };
     };
-    "character-entities-legacy-1.1.2" = {
+    "character-entities-legacy-1.1.3" = {
       name = "character-entities-legacy";
       packageName = "character-entities-legacy";
-      version = "1.1.2";
+      version = "1.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.2.tgz";
-        sha512 = "9NB2VbXtXYWdXzqrvAHykE/f0QJxzaKIpZ5QzNZrrgQ7Iyxr2vnfS8fCBNVW9nUEZE0lo57nxKRqnzY/dKrwlA==";
+        url = "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.3.tgz";
+        sha512 = "YAxUpPoPwxYFsslbdKkhrGnXAtXoHNgYjlBM3WMXkWGTl5RsY3QmOyhwAgL8Nxm9l5LBThXGawxKPn68y6/fww==";
       };
     };
-    "character-reference-invalid-1.1.2" = {
+    "character-reference-invalid-1.1.3" = {
       name = "character-reference-invalid";
       packageName = "character-reference-invalid";
-      version = "1.1.2";
+      version = "1.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.2.tgz";
-        sha512 = "7I/xceXfKyUJmSAn/jw8ve/9DyOP7XxufNYLI9Px7CmsKgEUaZLUTax6nZxGQtaoiZCjpu6cHPj20xC/vqRReQ==";
+        url = "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.3.tgz";
+        sha512 = "VOq6PRzQBam/8Jm6XBGk2fNEnHXAdGd6go0rtd4weAGECBamHDwwCQSOT12TACIYUZegUXnV6xBXqUssijtxIg==";
       };
     };
     "chokidar-1.7.0" = {
@@ -2002,13 +2002,13 @@ let
         sha1 = "0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77";
       };
     };
-    "collapse-white-space-1.0.4" = {
+    "collapse-white-space-1.0.5" = {
       name = "collapse-white-space";
       packageName = "collapse-white-space";
-      version = "1.0.4";
+      version = "1.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.4.tgz";
-        sha512 = "YfQ1tAUZm561vpYD+5eyWN8+UsceQbSrqqlc/6zDY2gtAE+uZLSdkkovhnGpmCThsvKBFakq4EdY/FF93E8XIw==";
+        url = "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.5.tgz";
+        sha512 = "703bOOmytCYAX9cXYqoikYIx6twmFCXsnzRQheBcTG3nzKYBR4P/+wkYeH+Mvj7qUz8zZDtdyzbxfnEi/kYzRQ==";
       };
     };
     "collapse-whitespace-1.1.2" = {
@@ -2110,13 +2110,13 @@ let
         sha512 = "mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg==";
       };
     };
-    "combined-stream-1.0.7" = {
+    "combined-stream-1.0.8" = {
       name = "combined-stream";
       packageName = "combined-stream";
-      version = "1.0.7";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz";
-        sha512 = "brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==";
+        url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz";
+        sha512 = "FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==";
       };
     };
     "commander-2.17.1" = {
@@ -2173,6 +2173,15 @@ let
         sha1 = "137918d6d78283f7df7a6b7c5a63e140e69425e6";
       };
     };
+    "component-emitter-1.3.0" = {
+      name = "component-emitter";
+      packageName = "component-emitter";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz";
+        sha512 = "Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==";
+      };
+    };
     "component-inherit-0.0.3" = {
       name = "component-inherit";
       packageName = "component-inherit";
@@ -2191,13 +2200,13 @@ let
         sha1 = "524a9f10903f3a813389b0225d27c48bb751890f";
       };
     };
-    "compressible-2.0.16" = {
+    "compressible-2.0.17" = {
       name = "compressible";
       packageName = "compressible";
-      version = "2.0.16";
+      version = "2.0.17";
       src = fetchurl {
-        url = "https://registry.npmjs.org/compressible/-/compressible-2.0.16.tgz";
-        sha512 = "JQfEOdnI7dASwCuSPWIeVYwc/zMsu/+tRhoUvEfXz2gxOA2DNjmG5vhtFdBlhWPPGo+RdT9S3tgc/uH5qgDiiA==";
+        url = "https://registry.npmjs.org/compressible/-/compressible-2.0.17.tgz";
+        sha512 = "BGHeLCK1GV7j1bSmQQAi26X+GgWcTjLr/0tzSvMCl3LH1w1IJ4PFSPoV5316b30cneTziC+B1a+3OjoSUcQYmw==";
       };
     };
     "concat-map-0.0.1" = {
@@ -2254,13 +2263,13 @@ let
         sha1 = "c20b96d8c617748aaf1c16021760cd27fcb8cb75";
       };
     };
-    "content-disposition-0.5.2" = {
+    "content-disposition-0.5.3" = {
       name = "content-disposition";
       packageName = "content-disposition";
-      version = "0.5.2";
+      version = "0.5.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz";
-        sha1 = "0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4";
+        url = "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz";
+        sha512 = "ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==";
       };
     };
     "content-security-policy-builder-2.0.0" = {
@@ -2308,6 +2317,15 @@ let
         sha1 = "e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb";
       };
     };
+    "cookie-0.4.0" = {
+      name = "cookie";
+      packageName = "cookie";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz";
+        sha512 = "+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==";
+      };
+    };
     "cookie-signature-1.0.6" = {
       name = "cookie-signature";
       packageName = "cookie-signature";
@@ -2344,13 +2362,13 @@ let
         sha1 = "676f6eb3c39997c2ee1ac3a924fd6124748f578d";
       };
     };
-    "core-js-2.6.5" = {
+    "core-js-2.6.9" = {
       name = "core-js";
       packageName = "core-js";
-      version = "2.6.5";
+      version = "2.6.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js/-/core-js-2.6.5.tgz";
-        sha512 = "klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==";
+        url = "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz";
+        sha512 = "HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==";
       };
     };
     "core-util-is-1.0.2" = {
@@ -2362,15 +2380,6 @@ let
         sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
       };
     };
-    "crc-3.4.4" = {
-      name = "crc";
-      packageName = "crc";
-      version = "3.4.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz";
-        sha1 = "9da1e980e3bd44fc5c93bf5ab3da3378d85e466b";
-      };
-    };
     "crc-3.8.0" = {
       name = "crc";
       packageName = "crc";
@@ -3100,13 +3109,13 @@ let
         sha512 = "0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==";
       };
     };
-    "electron-to-chromium-1.3.124" = {
+    "electron-to-chromium-1.3.147" = {
       name = "electron-to-chromium";
       packageName = "electron-to-chromium";
-      version = "1.3.124";
+      version = "1.3.147";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.124.tgz";
-        sha512 = "glecGr/kFdfeXUHOHAWvGcXrxNU+1wSO/t5B23tT1dtlvYB26GY8aHzZSWD7HqhqC800Lr+w/hQul6C5AF542w==";
+        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.147.tgz";
+        sha512 = "pHE+9S2OMXOLAze6KvKMA9Te56M5e4WIdPPPeZ2JiSNvpXkDrn9FoBot1yeeXMRClWvQGI6vj06kQFqCADrspQ==";
       };
     };
     "emoji-regex-6.1.3" = {
@@ -3253,13 +3262,13 @@ let
         sha512 = "qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==";
       };
     };
-    "es5-ext-0.10.49" = {
+    "es5-ext-0.10.50" = {
       name = "es5-ext";
       packageName = "es5-ext";
-      version = "0.10.49";
+      version = "0.10.50";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.49.tgz";
-        sha512 = "3NMEhi57E31qdzmYp2jwRArIUsj1HI/RxbQ4bgnSB+AIKIxsAmTiK83bYMifIcpWvEc3P1X30DhUKOqEtF/kvg==";
+        url = "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.50.tgz";
+        sha512 = "KMzZTPBkeQV/JcSQhI5/z6d9VWJ3EnQ194USTUwIYZ2ZbpN8+SGXQKt1h68EX44+qt+Fzr8DO17vnxrw7c3agw==";
       };
     };
     "es6-error-2.1.1" = {
@@ -3487,13 +3496,13 @@ let
         sha1 = "0dee3fed31fcd469618ce7342099fc1afa0bdb13";
       };
     };
-    "estree-walker-0.6.0" = {
+    "estree-walker-0.6.1" = {
       name = "estree-walker";
       packageName = "estree-walker";
-      version = "0.6.0";
+      version = "0.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.0.tgz";
-        sha512 = "peq1RfVAVzr3PU/jL31RaOjUKLoZJpObQWJJ+LgfcxDUifyLZ1RjPQZTl0pzj2uJ45b7A7XpyppXvxdEqzo4rw==";
+        url = "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz";
+        sha512 = "SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==";
       };
     };
     "esutils-2.0.2" = {
@@ -3622,13 +3631,13 @@ let
         sha1 = "97e801aa052df02454de46b02bf621642cdc8502";
       };
     };
-    "expect-ct-0.1.1" = {
+    "expect-ct-0.2.0" = {
       name = "expect-ct";
       packageName = "expect-ct";
-      version = "0.1.1";
+      version = "0.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/expect-ct/-/expect-ct-0.1.1.tgz";
-        sha512 = "ngXzTfoRGG7fYens3/RMb6yYoVLvLMfmsSllP/mZPxNHgFq41TmPSLF/nLY7fwoclI2vElvAmILFWGUYqdjfCg==";
+        url = "https://registry.npmjs.org/expect-ct/-/expect-ct-0.2.0.tgz";
+        sha512 = "6SK3MG/Bbhm8MsgyJAylg+ucIOU71/FzyFalcfu5nY19dH8y/z0tBJU0wrNBXD4B27EoQtqPF/9wqH0iYAd04g==";
       };
     };
     "extend-3.0.0" = {
@@ -3784,13 +3793,13 @@ let
         sha512 = "483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==";
       };
     };
-    "fault-1.0.2" = {
+    "fault-1.0.3" = {
       name = "fault";
       packageName = "fault";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fault/-/fault-1.0.2.tgz";
-        sha512 = "o2eo/X2syzzERAtN5LcGbiVQ0WwZSlN3qLtadwAz3X8Bu+XWD16dja/KMsjZLiQr+BLGPDnHGkc4yUJf1Xpkpw==";
+        url = "https://registry.npmjs.org/fault/-/fault-1.0.3.tgz";
+        sha512 = "sfFuP4X0hzrbGKjAUNXYvNqsZ5F6ohx/dZ9I0KQud/aiZNwg263r5L9yGB0clvXHCkzXh5W3t7RSHchggYIFmA==";
       };
     };
     "fd-slicer-1.0.1" = {
@@ -3802,13 +3811,13 @@ let
         sha1 = "8b5bcbd9ec327c5041bf9ab023fd6750f1177e65";
       };
     };
-    "feature-policy-0.2.0" = {
+    "feature-policy-0.3.0" = {
       name = "feature-policy";
       packageName = "feature-policy";
-      version = "0.2.0";
+      version = "0.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/feature-policy/-/feature-policy-0.2.0.tgz";
-        sha512 = "2hGrlv6efG4hscYVZeaYjpzpT6I2OZgYqE2yDUzeAcKj2D1SH0AsEzqJNXzdoglEddcIXQQYop3lD97XpG75Jw==";
+        url = "https://registry.npmjs.org/feature-policy/-/feature-policy-0.3.0.tgz";
+        sha512 = "ZtijOTFN7TzCujt1fnNhfWPFPSHeZkesff9AXZj+UEjYBynWNUIYpC87Ve4wHzyexQsImicLu7WsC2LHq7/xrQ==";
       };
     };
     "figures-1.7.0" = {
@@ -3856,13 +3865,13 @@ let
         sha1 = "d544811d428f98eb06a63dc402d2403c328c38f7";
       };
     };
-    "finalhandler-1.1.1" = {
+    "finalhandler-1.1.2" = {
       name = "finalhandler";
       packageName = "finalhandler";
-      version = "1.1.1";
+      version = "1.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz";
-        sha512 = "Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==";
+        url = "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz";
+        sha512 = "aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==";
       };
     };
     "find-cache-dir-0.1.1" = {
@@ -3937,13 +3946,13 @@ let
         sha1 = "9326b1488c22d1a6088650a86901b2d9a90a2cbc";
       };
     };
-    "fined-1.1.1" = {
+    "fined-1.2.0" = {
       name = "fined";
       packageName = "fined";
-      version = "1.1.1";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fined/-/fined-1.1.1.tgz";
-        sha512 = "jQp949ZmEbiYHk3gkbdtpJ0G1+kgtLQBNdP5edFP7Fh+WAYceLQz6yO1SBj72Xkg8GVyTB3bBzAYrHJVh5Xd5g==";
+        url = "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz";
+        sha512 = "ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==";
       };
     };
     "first-chunk-stream-1.0.0" = {
@@ -4090,13 +4099,13 @@ let
         sha1 = "4290fad27f13e89be7f33799c6bc5a0abfff0d19";
       };
     };
-    "frameguard-3.0.0" = {
+    "frameguard-3.1.0" = {
       name = "frameguard";
       packageName = "frameguard";
-      version = "3.0.0";
+      version = "3.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/frameguard/-/frameguard-3.0.0.tgz";
-        sha1 = "7bcad469ee7b96e91d12ceb3959c78235a9272e9";
+        url = "https://registry.npmjs.org/frameguard/-/frameguard-3.1.0.tgz";
+        sha512 = "TxgSKM+7LTA6sidjOiSZK9wxY0ffMPY3Wta//MqwmX0nZuEHc8QrkV8Fh3ZhMJeiH+Uyh/tcaarImRy8u77O7g==";
       };
     };
     "fresh-0.5.2" = {
@@ -4153,13 +4162,13 @@ let
         sha512 = "q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==";
       };
     };
-    "fs-minipass-1.2.5" = {
+    "fs-minipass-1.2.6" = {
       name = "fs-minipass";
       packageName = "fs-minipass";
-      version = "1.2.5";
+      version = "1.2.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz";
-        sha512 = "JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==";
+        url = "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.6.tgz";
+        sha512 = "crhvyXcMejjv3Z5d2Fa9sf5xLYVCF5O1c71QxbVnbLsmYMBEvDAftewesN/HhY03YRoA7zOMxjNGrF5svGaaeQ==";
       };
     };
     "fs-readdir-recursive-1.1.0" = {
@@ -4189,13 +4198,13 @@ let
         sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f";
       };
     };
-    "fsevents-1.2.7" = {
+    "fsevents-1.2.9" = {
       name = "fsevents";
       packageName = "fsevents";
-      version = "1.2.7";
+      version = "1.2.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fsevents/-/fsevents-1.2.7.tgz";
-        sha512 = "Pxm6sI2MeBD7RdD12RYsqaP0nMiwx8eZBXCa6z2L+mRHm2DYrOYwihmhjpkdjUHwQhslWQjRpEgNq4XvBmaAuw==";
+        url = "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz";
+        sha512 = "oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==";
       };
     };
     "function-bind-1.1.1" = {
@@ -4333,13 +4342,13 @@ let
         sha1 = "0f08860f6a155127b2fadd4f9ce24b1aab6e4d22";
       };
     };
-    "glob-7.1.3" = {
+    "glob-7.1.4" = {
       name = "glob";
       packageName = "glob";
-      version = "7.1.3";
+      version = "7.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz";
-        sha512 = "vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==";
+        url = "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz";
+        sha512 = "hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==";
       };
     };
     "glob-base-0.3.0" = {
@@ -4810,13 +4819,13 @@ let
         sha1 = "4a85ad65881f62857fc70af7174a1184dccce32b";
       };
     };
-    "highlight.js-9.15.6" = {
+    "highlight.js-9.15.8" = {
       name = "highlight.js";
       packageName = "highlight.js";
-      version = "9.15.6";
+      version = "9.15.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/highlight.js/-/highlight.js-9.15.6.tgz";
-        sha512 = "zozTAWM1D6sozHo8kqhfYgsac+B+q0PmsjXeyDrYIHHcBN0zTVT66+s2GW1GZv7DbyaROdLXKdabwS/WqPyIdQ==";
+        url = "https://registry.npmjs.org/highlight.js/-/highlight.js-9.15.8.tgz";
+        sha512 = "RrapkKQWwE+wKdF73VsOa2RQdIoO3mxwJ4P8mhbI6KYJUraUHRKM5w5zQQKXNk0xNL4UVRdulV9SBJcmzJNzVA==";
       };
     };
     "hoek-2.16.3" = {
@@ -4936,13 +4945,13 @@ let
         sha1 = "1bdf87acca0f3f9e53fa4fcceb0f4b4cbb00b338";
       };
     };
-    "http-errors-1.6.3" = {
+    "http-errors-1.7.2" = {
       name = "http-errors";
       packageName = "http-errors";
-      version = "1.6.3";
+      version = "1.7.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz";
-        sha1 = "8b55680bb4be283a0b5bf4ea2e38580be1d9320d";
+        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz";
+        sha512 = "uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==";
       };
     };
     "http-signature-1.1.1" = {
@@ -4981,15 +4990,6 @@ let
         sha512 = "HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==";
       };
     };
-    "iconv-lite-0.4.23" = {
-      name = "iconv-lite";
-      packageName = "iconv-lite";
-      version = "0.4.23";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz";
-        sha512 = "neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==";
-      };
-    };
     "iconv-lite-0.4.24" = {
       name = "iconv-lite";
       packageName = "iconv-lite";
@@ -5215,13 +5215,13 @@ let
         sha1 = "104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6";
       };
     };
-    "ipaddr.js-1.8.0" = {
+    "ipaddr.js-1.9.0" = {
       name = "ipaddr.js";
       packageName = "ipaddr.js";
-      version = "1.8.0";
+      version = "1.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz";
-        sha1 = "eaa33d6ddd7ace8f7f6fe0c9ca0440e706738b1e";
+        url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz";
+        sha512 = "M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==";
       };
     };
     "is-absolute-1.0.0" = {
@@ -5260,22 +5260,22 @@ let
         sha512 = "m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==";
       };
     };
-    "is-alphabetical-1.0.2" = {
+    "is-alphabetical-1.0.3" = {
       name = "is-alphabetical";
       packageName = "is-alphabetical";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.2.tgz";
-        sha512 = "V0xN4BYezDHcBSKb1QHUFMlR4as/XEuCZBzMJUU4n7+Cbt33SmUnSol+pnXFvLxSHNq2CemUXNdaXV6Flg7+xg==";
+        url = "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.3.tgz";
+        sha512 = "eEMa6MKpHFzw38eKm56iNNi6GJ7lf6aLLio7Kr23sJPAECscgRtZvOBYybejWDQ2bM949Y++61PY+udzj5QMLA==";
       };
     };
-    "is-alphanumerical-1.0.2" = {
+    "is-alphanumerical-1.0.3" = {
       name = "is-alphanumerical";
       packageName = "is-alphanumerical";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.2.tgz";
-        sha512 = "pyfU/0kHdISIgslFfZN9nfY1Gk3MquQgUm1mJTjdkEPpkAKNWuBTSqFwewOpR7N351VkErCiyV71zX7mlQQqsg==";
+        url = "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.3.tgz";
+        sha512 = "A1IGAPO5AW9vSh7omxIlOGwIqEvpW/TA+DksVOPM5ODuxKlZS09+TEM1E3275lJqO2oJ38vDpeAL3DCIiHE6eA==";
       };
     };
     "is-arrayish-0.2.1" = {
@@ -5341,13 +5341,13 @@ let
         sha1 = "9aa20eb6aeebbff77fbd33e74ca01b33581d3a16";
       };
     };
-    "is-decimal-1.0.2" = {
+    "is-decimal-1.0.3" = {
       name = "is-decimal";
       packageName = "is-decimal";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.2.tgz";
-        sha512 = "TRzl7mOCchnhchN+f3ICUCzYvL9ul7R+TYOsZ8xia++knyZAJfv/uA1FvQXsAnYIl1T3B2X5E/J7Wb1QXiIBXg==";
+        url = "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.3.tgz";
+        sha512 = "bvLSwoDg2q6Gf+E2LEPiklHZxxiSi3XAh4Mav65mKqTfCO1HM3uBs24TjEH8iJX3bbDdLXKJXBTmGzuTUuAEjQ==";
       };
     };
     "is-descriptor-0.1.6" = {
@@ -5476,13 +5476,13 @@ let
         sha512 = "5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==";
       };
     };
-    "is-hexadecimal-1.0.2" = {
+    "is-hexadecimal-1.0.3" = {
       name = "is-hexadecimal";
       packageName = "is-hexadecimal";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.2.tgz";
-        sha512 = "but/G3sapV3MNyqiDBLrOi4x8uCIw0RY3o/Vb5GT0sMFHrVV7731wFSVy41T5FO1og7G0gXLJh0MkgPRouko/A==";
+        url = "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.3.tgz";
+        sha512 = "zxQ9//Q3D/34poZf8fiy3m3XVpbQc7ren15iKqrTtLPwkPD/t3Scy9Imp63FujULGxuK0ZlCwoo5xNpktFgbOA==";
       };
     };
     "is-my-ip-valid-1.0.0" = {
@@ -5494,13 +5494,13 @@ let
         sha512 = "gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==";
       };
     };
-    "is-my-json-valid-2.19.0" = {
+    "is-my-json-valid-2.20.0" = {
       name = "is-my-json-valid";
       packageName = "is-my-json-valid";
-      version = "2.19.0";
+      version = "2.20.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.19.0.tgz";
-        sha512 = "mG0f/unGX1HZ5ep4uhRaPOS8EkAY8/j6mDRMJrutq4CqhoJWYp7qAlonIPy3TV7p3ju4TK9fo/PbnoksWmsp5Q==";
+        url = "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.0.tgz";
+        sha512 = "XTHBZSIIxNsIsZXg7XB5l8z/OBFosl1Wao4tXLpeC7eKU4Vm/kdop2azkPqULwnfGQjmeDIyey9g7afMMtdWAA==";
       };
     };
     "is-number-2.1.0" = {
@@ -5665,13 +5665,13 @@ let
         sha1 = "4b0da1442104d1b336340e80797e865cf39f7d72";
       };
     };
-    "is-whitespace-character-1.0.2" = {
+    "is-whitespace-character-1.0.3" = {
       name = "is-whitespace-character";
       packageName = "is-whitespace-character";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.2.tgz";
-        sha512 = "SzM+T5GKUCtLhlHFKt2SDAX2RFzfS6joT91F2/WSi9LxgFdsnhfPK/UIA+JhRR2xuyLdrCys2PiFDrtn1fU5hQ==";
+        url = "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.3.tgz";
+        sha512 = "SNPgMLz9JzPccD3nPctcj8sZlX9DAMJSKH8bP7Z6bohCwuNgX8xbWr1eTAYXX9Vpi/aSn8Y1akL9WgM3t43YNQ==";
       };
     };
     "is-windows-0.2.0" = {
@@ -5692,13 +5692,13 @@ let
         sha512 = "eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==";
       };
     };
-    "is-word-character-1.0.2" = {
+    "is-word-character-1.0.3" = {
       name = "is-word-character";
       packageName = "is-word-character";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.2.tgz";
-        sha512 = "T3FlsX8rCHAH8e7RE7PfOPZVFQlcV3XRF9eOOBQ1uf70OxO7CjjSOjeImMPCADBdYWcStAbVbYvJ1m2D3tb+EA==";
+        url = "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.3.tgz";
+        sha512 = "0wfcrFgOOOBdgRNT9H33xe6Zi6yhX/uoc4U8NBZGeQQB0ctU1dnlNTyL9JM2646bHDTpsDm1Brb3VPoCIMrd/A==";
       };
     };
     "isarray-0.0.1" = {
@@ -5782,13 +5782,13 @@ let
         sha512 = "M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==";
       };
     };
-    "js-beautify-1.9.1" = {
+    "js-beautify-1.10.0" = {
       name = "js-beautify";
       packageName = "js-beautify";
-      version = "1.9.1";
+      version = "1.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/js-beautify/-/js-beautify-1.9.1.tgz";
-        sha512 = "oxxvVZdOdUfzk8IOLBF2XUZvl2GoBEfA+b0of4u2EBY/46NlXasi8JdFvazA5lCrf9/lQhTjyVy2QCUW7iq0MQ==";
+        url = "https://registry.npmjs.org/js-beautify/-/js-beautify-1.10.0.tgz";
+        sha512 = "OMwf/tPDpE/BLlYKqZOhqWsd3/z2N3KOlyn1wsCRGFwViE8LOQTcDtathQvHvZc+q+zWmcNAbwKSC+iJoMaH2Q==";
       };
     };
     "js-string-escape-1.0.1" = {
@@ -6619,13 +6619,13 @@ let
         sha1 = "ecdca8f13144e660f1b5bd41f12f3479d98dfb8f";
       };
     };
-    "markdown-escapes-1.0.2" = {
+    "markdown-escapes-1.0.3" = {
       name = "markdown-escapes";
       packageName = "markdown-escapes";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.2.tgz";
-        sha512 = "lbRZ2mE3Q9RtLjxZBZ9+IMl68DKIXaVAhwvwn9pmjnPLS0h/6kyBMgNhqi1xFJ/2yv6cSyv0jbiZavZv93JkkA==";
+        url = "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.3.tgz";
+        sha512 = "XUi5HJhhV5R74k8/0H2oCbCiYf/u4cO/rX8tnGkRvrqhsr5BRNU6Mg0yt/8UIx1iIS8220BNJsDb7XnILhLepw==";
       };
     };
     "marked-0.3.19" = {
@@ -6799,15 +6799,6 @@ let
         sha1 = "591d84d3653a6b0b4a3b9df8de5aa8108e72e5e0";
       };
     };
-    "mime-1.4.1" = {
-      name = "mime";
-      packageName = "mime";
-      version = "1.4.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz";
-        sha512 = "KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==";
-      };
-    };
     "mime-1.6.0" = {
       name = "mime";
       packageName = "mime";
@@ -6817,31 +6808,31 @@ let
         sha512 = "x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==";
       };
     };
-    "mime-2.4.1" = {
+    "mime-2.4.3" = {
       name = "mime";
       packageName = "mime";
-      version = "2.4.1";
+      version = "2.4.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime/-/mime-2.4.1.tgz";
-        sha512 = "VRUfmQO0rCd3hKwBymAn3kxYzBHr3I/wdVMywgG3HhXOwrCQgN84ZagpdTm2tZ4TNtwsSmyJWYO88mb5XvzGqQ==";
+        url = "https://registry.npmjs.org/mime/-/mime-2.4.3.tgz";
+        sha512 = "QgrPRJfE+riq5TPZMcHZOtm8c6K/yYrMbKIoRfapfiGLxS8OTeIfRhUGW5LU7MlRa52KOAGCfUNruqLrIBvWZw==";
       };
     };
-    "mime-db-1.38.0" = {
+    "mime-db-1.40.0" = {
       name = "mime-db";
       packageName = "mime-db";
-      version = "1.38.0";
+      version = "1.40.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz";
-        sha512 = "bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==";
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz";
+        sha512 = "jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==";
       };
     };
-    "mime-types-2.1.22" = {
+    "mime-types-2.1.24" = {
       name = "mime-types";
       packageName = "mime-types";
-      version = "2.1.22";
+      version = "2.1.24";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz";
-        sha512 = "aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==";
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz";
+        sha512 = "WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==";
       };
     };
     "mimic-fn-1.2.0" = {
@@ -6961,13 +6952,13 @@ let
         sha512 = "bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==";
       };
     };
-    "moment-timezone-0.5.23" = {
+    "moment-timezone-0.5.25" = {
       name = "moment-timezone";
       packageName = "moment-timezone";
-      version = "0.5.23";
+      version = "0.5.25";
       src = fetchurl {
-        url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.23.tgz";
-        sha512 = "WHFH85DkCfiNMDX5D3X7hpNH3/PUhjTGcD0U1SgfBGZxJ3qUmJh5FdvaFjcClxOvB3rzdfj4oRffbI38jEnC1w==";
+        url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.25.tgz";
+        sha512 = "DgEaTyN/z0HFaVcVbSyVCUU6HeFdnNC3vE4c9cgu2dgMTvjBUBdBzWfasTBmAW45u5OIMeCJtU8yNjM22DHucw==";
       };
     };
     "move-concurrently-1.0.1" = {
@@ -7033,22 +7024,13 @@ let
         sha1 = "ae6ce0d6f6d5e0a4f7d893798d03c1ea9559b6a2";
       };
     };
-    "nan-2.10.0" = {
-      name = "nan";
-      packageName = "nan";
-      version = "2.10.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz";
-        sha512 = "bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==";
-      };
-    };
-    "nan-2.13.2" = {
+    "nan-2.14.0" = {
       name = "nan";
       packageName = "nan";
-      version = "2.13.2";
+      version = "2.14.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nan/-/nan-2.13.2.tgz";
-        sha512 = "TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw==";
+        url = "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz";
+        sha512 = "INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==";
       };
     };
     "nanomatch-1.2.13" = {
@@ -7087,31 +7069,31 @@ let
         sha1 = "195a21d6c46e361d2fb1281ba38b91e9df7bdbb3";
       };
     };
-    "needle-2.2.4" = {
+    "needle-2.4.0" = {
       name = "needle";
       packageName = "needle";
-      version = "2.2.4";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/needle/-/needle-2.2.4.tgz";
-        sha512 = "HyoqEb4wr/rsoaIDfTH2aVL9nWtQqba2/HvMv+++m8u0dz808MaagKILxtfeSN7QU7nvbQ79zk3vYOJp9zsNEA==";
+        url = "https://registry.npmjs.org/needle/-/needle-2.4.0.tgz";
+        sha512 = "4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg==";
       };
     };
-    "negotiator-0.6.1" = {
+    "negotiator-0.6.2" = {
       name = "negotiator";
       packageName = "negotiator";
-      version = "0.6.1";
+      version = "0.6.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz";
-        sha1 = "2b327184e8992101177b28563fb5e7102acd0ca9";
+        url = "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz";
+        sha512 = "hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==";
       };
     };
-    "neo-async-2.6.0" = {
+    "neo-async-2.6.1" = {
       name = "neo-async";
       packageName = "neo-async";
-      version = "2.6.0";
+      version = "2.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/neo-async/-/neo-async-2.6.0.tgz";
-        sha512 = "MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA==";
+        url = "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz";
+        sha512 = "iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==";
       };
     };
     "next-tick-1.0.0" = {
@@ -7132,13 +7114,13 @@ let
         sha512 = "rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==";
       };
     };
-    "nocache-2.0.0" = {
+    "nocache-2.1.0" = {
       name = "nocache";
       packageName = "nocache";
-      version = "2.0.0";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nocache/-/nocache-2.0.0.tgz";
-        sha1 = "202b48021a0c4cbde2df80de15a17443c8b43980";
+        url = "https://registry.npmjs.org/nocache/-/nocache-2.1.0.tgz";
+        sha512 = "0L9FvHG3nfnnmaEQPjT9xhfN4ISk0A8/2j4M37Np4mcDesJjHgEUfgPhdCyZuFI954tjokaIj/A3NdpFNdEh4Q==";
       };
     };
     "node-forge-0.7.6" = {
@@ -7393,13 +7375,13 @@ let
         sha1 = "7e7d858b781bd7c991a41ba975ed3812754e998c";
       };
     };
-    "object-keys-1.1.0" = {
+    "object-keys-1.1.1" = {
       name = "object-keys";
       packageName = "object-keys";
-      version = "1.1.0";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/object-keys/-/object-keys-1.1.0.tgz";
-        sha512 = "6OO5X1+2tYkNyNEx6TsCxEqFfRWaqx6EtMiSbGrw8Ob8v9Ne+Hl8rBAgLBZn5wjEz3s/s6U1WXFUFOcxxAwUpg==";
+        url = "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz";
+        sha512 = "NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==";
       };
     };
     "object-visit-1.0.1" = {
@@ -7672,13 +7654,13 @@ let
         sha1 = "df94fd8cf6531ecf75e6bef9a0858fbc72be2247";
       };
     };
-    "parse-entities-1.2.1" = {
+    "parse-entities-1.2.2" = {
       name = "parse-entities";
       packageName = "parse-entities";
-      version = "1.2.1";
+      version = "1.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.1.tgz";
-        sha512 = "NBWYLQm1KSoDKk7GAHyioLTvCZ5QjdH/ASBBQTD3iLiAWJXS5bg1jEWI8nIJ+vgVvsceBVBcDGRWSo0KVQBvvg==";
+        url = "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.2.tgz";
+        sha512 = "NzfpbxW/NPrzZ/yYSoQxyqUZMZXIdCfE0OIN4ESsnptHJECoUk3FZktxNuzQf4tjt5UEopnxpYJbvYuxIFDdsg==";
       };
     };
     "parse-filepath-1.0.2" = {
@@ -7762,13 +7744,13 @@ let
         sha1 = "80204a50d4dbb779bfdc6ebe2778d90e4bce320a";
       };
     };
-    "parseurl-1.3.2" = {
+    "parseurl-1.3.3" = {
       name = "parseurl";
       packageName = "parseurl";
-      version = "1.3.2";
+      version = "1.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz";
-        sha1 = "fc289d4ed8993119460c156253262cdc8de65bf3";
+        url = "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz";
+        sha512 = "CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==";
       };
     };
     "pascalcase-0.1.1" = {
@@ -8626,13 +8608,13 @@ let
         sha1 = "212d5bfe1318306a420f6402b8e26ff39647a849";
       };
     };
-    "proxy-addr-2.0.4" = {
+    "proxy-addr-2.0.5" = {
       name = "proxy-addr";
       packageName = "proxy-addr";
-      version = "2.0.4";
+      version = "2.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz";
-        sha512 = "5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==";
+        url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz";
+        sha512 = "t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==";
       };
     };
     "proxy-from-env-1.0.0" = {
@@ -8662,13 +8644,13 @@ let
         sha1 = "f052a28da70e618917ef0a8ac34c1ae5a68286b3";
       };
     };
-    "psl-1.1.31" = {
+    "psl-1.1.32" = {
       name = "psl";
       packageName = "psl";
-      version = "1.1.31";
+      version = "1.1.32";
       src = fetchurl {
-        url = "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz";
-        sha512 = "/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==";
+        url = "https://registry.npmjs.org/psl/-/psl-1.1.32.tgz";
+        sha512 = "MHACAkHpihU/REGGPLj4sEfc/XKW2bheigvHO1dUqjaKigMp1C8+WLQYRGgeKFMsw5PMfegZcaN8IDXK/cD0+g==";
       };
     };
     "pump-2.0.1" = {
@@ -8716,13 +8698,13 @@ let
         sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
       };
     };
-    "puppeteer-1.14.0" = {
+    "puppeteer-1.17.0" = {
       name = "puppeteer";
       packageName = "puppeteer";
-      version = "1.14.0";
+      version = "1.17.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/puppeteer/-/puppeteer-1.14.0.tgz";
-        sha512 = "SayS2wUX/8LF8Yo2Rkpc5nkAu4Jg3qu+OLTDSOZtisVQMB2Z5vjlY2TdPi/5CgZKiZroYIiyUN3sRX63El9iaw==";
+        url = "https://registry.npmjs.org/puppeteer/-/puppeteer-1.17.0.tgz";
+        sha512 = "3EXZSximCzxuVKpIHtyec8Wm2dWZn1fc5tQi34qWfiUgubEVYHjUvr0GOJojqf3mifI6oyKnCdrGxaOI+lWReA==";
       };
     };
     "q-1.5.1" = {
@@ -8770,6 +8752,15 @@ let
         sha512 = "N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==";
       };
     };
+    "qs-6.7.0" = {
+      name = "qs";
+      packageName = "qs";
+      version = "6.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz";
+        sha512 = "VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==";
+      };
+    };
     "query-string-4.3.4" = {
       name = "query-string";
       packageName = "query-string";
@@ -8815,13 +8806,13 @@ let
         sha512 = "TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==";
       };
     };
-    "range-parser-1.2.0" = {
+    "range-parser-1.2.1" = {
       name = "range-parser";
       packageName = "range-parser";
-      version = "1.2.0";
+      version = "1.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz";
-        sha1 = "f49be6b487894ddc40dcc94a322f611092e00d5e";
+        url = "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz";
+        sha512 = "Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==";
       };
     };
     "raphael-2.2.7" = {
@@ -8833,13 +8824,13 @@ let
         sha1 = "231b19141f8d086986d8faceb66f8b562ee2c810";
       };
     };
-    "raw-body-2.3.3" = {
+    "raw-body-2.4.0" = {
       name = "raw-body";
       packageName = "raw-body";
-      version = "2.3.3";
+      version = "2.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz";
-        sha512 = "9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==";
+        url = "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz";
+        sha512 = "4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==";
       };
     };
     "raw-loader-0.5.1" = {
@@ -8923,13 +8914,13 @@ let
         sha512 = "tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==";
       };
     };
-    "readable-stream-3.3.0" = {
+    "readable-stream-3.4.0" = {
       name = "readable-stream";
       packageName = "readable-stream";
-      version = "3.3.0";
+      version = "3.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-3.3.0.tgz";
-        sha512 = "EsI+s3k3XsW+fU8fQACLN59ky34AZ14LoeVZpYwmZvldCFo0r0gnelwF2TcMjLor/BTL5aDJVBMkss0dthToPw==";
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz";
+        sha512 = "jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==";
       };
     };
     "readdirp-2.2.1" = {
@@ -8995,13 +8986,13 @@ let
         sha1 = "5a200bf92e0e37751752fe45b0ab330fd4b6be99";
       };
     };
-    "referrer-policy-1.1.0" = {
+    "referrer-policy-1.2.0" = {
       name = "referrer-policy";
       packageName = "referrer-policy";
-      version = "1.1.0";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/referrer-policy/-/referrer-policy-1.1.0.tgz";
-        sha1 = "35774eb735bf50fb6c078e83334b472350207d79";
+        url = "https://registry.npmjs.org/referrer-policy/-/referrer-policy-1.2.0.tgz";
+        sha512 = "LgQJIuS6nAy1Jd88DCQRemyE3mS+ispwlqMk3b0yjZ257fI1v9c+/p6SD5gP5FGyXUIgrNOAfmyioHwZtYv2VA==";
       };
     };
     "regenerate-1.4.0" = {
@@ -9013,13 +9004,13 @@ let
         sha512 = "1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==";
       };
     };
-    "regenerate-unicode-properties-8.0.2" = {
+    "regenerate-unicode-properties-8.1.0" = {
       name = "regenerate-unicode-properties";
       packageName = "regenerate-unicode-properties";
-      version = "8.0.2";
+      version = "8.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.0.2.tgz";
-        sha512 = "SbA/iNrBUf6Pv2zU8Ekv1Qbhv92yxL4hiDa2siuxs4KKn4oOoMDHXjAf7+Nz9qinUQ46B1LcWEi/PhJfPWpZWQ==";
+        url = "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz";
+        sha512 = "LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==";
       };
     };
     "regenerator-runtime-0.10.5" = {
@@ -9292,13 +9283,13 @@ let
         sha1 = "4e0d56d6c9662fd31e43011c4b95aa49955421d3";
       };
     };
-    "resolve-1.10.0" = {
+    "resolve-1.11.1" = {
       name = "resolve";
       packageName = "resolve";
-      version = "1.10.0";
+      version = "1.11.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/resolve/-/resolve-1.10.0.tgz";
-        sha512 = "3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg==";
+        url = "https://registry.npmjs.org/resolve/-/resolve-1.11.1.tgz";
+        sha512 = "vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw==";
       };
     };
     "resolve-dir-0.1.1" = {
@@ -9418,13 +9409,13 @@ let
         sha512 = "El5Fut4/wEO17ZN/n9BZvqd7DXXB2WbJr/DKvr89LXChC/cHllE0XwiUDeAalrTkgr0WrnyLDTCQvEv+cGywWQ==";
       };
     };
-    "rollup-pluginutils-2.6.0" = {
+    "rollup-pluginutils-2.8.1" = {
       name = "rollup-pluginutils";
       packageName = "rollup-pluginutils";
-      version = "2.6.0";
+      version = "2.8.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.6.0.tgz";
-        sha512 = "aGQwspEF8oPKvg37u3p7h0cYNwmJR1sCBMZGZ5b9qy8HGtETknqjzcxrDRrcAnJNXN18lBH4Q9vZYth/p4n8jQ==";
+        url = "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.1.tgz";
+        sha512 = "J5oAoysWar6GuZo0s+3bZ6sVZAC0pfqKz68De7ZgDi5z63jOVZn1uJL/+z1jeKHNbGII8kAyHF5q8LnxSX5lQg==";
       };
     };
     "rollup-watch-4.3.1" = {
@@ -9589,13 +9580,13 @@ let
         sha512 = "Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==";
       };
     };
-    "send-0.16.2" = {
+    "send-0.17.1" = {
       name = "send";
       packageName = "send";
-      version = "0.16.2";
+      version = "0.17.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/send/-/send-0.16.2.tgz";
-        sha512 = "E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==";
+        url = "https://registry.npmjs.org/send/-/send-0.17.1.tgz";
+        sha512 = "BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==";
       };
     };
     "sequencify-0.0.7" = {
@@ -9607,13 +9598,13 @@ let
         sha1 = "90cff19d02e07027fd767f5ead3e7b95d1e7380c";
       };
     };
-    "serialize-javascript-1.6.1" = {
+    "serialize-javascript-1.7.0" = {
       name = "serialize-javascript";
       packageName = "serialize-javascript";
-      version = "1.6.1";
+      version = "1.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.6.1.tgz";
-        sha512 = "A5MOagrPFga4YaKQSWHryl7AXvbQkEqpw4NNYMTNYUNV51bA8ABHgYFpqKx+YFFrw59xMV1qGH1R4AgoNIVgCw==";
+        url = "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.7.0.tgz";
+        sha512 = "ke8UG8ulpFOxO8f8gRYabHQe/ZntKlcig2Mp+8+URDP1D8vJZ0KUt7LYo07q25Z/+JVSgpr/cui9PIp5H6/+nA==";
       };
     };
     "series-stream-1.0.1" = {
@@ -9625,13 +9616,13 @@ let
         sha1 = "311a09c5c1d5a091440832e1a480a47400f1005d";
       };
     };
-    "serve-static-1.13.2" = {
+    "serve-static-1.14.1" = {
       name = "serve-static";
       packageName = "serve-static";
-      version = "1.13.2";
+      version = "1.14.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz";
-        sha512 = "p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==";
+        url = "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz";
+        sha512 = "JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==";
       };
     };
     "set-blocking-2.0.0" = {
@@ -9670,13 +9661,13 @@ let
         sha1 = "290cbb232e306942d7d7ea9b83732ab7856f8285";
       };
     };
-    "setprototypeof-1.1.0" = {
+    "setprototypeof-1.1.1" = {
       name = "setprototypeof";
       packageName = "setprototypeof";
-      version = "1.1.0";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz";
-        sha512 = "BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==";
+        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz";
+        sha512 = "JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==";
       };
     };
     "sha.js-2.2.6" = {
@@ -10048,13 +10039,13 @@ let
         sha1 = "e0e86959ea0786425d3383e40c1bf70d2f985579";
       };
     };
-    "state-toggle-1.0.1" = {
+    "state-toggle-1.0.2" = {
       name = "state-toggle";
       packageName = "state-toggle";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.1.tgz";
-        sha512 = "Qe8QntFrrpWTnHwvwj2FZTgv+PKIsp0B9VxLzLLbSpPXWOgRgc5LVj/aTiSfK1RqIeF9jeC1UeOH8Q8y60A7og==";
+        url = "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.2.tgz";
+        sha512 = "8LpelPGR0qQM4PnfLiplOQNJcIN1/r2Gy0xKB2zKnIW2YzPMt2sR4I/+gtPjhN7Svh9kw+zqEg2SFwpBO9iNiw==";
       };
     };
     "static-extend-0.1.2" = {
@@ -10066,15 +10057,6 @@ let
         sha1 = "60809c39cbff55337226fd5e0b520f341f1fb5c6";
       };
     };
-    "statuses-1.4.0" = {
-      name = "statuses";
-      packageName = "statuses";
-      version = "1.4.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz";
-        sha512 = "zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==";
-      };
-    };
     "statuses-1.5.0" = {
       name = "statuses";
       packageName = "statuses";
@@ -10363,13 +10345,13 @@ let
         sha1 = "29c35707c2b70e50d07482b5d202e8ed446dafd4";
       };
     };
-    "tar-4.4.8" = {
+    "tar-4.4.10" = {
       name = "tar";
       packageName = "tar";
-      version = "4.4.8";
+      version = "4.4.10";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tar/-/tar-4.4.8.tgz";
-        sha512 = "LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==";
+        url = "https://registry.npmjs.org/tar/-/tar-4.4.10.tgz";
+        sha512 = "g2SVs5QIxvo6OLp0GudTqEf05maawKUxXru104iaayWA09551tFCTI8f1Asb4lPfkBr91k07iL4c11XO3/b0tA==";
       };
     };
     "tar-stream-1.6.2" = {
@@ -10579,6 +10561,15 @@ let
         sha1 = "7c80c17b9dfebe599e27367e0d4dd5590141db38";
       };
     };
+    "toidentifier-1.0.0" = {
+      name = "toidentifier";
+      packageName = "toidentifier";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz";
+        sha512 = "yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==";
+      };
+    };
     "toposort-1.0.7" = {
       name = "toposort";
       packageName = "toposort";
@@ -10660,22 +10651,22 @@ let
         sha1 = "cb2e1203067e0c8de1f614094b9fe45704ea6003";
       };
     };
-    "trim-trailing-lines-1.1.1" = {
+    "trim-trailing-lines-1.1.2" = {
       name = "trim-trailing-lines";
       packageName = "trim-trailing-lines";
-      version = "1.1.1";
+      version = "1.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.1.tgz";
-        sha512 = "bWLv9BbWbbd7mlqqs2oQYnLD/U/ZqeJeJwbO0FG2zA1aTq+HTvxfHNKFa/HGCVyJpDiioUYaBhfiT6rgk+l4mg==";
+        url = "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.2.tgz";
+        sha512 = "MUjYItdrqqj2zpcHFTkMa9WAv4JHTI6gnRQGPFLrt5L9a6tRMiDnIqYl8JBvu2d2Tc3lWJKQwlGCp0K8AvCM+Q==";
       };
     };
-    "trough-1.0.3" = {
+    "trough-1.0.4" = {
       name = "trough";
       packageName = "trough";
-      version = "1.0.3";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/trough/-/trough-1.0.3.tgz";
-        sha512 = "fwkLWH+DimvA4YCy+/nvJd61nWQQ2liO/nF/RjkTpiOGi+zxZzVkhb1mvbHIIW4b/8nDsYI8uTmAlc0nNkRMOw==";
+        url = "https://registry.npmjs.org/trough/-/trough-1.0.4.tgz";
+        sha512 = "tdzBRDGWcI1OpPVmChbdSKhvSVurznZ8X36AYURAcl+0o2ldlCY2XPzyXNNxwJwwyIU+rIglTCG4kxtNKBQH7Q==";
       };
     };
     "tty-browserify-0.0.0" = {
@@ -10714,13 +10705,13 @@ let
         sha1 = "5884cab512cf1d355e3fb784f30804b2b520db72";
       };
     };
-    "type-is-1.6.16" = {
+    "type-is-1.6.18" = {
       name = "type-is";
       packageName = "type-is";
-      version = "1.6.16";
+      version = "1.6.18";
       src = fetchurl {
-        url = "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz";
-        sha512 = "HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==";
+        url = "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz";
+        sha512 = "TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==";
       };
     };
     "typechecker-2.0.8" = {
@@ -10795,13 +10786,13 @@ let
         sha512 = "Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw==";
       };
     };
-    "uglify-js-3.5.3" = {
+    "uglify-js-3.6.0" = {
       name = "uglify-js";
       packageName = "uglify-js";
-      version = "3.5.3";
+      version = "3.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.3.tgz";
-        sha512 = "rIQPT2UMDnk4jRX+w4WO84/pebU2jiLsjgIyrCktYgSvx28enOE3iYQMr+BD1rHiitWnDmpu0cY/LfIEpKcjcw==";
+        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz";
+        sha512 = "W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg==";
       };
     };
     "uglify-to-browserify-1.0.2" = {
@@ -10903,13 +10894,13 @@ let
         sha1 = "8cdd8fbac4e2d2ea1e7e2e8097c42f442280f85b";
       };
     };
-    "unherit-1.1.1" = {
+    "unherit-1.1.2" = {
       name = "unherit";
       packageName = "unherit";
-      version = "1.1.1";
+      version = "1.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unherit/-/unherit-1.1.1.tgz";
-        sha512 = "+XZuV691Cn4zHsK0vkKYwBEwB74T3IZIcxrgn2E4rKwTfFyI1zCh7X7grwh9Re08fdPlarIdyWgI8aVB3F5A5g==";
+        url = "https://registry.npmjs.org/unherit/-/unherit-1.1.2.tgz";
+        sha512 = "W3tMnpaMG7ZY6xe/moK04U9fBhi6wEiCYHUW5Mop/wQHf12+79EQGwxYejNdhEz2mkqkBlGwm7pxmgBKMVUj0w==";
       };
     };
     "unicode-canonical-property-names-ecmascript-1.0.4" = {
@@ -11011,22 +11002,22 @@ let
         sha1 = "d59a4a75427447d9aa6c91e70263f8d26a4b104b";
       };
     };
-    "unist-util-is-2.1.2" = {
+    "unist-util-is-3.0.0" = {
       name = "unist-util-is";
       packageName = "unist-util-is";
-      version = "2.1.2";
+      version = "3.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unist-util-is/-/unist-util-is-2.1.2.tgz";
-        sha512 = "YkXBK/H9raAmG7KXck+UUpnKiNmUdB+aBGrknfQ4EreE1banuzrKABx3jP6Z5Z3fMSPMQQmeXBlKpCbMwBkxVw==";
+        url = "https://registry.npmjs.org/unist-util-is/-/unist-util-is-3.0.0.tgz";
+        sha512 = "sVZZX3+kspVNmLWBPAB6r+7D9ZgAFPNWm66f7YNb420RlQSbn+n8rG8dGZSkrER7ZIXGQYNm5pqC3v3HopH24A==";
       };
     };
-    "unist-util-remove-position-1.1.2" = {
+    "unist-util-remove-position-1.1.3" = {
       name = "unist-util-remove-position";
       packageName = "unist-util-remove-position";
-      version = "1.1.2";
+      version = "1.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.2.tgz";
-        sha512 = "XxoNOBvq1WXRKXxgnSYbtCF76TJrRoe5++pD4cCBsssSiWSnPEktyFrFLE8LTk3JW5mt9hB0Sk5zn4x/JeWY7Q==";
+        url = "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.3.tgz";
+        sha512 = "CtszTlOjP2sBGYc2zcKA/CvNdTdEs3ozbiJ63IPBxh8iZg42SCCb8m04f8z2+V1aSk5a7BxbZKEdoDjadmBkWA==";
       };
     };
     "unist-util-stringify-position-1.1.2" = {
@@ -11038,22 +11029,22 @@ let
         sha512 = "pNCVrk64LZv1kElr0N1wPiHEUoXNVFERp+mlTg/s9R5Lwg87f9bM/3sQB99w+N9D/qnM9ar3+AKDBwo/gm/iQQ==";
       };
     };
-    "unist-util-visit-1.4.0" = {
+    "unist-util-visit-1.4.1" = {
       name = "unist-util-visit";
       packageName = "unist-util-visit";
-      version = "1.4.0";
+      version = "1.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.4.0.tgz";
-        sha512 = "FiGu34ziNsZA3ZUteZxSFaczIjGmksfSgdKqBfOejrrfzyUy5b7YrlzT1Bcvi+djkYDituJDy2XB7tGTeBieKw==";
+        url = "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.4.1.tgz";
+        sha512 = "AvGNk7Bb//EmJZyhtRUnNMEpId/AZ5Ph/KUpTI09WHQuDZHKovQ1oEv3mfmKpWKtoMzyMC4GLBm1Zy5k12fjIw==";
       };
     };
-    "unist-util-visit-parents-2.0.1" = {
+    "unist-util-visit-parents-2.1.2" = {
       name = "unist-util-visit-parents";
       packageName = "unist-util-visit-parents";
-      version = "2.0.1";
+      version = "2.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.0.1.tgz";
-        sha512 = "6B0UTiMfdWql4cQ03gDTCSns+64Zkfo2OCbK31Ov0uMizEz+CJeAp0cgZVb5Fhmcd7Bct2iRNywejT0orpbqUA==";
+        url = "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.1.2.tgz";
+        sha512 = "DyN5vD4NE3aSeB+PXYNKxzGsfocxp6asDc2XXE3b0ekO2BaRUpBicbbUygfSvYfUz1IkmjFR1YF7dPklraMZ2g==";
       };
     };
     "universalify-0.1.2" = {
@@ -11290,13 +11281,13 @@ let
         sha1 = "dfe93616ad0e7ae801b332a9d88bfc5cdc8e1d1f";
       };
     };
-    "vendors-1.0.2" = {
+    "vendors-1.0.3" = {
       name = "vendors";
       packageName = "vendors";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vendors/-/vendors-1.0.2.tgz";
-        sha512 = "w/hry/368nO21AN9QljsaIhb9ZiZtZARoVH5f3CsFbawdLdayCgKRPup7CggujvySMxx0I91NOyxdVENohprLQ==";
+        url = "https://registry.npmjs.org/vendors/-/vendors-1.0.3.tgz";
+        sha512 = "fOi47nsJP5Wqefa43kyWSg80qF+Q3XA6MUkgi7Hp1HQaKDQW4cQrK2D0P7mmbFtsV1N89am55Yru/nyEwRubcw==";
       };
     };
     "verror-1.10.0" = {
@@ -11326,13 +11317,13 @@ let
         sha512 = "ASt4mBUHcTpMKD/l5Q+WJXNtshlWxOogYyGYYrg4lt/vuRjC1EFQtlAofL5VmtVNIZJzWYFJjzGWZ0Gw8pzW1w==";
       };
     };
-    "vfile-location-2.0.4" = {
+    "vfile-location-2.0.5" = {
       name = "vfile-location";
       packageName = "vfile-location";
-      version = "2.0.4";
+      version = "2.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vfile-location/-/vfile-location-2.0.4.tgz";
-        sha512 = "KRL5uXQPoUKu+NGvQVL4XLORw45W62v4U4gxJ3vRlDfI9QsT4ZN1PNXn/zQpKUulqGDpYuT0XDfp5q9O87/y/w==";
+        url = "https://registry.npmjs.org/vfile-location/-/vfile-location-2.0.5.tgz";
+        sha512 = "Pa1ey0OzYBkLPxPZI3d9E+S4BmvfVwNAAXrrqGbwTVXWaX2p9kM1zZ+n35UtVM06shmWKH4RPRN8KI80qE3wNQ==";
       };
     };
     "vfile-message-1.1.1" = {
@@ -11867,6 +11858,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "babel-cli-^6.18.0" = nodeEnv.buildNodePackage {
     name = "babel-cli";
@@ -11885,7 +11877,7 @@ in
       sources."arr-union-3.1.0"
       sources."array-unique-0.2.1"
       sources."assign-symbols-1.0.0"
-      sources."async-each-1.0.2"
+      sources."async-each-1.0.3"
       sources."atob-2.1.2"
       sources."babel-code-frame-6.26.0"
       sources."babel-core-6.26.3"
@@ -11940,11 +11932,11 @@ in
       })
       sources."collection-visit-1.0.0"
       sources."commander-2.20.0"
-      sources."component-emitter-1.2.1"
+      sources."component-emitter-1.3.0"
       sources."concat-map-0.0.1"
       sources."convert-source-map-1.6.0"
       sources."copy-descriptor-0.1.1"
-      sources."core-js-2.6.5"
+      sources."core-js-2.6.9"
       sources."core-util-is-1.0.2"
       sources."debug-2.6.9"
       sources."decode-uri-component-0.2.0"
@@ -11971,9 +11963,9 @@ in
       sources."fragment-cache-0.2.1"
       sources."fs-readdir-recursive-1.1.0"
       sources."fs.realpath-1.0.0"
-      sources."fsevents-1.2.7"
+      sources."fsevents-1.2.9"
       sources."get-value-2.0.6"
-      sources."glob-7.1.3"
+      sources."glob-7.1.4"
       sources."glob-base-0.3.0"
       sources."glob-parent-2.0.0"
       sources."globals-9.18.0"
@@ -12051,7 +12043,7 @@ in
       })
       sources."mkdirp-0.5.1"
       sources."ms-2.0.0"
-      sources."nan-2.13.2"
+      sources."nan-2.14.0"
       (sources."nanomatch-1.2.13" // {
         dependencies = [
           sources."arr-diff-4.0.0"
@@ -12262,6 +12254,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "babel-core-^6.21.0" = nodeEnv.buildNodePackage {
     name = "babel-core";
@@ -12290,7 +12283,7 @@ in
       sources."chalk-1.1.3"
       sources."concat-map-0.0.1"
       sources."convert-source-map-1.6.0"
-      sources."core-js-2.6.5"
+      sources."core-js-2.6.9"
       sources."debug-2.6.9"
       sources."detect-indent-4.0.0"
       sources."escape-string-regexp-1.0.5"
@@ -12333,6 +12326,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "babel-loader-^6.2.10" = nodeEnv.buildNodePackage {
     name = "babel-loader";
@@ -12366,6 +12360,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "babel-plugin-transform-runtime-^6.15.0" = nodeEnv.buildNodePackage {
     name = "babel-plugin-transform-runtime";
@@ -12377,7 +12372,7 @@ in
     };
     dependencies = [
       sources."babel-runtime-6.26.0"
-      sources."core-js-2.6.5"
+      sources."core-js-2.6.9"
       sources."regenerator-runtime-0.11.1"
     ];
     buildInputs = globalBuildInputs;
@@ -12387,6 +12382,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "babel-polyfill-^6.22.0" = nodeEnv.buildNodePackage {
     name = "babel-polyfill";
@@ -12402,7 +12398,7 @@ in
           sources."regenerator-runtime-0.11.1"
         ];
       })
-      sources."core-js-2.6.5"
+      sources."core-js-2.6.9"
       sources."regenerator-runtime-0.10.5"
     ];
     buildInputs = globalBuildInputs;
@@ -12413,6 +12409,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "babel-preset-es2015-^6.18.0" = nodeEnv.buildNodePackage {
     name = "babel-preset-es2015";
@@ -12466,7 +12463,7 @@ in
       sources."babel-types-6.26.0"
       sources."babylon-6.18.0"
       sources."chalk-1.1.3"
-      sources."core-js-2.6.5"
+      sources."core-js-2.6.9"
       sources."debug-2.6.9"
       sources."escape-string-regexp-1.0.5"
       sources."esutils-2.0.2"
@@ -12497,6 +12494,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "babel-runtime-^6.20.0" = nodeEnv.buildNodePackage {
     name = "babel-runtime";
@@ -12507,7 +12505,7 @@ in
       sha1 = "965c7058668e82b55d7bfe04ff2337bc8b5647fe";
     };
     dependencies = [
-      sources."core-js-2.6.5"
+      sources."core-js-2.6.9"
       sources."regenerator-runtime-0.11.1"
     ];
     buildInputs = globalBuildInputs;
@@ -12517,6 +12515,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "copy-webpack-plugin-^4.0.1" = nodeEnv.buildNodePackage {
     name = "copy-webpack-plugin";
@@ -12532,7 +12531,7 @@ in
       sources."array-uniq-1.0.3"
       sources."balanced-match-1.0.0"
       sources."big.js-5.2.2"
-      sources."bluebird-3.5.4"
+      sources."bluebird-3.5.5"
       sources."brace-expansion-1.1.11"
       sources."buffer-from-1.1.1"
       sources."cacache-10.0.4"
@@ -12553,7 +12552,7 @@ in
       sources."from2-2.3.0"
       sources."fs-write-stream-atomic-1.0.10"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.3"
+      sources."glob-7.1.4"
       sources."globby-7.1.1"
       sources."graceful-fs-4.1.15"
       sources."iferr-0.1.5"
@@ -12597,7 +12596,7 @@ in
       sources."rimraf-2.6.3"
       sources."run-queue-1.0.3"
       sources."safe-buffer-5.1.2"
-      sources."serialize-javascript-1.6.1"
+      sources."serialize-javascript-1.7.0"
       sources."slash-1.0.0"
       sources."ssri-5.3.0"
       sources."stream-each-1.2.3"
@@ -12621,6 +12620,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "css-loader-^0.26.1" = nodeEnv.buildNodePackage {
     name = "css-loader";
@@ -12641,7 +12641,7 @@ in
       sources."big.js-5.2.2"
       sources."browserslist-1.7.7"
       sources."caniuse-api-1.6.1"
-      sources."caniuse-db-1.0.30000957"
+      sources."caniuse-db-1.0.30000973"
       sources."chalk-1.1.3"
       sources."clap-1.2.3"
       sources."clone-1.0.4"
@@ -12659,7 +12659,7 @@ in
       sources."csso-2.3.2"
       sources."decamelize-1.2.0"
       sources."defined-1.0.0"
-      sources."electron-to-chromium-1.3.124"
+      sources."electron-to-chromium-1.3.147"
       sources."emojis-list-2.1.0"
       sources."escape-string-regexp-1.0.5"
       sources."esprima-2.7.3"
@@ -12789,7 +12789,7 @@ in
       sources."svgo-0.7.2"
       sources."uniq-1.0.1"
       sources."uniqs-2.0.0"
-      sources."vendors-1.0.2"
+      sources."vendors-1.0.3"
       sources."whet.extend-0.9.9"
     ];
     buildInputs = globalBuildInputs;
@@ -12800,6 +12800,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "doctoc-^1.3.0" = nodeEnv.buildNodePackage {
     name = "doctoc";
@@ -12810,15 +12811,15 @@ in
       sha512 = "8IAq3KdMkxhXCUF+xdZxdJxwuz8N2j25sMgqiu4U4JWluN9tRKMlAalxGASszQjlZaBprdD2YfXpL3VPWUD4eg==";
     };
     dependencies = [
-      sources."@textlint/ast-node-types-4.2.1"
+      sources."@textlint/ast-node-types-4.2.2"
       sources."@textlint/markdown-to-ast-6.0.9"
       sources."anchor-markdown-header-0.5.7"
-      sources."bail-1.0.3"
+      sources."bail-1.0.4"
       sources."boundary-1.0.1"
-      sources."character-entities-1.2.2"
-      sources."character-entities-legacy-1.1.2"
-      sources."character-reference-invalid-1.1.2"
-      sources."collapse-white-space-1.0.4"
+      sources."character-entities-1.2.3"
+      sources."character-entities-legacy-1.1.3"
+      sources."character-reference-invalid-1.1.3"
+      sources."collapse-white-space-1.0.5"
       sources."core-util-is-1.0.2"
       sources."debug-2.6.9"
       sources."dom-serializer-0.1.1"
@@ -12828,23 +12829,23 @@ in
       sources."emoji-regex-6.1.3"
       sources."entities-1.1.2"
       sources."extend-3.0.2"
-      sources."fault-1.0.2"
+      sources."fault-1.0.3"
       sources."format-0.2.2"
       sources."htmlparser2-3.9.2"
       sources."inherits-2.0.3"
-      sources."is-alphabetical-1.0.2"
-      sources."is-alphanumerical-1.0.2"
+      sources."is-alphabetical-1.0.3"
+      sources."is-alphanumerical-1.0.3"
       sources."is-buffer-1.1.6"
-      sources."is-decimal-1.0.2"
-      sources."is-hexadecimal-1.0.2"
+      sources."is-decimal-1.0.3"
+      sources."is-hexadecimal-1.0.3"
       sources."is-plain-obj-1.1.0"
-      sources."is-whitespace-character-1.0.2"
-      sources."is-word-character-1.0.2"
+      sources."is-whitespace-character-1.0.3"
+      sources."is-word-character-1.0.3"
       sources."isarray-1.0.0"
-      sources."markdown-escapes-1.0.2"
+      sources."markdown-escapes-1.0.3"
       sources."minimist-1.2.0"
       sources."ms-2.0.0"
-      sources."parse-entities-1.2.1"
+      sources."parse-entities-1.2.2"
       sources."process-nextick-args-2.0.0"
       sources."readable-stream-2.3.6"
       sources."remark-frontmatter-1.3.1"
@@ -12852,25 +12853,25 @@ in
       sources."repeat-string-1.6.1"
       sources."replace-ext-1.0.0"
       sources."safe-buffer-5.1.2"
-      sources."state-toggle-1.0.1"
+      sources."state-toggle-1.0.2"
       sources."string_decoder-1.1.1"
       sources."structured-source-3.0.2"
       sources."traverse-0.6.6"
       sources."trim-0.0.1"
-      sources."trim-trailing-lines-1.1.1"
-      sources."trough-1.0.3"
+      sources."trim-trailing-lines-1.1.2"
+      sources."trough-1.0.4"
       sources."underscore-1.8.3"
-      sources."unherit-1.1.1"
+      sources."unherit-1.1.2"
       sources."unified-6.2.0"
-      sources."unist-util-is-2.1.2"
-      sources."unist-util-remove-position-1.1.2"
+      sources."unist-util-is-3.0.0"
+      sources."unist-util-remove-position-1.1.3"
       sources."unist-util-stringify-position-1.1.2"
-      sources."unist-util-visit-1.4.0"
-      sources."unist-util-visit-parents-2.0.1"
+      sources."unist-util-visit-1.4.1"
+      sources."unist-util-visit-parents-2.1.2"
       sources."update-section-0.3.3"
       sources."util-deprecate-1.0.2"
       sources."vfile-2.3.0"
-      sources."vfile-location-2.0.4"
+      sources."vfile-location-2.0.5"
       sources."vfile-message-1.1.1"
       sources."x-is-string-0.1.0"
       sources."xtend-4.0.1"
@@ -12883,6 +12884,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "ejs-loader-^0.3.0" = nodeEnv.buildNodePackage {
     name = "ejs-loader";
@@ -12908,6 +12910,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "exports-loader-^0.6.3" = nodeEnv.buildNodePackage {
     name = "exports-loader";
@@ -12932,6 +12935,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "expose-^0.1.4" = nodeEnv.buildNodePackage {
     name = "expose";
@@ -12948,6 +12952,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "expose-loader-^0.7.1" = nodeEnv.buildNodePackage {
     name = "expose-loader";
@@ -12965,6 +12970,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "extract-text-webpack-plugin-^1.0.1" = nodeEnv.buildNodePackage {
     name = "extract-text-webpack-plugin";
@@ -12988,11 +12994,12 @@ in
     buildInputs = globalBuildInputs;
     meta = {
       description = "Extract text from bundle into a file.";
-      homepage = https://github.com/webpack/extract-text-webpack-plugin;
+      homepage = http://github.com/webpack/extract-text-webpack-plugin;
       license = "MIT";
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "file-loader-^0.9.0" = nodeEnv.buildNodePackage {
     name = "file-loader";
@@ -13017,6 +13024,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "html-webpack-plugin-^2.25.0" = nodeEnv.buildNodePackage {
     name = "html-webpack-plugin";
@@ -13029,7 +13037,7 @@ in
     dependencies = [
       sources."ansi-regex-2.1.1"
       sources."big.js-3.2.0"
-      sources."bluebird-3.5.4"
+      sources."bluebird-3.5.5"
       sources."boolbase-1.0.0"
       sources."camel-case-3.0.0"
       sources."clean-css-4.2.1"
@@ -13056,7 +13064,7 @@ in
       sources."object-assign-4.1.1"
       sources."param-case-2.1.1"
       sources."pretty-error-2.1.1"
-      sources."readable-stream-3.3.0"
+      sources."readable-stream-3.4.0"
       sources."relateurl-0.2.7"
       sources."renderkid-2.0.3"
       sources."safe-buffer-5.1.2"
@@ -13081,6 +13089,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "imports-loader-^0.7.0" = nodeEnv.buildNodePackage {
     name = "imports-loader";
@@ -13106,6 +13115,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "json-loader-^0.5.4" = nodeEnv.buildNodePackage {
     name = "json-loader";
@@ -13123,6 +13133,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "jsonlint-^1.6.2" = nodeEnv.buildNodePackage {
     name = "jsonlint";
@@ -13148,6 +13159,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "less-^2.7.1" = nodeEnv.buildNodePackage {
     name = "less";
@@ -13169,7 +13181,7 @@ in
       sources."boom-2.10.1"
       sources."caseless-0.12.0"
       sources."co-4.6.0"
-      sources."combined-stream-1.0.7"
+      sources."combined-stream-1.0.8"
       sources."core-util-is-1.0.2"
       sources."cryptiles-2.0.5"
       (sources."dashdash-1.14.1" // {
@@ -13209,8 +13221,8 @@ in
         ];
       })
       sources."mime-1.6.0"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
       sources."oauth-sign-0.8.2"
@@ -13248,6 +13260,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "less-loader-^2.2.3" = nodeEnv.buildNodePackage {
     name = "less-loader";
@@ -13271,6 +13284,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "optimize-css-assets-webpack-plugin-^1.3.0" = nodeEnv.buildNodePackage {
     name = "optimize-css-assets-webpack-plugin";
@@ -13289,7 +13303,7 @@ in
       sources."balanced-match-0.4.2"
       sources."browserslist-1.7.7"
       sources."caniuse-api-1.6.1"
-      sources."caniuse-db-1.0.30000957"
+      sources."caniuse-db-1.0.30000973"
       (sources."chalk-1.1.3" // {
         dependencies = [
           sources."supports-color-2.0.0"
@@ -13309,7 +13323,7 @@ in
       sources."csso-2.3.2"
       sources."decamelize-1.2.0"
       sources."defined-1.0.0"
-      sources."electron-to-chromium-1.3.124"
+      sources."electron-to-chromium-1.3.147"
       sources."escape-string-regexp-1.0.5"
       sources."esprima-2.7.3"
       sources."flatten-1.0.2"
@@ -13379,18 +13393,19 @@ in
       sources."underscore-1.9.1"
       sources."uniq-1.0.1"
       sources."uniqs-2.0.0"
-      sources."vendors-1.0.2"
+      sources."vendors-1.0.3"
       sources."webpack-sources-0.1.5"
       sources."whet.extend-0.9.9"
     ];
     buildInputs = globalBuildInputs;
     meta = {
       description = "A Webpack plugin to optimize \\ minimize CSS assets.";
-      homepage = https://github.com/NMFR/optimize-css-assets-webpack-plugin;
+      homepage = http://github.com/NMFR/optimize-css-assets-webpack-plugin;
       license = "MIT";
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "script-loader-^0.7.0" = nodeEnv.buildNodePackage {
     name = "script-loader";
@@ -13411,6 +13426,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "standard-^9.0.1" = nodeEnv.buildNodePackage {
     name = "standard";
@@ -13433,7 +13449,7 @@ in
       sources."ansi-regex-2.1.1"
       sources."ansi-styles-2.2.1"
       sources."argparse-1.0.10"
-      sources."array.prototype.find-2.0.4"
+      sources."array.prototype.find-2.1.0"
       sources."babel-code-frame-6.26.0"
       sources."balanced-match-1.0.0"
       sources."brace-expansion-1.1.11"
@@ -13459,7 +13475,7 @@ in
       sources."error-ex-1.3.2"
       sources."es-abstract-1.13.0"
       sources."es-to-primitive-1.2.0"
-      sources."es5-ext-0.10.49"
+      sources."es5-ext-0.10.50"
       sources."es6-iterator-2.0.3"
       sources."es6-map-0.1.5"
       sources."es6-set-0.1.5"
@@ -13496,7 +13512,7 @@ in
       sources."generate-function-2.3.1"
       sources."generate-object-property-1.2.0"
       sources."get-stdin-5.0.1"
-      sources."glob-7.1.3"
+      sources."glob-7.1.4"
       sources."globals-9.18.0"
       sources."graceful-fs-4.1.15"
       sources."has-1.0.3"
@@ -13514,7 +13530,7 @@ in
       sources."is-date-object-1.0.1"
       sources."is-fullwidth-code-point-1.0.0"
       sources."is-my-ip-valid-1.0.0"
-      sources."is-my-json-valid-2.19.0"
+      sources."is-my-json-valid-2.20.0"
       sources."is-property-1.0.2"
       sources."is-regex-1.0.4"
       sources."is-resolvable-1.1.0"
@@ -13540,7 +13556,7 @@ in
       sources."next-tick-1.0.0"
       sources."number-is-nan-1.0.1"
       sources."object-assign-4.1.1"
-      sources."object-keys-1.1.0"
+      sources."object-keys-1.1.1"
       sources."once-1.4.0"
       sources."onetime-1.1.0"
       sources."optionator-0.8.2"
@@ -13565,7 +13581,7 @@ in
       sources."readline2-1.0.1"
       sources."rechoir-0.6.2"
       sources."require-uncached-1.0.3"
-      sources."resolve-1.10.0"
+      sources."resolve-1.11.1"
       sources."resolve-from-1.0.1"
       sources."restore-cursor-1.0.1"
       sources."rimraf-2.6.3"
@@ -13615,6 +13631,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "string-loader-^0.0.1" = nodeEnv.buildNodePackage {
     name = "string-loader";
@@ -13632,6 +13649,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "style-loader-^0.13.1" = nodeEnv.buildNodePackage {
     name = "style-loader";
@@ -13656,6 +13674,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "url-loader-^0.5.7" = nodeEnv.buildNodePackage {
     name = "url-loader";
@@ -13681,6 +13700,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "webpack-^1.14.0" = nodeEnv.buildNodePackage {
     name = "webpack";
@@ -13699,7 +13719,7 @@ in
       sources."arr-flatten-1.1.0"
       sources."arr-union-3.1.0"
       sources."array-unique-0.2.1"
-      (sources."assert-1.4.1" // {
+      (sources."assert-1.5.0" // {
         dependencies = [
           sources."inherits-2.0.1"
           sources."util-0.10.3"
@@ -13707,7 +13727,7 @@ in
       })
       sources."assign-symbols-1.0.0"
       sources."async-1.5.2"
-      sources."async-each-1.0.2"
+      sources."async-each-1.0.3"
       sources."atob-2.1.2"
       (sources."base-0.11.2" // {
         dependencies = [
@@ -13756,7 +13776,7 @@ in
       })
       sources."clone-1.0.4"
       sources."collection-visit-1.0.0"
-      sources."component-emitter-1.2.1"
+      sources."component-emitter-1.3.0"
       sources."console-browserify-1.1.0"
       sources."constants-browserify-1.0.0"
       sources."copy-descriptor-0.1.1"
@@ -13793,7 +13813,7 @@ in
       sources."for-in-1.0.2"
       sources."for-own-0.1.5"
       sources."fragment-cache-0.2.1"
-      sources."fsevents-1.2.7"
+      sources."fsevents-1.2.9"
       sources."get-value-2.0.6"
       sources."glob-base-0.3.0"
       sources."glob-parent-2.0.0"
@@ -13870,7 +13890,7 @@ in
       })
       sources."mkdirp-0.5.1"
       sources."ms-2.0.0"
-      sources."nan-2.13.2"
+      sources."nan-2.14.0"
       (sources."nanomatch-1.2.13" // {
         dependencies = [
           sources."arr-diff-4.0.0"
@@ -14118,6 +14138,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "webpack-parallel-uglify-plugin-^0.2.0" = nodeEnv.buildNodePackage {
     name = "webpack-parallel-uglify-plugin";
@@ -14137,7 +14158,7 @@ in
       sources."concat-map-0.0.1"
       sources."decamelize-1.2.0"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.3"
+      sources."glob-7.1.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
       sources."is-buffer-1.1.6"
@@ -14171,6 +14192,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "Idle.Js-git+https://github.com/shawnmclean/Idle.js" = nodeEnv.buildNodePackage {
     name = "Idle.Js";
@@ -14187,6 +14209,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "archiver-^2.1.1" = nodeEnv.buildNodePackage {
     name = "archiver";
@@ -14216,7 +14239,7 @@ in
       sources."end-of-stream-1.4.1"
       sources."fs-constants-1.0.0"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.3"
+      sources."glob-7.1.4"
       sources."graceful-fs-4.1.15"
       sources."ieee754-1.1.13"
       sources."inflight-1.0.6"
@@ -14248,6 +14271,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "async-^2.1.4" = nodeEnv.buildNodePackage {
     name = "async";
@@ -14268,14 +14292,15 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "aws-sdk-^2.7.20" = nodeEnv.buildNodePackage {
     name = "aws-sdk";
     packageName = "aws-sdk";
-    version = "2.437.0";
+    version = "2.469.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.437.0.tgz";
-      sha512 = "sDZb5QBOO6FOMvuKDEdO16YQRk0WUhnQd38EaSt0yUCi4Gev8uypODyYONgODZcXe8Cr1GMwC8scUKr00S/I5w==";
+      url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.469.0.tgz";
+      sha512 = "VaIrO3aBX83gKkBPk9xM0RHmu7fmq76kaF0SqbsWlPImgxc5foJ4rBlRMMlmeNogFZZ/XTQdI+gkFDVosV14Ig==";
     };
     dependencies = [
       sources."base64-js-1.3.0"
@@ -14300,6 +14325,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "base64url-^3.0.0" = nodeEnv.buildNodePackage {
     name = "base64url";
@@ -14317,14 +14343,15 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "azure-storage-^2.7.0" = nodeEnv.buildNodePackage {
     name = "azure-storage";
     packageName = "azure-storage";
-    version = "2.10.2";
+    version = "2.10.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/azure-storage/-/azure-storage-2.10.2.tgz";
-      sha512 = "pOyGPya9+NDpAfm5YcFfklo57HfjDbYLXxs4lomPwvRxmb0Di/A+a+RkUmEFzaQ8S13CqxK40bRRB0sjj2ZQxA==";
+      url = "https://registry.npmjs.org/azure-storage/-/azure-storage-2.10.3.tgz";
+      sha512 = "IGLs5Xj6kO8Ii90KerQrrwuJKexLgSwYC4oLWmc11mzKe7Jt2E5IVg+ZQ8K53YWZACtVTMBNO3iGuA+4ipjJxQ==";
     };
     dependencies = [
       sources."ajv-6.10.0"
@@ -14336,7 +14363,7 @@ in
       sources."bcrypt-pbkdf-1.0.2"
       sources."browserify-mime-1.2.9"
       sources."caseless-0.12.0"
-      sources."combined-stream-1.0.7"
+      sources."combined-stream-1.0.8"
       sources."core-util-is-1.0.2"
       sources."dashdash-1.14.1"
       sources."delayed-stream-1.0.0"
@@ -14364,12 +14391,12 @@ in
       sources."jsonparse-1.2.0"
       sources."jsprim-1.4.1"
       sources."md5.js-1.3.4"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."oauth-sign-0.9.0"
       sources."performance-now-2.1.0"
       sources."process-nextick-args-1.0.7"
-      sources."psl-1.1.31"
+      sources."psl-1.1.32"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
       sources."readable-stream-2.0.6"
@@ -14398,11 +14425,12 @@ in
     buildInputs = globalBuildInputs;
     meta = {
       description = "Microsoft Azure Storage Client Library for Node.js";
-      homepage = https://github.com/Azure/azure-storage-node;
+      homepage = http://github.com/Azure/azure-storage-node;
       license = "Apache-2.0";
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "blueimp-md5-^2.6.0" = nodeEnv.buildNodePackage {
     name = "blueimp-md5";
@@ -14420,35 +14448,37 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "body-parser-^1.15.2" = nodeEnv.buildNodePackage {
     name = "body-parser";
     packageName = "body-parser";
-    version = "1.18.3";
+    version = "1.19.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz";
-      sha1 = "5b292198ffdd553b3a0f20ded0592b956955c8b4";
+      url = "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz";
+      sha512 = "dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==";
     };
     dependencies = [
-      sources."bytes-3.0.0"
+      sources."bytes-3.1.0"
       sources."content-type-1.0.4"
       sources."debug-2.6.9"
       sources."depd-1.1.2"
       sources."ee-first-1.1.1"
-      sources."http-errors-1.6.3"
-      sources."iconv-lite-0.4.23"
+      sources."http-errors-1.7.2"
+      sources."iconv-lite-0.4.24"
       sources."inherits-2.0.3"
       sources."media-typer-0.3.0"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."ms-2.0.0"
       sources."on-finished-2.3.0"
-      sources."qs-6.5.2"
-      sources."raw-body-2.3.3"
+      sources."qs-6.7.0"
+      sources."raw-body-2.4.0"
       sources."safer-buffer-2.1.2"
-      sources."setprototypeof-1.1.0"
+      sources."setprototypeof-1.1.1"
       sources."statuses-1.5.0"
-      sources."type-is-1.6.16"
+      sources."toidentifier-1.0.0"
+      sources."type-is-1.6.18"
       sources."unpipe-1.0.0"
     ];
     buildInputs = globalBuildInputs;
@@ -14459,6 +14489,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "bootstrap-^3.3.7" = nodeEnv.buildNodePackage {
     name = "bootstrap";
@@ -14476,6 +14507,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "bootstrap-validator-^0.11.8" = nodeEnv.buildNodePackage {
     name = "bootstrap-validator";
@@ -14492,6 +14524,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "chance-^1.0.4" = nodeEnv.buildNodePackage {
     name = "chance";
@@ -14509,6 +14542,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "cheerio-^0.22.0" = nodeEnv.buildNodePackage {
     name = "cheerio";
@@ -14542,7 +14576,7 @@ in
       sources."lodash.reject-4.6.0"
       sources."lodash.some-4.6.0"
       sources."nth-check-1.0.2"
-      sources."readable-stream-3.3.0"
+      sources."readable-stream-3.4.0"
       sources."safe-buffer-5.1.2"
       sources."string_decoder-1.2.0"
       sources."util-deprecate-1.0.2"
@@ -14555,48 +14589,35 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "codemirror-git+https://github.com/hackmdio/CodeMirror.git" = nodeEnv.buildNodePackage {
     name = "codemirror";
     packageName = "codemirror";
-    version = "5.41.1";
+    version = "5.46.1";
     src = fetchgit {
       url = "https://github.com/hackmdio/CodeMirror.git";
-      rev = "490cdc903e06895354691e7a06b84203b3be4a6e";
-      sha256 = "a0cd1c3b5e1e4d46c02cff3983585064c1586cf7358bcf6460b8e83c6f8902e3";
+      rev = "8ce8e8820da8f51d852bda1e0b9a5394eb8ea8d3";
+      sha256 = "44aa5ffa35dfd634c8fd4a8ba0e4df78fb9092dc2d897c84a986e61c6030199b";
     };
     dependencies = [
       sources."@types/estree-0.0.39"
-      sources."@types/node-11.13.0"
+      sources."@types/node-12.0.4"
       sources."acorn-5.7.3"
       sources."acorn-dynamic-import-4.0.0"
       sources."acorn-jsx-5.0.1"
       sources."ajv-6.10.0"
-      (sources."align-text-0.1.4" // {
-        dependencies = [
-          sources."kind-of-3.2.2"
-        ];
-      })
+      sources."align-text-0.1.4"
       sources."ansi-styles-1.0.0"
-      (sources."anymatch-1.3.2" // {
-        dependencies = [
-          sources."arr-diff-2.0.0"
-          sources."array-unique-0.2.1"
-          sources."braces-1.8.5"
-          sources."expand-brackets-0.1.5"
-          sources."extglob-0.3.2"
-          sources."kind-of-3.2.2"
-          sources."micromatch-2.3.11"
-        ];
-      })
-      sources."arr-diff-4.0.0"
+      sources."anymatch-1.3.2"
+      sources."arr-diff-2.0.0"
       sources."arr-flatten-1.1.0"
       sources."arr-union-3.1.0"
-      sources."array-unique-0.3.2"
+      sources."array-unique-0.2.1"
       sources."asn1-0.2.4"
       sources."assert-plus-1.0.0"
       sources."assign-symbols-1.0.0"
-      sources."async-each-1.0.2"
+      sources."async-each-1.0.3"
       sources."asynckit-0.4.0"
       sources."atob-2.1.2"
       sources."aws-sign2-0.7.0"
@@ -14604,16 +14625,13 @@ in
       (sources."base-0.11.2" // {
         dependencies = [
           sources."define-property-1.0.0"
+          sources."isobject-3.0.1"
         ];
       })
       sources."bcrypt-pbkdf-1.0.2"
       sources."binary-extensions-1.13.1"
       sources."blint-1.0.3"
-      (sources."braces-2.3.2" // {
-        dependencies = [
-          sources."extend-shallow-2.0.1"
-        ];
-      })
+      sources."braces-1.8.5"
       (sources."buble-0.19.7" // {
         dependencies = [
           sources."acorn-6.1.1"
@@ -14623,7 +14641,11 @@ in
         ];
       })
       sources."buffer-from-1.1.1"
-      sources."cache-base-1.0.1"
+      (sources."cache-base-1.0.1" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
       sources."camelcase-1.2.1"
       sources."caseless-0.12.0"
       sources."center-align-0.1.3"
@@ -14643,6 +14665,7 @@ in
             ];
           })
           sources."is-descriptor-0.1.6"
+          sources."isobject-3.0.1"
           sources."kind-of-5.1.0"
         ];
       })
@@ -14655,8 +14678,8 @@ in
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
       sources."colors-1.3.3"
-      sources."combined-stream-1.0.7"
-      sources."component-emitter-1.2.1"
+      sources."combined-stream-1.0.8"
+      sources."component-emitter-1.3.0"
       sources."concat-stream-1.6.2"
       sources."copy-descriptor-0.1.1"
       sources."core-util-is-1.0.2"
@@ -14664,68 +14687,39 @@ in
       sources."debug-2.6.9"
       sources."decamelize-1.2.0"
       sources."decode-uri-component-0.2.0"
-      sources."define-property-2.0.2"
+      (sources."define-property-2.0.2" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
       sources."delayed-stream-1.0.0"
       sources."ecc-jsbn-0.1.2"
       sources."es6-promise-4.2.6"
       sources."escape-string-regexp-1.0.5"
-      sources."estree-walker-0.6.0"
-      (sources."expand-brackets-2.1.4" // {
-        dependencies = [
-          sources."define-property-0.2.5"
-          sources."extend-shallow-2.0.1"
-          (sources."is-accessor-descriptor-0.1.6" // {
-            dependencies = [
-              sources."kind-of-3.2.2"
-            ];
-          })
-          (sources."is-data-descriptor-0.1.4" // {
-            dependencies = [
-              sources."kind-of-3.2.2"
-            ];
-          })
-          sources."is-descriptor-0.1.6"
-          sources."kind-of-5.1.0"
-        ];
-      })
-      (sources."expand-range-1.8.2" // {
-        dependencies = [
-          sources."fill-range-2.2.4"
-          sources."is-number-2.1.0"
-          sources."isobject-2.1.0"
-          sources."kind-of-3.2.2"
-        ];
-      })
+      sources."estree-walker-0.6.1"
+      sources."expand-brackets-0.1.5"
+      sources."expand-range-1.8.2"
       sources."extend-3.0.2"
       (sources."extend-shallow-3.0.2" // {
         dependencies = [
           sources."is-extendable-1.0.1"
         ];
       })
-      (sources."extglob-2.0.4" // {
-        dependencies = [
-          sources."define-property-1.0.0"
-          sources."extend-shallow-2.0.1"
-        ];
-      })
+      sources."extglob-0.3.2"
       sources."extract-zip-1.6.7"
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-2.0.1"
       sources."fast-json-stable-stringify-2.0.0"
       sources."fd-slicer-1.0.1"
       sources."filename-regex-2.0.1"
-      (sources."fill-range-4.0.0" // {
-        dependencies = [
-          sources."extend-shallow-2.0.1"
-        ];
-      })
+      sources."fill-range-2.2.4"
       sources."for-in-1.0.2"
       sources."for-own-0.1.5"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
       sources."fragment-cache-0.2.1"
       sources."fs-extra-1.0.0"
-      sources."fsevents-1.2.7"
+      sources."fsevents-1.2.9"
       sources."get-value-2.0.6"
       sources."getpass-0.1.7"
       sources."glob-base-0.3.0"
@@ -14735,31 +14729,52 @@ in
       sources."har-validator-5.1.3"
       sources."has-color-0.1.7"
       sources."has-flag-3.0.0"
-      sources."has-value-1.0.0"
+      (sources."has-value-1.0.0" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
       (sources."has-values-1.0.0" // {
         dependencies = [
+          (sources."is-number-3.0.0" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
           sources."kind-of-4.0.0"
         ];
       })
       sources."hasha-2.2.0"
       sources."http-signature-1.2.0"
       sources."inherits-2.0.3"
-      sources."is-accessor-descriptor-1.0.0"
+      (sources."is-accessor-descriptor-1.0.0" // {
+        dependencies = [
+          sources."kind-of-6.0.2"
+        ];
+      })
       sources."is-binary-path-1.0.1"
       sources."is-buffer-1.1.6"
-      sources."is-data-descriptor-1.0.0"
-      sources."is-descriptor-1.0.2"
+      (sources."is-data-descriptor-1.0.0" // {
+        dependencies = [
+          sources."kind-of-6.0.2"
+        ];
+      })
+      (sources."is-descriptor-1.0.2" // {
+        dependencies = [
+          sources."kind-of-6.0.2"
+        ];
+      })
       sources."is-dotfile-1.0.3"
       sources."is-equal-shallow-0.1.3"
       sources."is-extendable-0.1.1"
       sources."is-extglob-1.0.0"
       sources."is-glob-2.0.1"
-      (sources."is-number-3.0.0" // {
+      sources."is-number-2.1.0"
+      (sources."is-plain-object-2.0.4" // {
         dependencies = [
-          sources."kind-of-3.2.2"
+          sources."isobject-3.0.1"
         ];
       })
-      sources."is-plain-object-2.0.4"
       sources."is-posix-bracket-0.1.1"
       sources."is-primitive-2.0.0"
       sources."is-stream-1.1.0"
@@ -14767,7 +14782,7 @@ in
       sources."is-windows-1.0.2"
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
-      sources."isobject-3.0.1"
+      sources."isobject-2.1.0"
       sources."isstream-0.1.2"
       sources."jsbn-0.1.1"
       sources."jsesc-0.5.0"
@@ -14777,7 +14792,7 @@ in
       sources."jsonfile-2.4.0"
       sources."jsprim-1.4.1"
       sources."kew-0.7.0"
-      sources."kind-of-6.0.2"
+      sources."kind-of-3.2.2"
       sources."klaw-1.3.1"
       sources."lazy-cache-1.0.4"
       sources."longest-1.0.1"
@@ -14785,10 +14800,10 @@ in
       sources."map-cache-0.2.2"
       sources."map-visit-1.0.0"
       sources."math-random-1.0.4"
-      sources."micromatch-3.1.10"
+      sources."micromatch-2.3.11"
       sources."mime-1.6.0"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."minimist-0.0.10"
       (sources."mixin-deep-1.3.1" // {
         dependencies = [
@@ -14801,8 +14816,14 @@ in
         ];
       })
       sources."ms-2.0.0"
-      sources."nan-2.13.2"
-      sources."nanomatch-1.2.13"
+      sources."nan-2.14.0"
+      (sources."nanomatch-1.2.13" // {
+        dependencies = [
+          sources."arr-diff-4.0.0"
+          sources."array-unique-0.3.2"
+          sources."kind-of-6.0.2"
+        ];
+      })
       sources."node-static-0.7.11"
       sources."nomnom-1.8.1"
       sources."normalize-path-2.1.1"
@@ -14817,12 +14838,19 @@ in
               sources."kind-of-5.1.0"
             ];
           })
-          sources."kind-of-3.2.2"
         ];
       })
-      sources."object-visit-1.0.1"
+      (sources."object-visit-1.0.1" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
       sources."object.omit-2.0.1"
-      sources."object.pick-1.3.0"
+      (sources."object.pick-1.3.0" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
       sources."optimist-0.6.1"
       sources."os-homedir-1.0.2"
       sources."parse-glob-3.0.4"
@@ -14837,18 +14865,69 @@ in
       sources."preserve-0.2.0"
       sources."process-nextick-args-2.0.0"
       sources."progress-1.1.8"
-      sources."psl-1.1.31"
+      sources."psl-1.1.32"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
       (sources."randomatic-3.1.1" // {
         dependencies = [
           sources."is-number-4.0.0"
+          sources."kind-of-6.0.2"
         ];
       })
       sources."readable-stream-2.3.6"
-      sources."readdirp-2.2.1"
+      (sources."readdirp-2.2.1" // {
+        dependencies = [
+          sources."arr-diff-4.0.0"
+          sources."array-unique-0.3.2"
+          (sources."braces-2.3.2" // {
+            dependencies = [
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          (sources."expand-brackets-2.1.4" // {
+            dependencies = [
+              sources."define-property-0.2.5"
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          (sources."extglob-2.0.4" // {
+            dependencies = [
+              sources."define-property-1.0.0"
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          (sources."fill-range-4.0.0" // {
+            dependencies = [
+              sources."extend-shallow-2.0.1"
+            ];
+          })
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-5.1.0"
+            ];
+          })
+          (sources."is-number-3.0.0" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."isobject-3.0.1"
+          sources."kind-of-6.0.2"
+          sources."micromatch-3.1.10"
+        ];
+      })
       sources."regenerate-1.4.0"
-      sources."regenerate-unicode-properties-8.0.2"
+      sources."regenerate-unicode-properties-8.1.0"
       sources."regex-cache-0.4.4"
       sources."regex-not-1.0.2"
       sources."regexpu-core-4.5.4"
@@ -14865,7 +14944,7 @@ in
       sources."right-align-0.1.3"
       sources."rollup-0.66.6"
       sources."rollup-plugin-buble-0.19.6"
-      sources."rollup-pluginutils-2.6.0"
+      sources."rollup-pluginutils-2.8.1"
       sources."rollup-watch-4.3.1"
       sources."safe-buffer-5.1.2"
       sources."safe-regex-1.1.0"
@@ -14896,13 +14975,10 @@ in
       (sources."snapdragon-node-2.1.1" // {
         dependencies = [
           sources."define-property-1.0.0"
+          sources."isobject-3.0.1"
         ];
       })
-      (sources."snapdragon-util-3.0.1" // {
-        dependencies = [
-          sources."kind-of-3.2.2"
-        ];
-      })
+      sources."snapdragon-util-3.0.1"
       sources."source-map-0.5.7"
       sources."source-map-resolve-0.5.2"
       sources."source-map-url-0.4.0"
@@ -14930,13 +15006,13 @@ in
       sources."strip-ansi-0.1.1"
       sources."supports-color-5.5.0"
       sources."throttleit-1.0.0"
-      (sources."to-object-path-0.3.0" // {
+      sources."to-object-path-0.3.0"
+      sources."to-regex-3.0.2"
+      (sources."to-regex-range-2.1.1" // {
         dependencies = [
-          sources."kind-of-3.2.2"
+          sources."is-number-3.0.0"
         ];
       })
-      sources."to-regex-3.0.2"
-      sources."to-regex-range-2.1.1"
       (sources."tough-cookie-2.4.3" // {
         dependencies = [
           sources."punycode-1.4.1"
@@ -14966,6 +15042,7 @@ in
             ];
           })
           sources."has-values-0.1.4"
+          sources."isobject-3.0.1"
         ];
       })
       sources."uri-js-4.2.2"
@@ -14988,6 +15065,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "compression-^1.6.2" = nodeEnv.buildNodePackage {
     name = "compression";
@@ -14998,14 +15076,14 @@ in
       sha512 = "jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==";
     };
     dependencies = [
-      sources."accepts-1.3.5"
+      sources."accepts-1.3.7"
       sources."bytes-3.0.0"
-      sources."compressible-2.0.16"
+      sources."compressible-2.0.17"
       sources."debug-2.6.9"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."ms-2.0.0"
-      sources."negotiator-0.6.1"
+      sources."negotiator-0.6.2"
       sources."on-headers-1.0.2"
       sources."safe-buffer-5.1.2"
       sources."vary-1.1.2"
@@ -15018,6 +15096,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "connect-flash-^0.1.1" = nodeEnv.buildNodePackage {
     name = "connect-flash";
@@ -15033,6 +15112,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "connect-session-sequelize-^4.1.0" = nodeEnv.buildNodePackage {
     name = "connect-session-sequelize";
@@ -15055,6 +15135,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "cookie-0.3.1" = nodeEnv.buildNodePackage {
     name = "cookie";
@@ -15072,6 +15153,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "cookie-parser-1.4.3" = nodeEnv.buildNodePackage {
     name = "cookie-parser";
@@ -15093,6 +15175,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "deep-freeze-^0.0.1" = nodeEnv.buildNodePackage {
     name = "deep-freeze";
@@ -15110,15 +15193,16 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "diff-match-patch-git+https://github.com/hackmdio/diff-match-patch.git" = nodeEnv.buildNodePackage {
-    name = "diff-match-patch";
-    packageName = "diff-match-patch";
-    version = "1.1.0";
+    name = "_at_hackmd_slash_diff-match-patch";
+    packageName = "@hackmd/diff-match-patch";
+    version = "1.1.1";
     src = fetchgit {
       url = "https://github.com/hackmdio/diff-match-patch.git";
-      rev = "73e56e779a2a8503b05458e607077d0fd1d80419";
-      sha256 = "2ea9013d983e96621b447f40ca983f697ad355a9ed9dc48f5ab42fa1f183937f";
+      rev = "dd6e43a1df8f46ac17ba33217c00d4018ef5637f";
+      sha256 = "98b603f318c562dbfe4000cf4e42467c113a1c91dc4009e9d61dbf378aae9367";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -15127,6 +15211,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "ejs-^2.5.5" = nodeEnv.buildNodePackage {
     name = "ejs";
@@ -15144,6 +15229,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "emojify.js-~1.1.0" = nodeEnv.buildNodePackage {
     name = "emojify.js";
@@ -15161,23 +15247,24 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "express->=4.14" = nodeEnv.buildNodePackage {
     name = "express";
     packageName = "express";
-    version = "4.16.4";
+    version = "4.17.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/express/-/express-4.16.4.tgz";
-      sha512 = "j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==";
+      url = "https://registry.npmjs.org/express/-/express-4.17.1.tgz";
+      sha512 = "mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==";
     };
     dependencies = [
-      sources."accepts-1.3.5"
+      sources."accepts-1.3.7"
       sources."array-flatten-1.1.1"
-      sources."body-parser-1.18.3"
-      sources."bytes-3.0.0"
-      sources."content-disposition-0.5.2"
+      sources."body-parser-1.19.0"
+      sources."bytes-3.1.0"
+      sources."content-disposition-0.5.3"
       sources."content-type-1.0.4"
-      sources."cookie-0.3.1"
+      sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
       sources."debug-2.6.9"
       sources."depd-1.1.2"
@@ -15186,35 +15273,40 @@ in
       sources."encodeurl-1.0.2"
       sources."escape-html-1.0.3"
       sources."etag-1.8.1"
-      sources."finalhandler-1.1.1"
+      sources."finalhandler-1.1.2"
       sources."forwarded-0.1.2"
       sources."fresh-0.5.2"
-      sources."http-errors-1.6.3"
-      sources."iconv-lite-0.4.23"
+      sources."http-errors-1.7.2"
+      sources."iconv-lite-0.4.24"
       sources."inherits-2.0.3"
-      sources."ipaddr.js-1.8.0"
+      sources."ipaddr.js-1.9.0"
       sources."media-typer-0.3.0"
       sources."merge-descriptors-1.0.1"
       sources."methods-1.1.2"
-      sources."mime-1.4.1"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-1.6.0"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."ms-2.0.0"
-      sources."negotiator-0.6.1"
+      sources."negotiator-0.6.2"
       sources."on-finished-2.3.0"
-      sources."parseurl-1.3.2"
+      sources."parseurl-1.3.3"
       sources."path-to-regexp-0.1.7"
-      sources."proxy-addr-2.0.4"
-      sources."qs-6.5.2"
-      sources."range-parser-1.2.0"
-      sources."raw-body-2.3.3"
+      sources."proxy-addr-2.0.5"
+      sources."qs-6.7.0"
+      sources."range-parser-1.2.1"
+      sources."raw-body-2.4.0"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
-      sources."send-0.16.2"
-      sources."serve-static-1.13.2"
-      sources."setprototypeof-1.1.0"
-      sources."statuses-1.4.0"
-      sources."type-is-1.6.16"
+      (sources."send-0.17.1" // {
+        dependencies = [
+          sources."ms-2.1.1"
+        ];
+      })
+      sources."serve-static-1.14.1"
+      sources."setprototypeof-1.1.1"
+      sources."statuses-1.5.0"
+      sources."toidentifier-1.0.0"
+      sources."type-is-1.6.18"
       sources."unpipe-1.0.0"
       sources."utils-merge-1.0.1"
       sources."vary-1.1.2"
@@ -15227,27 +15319,27 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "express-session-^1.14.2" = nodeEnv.buildNodePackage {
     name = "express-session";
     packageName = "express-session";
-    version = "1.15.6";
+    version = "1.16.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/express-session/-/express-session-1.15.6.tgz";
-      sha512 = "r0nrHTCYtAMrFwZ0kBzZEXa1vtPVrw0dKvGSrKP4dahwBQ1BJpF2/y1Pp4sCD/0kvxV4zZeclyvfmw0B4RMJQA==";
+      url = "https://registry.npmjs.org/express-session/-/express-session-1.16.1.tgz";
+      sha512 = "pWvUL8Tl5jUy1MLH7DhgUlpoKeVPUTe+y6WQD9YhcN0C5qAhsh4a8feVjiUXo3TFhIy191YGZ4tewW9edbl2xQ==";
     };
     dependencies = [
       sources."cookie-0.3.1"
       sources."cookie-signature-1.0.6"
-      sources."crc-3.4.4"
       sources."debug-2.6.9"
-      sources."depd-1.1.2"
+      sources."depd-2.0.0"
       sources."ms-2.0.0"
       sources."on-headers-1.0.2"
-      sources."parseurl-1.3.2"
+      sources."parseurl-1.3.3"
       sources."random-bytes-1.0.0"
+      sources."safe-buffer-5.1.2"
       sources."uid-safe-2.1.5"
-      sources."utils-merge-1.0.1"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -15257,6 +15349,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "file-saver-^1.3.3" = nodeEnv.buildNodePackage {
     name = "file-saver";
@@ -15274,14 +15367,15 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "flowchart.js-^1.6.4" = nodeEnv.buildNodePackage {
     name = "flowchart.js";
     packageName = "flowchart.js";
-    version = "1.11.3";
+    version = "1.12.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/flowchart.js/-/flowchart.js-1.11.3.tgz";
-      sha512 = "Hk5vKKsEjYp/Vt4gSRBx39z+6OLwkg3top/EQ4antpZXCVrHLajVGWEqhCPeEBixhzDxAtHdRn4aFEtRhlTzHA==";
+      url = "https://registry.npmjs.org/flowchart.js/-/flowchart.js-1.12.0.tgz";
+      sha512 = "82mj9315e3+U87D147dbPu/MKBqAtngQu3JY1GFG0+3HmsT6yN/PbpI/tmjdchWEU3gAAKuVXxSGT9u3dNvYow==";
     };
     dependencies = [
       sources."eve-raphael-0.5.0"
@@ -15295,6 +15389,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "font-awesome-^4.7.0" = nodeEnv.buildNodePackage {
     name = "font-awesome";
@@ -15312,6 +15407,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "formidable-^1.0.17" = nodeEnv.buildNodePackage {
     name = "formidable";
@@ -15329,6 +15425,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "gist-embed-~2.6.0" = nodeEnv.buildNodePackage {
     name = "gist-embed";
@@ -15346,6 +15443,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "graceful-fs-^4.1.11" = nodeEnv.buildNodePackage {
     name = "graceful-fs";
@@ -15363,22 +15461,23 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "handlebars-^4.0.6" = nodeEnv.buildNodePackage {
     name = "handlebars";
     packageName = "handlebars";
-    version = "4.1.1";
+    version = "4.1.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/handlebars/-/handlebars-4.1.1.tgz";
-      sha512 = "3Zhi6C0euYZL5sM0Zcy7lInLXKQ+YLcF/olbN010mzGQ4XVm50JeyBnMqofHh696GrciGruC7kCcApPDJvVgwA==";
+      url = "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz";
+      sha512 = "nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==";
     };
     dependencies = [
-      sources."commander-2.19.0"
+      sources."commander-2.20.0"
       sources."minimist-0.0.10"
-      sources."neo-async-2.6.0"
+      sources."neo-async-2.6.1"
       sources."optimist-0.6.1"
       sources."source-map-0.6.1"
-      sources."uglify-js-3.5.3"
+      sources."uglify-js-3.6.0"
       sources."wordwrap-0.0.3"
     ];
     buildInputs = globalBuildInputs;
@@ -15389,14 +15488,15 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "helmet-^3.3.0" = nodeEnv.buildNodePackage {
     name = "helmet";
     packageName = "helmet";
-    version = "3.16.0";
+    version = "3.18.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/helmet/-/helmet-3.16.0.tgz";
-      sha512 = "rsTKRogc5OYGlvSHuq5QsmOsOzF6uDoMqpfh+Np8r23+QxDq+SUx90Rf8HyIKQVl7H6NswZEwfcykinbAeZ6UQ==";
+      url = "https://registry.npmjs.org/helmet/-/helmet-3.18.0.tgz";
+      sha512 = "TsKlGE5UVkV0NiQ4PllV9EVfZklPjyzcMEMjWlyI/8S6epqgRT+4s4GHVgc25x0TixsKvp3L7c91HQQt5l0+QA==";
     };
     dependencies = [
       sources."camelize-1.0.0"
@@ -15405,18 +15505,18 @@ in
       sources."depd-2.0.0"
       sources."dns-prefetch-control-0.1.0"
       sources."dont-sniff-mimetype-1.0.0"
-      sources."expect-ct-0.1.1"
-      sources."feature-policy-0.2.0"
-      sources."frameguard-3.0.0"
+      sources."expect-ct-0.2.0"
+      sources."feature-policy-0.3.0"
+      sources."frameguard-3.1.0"
       sources."helmet-crossdomain-0.3.0"
       sources."helmet-csp-2.7.1"
       sources."hide-powered-by-1.0.0"
       sources."hpkp-2.0.0"
       sources."hsts-2.2.0"
       sources."ienoopen-1.1.0"
-      sources."nocache-2.0.0"
+      sources."nocache-2.1.0"
       sources."platform-1.3.5"
-      sources."referrer-policy-1.1.0"
+      sources."referrer-policy-1.2.0"
       sources."x-xss-protection-1.1.0"
     ];
     buildInputs = globalBuildInputs;
@@ -15427,6 +15527,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "highlight.js-~9.12.0" = nodeEnv.buildNodePackage {
     name = "highlight.js";
@@ -15444,6 +15545,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "i18n-^0.8.3" = nodeEnv.buildNodePackage {
     name = "i18n";
@@ -15516,11 +15618,12 @@ in
     buildInputs = globalBuildInputs;
     meta = {
       description = "lightweight translation module with dynamic json storage";
-      homepage = https://github.com/mashpie/i18n-node;
+      homepage = http://github.com/mashpie/i18n-node;
       license = "MIT";
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "imgur-git+https://github.com/hackmdio/node-imgur.git" = nodeEnv.buildNodePackage {
     name = "imgur";
@@ -15543,7 +15646,7 @@ in
       sources."bcrypt-pbkdf-1.0.2"
       sources."brace-expansion-1.1.11"
       sources."caseless-0.12.0"
-      sources."combined-stream-1.0.7"
+      sources."combined-stream-1.0.8"
       sources."commander-2.20.0"
       sources."concat-map-0.0.1"
       sources."core-util-is-1.0.2"
@@ -15558,7 +15661,7 @@ in
       sources."form-data-2.3.3"
       sources."fs.realpath-1.0.0"
       sources."getpass-0.1.7"
-      sources."glob-7.1.3"
+      sources."glob-7.1.4"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.3"
       sources."http-signature-1.2.0"
@@ -15571,15 +15674,15 @@ in
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."minimatch-3.0.4"
       sources."oauth-sign-0.9.0"
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."performance-now-2.1.0"
       sources."pop-iterate-1.0.1"
-      sources."psl-1.1.31"
+      sources."psl-1.1.32"
       sources."punycode-2.1.1"
       sources."q-2.0.3"
       sources."qs-6.5.2"
@@ -15608,6 +15711,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "ionicons-~2.0.1" = nodeEnv.buildNodePackage {
     name = "ionicons";
@@ -15625,14 +15729,15 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "jquery-^3.1.1" = nodeEnv.buildNodePackage {
     name = "jquery";
     packageName = "jquery";
-    version = "3.3.1";
+    version = "3.4.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz";
-      sha512 = "Ubldcmxp5np52/ENotGxlLe6aGMvmF4R8S6tZjsP6Knsaxd/xp3Zrh50cG93lR6nPXyUFwzN3ZSOQI0wRJNdGg==";
+      url = "https://registry.npmjs.org/jquery/-/jquery-3.4.1.tgz";
+      sha512 = "36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -15642,6 +15747,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "jquery-mousewheel-^3.1.13" = nodeEnv.buildNodePackage {
     name = "jquery-mousewheel";
@@ -15658,6 +15764,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "jquery-ui-^1.12.1" = nodeEnv.buildNodePackage {
     name = "jquery-ui";
@@ -15675,6 +15782,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "js-cookie-^2.1.3" = nodeEnv.buildNodePackage {
     name = "js-cookie";
@@ -15692,6 +15800,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "js-url-^2.3.0" = nodeEnv.buildNodePackage {
     name = "js-url";
@@ -15702,7 +15811,7 @@ in
       sha1 = "e0c02b622e89710749399f440d49056e72f70078";
     };
     dependencies = [
-      sources."agent-base-4.2.1"
+      sources."agent-base-4.3.0"
       sources."ansi-regex-2.1.1"
       sources."ansi-styles-3.2.1"
       sources."async-limiter-1.0.0"
@@ -15713,7 +15822,7 @@ in
       sources."cli-1.0.1"
       sources."color-convert-1.9.3"
       sources."color-name-1.1.3"
-      sources."commander-2.19.0"
+      sources."commander-2.20.0"
       sources."concat-map-0.0.1"
       sources."concat-stream-1.6.2"
       sources."console-browserify-1.1.0"
@@ -15744,7 +15853,7 @@ in
       sources."fd-slicer-1.0.1"
       sources."figures-1.7.0"
       sources."fs.realpath-1.0.0"
-      sources."glob-7.1.3"
+      sources."glob-7.1.4"
       sources."grunt-contrib-jshint-2.1.0"
       sources."grunt-contrib-qunit-3.1.0"
       sources."grunt-contrib-uglify-4.0.1"
@@ -15776,7 +15885,7 @@ in
           sources."supports-color-2.0.0"
         ];
       })
-      sources."mime-2.4.1"
+      sources."mime-2.4.3"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
@@ -15792,7 +15901,7 @@ in
       sources."process-nextick-args-2.0.0"
       sources."progress-2.0.3"
       sources."proxy-from-env-1.0.0"
-      sources."puppeteer-1.14.0"
+      sources."puppeteer-1.17.0"
       sources."readable-stream-2.3.6"
       sources."rimraf-2.6.3"
       sources."safe-buffer-5.1.2"
@@ -15803,7 +15912,7 @@ in
       sources."strip-json-comments-1.0.4"
       sources."supports-color-5.5.0"
       sources."typedarray-0.0.6"
-      sources."uglify-js-3.5.3"
+      sources."uglify-js-3.6.0"
       sources."uri-path-1.0.0"
       sources."util-deprecate-1.0.2"
       sources."wrappy-1.0.2"
@@ -15818,6 +15927,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "js-yaml-^3.7.0" = nodeEnv.buildNodePackage {
     name = "js-yaml";
@@ -15840,6 +15950,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "jsdom-nogyp-^0.8.3" = nodeEnv.buildNodePackage {
     name = "jsdom-nogyp";
@@ -15858,7 +15969,7 @@ in
       sources."aws4-1.8.0"
       sources."bcrypt-pbkdf-1.0.2"
       sources."caseless-0.12.0"
-      sources."combined-stream-1.0.7"
+      sources."combined-stream-1.0.8"
       sources."core-util-is-1.0.2"
       sources."cssom-0.2.5"
       (sources."cssstyle-0.2.37" // {
@@ -15893,15 +16004,15 @@ in
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."nwmatcher-1.3.9"
       sources."oauth-sign-0.9.0"
       sources."performance-now-2.1.0"
-      sources."psl-1.1.31"
+      sources."psl-1.1.32"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
-      sources."readable-stream-3.3.0"
+      sources."readable-stream-3.4.0"
       sources."request-2.88.0"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
@@ -15925,11 +16036,12 @@ in
       description = "A JavaScript implementation of the W3C DOM, forked from jsdom, remove dependencies to contextify and node-gyp";
       license = {
         type = "MIT";
-        url = "https://github.com/tmpvar/jsdom/blob/master/LICENSE.txt";
+        url = "http://github.com/tmpvar/jsdom/blob/master/LICENSE.txt";
       };
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "keymaster-^1.6.2" = nodeEnv.buildNodePackage {
     name = "keymaster";
@@ -15946,6 +16058,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "list.js-^1.5.0" = nodeEnv.buildNodePackage {
     name = "list.js";
@@ -15966,6 +16079,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "lodash-^4.17.4" = nodeEnv.buildNodePackage {
     name = "lodash";
@@ -15983,6 +16097,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "lz-string-1.4.4" = nodeEnv.buildNodePackage {
     name = "lz-string";
@@ -16000,6 +16115,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-it-^8.2.2" = nodeEnv.buildNodePackage {
     name = "markdown-it";
@@ -16025,6 +16141,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-it-abbr-^1.0.4" = nodeEnv.buildNodePackage {
     name = "markdown-it-abbr";
@@ -16042,6 +16159,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-it-container-^2.0.0" = nodeEnv.buildNodePackage {
     name = "markdown-it-container";
@@ -16059,6 +16177,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-it-deflist-^2.0.1" = nodeEnv.buildNodePackage {
     name = "markdown-it-deflist";
@@ -16076,6 +16195,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-it-emoji-^1.3.0" = nodeEnv.buildNodePackage {
     name = "markdown-it-emoji";
@@ -16093,6 +16213,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-it-footnote-^3.0.1" = nodeEnv.buildNodePackage {
     name = "markdown-it-footnote";
@@ -16110,6 +16231,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-it-imsize-^2.0.1" = nodeEnv.buildNodePackage {
     name = "markdown-it-imsize";
@@ -16127,6 +16249,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-it-ins-^2.0.0" = nodeEnv.buildNodePackage {
     name = "markdown-it-ins";
@@ -16144,6 +16267,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-it-mark-^2.0.0" = nodeEnv.buildNodePackage {
     name = "markdown-it-mark";
@@ -16161,6 +16285,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-it-mathjax-^2.0.0" = nodeEnv.buildNodePackage {
     name = "markdown-it-mathjax";
@@ -16178,6 +16303,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-it-regexp-^0.4.0" = nodeEnv.buildNodePackage {
     name = "markdown-it-regexp";
@@ -16195,6 +16321,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-it-sub-^1.0.0" = nodeEnv.buildNodePackage {
     name = "markdown-it-sub";
@@ -16212,6 +16339,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-it-sup-^1.0.0" = nodeEnv.buildNodePackage {
     name = "markdown-it-sup";
@@ -16229,6 +16357,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "markdown-pdf-^8.0.0" = nodeEnv.buildNodePackage {
     name = "markdown-pdf";
@@ -16251,7 +16380,7 @@ in
       sources."bcrypt-pbkdf-1.0.2"
       sources."buffer-from-1.1.1"
       sources."caseless-0.12.0"
-      sources."combined-stream-1.0.7"
+      sources."combined-stream-1.0.8"
       sources."commander-2.20.0"
       sources."concat-stream-1.6.2"
       sources."core-util-is-1.0.2"
@@ -16275,7 +16404,7 @@ in
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.3"
       sources."hasha-2.2.0"
-      sources."highlight.js-9.15.6"
+      sources."highlight.js-9.15.8"
       sources."http-signature-1.2.0"
       sources."inherits-2.0.3"
       sources."is-stream-1.1.0"
@@ -16291,8 +16420,8 @@ in
       sources."jsprim-1.4.1"
       sources."kew-0.7.0"
       sources."klaw-1.3.1"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
       sources."ms-2.0.0"
@@ -16305,7 +16434,7 @@ in
       sources."pinkie-promise-2.0.1"
       sources."process-nextick-args-2.0.0"
       sources."progress-1.1.8"
-      sources."psl-1.1.31"
+      sources."psl-1.1.32"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
       sources."readable-stream-2.3.6"
@@ -16347,6 +16476,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "mathjax-~2.7.0" = nodeEnv.buildNodePackage {
     name = "mathjax";
@@ -16364,6 +16494,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "mermaid-~7.1.0" = nodeEnv.buildNodePackage {
     name = "mermaid";
@@ -16391,6 +16522,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "mattermost-^3.4.0" = nodeEnv.buildNodePackage {
     name = "mattermost";
@@ -16402,7 +16534,7 @@ in
     };
     dependencies = [
       sources."async-1.5.2"
-      sources."combined-stream-1.0.7"
+      sources."combined-stream-1.0.8"
       sources."component-emitter-1.2.1"
       sources."cookiejar-2.0.6"
       sources."core-util-is-1.0.2"
@@ -16415,8 +16547,8 @@ in
       sources."isarray-0.0.1"
       sources."methods-1.1.2"
       sources."mime-1.3.4"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."ms-2.0.0"
       sources."qs-2.3.3"
       sources."readable-stream-1.0.27-1"
@@ -16432,6 +16564,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "meta-marked-^0.4.2" = nodeEnv.buildNodePackage {
     name = "meta-marked";
@@ -16456,6 +16589,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "method-override-^2.3.7" = nodeEnv.buildNodePackage {
     name = "method-override";
@@ -16469,7 +16603,7 @@ in
       sources."debug-2.6.9"
       sources."methods-1.1.2"
       sources."ms-2.0.0"
-      sources."parseurl-1.3.2"
+      sources."parseurl-1.3.3"
       sources."vary-1.1.2"
     ];
     buildInputs = globalBuildInputs;
@@ -16480,6 +16614,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "minimist-^1.2.0" = nodeEnv.buildNodePackage {
     name = "minimist";
@@ -16497,6 +16632,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "minio-^6.0.0" = nodeEnv.buildNodePackage {
     name = "minio";
@@ -16518,8 +16654,8 @@ in
       sources."isarray-1.0.0"
       sources."json-stream-1.0.0"
       sources."lodash-4.17.11"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."minimist-0.0.8"
       sources."mkdirp-0.5.1"
       sources."process-nextick-args-2.0.0"
@@ -16553,6 +16689,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "moment-^2.17.1" = nodeEnv.buildNodePackage {
     name = "moment";
@@ -16570,6 +16707,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "morgan-^1.7.0" = nodeEnv.buildNodePackage {
     name = "morgan";
@@ -16597,17 +16735,18 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "mysql-^2.12.0" = nodeEnv.buildNodePackage {
     name = "mysql";
     packageName = "mysql";
-    version = "2.16.0";
+    version = "2.17.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/mysql/-/mysql-2.16.0.tgz";
-      sha512 = "dPbN2LHonQp7D5ja5DJXNbCLe/HRdu+f3v61aguzNRQIrmZLOeRoymBYyeThrR6ug+FqzDL95Gc9maqZUJS+Gw==";
+      url = "https://registry.npmjs.org/mysql/-/mysql-2.17.1.tgz";
+      sha512 = "7vMqHQ673SAk5C8fOzTG2LpPcf3bNt0oL3sFpxPEEFp1mdlDcrLK0On7z8ZYKaaHrHwNcQ/MTUz7/oobZ2OyyA==";
     };
     dependencies = [
-      sources."bignumber.js-4.1.0"
+      sources."bignumber.js-7.2.1"
       sources."core-util-is-1.0.2"
       sources."inherits-2.0.3"
       sources."isarray-1.0.0"
@@ -16626,6 +16765,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "node-uuid-^1.4.7" = nodeEnv.buildNodePackage {
     name = "node-uuid";
@@ -16642,6 +16782,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "octicons-~4.4.0" = nodeEnv.buildNodePackage {
     name = "octicons";
@@ -16659,6 +16800,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "passport-^0.4.0" = nodeEnv.buildNodePackage {
     name = "passport";
@@ -16680,6 +16822,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "passport-dropbox-oauth2-^1.1.0" = nodeEnv.buildNodePackage {
     name = "passport-dropbox-oauth2";
@@ -16707,6 +16850,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "passport-facebook-^2.1.1" = nodeEnv.buildNodePackage {
     name = "passport-facebook";
@@ -16732,6 +16876,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "passport-github-^1.1.0" = nodeEnv.buildNodePackage {
     name = "passport-github";
@@ -16757,6 +16902,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "passport-gitlab2-^4.0.0" = nodeEnv.buildNodePackage {
     name = "passport-gitlab2";
@@ -16782,6 +16928,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "passport-google-oauth20-^1.0.0" = nodeEnv.buildNodePackage {
     name = "passport-google-oauth20";
@@ -16807,6 +16954,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "passport-ldapauth-^2.0.0" = nodeEnv.buildNodePackage {
     name = "passport-ldapauth";
@@ -16819,12 +16967,11 @@ in
     dependencies = [
       sources."@types/body-parser-1.17.0"
       sources."@types/connect-3.4.32"
-      sources."@types/events-3.0.0"
-      sources."@types/express-4.16.1"
-      sources."@types/express-serve-static-core-4.16.2"
-      sources."@types/ldapjs-1.0.3"
+      sources."@types/express-4.17.0"
+      sources."@types/express-serve-static-core-4.16.6"
+      sources."@types/ldapjs-1.0.4"
       sources."@types/mime-2.0.1"
-      sources."@types/node-10.14.4"
+      sources."@types/node-10.14.8"
       sources."@types/passport-1.0.0"
       sources."@types/range-parser-1.2.3"
       sources."@types/serve-static-1.13.2"
@@ -16856,7 +17003,7 @@ in
       sources."mkdirp-0.5.1"
       sources."moment-2.24.0"
       sources."mv-2.1.1"
-      sources."nan-2.13.2"
+      sources."nan-2.14.0"
       sources."ncp-2.0.0"
       sources."once-1.4.0"
       sources."passport-strategy-1.0.0"
@@ -16881,6 +17028,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "passport-local-^1.0.0" = nodeEnv.buildNodePackage {
     name = "passport-local";
@@ -16899,6 +17047,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "passport-oauth2-^1.4.0" = nodeEnv.buildNodePackage {
     name = "passport-oauth2";
@@ -16923,6 +17072,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "passport-twitter-^1.0.4" = nodeEnv.buildNodePackage {
     name = "passport-twitter";
@@ -16948,6 +17098,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "passport-saml-^0.31.0" = nodeEnv.buildNodePackage {
     name = "passport-saml";
@@ -16985,6 +17136,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "passport.socketio-^3.7.0" = nodeEnv.buildNodePackage {
     name = "passport.socketio";
@@ -17005,6 +17157,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "pdfobject-^2.0.201604172" = nodeEnv.buildNodePackage {
     name = "pdfobject";
@@ -17022,6 +17175,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "pg-^6.1.2" = nodeEnv.buildNodePackage {
     name = "pg";
@@ -17054,19 +17208,20 @@ in
     buildInputs = globalBuildInputs;
     meta = {
       description = "PostgreSQL client - pure javascript & libpq with the same API";
-      homepage = https://github.com/brianc/node-postgres;
+      homepage = http://github.com/brianc/node-postgres;
       license = "MIT";
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "pg-hstore-^2.3.2" = nodeEnv.buildNodePackage {
     name = "pg-hstore";
     packageName = "pg-hstore";
-    version = "2.3.2";
+    version = "2.3.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pg-hstore/-/pg-hstore-2.3.2.tgz";
-      sha1 = "f7ef053e7b9b892ae986af2f7cbe86432dfcf24f";
+      url = "https://registry.npmjs.org/pg-hstore/-/pg-hstore-2.3.3.tgz";
+      sha512 = "qpeTpdkguFgfdoidtfeTho1Q1zPVPbtMHgs8eQ+Aan05iLmIs3Z3oo5DOZRclPGoQ4i68I1kCtQSJSa7i0ZVYg==";
     };
     dependencies = [
       sources."underscore-1.9.1"
@@ -17078,6 +17233,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "prismjs-^1.6.0" = nodeEnv.buildNodePackage {
     name = "prismjs";
@@ -17102,6 +17258,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "randomcolor-^0.5.3" = nodeEnv.buildNodePackage {
     name = "randomcolor";
@@ -17119,6 +17276,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "raphael-git+https://github.com/dmitrybaranovskiy/raphael" = nodeEnv.buildNodePackage {
     name = "raphael";
@@ -17140,6 +17298,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "readline-sync-^1.4.7" = nodeEnv.buildNodePackage {
     name = "readline-sync";
@@ -17157,6 +17316,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "request-^2.79.0" = nodeEnv.buildNodePackage {
     name = "request";
@@ -17175,7 +17335,7 @@ in
       sources."aws4-1.8.0"
       sources."bcrypt-pbkdf-1.0.2"
       sources."caseless-0.12.0"
-      sources."combined-stream-1.0.7"
+      sources."combined-stream-1.0.8"
       sources."core-util-is-1.0.2"
       sources."dashdash-1.14.1"
       sources."delayed-stream-1.0.0"
@@ -17197,11 +17357,11 @@ in
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."oauth-sign-0.9.0"
       sources."performance-now-2.1.0"
-      sources."psl-1.1.31"
+      sources."psl-1.1.32"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
       sources."safe-buffer-5.1.2"
@@ -17226,6 +17386,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "reveal.js-~3.6.0" = nodeEnv.buildNodePackage {
     name = "reveal.js";
@@ -17243,6 +17404,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "scrypt-^6.0.3" = nodeEnv.buildNodePackage {
     name = "scrypt";
@@ -17253,7 +17415,7 @@ in
       sha1 = "04e014a5682b53fa50c2d5cce167d719c06d870d";
     };
     dependencies = [
-      sources."nan-2.13.2"
+      sources."nan-2.14.0"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -17263,6 +17425,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "select2-^3.5.2-browserify" = nodeEnv.buildNodePackage {
     name = "select2";
@@ -17279,6 +17442,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "sequelize-^3.28.0" = nodeEnv.buildNodePackage {
     name = "sequelize";
@@ -17290,7 +17454,7 @@ in
     };
     dependencies = [
       sources."@types/geojson-1.0.6"
-      sources."bluebird-3.5.4"
+      sources."bluebird-3.5.5"
       sources."debug-2.6.9"
       sources."depd-1.1.2"
       sources."dottie-1.1.1"
@@ -17298,7 +17462,7 @@ in
       sources."inflection-1.12.0"
       sources."lodash-4.17.11"
       sources."moment-2.24.0"
-      sources."moment-timezone-0.5.23"
+      sources."moment-timezone-0.5.25"
       sources."ms-2.0.0"
       sources."retry-as-promised-2.3.2"
       sources."semver-5.7.0"
@@ -17318,6 +17482,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "sequelize-cli-^2.5.1" = nodeEnv.buildNodePackage {
     name = "sequelize-cli";
@@ -17352,7 +17517,7 @@ in
         ];
       })
       sources."beeper-1.1.1"
-      sources."bluebird-3.5.4"
+      sources."bluebird-3.5.5"
       sources."brace-expansion-1.1.11"
       sources."braces-1.8.5"
       (sources."cache-base-1.0.1" // {
@@ -17392,7 +17557,7 @@ in
       sources."collection-visit-1.0.0"
       sources."color-support-1.1.3"
       sources."commander-2.20.0"
-      sources."component-emitter-1.2.1"
+      sources."component-emitter-1.3.0"
       sources."concat-map-0.0.1"
       sources."config-chain-1.1.12"
       sources."copy-descriptor-0.1.1"
@@ -17424,7 +17589,7 @@ in
       })
       sources."end-of-stream-0.1.5"
       sources."error-ex-1.3.2"
-      sources."es5-ext-0.10.49"
+      sources."es5-ext-0.10.50"
       sources."es6-iterator-2.0.3"
       sources."es6-symbol-3.1.1"
       sources."es6-weak-map-2.0.2"
@@ -17447,7 +17612,7 @@ in
       sources."find-index-0.1.1"
       sources."find-up-2.1.0"
       sources."findup-sync-1.0.0"
-      (sources."fined-1.1.1" // {
+      (sources."fined-1.2.0" // {
         dependencies = [
           sources."expand-tilde-2.0.2"
         ];
@@ -17562,9 +17727,9 @@ in
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
       sources."isobject-2.1.0"
-      (sources."js-beautify-1.9.1" // {
+      (sources."js-beautify-1.10.0" // {
         dependencies = [
-          sources."glob-7.1.3"
+          sources."glob-7.1.4"
           sources."minimatch-3.0.4"
         ];
       })
@@ -17787,7 +17952,7 @@ in
       sources."replace-ext-0.0.1"
       sources."require-directory-2.1.1"
       sources."require-main-filename-1.0.1"
-      sources."resolve-1.10.0"
+      sources."resolve-1.11.1"
       sources."resolve-dir-0.1.1"
       sources."resolve-url-0.2.1"
       sources."ret-0.1.15"
@@ -17945,6 +18110,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "shortid-2.2.8" = nodeEnv.buildNodePackage {
     name = "shortid";
@@ -17962,6 +18128,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "socket.io-~2.0.4" = nodeEnv.buildNodePackage {
     name = "socket.io";
@@ -17972,7 +18139,7 @@ in
       sha1 = "c1a4590ceff87ecf13c72652f046f716b29e6014";
     };
     dependencies = [
-      sources."accepts-1.3.5"
+      sources."accepts-1.3.7"
       sources."after-0.8.2"
       sources."arraybuffer.slice-0.0.7"
       sources."async-limiter-1.0.0"
@@ -18002,10 +18169,10 @@ in
       sources."has-cors-1.1.0"
       sources."indexof-0.0.1"
       sources."isarray-2.0.1"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."ms-2.0.0"
-      sources."negotiator-0.6.1"
+      sources."negotiator-0.6.2"
       sources."object-component-0.0.3"
       sources."parseqs-0.0.5"
       sources."parseuri-0.0.5"
@@ -18032,6 +18199,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "socket.io-client-~2.0.4" = nodeEnv.buildNodePackage {
     name = "socket.io-client";
@@ -18088,6 +18256,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "spin.js-^2.3.2" = nodeEnv.buildNodePackage {
     name = "spin.js";
@@ -18105,14 +18274,15 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "sqlite3-^4.0.1" = nodeEnv.buildNodePackage {
     name = "sqlite3";
     packageName = "sqlite3";
-    version = "4.0.6";
+    version = "4.0.8";
     src = fetchurl {
-      url = "https://registry.npmjs.org/sqlite3/-/sqlite3-4.0.6.tgz";
-      sha512 = "EqBXxHdKiwvNMRCgml86VTL5TK1i0IKiumnfxykX0gh6H6jaKijAXvE9O1N7+omfNSawR2fOmIyJZcfe8HYWpw==";
+      url = "https://registry.npmjs.org/sqlite3/-/sqlite3-4.0.8.tgz";
+      sha512 = "kgwHu4j10KhpCHtx//dejd/tVQot7jc3sw+Sn0vMuKOw0X00Ckyg9VceKgzPyGmmz+zEoYue9tOLriWTvYy0ww==";
     };
     dependencies = [
       sources."abbrev-1.1.1"
@@ -18131,12 +18301,12 @@ in
       sources."caseless-0.12.0"
       sources."chownr-1.1.1"
       sources."code-point-at-1.1.0"
-      sources."combined-stream-1.0.7"
+      sources."combined-stream-1.0.8"
       sources."concat-map-0.0.1"
       sources."console-control-strings-1.1.0"
       sources."core-util-is-1.0.2"
       sources."dashdash-1.14.1"
-      sources."debug-2.6.9"
+      sources."debug-3.2.6"
       sources."deep-extend-0.6.0"
       sources."delayed-stream-1.0.0"
       sources."delegates-1.0.0"
@@ -18148,11 +18318,11 @@ in
       sources."fast-json-stable-stringify-2.0.0"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."fs-minipass-1.2.5"
+      sources."fs-minipass-1.2.6"
       sources."fs.realpath-1.0.0"
       sources."gauge-2.7.4"
       sources."getpass-0.1.7"
-      sources."glob-7.1.3"
+      sources."glob-7.1.4"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.3"
       sources."has-unicode-2.0.1"
@@ -18171,16 +18341,16 @@ in
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.8"
       sources."minipass-2.3.5"
       sources."minizlib-1.2.1"
       sources."mkdirp-0.5.1"
-      sources."ms-2.0.0"
-      sources."nan-2.10.0"
-      sources."needle-2.2.4"
+      sources."ms-2.1.1"
+      sources."nan-2.14.0"
+      sources."needle-2.4.0"
       sources."node-pre-gyp-0.11.0"
       sources."nopt-4.0.1"
       sources."npm-bundled-1.0.6"
@@ -18196,7 +18366,7 @@ in
       sources."path-is-absolute-1.0.1"
       sources."performance-now-2.1.0"
       sources."process-nextick-args-2.0.0"
-      sources."psl-1.1.31"
+      sources."psl-1.1.32"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
       (sources."rc-1.2.8" // {
@@ -18218,7 +18388,7 @@ in
       sources."string_decoder-1.1.1"
       sources."strip-ansi-3.0.1"
       sources."strip-json-comments-2.0.1"
-      sources."tar-4.4.8"
+      sources."tar-4.4.10"
       (sources."tough-cookie-2.4.3" // {
         dependencies = [
           sources."punycode-1.4.1"
@@ -18237,11 +18407,12 @@ in
     buildInputs = globalBuildInputs;
     meta = {
       description = "Asynchronous, non-blocking SQLite3 bindings";
-      homepage = https://github.com/mapbox/node-sqlite3;
+      homepage = http://github.com/mapbox/node-sqlite3;
       license = "BSD-3-Clause";
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "store-^2.0.12" = nodeEnv.buildNodePackage {
     name = "store";
@@ -18259,6 +18430,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "string-^3.3.3" = nodeEnv.buildNodePackage {
     name = "string";
@@ -18276,6 +18448,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "tedious-^1.14.0" = nodeEnv.buildNodePackage {
     name = "tedious";
@@ -18289,7 +18462,7 @@ in
       sources."babel-runtime-6.26.0"
       sources."big-number-0.3.1"
       sources."bl-1.2.2"
-      sources."core-js-2.6.5"
+      sources."core-js-2.6.9"
       sources."core-util-is-1.0.2"
       sources."dns-lookup-all-1.0.2"
       sources."iconv-lite-0.4.24"
@@ -18313,6 +18486,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "to-markdown-^3.0.3" = nodeEnv.buildNodePackage {
     name = "to-markdown";
@@ -18337,7 +18511,7 @@ in
       sources."block-elements-1.2.0"
       sources."caseless-0.12.0"
       sources."collapse-whitespace-1.1.2"
-      sources."combined-stream-1.0.7"
+      sources."combined-stream-1.0.8"
       sources."content-type-parser-1.0.2"
       sources."core-util-is-1.0.2"
       sources."cssom-0.3.6"
@@ -18372,15 +18546,15 @@ in
       sources."json-stringify-safe-5.0.1"
       sources."jsprim-1.4.1"
       sources."levn-0.3.0"
-      sources."mime-db-1.38.0"
-      sources."mime-types-2.1.22"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
       sources."nwmatcher-1.4.4"
       sources."oauth-sign-0.9.0"
       sources."optionator-0.8.2"
       sources."parse5-1.5.1"
       sources."performance-now-2.1.0"
       sources."prelude-ls-1.1.2"
-      sources."psl-1.1.31"
+      sources."psl-1.1.32"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
       (sources."request-2.88.0" // {
@@ -18422,6 +18596,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "toobusy-js-^0.5.1" = nodeEnv.buildNodePackage {
     name = "toobusy-js";
@@ -18439,6 +18614,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "uuid-^3.1.0" = nodeEnv.buildNodePackage {
     name = "uuid";
@@ -18456,6 +18632,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "uws-~0.14.1" = nodeEnv.buildNodePackage {
     name = "uws";
@@ -18473,6 +18650,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "validator-^10.4.0" = nodeEnv.buildNodePackage {
     name = "validator";
@@ -18490,6 +18668,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "velocity-animate-^1.4.0" = nodeEnv.buildNodePackage {
     name = "velocity-animate";
@@ -18507,6 +18686,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "visibilityjs-^1.2.4" = nodeEnv.buildNodePackage {
     name = "visibilityjs";
@@ -18524,6 +18704,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "viz.js-^1.7.0" = nodeEnv.buildNodePackage {
     name = "viz.js";
@@ -18541,6 +18722,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "winston-^2.3.0" = nodeEnv.buildNodePackage {
     name = "winston";
@@ -18566,6 +18748,7 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
   "xss-^1.0.3" = nodeEnv.buildNodePackage {
     name = "xss";
@@ -18587,5 +18770,6 @@ in
     };
     production = true;
     bypassCache = true;
+    reconstructLock = true;
   };
 }
\ No newline at end of file
diff --git a/nixpkgs/pkgs/servers/web-apps/codimd/node.nix b/nixpkgs/pkgs/servers/web-apps/codimd/node.nix
index abcf470ca088..0983d3e127be 100644
--- a/nixpkgs/pkgs/servers/web-apps/codimd/node.nix
+++ b/nixpkgs/pkgs/servers/web-apps/codimd/node.nix
@@ -1,4 +1,4 @@
-# This file has been generated by node2nix 1.6.0. Do not edit!
+# This file has been generated by node2nix 1.7.0. Do not edit!
 
 {pkgs ? import <nixpkgs> {
     inherit system;
@@ -14,4 +14,4 @@ in
 import ./node-packages.nix {
   inherit (pkgs) fetchurl fetchgit;
   inherit nodeEnv;
-}
+}
\ No newline at end of file
diff --git a/nixpkgs/pkgs/servers/web-apps/cryptpad/bower-packages.nix b/nixpkgs/pkgs/servers/web-apps/cryptpad/bower-packages.nix
new file mode 100644
index 000000000000..72511c16eeba
--- /dev/null
+++ b/nixpkgs/pkgs/servers/web-apps/cryptpad/bower-packages.nix
@@ -0,0 +1,39 @@
+# Generated by bower2nix v3.2.0 (https://github.com/rvl/bower2nix)
+{ fetchbower, buildEnv }:
+buildEnv { name = "bower-env"; ignoreCollisions = true; paths = [
+  (fetchbower "jquery" "2.1.4" "~2.1.3" "1ywrpk2xsr6ghkm3j9gfnl9r3jn6xarfamp99b0bcm57kq9fm2k0")
+  (fetchbower "tweetnacl" "0.12.2" "0.12.2" "1lfzbfrdaly3zyzbcp1p53yhxlrx56k8x04q924kg7l52gblm65g")
+  (fetchbower "components-font-awesome" "4.7.0" "^4.6.3" "1w27im6ayjrbgjqa0i49ml5d3wy4ld40h9b29hz9myv77bpx4lg1")
+  (fetchbower "ckeditor" "4.7.3" "4.7.3" "02bism1gc0pccdxsp361hsrn9p4jh24dnxh40rv3xikr3g91b414")
+  (fetchbower "codemirror" "5.47.0" "^5.19.0" "0h9kjmljd9i5hsdk53f6klx3k8vf9kfn14j0s7k3ivb5d0x0r1p4")
+  (fetchbower "requirejs" "2.3.5" "2.3.5" "05lyvgz914h2w08r24rk0vkk3yxmqrvlg7j3i5av9ffkg9lpzsli")
+  (fetchbower "marked" "0.5.0" "0.5.0" "00lclh9xfbhbjzzbbfjnfpr949hmqmr04jx2hq7mdc9f74xinj1r")
+  (fetchbower "rangy" "rangy-release#1.3.0" "rangy-release#~1.3.0" "13x3wci003p8jyv2ncir0k23bxckx99b3555r0zvgmlwycg7w0zv")
+  (fetchbower "json.sortify" "2.1.0" "~2.1.0" "1rz9xz0gnm4ak31n10vhslqsw8fw493gjylwj8xsy3bxqq1ygpnh")
+  (fetchbower "secure-fabric.js" "secure-v1.7.9" "secure-v1.7.9" "1l56mk7hbnsm9cdg5zdcmg95p7a9w96dq0bbl8fp11vs0awjil7a")
+  (fetchbower "hyperjson" "1.4.0" "~1.4.0" "1n68ls3x4lyhg1yy8i4q3xkgh5xqpyakf45sny4x91mkr68x4bd9")
+  (fetchbower "chainpad-crypto" "0.2.2" "^0.2.0" "1zmhc24zgg7jkb6c7r5syhxmlk61vmcsa2l0ip37dk52ygl6yfg5")
+  (fetchbower "chainpad-listmap" "0.5.2" "^0.5.0" "0zmg6y5pzf75i84mlnvif6v1g7f4s1vyyzd6ng9ql4b9sdlf4zpc")
+  (fetchbower "chainpad" "5.1.2" "^5.1.0" "1qzdbaf15vaz2573dzm4sxi28m56hi1gi2z00f5ilayxshrbdrlc")
+  (fetchbower "file-saver" "1.3.1" "1.3.1" "065nzkvdiicxnw06z1sjz1sbp9nyis8z839hv6ng1fk25dc5kvkg")
+  (fetchbower "alertifyjs" "1.0.11" "1.0.11" "0v7323bzq90k35shm3h6azj4wd9la3kbi1va1pw4qyvndkwma69l")
+  (fetchbower "scrypt-async" "1.2.0" "1.2.0" "0d076ax708p9b8hcmk4f82j925nlnm0hmp0ni45ql37g7iirfpyv")
+  (fetchbower "require-css" "0.1.10" "0.1.10" "106gz9i76v71q9zx2pnqkkj342m630lvssnw54023a0ljc0gqcwq")
+  (fetchbower "less" "3.7.1" "3.7.1" "1n7ps4xlbrc9m63b3q62mg3p6i7d5hwchhpjshb0drzj5crvz556")
+  (fetchbower "bootstrap" "4.3.1" "^v4.0.0" "081xw746bshhy8m14x7y8y6ryl38jz3l5545v62vjzr6b4609xd9")
+  (fetchbower "diff-dom" "2.1.1" "2.1.1" "0nrn6xqlhp0p5ixjxdk8qg3939crkggh1l8swd20d7bsz186l5f1")
+  (fetchbower "nthen" "0.1.7" "^0.1.5" "1bxfjw7qzs0sidv6wf1rjrj4fm0x0j7pr5yi3v4nw3d7cjjgd3wg")
+  (fetchbower "open-sans-fontface" "1.4.2" "^1.4.2" "0ksav1fcq640fmdz49ra4prwsrrfj35y2p4shx1jh1j7zxd044nf")
+  (fetchbower "bootstrap-tokenfield" "0.12.1" "^0.12.1" "0ib1v5k8h360sp19yiy7q92rfaz2554fvwwg2ixmxn01ydqlprw6")
+  (fetchbower "bootstrap" "3.1.1" "~3.1.1" "06bhjwa8p7mzbpr3jkgydd804z1nwrkdql66h7jkfml99psv9811")
+  (fetchbower "localforage" "1.7.3" "^1.5.2" "0q1a996j4dn246xp55zldfh07s9m9skhnf9i0g1w4ngwsnqx23rw")
+  (fetchbower "html2canvas" "0.4.1" "^0.4.1" "0yg7y90nav068q0i5afc2c221zkddpf28hi0hwc46cawx4180c69")
+  (fetchbower "croppie" "2.6.4" "^2.5.0" "1lcdsjdc4xz7a3sii836g40wx15223sxng53mnf3g7h7s5y84h1x")
+  (fetchbower "sortablejs" "1.9.0" "^1.6.0" "12gncd70fi3craqqpb3la12hg7pm2wf4y01l1r2vvmnzmb5apdan")
+  (fetchbower "saferphore" "0.0.1" "^0.0.1" "1wfr9wpbm3lswmvy2p0247ydb108h4qh5s286py89k871qh6jwdi")
+  (fetchbower "jszip" "Stuk/jszip#3.2.0" "Stuk/jszip#^3.1.5" "1gyhm07dsqw2bmj6xddfk91f05gj7xd3gxjd94lsxy8z66z6zia5")
+  (fetchbower "requirejs-plugins" "1.0.3" "^1.0.3" "00s3sdz1ykygx5shldwhhhybwgw7c99vkqd94i5i5x0gl97ifxf5")
+  (fetchbower "chainpad-netflux" "0.7.5" "^0.7.0" "1dgi1x00msbr203xf3lz8pqhd0w2h5nqa3pqzly1559jfxbyw8g0")
+  (fetchbower "netflux-websocket" "0.1.19" "^0.1.19" "0gzn4bxa6biad083aawn6qpwmg3raqb059mapzalaqjb9bvs8x26")
+  (fetchbower "es6-promise" "3.3.1" "^3.2.2" "0ai6z5admfs84fdx6663ips49kqgz4x68ays78cic0xfb7pp6vcz")
+]; }
diff --git a/nixpkgs/pkgs/servers/web-apps/cryptpad/default.nix b/nixpkgs/pkgs/servers/web-apps/cryptpad/default.nix
new file mode 100644
index 000000000000..679cedf25227
--- /dev/null
+++ b/nixpkgs/pkgs/servers/web-apps/cryptpad/default.nix
@@ -0,0 +1,76 @@
+{ stdenv
+, pkgs
+, lib
+, buildBowerComponents
+, fetchurl
+, nodejs
+}:
+
+let
+  nodePackages = import ./node-packages.nix {
+    inherit pkgs nodejs;
+    inherit (stdenv.hostPlatform) system;
+  };
+
+  bowerPackages = buildBowerComponents {
+    name = "${cryptpad.name}-bower-packages";
+    # this list had to be tweaked by hand:
+    # * remove the # in the sortablejs dependency
+    # * add the second bootstrap ~3.1.1 entry
+    generated = ./bower-packages.nix;
+    src = cryptpad.src;
+  };
+
+  # find an element in an attribute set
+  findValue = pred: default: set:
+    let
+      list =
+        lib.concatMap
+        (name:
+          let v = set.${name}; in
+          if pred name v then [v] else []
+        )
+        (lib.attrNames set)
+        ;
+    in
+      if list == [] then default
+      else lib.head list
+      ;
+
+  # The cryptpad package attribute key changes for each release. Get it out
+  # programatically instead.
+  cryptpad = findValue
+    (k: v: v.packageName == "cryptpad")
+    (throw "cryptpad not found")
+    nodePackages
+    ;
+
+  # Get the patched load-config.js that allows loading config from the env
+  dynamicConfig = fetchurl {
+    url = "https://raw.githubusercontent.com/zimbatm/cryptpad/35dd3abbb5ef6e3f9d5fb0b31b693c430d159b4a/lib/load-config.js";
+    sha256 = "1ch6r4fkcvyxhc501nmdc39zpnxcqwgwkj7nb39ayflkhil19f6a";
+  };
+
+  combined = cryptpad.override {
+    postInstall = ''
+      out_cryptpad=$out/lib/node_modules/cryptpad
+
+      # add the bower components
+      ln -sv \
+        ${bowerPackages}/bower_components \
+        $out_cryptpad/www/bower_components
+
+      # patch the load-config.js file
+      cp ${dynamicConfig} $out_cryptpad/lib/load-config.js
+
+      # add executable
+      mkdir $out/bin
+      cat <<EOF > $out/bin/cryptpad
+      #!${stdenv.shell}
+      exec ${nodejs}/bin/node $out_cryptpad/server.js
+      EOF
+      chmod +x $out/bin/cryptpad
+    '';
+  };
+in
+  combined
diff --git a/nixpkgs/pkgs/servers/web-apps/cryptpad/generate.sh b/nixpkgs/pkgs/servers/web-apps/cryptpad/generate.sh
new file mode 100755
index 000000000000..fd3c93368912
--- /dev/null
+++ b/nixpkgs/pkgs/servers/web-apps/cryptpad/generate.sh
@@ -0,0 +1,11 @@
+#!/usr/bin/env nix-shell
+#! nix-shell -i bash -p nodePackages.node2nix nodePackages.bower2nix
+set -euo pipefail
+
+node2nix -6 \
+     --input node-packages.json \
+     --output node-packages-generated.nix \
+     --composition node-packages.nix \
+     --node-env ../../../development/node-packages/node-env.nix \
+
+# TODO: bower2nix > bower-packages.nix
diff --git a/nixpkgs/pkgs/servers/web-apps/cryptpad/node-packages-generated.nix b/nixpkgs/pkgs/servers/web-apps/cryptpad/node-packages-generated.nix
new file mode 100644
index 000000000000..f53a1dcf66b1
--- /dev/null
+++ b/nixpkgs/pkgs/servers/web-apps/cryptpad/node-packages-generated.nix
@@ -0,0 +1,746 @@
+# This file has been generated by node2nix 1.7.0. Do not edit!
+
+{nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}:
+
+let
+  sources = {
+    "accepts-1.3.7" = {
+      name = "accepts";
+      packageName = "accepts";
+      version = "1.3.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz";
+        sha512 = "Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==";
+      };
+    };
+    "array-flatten-1.1.1" = {
+      name = "array-flatten";
+      packageName = "array-flatten";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz";
+        sha1 = "9a5f699051b1e7073328f2a008968b64ea2955d2";
+      };
+    };
+    "async-limiter-1.0.0" = {
+      name = "async-limiter";
+      packageName = "async-limiter";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz";
+        sha512 = "jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==";
+      };
+    };
+    "body-parser-1.18.3" = {
+      name = "body-parser";
+      packageName = "body-parser";
+      version = "1.18.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz";
+        sha1 = "5b292198ffdd553b3a0f20ded0592b956955c8b4";
+      };
+    };
+    "bytes-3.0.0" = {
+      name = "bytes";
+      packageName = "bytes";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz";
+        sha1 = "d32815404d689699f85a4ea4fa8755dd13a96048";
+      };
+    };
+    "chainpad-server-3.0.2" = {
+      name = "chainpad-server";
+      packageName = "chainpad-server";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chainpad-server/-/chainpad-server-3.0.2.tgz";
+        sha512 = "c5aEljVAapDKKs0+Rt2jymKAszm8X4ZeLFNJj1yxflwBqoh0jr8OANYvbfjtNaYFe2Wdflp/1i4gibYX4IMc+g==";
+      };
+    };
+    "content-disposition-0.5.2" = {
+      name = "content-disposition";
+      packageName = "content-disposition";
+      version = "0.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz";
+        sha1 = "0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4";
+      };
+    };
+    "content-type-1.0.4" = {
+      name = "content-type";
+      packageName = "content-type";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz";
+        sha512 = "hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==";
+      };
+    };
+    "cookie-0.3.1" = {
+      name = "cookie";
+      packageName = "cookie";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz";
+        sha1 = "e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb";
+      };
+    };
+    "cookie-signature-1.0.6" = {
+      name = "cookie-signature";
+      packageName = "cookie-signature";
+      version = "1.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz";
+        sha1 = "e303a882b342cc3ee8ca513a79999734dab3ae2c";
+      };
+    };
+    "debug-2.6.9" = {
+      name = "debug";
+      packageName = "debug";
+      version = "2.6.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz";
+        sha512 = "bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==";
+      };
+    };
+    "depd-1.1.2" = {
+      name = "depd";
+      packageName = "depd";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz";
+        sha1 = "9bcd52e14c097763e749b274c4346ed2e560b5a9";
+      };
+    };
+    "destroy-1.0.4" = {
+      name = "destroy";
+      packageName = "destroy";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz";
+        sha1 = "978857442c44749e4206613e37946205826abd80";
+      };
+    };
+    "ee-first-1.1.1" = {
+      name = "ee-first";
+      packageName = "ee-first";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz";
+        sha1 = "590c61156b0ae2f4f0255732a158b266bc56b21d";
+      };
+    };
+    "encodeurl-1.0.2" = {
+      name = "encodeurl";
+      packageName = "encodeurl";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz";
+        sha1 = "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59";
+      };
+    };
+    "escape-html-1.0.3" = {
+      name = "escape-html";
+      packageName = "escape-html";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz";
+        sha1 = "0258eae4d3d0c0974de1c169188ef0051d1d1988";
+      };
+    };
+    "etag-1.8.1" = {
+      name = "etag";
+      packageName = "etag";
+      version = "1.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz";
+        sha1 = "41ae2eeb65efa62268aebfea83ac7d79299b0887";
+      };
+    };
+    "express-4.16.4" = {
+      name = "express";
+      packageName = "express";
+      version = "4.16.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/express/-/express-4.16.4.tgz";
+        sha512 = "j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==";
+      };
+    };
+    "finalhandler-1.1.1" = {
+      name = "finalhandler";
+      packageName = "finalhandler";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz";
+        sha512 = "Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==";
+      };
+    };
+    "forwarded-0.1.2" = {
+      name = "forwarded";
+      packageName = "forwarded";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz";
+        sha1 = "98c23dab1175657b8c0573e8ceccd91b0ff18c84";
+      };
+    };
+    "fresh-0.5.2" = {
+      name = "fresh";
+      packageName = "fresh";
+      version = "0.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz";
+        sha1 = "3d8cadd90d976569fa835ab1f8e4b23a105605a7";
+      };
+    };
+    "fs-extra-7.0.1" = {
+      name = "fs-extra";
+      packageName = "fs-extra";
+      version = "7.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz";
+        sha512 = "YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==";
+      };
+    };
+    "gar-1.0.4" = {
+      name = "gar";
+      packageName = "gar";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gar/-/gar-1.0.4.tgz";
+        sha512 = "w4n9cPWyP7aHxKxYHFQMegj7WIAsL/YX/C4Bs5Rr8s1H9M1rNtRWRsw+ovYMkXDQ5S4ZbYHsHAPmevPjPgw44w==";
+      };
+    };
+    "get-folder-size-2.0.1" = {
+      name = "get-folder-size";
+      packageName = "get-folder-size";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-folder-size/-/get-folder-size-2.0.1.tgz";
+        sha512 = "+CEb+GDCM7tkOS2wdMKTn9vU7DgnKUTuDlehkNJKNSovdCOVxs14OfKCk4cvSaR3za4gj+OBdl9opPN9xrJ0zA==";
+      };
+    };
+    "graceful-fs-4.1.15" = {
+      name = "graceful-fs";
+      packageName = "graceful-fs";
+      version = "4.1.15";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz";
+        sha512 = "6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==";
+      };
+    };
+    "http-errors-1.6.3" = {
+      name = "http-errors";
+      packageName = "http-errors";
+      version = "1.6.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz";
+        sha1 = "8b55680bb4be283a0b5bf4ea2e38580be1d9320d";
+      };
+    };
+    "iconv-lite-0.4.23" = {
+      name = "iconv-lite";
+      packageName = "iconv-lite";
+      version = "0.4.23";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz";
+        sha512 = "neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==";
+      };
+    };
+    "inherits-2.0.3" = {
+      name = "inherits";
+      packageName = "inherits";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz";
+        sha1 = "633c2c83e3da42a502f52466022480f4208261de";
+      };
+    };
+    "ipaddr.js-1.9.0" = {
+      name = "ipaddr.js";
+      packageName = "ipaddr.js";
+      version = "1.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz";
+        sha512 = "M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==";
+      };
+    };
+    "jsonfile-4.0.0" = {
+      name = "jsonfile";
+      packageName = "jsonfile";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz";
+        sha1 = "8771aae0799b64076b76640fca058f9c10e33ecb";
+      };
+    };
+    "lex-1.7.9" = {
+      name = "lex";
+      packageName = "lex";
+      version = "1.7.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lex/-/lex-1.7.9.tgz";
+        sha1 = "5d5636ccef574348362938b79a47f0eed8ed0d43";
+      };
+    };
+    "looper-3.0.0" = {
+      name = "looper";
+      packageName = "looper";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/looper/-/looper-3.0.0.tgz";
+        sha1 = "2efa54c3b1cbaba9b94aee2e5914b0be57fbb749";
+      };
+    };
+    "media-typer-0.3.0" = {
+      name = "media-typer";
+      packageName = "media-typer";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz";
+        sha1 = "8710d7af0aa626f8fffa1ce00168545263255748";
+      };
+    };
+    "merge-descriptors-1.0.1" = {
+      name = "merge-descriptors";
+      packageName = "merge-descriptors";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz";
+        sha1 = "b00aaa556dd8b44568150ec9d1b953f3f90cbb61";
+      };
+    };
+    "methods-1.1.2" = {
+      name = "methods";
+      packageName = "methods";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz";
+        sha1 = "5529a4d67654134edcc5266656835b0f851afcee";
+      };
+    };
+    "mime-1.4.1" = {
+      name = "mime";
+      packageName = "mime";
+      version = "1.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz";
+        sha512 = "KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==";
+      };
+    };
+    "mime-db-1.40.0" = {
+      name = "mime-db";
+      packageName = "mime-db";
+      version = "1.40.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz";
+        sha512 = "jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==";
+      };
+    };
+    "mime-types-2.1.24" = {
+      name = "mime-types";
+      packageName = "mime-types";
+      version = "2.1.24";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz";
+        sha512 = "WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==";
+      };
+    };
+    "ms-2.0.0" = {
+      name = "ms";
+      packageName = "ms";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz";
+        sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8";
+      };
+    };
+    "negotiator-0.6.2" = {
+      name = "negotiator";
+      packageName = "negotiator";
+      version = "0.6.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz";
+        sha512 = "hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==";
+      };
+    };
+    "nthen-0.1.8" = {
+      name = "nthen";
+      packageName = "nthen";
+      version = "0.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/nthen/-/nthen-0.1.8.tgz";
+        sha512 = "Oh2CwIbhj+wUT94lQV7LKmmgw3UYAGGd8oLIqp6btQN3Bz3PuWp4BuvtUo35H3rqDknjPfKx5P6mt7v+aJNjcw==";
+      };
+    };
+    "on-finished-2.3.0" = {
+      name = "on-finished";
+      packageName = "on-finished";
+      version = "2.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz";
+        sha1 = "20f1336481b083cd75337992a16971aa2d906947";
+      };
+    };
+    "options-0.0.6" = {
+      name = "options";
+      packageName = "options";
+      version = "0.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/options/-/options-0.0.6.tgz";
+        sha1 = "ec22d312806bb53e731773e7cdaefcf1c643128f";
+      };
+    };
+    "parseurl-1.3.3" = {
+      name = "parseurl";
+      packageName = "parseurl";
+      version = "1.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz";
+        sha512 = "CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==";
+      };
+    };
+    "path-to-regexp-0.1.7" = {
+      name = "path-to-regexp";
+      packageName = "path-to-regexp";
+      version = "0.1.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz";
+        sha1 = "df604178005f522f15eb4490e7247a1bfaa67f8c";
+      };
+    };
+    "proxy-addr-2.0.5" = {
+      name = "proxy-addr";
+      packageName = "proxy-addr";
+      version = "2.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz";
+        sha512 = "t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==";
+      };
+    };
+    "pull-stream-3.6.12" = {
+      name = "pull-stream";
+      packageName = "pull-stream";
+      version = "3.6.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pull-stream/-/pull-stream-3.6.12.tgz";
+        sha512 = "+LO1XIVyTMmeoH26UHznpgrgX2npTVYccTkMpgk/EyiQjFt1FmoNm+w+/zMLuz9U3bpvT5sSUicMKEe/2JjgEA==";
+      };
+    };
+    "qs-6.5.2" = {
+      name = "qs";
+      packageName = "qs";
+      version = "6.5.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz";
+        sha512 = "N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==";
+      };
+    };
+    "range-parser-1.2.1" = {
+      name = "range-parser";
+      packageName = "range-parser";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz";
+        sha512 = "Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==";
+      };
+    };
+    "raw-body-2.3.3" = {
+      name = "raw-body";
+      packageName = "raw-body";
+      version = "2.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz";
+        sha512 = "9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==";
+      };
+    };
+    "replify-1.2.0" = {
+      name = "replify";
+      packageName = "replify";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/replify/-/replify-1.2.0.tgz";
+        sha1 = "940166d207d10e98614fe49253ad2f0ac019f7e1";
+      };
+    };
+    "safe-buffer-5.1.2" = {
+      name = "safe-buffer";
+      packageName = "safe-buffer";
+      version = "5.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz";
+        sha512 = "Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==";
+      };
+    };
+    "safer-buffer-2.1.2" = {
+      name = "safer-buffer";
+      packageName = "safer-buffer";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz";
+        sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
+      };
+    };
+    "saferphore-0.0.1" = {
+      name = "saferphore";
+      packageName = "saferphore";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/saferphore/-/saferphore-0.0.1.tgz";
+        sha1 = "cc962eda4e2b2452e6437fd32dcfb6f69ef2ea63";
+      };
+    };
+    "send-0.16.2" = {
+      name = "send";
+      packageName = "send";
+      version = "0.16.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/send/-/send-0.16.2.tgz";
+        sha512 = "E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==";
+      };
+    };
+    "serve-static-1.13.2" = {
+      name = "serve-static";
+      packageName = "serve-static";
+      version = "1.13.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz";
+        sha512 = "p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==";
+      };
+    };
+    "setprototypeof-1.1.0" = {
+      name = "setprototypeof";
+      packageName = "setprototypeof";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz";
+        sha512 = "BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==";
+      };
+    };
+    "sortify-1.0.4" = {
+      name = "sortify";
+      packageName = "sortify";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sortify/-/sortify-1.0.4.tgz";
+        sha1 = "f0178687c83231be8a34fc0ec5462ea957b60284";
+      };
+    };
+    "statuses-1.4.0" = {
+      name = "statuses";
+      packageName = "statuses";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz";
+        sha512 = "zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==";
+      };
+    };
+    "stream-to-pull-stream-1.7.3" = {
+      name = "stream-to-pull-stream";
+      packageName = "stream-to-pull-stream";
+      version = "1.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stream-to-pull-stream/-/stream-to-pull-stream-1.7.3.tgz";
+        sha512 = "6sNyqJpr5dIOQdgNy/xcDWwDuzAsAwVzhzrWlAPAQ7Lkjx/rv0wgvxEyKwTq6FmNd5rjTrELt/CLmaSw7crMGg==";
+      };
+    };
+    "tiny-each-async-2.0.3" = {
+      name = "tiny-each-async";
+      packageName = "tiny-each-async";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tiny-each-async/-/tiny-each-async-2.0.3.tgz";
+        sha1 = "8ebbbfd6d6295f1370003fbb37162afe5a0a51d1";
+      };
+    };
+    "tweetnacl-0.12.2" = {
+      name = "tweetnacl";
+      packageName = "tweetnacl";
+      version = "0.12.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.12.2.tgz";
+        sha1 = "bd59f890507856fb0a1136acc3a8b44547e29ddb";
+      };
+    };
+    "type-is-1.6.18" = {
+      name = "type-is";
+      packageName = "type-is";
+      version = "1.6.18";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz";
+        sha512 = "TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==";
+      };
+    };
+    "ultron-1.0.2" = {
+      name = "ultron";
+      packageName = "ultron";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz";
+        sha1 = "ace116ab557cd197386a4e88f4685378c8b2e4fa";
+      };
+    };
+    "ultron-1.1.1" = {
+      name = "ultron";
+      packageName = "ultron";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz";
+        sha512 = "UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==";
+      };
+    };
+    "universalify-0.1.2" = {
+      name = "universalify";
+      packageName = "universalify";
+      version = "0.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz";
+        sha512 = "rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==";
+      };
+    };
+    "unpipe-1.0.0" = {
+      name = "unpipe";
+      packageName = "unpipe";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz";
+        sha1 = "b2bf4ee8514aae6165b4817829d21b2ef49904ec";
+      };
+    };
+    "utils-merge-1.0.1" = {
+      name = "utils-merge";
+      packageName = "utils-merge";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz";
+        sha1 = "9f95710f50a267947b2ccc124741c1028427e713";
+      };
+    };
+    "vary-1.1.2" = {
+      name = "vary";
+      packageName = "vary";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz";
+        sha1 = "2299f02c6ded30d4a5961b0b9f74524a18f634fc";
+      };
+    };
+    "ws-1.1.5" = {
+      name = "ws";
+      packageName = "ws";
+      version = "1.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ws/-/ws-1.1.5.tgz";
+        sha512 = "o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==";
+      };
+    };
+    "ws-3.3.3" = {
+      name = "ws";
+      packageName = "ws";
+      version = "3.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz";
+        sha512 = "nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==";
+      };
+    };
+  };
+in
+{
+  "cryptpad-git+https://github.com/xwiki-labs/cryptpad.git#2.23.0" = nodeEnv.buildNodePackage {
+    name = "cryptpad";
+    packageName = "cryptpad";
+    version = "2.23.0";
+    src = fetchgit {
+      url = "https://github.com/xwiki-labs/cryptpad.git";
+      rev = "980e3f964a5b8bcd7c33da92dbe005f42b20cb30";
+      sha256 = "a094708e4a275ee55ca3a59a2890f20f2f9f7dcfe50274b7e3ecd260502c583b";
+    };
+    dependencies = [
+      sources."accepts-1.3.7"
+      sources."array-flatten-1.1.1"
+      sources."async-limiter-1.0.0"
+      sources."body-parser-1.18.3"
+      sources."bytes-3.0.0"
+      (sources."chainpad-server-3.0.2" // {
+        dependencies = [
+          sources."ws-3.3.3"
+        ];
+      })
+      sources."content-disposition-0.5.2"
+      sources."content-type-1.0.4"
+      sources."cookie-0.3.1"
+      sources."cookie-signature-1.0.6"
+      sources."debug-2.6.9"
+      sources."depd-1.1.2"
+      sources."destroy-1.0.4"
+      sources."ee-first-1.1.1"
+      sources."encodeurl-1.0.2"
+      sources."escape-html-1.0.3"
+      sources."etag-1.8.1"
+      sources."express-4.16.4"
+      sources."finalhandler-1.1.1"
+      sources."forwarded-0.1.2"
+      sources."fresh-0.5.2"
+      sources."fs-extra-7.0.1"
+      sources."gar-1.0.4"
+      sources."get-folder-size-2.0.1"
+      sources."graceful-fs-4.1.15"
+      sources."http-errors-1.6.3"
+      sources."iconv-lite-0.4.23"
+      sources."inherits-2.0.3"
+      sources."ipaddr.js-1.9.0"
+      sources."jsonfile-4.0.0"
+      sources."lex-1.7.9"
+      sources."looper-3.0.0"
+      sources."media-typer-0.3.0"
+      sources."merge-descriptors-1.0.1"
+      sources."methods-1.1.2"
+      sources."mime-1.4.1"
+      sources."mime-db-1.40.0"
+      sources."mime-types-2.1.24"
+      sources."ms-2.0.0"
+      sources."negotiator-0.6.2"
+      sources."nthen-0.1.8"
+      sources."on-finished-2.3.0"
+      sources."options-0.0.6"
+      sources."parseurl-1.3.3"
+      sources."path-to-regexp-0.1.7"
+      sources."proxy-addr-2.0.5"
+      sources."pull-stream-3.6.12"
+      sources."qs-6.5.2"
+      sources."range-parser-1.2.1"
+      sources."raw-body-2.3.3"
+      sources."replify-1.2.0"
+      sources."safe-buffer-5.1.2"
+      sources."safer-buffer-2.1.2"
+      sources."saferphore-0.0.1"
+      sources."send-0.16.2"
+      sources."serve-static-1.13.2"
+      sources."setprototypeof-1.1.0"
+      sources."sortify-1.0.4"
+      sources."statuses-1.4.0"
+      sources."stream-to-pull-stream-1.7.3"
+      sources."tiny-each-async-2.0.3"
+      sources."tweetnacl-0.12.2"
+      sources."type-is-1.6.18"
+      sources."ultron-1.1.1"
+      sources."universalify-0.1.2"
+      sources."unpipe-1.0.0"
+      sources."utils-merge-1.0.1"
+      sources."vary-1.1.2"
+      (sources."ws-1.1.5" // {
+        dependencies = [
+          sources."ultron-1.0.2"
+        ];
+      })
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "realtime collaborative visual editor with zero knowlege server";
+      license = "AGPL-3.0+";
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
+}
\ No newline at end of file
diff --git a/nixpkgs/pkgs/servers/web-apps/cryptpad/node-packages.json b/nixpkgs/pkgs/servers/web-apps/cryptpad/node-packages.json
new file mode 100644
index 000000000000..9d2b233f767b
--- /dev/null
+++ b/nixpkgs/pkgs/servers/web-apps/cryptpad/node-packages.json
@@ -0,0 +1,3 @@
+[
+  { "cryptpad": "git+https://github.com/xwiki-labs/cryptpad.git#2.23.0" }
+]
diff --git a/nixpkgs/pkgs/servers/web-apps/cryptpad/node-packages.nix b/nixpkgs/pkgs/servers/web-apps/cryptpad/node-packages.nix
new file mode 100644
index 000000000000..cae300a53f40
--- /dev/null
+++ b/nixpkgs/pkgs/servers/web-apps/cryptpad/node-packages.nix
@@ -0,0 +1,17 @@
+# This file has been generated by node2nix 1.7.0. Do not edit!
+
+{pkgs ? import <nixpkgs> {
+    inherit system;
+  }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-6_x"}:
+
+let
+  nodeEnv = import ../../../development/node-packages/node-env.nix {
+    inherit (pkgs) stdenv python2 utillinux runCommand writeTextFile;
+    inherit nodejs;
+    libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
+  };
+in
+import ./node-packages-generated.nix {
+  inherit (pkgs) fetchurl fetchgit;
+  inherit nodeEnv;
+}
\ No newline at end of file