tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
mjolnir: init at 0.1.17
Johannes Schleifenbaum
4 years ago
d252f643
c8cedcfa
+3931
6 changed files
expand all
collapse all
unified
split
pkgs
servers
mjolnir
default.nix
node-composition.nix
node-deps.nix
node-env.nix
update.sh
top-level
all-packages.nix
+89
pkgs/servers/mjolnir/default.nix
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
{ lib
2
+
, stdenv
3
+
, fetchFromGitHub
4
+
, fetchpatch
5
+
, makeWrapper
6
+
, nodejs
7
+
, pkgs
8
+
}:
9
+
10
+
stdenv.mkDerivation rec {
11
+
pname = "mjolnir";
12
+
version = "0.1.17";
13
+
14
+
src = fetchFromGitHub {
15
+
owner = "matrix-org";
16
+
repo = "mjolnir";
17
+
rev = "v${version}";
18
+
sha256 = "uBI5AllXWgl3eL60WZ/j11Tt7QpY7CKcmFQOU74/Qjs=";
19
+
};
20
+
21
+
patches = [
22
+
# catch errors and set non-zero exit code
23
+
(fetchpatch {
24
+
url = "https://github.com/matrix-org/mjolnir/pull/102/commits/662b06df8ef085fb78608ed19924383be62fa59f.patch";
25
+
sha256 = "sha256-VUKFBMM67E8dGWSViDjMJadMS+DgvHvQS0aOnd2Fz/4=";
26
+
})
27
+
];
28
+
29
+
nativeBuildInputs = [
30
+
nodejs
31
+
makeWrapper
32
+
];
33
+
34
+
buildPhase =
35
+
let
36
+
nodeDependencies = ((import ./node-composition.nix {
37
+
inherit pkgs nodejs;
38
+
inherit (stdenv.hostPlatform) system;
39
+
}).nodeDependencies.override (old: {
40
+
# access to path '/nix/store/...-source' is forbidden in restricted mode
41
+
src = src;
42
+
dontNpmInstall = true;
43
+
}));
44
+
in
45
+
''
46
+
runHook preBuild
47
+
48
+
ln -s ${nodeDependencies}/lib/node_modules .
49
+
export PATH="${nodeDependencies}/bin:$PATH"
50
+
npm run build
51
+
52
+
runHook postBuild
53
+
'';
54
+
55
+
installPhase = ''
56
+
runHook preInstall
57
+
58
+
mkdir -p $out/share
59
+
cp -a . $out/share/mjolnir
60
+
61
+
makeWrapper ${nodejs}/bin/node $out/bin/mjolnir \
62
+
--add-flags $out/share/mjolnir/lib/index.js
63
+
64
+
runHook postInstall
65
+
'';
66
+
67
+
passthru.updateScript = ./update.sh;
68
+
69
+
meta = with lib; {
70
+
description = "A moderation tool for Matrix";
71
+
homepage = "https://github.com/matrix-org/mjolnir";
72
+
longDescription = ''
73
+
As an all-in-one moderation tool, it can protect your server from
74
+
malicious invites, spam messages, and whatever else you don't want.
75
+
In addition to server-level protection, Mjolnir is great for communities
76
+
wanting to protect their rooms without having to use their personal
77
+
accounts for moderation.
78
+
79
+
The bot by default includes support for bans, redactions, anti-spam,
80
+
server ACLs, room directory changes, room alias transfers, account
81
+
deactivation, room shutdown, and more.
82
+
83
+
A Synapse module is also available to apply the same rulesets the bot
84
+
uses across an entire homeserver.
85
+
'';
86
+
license = licenses.asl20;
87
+
maintainers = with maintainers; [ jojosch ];
88
+
};
89
+
}
+17
pkgs/servers/mjolnir/node-composition.nix
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
# This file has been generated by node2nix 1.9.0. Do not edit!
2
+
3
+
{pkgs ? import <nixpkgs> {
4
+
inherit system;
5
+
}, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-12_x"}:
6
+
7
+
let
8
+
nodeEnv = import ./node-env.nix {
9
+
inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
10
+
inherit pkgs nodejs;
11
+
libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
12
+
};
13
+
in
14
+
import ./node-deps.nix {
15
+
inherit (pkgs) fetchurl nix-gitignore stdenv lib fetchgit;
16
+
inherit nodeEnv;
17
+
}
+3227
pkgs/servers/mjolnir/node-deps.nix
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
# This file has been generated by node2nix 1.9.0. Do not edit!
2
+
3
+
{nodeEnv, fetchurl, fetchgit, nix-gitignore, stdenv, lib, globalBuildInputs ? []}:
4
+
5
+
let
6
+
sources = {
7
+
"@babel/code-frame-7.12.13" = {
8
+
name = "_at_babel_slash_code-frame";
9
+
packageName = "@babel/code-frame";
10
+
version = "7.12.13";
11
+
src = fetchurl {
12
+
url = "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz";
13
+
sha512 = "HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==";
14
+
};
15
+
};
16
+
"@babel/helper-validator-identifier-7.14.0" = {
17
+
name = "_at_babel_slash_helper-validator-identifier";
18
+
packageName = "@babel/helper-validator-identifier";
19
+
version = "7.14.0";
20
+
src = fetchurl {
21
+
url = "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz";
22
+
sha512 = "V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==";
23
+
};
24
+
};
25
+
"@babel/highlight-7.14.0" = {
26
+
name = "_at_babel_slash_highlight";
27
+
packageName = "@babel/highlight";
28
+
version = "7.14.0";
29
+
src = fetchurl {
30
+
url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz";
31
+
sha512 = "YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==";
32
+
};
33
+
};
34
+
"@jest/types-26.6.2" = {
35
+
name = "_at_jest_slash_types";
36
+
packageName = "@jest/types";
37
+
version = "26.6.2";
38
+
src = fetchurl {
39
+
url = "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz";
40
+
sha512 = "fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==";
41
+
};
42
+
};
43
+
"@types/body-parser-1.19.0" = {
44
+
name = "_at_types_slash_body-parser";
45
+
packageName = "@types/body-parser";
46
+
version = "1.19.0";
47
+
src = fetchurl {
48
+
url = "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.0.tgz";
49
+
sha512 = "W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ==";
50
+
};
51
+
};
52
+
"@types/connect-3.4.34" = {
53
+
name = "_at_types_slash_connect";
54
+
packageName = "@types/connect";
55
+
version = "3.4.34";
56
+
src = fetchurl {
57
+
url = "https://registry.npmjs.org/@types/connect/-/connect-3.4.34.tgz";
58
+
sha512 = "ePPA/JuI+X0vb+gSWlPKOY0NdNAie/rPUqX2GUPpbZwiKTkSPhjXWuee47E4MtE54QVzGCQMQkAL6JhV2E1+cQ==";
59
+
};
60
+
};
61
+
"@types/expect-24.3.0" = {
62
+
name = "_at_types_slash_expect";
63
+
packageName = "@types/expect";
64
+
version = "24.3.0";
65
+
src = fetchurl {
66
+
url = "https://registry.npmjs.org/@types/expect/-/expect-24.3.0.tgz";
67
+
sha512 = "aq5Z+YFBz5o2b6Sp1jigx5nsmoZMK5Ceurjwy6PZmRv7dEi1jLtkARfvB1ME+OXJUG+7TZUDcv3WoCr/aor6dQ==";
68
+
};
69
+
};
70
+
"@types/express-4.17.11" = {
71
+
name = "_at_types_slash_express";
72
+
packageName = "@types/express";
73
+
version = "4.17.11";
74
+
src = fetchurl {
75
+
url = "https://registry.npmjs.org/@types/express/-/express-4.17.11.tgz";
76
+
sha512 = "no+R6rW60JEc59977wIxreQVsIEOAYwgCqldrA/vkpCnbD7MqTefO97lmoBe4WE0F156bC4uLSP1XHDOySnChg==";
77
+
};
78
+
};
79
+
"@types/express-serve-static-core-4.17.19" = {
80
+
name = "_at_types_slash_express-serve-static-core";
81
+
packageName = "@types/express-serve-static-core";
82
+
version = "4.17.19";
83
+
src = fetchurl {
84
+
url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.19.tgz";
85
+
sha512 = "DJOSHzX7pCiSElWaGR8kCprwibCB/3yW6vcT8VG3P0SJjnv19gnWG/AZMfM60Xj/YJIp/YCaDHyvzsFVeniARA==";
86
+
};
87
+
};
88
+
"@types/istanbul-lib-coverage-2.0.3" = {
89
+
name = "_at_types_slash_istanbul-lib-coverage";
90
+
packageName = "@types/istanbul-lib-coverage";
91
+
version = "2.0.3";
92
+
src = fetchurl {
93
+
url = "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz";
94
+
sha512 = "sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==";
95
+
};
96
+
};
97
+
"@types/istanbul-lib-report-3.0.0" = {
98
+
name = "_at_types_slash_istanbul-lib-report";
99
+
packageName = "@types/istanbul-lib-report";
100
+
version = "3.0.0";
101
+
src = fetchurl {
102
+
url = "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz";
103
+
sha512 = "plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==";
104
+
};
105
+
};
106
+
"@types/istanbul-reports-3.0.0" = {
107
+
name = "_at_types_slash_istanbul-reports";
108
+
packageName = "@types/istanbul-reports";
109
+
version = "3.0.0";
110
+
src = fetchurl {
111
+
url = "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz";
112
+
sha512 = "nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA==";
113
+
};
114
+
};
115
+
"@types/json5-0.0.29" = {
116
+
name = "_at_types_slash_json5";
117
+
packageName = "@types/json5";
118
+
version = "0.0.29";
119
+
src = fetchurl {
120
+
url = "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz";
121
+
sha1 = "ee28707ae94e11d2b827bcbe5270bcea7f3e71ee";
122
+
};
123
+
};
124
+
"@types/mime-1.3.2" = {
125
+
name = "_at_types_slash_mime";
126
+
packageName = "@types/mime";
127
+
version = "1.3.2";
128
+
src = fetchurl {
129
+
url = "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz";
130
+
sha512 = "YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==";
131
+
};
132
+
};
133
+
"@types/mocha-7.0.2" = {
134
+
name = "_at_types_slash_mocha";
135
+
packageName = "@types/mocha";
136
+
version = "7.0.2";
137
+
src = fetchurl {
138
+
url = "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz";
139
+
sha512 = "ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==";
140
+
};
141
+
};
142
+
"@types/node-11.15.54" = {
143
+
name = "_at_types_slash_node";
144
+
packageName = "@types/node";
145
+
version = "11.15.54";
146
+
src = fetchurl {
147
+
url = "https://registry.npmjs.org/@types/node/-/node-11.15.54.tgz";
148
+
sha512 = "1RWYiq+5UfozGsU6MwJyFX6BtktcT10XRjvcAQmskCtMcW3tPske88lM/nHv7BQG1w9KBXI1zPGuu5PnNCX14g==";
149
+
};
150
+
};
151
+
"@types/qs-6.9.6" = {
152
+
name = "_at_types_slash_qs";
153
+
packageName = "@types/qs";
154
+
version = "6.9.6";
155
+
src = fetchurl {
156
+
url = "https://registry.npmjs.org/@types/qs/-/qs-6.9.6.tgz";
157
+
sha512 = "0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA==";
158
+
};
159
+
};
160
+
"@types/range-parser-1.2.3" = {
161
+
name = "_at_types_slash_range-parser";
162
+
packageName = "@types/range-parser";
163
+
version = "1.2.3";
164
+
src = fetchurl {
165
+
url = "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.3.tgz";
166
+
sha512 = "ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA==";
167
+
};
168
+
};
169
+
"@types/serve-static-1.13.9" = {
170
+
name = "_at_types_slash_serve-static";
171
+
packageName = "@types/serve-static";
172
+
version = "1.13.9";
173
+
src = fetchurl {
174
+
url = "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.9.tgz";
175
+
sha512 = "ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA==";
176
+
};
177
+
};
178
+
"@types/stack-utils-2.0.0" = {
179
+
name = "_at_types_slash_stack-utils";
180
+
packageName = "@types/stack-utils";
181
+
version = "2.0.0";
182
+
src = fetchurl {
183
+
url = "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.0.tgz";
184
+
sha512 = "RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw==";
185
+
};
186
+
};
187
+
"@types/yargs-15.0.13" = {
188
+
name = "_at_types_slash_yargs";
189
+
packageName = "@types/yargs";
190
+
version = "15.0.13";
191
+
src = fetchurl {
192
+
url = "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.13.tgz";
193
+
sha512 = "kQ5JNTrbDv3Rp5X2n/iUu37IJBDU2gsZ5R/g1/KHOOEc5IKfUFjXT6DENPGduh08I/pamwtEq4oul7gUqKTQDQ==";
194
+
};
195
+
};
196
+
"@types/yargs-parser-20.2.0" = {
197
+
name = "_at_types_slash_yargs-parser";
198
+
packageName = "@types/yargs-parser";
199
+
version = "20.2.0";
200
+
src = fetchurl {
201
+
url = "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.0.tgz";
202
+
sha512 = "37RSHht+gzzgYeobbG+KWryeAW8J33Nhr69cjTqSYymXVZEN9NbRYWoYlRtDhHKPVT1FyNKwaTPC1NynKZpzRA==";
203
+
};
204
+
};
205
+
"accepts-1.3.7" = {
206
+
name = "accepts";
207
+
packageName = "accepts";
208
+
version = "1.3.7";
209
+
src = fetchurl {
210
+
url = "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz";
211
+
sha512 = "Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==";
212
+
};
213
+
};
214
+
"ajv-6.12.6" = {
215
+
name = "ajv";
216
+
packageName = "ajv";
217
+
version = "6.12.6";
218
+
src = fetchurl {
219
+
url = "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz";
220
+
sha512 = "j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==";
221
+
};
222
+
};
223
+
"ansi-colors-3.2.3" = {
224
+
name = "ansi-colors";
225
+
packageName = "ansi-colors";
226
+
version = "3.2.3";
227
+
src = fetchurl {
228
+
url = "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz";
229
+
sha512 = "LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==";
230
+
};
231
+
};
232
+
"ansi-regex-3.0.0" = {
233
+
name = "ansi-regex";
234
+
packageName = "ansi-regex";
235
+
version = "3.0.0";
236
+
src = fetchurl {
237
+
url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz";
238
+
sha1 = "ed0317c322064f79466c02966bddb605ab37d998";
239
+
};
240
+
};
241
+
"ansi-regex-4.1.0" = {
242
+
name = "ansi-regex";
243
+
packageName = "ansi-regex";
244
+
version = "4.1.0";
245
+
src = fetchurl {
246
+
url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz";
247
+
sha512 = "1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==";
248
+
};
249
+
};
250
+
"ansi-regex-5.0.0" = {
251
+
name = "ansi-regex";
252
+
packageName = "ansi-regex";
253
+
version = "5.0.0";
254
+
src = fetchurl {
255
+
url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz";
256
+
sha512 = "bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==";
257
+
};
258
+
};
259
+
"ansi-styles-3.2.1" = {
260
+
name = "ansi-styles";
261
+
packageName = "ansi-styles";
262
+
version = "3.2.1";
263
+
src = fetchurl {
264
+
url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz";
265
+
sha512 = "VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==";
266
+
};
267
+
};
268
+
"ansi-styles-4.3.0" = {
269
+
name = "ansi-styles";
270
+
packageName = "ansi-styles";
271
+
version = "4.3.0";
272
+
src = fetchurl {
273
+
url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz";
274
+
sha512 = "zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==";
275
+
};
276
+
};
277
+
"anymatch-3.1.2" = {
278
+
name = "anymatch";
279
+
packageName = "anymatch";
280
+
version = "3.1.2";
281
+
src = fetchurl {
282
+
url = "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz";
283
+
sha512 = "P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==";
284
+
};
285
+
};
286
+
"argparse-1.0.10" = {
287
+
name = "argparse";
288
+
packageName = "argparse";
289
+
version = "1.0.10";
290
+
src = fetchurl {
291
+
url = "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz";
292
+
sha512 = "o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==";
293
+
};
294
+
};
295
+
"array-flatten-1.1.1" = {
296
+
name = "array-flatten";
297
+
packageName = "array-flatten";
298
+
version = "1.1.1";
299
+
src = fetchurl {
300
+
url = "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz";
301
+
sha1 = "9a5f699051b1e7073328f2a008968b64ea2955d2";
302
+
};
303
+
};
304
+
"arrify-1.0.1" = {
305
+
name = "arrify";
306
+
packageName = "arrify";
307
+
version = "1.0.1";
308
+
src = fetchurl {
309
+
url = "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz";
310
+
sha1 = "898508da2226f380df904728456849c1501a4b0d";
311
+
};
312
+
};
313
+
"asn1-0.2.4" = {
314
+
name = "asn1";
315
+
packageName = "asn1";
316
+
version = "0.2.4";
317
+
src = fetchurl {
318
+
url = "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz";
319
+
sha512 = "jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==";
320
+
};
321
+
};
322
+
"assert-plus-1.0.0" = {
323
+
name = "assert-plus";
324
+
packageName = "assert-plus";
325
+
version = "1.0.0";
326
+
src = fetchurl {
327
+
url = "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz";
328
+
sha1 = "f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525";
329
+
};
330
+
};
331
+
"asynckit-0.4.0" = {
332
+
name = "asynckit";
333
+
packageName = "asynckit";
334
+
version = "0.4.0";
335
+
src = fetchurl {
336
+
url = "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz";
337
+
sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
338
+
};
339
+
};
340
+
"aws-sign2-0.7.0" = {
341
+
name = "aws-sign2";
342
+
packageName = "aws-sign2";
343
+
version = "0.7.0";
344
+
src = fetchurl {
345
+
url = "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz";
346
+
sha1 = "b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8";
347
+
};
348
+
};
349
+
"aws4-1.11.0" = {
350
+
name = "aws4";
351
+
packageName = "aws4";
352
+
version = "1.11.0";
353
+
src = fetchurl {
354
+
url = "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz";
355
+
sha512 = "xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==";
356
+
};
357
+
};
358
+
"balanced-match-1.0.2" = {
359
+
name = "balanced-match";
360
+
packageName = "balanced-match";
361
+
version = "1.0.2";
362
+
src = fetchurl {
363
+
url = "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz";
364
+
sha512 = "3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==";
365
+
};
366
+
};
367
+
"basic-auth-2.0.1" = {
368
+
name = "basic-auth";
369
+
packageName = "basic-auth";
370
+
version = "2.0.1";
371
+
src = fetchurl {
372
+
url = "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz";
373
+
sha512 = "NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==";
374
+
};
375
+
};
376
+
"bcrypt-pbkdf-1.0.2" = {
377
+
name = "bcrypt-pbkdf";
378
+
packageName = "bcrypt-pbkdf";
379
+
version = "1.0.2";
380
+
src = fetchurl {
381
+
url = "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz";
382
+
sha1 = "a4301d389b6a43f9b67ff3ca11a3f6637e360e9e";
383
+
};
384
+
};
385
+
"binary-extensions-2.2.0" = {
386
+
name = "binary-extensions";
387
+
packageName = "binary-extensions";
388
+
version = "2.2.0";
389
+
src = fetchurl {
390
+
url = "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz";
391
+
sha512 = "jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==";
392
+
};
393
+
};
394
+
"bluebird-3.7.2" = {
395
+
name = "bluebird";
396
+
packageName = "bluebird";
397
+
version = "3.7.2";
398
+
src = fetchurl {
399
+
url = "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz";
400
+
sha512 = "XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==";
401
+
};
402
+
};
403
+
"body-parser-1.19.0" = {
404
+
name = "body-parser";
405
+
packageName = "body-parser";
406
+
version = "1.19.0";
407
+
src = fetchurl {
408
+
url = "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz";
409
+
sha512 = "dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==";
410
+
};
411
+
};
412
+
"brace-expansion-1.1.11" = {
413
+
name = "brace-expansion";
414
+
packageName = "brace-expansion";
415
+
version = "1.1.11";
416
+
src = fetchurl {
417
+
url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz";
418
+
sha512 = "iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==";
419
+
};
420
+
};
421
+
"braces-3.0.2" = {
422
+
name = "braces";
423
+
packageName = "braces";
424
+
version = "3.0.2";
425
+
src = fetchurl {
426
+
url = "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz";
427
+
sha512 = "b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==";
428
+
};
429
+
};
430
+
"browser-stdout-1.3.1" = {
431
+
name = "browser-stdout";
432
+
packageName = "browser-stdout";
433
+
version = "1.3.1";
434
+
src = fetchurl {
435
+
url = "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz";
436
+
sha512 = "qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==";
437
+
};
438
+
};
439
+
"buffer-from-1.1.1" = {
440
+
name = "buffer-from";
441
+
packageName = "buffer-from";
442
+
version = "1.1.1";
443
+
src = fetchurl {
444
+
url = "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz";
445
+
sha512 = "MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==";
446
+
};
447
+
};
448
+
"builtin-modules-1.1.1" = {
449
+
name = "builtin-modules";
450
+
packageName = "builtin-modules";
451
+
version = "1.1.1";
452
+
src = fetchurl {
453
+
url = "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz";
454
+
sha1 = "270f076c5a72c02f5b65a47df94c5fe3a278892f";
455
+
};
456
+
};
457
+
"bytes-3.1.0" = {
458
+
name = "bytes";
459
+
packageName = "bytes";
460
+
version = "3.1.0";
461
+
src = fetchurl {
462
+
url = "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz";
463
+
sha512 = "zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==";
464
+
};
465
+
};
466
+
"call-bind-1.0.2" = {
467
+
name = "call-bind";
468
+
packageName = "call-bind";
469
+
version = "1.0.2";
470
+
src = fetchurl {
471
+
url = "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz";
472
+
sha512 = "7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==";
473
+
};
474
+
};
475
+
"camelcase-5.3.1" = {
476
+
name = "camelcase";
477
+
packageName = "camelcase";
478
+
version = "5.3.1";
479
+
src = fetchurl {
480
+
url = "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz";
481
+
sha512 = "L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==";
482
+
};
483
+
};
484
+
"caseless-0.12.0" = {
485
+
name = "caseless";
486
+
packageName = "caseless";
487
+
version = "0.12.0";
488
+
src = fetchurl {
489
+
url = "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz";
490
+
sha1 = "1b681c21ff84033c826543090689420d187151dc";
491
+
};
492
+
};
493
+
"chalk-2.4.2" = {
494
+
name = "chalk";
495
+
packageName = "chalk";
496
+
version = "2.4.2";
497
+
src = fetchurl {
498
+
url = "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz";
499
+
sha512 = "Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==";
500
+
};
501
+
};
502
+
"chalk-4.1.1" = {
503
+
name = "chalk";
504
+
packageName = "chalk";
505
+
version = "4.1.1";
506
+
src = fetchurl {
507
+
url = "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz";
508
+
sha512 = "diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==";
509
+
};
510
+
};
511
+
"chokidar-3.3.0" = {
512
+
name = "chokidar";
513
+
packageName = "chokidar";
514
+
version = "3.3.0";
515
+
src = fetchurl {
516
+
url = "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz";
517
+
sha512 = "dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==";
518
+
};
519
+
};
520
+
"cliui-5.0.0" = {
521
+
name = "cliui";
522
+
packageName = "cliui";
523
+
version = "5.0.0";
524
+
src = fetchurl {
525
+
url = "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz";
526
+
sha512 = "PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==";
527
+
};
528
+
};
529
+
"color-convert-1.9.3" = {
530
+
name = "color-convert";
531
+
packageName = "color-convert";
532
+
version = "1.9.3";
533
+
src = fetchurl {
534
+
url = "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz";
535
+
sha512 = "QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==";
536
+
};
537
+
};
538
+
"color-convert-2.0.1" = {
539
+
name = "color-convert";
540
+
packageName = "color-convert";
541
+
version = "2.0.1";
542
+
src = fetchurl {
543
+
url = "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz";
544
+
sha512 = "RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==";
545
+
};
546
+
};
547
+
"color-name-1.1.3" = {
548
+
name = "color-name";
549
+
packageName = "color-name";
550
+
version = "1.1.3";
551
+
src = fetchurl {
552
+
url = "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz";
553
+
sha1 = "a7d0558bd89c42f795dd42328f740831ca53bc25";
554
+
};
555
+
};
556
+
"color-name-1.1.4" = {
557
+
name = "color-name";
558
+
packageName = "color-name";
559
+
version = "1.1.4";
560
+
src = fetchurl {
561
+
url = "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz";
562
+
sha512 = "dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==";
563
+
};
564
+
};
565
+
"colorette-1.2.2" = {
566
+
name = "colorette";
567
+
packageName = "colorette";
568
+
version = "1.2.2";
569
+
src = fetchurl {
570
+
url = "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz";
571
+
sha512 = "MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==";
572
+
};
573
+
};
574
+
"combined-stream-1.0.8" = {
575
+
name = "combined-stream";
576
+
packageName = "combined-stream";
577
+
version = "1.0.8";
578
+
src = fetchurl {
579
+
url = "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz";
580
+
sha512 = "FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==";
581
+
};
582
+
};
583
+
"commander-2.20.3" = {
584
+
name = "commander";
585
+
packageName = "commander";
586
+
version = "2.20.3";
587
+
src = fetchurl {
588
+
url = "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz";
589
+
sha512 = "GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==";
590
+
};
591
+
};
592
+
"concat-map-0.0.1" = {
593
+
name = "concat-map";
594
+
packageName = "concat-map";
595
+
version = "0.0.1";
596
+
src = fetchurl {
597
+
url = "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz";
598
+
sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
599
+
};
600
+
};
601
+
"config-3.3.6" = {
602
+
name = "config";
603
+
packageName = "config";
604
+
version = "3.3.6";
605
+
src = fetchurl {
606
+
url = "https://registry.npmjs.org/config/-/config-3.3.6.tgz";
607
+
sha512 = "Hj5916C5HFawjYJat1epbyY2PlAgLpBtDUlr0MxGLgo3p5+7kylyvnRY18PqJHgnNWXcdd0eWDemT7eYWuFgwg==";
608
+
};
609
+
};
610
+
"content-disposition-0.5.3" = {
611
+
name = "content-disposition";
612
+
packageName = "content-disposition";
613
+
version = "0.5.3";
614
+
src = fetchurl {
615
+
url = "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz";
616
+
sha512 = "ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==";
617
+
};
618
+
};
619
+
"content-type-1.0.4" = {
620
+
name = "content-type";
621
+
packageName = "content-type";
622
+
version = "1.0.4";
623
+
src = fetchurl {
624
+
url = "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz";
625
+
sha512 = "hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==";
626
+
};
627
+
};
628
+
"cookie-0.4.0" = {
629
+
name = "cookie";
630
+
packageName = "cookie";
631
+
version = "0.4.0";
632
+
src = fetchurl {
633
+
url = "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz";
634
+
sha512 = "+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==";
635
+
};
636
+
};
637
+
"cookie-signature-1.0.6" = {
638
+
name = "cookie-signature";
639
+
packageName = "cookie-signature";
640
+
version = "1.0.6";
641
+
src = fetchurl {
642
+
url = "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz";
643
+
sha1 = "e303a882b342cc3ee8ca513a79999734dab3ae2c";
644
+
};
645
+
};
646
+
"core-util-is-1.0.2" = {
647
+
name = "core-util-is";
648
+
packageName = "core-util-is";
649
+
version = "1.0.2";
650
+
src = fetchurl {
651
+
url = "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz";
652
+
sha1 = "b5fd54220aa2bc5ab57aab7140c940754503c1a7";
653
+
};
654
+
};
655
+
"dashdash-1.14.1" = {
656
+
name = "dashdash";
657
+
packageName = "dashdash";
658
+
version = "1.14.1";
659
+
src = fetchurl {
660
+
url = "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz";
661
+
sha1 = "853cfa0f7cbe2fed5de20326b8dd581035f6e2f0";
662
+
};
663
+
};
664
+
"debug-2.6.9" = {
665
+
name = "debug";
666
+
packageName = "debug";
667
+
version = "2.6.9";
668
+
src = fetchurl {
669
+
url = "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz";
670
+
sha512 = "bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==";
671
+
};
672
+
};
673
+
"debug-3.2.6" = {
674
+
name = "debug";
675
+
packageName = "debug";
676
+
version = "3.2.6";
677
+
src = fetchurl {
678
+
url = "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz";
679
+
sha512 = "mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==";
680
+
};
681
+
};
682
+
"decamelize-1.2.0" = {
683
+
name = "decamelize";
684
+
packageName = "decamelize";
685
+
version = "1.2.0";
686
+
src = fetchurl {
687
+
url = "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz";
688
+
sha1 = "f6534d15148269b20352e7bee26f501f9a191290";
689
+
};
690
+
};
691
+
"deepmerge-4.2.2" = {
692
+
name = "deepmerge";
693
+
packageName = "deepmerge";
694
+
version = "4.2.2";
695
+
src = fetchurl {
696
+
url = "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz";
697
+
sha512 = "FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==";
698
+
};
699
+
};
700
+
"define-properties-1.1.3" = {
701
+
name = "define-properties";
702
+
packageName = "define-properties";
703
+
version = "1.1.3";
704
+
src = fetchurl {
705
+
url = "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz";
706
+
sha512 = "3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==";
707
+
};
708
+
};
709
+
"delayed-stream-1.0.0" = {
710
+
name = "delayed-stream";
711
+
packageName = "delayed-stream";
712
+
version = "1.0.0";
713
+
src = fetchurl {
714
+
url = "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz";
715
+
sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619";
716
+
};
717
+
};
718
+
"depd-1.1.2" = {
719
+
name = "depd";
720
+
packageName = "depd";
721
+
version = "1.1.2";
722
+
src = fetchurl {
723
+
url = "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz";
724
+
sha1 = "9bcd52e14c097763e749b274c4346ed2e560b5a9";
725
+
};
726
+
};
727
+
"depd-2.0.0" = {
728
+
name = "depd";
729
+
packageName = "depd";
730
+
version = "2.0.0";
731
+
src = fetchurl {
732
+
url = "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz";
733
+
sha512 = "g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==";
734
+
};
735
+
};
736
+
"destroy-1.0.4" = {
737
+
name = "destroy";
738
+
packageName = "destroy";
739
+
version = "1.0.4";
740
+
src = fetchurl {
741
+
url = "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz";
742
+
sha1 = "978857442c44749e4206613e37946205826abd80";
743
+
};
744
+
};
745
+
"diff-3.5.0" = {
746
+
name = "diff";
747
+
packageName = "diff";
748
+
version = "3.5.0";
749
+
src = fetchurl {
750
+
url = "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz";
751
+
sha512 = "A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==";
752
+
};
753
+
};
754
+
"diff-4.0.2" = {
755
+
name = "diff";
756
+
packageName = "diff";
757
+
version = "4.0.2";
758
+
src = fetchurl {
759
+
url = "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz";
760
+
sha512 = "58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==";
761
+
};
762
+
};
763
+
"diff-sequences-26.6.2" = {
764
+
name = "diff-sequences";
765
+
packageName = "diff-sequences";
766
+
version = "26.6.2";
767
+
src = fetchurl {
768
+
url = "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz";
769
+
sha512 = "Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==";
770
+
};
771
+
};
772
+
"dom-serializer-1.3.2" = {
773
+
name = "dom-serializer";
774
+
packageName = "dom-serializer";
775
+
version = "1.3.2";
776
+
src = fetchurl {
777
+
url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz";
778
+
sha512 = "5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==";
779
+
};
780
+
};
781
+
"domelementtype-2.2.0" = {
782
+
name = "domelementtype";
783
+
packageName = "domelementtype";
784
+
version = "2.2.0";
785
+
src = fetchurl {
786
+
url = "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz";
787
+
sha512 = "DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==";
788
+
};
789
+
};
790
+
"domhandler-3.3.0" = {
791
+
name = "domhandler";
792
+
packageName = "domhandler";
793
+
version = "3.3.0";
794
+
src = fetchurl {
795
+
url = "https://registry.npmjs.org/domhandler/-/domhandler-3.3.0.tgz";
796
+
sha512 = "J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==";
797
+
};
798
+
};
799
+
"domhandler-4.2.0" = {
800
+
name = "domhandler";
801
+
packageName = "domhandler";
802
+
version = "4.2.0";
803
+
src = fetchurl {
804
+
url = "https://registry.npmjs.org/domhandler/-/domhandler-4.2.0.tgz";
805
+
sha512 = "zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA==";
806
+
};
807
+
};
808
+
"domutils-2.6.0" = {
809
+
name = "domutils";
810
+
packageName = "domutils";
811
+
version = "2.6.0";
812
+
src = fetchurl {
813
+
url = "https://registry.npmjs.org/domutils/-/domutils-2.6.0.tgz";
814
+
sha512 = "y0BezHuy4MDYxh6OvolXYsH+1EMGmFbwv5FKW7ovwMG6zTPWqNPq3WF9ayZssFq+UlKdffGLbOEaghNdaOm1WA==";
815
+
};
816
+
};
817
+
"ecc-jsbn-0.1.2" = {
818
+
name = "ecc-jsbn";
819
+
packageName = "ecc-jsbn";
820
+
version = "0.1.2";
821
+
src = fetchurl {
822
+
url = "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz";
823
+
sha1 = "3a83a904e54353287874c564b7549386849a98c9";
824
+
};
825
+
};
826
+
"ee-first-1.1.1" = {
827
+
name = "ee-first";
828
+
packageName = "ee-first";
829
+
version = "1.1.1";
830
+
src = fetchurl {
831
+
url = "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz";
832
+
sha1 = "590c61156b0ae2f4f0255732a158b266bc56b21d";
833
+
};
834
+
};
835
+
"emoji-regex-7.0.3" = {
836
+
name = "emoji-regex";
837
+
packageName = "emoji-regex";
838
+
version = "7.0.3";
839
+
src = fetchurl {
840
+
url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz";
841
+
sha512 = "CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==";
842
+
};
843
+
};
844
+
"encodeurl-1.0.2" = {
845
+
name = "encodeurl";
846
+
packageName = "encodeurl";
847
+
version = "1.0.2";
848
+
src = fetchurl {
849
+
url = "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz";
850
+
sha1 = "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59";
851
+
};
852
+
};
853
+
"entities-2.2.0" = {
854
+
name = "entities";
855
+
packageName = "entities";
856
+
version = "2.2.0";
857
+
src = fetchurl {
858
+
url = "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz";
859
+
sha512 = "p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==";
860
+
};
861
+
};
862
+
"es-abstract-1.18.0" = {
863
+
name = "es-abstract";
864
+
packageName = "es-abstract";
865
+
version = "1.18.0";
866
+
src = fetchurl {
867
+
url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz";
868
+
sha512 = "LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==";
869
+
};
870
+
};
871
+
"es-to-primitive-1.2.1" = {
872
+
name = "es-to-primitive";
873
+
packageName = "es-to-primitive";
874
+
version = "1.2.1";
875
+
src = fetchurl {
876
+
url = "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz";
877
+
sha512 = "QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==";
878
+
};
879
+
};
880
+
"escape-html-1.0.3" = {
881
+
name = "escape-html";
882
+
packageName = "escape-html";
883
+
version = "1.0.3";
884
+
src = fetchurl {
885
+
url = "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz";
886
+
sha1 = "0258eae4d3d0c0974de1c169188ef0051d1d1988";
887
+
};
888
+
};
889
+
"escape-string-regexp-1.0.5" = {
890
+
name = "escape-string-regexp";
891
+
packageName = "escape-string-regexp";
892
+
version = "1.0.5";
893
+
src = fetchurl {
894
+
url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz";
895
+
sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4";
896
+
};
897
+
};
898
+
"escape-string-regexp-2.0.0" = {
899
+
name = "escape-string-regexp";
900
+
packageName = "escape-string-regexp";
901
+
version = "2.0.0";
902
+
src = fetchurl {
903
+
url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz";
904
+
sha512 = "UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==";
905
+
};
906
+
};
907
+
"escape-string-regexp-4.0.0" = {
908
+
name = "escape-string-regexp";
909
+
packageName = "escape-string-regexp";
910
+
version = "4.0.0";
911
+
src = fetchurl {
912
+
url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz";
913
+
sha512 = "TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==";
914
+
};
915
+
};
916
+
"esprima-4.0.1" = {
917
+
name = "esprima";
918
+
packageName = "esprima";
919
+
version = "4.0.1";
920
+
src = fetchurl {
921
+
url = "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz";
922
+
sha512 = "eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==";
923
+
};
924
+
};
925
+
"etag-1.8.1" = {
926
+
name = "etag";
927
+
packageName = "etag";
928
+
version = "1.8.1";
929
+
src = fetchurl {
930
+
url = "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz";
931
+
sha1 = "41ae2eeb65efa62268aebfea83ac7d79299b0887";
932
+
};
933
+
};
934
+
"expect-26.6.2" = {
935
+
name = "expect";
936
+
packageName = "expect";
937
+
version = "26.6.2";
938
+
src = fetchurl {
939
+
url = "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz";
940
+
sha512 = "9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==";
941
+
};
942
+
};
943
+
"express-4.17.1" = {
944
+
name = "express";
945
+
packageName = "express";
946
+
version = "4.17.1";
947
+
src = fetchurl {
948
+
url = "https://registry.npmjs.org/express/-/express-4.17.1.tgz";
949
+
sha512 = "mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==";
950
+
};
951
+
};
952
+
"extend-3.0.2" = {
953
+
name = "extend";
954
+
packageName = "extend";
955
+
version = "3.0.2";
956
+
src = fetchurl {
957
+
url = "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz";
958
+
sha512 = "fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==";
959
+
};
960
+
};
961
+
"extsprintf-1.3.0" = {
962
+
name = "extsprintf";
963
+
packageName = "extsprintf";
964
+
version = "1.3.0";
965
+
src = fetchurl {
966
+
url = "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz";
967
+
sha1 = "96918440e3041a7a414f8c52e3c574eb3c3e1e05";
968
+
};
969
+
};
970
+
"fast-deep-equal-3.1.3" = {
971
+
name = "fast-deep-equal";
972
+
packageName = "fast-deep-equal";
973
+
version = "3.1.3";
974
+
src = fetchurl {
975
+
url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz";
976
+
sha512 = "f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==";
977
+
};
978
+
};
979
+
"fast-json-stable-stringify-2.1.0" = {
980
+
name = "fast-json-stable-stringify";
981
+
packageName = "fast-json-stable-stringify";
982
+
version = "2.1.0";
983
+
src = fetchurl {
984
+
url = "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz";
985
+
sha512 = "lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==";
986
+
};
987
+
};
988
+
"fill-range-7.0.1" = {
989
+
name = "fill-range";
990
+
packageName = "fill-range";
991
+
version = "7.0.1";
992
+
src = fetchurl {
993
+
url = "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz";
994
+
sha512 = "qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==";
995
+
};
996
+
};
997
+
"finalhandler-1.1.2" = {
998
+
name = "finalhandler";
999
+
packageName = "finalhandler";
1000
+
version = "1.1.2";
1001
+
src = fetchurl {
1002
+
url = "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz";
1003
+
sha512 = "aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==";
1004
+
};
1005
+
};
1006
+
"find-up-3.0.0" = {
1007
+
name = "find-up";
1008
+
packageName = "find-up";
1009
+
version = "3.0.0";
1010
+
src = fetchurl {
1011
+
url = "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz";
1012
+
sha512 = "1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==";
1013
+
};
1014
+
};
1015
+
"flat-4.1.1" = {
1016
+
name = "flat";
1017
+
packageName = "flat";
1018
+
version = "4.1.1";
1019
+
src = fetchurl {
1020
+
url = "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz";
1021
+
sha512 = "FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==";
1022
+
};
1023
+
};
1024
+
"forever-agent-0.6.1" = {
1025
+
name = "forever-agent";
1026
+
packageName = "forever-agent";
1027
+
version = "0.6.1";
1028
+
src = fetchurl {
1029
+
url = "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz";
1030
+
sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91";
1031
+
};
1032
+
};
1033
+
"form-data-2.3.3" = {
1034
+
name = "form-data";
1035
+
packageName = "form-data";
1036
+
version = "2.3.3";
1037
+
src = fetchurl {
1038
+
url = "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz";
1039
+
sha512 = "1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==";
1040
+
};
1041
+
};
1042
+
"forwarded-0.1.2" = {
1043
+
name = "forwarded";
1044
+
packageName = "forwarded";
1045
+
version = "0.1.2";
1046
+
src = fetchurl {
1047
+
url = "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz";
1048
+
sha1 = "98c23dab1175657b8c0573e8ceccd91b0ff18c84";
1049
+
};
1050
+
};
1051
+
"fresh-0.5.2" = {
1052
+
name = "fresh";
1053
+
packageName = "fresh";
1054
+
version = "0.5.2";
1055
+
src = fetchurl {
1056
+
url = "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz";
1057
+
sha1 = "3d8cadd90d976569fa835ab1f8e4b23a105605a7";
1058
+
};
1059
+
};
1060
+
"fs.realpath-1.0.0" = {
1061
+
name = "fs.realpath";
1062
+
packageName = "fs.realpath";
1063
+
version = "1.0.0";
1064
+
src = fetchurl {
1065
+
url = "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz";
1066
+
sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f";
1067
+
};
1068
+
};
1069
+
"fsevents-2.1.3" = {
1070
+
name = "fsevents";
1071
+
packageName = "fsevents";
1072
+
version = "2.1.3";
1073
+
src = fetchurl {
1074
+
url = "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz";
1075
+
sha512 = "Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==";
1076
+
};
1077
+
};
1078
+
"function-bind-1.1.1" = {
1079
+
name = "function-bind";
1080
+
packageName = "function-bind";
1081
+
version = "1.1.1";
1082
+
src = fetchurl {
1083
+
url = "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz";
1084
+
sha512 = "yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==";
1085
+
};
1086
+
};
1087
+
"get-caller-file-2.0.5" = {
1088
+
name = "get-caller-file";
1089
+
packageName = "get-caller-file";
1090
+
version = "2.0.5";
1091
+
src = fetchurl {
1092
+
url = "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz";
1093
+
sha512 = "DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==";
1094
+
};
1095
+
};
1096
+
"get-intrinsic-1.1.1" = {
1097
+
name = "get-intrinsic";
1098
+
packageName = "get-intrinsic";
1099
+
version = "1.1.1";
1100
+
src = fetchurl {
1101
+
url = "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz";
1102
+
sha512 = "kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==";
1103
+
};
1104
+
};
1105
+
"getpass-0.1.7" = {
1106
+
name = "getpass";
1107
+
packageName = "getpass";
1108
+
version = "0.1.7";
1109
+
src = fetchurl {
1110
+
url = "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz";
1111
+
sha1 = "5eff8e3e684d569ae4cb2b1282604e8ba62149fa";
1112
+
};
1113
+
};
1114
+
"glob-7.1.3" = {
1115
+
name = "glob";
1116
+
packageName = "glob";
1117
+
version = "7.1.3";
1118
+
src = fetchurl {
1119
+
url = "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz";
1120
+
sha512 = "vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==";
1121
+
};
1122
+
};
1123
+
"glob-parent-5.1.2" = {
1124
+
name = "glob-parent";
1125
+
packageName = "glob-parent";
1126
+
version = "5.1.2";
1127
+
src = fetchurl {
1128
+
url = "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz";
1129
+
sha512 = "AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==";
1130
+
};
1131
+
};
1132
+
"glob-to-regexp-0.4.1" = {
1133
+
name = "glob-to-regexp";
1134
+
packageName = "glob-to-regexp";
1135
+
version = "0.4.1";
1136
+
src = fetchurl {
1137
+
url = "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz";
1138
+
sha512 = "lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==";
1139
+
};
1140
+
};
1141
+
"graceful-fs-4.2.6" = {
1142
+
name = "graceful-fs";
1143
+
packageName = "graceful-fs";
1144
+
version = "4.2.6";
1145
+
src = fetchurl {
1146
+
url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz";
1147
+
sha512 = "nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==";
1148
+
};
1149
+
};
1150
+
"growl-1.10.5" = {
1151
+
name = "growl";
1152
+
packageName = "growl";
1153
+
version = "1.10.5";
1154
+
src = fetchurl {
1155
+
url = "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz";
1156
+
sha512 = "qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==";
1157
+
};
1158
+
};
1159
+
"har-schema-2.0.0" = {
1160
+
name = "har-schema";
1161
+
packageName = "har-schema";
1162
+
version = "2.0.0";
1163
+
src = fetchurl {
1164
+
url = "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz";
1165
+
sha1 = "a94c2224ebcac04782a0d9035521f24735b7ec92";
1166
+
};
1167
+
};
1168
+
"har-validator-5.1.5" = {
1169
+
name = "har-validator";
1170
+
packageName = "har-validator";
1171
+
version = "5.1.5";
1172
+
src = fetchurl {
1173
+
url = "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz";
1174
+
sha512 = "nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==";
1175
+
};
1176
+
};
1177
+
"has-1.0.3" = {
1178
+
name = "has";
1179
+
packageName = "has";
1180
+
version = "1.0.3";
1181
+
src = fetchurl {
1182
+
url = "https://registry.npmjs.org/has/-/has-1.0.3.tgz";
1183
+
sha512 = "f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==";
1184
+
};
1185
+
};
1186
+
"has-bigints-1.0.1" = {
1187
+
name = "has-bigints";
1188
+
packageName = "has-bigints";
1189
+
version = "1.0.1";
1190
+
src = fetchurl {
1191
+
url = "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz";
1192
+
sha512 = "LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==";
1193
+
};
1194
+
};
1195
+
"has-flag-3.0.0" = {
1196
+
name = "has-flag";
1197
+
packageName = "has-flag";
1198
+
version = "3.0.0";
1199
+
src = fetchurl {
1200
+
url = "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz";
1201
+
sha1 = "b5d454dc2199ae225699f3467e5a07f3b955bafd";
1202
+
};
1203
+
};
1204
+
"has-flag-4.0.0" = {
1205
+
name = "has-flag";
1206
+
packageName = "has-flag";
1207
+
version = "4.0.0";
1208
+
src = fetchurl {
1209
+
url = "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz";
1210
+
sha512 = "EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==";
1211
+
};
1212
+
};
1213
+
"has-symbols-1.0.2" = {
1214
+
name = "has-symbols";
1215
+
packageName = "has-symbols";
1216
+
version = "1.0.2";
1217
+
src = fetchurl {
1218
+
url = "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz";
1219
+
sha512 = "chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==";
1220
+
};
1221
+
};
1222
+
"hash.js-1.1.7" = {
1223
+
name = "hash.js";
1224
+
packageName = "hash.js";
1225
+
version = "1.1.7";
1226
+
src = fetchurl {
1227
+
url = "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz";
1228
+
sha512 = "taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==";
1229
+
};
1230
+
};
1231
+
"he-1.2.0" = {
1232
+
name = "he";
1233
+
packageName = "he";
1234
+
version = "1.2.0";
1235
+
src = fetchurl {
1236
+
url = "https://registry.npmjs.org/he/-/he-1.2.0.tgz";
1237
+
sha512 = "F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==";
1238
+
};
1239
+
};
1240
+
"html-to-text-6.0.0" = {
1241
+
name = "html-to-text";
1242
+
packageName = "html-to-text";
1243
+
version = "6.0.0";
1244
+
src = fetchurl {
1245
+
url = "https://registry.npmjs.org/html-to-text/-/html-to-text-6.0.0.tgz";
1246
+
sha512 = "r0KNC5aqCAItsjlgtirW6RW25c92Ee3ybQj8z//4Sl4suE3HIPqM4deGpYCUJULLjtVPEP1+Ma+1ZeX1iMsCiA==";
1247
+
};
1248
+
};
1249
+
"htmlencode-0.0.4" = {
1250
+
name = "htmlencode";
1251
+
packageName = "htmlencode";
1252
+
version = "0.0.4";
1253
+
src = fetchurl {
1254
+
url = "https://registry.npmjs.org/htmlencode/-/htmlencode-0.0.4.tgz";
1255
+
sha1 = "f7e2d6afbe18a87a78e63ba3308e753766740e3f";
1256
+
};
1257
+
};
1258
+
"htmlparser2-4.1.0" = {
1259
+
name = "htmlparser2";
1260
+
packageName = "htmlparser2";
1261
+
version = "4.1.0";
1262
+
src = fetchurl {
1263
+
url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-4.1.0.tgz";
1264
+
sha512 = "4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==";
1265
+
};
1266
+
};
1267
+
"htmlparser2-6.1.0" = {
1268
+
name = "htmlparser2";
1269
+
packageName = "htmlparser2";
1270
+
version = "6.1.0";
1271
+
src = fetchurl {
1272
+
url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz";
1273
+
sha512 = "gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==";
1274
+
};
1275
+
};
1276
+
"http-errors-1.7.2" = {
1277
+
name = "http-errors";
1278
+
packageName = "http-errors";
1279
+
version = "1.7.2";
1280
+
src = fetchurl {
1281
+
url = "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz";
1282
+
sha512 = "uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==";
1283
+
};
1284
+
};
1285
+
"http-signature-1.2.0" = {
1286
+
name = "http-signature";
1287
+
packageName = "http-signature";
1288
+
version = "1.2.0";
1289
+
src = fetchurl {
1290
+
url = "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz";
1291
+
sha1 = "9aecd925114772f3d95b65a60abb8f7c18fbace1";
1292
+
};
1293
+
};
1294
+
"iconv-lite-0.4.24" = {
1295
+
name = "iconv-lite";
1296
+
packageName = "iconv-lite";
1297
+
version = "0.4.24";
1298
+
src = fetchurl {
1299
+
url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz";
1300
+
sha512 = "v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==";
1301
+
};
1302
+
};
1303
+
"inflight-1.0.6" = {
1304
+
name = "inflight";
1305
+
packageName = "inflight";
1306
+
version = "1.0.6";
1307
+
src = fetchurl {
1308
+
url = "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz";
1309
+
sha1 = "49bd6331d7d02d0c09bc910a1075ba8165b56df9";
1310
+
};
1311
+
};
1312
+
"inherits-2.0.3" = {
1313
+
name = "inherits";
1314
+
packageName = "inherits";
1315
+
version = "2.0.3";
1316
+
src = fetchurl {
1317
+
url = "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz";
1318
+
sha1 = "633c2c83e3da42a502f52466022480f4208261de";
1319
+
};
1320
+
};
1321
+
"ipaddr.js-1.9.1" = {
1322
+
name = "ipaddr.js";
1323
+
packageName = "ipaddr.js";
1324
+
version = "1.9.1";
1325
+
src = fetchurl {
1326
+
url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz";
1327
+
sha512 = "0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==";
1328
+
};
1329
+
};
1330
+
"is-bigint-1.0.2" = {
1331
+
name = "is-bigint";
1332
+
packageName = "is-bigint";
1333
+
version = "1.0.2";
1334
+
src = fetchurl {
1335
+
url = "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz";
1336
+
sha512 = "0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==";
1337
+
};
1338
+
};
1339
+
"is-binary-path-2.1.0" = {
1340
+
name = "is-binary-path";
1341
+
packageName = "is-binary-path";
1342
+
version = "2.1.0";
1343
+
src = fetchurl {
1344
+
url = "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz";
1345
+
sha512 = "ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==";
1346
+
};
1347
+
};
1348
+
"is-boolean-object-1.1.1" = {
1349
+
name = "is-boolean-object";
1350
+
packageName = "is-boolean-object";
1351
+
version = "1.1.1";
1352
+
src = fetchurl {
1353
+
url = "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz";
1354
+
sha512 = "bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==";
1355
+
};
1356
+
};
1357
+
"is-buffer-2.0.5" = {
1358
+
name = "is-buffer";
1359
+
packageName = "is-buffer";
1360
+
version = "2.0.5";
1361
+
src = fetchurl {
1362
+
url = "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz";
1363
+
sha512 = "i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==";
1364
+
};
1365
+
};
1366
+
"is-callable-1.2.3" = {
1367
+
name = "is-callable";
1368
+
packageName = "is-callable";
1369
+
version = "1.2.3";
1370
+
src = fetchurl {
1371
+
url = "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz";
1372
+
sha512 = "J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==";
1373
+
};
1374
+
};
1375
+
"is-core-module-2.4.0" = {
1376
+
name = "is-core-module";
1377
+
packageName = "is-core-module";
1378
+
version = "2.4.0";
1379
+
src = fetchurl {
1380
+
url = "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz";
1381
+
sha512 = "6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==";
1382
+
};
1383
+
};
1384
+
"is-date-object-1.0.4" = {
1385
+
name = "is-date-object";
1386
+
packageName = "is-date-object";
1387
+
version = "1.0.4";
1388
+
src = fetchurl {
1389
+
url = "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz";
1390
+
sha512 = "/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==";
1391
+
};
1392
+
};
1393
+
"is-extglob-2.1.1" = {
1394
+
name = "is-extglob";
1395
+
packageName = "is-extglob";
1396
+
version = "2.1.1";
1397
+
src = fetchurl {
1398
+
url = "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz";
1399
+
sha1 = "a88c02535791f02ed37c76a1b9ea9773c833f8c2";
1400
+
};
1401
+
};
1402
+
"is-fullwidth-code-point-2.0.0" = {
1403
+
name = "is-fullwidth-code-point";
1404
+
packageName = "is-fullwidth-code-point";
1405
+
version = "2.0.0";
1406
+
src = fetchurl {
1407
+
url = "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz";
1408
+
sha1 = "a3b30a5c4f199183167aaab93beefae3ddfb654f";
1409
+
};
1410
+
};
1411
+
"is-glob-4.0.1" = {
1412
+
name = "is-glob";
1413
+
packageName = "is-glob";
1414
+
version = "4.0.1";
1415
+
src = fetchurl {
1416
+
url = "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz";
1417
+
sha512 = "5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==";
1418
+
};
1419
+
};
1420
+
"is-negative-zero-2.0.1" = {
1421
+
name = "is-negative-zero";
1422
+
packageName = "is-negative-zero";
1423
+
version = "2.0.1";
1424
+
src = fetchurl {
1425
+
url = "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz";
1426
+
sha512 = "2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==";
1427
+
};
1428
+
};
1429
+
"is-number-7.0.0" = {
1430
+
name = "is-number";
1431
+
packageName = "is-number";
1432
+
version = "7.0.0";
1433
+
src = fetchurl {
1434
+
url = "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz";
1435
+
sha512 = "41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==";
1436
+
};
1437
+
};
1438
+
"is-number-object-1.0.5" = {
1439
+
name = "is-number-object";
1440
+
packageName = "is-number-object";
1441
+
version = "1.0.5";
1442
+
src = fetchurl {
1443
+
url = "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz";
1444
+
sha512 = "RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==";
1445
+
};
1446
+
};
1447
+
"is-plain-object-5.0.0" = {
1448
+
name = "is-plain-object";
1449
+
packageName = "is-plain-object";
1450
+
version = "5.0.0";
1451
+
src = fetchurl {
1452
+
url = "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz";
1453
+
sha512 = "VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==";
1454
+
};
1455
+
};
1456
+
"is-promise-2.2.2" = {
1457
+
name = "is-promise";
1458
+
packageName = "is-promise";
1459
+
version = "2.2.2";
1460
+
src = fetchurl {
1461
+
url = "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz";
1462
+
sha512 = "+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==";
1463
+
};
1464
+
};
1465
+
"is-regex-1.1.3" = {
1466
+
name = "is-regex";
1467
+
packageName = "is-regex";
1468
+
version = "1.1.3";
1469
+
src = fetchurl {
1470
+
url = "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz";
1471
+
sha512 = "qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==";
1472
+
};
1473
+
};
1474
+
"is-string-1.0.6" = {
1475
+
name = "is-string";
1476
+
packageName = "is-string";
1477
+
version = "1.0.6";
1478
+
src = fetchurl {
1479
+
url = "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz";
1480
+
sha512 = "2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==";
1481
+
};
1482
+
};
1483
+
"is-symbol-1.0.4" = {
1484
+
name = "is-symbol";
1485
+
packageName = "is-symbol";
1486
+
version = "1.0.4";
1487
+
src = fetchurl {
1488
+
url = "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz";
1489
+
sha512 = "C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==";
1490
+
};
1491
+
};
1492
+
"is-typedarray-1.0.0" = {
1493
+
name = "is-typedarray";
1494
+
packageName = "is-typedarray";
1495
+
version = "1.0.0";
1496
+
src = fetchurl {
1497
+
url = "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz";
1498
+
sha1 = "e479c80858df0c1b11ddda6940f96011fcda4a9a";
1499
+
};
1500
+
};
1501
+
"isexe-2.0.0" = {
1502
+
name = "isexe";
1503
+
packageName = "isexe";
1504
+
version = "2.0.0";
1505
+
src = fetchurl {
1506
+
url = "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz";
1507
+
sha1 = "e8fbf374dc556ff8947a10dcb0572d633f2cfa10";
1508
+
};
1509
+
};
1510
+
"isstream-0.1.2" = {
1511
+
name = "isstream";
1512
+
packageName = "isstream";
1513
+
version = "0.1.2";
1514
+
src = fetchurl {
1515
+
url = "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz";
1516
+
sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a";
1517
+
};
1518
+
};
1519
+
"jest-diff-26.6.2" = {
1520
+
name = "jest-diff";
1521
+
packageName = "jest-diff";
1522
+
version = "26.6.2";
1523
+
src = fetchurl {
1524
+
url = "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz";
1525
+
sha512 = "6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==";
1526
+
};
1527
+
};
1528
+
"jest-get-type-26.3.0" = {
1529
+
name = "jest-get-type";
1530
+
packageName = "jest-get-type";
1531
+
version = "26.3.0";
1532
+
src = fetchurl {
1533
+
url = "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz";
1534
+
sha512 = "TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==";
1535
+
};
1536
+
};
1537
+
"jest-matcher-utils-26.6.2" = {
1538
+
name = "jest-matcher-utils";
1539
+
packageName = "jest-matcher-utils";
1540
+
version = "26.6.2";
1541
+
src = fetchurl {
1542
+
url = "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz";
1543
+
sha512 = "llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==";
1544
+
};
1545
+
};
1546
+
"jest-message-util-26.6.2" = {
1547
+
name = "jest-message-util";
1548
+
packageName = "jest-message-util";
1549
+
version = "26.6.2";
1550
+
src = fetchurl {
1551
+
url = "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz";
1552
+
sha512 = "rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==";
1553
+
};
1554
+
};
1555
+
"jest-regex-util-26.0.0" = {
1556
+
name = "jest-regex-util";
1557
+
packageName = "jest-regex-util";
1558
+
version = "26.0.0";
1559
+
src = fetchurl {
1560
+
url = "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-26.0.0.tgz";
1561
+
sha512 = "Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==";
1562
+
};
1563
+
};
1564
+
"js-tokens-4.0.0" = {
1565
+
name = "js-tokens";
1566
+
packageName = "js-tokens";
1567
+
version = "4.0.0";
1568
+
src = fetchurl {
1569
+
url = "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz";
1570
+
sha512 = "RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==";
1571
+
};
1572
+
};
1573
+
"js-yaml-3.13.1" = {
1574
+
name = "js-yaml";
1575
+
packageName = "js-yaml";
1576
+
version = "3.13.1";
1577
+
src = fetchurl {
1578
+
url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz";
1579
+
sha512 = "YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==";
1580
+
};
1581
+
};
1582
+
"js-yaml-3.14.1" = {
1583
+
name = "js-yaml";
1584
+
packageName = "js-yaml";
1585
+
version = "3.14.1";
1586
+
src = fetchurl {
1587
+
url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz";
1588
+
sha512 = "okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==";
1589
+
};
1590
+
};
1591
+
"jsbn-0.1.1" = {
1592
+
name = "jsbn";
1593
+
packageName = "jsbn";
1594
+
version = "0.1.1";
1595
+
src = fetchurl {
1596
+
url = "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz";
1597
+
sha1 = "a5e654c2e5a2deb5f201d96cefbca80c0ef2f513";
1598
+
};
1599
+
};
1600
+
"json-schema-0.2.3" = {
1601
+
name = "json-schema";
1602
+
packageName = "json-schema";
1603
+
version = "0.2.3";
1604
+
src = fetchurl {
1605
+
url = "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz";
1606
+
sha1 = "b480c892e59a2f05954ce727bd3f2a4e882f9e13";
1607
+
};
1608
+
};
1609
+
"json-schema-traverse-0.4.1" = {
1610
+
name = "json-schema-traverse";
1611
+
packageName = "json-schema-traverse";
1612
+
version = "0.4.1";
1613
+
src = fetchurl {
1614
+
url = "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz";
1615
+
sha512 = "xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==";
1616
+
};
1617
+
};
1618
+
"json-stringify-safe-5.0.1" = {
1619
+
name = "json-stringify-safe";
1620
+
packageName = "json-stringify-safe";
1621
+
version = "5.0.1";
1622
+
src = fetchurl {
1623
+
url = "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
1624
+
sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
1625
+
};
1626
+
};
1627
+
"json5-1.0.1" = {
1628
+
name = "json5";
1629
+
packageName = "json5";
1630
+
version = "1.0.1";
1631
+
src = fetchurl {
1632
+
url = "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz";
1633
+
sha512 = "aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==";
1634
+
};
1635
+
};
1636
+
"json5-2.2.0" = {
1637
+
name = "json5";
1638
+
packageName = "json5";
1639
+
version = "2.2.0";
1640
+
src = fetchurl {
1641
+
url = "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz";
1642
+
sha512 = "f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==";
1643
+
};
1644
+
};
1645
+
"jsprim-1.4.1" = {
1646
+
name = "jsprim";
1647
+
packageName = "jsprim";
1648
+
version = "1.4.1";
1649
+
src = fetchurl {
1650
+
url = "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz";
1651
+
sha1 = "313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2";
1652
+
};
1653
+
};
1654
+
"klona-2.0.4" = {
1655
+
name = "klona";
1656
+
packageName = "klona";
1657
+
version = "2.0.4";
1658
+
src = fetchurl {
1659
+
url = "https://registry.npmjs.org/klona/-/klona-2.0.4.tgz";
1660
+
sha512 = "ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA==";
1661
+
};
1662
+
};
1663
+
"locate-path-3.0.0" = {
1664
+
name = "locate-path";
1665
+
packageName = "locate-path";
1666
+
version = "3.0.0";
1667
+
src = fetchurl {
1668
+
url = "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz";
1669
+
sha512 = "7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==";
1670
+
};
1671
+
};
1672
+
"lodash-4.17.21" = {
1673
+
name = "lodash";
1674
+
packageName = "lodash";
1675
+
version = "4.17.21";
1676
+
src = fetchurl {
1677
+
url = "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz";
1678
+
sha512 = "v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==";
1679
+
};
1680
+
};
1681
+
"log-symbols-3.0.0" = {
1682
+
name = "log-symbols";
1683
+
packageName = "log-symbols";
1684
+
version = "3.0.0";
1685
+
src = fetchurl {
1686
+
url = "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz";
1687
+
sha512 = "dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==";
1688
+
};
1689
+
};
1690
+
"lowdb-1.0.0" = {
1691
+
name = "lowdb";
1692
+
packageName = "lowdb";
1693
+
version = "1.0.0";
1694
+
src = fetchurl {
1695
+
url = "https://registry.npmjs.org/lowdb/-/lowdb-1.0.0.tgz";
1696
+
sha512 = "2+x8esE/Wb9SQ1F9IHaYWfsC9FIecLOPrK4g17FGEayjUWH172H6nwicRovGvSE2CPZouc2MCIqCI7h9d+GftQ==";
1697
+
};
1698
+
};
1699
+
"lru-cache-6.0.0" = {
1700
+
name = "lru-cache";
1701
+
packageName = "lru-cache";
1702
+
version = "6.0.0";
1703
+
src = fetchurl {
1704
+
url = "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz";
1705
+
sha512 = "Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==";
1706
+
};
1707
+
};
1708
+
"make-error-1.3.6" = {
1709
+
name = "make-error";
1710
+
packageName = "make-error";
1711
+
version = "1.3.6";
1712
+
src = fetchurl {
1713
+
url = "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz";
1714
+
sha512 = "s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==";
1715
+
};
1716
+
};
1717
+
"matrix-bot-sdk-0.5.18" = {
1718
+
name = "matrix-bot-sdk";
1719
+
packageName = "matrix-bot-sdk";
1720
+
version = "0.5.18";
1721
+
src = fetchurl {
1722
+
url = "https://registry.npmjs.org/matrix-bot-sdk/-/matrix-bot-sdk-0.5.18.tgz";
1723
+
sha512 = "NntJoGmZdGlBsJ+HuEi1zB0lcRd8BCiPH6hExeuRNKtMOVHhJIKUgd5IY2cTy5YxHGk+kbBbkpzooFvRxVkOrg==";
1724
+
};
1725
+
};
1726
+
"media-typer-0.3.0" = {
1727
+
name = "media-typer";
1728
+
packageName = "media-typer";
1729
+
version = "0.3.0";
1730
+
src = fetchurl {
1731
+
url = "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz";
1732
+
sha1 = "8710d7af0aa626f8fffa1ce00168545263255748";
1733
+
};
1734
+
};
1735
+
"merge-descriptors-1.0.1" = {
1736
+
name = "merge-descriptors";
1737
+
packageName = "merge-descriptors";
1738
+
version = "1.0.1";
1739
+
src = fetchurl {
1740
+
url = "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz";
1741
+
sha1 = "b00aaa556dd8b44568150ec9d1b953f3f90cbb61";
1742
+
};
1743
+
};
1744
+
"methods-1.1.2" = {
1745
+
name = "methods";
1746
+
packageName = "methods";
1747
+
version = "1.1.2";
1748
+
src = fetchurl {
1749
+
url = "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz";
1750
+
sha1 = "5529a4d67654134edcc5266656835b0f851afcee";
1751
+
};
1752
+
};
1753
+
"micromatch-4.0.4" = {
1754
+
name = "micromatch";
1755
+
packageName = "micromatch";
1756
+
version = "4.0.4";
1757
+
src = fetchurl {
1758
+
url = "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz";
1759
+
sha512 = "pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==";
1760
+
};
1761
+
};
1762
+
"mime-1.6.0" = {
1763
+
name = "mime";
1764
+
packageName = "mime";
1765
+
version = "1.6.0";
1766
+
src = fetchurl {
1767
+
url = "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz";
1768
+
sha512 = "x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==";
1769
+
};
1770
+
};
1771
+
"mime-db-1.47.0" = {
1772
+
name = "mime-db";
1773
+
packageName = "mime-db";
1774
+
version = "1.47.0";
1775
+
src = fetchurl {
1776
+
url = "https://registry.npmjs.org/mime-db/-/mime-db-1.47.0.tgz";
1777
+
sha512 = "QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw==";
1778
+
};
1779
+
};
1780
+
"mime-types-2.1.30" = {
1781
+
name = "mime-types";
1782
+
packageName = "mime-types";
1783
+
version = "2.1.30";
1784
+
src = fetchurl {
1785
+
url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.30.tgz";
1786
+
sha512 = "crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg==";
1787
+
};
1788
+
};
1789
+
"minimalistic-assert-1.0.1" = {
1790
+
name = "minimalistic-assert";
1791
+
packageName = "minimalistic-assert";
1792
+
version = "1.0.1";
1793
+
src = fetchurl {
1794
+
url = "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz";
1795
+
sha512 = "UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==";
1796
+
};
1797
+
};
1798
+
"minimatch-3.0.4" = {
1799
+
name = "minimatch";
1800
+
packageName = "minimatch";
1801
+
version = "3.0.4";
1802
+
src = fetchurl {
1803
+
url = "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";
1804
+
sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
1805
+
};
1806
+
};
1807
+
"minimist-1.2.5" = {
1808
+
name = "minimist";
1809
+
packageName = "minimist";
1810
+
version = "1.2.5";
1811
+
src = fetchurl {
1812
+
url = "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz";
1813
+
sha512 = "FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==";
1814
+
};
1815
+
};
1816
+
"mkdirp-0.5.5" = {
1817
+
name = "mkdirp";
1818
+
packageName = "mkdirp";
1819
+
version = "0.5.5";
1820
+
src = fetchurl {
1821
+
url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz";
1822
+
sha512 = "NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==";
1823
+
};
1824
+
};
1825
+
"mkdirp-1.0.4" = {
1826
+
name = "mkdirp";
1827
+
packageName = "mkdirp";
1828
+
version = "1.0.4";
1829
+
src = fetchurl {
1830
+
url = "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz";
1831
+
sha512 = "vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==";
1832
+
};
1833
+
};
1834
+
"mocha-7.2.0" = {
1835
+
name = "mocha";
1836
+
packageName = "mocha";
1837
+
version = "7.2.0";
1838
+
src = fetchurl {
1839
+
url = "https://registry.npmjs.org/mocha/-/mocha-7.2.0.tgz";
1840
+
sha512 = "O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==";
1841
+
};
1842
+
};
1843
+
"morgan-1.10.0" = {
1844
+
name = "morgan";
1845
+
packageName = "morgan";
1846
+
version = "1.10.0";
1847
+
src = fetchurl {
1848
+
url = "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz";
1849
+
sha512 = "AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==";
1850
+
};
1851
+
};
1852
+
"ms-2.0.0" = {
1853
+
name = "ms";
1854
+
packageName = "ms";
1855
+
version = "2.0.0";
1856
+
src = fetchurl {
1857
+
url = "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz";
1858
+
sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8";
1859
+
};
1860
+
};
1861
+
"ms-2.1.1" = {
1862
+
name = "ms";
1863
+
packageName = "ms";
1864
+
version = "2.1.1";
1865
+
src = fetchurl {
1866
+
url = "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz";
1867
+
sha512 = "tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==";
1868
+
};
1869
+
};
1870
+
"nanoid-3.1.23" = {
1871
+
name = "nanoid";
1872
+
packageName = "nanoid";
1873
+
version = "3.1.23";
1874
+
src = fetchurl {
1875
+
url = "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz";
1876
+
sha512 = "FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==";
1877
+
};
1878
+
};
1879
+
"negotiator-0.6.2" = {
1880
+
name = "negotiator";
1881
+
packageName = "negotiator";
1882
+
version = "0.6.2";
1883
+
src = fetchurl {
1884
+
url = "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz";
1885
+
sha512 = "hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==";
1886
+
};
1887
+
};
1888
+
"node-environment-flags-1.0.6" = {
1889
+
name = "node-environment-flags";
1890
+
packageName = "node-environment-flags";
1891
+
version = "1.0.6";
1892
+
src = fetchurl {
1893
+
url = "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz";
1894
+
sha512 = "5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw==";
1895
+
};
1896
+
};
1897
+
"normalize-path-3.0.0" = {
1898
+
name = "normalize-path";
1899
+
packageName = "normalize-path";
1900
+
version = "3.0.0";
1901
+
src = fetchurl {
1902
+
url = "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz";
1903
+
sha512 = "6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==";
1904
+
};
1905
+
};
1906
+
"oauth-sign-0.9.0" = {
1907
+
name = "oauth-sign";
1908
+
packageName = "oauth-sign";
1909
+
version = "0.9.0";
1910
+
src = fetchurl {
1911
+
url = "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz";
1912
+
sha512 = "fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==";
1913
+
};
1914
+
};
1915
+
"object-inspect-1.10.3" = {
1916
+
name = "object-inspect";
1917
+
packageName = "object-inspect";
1918
+
version = "1.10.3";
1919
+
src = fetchurl {
1920
+
url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz";
1921
+
sha512 = "e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==";
1922
+
};
1923
+
};
1924
+
"object-keys-1.1.1" = {
1925
+
name = "object-keys";
1926
+
packageName = "object-keys";
1927
+
version = "1.1.1";
1928
+
src = fetchurl {
1929
+
url = "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz";
1930
+
sha512 = "NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==";
1931
+
};
1932
+
};
1933
+
"object.assign-4.1.0" = {
1934
+
name = "object.assign";
1935
+
packageName = "object.assign";
1936
+
version = "4.1.0";
1937
+
src = fetchurl {
1938
+
url = "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz";
1939
+
sha512 = "exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==";
1940
+
};
1941
+
};
1942
+
"object.assign-4.1.2" = {
1943
+
name = "object.assign";
1944
+
packageName = "object.assign";
1945
+
version = "4.1.2";
1946
+
src = fetchurl {
1947
+
url = "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz";
1948
+
sha512 = "ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==";
1949
+
};
1950
+
};
1951
+
"object.getownpropertydescriptors-2.1.2" = {
1952
+
name = "object.getownpropertydescriptors";
1953
+
packageName = "object.getownpropertydescriptors";
1954
+
version = "2.1.2";
1955
+
src = fetchurl {
1956
+
url = "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.2.tgz";
1957
+
sha512 = "WtxeKSzfBjlzL+F9b7M7hewDzMwy+C8NRssHd1YrNlzHzIDrXcXiNOMrezdAEM4UXixgV+vvnyBeN7Rygl2ttQ==";
1958
+
};
1959
+
};
1960
+
"on-finished-2.3.0" = {
1961
+
name = "on-finished";
1962
+
packageName = "on-finished";
1963
+
version = "2.3.0";
1964
+
src = fetchurl {
1965
+
url = "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz";
1966
+
sha1 = "20f1336481b083cd75337992a16971aa2d906947";
1967
+
};
1968
+
};
1969
+
"on-headers-1.0.2" = {
1970
+
name = "on-headers";
1971
+
packageName = "on-headers";
1972
+
version = "1.0.2";
1973
+
src = fetchurl {
1974
+
url = "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz";
1975
+
sha512 = "pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==";
1976
+
};
1977
+
};
1978
+
"once-1.4.0" = {
1979
+
name = "once";
1980
+
packageName = "once";
1981
+
version = "1.4.0";
1982
+
src = fetchurl {
1983
+
url = "https://registry.npmjs.org/once/-/once-1.4.0.tgz";
1984
+
sha1 = "583b1aa775961d4b113ac17d9c50baef9dd76bd1";
1985
+
};
1986
+
};
1987
+
"p-limit-2.3.0" = {
1988
+
name = "p-limit";
1989
+
packageName = "p-limit";
1990
+
version = "2.3.0";
1991
+
src = fetchurl {
1992
+
url = "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz";
1993
+
sha512 = "//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==";
1994
+
};
1995
+
};
1996
+
"p-locate-3.0.0" = {
1997
+
name = "p-locate";
1998
+
packageName = "p-locate";
1999
+
version = "3.0.0";
2000
+
src = fetchurl {
2001
+
url = "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz";
2002
+
sha512 = "x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==";
2003
+
};
2004
+
};
2005
+
"p-try-2.2.0" = {
2006
+
name = "p-try";
2007
+
packageName = "p-try";
2008
+
version = "2.2.0";
2009
+
src = fetchurl {
2010
+
url = "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz";
2011
+
sha512 = "R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==";
2012
+
};
2013
+
};
2014
+
"parse-srcset-1.0.2" = {
2015
+
name = "parse-srcset";
2016
+
packageName = "parse-srcset";
2017
+
version = "1.0.2";
2018
+
src = fetchurl {
2019
+
url = "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz";
2020
+
sha1 = "f2bd221f6cc970a938d88556abc589caaaa2bde1";
2021
+
};
2022
+
};
2023
+
"parseurl-1.3.3" = {
2024
+
name = "parseurl";
2025
+
packageName = "parseurl";
2026
+
version = "1.3.3";
2027
+
src = fetchurl {
2028
+
url = "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz";
2029
+
sha512 = "CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==";
2030
+
};
2031
+
};
2032
+
"path-exists-3.0.0" = {
2033
+
name = "path-exists";
2034
+
packageName = "path-exists";
2035
+
version = "3.0.0";
2036
+
src = fetchurl {
2037
+
url = "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz";
2038
+
sha1 = "ce0ebeaa5f78cb18925ea7d810d7b59b010fd515";
2039
+
};
2040
+
};
2041
+
"path-is-absolute-1.0.1" = {
2042
+
name = "path-is-absolute";
2043
+
packageName = "path-is-absolute";
2044
+
version = "1.0.1";
2045
+
src = fetchurl {
2046
+
url = "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
2047
+
sha1 = "174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f";
2048
+
};
2049
+
};
2050
+
"path-parse-1.0.6" = {
2051
+
name = "path-parse";
2052
+
packageName = "path-parse";
2053
+
version = "1.0.6";
2054
+
src = fetchurl {
2055
+
url = "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz";
2056
+
sha512 = "GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==";
2057
+
};
2058
+
};
2059
+
"path-to-regexp-0.1.7" = {
2060
+
name = "path-to-regexp";
2061
+
packageName = "path-to-regexp";
2062
+
version = "0.1.7";
2063
+
src = fetchurl {
2064
+
url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz";
2065
+
sha1 = "df604178005f522f15eb4490e7247a1bfaa67f8c";
2066
+
};
2067
+
};
2068
+
"performance-now-2.1.0" = {
2069
+
name = "performance-now";
2070
+
packageName = "performance-now";
2071
+
version = "2.1.0";
2072
+
src = fetchurl {
2073
+
url = "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz";
2074
+
sha1 = "6309f4e0e5fa913ec1c69307ae364b4b377c9e7b";
2075
+
};
2076
+
};
2077
+
"picomatch-2.2.3" = {
2078
+
name = "picomatch";
2079
+
packageName = "picomatch";
2080
+
version = "2.2.3";
2081
+
src = fetchurl {
2082
+
url = "https://registry.npmjs.org/picomatch/-/picomatch-2.2.3.tgz";
2083
+
sha512 = "KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg==";
2084
+
};
2085
+
};
2086
+
"pify-3.0.0" = {
2087
+
name = "pify";
2088
+
packageName = "pify";
2089
+
version = "3.0.0";
2090
+
src = fetchurl {
2091
+
url = "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz";
2092
+
sha1 = "e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176";
2093
+
};
2094
+
};
2095
+
"postcss-8.3.0" = {
2096
+
name = "postcss";
2097
+
packageName = "postcss";
2098
+
version = "8.3.0";
2099
+
src = fetchurl {
2100
+
url = "https://registry.npmjs.org/postcss/-/postcss-8.3.0.tgz";
2101
+
sha512 = "+ogXpdAjWGa+fdYY5BQ96V/6tAo+TdSSIMP5huJBIygdWwKtVoB5JWZ7yUd4xZ8r+8Kvvx4nyg/PQ071H4UtcQ==";
2102
+
};
2103
+
};
2104
+
"pretty-format-26.6.2" = {
2105
+
name = "pretty-format";
2106
+
packageName = "pretty-format";
2107
+
version = "26.6.2";
2108
+
src = fetchurl {
2109
+
url = "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz";
2110
+
sha512 = "7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==";
2111
+
};
2112
+
};
2113
+
"proxy-addr-2.0.6" = {
2114
+
name = "proxy-addr";
2115
+
packageName = "proxy-addr";
2116
+
version = "2.0.6";
2117
+
src = fetchurl {
2118
+
url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz";
2119
+
sha512 = "dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==";
2120
+
};
2121
+
};
2122
+
"psl-1.8.0" = {
2123
+
name = "psl";
2124
+
packageName = "psl";
2125
+
version = "1.8.0";
2126
+
src = fetchurl {
2127
+
url = "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz";
2128
+
sha512 = "RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==";
2129
+
};
2130
+
};
2131
+
"punycode-2.1.1" = {
2132
+
name = "punycode";
2133
+
packageName = "punycode";
2134
+
version = "2.1.1";
2135
+
src = fetchurl {
2136
+
url = "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz";
2137
+
sha512 = "XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==";
2138
+
};
2139
+
};
2140
+
"qs-6.5.2" = {
2141
+
name = "qs";
2142
+
packageName = "qs";
2143
+
version = "6.5.2";
2144
+
src = fetchurl {
2145
+
url = "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz";
2146
+
sha512 = "N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==";
2147
+
};
2148
+
};
2149
+
"qs-6.7.0" = {
2150
+
name = "qs";
2151
+
packageName = "qs";
2152
+
version = "6.7.0";
2153
+
src = fetchurl {
2154
+
url = "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz";
2155
+
sha512 = "VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==";
2156
+
};
2157
+
};
2158
+
"range-parser-1.2.1" = {
2159
+
name = "range-parser";
2160
+
packageName = "range-parser";
2161
+
version = "1.2.1";
2162
+
src = fetchurl {
2163
+
url = "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz";
2164
+
sha512 = "Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==";
2165
+
};
2166
+
};
2167
+
"raw-body-2.4.0" = {
2168
+
name = "raw-body";
2169
+
packageName = "raw-body";
2170
+
version = "2.4.0";
2171
+
src = fetchurl {
2172
+
url = "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz";
2173
+
sha512 = "4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==";
2174
+
};
2175
+
};
2176
+
"react-is-17.0.2" = {
2177
+
name = "react-is";
2178
+
packageName = "react-is";
2179
+
version = "17.0.2";
2180
+
src = fetchurl {
2181
+
url = "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz";
2182
+
sha512 = "w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==";
2183
+
};
2184
+
};
2185
+
"readdirp-3.2.0" = {
2186
+
name = "readdirp";
2187
+
packageName = "readdirp";
2188
+
version = "3.2.0";
2189
+
src = fetchurl {
2190
+
url = "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz";
2191
+
sha512 = "crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==";
2192
+
};
2193
+
};
2194
+
"request-2.88.2" = {
2195
+
name = "request";
2196
+
packageName = "request";
2197
+
version = "2.88.2";
2198
+
src = fetchurl {
2199
+
url = "https://registry.npmjs.org/request/-/request-2.88.2.tgz";
2200
+
sha512 = "MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==";
2201
+
};
2202
+
};
2203
+
"request-promise-4.2.6" = {
2204
+
name = "request-promise";
2205
+
packageName = "request-promise";
2206
+
version = "4.2.6";
2207
+
src = fetchurl {
2208
+
url = "https://registry.npmjs.org/request-promise/-/request-promise-4.2.6.tgz";
2209
+
sha512 = "HCHI3DJJUakkOr8fNoCc73E5nU5bqITjOYFMDrKHYOXWXrgD/SBaC7LjwuPymUprRyuF06UK7hd/lMHkmUXglQ==";
2210
+
};
2211
+
};
2212
+
"request-promise-core-1.1.4" = {
2213
+
name = "request-promise-core";
2214
+
packageName = "request-promise-core";
2215
+
version = "1.1.4";
2216
+
src = fetchurl {
2217
+
url = "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz";
2218
+
sha512 = "TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==";
2219
+
};
2220
+
};
2221
+
"require-directory-2.1.1" = {
2222
+
name = "require-directory";
2223
+
packageName = "require-directory";
2224
+
version = "2.1.1";
2225
+
src = fetchurl {
2226
+
url = "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz";
2227
+
sha1 = "8c64ad5fd30dab1c976e2344ffe7f792a6a6df42";
2228
+
};
2229
+
};
2230
+
"require-main-filename-2.0.0" = {
2231
+
name = "require-main-filename";
2232
+
packageName = "require-main-filename";
2233
+
version = "2.0.0";
2234
+
src = fetchurl {
2235
+
url = "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz";
2236
+
sha512 = "NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==";
2237
+
};
2238
+
};
2239
+
"resolve-1.20.0" = {
2240
+
name = "resolve";
2241
+
packageName = "resolve";
2242
+
version = "1.20.0";
2243
+
src = fetchurl {
2244
+
url = "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz";
2245
+
sha512 = "wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==";
2246
+
};
2247
+
};
2248
+
"safe-buffer-5.1.2" = {
2249
+
name = "safe-buffer";
2250
+
packageName = "safe-buffer";
2251
+
version = "5.1.2";
2252
+
src = fetchurl {
2253
+
url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz";
2254
+
sha512 = "Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==";
2255
+
};
2256
+
};
2257
+
"safer-buffer-2.1.2" = {
2258
+
name = "safer-buffer";
2259
+
packageName = "safer-buffer";
2260
+
version = "2.1.2";
2261
+
src = fetchurl {
2262
+
url = "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz";
2263
+
sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==";
2264
+
};
2265
+
};
2266
+
"sanitize-html-2.4.0" = {
2267
+
name = "sanitize-html";
2268
+
packageName = "sanitize-html";
2269
+
version = "2.4.0";
2270
+
src = fetchurl {
2271
+
url = "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.4.0.tgz";
2272
+
sha512 = "Y1OgkUiTPMqwZNRLPERSEi39iOebn2XJLbeiGOBhaJD/yLqtLGu6GE5w7evx177LeGgSE+4p4e107LMiydOf6A==";
2273
+
};
2274
+
};
2275
+
"semver-5.7.1" = {
2276
+
name = "semver";
2277
+
packageName = "semver";
2278
+
version = "5.7.1";
2279
+
src = fetchurl {
2280
+
url = "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz";
2281
+
sha512 = "sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==";
2282
+
};
2283
+
};
2284
+
"send-0.17.1" = {
2285
+
name = "send";
2286
+
packageName = "send";
2287
+
version = "0.17.1";
2288
+
src = fetchurl {
2289
+
url = "https://registry.npmjs.org/send/-/send-0.17.1.tgz";
2290
+
sha512 = "BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==";
2291
+
};
2292
+
};
2293
+
"serve-static-1.14.1" = {
2294
+
name = "serve-static";
2295
+
packageName = "serve-static";
2296
+
version = "1.14.1";
2297
+
src = fetchurl {
2298
+
url = "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz";
2299
+
sha512 = "JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==";
2300
+
};
2301
+
};
2302
+
"set-blocking-2.0.0" = {
2303
+
name = "set-blocking";
2304
+
packageName = "set-blocking";
2305
+
version = "2.0.0";
2306
+
src = fetchurl {
2307
+
url = "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz";
2308
+
sha1 = "045f9782d011ae9a6803ddd382b24392b3d890f7";
2309
+
};
2310
+
};
2311
+
"setprototypeof-1.1.1" = {
2312
+
name = "setprototypeof";
2313
+
packageName = "setprototypeof";
2314
+
version = "1.1.1";
2315
+
src = fetchurl {
2316
+
url = "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz";
2317
+
sha512 = "JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==";
2318
+
};
2319
+
};
2320
+
"slash-3.0.0" = {
2321
+
name = "slash";
2322
+
packageName = "slash";
2323
+
version = "3.0.0";
2324
+
src = fetchurl {
2325
+
url = "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz";
2326
+
sha512 = "g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==";
2327
+
};
2328
+
};
2329
+
"source-map-0.6.1" = {
2330
+
name = "source-map";
2331
+
packageName = "source-map";
2332
+
version = "0.6.1";
2333
+
src = fetchurl {
2334
+
url = "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz";
2335
+
sha512 = "UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==";
2336
+
};
2337
+
};
2338
+
"source-map-js-0.6.2" = {
2339
+
name = "source-map-js";
2340
+
packageName = "source-map-js";
2341
+
version = "0.6.2";
2342
+
src = fetchurl {
2343
+
url = "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz";
2344
+
sha512 = "/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==";
2345
+
};
2346
+
};
2347
+
"source-map-support-0.5.19" = {
2348
+
name = "source-map-support";
2349
+
packageName = "source-map-support";
2350
+
version = "0.5.19";
2351
+
src = fetchurl {
2352
+
url = "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz";
2353
+
sha512 = "Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==";
2354
+
};
2355
+
};
2356
+
"sprintf-js-1.0.3" = {
2357
+
name = "sprintf-js";
2358
+
packageName = "sprintf-js";
2359
+
version = "1.0.3";
2360
+
src = fetchurl {
2361
+
url = "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz";
2362
+
sha1 = "04e6926f662895354f3dd015203633b857297e2c";
2363
+
};
2364
+
};
2365
+
"sshpk-1.16.1" = {
2366
+
name = "sshpk";
2367
+
packageName = "sshpk";
2368
+
version = "1.16.1";
2369
+
src = fetchurl {
2370
+
url = "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz";
2371
+
sha512 = "HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==";
2372
+
};
2373
+
};
2374
+
"stack-utils-2.0.3" = {
2375
+
name = "stack-utils";
2376
+
packageName = "stack-utils";
2377
+
version = "2.0.3";
2378
+
src = fetchurl {
2379
+
url = "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.3.tgz";
2380
+
sha512 = "gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==";
2381
+
};
2382
+
};
2383
+
"statuses-1.5.0" = {
2384
+
name = "statuses";
2385
+
packageName = "statuses";
2386
+
version = "1.5.0";
2387
+
src = fetchurl {
2388
+
url = "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz";
2389
+
sha1 = "161c7dac177659fd9811f43771fa99381478628c";
2390
+
};
2391
+
};
2392
+
"stealthy-require-1.1.1" = {
2393
+
name = "stealthy-require";
2394
+
packageName = "stealthy-require";
2395
+
version = "1.1.1";
2396
+
src = fetchurl {
2397
+
url = "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz";
2398
+
sha1 = "35b09875b4ff49f26a777e509b3090a3226bf24b";
2399
+
};
2400
+
};
2401
+
"steno-0.4.4" = {
2402
+
name = "steno";
2403
+
packageName = "steno";
2404
+
version = "0.4.4";
2405
+
src = fetchurl {
2406
+
url = "https://registry.npmjs.org/steno/-/steno-0.4.4.tgz";
2407
+
sha1 = "071105bdfc286e6615c0403c27e9d7b5dcb855cb";
2408
+
};
2409
+
};
2410
+
"string-width-2.1.1" = {
2411
+
name = "string-width";
2412
+
packageName = "string-width";
2413
+
version = "2.1.1";
2414
+
src = fetchurl {
2415
+
url = "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz";
2416
+
sha512 = "nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==";
2417
+
};
2418
+
};
2419
+
"string-width-3.1.0" = {
2420
+
name = "string-width";
2421
+
packageName = "string-width";
2422
+
version = "3.1.0";
2423
+
src = fetchurl {
2424
+
url = "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz";
2425
+
sha512 = "vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==";
2426
+
};
2427
+
};
2428
+
"string.prototype.trimend-1.0.4" = {
2429
+
name = "string.prototype.trimend";
2430
+
packageName = "string.prototype.trimend";
2431
+
version = "1.0.4";
2432
+
src = fetchurl {
2433
+
url = "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz";
2434
+
sha512 = "y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==";
2435
+
};
2436
+
};
2437
+
"string.prototype.trimstart-1.0.4" = {
2438
+
name = "string.prototype.trimstart";
2439
+
packageName = "string.prototype.trimstart";
2440
+
version = "1.0.4";
2441
+
src = fetchurl {
2442
+
url = "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz";
2443
+
sha512 = "jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==";
2444
+
};
2445
+
};
2446
+
"strip-ansi-4.0.0" = {
2447
+
name = "strip-ansi";
2448
+
packageName = "strip-ansi";
2449
+
version = "4.0.0";
2450
+
src = fetchurl {
2451
+
url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz";
2452
+
sha1 = "a8479022eb1ac368a871389b635262c505ee368f";
2453
+
};
2454
+
};
2455
+
"strip-ansi-5.2.0" = {
2456
+
name = "strip-ansi";
2457
+
packageName = "strip-ansi";
2458
+
version = "5.2.0";
2459
+
src = fetchurl {
2460
+
url = "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz";
2461
+
sha512 = "DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==";
2462
+
};
2463
+
};
2464
+
"strip-bom-3.0.0" = {
2465
+
name = "strip-bom";
2466
+
packageName = "strip-bom";
2467
+
version = "3.0.0";
2468
+
src = fetchurl {
2469
+
url = "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz";
2470
+
sha1 = "2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3";
2471
+
};
2472
+
};
2473
+
"strip-json-comments-2.0.1" = {
2474
+
name = "strip-json-comments";
2475
+
packageName = "strip-json-comments";
2476
+
version = "2.0.1";
2477
+
src = fetchurl {
2478
+
url = "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz";
2479
+
sha1 = "3c531942e908c2697c0ec344858c286c7ca0a60a";
2480
+
};
2481
+
};
2482
+
"supports-color-5.5.0" = {
2483
+
name = "supports-color";
2484
+
packageName = "supports-color";
2485
+
version = "5.5.0";
2486
+
src = fetchurl {
2487
+
url = "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz";
2488
+
sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==";
2489
+
};
2490
+
};
2491
+
"supports-color-6.0.0" = {
2492
+
name = "supports-color";
2493
+
packageName = "supports-color";
2494
+
version = "6.0.0";
2495
+
src = fetchurl {
2496
+
url = "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz";
2497
+
sha512 = "on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==";
2498
+
};
2499
+
};
2500
+
"supports-color-7.2.0" = {
2501
+
name = "supports-color";
2502
+
packageName = "supports-color";
2503
+
version = "7.2.0";
2504
+
src = fetchurl {
2505
+
url = "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz";
2506
+
sha512 = "qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==";
2507
+
};
2508
+
};
2509
+
"to-regex-range-5.0.1" = {
2510
+
name = "to-regex-range";
2511
+
packageName = "to-regex-range";
2512
+
version = "5.0.1";
2513
+
src = fetchurl {
2514
+
url = "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz";
2515
+
sha512 = "65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==";
2516
+
};
2517
+
};
2518
+
"toidentifier-1.0.0" = {
2519
+
name = "toidentifier";
2520
+
packageName = "toidentifier";
2521
+
version = "1.0.0";
2522
+
src = fetchurl {
2523
+
url = "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz";
2524
+
sha512 = "yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==";
2525
+
};
2526
+
};
2527
+
"tough-cookie-2.5.0" = {
2528
+
name = "tough-cookie";
2529
+
packageName = "tough-cookie";
2530
+
version = "2.5.0";
2531
+
src = fetchurl {
2532
+
url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz";
2533
+
sha512 = "nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==";
2534
+
};
2535
+
};
2536
+
"ts-mocha-7.0.0" = {
2537
+
name = "ts-mocha";
2538
+
packageName = "ts-mocha";
2539
+
version = "7.0.0";
2540
+
src = fetchurl {
2541
+
url = "https://registry.npmjs.org/ts-mocha/-/ts-mocha-7.0.0.tgz";
2542
+
sha512 = "7WfkQw1W6JZXG5m4E1w2e945uWzBoZqmnOHvpMu0v+zvyKLdUQeTtRMfcQsVEKsUnYL6nTyH4okRt2PZucmFXQ==";
2543
+
};
2544
+
};
2545
+
"ts-node-7.0.1" = {
2546
+
name = "ts-node";
2547
+
packageName = "ts-node";
2548
+
version = "7.0.1";
2549
+
src = fetchurl {
2550
+
url = "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz";
2551
+
sha512 = "BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==";
2552
+
};
2553
+
};
2554
+
"tsconfig-paths-3.9.0" = {
2555
+
name = "tsconfig-paths";
2556
+
packageName = "tsconfig-paths";
2557
+
version = "3.9.0";
2558
+
src = fetchurl {
2559
+
url = "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz";
2560
+
sha512 = "dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==";
2561
+
};
2562
+
};
2563
+
"tslib-1.14.1" = {
2564
+
name = "tslib";
2565
+
packageName = "tslib";
2566
+
version = "1.14.1";
2567
+
src = fetchurl {
2568
+
url = "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz";
2569
+
sha512 = "Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==";
2570
+
};
2571
+
};
2572
+
"tslint-6.1.3" = {
2573
+
name = "tslint";
2574
+
packageName = "tslint";
2575
+
version = "6.1.3";
2576
+
src = fetchurl {
2577
+
url = "https://registry.npmjs.org/tslint/-/tslint-6.1.3.tgz";
2578
+
sha512 = "IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg==";
2579
+
};
2580
+
};
2581
+
"tsutils-2.29.0" = {
2582
+
name = "tsutils";
2583
+
packageName = "tsutils";
2584
+
version = "2.29.0";
2585
+
src = fetchurl {
2586
+
url = "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz";
2587
+
sha512 = "g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==";
2588
+
};
2589
+
};
2590
+
"tunnel-agent-0.6.0" = {
2591
+
name = "tunnel-agent";
2592
+
packageName = "tunnel-agent";
2593
+
version = "0.6.0";
2594
+
src = fetchurl {
2595
+
url = "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz";
2596
+
sha1 = "27a5dea06b36b04a0a9966774b290868f0fc40fd";
2597
+
};
2598
+
};
2599
+
"tweetnacl-0.14.5" = {
2600
+
name = "tweetnacl";
2601
+
packageName = "tweetnacl";
2602
+
version = "0.14.5";
2603
+
src = fetchurl {
2604
+
url = "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz";
2605
+
sha1 = "5ae68177f192d4456269d108afa93ff8743f4f64";
2606
+
};
2607
+
};
2608
+
"type-is-1.6.18" = {
2609
+
name = "type-is";
2610
+
packageName = "type-is";
2611
+
version = "1.6.18";
2612
+
src = fetchurl {
2613
+
url = "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz";
2614
+
sha512 = "TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==";
2615
+
};
2616
+
};
2617
+
"typescript-3.9.9" = {
2618
+
name = "typescript";
2619
+
packageName = "typescript";
2620
+
version = "3.9.9";
2621
+
src = fetchurl {
2622
+
url = "https://registry.npmjs.org/typescript/-/typescript-3.9.9.tgz";
2623
+
sha512 = "kdMjTiekY+z/ubJCATUPlRDl39vXYiMV9iyeMuEuXZh2we6zz80uovNN2WlAxmmdE/Z/YQe+EbOEXB5RHEED3w==";
2624
+
};
2625
+
};
2626
+
"unbox-primitive-1.0.1" = {
2627
+
name = "unbox-primitive";
2628
+
packageName = "unbox-primitive";
2629
+
version = "1.0.1";
2630
+
src = fetchurl {
2631
+
url = "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz";
2632
+
sha512 = "tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==";
2633
+
};
2634
+
};
2635
+
"unpipe-1.0.0" = {
2636
+
name = "unpipe";
2637
+
packageName = "unpipe";
2638
+
version = "1.0.0";
2639
+
src = fetchurl {
2640
+
url = "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz";
2641
+
sha1 = "b2bf4ee8514aae6165b4817829d21b2ef49904ec";
2642
+
};
2643
+
};
2644
+
"uri-js-4.4.1" = {
2645
+
name = "uri-js";
2646
+
packageName = "uri-js";
2647
+
version = "4.4.1";
2648
+
src = fetchurl {
2649
+
url = "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz";
2650
+
sha512 = "7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==";
2651
+
};
2652
+
};
2653
+
"utils-merge-1.0.1" = {
2654
+
name = "utils-merge";
2655
+
packageName = "utils-merge";
2656
+
version = "1.0.1";
2657
+
src = fetchurl {
2658
+
url = "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz";
2659
+
sha1 = "9f95710f50a267947b2ccc124741c1028427e713";
2660
+
};
2661
+
};
2662
+
"uuid-3.4.0" = {
2663
+
name = "uuid";
2664
+
packageName = "uuid";
2665
+
version = "3.4.0";
2666
+
src = fetchurl {
2667
+
url = "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz";
2668
+
sha512 = "HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==";
2669
+
};
2670
+
};
2671
+
"vary-1.1.2" = {
2672
+
name = "vary";
2673
+
packageName = "vary";
2674
+
version = "1.1.2";
2675
+
src = fetchurl {
2676
+
url = "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz";
2677
+
sha1 = "2299f02c6ded30d4a5961b0b9f74524a18f634fc";
2678
+
};
2679
+
};
2680
+
"verror-1.10.0" = {
2681
+
name = "verror";
2682
+
packageName = "verror";
2683
+
version = "1.10.0";
2684
+
src = fetchurl {
2685
+
url = "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz";
2686
+
sha1 = "3a105ca17053af55d6e270c1f8288682e18da400";
2687
+
};
2688
+
};
2689
+
"which-1.3.1" = {
2690
+
name = "which";
2691
+
packageName = "which";
2692
+
version = "1.3.1";
2693
+
src = fetchurl {
2694
+
url = "https://registry.npmjs.org/which/-/which-1.3.1.tgz";
2695
+
sha512 = "HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==";
2696
+
};
2697
+
};
2698
+
"which-boxed-primitive-1.0.2" = {
2699
+
name = "which-boxed-primitive";
2700
+
packageName = "which-boxed-primitive";
2701
+
version = "1.0.2";
2702
+
src = fetchurl {
2703
+
url = "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz";
2704
+
sha512 = "bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==";
2705
+
};
2706
+
};
2707
+
"which-module-2.0.0" = {
2708
+
name = "which-module";
2709
+
packageName = "which-module";
2710
+
version = "2.0.0";
2711
+
src = fetchurl {
2712
+
url = "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz";
2713
+
sha1 = "d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a";
2714
+
};
2715
+
};
2716
+
"wide-align-1.1.3" = {
2717
+
name = "wide-align";
2718
+
packageName = "wide-align";
2719
+
version = "1.1.3";
2720
+
src = fetchurl {
2721
+
url = "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz";
2722
+
sha512 = "QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==";
2723
+
};
2724
+
};
2725
+
"wrap-ansi-5.1.0" = {
2726
+
name = "wrap-ansi";
2727
+
packageName = "wrap-ansi";
2728
+
version = "5.1.0";
2729
+
src = fetchurl {
2730
+
url = "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz";
2731
+
sha512 = "QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==";
2732
+
};
2733
+
};
2734
+
"wrappy-1.0.2" = {
2735
+
name = "wrappy";
2736
+
packageName = "wrappy";
2737
+
version = "1.0.2";
2738
+
src = fetchurl {
2739
+
url = "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz";
2740
+
sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
2741
+
};
2742
+
};
2743
+
"y18n-4.0.3" = {
2744
+
name = "y18n";
2745
+
packageName = "y18n";
2746
+
version = "4.0.3";
2747
+
src = fetchurl {
2748
+
url = "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz";
2749
+
sha512 = "JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==";
2750
+
};
2751
+
};
2752
+
"yallist-4.0.0" = {
2753
+
name = "yallist";
2754
+
packageName = "yallist";
2755
+
version = "4.0.0";
2756
+
src = fetchurl {
2757
+
url = "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz";
2758
+
sha512 = "3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==";
2759
+
};
2760
+
};
2761
+
"yargs-13.3.2" = {
2762
+
name = "yargs";
2763
+
packageName = "yargs";
2764
+
version = "13.3.2";
2765
+
src = fetchurl {
2766
+
url = "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz";
2767
+
sha512 = "AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==";
2768
+
};
2769
+
};
2770
+
"yargs-parser-13.1.2" = {
2771
+
name = "yargs-parser";
2772
+
packageName = "yargs-parser";
2773
+
version = "13.1.2";
2774
+
src = fetchurl {
2775
+
url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz";
2776
+
sha512 = "3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==";
2777
+
};
2778
+
};
2779
+
"yargs-unparser-1.6.0" = {
2780
+
name = "yargs-unparser";
2781
+
packageName = "yargs-unparser";
2782
+
version = "1.6.0";
2783
+
src = fetchurl {
2784
+
url = "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz";
2785
+
sha512 = "W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==";
2786
+
};
2787
+
};
2788
+
"yn-2.0.0" = {
2789
+
name = "yn";
2790
+
packageName = "yn";
2791
+
version = "2.0.0";
2792
+
src = fetchurl {
2793
+
url = "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz";
2794
+
sha1 = "e5adabc8acf408f6385fc76495684c88e6af689a";
2795
+
};
2796
+
};
2797
+
};
2798
+
args = {
2799
+
name = "mjolnir";
2800
+
packageName = "mjolnir";
2801
+
version = "0.1.17";
2802
+
src = ../../../../../../../nix/store/mnqd8qmha2inhk0wk9pk9xbhhpk0nmpr-source;
2803
+
dependencies = [
2804
+
sources."@babel/code-frame-7.12.13"
2805
+
sources."@babel/helper-validator-identifier-7.14.0"
2806
+
(sources."@babel/highlight-7.14.0" // {
2807
+
dependencies = [
2808
+
sources."ansi-styles-3.2.1"
2809
+
sources."chalk-2.4.2"
2810
+
sources."color-convert-1.9.3"
2811
+
sources."color-name-1.1.3"
2812
+
sources."escape-string-regexp-1.0.5"
2813
+
sources."has-flag-3.0.0"
2814
+
sources."supports-color-5.5.0"
2815
+
];
2816
+
})
2817
+
sources."@jest/types-26.6.2"
2818
+
sources."@types/body-parser-1.19.0"
2819
+
sources."@types/connect-3.4.34"
2820
+
sources."@types/expect-24.3.0"
2821
+
sources."@types/express-4.17.11"
2822
+
sources."@types/express-serve-static-core-4.17.19"
2823
+
sources."@types/istanbul-lib-coverage-2.0.3"
2824
+
sources."@types/istanbul-lib-report-3.0.0"
2825
+
sources."@types/istanbul-reports-3.0.0"
2826
+
sources."@types/json5-0.0.29"
2827
+
sources."@types/mime-1.3.2"
2828
+
sources."@types/mocha-7.0.2"
2829
+
sources."@types/node-11.15.54"
2830
+
sources."@types/qs-6.9.6"
2831
+
sources."@types/range-parser-1.2.3"
2832
+
sources."@types/serve-static-1.13.9"
2833
+
sources."@types/stack-utils-2.0.0"
2834
+
sources."@types/yargs-15.0.13"
2835
+
sources."@types/yargs-parser-20.2.0"
2836
+
sources."accepts-1.3.7"
2837
+
sources."ajv-6.12.6"
2838
+
sources."ansi-colors-3.2.3"
2839
+
sources."ansi-regex-5.0.0"
2840
+
sources."ansi-styles-4.3.0"
2841
+
sources."anymatch-3.1.2"
2842
+
sources."argparse-1.0.10"
2843
+
sources."array-flatten-1.1.1"
2844
+
sources."arrify-1.0.1"
2845
+
sources."asn1-0.2.4"
2846
+
sources."assert-plus-1.0.0"
2847
+
sources."asynckit-0.4.0"
2848
+
sources."aws-sign2-0.7.0"
2849
+
sources."aws4-1.11.0"
2850
+
sources."balanced-match-1.0.2"
2851
+
sources."basic-auth-2.0.1"
2852
+
sources."bcrypt-pbkdf-1.0.2"
2853
+
sources."binary-extensions-2.2.0"
2854
+
sources."bluebird-3.7.2"
2855
+
sources."body-parser-1.19.0"
2856
+
sources."brace-expansion-1.1.11"
2857
+
sources."braces-3.0.2"
2858
+
sources."browser-stdout-1.3.1"
2859
+
sources."buffer-from-1.1.1"
2860
+
sources."builtin-modules-1.1.1"
2861
+
sources."bytes-3.1.0"
2862
+
sources."call-bind-1.0.2"
2863
+
sources."camelcase-5.3.1"
2864
+
sources."caseless-0.12.0"
2865
+
sources."chalk-4.1.1"
2866
+
sources."chokidar-3.3.0"
2867
+
(sources."cliui-5.0.0" // {
2868
+
dependencies = [
2869
+
sources."ansi-regex-4.1.0"
2870
+
sources."string-width-3.1.0"
2871
+
sources."strip-ansi-5.2.0"
2872
+
];
2873
+
})
2874
+
sources."color-convert-2.0.1"
2875
+
sources."color-name-1.1.4"
2876
+
sources."colorette-1.2.2"
2877
+
sources."combined-stream-1.0.8"
2878
+
sources."commander-2.20.3"
2879
+
sources."concat-map-0.0.1"
2880
+
sources."config-3.3.6"
2881
+
sources."content-disposition-0.5.3"
2882
+
sources."content-type-1.0.4"
2883
+
sources."cookie-0.4.0"
2884
+
sources."cookie-signature-1.0.6"
2885
+
sources."core-util-is-1.0.2"
2886
+
sources."dashdash-1.14.1"
2887
+
sources."debug-2.6.9"
2888
+
sources."decamelize-1.2.0"
2889
+
sources."deepmerge-4.2.2"
2890
+
sources."define-properties-1.1.3"
2891
+
sources."delayed-stream-1.0.0"
2892
+
sources."depd-1.1.2"
2893
+
sources."destroy-1.0.4"
2894
+
sources."diff-3.5.0"
2895
+
sources."diff-sequences-26.6.2"
2896
+
(sources."dom-serializer-1.3.2" // {
2897
+
dependencies = [
2898
+
sources."domhandler-4.2.0"
2899
+
];
2900
+
})
2901
+
sources."domelementtype-2.2.0"
2902
+
sources."domhandler-3.3.0"
2903
+
(sources."domutils-2.6.0" // {
2904
+
dependencies = [
2905
+
sources."domhandler-4.2.0"
2906
+
];
2907
+
})
2908
+
sources."ecc-jsbn-0.1.2"
2909
+
sources."ee-first-1.1.1"
2910
+
sources."emoji-regex-7.0.3"
2911
+
sources."encodeurl-1.0.2"
2912
+
sources."entities-2.2.0"
2913
+
(sources."es-abstract-1.18.0" // {
2914
+
dependencies = [
2915
+
sources."object.assign-4.1.2"
2916
+
];
2917
+
})
2918
+
sources."es-to-primitive-1.2.1"
2919
+
sources."escape-html-1.0.3"
2920
+
sources."escape-string-regexp-4.0.0"
2921
+
sources."esprima-4.0.1"
2922
+
sources."etag-1.8.1"
2923
+
sources."expect-26.6.2"
2924
+
sources."express-4.17.1"
2925
+
sources."extend-3.0.2"
2926
+
sources."extsprintf-1.3.0"
2927
+
sources."fast-deep-equal-3.1.3"
2928
+
sources."fast-json-stable-stringify-2.1.0"
2929
+
sources."fill-range-7.0.1"
2930
+
sources."finalhandler-1.1.2"
2931
+
sources."find-up-3.0.0"
2932
+
sources."flat-4.1.1"
2933
+
sources."forever-agent-0.6.1"
2934
+
sources."form-data-2.3.3"
2935
+
sources."forwarded-0.1.2"
2936
+
sources."fresh-0.5.2"
2937
+
sources."fs.realpath-1.0.0"
2938
+
sources."fsevents-2.1.3"
2939
+
sources."function-bind-1.1.1"
2940
+
sources."get-caller-file-2.0.5"
2941
+
sources."get-intrinsic-1.1.1"
2942
+
sources."getpass-0.1.7"
2943
+
sources."glob-7.1.3"
2944
+
sources."glob-parent-5.1.2"
2945
+
sources."glob-to-regexp-0.4.1"
2946
+
sources."graceful-fs-4.2.6"
2947
+
sources."growl-1.10.5"
2948
+
sources."har-schema-2.0.0"
2949
+
sources."har-validator-5.1.5"
2950
+
sources."has-1.0.3"
2951
+
sources."has-bigints-1.0.1"
2952
+
sources."has-flag-4.0.0"
2953
+
sources."has-symbols-1.0.2"
2954
+
sources."hash.js-1.1.7"
2955
+
sources."he-1.2.0"
2956
+
sources."html-to-text-6.0.0"
2957
+
sources."htmlencode-0.0.4"
2958
+
sources."htmlparser2-4.1.0"
2959
+
sources."http-errors-1.7.2"
2960
+
sources."http-signature-1.2.0"
2961
+
sources."iconv-lite-0.4.24"
2962
+
sources."inflight-1.0.6"
2963
+
sources."inherits-2.0.3"
2964
+
sources."ipaddr.js-1.9.1"
2965
+
sources."is-bigint-1.0.2"
2966
+
sources."is-binary-path-2.1.0"
2967
+
sources."is-boolean-object-1.1.1"
2968
+
sources."is-buffer-2.0.5"
2969
+
sources."is-callable-1.2.3"
2970
+
sources."is-core-module-2.4.0"
2971
+
sources."is-date-object-1.0.4"
2972
+
sources."is-extglob-2.1.1"
2973
+
sources."is-fullwidth-code-point-2.0.0"
2974
+
sources."is-glob-4.0.1"
2975
+
sources."is-negative-zero-2.0.1"
2976
+
sources."is-number-7.0.0"
2977
+
sources."is-number-object-1.0.5"
2978
+
sources."is-plain-object-5.0.0"
2979
+
sources."is-promise-2.2.2"
2980
+
sources."is-regex-1.1.3"
2981
+
sources."is-string-1.0.6"
2982
+
sources."is-symbol-1.0.4"
2983
+
sources."is-typedarray-1.0.0"
2984
+
sources."isexe-2.0.0"
2985
+
sources."isstream-0.1.2"
2986
+
sources."jest-diff-26.6.2"
2987
+
sources."jest-get-type-26.3.0"
2988
+
sources."jest-matcher-utils-26.6.2"
2989
+
sources."jest-message-util-26.6.2"
2990
+
sources."jest-regex-util-26.0.0"
2991
+
sources."js-tokens-4.0.0"
2992
+
sources."js-yaml-3.14.1"
2993
+
sources."jsbn-0.1.1"
2994
+
sources."json-schema-0.2.3"
2995
+
sources."json-schema-traverse-0.4.1"
2996
+
sources."json-stringify-safe-5.0.1"
2997
+
sources."json5-2.2.0"
2998
+
sources."jsprim-1.4.1"
2999
+
sources."klona-2.0.4"
3000
+
sources."locate-path-3.0.0"
3001
+
sources."lodash-4.17.21"
3002
+
(sources."log-symbols-3.0.0" // {
3003
+
dependencies = [
3004
+
sources."ansi-styles-3.2.1"
3005
+
sources."chalk-2.4.2"
3006
+
sources."color-convert-1.9.3"
3007
+
sources."color-name-1.1.3"
3008
+
sources."escape-string-regexp-1.0.5"
3009
+
sources."has-flag-3.0.0"
3010
+
sources."supports-color-5.5.0"
3011
+
];
3012
+
})
3013
+
sources."lowdb-1.0.0"
3014
+
sources."lru-cache-6.0.0"
3015
+
sources."make-error-1.3.6"
3016
+
sources."matrix-bot-sdk-0.5.18"
3017
+
sources."media-typer-0.3.0"
3018
+
sources."merge-descriptors-1.0.1"
3019
+
sources."methods-1.1.2"
3020
+
sources."micromatch-4.0.4"
3021
+
sources."mime-1.6.0"
3022
+
sources."mime-db-1.47.0"
3023
+
sources."mime-types-2.1.30"
3024
+
sources."minimalistic-assert-1.0.1"
3025
+
sources."minimatch-3.0.4"
3026
+
sources."minimist-1.2.5"
3027
+
sources."mkdirp-1.0.4"
3028
+
(sources."mocha-7.2.0" // {
3029
+
dependencies = [
3030
+
sources."debug-3.2.6"
3031
+
sources."escape-string-regexp-1.0.5"
3032
+
sources."has-flag-3.0.0"
3033
+
sources."js-yaml-3.13.1"
3034
+
sources."mkdirp-0.5.5"
3035
+
sources."ms-2.1.1"
3036
+
sources."supports-color-6.0.0"
3037
+
];
3038
+
})
3039
+
(sources."morgan-1.10.0" // {
3040
+
dependencies = [
3041
+
sources."depd-2.0.0"
3042
+
];
3043
+
})
3044
+
sources."ms-2.0.0"
3045
+
sources."nanoid-3.1.23"
3046
+
sources."negotiator-0.6.2"
3047
+
sources."node-environment-flags-1.0.6"
3048
+
sources."normalize-path-3.0.0"
3049
+
sources."oauth-sign-0.9.0"
3050
+
sources."object-inspect-1.10.3"
3051
+
sources."object-keys-1.1.1"
3052
+
sources."object.assign-4.1.0"
3053
+
sources."object.getownpropertydescriptors-2.1.2"
3054
+
sources."on-finished-2.3.0"
3055
+
sources."on-headers-1.0.2"
3056
+
sources."once-1.4.0"
3057
+
sources."p-limit-2.3.0"
3058
+
sources."p-locate-3.0.0"
3059
+
sources."p-try-2.2.0"
3060
+
sources."parse-srcset-1.0.2"
3061
+
sources."parseurl-1.3.3"
3062
+
sources."path-exists-3.0.0"
3063
+
sources."path-is-absolute-1.0.1"
3064
+
sources."path-parse-1.0.6"
3065
+
sources."path-to-regexp-0.1.7"
3066
+
sources."performance-now-2.1.0"
3067
+
sources."picomatch-2.2.3"
3068
+
sources."pify-3.0.0"
3069
+
sources."postcss-8.3.0"
3070
+
sources."pretty-format-26.6.2"
3071
+
sources."proxy-addr-2.0.6"
3072
+
sources."psl-1.8.0"
3073
+
sources."punycode-2.1.1"
3074
+
sources."qs-6.7.0"
3075
+
sources."range-parser-1.2.1"
3076
+
sources."raw-body-2.4.0"
3077
+
sources."react-is-17.0.2"
3078
+
sources."readdirp-3.2.0"
3079
+
(sources."request-2.88.2" // {
3080
+
dependencies = [
3081
+
sources."qs-6.5.2"
3082
+
];
3083
+
})
3084
+
sources."request-promise-4.2.6"
3085
+
sources."request-promise-core-1.1.4"
3086
+
sources."require-directory-2.1.1"
3087
+
sources."require-main-filename-2.0.0"
3088
+
sources."resolve-1.20.0"
3089
+
sources."safe-buffer-5.1.2"
3090
+
sources."safer-buffer-2.1.2"
3091
+
(sources."sanitize-html-2.4.0" // {
3092
+
dependencies = [
3093
+
sources."domhandler-4.2.0"
3094
+
sources."htmlparser2-6.1.0"
3095
+
];
3096
+
})
3097
+
sources."semver-5.7.1"
3098
+
(sources."send-0.17.1" // {
3099
+
dependencies = [
3100
+
sources."ms-2.1.1"
3101
+
];
3102
+
})
3103
+
sources."serve-static-1.14.1"
3104
+
sources."set-blocking-2.0.0"
3105
+
sources."setprototypeof-1.1.1"
3106
+
sources."slash-3.0.0"
3107
+
sources."source-map-0.6.1"
3108
+
sources."source-map-js-0.6.2"
3109
+
sources."source-map-support-0.5.19"
3110
+
sources."sprintf-js-1.0.3"
3111
+
sources."sshpk-1.16.1"
3112
+
(sources."stack-utils-2.0.3" // {
3113
+
dependencies = [
3114
+
sources."escape-string-regexp-2.0.0"
3115
+
];
3116
+
})
3117
+
sources."statuses-1.5.0"
3118
+
sources."stealthy-require-1.1.1"
3119
+
sources."steno-0.4.4"
3120
+
sources."string-width-2.1.1"
3121
+
sources."string.prototype.trimend-1.0.4"
3122
+
sources."string.prototype.trimstart-1.0.4"
3123
+
(sources."strip-ansi-4.0.0" // {
3124
+
dependencies = [
3125
+
sources."ansi-regex-3.0.0"
3126
+
];
3127
+
})
3128
+
sources."strip-bom-3.0.0"
3129
+
sources."strip-json-comments-2.0.1"
3130
+
sources."supports-color-7.2.0"
3131
+
sources."to-regex-range-5.0.1"
3132
+
sources."toidentifier-1.0.0"
3133
+
sources."tough-cookie-2.5.0"
3134
+
sources."ts-mocha-7.0.0"
3135
+
(sources."ts-node-7.0.1" // {
3136
+
dependencies = [
3137
+
sources."mkdirp-0.5.5"
3138
+
];
3139
+
})
3140
+
(sources."tsconfig-paths-3.9.0" // {
3141
+
dependencies = [
3142
+
sources."json5-1.0.1"
3143
+
];
3144
+
})
3145
+
sources."tslib-1.14.1"
3146
+
(sources."tslint-6.1.3" // {
3147
+
dependencies = [
3148
+
sources."ansi-styles-3.2.1"
3149
+
sources."chalk-2.4.2"
3150
+
sources."color-convert-1.9.3"
3151
+
sources."color-name-1.1.3"
3152
+
sources."diff-4.0.2"
3153
+
sources."escape-string-regexp-1.0.5"
3154
+
sources."has-flag-3.0.0"
3155
+
sources."mkdirp-0.5.5"
3156
+
sources."supports-color-5.5.0"
3157
+
];
3158
+
})
3159
+
sources."tsutils-2.29.0"
3160
+
sources."tunnel-agent-0.6.0"
3161
+
sources."tweetnacl-0.14.5"
3162
+
sources."type-is-1.6.18"
3163
+
sources."typescript-3.9.9"
3164
+
sources."unbox-primitive-1.0.1"
3165
+
sources."unpipe-1.0.0"
3166
+
sources."uri-js-4.4.1"
3167
+
sources."utils-merge-1.0.1"
3168
+
sources."uuid-3.4.0"
3169
+
sources."vary-1.1.2"
3170
+
sources."verror-1.10.0"
3171
+
sources."which-1.3.1"
3172
+
sources."which-boxed-primitive-1.0.2"
3173
+
sources."which-module-2.0.0"
3174
+
sources."wide-align-1.1.3"
3175
+
(sources."wrap-ansi-5.1.0" // {
3176
+
dependencies = [
3177
+
sources."ansi-regex-4.1.0"
3178
+
sources."ansi-styles-3.2.1"
3179
+
sources."color-convert-1.9.3"
3180
+
sources."color-name-1.1.3"
3181
+
sources."string-width-3.1.0"
3182
+
sources."strip-ansi-5.2.0"
3183
+
];
3184
+
})
3185
+
sources."wrappy-1.0.2"
3186
+
sources."y18n-4.0.3"
3187
+
sources."yallist-4.0.0"
3188
+
(sources."yargs-13.3.2" // {
3189
+
dependencies = [
3190
+
sources."ansi-regex-4.1.0"
3191
+
sources."string-width-3.1.0"
3192
+
sources."strip-ansi-5.2.0"
3193
+
];
3194
+
})
3195
+
sources."yargs-parser-13.1.2"
3196
+
sources."yargs-unparser-1.6.0"
3197
+
sources."yn-2.0.0"
3198
+
];
3199
+
buildInputs = globalBuildInputs;
3200
+
meta = {
3201
+
description = "A moderation tool for Matrix";
3202
+
license = "Apache-2.0";
3203
+
};
3204
+
production = false;
3205
+
bypassCache = true;
3206
+
reconstructLock = true;
3207
+
};
3208
+
in
3209
+
{
3210
+
args = args;
3211
+
sources = sources;
3212
+
tarball = nodeEnv.buildNodeSourceDist args;
3213
+
package = nodeEnv.buildNodePackage args;
3214
+
shell = nodeEnv.buildNodeShell args;
3215
+
nodeDependencies = nodeEnv.buildNodeDependencies (lib.overrideExisting args {
3216
+
src = stdenv.mkDerivation {
3217
+
name = args.name + "-package-json";
3218
+
src = nix-gitignore.gitignoreSourcePure [
3219
+
"*"
3220
+
"!package.json"
3221
+
"!package-lock.json"
3222
+
] args.src;
3223
+
dontBuild = true;
3224
+
installPhase = "mkdir -p $out; cp -r ./* $out;";
3225
+
};
3226
+
});
3227
+
}
+567
pkgs/servers/mjolnir/node-env.nix
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
# This file originates from node2nix
2
+
3
+
{lib, stdenv, nodejs, python2, pkgs, libtool, runCommand, writeTextFile}:
4
+
5
+
let
6
+
# Workaround to cope with utillinux in Nixpkgs 20.09 and util-linux in Nixpkgs master
7
+
utillinux = if pkgs ? utillinux then pkgs.utillinux else pkgs.util-linux;
8
+
9
+
python = if nodejs ? python then nodejs.python else python2;
10
+
11
+
# Create a tar wrapper that filters all the 'Ignoring unknown extended header keyword' noise
12
+
tarWrapper = runCommand "tarWrapper" {} ''
13
+
mkdir -p $out/bin
14
+
15
+
cat > $out/bin/tar <<EOF
16
+
#! ${stdenv.shell} -e
17
+
$(type -p tar) "\$@" --warning=no-unknown-keyword --delay-directory-restore
18
+
EOF
19
+
20
+
chmod +x $out/bin/tar
21
+
'';
22
+
23
+
# Function that generates a TGZ file from a NPM project
24
+
buildNodeSourceDist =
25
+
{ name, version, src, ... }:
26
+
27
+
stdenv.mkDerivation {
28
+
name = "node-tarball-${name}-${version}";
29
+
inherit src;
30
+
buildInputs = [ nodejs ];
31
+
buildPhase = ''
32
+
export HOME=$TMPDIR
33
+
tgzFile=$(npm pack | tail -n 1) # Hooks to the pack command will add output (https://docs.npmjs.com/misc/scripts)
34
+
'';
35
+
installPhase = ''
36
+
mkdir -p $out/tarballs
37
+
mv $tgzFile $out/tarballs
38
+
mkdir -p $out/nix-support
39
+
echo "file source-dist $out/tarballs/$tgzFile" >> $out/nix-support/hydra-build-products
40
+
'';
41
+
};
42
+
43
+
includeDependencies = {dependencies}:
44
+
lib.optionalString (dependencies != [])
45
+
(lib.concatMapStrings (dependency:
46
+
''
47
+
# Bundle the dependencies of the package
48
+
mkdir -p node_modules
49
+
cd node_modules
50
+
51
+
# Only include dependencies if they don't exist. They may also be bundled in the package.
52
+
if [ ! -e "${dependency.name}" ]
53
+
then
54
+
${composePackage dependency}
55
+
fi
56
+
57
+
cd ..
58
+
''
59
+
) dependencies);
60
+
61
+
# Recursively composes the dependencies of a package
62
+
composePackage = { name, packageName, src, dependencies ? [], ... }@args:
63
+
builtins.addErrorContext "while evaluating node package '${packageName}'" ''
64
+
DIR=$(pwd)
65
+
cd $TMPDIR
66
+
67
+
unpackFile ${src}
68
+
69
+
# Make the base dir in which the target dependency resides first
70
+
mkdir -p "$(dirname "$DIR/${packageName}")"
71
+
72
+
if [ -f "${src}" ]
73
+
then
74
+
# Figure out what directory has been unpacked
75
+
packageDir="$(find . -maxdepth 1 -type d | tail -1)"
76
+
77
+
# Restore write permissions to make building work
78
+
find "$packageDir" -type d -exec chmod u+x {} \;
79
+
chmod -R u+w "$packageDir"
80
+
81
+
# Move the extracted tarball into the output folder
82
+
mv "$packageDir" "$DIR/${packageName}"
83
+
elif [ -d "${src}" ]
84
+
then
85
+
# Get a stripped name (without hash) of the source directory.
86
+
# On old nixpkgs it's already set internally.
87
+
if [ -z "$strippedName" ]
88
+
then
89
+
strippedName="$(stripHash ${src})"
90
+
fi
91
+
92
+
# Restore write permissions to make building work
93
+
chmod -R u+w "$strippedName"
94
+
95
+
# Move the extracted directory into the output folder
96
+
mv "$strippedName" "$DIR/${packageName}"
97
+
fi
98
+
99
+
# Unset the stripped name to not confuse the next unpack step
100
+
unset strippedName
101
+
102
+
# Include the dependencies of the package
103
+
cd "$DIR/${packageName}"
104
+
${includeDependencies { inherit dependencies; }}
105
+
cd ..
106
+
${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
107
+
'';
108
+
109
+
pinpointDependencies = {dependencies, production}:
110
+
let
111
+
pinpointDependenciesFromPackageJSON = writeTextFile {
112
+
name = "pinpointDependencies.js";
113
+
text = ''
114
+
var fs = require('fs');
115
+
var path = require('path');
116
+
117
+
function resolveDependencyVersion(location, name) {
118
+
if(location == process.env['NIX_STORE']) {
119
+
return null;
120
+
} else {
121
+
var dependencyPackageJSON = path.join(location, "node_modules", name, "package.json");
122
+
123
+
if(fs.existsSync(dependencyPackageJSON)) {
124
+
var dependencyPackageObj = JSON.parse(fs.readFileSync(dependencyPackageJSON));
125
+
126
+
if(dependencyPackageObj.name == name) {
127
+
return dependencyPackageObj.version;
128
+
}
129
+
} else {
130
+
return resolveDependencyVersion(path.resolve(location, ".."), name);
131
+
}
132
+
}
133
+
}
134
+
135
+
function replaceDependencies(dependencies) {
136
+
if(typeof dependencies == "object" && dependencies !== null) {
137
+
for(var dependency in dependencies) {
138
+
var resolvedVersion = resolveDependencyVersion(process.cwd(), dependency);
139
+
140
+
if(resolvedVersion === null) {
141
+
process.stderr.write("WARNING: cannot pinpoint dependency: "+dependency+", context: "+process.cwd()+"\n");
142
+
} else {
143
+
dependencies[dependency] = resolvedVersion;
144
+
}
145
+
}
146
+
}
147
+
}
148
+
149
+
/* Read the package.json configuration */
150
+
var packageObj = JSON.parse(fs.readFileSync('./package.json'));
151
+
152
+
/* Pinpoint all dependencies */
153
+
replaceDependencies(packageObj.dependencies);
154
+
if(process.argv[2] == "development") {
155
+
replaceDependencies(packageObj.devDependencies);
156
+
}
157
+
replaceDependencies(packageObj.optionalDependencies);
158
+
159
+
/* Write the fixed package.json file */
160
+
fs.writeFileSync("package.json", JSON.stringify(packageObj, null, 2));
161
+
'';
162
+
};
163
+
in
164
+
''
165
+
node ${pinpointDependenciesFromPackageJSON} ${if production then "production" else "development"}
166
+
167
+
${lib.optionalString (dependencies != [])
168
+
''
169
+
if [ -d node_modules ]
170
+
then
171
+
cd node_modules
172
+
${lib.concatMapStrings (dependency: pinpointDependenciesOfPackage dependency) dependencies}
173
+
cd ..
174
+
fi
175
+
''}
176
+
'';
177
+
178
+
# Recursively traverses all dependencies of a package and pinpoints all
179
+
# dependencies in the package.json file to the versions that are actually
180
+
# being used.
181
+
182
+
pinpointDependenciesOfPackage = { packageName, dependencies ? [], production ? true, ... }@args:
183
+
''
184
+
if [ -d "${packageName}" ]
185
+
then
186
+
cd "${packageName}"
187
+
${pinpointDependencies { inherit dependencies production; }}
188
+
cd ..
189
+
${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
190
+
fi
191
+
'';
192
+
193
+
# Extract the Node.js source code which is used to compile packages with
194
+
# native bindings
195
+
nodeSources = runCommand "node-sources" {} ''
196
+
tar --no-same-owner --no-same-permissions -xf ${nodejs.src}
197
+
mv node-* $out
198
+
'';
199
+
200
+
# Script that adds _integrity fields to all package.json files to prevent NPM from consulting the cache (that is empty)
201
+
addIntegrityFieldsScript = writeTextFile {
202
+
name = "addintegrityfields.js";
203
+
text = ''
204
+
var fs = require('fs');
205
+
var path = require('path');
206
+
207
+
function augmentDependencies(baseDir, dependencies) {
208
+
for(var dependencyName in dependencies) {
209
+
var dependency = dependencies[dependencyName];
210
+
211
+
// Open package.json and augment metadata fields
212
+
var packageJSONDir = path.join(baseDir, "node_modules", dependencyName);
213
+
var packageJSONPath = path.join(packageJSONDir, "package.json");
214
+
215
+
if(fs.existsSync(packageJSONPath)) { // Only augment packages that exist. Sometimes we may have production installs in which development dependencies can be ignored
216
+
console.log("Adding metadata fields to: "+packageJSONPath);
217
+
var packageObj = JSON.parse(fs.readFileSync(packageJSONPath));
218
+
219
+
if(dependency.integrity) {
220
+
packageObj["_integrity"] = dependency.integrity;
221
+
} else {
222
+
packageObj["_integrity"] = "sha1-000000000000000000000000000="; // When no _integrity string has been provided (e.g. by Git dependencies), add a dummy one. It does not seem to harm and it bypasses downloads.
223
+
}
224
+
225
+
if(dependency.resolved) {
226
+
packageObj["_resolved"] = dependency.resolved; // Adopt the resolved property if one has been provided
227
+
} else {
228
+
packageObj["_resolved"] = dependency.version; // Set the resolved version to the version identifier. This prevents NPM from cloning Git repositories.
229
+
}
230
+
231
+
if(dependency.from !== undefined) { // Adopt from property if one has been provided
232
+
packageObj["_from"] = dependency.from;
233
+
}
234
+
235
+
fs.writeFileSync(packageJSONPath, JSON.stringify(packageObj, null, 2));
236
+
}
237
+
238
+
// Augment transitive dependencies
239
+
if(dependency.dependencies !== undefined) {
240
+
augmentDependencies(packageJSONDir, dependency.dependencies);
241
+
}
242
+
}
243
+
}
244
+
245
+
if(fs.existsSync("./package-lock.json")) {
246
+
var packageLock = JSON.parse(fs.readFileSync("./package-lock.json"));
247
+
248
+
if(![1, 2].includes(packageLock.lockfileVersion)) {
249
+
process.stderr.write("Sorry, I only understand lock file versions 1 and 2!\n");
250
+
process.exit(1);
251
+
}
252
+
253
+
if(packageLock.dependencies !== undefined) {
254
+
augmentDependencies(".", packageLock.dependencies);
255
+
}
256
+
}
257
+
'';
258
+
};
259
+
260
+
# Reconstructs a package-lock file from the node_modules/ folder structure and package.json files with dummy sha1 hashes
261
+
reconstructPackageLock = writeTextFile {
262
+
name = "addintegrityfields.js";
263
+
text = ''
264
+
var fs = require('fs');
265
+
var path = require('path');
266
+
267
+
var packageObj = JSON.parse(fs.readFileSync("package.json"));
268
+
269
+
var lockObj = {
270
+
name: packageObj.name,
271
+
version: packageObj.version,
272
+
lockfileVersion: 1,
273
+
requires: true,
274
+
dependencies: {}
275
+
};
276
+
277
+
function augmentPackageJSON(filePath, dependencies) {
278
+
var packageJSON = path.join(filePath, "package.json");
279
+
if(fs.existsSync(packageJSON)) {
280
+
var packageObj = JSON.parse(fs.readFileSync(packageJSON));
281
+
dependencies[packageObj.name] = {
282
+
version: packageObj.version,
283
+
integrity: "sha1-000000000000000000000000000=",
284
+
dependencies: {}
285
+
};
286
+
processDependencies(path.join(filePath, "node_modules"), dependencies[packageObj.name].dependencies);
287
+
}
288
+
}
289
+
290
+
function processDependencies(dir, dependencies) {
291
+
if(fs.existsSync(dir)) {
292
+
var files = fs.readdirSync(dir);
293
+
294
+
files.forEach(function(entry) {
295
+
var filePath = path.join(dir, entry);
296
+
var stats = fs.statSync(filePath);
297
+
298
+
if(stats.isDirectory()) {
299
+
if(entry.substr(0, 1) == "@") {
300
+
// When we encounter a namespace folder, augment all packages belonging to the scope
301
+
var pkgFiles = fs.readdirSync(filePath);
302
+
303
+
pkgFiles.forEach(function(entry) {
304
+
if(stats.isDirectory()) {
305
+
var pkgFilePath = path.join(filePath, entry);
306
+
augmentPackageJSON(pkgFilePath, dependencies);
307
+
}
308
+
});
309
+
} else {
310
+
augmentPackageJSON(filePath, dependencies);
311
+
}
312
+
}
313
+
});
314
+
}
315
+
}
316
+
317
+
processDependencies("node_modules", lockObj.dependencies);
318
+
319
+
fs.writeFileSync("package-lock.json", JSON.stringify(lockObj, null, 2));
320
+
'';
321
+
};
322
+
323
+
prepareAndInvokeNPM = {packageName, bypassCache, reconstructLock, npmFlags, production}:
324
+
let
325
+
forceOfflineFlag = if bypassCache then "--offline" else "--registry http://www.example.com";
326
+
in
327
+
''
328
+
# Pinpoint the versions of all dependencies to the ones that are actually being used
329
+
echo "pinpointing versions of dependencies..."
330
+
source $pinpointDependenciesScriptPath
331
+
332
+
# Patch the shebangs of the bundled modules to prevent them from
333
+
# calling executables outside the Nix store as much as possible
334
+
patchShebangs .
335
+
336
+
# Deploy the Node.js package by running npm install. Since the
337
+
# dependencies have been provided already by ourselves, it should not
338
+
# attempt to install them again, which is good, because we want to make
339
+
# it Nix's responsibility. If it needs to install any dependencies
340
+
# anyway (e.g. because the dependency parameters are
341
+
# incomplete/incorrect), it fails.
342
+
#
343
+
# The other responsibilities of NPM are kept -- version checks, build
344
+
# steps, postprocessing etc.
345
+
346
+
export HOME=$TMPDIR
347
+
cd "${packageName}"
348
+
runHook preRebuild
349
+
350
+
${lib.optionalString bypassCache ''
351
+
${lib.optionalString reconstructLock ''
352
+
if [ -f package-lock.json ]
353
+
then
354
+
echo "WARNING: Reconstruct lock option enabled, but a lock file already exists!"
355
+
echo "This will most likely result in version mismatches! We will remove the lock file and regenerate it!"
356
+
rm package-lock.json
357
+
else
358
+
echo "No package-lock.json file found, reconstructing..."
359
+
fi
360
+
361
+
node ${reconstructPackageLock}
362
+
''}
363
+
364
+
node ${addIntegrityFieldsScript}
365
+
''}
366
+
367
+
npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${lib.optionalString production "--production"} rebuild
368
+
369
+
if [ "''${dontNpmInstall-}" != "1" ]
370
+
then
371
+
# NPM tries to download packages even when they already exist if npm-shrinkwrap is used.
372
+
rm -f npm-shrinkwrap.json
373
+
374
+
npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${lib.optionalString production "--production"} install
375
+
fi
376
+
'';
377
+
378
+
# Builds and composes an NPM package including all its dependencies
379
+
buildNodePackage =
380
+
{ name
381
+
, packageName
382
+
, version
383
+
, dependencies ? []
384
+
, buildInputs ? []
385
+
, production ? true
386
+
, npmFlags ? ""
387
+
, dontNpmInstall ? false
388
+
, bypassCache ? false
389
+
, reconstructLock ? false
390
+
, preRebuild ? ""
391
+
, dontStrip ? true
392
+
, unpackPhase ? "true"
393
+
, buildPhase ? "true"
394
+
, ... }@args:
395
+
396
+
let
397
+
extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" ];
398
+
in
399
+
stdenv.mkDerivation ({
400
+
name = "node_${name}-${version}";
401
+
buildInputs = [ tarWrapper python nodejs ]
402
+
++ lib.optional (stdenv.isLinux) utillinux
403
+
++ lib.optional (stdenv.isDarwin) libtool
404
+
++ buildInputs;
405
+
406
+
inherit nodejs;
407
+
408
+
inherit dontStrip; # Stripping may fail a build for some package deployments
409
+
inherit dontNpmInstall preRebuild unpackPhase buildPhase;
410
+
411
+
compositionScript = composePackage args;
412
+
pinpointDependenciesScript = pinpointDependenciesOfPackage args;
413
+
414
+
passAsFile = [ "compositionScript" "pinpointDependenciesScript" ];
415
+
416
+
installPhase = ''
417
+
# Create and enter a root node_modules/ folder
418
+
mkdir -p $out/lib/node_modules
419
+
cd $out/lib/node_modules
420
+
421
+
# Compose the package and all its dependencies
422
+
source $compositionScriptPath
423
+
424
+
${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }}
425
+
426
+
# Create symlink to the deployed executable folder, if applicable
427
+
if [ -d "$out/lib/node_modules/.bin" ]
428
+
then
429
+
ln -s $out/lib/node_modules/.bin $out/bin
430
+
fi
431
+
432
+
# Create symlinks to the deployed manual page folders, if applicable
433
+
if [ -d "$out/lib/node_modules/${packageName}/man" ]
434
+
then
435
+
mkdir -p $out/share
436
+
for dir in "$out/lib/node_modules/${packageName}/man/"*
437
+
do
438
+
mkdir -p $out/share/man/$(basename "$dir")
439
+
for page in "$dir"/*
440
+
do
441
+
ln -s $page $out/share/man/$(basename "$dir")
442
+
done
443
+
done
444
+
fi
445
+
446
+
# Run post install hook, if provided
447
+
runHook postInstall
448
+
'';
449
+
} // extraArgs);
450
+
451
+
# Builds a node environment (a node_modules folder and a set of binaries)
452
+
buildNodeDependencies =
453
+
{ name
454
+
, packageName
455
+
, version
456
+
, src
457
+
, dependencies ? []
458
+
, buildInputs ? []
459
+
, production ? true
460
+
, npmFlags ? ""
461
+
, dontNpmInstall ? false
462
+
, bypassCache ? false
463
+
, reconstructLock ? false
464
+
, dontStrip ? true
465
+
, unpackPhase ? "true"
466
+
, buildPhase ? "true"
467
+
, ... }@args:
468
+
469
+
let
470
+
extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" ];
471
+
in
472
+
stdenv.mkDerivation ({
473
+
name = "node-dependencies-${name}-${version}";
474
+
475
+
buildInputs = [ tarWrapper python nodejs ]
476
+
++ lib.optional (stdenv.isLinux) utillinux
477
+
++ lib.optional (stdenv.isDarwin) libtool
478
+
++ buildInputs;
479
+
480
+
inherit dontStrip; # Stripping may fail a build for some package deployments
481
+
inherit dontNpmInstall unpackPhase buildPhase;
482
+
483
+
includeScript = includeDependencies { inherit dependencies; };
484
+
pinpointDependenciesScript = pinpointDependenciesOfPackage args;
485
+
486
+
passAsFile = [ "includeScript" "pinpointDependenciesScript" ];
487
+
488
+
installPhase = ''
489
+
mkdir -p $out/${packageName}
490
+
cd $out/${packageName}
491
+
492
+
source $includeScriptPath
493
+
494
+
# Create fake package.json to make the npm commands work properly
495
+
cp ${src}/package.json .
496
+
chmod 644 package.json
497
+
${lib.optionalString bypassCache ''
498
+
if [ -f ${src}/package-lock.json ]
499
+
then
500
+
cp ${src}/package-lock.json .
501
+
fi
502
+
''}
503
+
504
+
# Go to the parent folder to make sure that all packages are pinpointed
505
+
cd ..
506
+
${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
507
+
508
+
${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }}
509
+
510
+
# Expose the executables that were installed
511
+
cd ..
512
+
${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
513
+
514
+
mv ${packageName} lib
515
+
ln -s $out/lib/node_modules/.bin $out/bin
516
+
'';
517
+
} // extraArgs);
518
+
519
+
# Builds a development shell
520
+
buildNodeShell =
521
+
{ name
522
+
, packageName
523
+
, version
524
+
, src
525
+
, dependencies ? []
526
+
, buildInputs ? []
527
+
, production ? true
528
+
, npmFlags ? ""
529
+
, dontNpmInstall ? false
530
+
, bypassCache ? false
531
+
, reconstructLock ? false
532
+
, dontStrip ? true
533
+
, unpackPhase ? "true"
534
+
, buildPhase ? "true"
535
+
, ... }@args:
536
+
537
+
let
538
+
nodeDependencies = buildNodeDependencies args;
539
+
in
540
+
stdenv.mkDerivation {
541
+
name = "node-shell-${name}-${version}";
542
+
543
+
buildInputs = [ python nodejs ] ++ lib.optional (stdenv.isLinux) utillinux ++ buildInputs;
544
+
buildCommand = ''
545
+
mkdir -p $out/bin
546
+
cat > $out/bin/shell <<EOF
547
+
#! ${stdenv.shell} -e
548
+
$shellHook
549
+
exec ${stdenv.shell}
550
+
EOF
551
+
chmod +x $out/bin/shell
552
+
'';
553
+
554
+
# Provide the dependencies in a development shell through the NODE_PATH environment variable
555
+
inherit nodeDependencies;
556
+
shellHook = lib.optionalString (dependencies != []) ''
557
+
export NODE_PATH=${nodeDependencies}/lib/node_modules
558
+
export PATH="${nodeDependencies}/bin:$PATH"
559
+
'';
560
+
};
561
+
in
562
+
{
563
+
buildNodeSourceDist = lib.makeOverridable buildNodeSourceDist;
564
+
buildNodePackage = lib.makeOverridable buildNodePackage;
565
+
buildNodeDependencies = lib.makeOverridable buildNodeDependencies;
566
+
buildNodeShell = lib.makeOverridable buildNodeShell;
567
+
}
+29
pkgs/servers/mjolnir/update.sh
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
#!/usr/bin/env nix-shell
2
+
#!nix-shell -i bash -p curl common-updater-scripts nodePackages.node2nix gnused nix coreutils jq
3
+
4
+
set -euo pipefail
5
+
6
+
latestVersion="$(curl -s "https://api.github.com/repos/matrix-org/mjolnir/releases?per_page=1" | jq -r ".[0].tag_name" | sed 's/^v//')"
7
+
currentVersion=$(nix-instantiate --eval -E "with import ./. {}; mjolnir.version or (lib.getVersion mjolnir)" | tr -d '"')
8
+
9
+
if [[ "$currentVersion" == "$latestVersion" ]]; then
10
+
echo "mjolnir is up-to-date: $currentVersion"
11
+
exit 0
12
+
fi
13
+
14
+
update-source-version mjolnir 0 0000000000000000000000000000000000000000000000000000000000000000
15
+
update-source-version mjolnir "$latestVersion"
16
+
17
+
# use patched source
18
+
store_src="$(nix-build . -A mjolnir.src --no-out-link)"
19
+
20
+
cd "$(dirname "${BASH_SOURCE[0]}")"
21
+
22
+
node2nix \
23
+
--nodejs-12 \
24
+
--development \
25
+
--node-env ./node-env.nix \
26
+
--output ./node-deps.nix \
27
+
--input "$store_src/package.json" \
28
+
--composition ./node-composition.nix
29
+
+2
pkgs/top-level/all-packages.nix
···
6725
6726
ministat = callPackage ../tools/misc/ministat { };
6727
0
0
6728
mmv = callPackage ../tools/misc/mmv { };
6729
6730
mmv-go = callPackage ../tools/misc/mmv-go { };
···
6725
6726
ministat = callPackage ../tools/misc/ministat { };
6727
6728
+
mjolnir = callPackage ../servers/mjolnir { };
6729
+
6730
mmv = callPackage ../tools/misc/mmv { };
6731
6732
mmv-go = callPackage ../tools/misc/mmv-go { };