├── .travis.yml ├── COPYING ├── Makefile ├── README.org ├── default.nix ├── derivation.nix ├── link-bin-outputs.py ├── overrides.nix ├── pnpmlock.nix ├── semver.nix └── tests ├── default.nix ├── file-dependencies ├── default.nix ├── local_modules │ └── ret-42 │ │ ├── default.nix │ │ ├── index.js │ │ ├── package.json │ │ └── pnpm-lock.yaml ├── package.json ├── pnpm-lock.yaml └── test-module.js ├── issues └── 1 │ ├── default.nix │ ├── package.json │ └── pnpm-lock.yaml ├── lolcatjs ├── default.nix ├── package.json └── pnpm-lock.yaml ├── nested-dirs ├── default.nix ├── package.json └── pnpm-lock.yaml ├── recursive-link ├── .gitignore ├── .npmrc ├── packages │ ├── a │ │ ├── default.nix │ │ ├── index.js │ │ └── package.json │ ├── b │ │ ├── index.js │ │ ├── package.json │ │ └── pnpm-lock.yaml │ └── c │ │ ├── index.js │ │ ├── package.json │ │ └── pnpm-lock.yaml ├── pnpm-lock.yaml └── pnpm-workspace.yaml ├── test-circular ├── default.nix ├── package.json ├── pnpm-lock.yaml └── test-circular.js ├── test-devdependencies ├── default.nix ├── package.json ├── pnpm-lock.yaml └── test.js ├── test-falsy-script ├── default.nix ├── package.json └── pnpm-lock.yaml ├── test-impure ├── default.nix ├── package.json ├── pnpm-lock.yaml └── test.js ├── test-peerdependencies ├── default.nix ├── package.json └── pnpm-lock.yaml ├── test-scoped ├── default.nix ├── package.json ├── pnpm-lock.yaml └── test-scoped.js ├── test-sharp ├── default.nix ├── package.json ├── pnpm-lock.yaml └── test.js ├── tmptst ├── default.nix ├── index.js ├── package.json └── pnpm-lock.yaml └── web3 ├── default.nix ├── package.json └── pnpm-lock.yaml /.travis.yml: -------------------------------------------------------------------------------- 1 | language: nix 2 | script: make test 3 | -------------------------------------------------------------------------------- /COPYING: -------------------------------------------------------------------------------- 1 | Copyright 2018 Adam Hose 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 4 | 5 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 6 | 7 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 8 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | .PHONY: all test 2 | 3 | test: 4 | nix-shell -p nixUnstable --run "nix-build --no-out-link ./tests/default.nix --show-trace" 5 | 6 | all: test 7 | -------------------------------------------------------------------------------- /README.org: -------------------------------------------------------------------------------- 1 | [[https://travis-ci.org/nix-community/pnpm2nix][https://travis-ci.org/nix-community/pnpm2nix.svg?branch=master]] 2 | 3 | *Status: Unmaintained, only compatible with lockfile version 5.0 or below (latest is 9.0 at the time of writing)* 4 | 5 | If you would like to take over this project, or it's name with a new project open a discussion at https://github.com/orgs/nix-community/discussions. 6 | 7 | * pnpm2nix 8 | Loads =pnpm='s shrinkwrap.yaml into nix expressions. 9 | 10 | ** Example =default.nix= 11 | #+begin_src nix 12 | with (import {}); 13 | with (import /path/to/pnpm2nix { inherit pkgs; }); 14 | 15 | mkPnpmPackage { 16 | src = ./.; 17 | # These default to src/package.json & src/shrinkwrap.yaml 18 | # packageJSON = ./package.json; 19 | # shrinkwrapYML = ./shrinkwrap.yaml; 20 | } 21 | #+END_SRC 22 | 23 | More comprehensive examples can be found in the [[file://tests/][tests]]. 24 | 25 | ** Managing development environments with pnpm2nix 26 | 27 | *** default.nix 28 | #+begin_src nix 29 | with (import {}); 30 | with (import /path/to/pnpm2nix { inherit pkgs; }); 31 | 32 | mkPnpmPackage { 33 | src = ./.; 34 | } 35 | #+END_SRC 36 | 37 | *** shell.nix 38 | #+begin_src nix 39 | with (import {}); 40 | with (import /path/to/pnpm2nix { inherit pkgs; }); 41 | 42 | mkShell { 43 | buildInputs = [ 44 | (mkPnpmEnv (import ./default.nix)) 45 | ]; 46 | } 47 | #+END_SRC 48 | 49 | ** Caveats and known bugs 50 | [[https://github.com/pnpm/pnpm/issues/1035][pnpm does not currently include checksums for tarballs]] 51 | 52 | Until this is fixed in =pnpm= github dependencies won't work unless you opt in to impure builds. 53 | 54 | This is currently pre-alpha software, it might eat your kittens. 55 | 56 | ** License 57 | =pnpm2nix= is released under the terms of the MIT license. 58 | -------------------------------------------------------------------------------- /default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? import {} 2 | , nodejs ? pkgs.nodejs-8_x 3 | , nodePackages ? pkgs.nodePackages_8_x 4 | , node-gyp ? nodePackages.node-gyp 5 | } @modArgs: 6 | 7 | # Scope mkPnpmDerivation 8 | with (import ./derivation.nix { 9 | inherit pkgs nodejs nodePackages node-gyp; 10 | }); 11 | with pkgs; 12 | 13 | let 14 | 15 | # Replace disallowed characters from package name 16 | # @acme/package -> acme-package 17 | safePkgName = name: builtins.replaceStrings ["@" "/"] ["" "-"] name; 18 | 19 | rewritePnpmLock = import ./pnpmlock.nix { 20 | inherit pkgs nodejs nodePackages; 21 | }; 22 | 23 | importYAML = name: yamlFile: (lib.importJSON ((pkgs.runCommandNoCC name {} '' 24 | mkdir -p $out 25 | ${pkgs.yaml2json}/bin/yaml2json < ${yamlFile} | ${pkgs.jq}/bin/jq -a '.' > $out/pnpmlock.json 26 | '').outPath + "/pnpmlock.json")); 27 | 28 | overrideDrv = (overrides: drv: 29 | if (lib.hasAttr drv.pname overrides) then 30 | (overrides."${drv.pname}" drv) 31 | else drv); 32 | 33 | defaultPnpmOverrides = import ./overrides.nix { 34 | inherit pkgs nodejs nodePackages; 35 | }; 36 | 37 | in { 38 | 39 | inherit defaultPnpmOverrides; 40 | 41 | # Create a nix-shell friendly development environment 42 | mkPnpmEnv = drv: let 43 | pkgJSON = writeText "${drv.name}-package-json" (builtins.toJSON drv.passthru.packageJSON); 44 | envDrv = (drv.override {linkDevDependencies = true;}).overrideAttrs(oldAttrs: { 45 | propagatedBuildInputs = [ 46 | # Avoid getting npm and its deps in environment 47 | (drv.passthru.nodejs.override { enableNpm = false; }) 48 | # Users probably want pnpm 49 | nodePackages.pnpm 50 | ]; 51 | srcs = []; 52 | src = pkgs.runCommandNoCC "pnpm2nix-dummy-env-src" {} '' 53 | mkdir $out 54 | ''; 55 | # Remove original nodejs from inputs, it's now propagated and stripped from npm 56 | buildInputs = builtins.filter (x: x != drv.passthru.nodejs) oldAttrs.buildInputs; 57 | outputs = [ "out" ]; 58 | buildPhase = "true"; 59 | postUnpack = '' 60 | mkdir -p node_modules/${oldAttrs.pname} 61 | ln -s ${pkgJSON} node_modules/${oldAttrs.pname}/package.json 62 | ''; 63 | installPhase = '' 64 | mkdir -p $out 65 | mv node_modules $out 66 | ''; 67 | }); 68 | in makeSetupHook { 69 | deps = envDrv.buildInputs ++ envDrv.propagatedBuildInputs; 70 | } (writeScript "pnpm-env-hook.sh" '' 71 | export NODE_PATH=${lib.getLib envDrv}/node_modules 72 | ''); 73 | 74 | mkPnpmPackage = { 75 | src, 76 | packageJSON ? src + "/package.json", 77 | pnpmLock ? src + "/pnpm-lock.yaml", 78 | overrides ? defaultPnpmOverrides, 79 | allowImpure ? false, 80 | linkDevDependencies ? false, 81 | ... 82 | } @args: 83 | let 84 | specialAttrs = [ "src" "packageJSON" "pnpmLock" "overrides" "allowImpure" ]; 85 | 86 | package = lib.importJSON packageJSON; 87 | pname = safePkgName package.name; 88 | version = package.version; 89 | name = pname + "-" + version; 90 | 91 | pnpmlock = let 92 | lock = importYAML "${pname}-pnpmlock-${version}" pnpmLock; 93 | in rewritePnpmLock lock; 94 | 95 | # Convert pnpm package entries to nix derivations 96 | packages = let 97 | 98 | linkPath = src: link: src + ("/" + (lib.removePrefix "link:" link)); 99 | 100 | # Normal (registry/git) packages 101 | nonLocalPackages = lib.mapAttrs (n: v: (let 102 | drv = mkPnpmModule v; 103 | overriden = overrideDrv overrides drv; 104 | in overriden)) pnpmlock.packages; 105 | 106 | # Local (link:) packages 107 | localPackages = let 108 | attrNames = builtins.filter (a: lib.hasPrefix "link:" a) pnpmlock.dependencies; 109 | 110 | # Try to resolve relative path and import package.json to read package name 111 | resolvePkgName = (link: (lib.importJSON ((linkPath src link) + "/package.json")).name); 112 | resolve = (link: lib.nameValuePair link (resolvePkgName link)); 113 | resolvedSpecifiers = lib.listToAttrs (map (resolve) attrNames); 114 | 115 | in lib.mapAttrs (n: v: let 116 | # Note: src can only be local path for link: dependencies 117 | pkgPath = linkPath src n; 118 | pkg = ((import ./default.nix modArgs).mkPnpmPackage { 119 | inherit allowImpure; 120 | src = pkgPath; 121 | packageJSON = pkgPath + "/package.json"; 122 | pnpmLock = pkgPath + "/pnpm-lock.yaml"; 123 | }).overrideAttrs(oldAttrs: { 124 | src = wrapRawSrc pkgPath oldAttrs.pname; 125 | }); 126 | in pkg) resolvedSpecifiers; 127 | in nonLocalPackages // localPackages; 128 | 129 | # Wrap sources in a directory named the same as the node_modules/ path 130 | wrapRawSrc = src: pname: (stdenv.mkDerivation (let 131 | name = safePkgName pname; 132 | in { 133 | name = "pnpm2nix-source-${name}"; 134 | inherit src; 135 | 136 | # Make dirty tars work 137 | TAR_OPTIONS = "--delay-directory-restore"; 138 | # We're still making them writable, but we need to run something else first 139 | dontMakeSourcesWritable = true; 140 | # Make directories have +x and everything writable 141 | postUnpack = '' 142 | find "$sourceRoot" -type d -exec chmod u+x {} \; 143 | chmod -R u+w -- "$sourceRoot" 144 | ''; 145 | 146 | dontBuild = true; 147 | configurePhase = ":"; 148 | fixupPhase = ":"; 149 | installPhase = '' 150 | mkdir -p $out/${pname} 151 | cp -a * $out/${pname}/ 152 | ''; 153 | })); 154 | wrapSrc = pkgInfo: let 155 | integrity = lib.splitString "-" pkgInfo.resolution.integrity; 156 | shaType = lib.elemAt integrity 0; 157 | shaSum = lib.elemAt integrity 1; 158 | tarball = (lib.lists.last (lib.splitString "/" pkgInfo.pname)) + "-" + pkgInfo.version + ".tgz"; 159 | registry = if builtins.hasAttr "registry" pnpmlock then pnpmlock.registry else "https://registry.npmjs.org/"; 160 | src = (if (lib.hasAttr "integrity" pkgInfo.resolution) then 161 | (pkgs.fetchurl { 162 | url = if (lib.hasAttr "tarball" pkgInfo.resolution) 163 | then pkgInfo.resolution.tarball 164 | else "${registry}${pkgInfo.pname}/-/${tarball}"; 165 | "${shaType}" = shaSum; 166 | }) else if (lib.hasAttr "commit" pkgInfo.resolution) then builtins.fetchGit { 167 | url = pkgInfo.resolution.repo; 168 | rev = pkgInfo.resolution.commit; 169 | } else if allowImpure then fetchTarball { 170 | # Note: Resolved tarballs(github revs for example) 171 | # does not yet have checksums 172 | # https://github.com/pnpm/pnpm/issues/1035 173 | url = pkgInfo.resolution.tarball; 174 | } else throw "No download method found for package ${pkgInfo.name}, consider adding `allowImpure = true;`"); 175 | in wrapRawSrc src pkgInfo.pname; 176 | 177 | mkPnpmModule = pkgInfo: let 178 | hasCycle = (builtins.length pkgInfo.constituents) > 1; 179 | 180 | # These attrs have already been created in pre-processing 181 | # Cyclic dependencies has deterministic ordering so they will end up with the exact same attributes 182 | name = builtins.substring 0 207 (lib.concatStringsSep "-" (builtins.map (attr: pnpmlock.packages."${attr}".name) pkgInfo.constituents)); 183 | version = if !hasCycle then pkgInfo.version else "cyclic"; 184 | pname = lib.concatStringsSep "-" (builtins.map (attr: pnpmlock.packages."${attr}".pname) pkgInfo.constituents); 185 | 186 | srcs = (builtins.map (attr: wrapSrc pnpmlock.packages."${attr}") pkgInfo.constituents); 187 | 188 | deps = builtins.map (attrName: packages."${attrName}") 189 | # Get all dependencies from cycle 190 | (lib.unique (lib.flatten (builtins.map 191 | (attr: pnpmlock.packages."${attr}".dependencies) pkgInfo.constituents))); 192 | 193 | in 194 | mkPnpmDerivation { 195 | inherit deps; 196 | attrs = { inherit name srcs pname version; }; 197 | linkDevDependencies = false; 198 | }; 199 | 200 | in 201 | assert (pnpmlock.lockfileVersion == 5 || pnpmlock.lockfileVersion == 5.1); 202 | (mkPnpmDerivation { 203 | deps = (builtins.map 204 | (attrName: packages."${attrName}") 205 | (pnpmlock.dependencies ++ pnpmlock.optionalDependencies)); 206 | 207 | devDependencies = builtins.map 208 | (attrName: packages."${attrName}") pnpmlock.devDependencies; 209 | 210 | inherit linkDevDependencies; 211 | 212 | passthru = { 213 | packageJSON = package; 214 | }; 215 | 216 | # Filter "special" attrs we know how to interpret, merge rest to drv attrset 217 | attrs = ((lib.filterAttrs (k: v: !(lib.lists.elem k specialAttrs)) args) // { 218 | srcs = [ (wrapRawSrc src pname) ]; 219 | inherit name pname version; 220 | }); 221 | }); 222 | 223 | } 224 | -------------------------------------------------------------------------------- /derivation.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? import {} 2 | , nodejs ? pkgs.nodejs-8_x 3 | , nodePackages ? pkgs.nodePackages_8_x 4 | , node-gyp ? nodePackages.node-gyp 5 | }: 6 | 7 | 8 | let 9 | inherit (pkgs) stdenv lib fetchurl; 10 | 11 | hasScript = scriptName: "test \"$(${pkgs.jq}/bin/jq -e -r '.scripts | .${scriptName} | length' < package.json)\" -gt 0"; 12 | 13 | linkBinOutputsScript = ./link-bin-outputs.py; 14 | 15 | in { 16 | 17 | mkPnpmDerivation = lib.makeOverridable ({ 18 | attrs ? {}, 19 | devDependencies ? [], 20 | deps ? [], 21 | linkDevDependencies, 22 | passthru ? {}, 23 | }: stdenv.mkDerivation (attrs // { 24 | 25 | outputs = attrs.outputs or [ "out" "lib" ]; 26 | 27 | # Only bin outputs specified in package.json should be patched 28 | # Trying to reduce some closure size 29 | dontPatchShebangs = true; 30 | 31 | nativeBuildInputs = with pkgs; [ pkgconfig ]; 32 | 33 | propagatedBuildInputs = []; 34 | 35 | buildInputs = [ nodejs nodejs.passthru.python node-gyp ] 36 | ++ lib.optionals (lib.hasAttr "buildInputs" attrs) attrs.buildInputs 37 | ++ lib.optionals linkDevDependencies devDependencies 38 | ++ deps; 39 | 40 | checkInputs = devDependencies; 41 | 42 | passthru = passthru // { 43 | inherit nodejs; 44 | }; 45 | 46 | checkPhase = let 47 | runTestScript = scriptName: '' 48 | if ${hasScript scriptName}; then 49 | PATH="${lib.makeBinPath devDependencies}:$PATH" npm run-script ${scriptName} 50 | fi 51 | ''; 52 | in attrs.checkPhase or '' 53 | runHook preCheck 54 | 55 | for constituent in ''${constituents}; do 56 | cd "''${constituent}" 57 | ${runTestScript "pretest"} 58 | ${runTestScript "test"} 59 | ${runTestScript "posttest"} 60 | cd "''${build_dir}" 61 | done 62 | 63 | runHook postCheck 64 | ''; 65 | 66 | sourceRoot = "."; 67 | postUnpack = '' 68 | mkdir -p node_modules 69 | cp -R pnpm2nix-source-*/* node_modules/ 70 | rm -r pnpm2nix-source-* 71 | ''; 72 | 73 | configurePhase = let 74 | linkDeps = deps ++ lib.optionals linkDevDependencies devDependencies; 75 | linkDep = dep: '' 76 | ls -d ${lib.getLib dep}/node_modules/* ${lib.getLib dep}/node_modules/@*/* | grep -Pv '(@[^/]+)$' | while read module; do 77 | if test ! -L "$module"; then 78 | # Check for nested directories (npm calls this scopes) 79 | if test "$(echo "$module" | grep -o '@')" = '@'; then 80 | scope=$(echo "${dep.pname}" | cut -d/ -f 1) 81 | outdir=node_modules/$scope 82 | mkdir -p "$outdir" 83 | ln -sf "$module" "$outdir" 84 | else 85 | ln -sf "$module" node_modules/ || : 86 | fi 87 | fi 88 | done 89 | ''; 90 | in attrs.configurePhase or '' 91 | runHook preConfigure 92 | 93 | export constituents=$(ls -d node_modules/* node_modules/@*/* | grep -Pv '(@[^/]+)$') 94 | export build_dir=$(pwd) 95 | 96 | # Prevent gyp from going online (no matter if invoked by us or by package.json) 97 | export npm_config_nodedir="${nodejs}" 98 | 99 | # node-gyp writes to $HOME 100 | export HOME="$TEMPDIR" 101 | 102 | # Link dependencies into node_modules 103 | 104 | ${lib.concatStringsSep "\n" (map linkDep linkDeps)} 105 | 106 | for constituent in ''${constituents}; do 107 | cd "''${constituent}" 108 | if ${hasScript "preinstall"}; then 109 | npm run-script preinstall 110 | fi 111 | cd "''${build_dir}" 112 | done 113 | 114 | runHook postConfigure 115 | ''; 116 | 117 | buildPhase = attrs.buildPhase or '' 118 | runHook preBuild 119 | 120 | for constituent in ''${constituents}; do 121 | cd "''${constituent}" 122 | # If there is a binding.gyp file and no "install" or "preinstall" script in package.json "install" defaults to "node-gyp rebuild" 123 | if ${hasScript "install"}; then 124 | npm run-script install 125 | elif ${hasScript "preinstall"}; then 126 | true 127 | elif [ -f ./binding.gyp ]; then 128 | ${nodePackages.node-gyp}/bin/node-gyp rebuild 129 | fi 130 | 131 | if ${hasScript "postinstall"}; then 132 | npm run-script postinstall 133 | fi 134 | cd "''${build_dir}" 135 | done 136 | 137 | runHook postBuild 138 | ''; 139 | 140 | installPhase = let 141 | linkBinOutputs = "${nodejs.passthru.python}/bin/python ${linkBinOutputsScript}"; 142 | in attrs.installPhase or '' 143 | runHook preInstall 144 | 145 | mkdir -p "$out/bin" "$lib" 146 | mv node_modules $lib/ 147 | 148 | # Create bin outputs 149 | for constituent in ''${constituents}; do 150 | ${linkBinOutputs} "$out/bin/" "$lib/$constituent" | while read bin_in; do 151 | patchShebangs "$bin_in" 152 | done 153 | done 154 | 155 | runHook postInstall 156 | ''; 157 | })); 158 | 159 | } 160 | -------------------------------------------------------------------------------- /link-bin-outputs.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import itertools 3 | import argparse 4 | import os.path 5 | import json 6 | 7 | 8 | argparser = argparse.ArgumentParser( 9 | description='Link bin outputs based on package.json contents') 10 | argparser.add_argument( 11 | 'bin_out', type=str, 12 | help='bin output path') 13 | argparser.add_argument( 14 | 'lib_out', type=str, 15 | help='lib output path') 16 | 17 | 18 | def get_bin_attr_files(package_json): 19 | try: 20 | bins = package_json['bin'] 21 | except KeyError: 22 | return tuple() 23 | else: 24 | if isinstance(bins, basestring): 25 | return ((package_json['name'], bins),) 26 | else: 27 | return bins.items() 28 | 29 | 30 | def get_directories_bin_attr_files(package_json, lib_out): 31 | try: 32 | bins = package_json['directories']['bin'] 33 | except Exception: 34 | pass 35 | else: 36 | for f in os.path.listdir(os.path.join(lib_out, bins)): 37 | yield os.path.join(lib_out, f) 38 | 39 | 40 | def resolve_bin_outputs(bin_out, lib_out, entries): 41 | for e in entries: 42 | yield ( 43 | os.path.join(bin_out, e[0]), 44 | os.path.join(lib_out, e[1]) 45 | ) 46 | 47 | 48 | if __name__ == '__main__': 49 | args = argparser.parse_args() 50 | 51 | with open(os.path.join(args.lib_out, 'package.json')) as f: 52 | package_json = json.load(f) 53 | 54 | for fout, fin in resolve_bin_outputs( 55 | args.bin_out, args.lib_out, itertools.chain( 56 | get_bin_attr_files(package_json), 57 | get_directories_bin_attr_files(args.lib_out, package_json))): 58 | 59 | fin = fin.encode("utf-8"); 60 | fout = fout.encode("utf-8"); 61 | 62 | os.symlink(fin, fout) 63 | os.chmod(fout, 0o755) 64 | 65 | # Print input file to stdout so we can pipe it to patchShebangs 66 | print(fin) 67 | -------------------------------------------------------------------------------- /overrides.nix: -------------------------------------------------------------------------------- 1 | { pkgs, nodejs, nodePackages }: 2 | with pkgs; 3 | 4 | { 5 | sharp = (drv: drv.overrideAttrs(oldAttrs: { 6 | buildInputs = oldAttrs.buildInputs ++ (with pkgs; [ 7 | vips 8 | glib 9 | ]); 10 | 11 | NIX_CFLAGS_COMPILE = [ 12 | "-I${pkgs.glib.dev}/include/glib-2.0/" 13 | "-I${pkgs.glib}/lib/glib-2.0/include/" 14 | ]; 15 | 16 | preBuild = '' 17 | # Force sharp to use the provided vips version 18 | # by default it tries to fetch it online 19 | echo 'module.exports.download_vips = function () { return true }' >> binding.js 20 | ''; 21 | })); 22 | 23 | hiredis = (drv: drv.overrideAttrs(oldAttrs: { 24 | buildInputs = oldAttrs.buildInputs 25 | ++ lib.optional stdenv.isDarwin darwin.cctools; 26 | })); 27 | 28 | pkcs11js = (drv: drv.overrideAttrs(oldAttrs: { 29 | buildInputs = oldAttrs.buildInputs 30 | ++ lib.optional stdenv.isDarwin darwin.libobjc; 31 | })); 32 | } 33 | -------------------------------------------------------------------------------- /pnpmlock.nix: -------------------------------------------------------------------------------- 1 | { pkgs 2 | , lib ? pkgs.lib 3 | , nodejs 4 | , nodePackages 5 | }: 6 | 7 | # Rewrite the pnpm-lock graph to be a DAG and pre-resolve all dependencies to 8 | # absolute attribute names in the pnpmlock packages attribute set. 9 | # 10 | # 11 | # After rewriting you end up with a datastructure that looks like (JSON): 12 | # { 13 | # "dependencies": [ "/yargs/8.0.2" ], 14 | # "devDependencies": [], 15 | # "optionalDependencies": [], 16 | # "packages": { 17 | # "/camelcase/4.1.0": { 18 | # "constituents": [ "/camelcase/4.1.0" ], 19 | # "dependencies": [], 20 | # "dev": false, 21 | # "engines": { "node": ">=4" }, 22 | # "name": "camelcase-4.1.0", 23 | # "peerDependencies": [], 24 | # "pname": "camelcase", 25 | # "rawPname": "camelcase", 26 | # "resolution": { "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" }, 27 | # "version": "4.1.0" 28 | # }, 29 | # "/yargs/8.0.2": { 30 | # "constituents": [ "/yargs/8.0.2" ], 31 | # "dependencies": [ "/camelcase/4.1.0" ], 32 | # "dev": false, 33 | # "name": "yargs-8.0.2", 34 | # "peerDependencies": [], 35 | # "pname": "yargs", 36 | # "rawPname": "yargs", 37 | # "resolution": { "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=" }, 38 | # "version": "8.0.2" 39 | # } 40 | # }, 41 | # "registry": "https://registry.npmjs.org/", 42 | # "pnpmlockMinorVersion": 6, 43 | # "pnpmlockVersion": 3, 44 | # "specifiers": {}, 45 | # } 46 | 47 | let 48 | 49 | # Find index of elem in list 50 | indexOf = let 51 | _indexOf = elem: list: idx: let 52 | cur = lib.elemAt list idx; 53 | in 54 | if lib.lists.length list == 0 then null 55 | else if cur == elem then idx 56 | else (_indexOf elem list (idx+1)); 57 | in (elem: list: _indexOf elem list 0); 58 | 59 | semver = import ./semver.nix { inherit pkgs; }; 60 | 61 | # Extract further required info from attrsets: 62 | # resolution 63 | 64 | # This function sets 4 attributes on each entry 65 | # from pnpmlock.packages: 66 | # 67 | # packageSet: packages from pnpmlock.yaml 68 | # 69 | # name: The nix derivation name 70 | # rawPname: npm package name 71 | # pname: The name portion of the package name (derivation name) 72 | # name: Nix derivation name attr 73 | # version: Nix derivation version attr 74 | injectNameVersionAttrs = packageSet: let 75 | 76 | getDrvVersionAttr = pkgAttr: (lib.elemAt 77 | (builtins.match ".*/([0-9][A-Za-z\.0-9\.\-]+).*" pkgAttr) 0); 78 | 79 | addAttrs = (acc: pkgAttr: acc // (let 80 | pkg = acc."${pkgAttr}"; 81 | in { 82 | "${pkgAttr}" = (pkg // rec { 83 | rawPname = lib.elemAt (builtins.match "/?(.+)/[0-9].*" pkgAttr) 0; 84 | pname = if (lib.hasAttr "name" pkg) 85 | then pkg.name 86 | else rawPname; 87 | name = (lib.replaceStrings [ "@" "/" ] [ "" "-" ] pname) + "-" + version; 88 | version = if (lib.hasAttr "name" pkg) 89 | then pkg.version 90 | else (getDrvVersionAttr pkgAttr); 91 | }); 92 | })); 93 | 94 | in lib.foldl addAttrs packageSet (lib.attrNames packageSet); 95 | 96 | # Resolve peer dependencies to pnpmlock attribute names 97 | # 98 | # packageSet: packages from pnpmlock.yaml 99 | resolvePackagePeerDependencies = packageSet: let 100 | 101 | # Resolve a single pname+versionSpec from graph 102 | resolve = pname: versionSpec: with builtins; let 103 | nameMatches = lib.filterAttrs (n: v: v.pname == pname) packageSet; 104 | matches = lib.filterAttrs (n: v: 105 | semver.satisfies v.version versionSpec) nameMatches; 106 | matchPairs = lib.mapAttrsToList (name: value: 107 | {inherit name; version = value.version;}) matches; 108 | sorted = builtins.sort (a: b: 109 | lib.versionOlder b.version a.version) matchPairs; 110 | hasMatch = lib.length sorted > 0; 111 | finalMatch = lib.elemAt sorted 0; 112 | in if hasMatch then finalMatch.name else null; 113 | 114 | rewriteAttrSet = (acc: pkgAttr: acc // (let 115 | pkg = acc."${pkgAttr}"; 116 | attrSet = if (lib.hasAttr "peerDependencies" pkg) 117 | then pkg.peerDependencies 118 | else {}; 119 | 120 | peerDependencies = lib.foldl (acc: pkgAttr: (let 121 | match = (resolve pkgAttr attrSet."${pkgAttr}"); 122 | ret = if (match != null) then (acc ++ [ match ]) else acc; 123 | in ret)) [] (lib.attrNames attrSet); 124 | in { 125 | "${pkgAttr}" = (pkg // { 126 | inherit peerDependencies; 127 | }); 128 | })); 129 | 130 | in lib.foldl rewriteAttrSet packageSet (lib.attrNames packageSet); 131 | 132 | # Find the attribute name for a pnpmlock package 133 | findAttrName = attrSet: depName: depVersion: let 134 | slashed = "/${depName}/${depVersion}"; 135 | in if (lib.hasAttr slashed attrSet) then slashed else depVersion; 136 | 137 | # Resolve dependencies to pnpmlock attribute names 138 | # 139 | # packageSet: packages from pnpmlock.yaml 140 | resolvePackageDependencies = packageSet: let 141 | 142 | rewriteAttrSet = (acc: pkgAttr: acc // (let 143 | pkg = acc."${pkgAttr}"; 144 | attrSet = (if (lib.hasAttr "dependencies" pkg) 145 | then pkg.dependencies 146 | else {}) // (if (lib.hasAttr "optionalDependencies" pkg) 147 | then pkg.optionalDependencies 148 | else {}); 149 | 150 | baseDependencies = lib.foldl (acc: depName: (let 151 | depVersion = attrSet."${depName}"; 152 | ret = acc ++ [ (findAttrName packageSet depName depVersion) ]; 153 | in ret)) [] (lib.attrNames attrSet); 154 | 155 | # Create a list of pnames so we can filter out any peerDependencies weirdness 156 | basePnames = builtins.map (attrName: packageSet."${attrName}".pname) baseDependencies; 157 | # Filter out pre-resolved (by pnpm) peer dependencies 158 | dependencies = 159 | builtins.filter (attrName: !(lib.elem packageSet."${attrName}".pname basePnames)) pkg.peerDependencies 160 | ++ baseDependencies; 161 | 162 | in { 163 | "${pkgAttr}" = (pkg // { 164 | dependencies = lib.unique dependencies; 165 | }); 166 | })); 167 | 168 | in lib.foldl rewriteAttrSet packageSet (lib.attrNames packageSet); 169 | 170 | # Resolve top-level dependencies to pnpmlock attribute names 171 | # 172 | # packageSet: packages from pnpmlock.yaml 173 | resolveDependencies = pnpmlock: let 174 | packageSet = pnpmlock.packages; 175 | 176 | rewriteAttrs = attr: let 177 | attrSet = if (lib.hasAttr attr pnpmlock && pnpmlock."${attr}" != null) 178 | then pnpmlock."${attr}" 179 | else {}; 180 | in lib.mapAttrsToList (depName: depVersion: 181 | (findAttrName packageSet depName depVersion)) attrSet; 182 | 183 | in pnpmlock // { 184 | dependencies = rewriteAttrs "dependencies"; 185 | devDependencies = rewriteAttrs "devDependencies"; 186 | optionalDependencies = rewriteAttrs "optionalDependencies"; 187 | }; 188 | 189 | # Something something 190 | breakCircular = dependencyAttributes: packageSet: let 191 | 192 | # Local (link:) dependencies are different in that they are treated at separate nix derivations 193 | # and they are not present in the pnpmlock (acc attribute) 194 | # 195 | # Filter them out and let each sub-derivation deal with circular dependencies on their own 196 | nonLocalDependencyAttrs = builtins.filter (a: !(lib.hasPrefix "link:" a)) dependencyAttributes; 197 | 198 | walkGraph = (pkgAttr: visitStack: acc: let 199 | # Scope the current entry for convenience 200 | entry = acc."${pkgAttr}"; 201 | hasDeps = lib.length entry.dependencies > 0; 202 | deps = entry.dependencies; 203 | 204 | # Detect cycles by seeing if the exact pnpmlock package 205 | # has already been visited 206 | hasCycle = lib.elem pkgAttr visitStack; 207 | 208 | # If there is a cycle we have to know where to start rewriting 209 | # the dependency graph 210 | cycleIndex = indexOf pkgAttr visitStack; 211 | 212 | # List of constituents in this cycle 213 | # This is a list of attribute names poped from the visit stack 214 | # 215 | # The list is sorted to provide the exact same ordering no matter 216 | # where the cycle was entered 217 | cycleConstituents = lib.unique (lib.lists.sort (a: b: a < b) (if hasCycle then 218 | (lib.lists.sublist cycleIndex (lib.lists.length visitStack) visitStack) 219 | else [ pkgAttr ])); 220 | 221 | # Modify the accumulator with constituents 222 | # 223 | # We also need to remove the cycled dependencies from the inputs 224 | # to stop furter recursion 225 | rewrittenSet = lib.foldl (acc: attrName: (acc // (let 226 | constituent = acc."${attrName}"; 227 | constituentDeps = constituent.dependencies; 228 | dependencies = lib.filter (depAttr: !(lib.elem depAttr cycleConstituents)) constituentDeps; 229 | in { 230 | "${attrName}" = (constituent // { 231 | constituents = lib.unique ((if builtins.hasAttr "constituents" constituent then constituent.constituents else []) ++ cycleConstituents); 232 | inherit dependencies; 233 | }); 234 | }))) acc cycleConstituents; 235 | 236 | # Walk deeper in the graph if there are dependencies 237 | reducedNodes = let 238 | addedVisit = visitStack ++ [ pkgAttr ]; 239 | in 240 | # assert !hasCycle; 241 | lib.foldl (a: depAttr: walkGraph depAttr addedVisit a) rewrittenSet deps; 242 | 243 | in if hasDeps then reducedNodes else rewrittenSet); 244 | 245 | in lib.foldl (acc: attrName: acc // 246 | (walkGraph attrName [] acc)) packageSet nonLocalDependencyAttrs; 247 | 248 | # force reindent (TODO: Remove me) 249 | rewriteGraph = pnpmlock: lib.foldl (acc: fn: fn acc) pnpmlock [ 250 | 251 | # Recursive workspaces are currently unsupported 252 | (pnpmlock: ( 253 | if lib.hasAttr "importers" pnpmlock 254 | then (throw "Workspaces currently unsupported. This is a regression from pnpm 2.x.") 255 | else pnpmlock)) 256 | 257 | # A bare bones project might not have the packages attribute 258 | (pnpmlock: pnpmlock // { 259 | packages = if (lib.hasAttr "packages" pnpmlock) then pnpmlock.packages else {}; 260 | }) 261 | 262 | # Inject pname, version etc attributes 263 | (pnpmlock: pnpmlock // { 264 | packages = injectNameVersionAttrs pnpmlock.packages; 265 | }) 266 | 267 | # Resolve all peer dependencies to attribute names 268 | (pnpmlock: pnpmlock // { 269 | packages = resolvePackagePeerDependencies pnpmlock.packages; 270 | }) 271 | 272 | # Resolve all dependencies to attribute names 273 | (pnpmlock: pnpmlock // { 274 | packages = resolvePackageDependencies pnpmlock.packages; 275 | }) 276 | 277 | # Resolve all top-level dependencies (dependencies & devDependencies) 278 | (pnpmlock: resolveDependencies pnpmlock) 279 | 280 | # Lets play break the cycle! 281 | # npm allows for circular dependencies (insanity) 282 | # 283 | # We need to de-cycle the graph to not cause infinite recursions 284 | # We do this by aggregating a cycle into a single derivation per cycle 285 | # 286 | # In a single-package context circular can be achieved without causing 287 | # infinite recursion 288 | (pnpmlock: pnpmlock // (let 289 | # Avoid unnecessary processing by walking from root out to the leaf(s) 290 | # 291 | # TODO: Dont include devDependencies and optionalDependencies unconditionally 292 | # We could easily optimise this away by only walking if they are included 293 | dependencyAttributes = lib.unique (pnpmlock.dependencies 294 | ++ pnpmlock.devDependencies 295 | ++ pnpmlock.optionalDependencies); 296 | in { 297 | packages = breakCircular dependencyAttributes pnpmlock.packages; 298 | })) 299 | ]; 300 | 301 | in (pnpmlockYAML: rewriteGraph pnpmlockYAML) 302 | -------------------------------------------------------------------------------- /semver.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? import {}, lib ? pkgs.lib }: 2 | let 3 | inherit (builtins) elemAt match; 4 | 5 | # Replace a list entry at defined index with set value 6 | ireplace = idx: value: list: 7 | let 8 | inherit (builtins) genList length; 9 | in genList (i: if i == idx then value else (elemAt list i)) (length list); 10 | 11 | orBlank = x: if x != null then x else ""; 12 | 13 | operators = let 14 | mkComparison = ret: version: v: 15 | let 16 | x = 1; 17 | in builtins.compareVersions version v == ret; 18 | 19 | mkIdxComparison = idx: version: v: 20 | let 21 | ver = builtins.splitVersion v; 22 | minor = builtins.toString (lib.toInt (elemAt ver idx) + 1); 23 | upper = builtins.concatStringsSep "." (ireplace idx minor ver); 24 | in operators.">=" version v && operators."<" version upper; 25 | 26 | dropWildcardPrecision = f: version: constraint: 27 | let 28 | wildcardMatch = ( 29 | match 30 | "([^0-9x*]*)((0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)|(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)|(0|[1-9][0-9]*)){0,1}([.x*]*)(-((0|[1-9][0-9]*|[0-9]*[a-zA-Z-][0-9a-zA-Z-]*)(\\.(0|[1-9][0-9]*|[0-9]*[a-zA-Z-][0-9a-zA-Z-]*))*)){0,1}(\\+([0-9a-zA-Z-]+(\\.[0-9a-zA-Z-]+)*)){0,1}" 31 | constraint 32 | ); 33 | matchPart = (elemAt wildcardMatch 1); 34 | shortConstraint = if matchPart != null then matchPart else ""; 35 | shortVersion = 36 | builtins.substring 0 (builtins.stringLength shortConstraint) version; 37 | in f shortVersion shortConstraint; 38 | in { 39 | # Prefix operators 40 | "==" = dropWildcardPrecision (mkComparison 0); 41 | ">" = dropWildcardPrecision (mkComparison 1); 42 | "<" = dropWildcardPrecision (mkComparison (-1)); 43 | "!=" = v: c: !operators."==" v c; 44 | ">=" = v: c: operators."==" v c || operators.">" v c; 45 | "<=" = v: c: operators."==" v c || operators."<" v c; 46 | # Semver specific operators 47 | "~" = mkIdxComparison 1; 48 | "^" = mkIdxComparison 0; 49 | }; 50 | 51 | re = { 52 | operators = "([=>="; 83 | u = "<="; 84 | }; 85 | v = { 86 | vl = orBlank (elemAt mIn 0); 87 | vu = orBlank (elemAt mIn reLengths.version); 88 | }; 89 | } else if mUpperBound != null then { 90 | ops = { 91 | t = "-"; 92 | l = (elemAt mUpperBound 0); 93 | u = "<"; 94 | }; 95 | v = { 96 | vl = orBlank (elemAt mUpperBound reLengths.operators); 97 | vu = orBlank (elemAt mUpperBound (reLengths.operators + reLengths.version)); 98 | }; 99 | } else if mNone != null then { 100 | ops.t = "=="; 101 | v = orBlank (elemAt mNone 0); 102 | } else 103 | throw ''Constraint "${constraintStr}" could not be parsed'' 104 | ); 105 | 106 | satisfiesSingle = version: constraint: 107 | let 108 | inherit (parseConstraint constraint) ops v; 109 | in if ops.t == "-" then 110 | (operators."${ops.l}" version v.vl && operators."${ops.u}" version v.vu) 111 | else 112 | operators."${ops.t}" version v; 113 | 114 | satisfies = version: constraint: 115 | # TODO: use a regex for the split 116 | builtins.length ( 117 | builtins.filter (c: satisfiesSingle version c) 118 | (lib.splitString " || " constraint) 119 | ) > 0; 120 | in 121 | { inherit satisfies; } 122 | -------------------------------------------------------------------------------- /tests/default.nix: -------------------------------------------------------------------------------- 1 | with (import ((import {}).fetchFromGitHub { 2 | repo = "nixpkgs-channels"; 3 | owner = "NixOS"; 4 | sha256 = "1bjq5gl08pni6q2nqv9w98ym3kybzf7qc6cx4js0388vg8zfgf2k"; 5 | rev = "49a16a290e68ebb1ef5acadf25cf149d0d530d05"; 6 | }) { }); 7 | with lib.attrsets; 8 | with lib; 9 | 10 | let 11 | importTest = testFile: (import testFile { inherit pkgs; }); 12 | 13 | pnpm2nix = ../.; 14 | 15 | lolcatjs = importTest ./lolcatjs; 16 | test-sharp = importTest ./test-sharp; 17 | test-impure = importTest ./test-impure; 18 | nested-dirs = importTest ./nested-dirs; 19 | test-peerdependencies = importTest ./test-peerdependencies; 20 | test-devdependencies = importTest ./test-devdependencies; 21 | web3 = importTest ./web3; 22 | issue-1 = importTest ./issues/1; 23 | test-falsy-script = importTest ./test-falsy-script; 24 | test-filedeps = importTest ./file-dependencies; 25 | test-circular = importTest ./test-circular; 26 | test-scoped = importTest ./test-scoped; 27 | test-recursive-link = importTest ./recursive-link/packages/a; 28 | 29 | mkTest = (name: test: pkgs.runCommandNoCC "${name}" { } ('' 30 | mkdir $out 31 | 32 | '' + test)); 33 | 34 | in 35 | lib.listToAttrs (map (drv: nameValuePair drv.name drv) [ 36 | 37 | # Assert that we set correct version numbers in builds 38 | (mkTest "assert-version" '' 39 | if test $(${lolcatjs}/bin/lolcatjs --version | grep "${lolcatjs.version}" | wc -l) -ne 1; then 40 | echo "Incorrect version attribute! Was: ${lolcatjs.version}, got:" 41 | ${lolcatjs}/bin/lolcatjs --version 42 | exit 1 43 | fi 44 | '') 45 | 46 | # Make sure we build optional dependencies 47 | (mkTest "assert-optionaldependencies" '' 48 | if test $(${lolcatjs}/bin/lolcatjs --help |& grep "Unable to load" | wc -l) -ne 0; then 49 | echo "Optional dependency missing" 50 | exit 1 51 | fi 52 | '') 53 | 54 | # Test a natively linked overriden dependency 55 | (mkTest "native-overrides" "${test-sharp}/bin/testsharp") 56 | 57 | # Test to imupurely build a derivation 58 | (mkTest "impure" "${test-impure}/bin/testapn") 59 | 60 | (mkTest "python-lint" '' 61 | echo ${(python2.withPackages (ps: [ ps.flake8 ]))}/bin/flake8 ${pnpm2nix}/ 62 | '') 63 | 64 | # Check if nested directory structures work properly 65 | (mkTest "nested-dirs" '' 66 | test -e ${lib.getLib nested-dirs}/node_modules/@types/node || (echo "Nested directory structure does not exist"; exit 1) 67 | '') 68 | 69 | # Check if peer dependencies are resolved 70 | (mkTest "peerdependencies" '' 71 | winstonPeer=$(readlink -f ${lib.getLib test-peerdependencies}/node_modules/winston-logstash/../winston) 72 | winstonRoot=$(readlink -f ${lib.getLib test-peerdependencies}/node_modules/winston) 73 | 74 | test "''${winstonPeer}" = "''${winstonRoot}" || (echo "Different versions in root and peer dependency resolution"; exit 1) 75 | '') 76 | 77 | # Test a "weird" package with -beta in version number spec 78 | (let 79 | web3Drv = lib.elemAt (lib.filter (x: x.name == "web3-1.0.0-beta.55") web3.buildInputs) 0; 80 | in mkTest "test-beta-names" '' 81 | test "${web3Drv.name}" = "web3-1.0.0-beta.55" || (echo "web3 name mismatch"; exit 1) 82 | test "${web3Drv.version}" = "1.0.0-beta.55" || (echo "web3 version mismatch"; exit 1) 83 | '') 84 | 85 | # Check if checkPhase is being run correctly 86 | (mkTest "devdependencies" '' 87 | for testScript in "pretest" "test" "posttest"; do 88 | test -f ${lib.getLib test-devdependencies}/node_modules/test-devdependencies/build/''${testScript} 89 | done 90 | '') 91 | 92 | # Reported as "Infinite recursion" 93 | # 94 | # I didn't get that error while using the same code 95 | # Instead I got an issue accessing a peer-dependency which is not 96 | # in the shrinkwrap 97 | # This test passes using nix 2.0.4 98 | # 99 | # See github issue https://github.com/adisbladis/pnpm2nix/issues/1 100 | (mkTest "issue-1" '' 101 | echo ${issue-1} 102 | '') 103 | 104 | # Ensure package with falsy script (async-lock) builds 105 | (mkTest "test-falsy-scripts" '' 106 | echo ${test-falsy-script} 107 | '') 108 | 109 | # Test module local (file dependencies) 110 | (mkTest "test-filedeps" '' 111 | ${test-filedeps}/bin/test-module 112 | '') 113 | 114 | # Test circular dependencies are broken up and still works 115 | (mkTest "test-circular" '' 116 | HOME=$(mktemp -d) ${test-circular}/bin/test-circular 117 | '') 118 | 119 | # Test scoped package 120 | (mkTest "test-scoped" '' 121 | ${test-scoped}/bin/test-scoped 122 | '') 123 | 124 | # # Test pnpm workspace recursive linked packages 125 | # (mkTest "test-recursive-link" '' 126 | # ${test-recursive-link}/bin/test-recursive-link 127 | # '') 128 | 129 | ]) 130 | -------------------------------------------------------------------------------- /tests/file-dependencies/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../. { inherit pkgs; }); 4 | let 5 | package = mkPnpmPackage { 6 | 7 | src = lib.cleanSource ./.; 8 | packageJSON = ./package.json; 9 | pnpmLock = ./pnpm-lock.yaml; 10 | }; 11 | 12 | in package 13 | -------------------------------------------------------------------------------- /tests/file-dependencies/local_modules/ret-42/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../../../. { inherit pkgs; }); 4 | let 5 | package = mkPnpmPackage { 6 | 7 | src = lib.cleanSource ./.; 8 | packageJSON = ./package.json; 9 | pnpmLock = ./pnpm-lock.yaml; 10 | }; 11 | 12 | in package 13 | -------------------------------------------------------------------------------- /tests/file-dependencies/local_modules/ret-42/index.js: -------------------------------------------------------------------------------- 1 | module.exports = (() => { 2 | return 42 3 | }) 4 | -------------------------------------------------------------------------------- /tests/file-dependencies/local_modules/ret-42/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ret-42", 3 | "version": "0.0.1", 4 | "description": "Returns 42", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "author": "", 10 | "license": "ISC" 11 | } 12 | -------------------------------------------------------------------------------- /tests/file-dependencies/local_modules/ret-42/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5 2 | -------------------------------------------------------------------------------- /tests/file-dependencies/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test-filedeps", 3 | "version": "0.0.1", 4 | "description": "Licking toads is great fun for the whole family", 5 | "bin": { 6 | "test-module": "test-module.js" 7 | }, 8 | "scripts": { 9 | "test": "echo \"Error: no test specified\" && exit 1" 10 | }, 11 | "license": "MIT", 12 | "dependencies": { 13 | "ret-42": "link:local_modules/ret-42" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /tests/file-dependencies/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | ret-42: 'link:local_modules/ret-42' 3 | lockfileVersion: 5 4 | specifiers: 5 | ret-42: 'link:local_modules/ret-42' 6 | -------------------------------------------------------------------------------- /tests/file-dependencies/test-module.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | const assert = require('assert') 4 | const FN = require('./local_modules/ret-42') 5 | 6 | assert.strictEqual(FN(), 42) 7 | -------------------------------------------------------------------------------- /tests/issues/1/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../../. { inherit pkgs; }); 4 | 5 | mkPnpmPackage { 6 | src = ./.; 7 | allowImpure = true; 8 | } 9 | -------------------------------------------------------------------------------- /tests/issues/1/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "issue-1-test", 3 | "version": "0.1.0", 4 | "private": true, 5 | "dependencies": { 6 | "babel-jest": "^22.1.0", 7 | "babel-loader": "^7.1.2", 8 | "babel-preset-react-app": "^3.1.1" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /tests/issues/1/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | babel-jest: 22.4.4 3 | babel-loader: 7.1.5 4 | babel-preset-react-app: 3.1.2 5 | lockfileVersion: 5 6 | packages: 7 | /ansi-regex/2.1.1: 8 | dev: false 9 | engines: 10 | node: '>=0.10.0' 11 | resolution: 12 | integrity: sha1-w7M6te42DYbg5ijwRorn7yfWVN8= 13 | /ansi-styles/2.2.1: 14 | dev: false 15 | engines: 16 | node: '>=0.10.0' 17 | resolution: 18 | integrity: sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= 19 | /arr-diff/2.0.0: 20 | dependencies: 21 | arr-flatten: 1.1.0 22 | dev: false 23 | engines: 24 | node: '>=0.10.0' 25 | resolution: 26 | integrity: sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8= 27 | /arr-flatten/1.1.0: 28 | dev: false 29 | engines: 30 | node: '>=0.10.0' 31 | resolution: 32 | integrity: sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== 33 | /array-unique/0.2.1: 34 | dev: false 35 | engines: 36 | node: '>=0.10.0' 37 | resolution: 38 | integrity: sha1-odl8yvy8JiXMcPrc6zalDFiwGlM= 39 | /arrify/1.0.1: 40 | dev: false 41 | engines: 42 | node: '>=0.10.0' 43 | resolution: 44 | integrity: sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= 45 | /babel-code-frame/6.26.0: 46 | dependencies: 47 | chalk: 1.1.3 48 | esutils: 2.0.2 49 | js-tokens: 3.0.2 50 | dev: false 51 | resolution: 52 | integrity: sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= 53 | /babel-generator/6.26.1: 54 | dependencies: 55 | babel-messages: 6.23.0 56 | babel-runtime: 6.26.0 57 | babel-types: 6.26.0 58 | detect-indent: 4.0.0 59 | jsesc: 1.3.0 60 | lodash: 4.17.11 61 | source-map: 0.5.7 62 | trim-right: 1.0.1 63 | dev: false 64 | resolution: 65 | integrity: sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA== 66 | /babel-helper-builder-binary-assignment-operator-visitor/6.24.1: 67 | dependencies: 68 | babel-helper-explode-assignable-expression: 6.24.1 69 | babel-runtime: 6.26.0 70 | babel-types: 6.26.0 71 | dev: false 72 | resolution: 73 | integrity: sha1-zORReto1b0IgvK6KAsKzRvmlZmQ= 74 | /babel-helper-builder-react-jsx/6.26.0: 75 | dependencies: 76 | babel-runtime: 6.26.0 77 | babel-types: 6.26.0 78 | esutils: 2.0.2 79 | dev: false 80 | resolution: 81 | integrity: sha1-Of+DE7dci2Xc7/HzHTg+D/KkCKA= 82 | /babel-helper-call-delegate/6.24.1: 83 | dependencies: 84 | babel-helper-hoist-variables: 6.24.1 85 | babel-runtime: 6.26.0 86 | babel-traverse: 6.26.0 87 | babel-types: 6.26.0 88 | dev: false 89 | resolution: 90 | integrity: sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340= 91 | /babel-helper-define-map/6.26.0: 92 | dependencies: 93 | babel-helper-function-name: 6.24.1 94 | babel-runtime: 6.26.0 95 | babel-types: 6.26.0 96 | lodash: 4.17.11 97 | dev: false 98 | resolution: 99 | integrity: sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8= 100 | /babel-helper-explode-assignable-expression/6.24.1: 101 | dependencies: 102 | babel-runtime: 6.26.0 103 | babel-traverse: 6.26.0 104 | babel-types: 6.26.0 105 | dev: false 106 | resolution: 107 | integrity: sha1-8luCz33BBDPFX3BZLVdGQArCLKo= 108 | /babel-helper-function-name/6.24.1: 109 | dependencies: 110 | babel-helper-get-function-arity: 6.24.1 111 | babel-runtime: 6.26.0 112 | babel-template: 6.26.0 113 | babel-traverse: 6.26.0 114 | babel-types: 6.26.0 115 | dev: false 116 | resolution: 117 | integrity: sha1-00dbjAPtmCQqJbSDUasYOZ01gKk= 118 | /babel-helper-get-function-arity/6.24.1: 119 | dependencies: 120 | babel-runtime: 6.26.0 121 | babel-types: 6.26.0 122 | dev: false 123 | resolution: 124 | integrity: sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0= 125 | /babel-helper-hoist-variables/6.24.1: 126 | dependencies: 127 | babel-runtime: 6.26.0 128 | babel-types: 6.26.0 129 | dev: false 130 | resolution: 131 | integrity: sha1-HssnaJydJVE+rbyZFKc/VAi+enY= 132 | /babel-helper-optimise-call-expression/6.24.1: 133 | dependencies: 134 | babel-runtime: 6.26.0 135 | babel-types: 6.26.0 136 | dev: false 137 | resolution: 138 | integrity: sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc= 139 | /babel-helper-regex/6.26.0: 140 | dependencies: 141 | babel-runtime: 6.26.0 142 | babel-types: 6.26.0 143 | lodash: 4.17.11 144 | dev: false 145 | resolution: 146 | integrity: sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI= 147 | /babel-helper-remap-async-to-generator/6.24.1: 148 | dependencies: 149 | babel-helper-function-name: 6.24.1 150 | babel-runtime: 6.26.0 151 | babel-template: 6.26.0 152 | babel-traverse: 6.26.0 153 | babel-types: 6.26.0 154 | dev: false 155 | resolution: 156 | integrity: sha1-XsWBgnrXI/7N04HxySg5BnbkVRs= 157 | /babel-helper-replace-supers/6.24.1: 158 | dependencies: 159 | babel-helper-optimise-call-expression: 6.24.1 160 | babel-messages: 6.23.0 161 | babel-runtime: 6.26.0 162 | babel-template: 6.26.0 163 | babel-traverse: 6.26.0 164 | babel-types: 6.26.0 165 | dev: false 166 | resolution: 167 | integrity: sha1-v22/5Dk40XNpohPKiov3S2qQqxo= 168 | /babel-jest/22.4.4: 169 | dependencies: 170 | babel-plugin-istanbul: 4.1.6 171 | babel-preset-jest: 22.4.4 172 | dev: false 173 | peerDependencies: 174 | babel-core: ^6.0.0 || ^7.0.0-0 175 | resolution: 176 | integrity: sha512-A9NB6/lZhYyypR9ATryOSDcqBaqNdzq4U+CN+/wcMsLcmKkPxQEoTKLajGfd3IkxNyVBT8NewUK2nWyGbSzHEQ== 177 | /babel-loader/7.1.5: 178 | dependencies: 179 | find-cache-dir: 1.0.0 180 | loader-utils: 1.2.3 181 | mkdirp: 0.5.1 182 | dev: false 183 | engines: 184 | node: '>=4' 185 | peerDependencies: 186 | babel-core: '6' 187 | webpack: 2 || 3 || 4 188 | resolution: 189 | integrity: sha512-iCHfbieL5d1LfOQeeVJEUyD9rTwBcP/fcEbRCfempxTDuqrKpu0AZjLAQHEQa3Yqyj9ORKe2iHfoj4rHLf7xpw== 190 | /babel-messages/6.23.0: 191 | dependencies: 192 | babel-runtime: 6.26.0 193 | dev: false 194 | resolution: 195 | integrity: sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= 196 | /babel-plugin-check-es2015-constants/6.22.0: 197 | dependencies: 198 | babel-runtime: 6.26.0 199 | dev: false 200 | resolution: 201 | integrity: sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o= 202 | /babel-plugin-dynamic-import-node/1.1.0: 203 | dependencies: 204 | babel-plugin-syntax-dynamic-import: 6.18.0 205 | babel-template: 6.26.0 206 | babel-types: 6.26.0 207 | dev: false 208 | resolution: 209 | integrity: sha512-tTfZbM9Ecwj3GK50mnPrUpinTwA4xXmDiQGCk/aBYbvl1+X8YqldK86wZ1owVJ4u3mrKbRlXMma80J18qwiaTQ== 210 | /babel-plugin-istanbul/4.1.6: 211 | dependencies: 212 | babel-plugin-syntax-object-rest-spread: 6.13.0 213 | find-up: 2.1.0 214 | istanbul-lib-instrument: 1.10.2 215 | test-exclude: 4.2.3 216 | dev: false 217 | resolution: 218 | integrity: sha512-PWP9FQ1AhZhS01T/4qLSKoHGY/xvkZdVBGlKM/HuxxS3+sC66HhTNR7+MpbO/so/cz/wY94MeSWJuP1hXIPfwQ== 219 | /babel-plugin-jest-hoist/22.4.4: 220 | dev: false 221 | resolution: 222 | integrity: sha512-DUvGfYaAIlkdnygVIEl0O4Av69NtuQWcrjMOv6DODPuhuGLDnbsARz3AwiiI/EkIMMlxQDUcrZ9yoyJvTNjcVQ== 223 | /babel-plugin-syntax-async-functions/6.13.0: 224 | dev: false 225 | resolution: 226 | integrity: sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU= 227 | /babel-plugin-syntax-class-properties/6.13.0: 228 | dev: false 229 | resolution: 230 | integrity: sha1-1+sjt5oxf4VDlixQW4J8fWysJ94= 231 | /babel-plugin-syntax-dynamic-import/6.18.0: 232 | dev: false 233 | resolution: 234 | integrity: sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo= 235 | /babel-plugin-syntax-exponentiation-operator/6.13.0: 236 | dev: false 237 | resolution: 238 | integrity: sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4= 239 | /babel-plugin-syntax-flow/6.18.0: 240 | dev: false 241 | resolution: 242 | integrity: sha1-TDqyCiryaqIM0lmVw5jE63AxDI0= 243 | /babel-plugin-syntax-jsx/6.18.0: 244 | dev: false 245 | resolution: 246 | integrity: sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY= 247 | /babel-plugin-syntax-object-rest-spread/6.13.0: 248 | dev: false 249 | resolution: 250 | integrity: sha1-/WU28rzhODb/o6VFjEkDpZe7O/U= 251 | /babel-plugin-syntax-trailing-function-commas/6.22.0: 252 | dev: false 253 | resolution: 254 | integrity: sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM= 255 | /babel-plugin-transform-async-to-generator/6.24.1: 256 | dependencies: 257 | babel-helper-remap-async-to-generator: 6.24.1 258 | babel-plugin-syntax-async-functions: 6.13.0 259 | babel-runtime: 6.26.0 260 | dev: false 261 | resolution: 262 | integrity: sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E= 263 | /babel-plugin-transform-class-properties/6.24.1: 264 | dependencies: 265 | babel-helper-function-name: 6.24.1 266 | babel-plugin-syntax-class-properties: 6.13.0 267 | babel-runtime: 6.26.0 268 | babel-template: 6.26.0 269 | dev: false 270 | resolution: 271 | integrity: sha1-anl2PqYdM9NvN7YRqp3vgagbRqw= 272 | /babel-plugin-transform-es2015-arrow-functions/6.22.0: 273 | dependencies: 274 | babel-runtime: 6.26.0 275 | dev: false 276 | resolution: 277 | integrity: sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE= 278 | /babel-plugin-transform-es2015-block-scoped-functions/6.22.0: 279 | dependencies: 280 | babel-runtime: 6.26.0 281 | dev: false 282 | resolution: 283 | integrity: sha1-u8UbSflk1wy42OC5ToICRs46YUE= 284 | /babel-plugin-transform-es2015-block-scoping/6.26.0: 285 | dependencies: 286 | babel-runtime: 6.26.0 287 | babel-template: 6.26.0 288 | babel-traverse: 6.26.0 289 | babel-types: 6.26.0 290 | lodash: 4.17.11 291 | dev: false 292 | resolution: 293 | integrity: sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8= 294 | /babel-plugin-transform-es2015-classes/6.24.1: 295 | dependencies: 296 | babel-helper-define-map: 6.26.0 297 | babel-helper-function-name: 6.24.1 298 | babel-helper-optimise-call-expression: 6.24.1 299 | babel-helper-replace-supers: 6.24.1 300 | babel-messages: 6.23.0 301 | babel-runtime: 6.26.0 302 | babel-template: 6.26.0 303 | babel-traverse: 6.26.0 304 | babel-types: 6.26.0 305 | dev: false 306 | resolution: 307 | integrity: sha1-WkxYpQyclGHlZLSyo7+ryXolhNs= 308 | /babel-plugin-transform-es2015-computed-properties/6.24.1: 309 | dependencies: 310 | babel-runtime: 6.26.0 311 | babel-template: 6.26.0 312 | dev: false 313 | resolution: 314 | integrity: sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM= 315 | /babel-plugin-transform-es2015-destructuring/6.23.0: 316 | dependencies: 317 | babel-runtime: 6.26.0 318 | dev: false 319 | resolution: 320 | integrity: sha1-mXux8auWf2gtKwh2/jWNYOdlxW0= 321 | /babel-plugin-transform-es2015-duplicate-keys/6.24.1: 322 | dependencies: 323 | babel-runtime: 6.26.0 324 | babel-types: 6.26.0 325 | dev: false 326 | resolution: 327 | integrity: sha1-c+s9MQypaePvnskcU3QabxV2Qj4= 328 | /babel-plugin-transform-es2015-for-of/6.23.0: 329 | dependencies: 330 | babel-runtime: 6.26.0 331 | dev: false 332 | resolution: 333 | integrity: sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE= 334 | /babel-plugin-transform-es2015-function-name/6.24.1: 335 | dependencies: 336 | babel-helper-function-name: 6.24.1 337 | babel-runtime: 6.26.0 338 | babel-types: 6.26.0 339 | dev: false 340 | resolution: 341 | integrity: sha1-g0yJhTvDaxrw86TF26qU/Y6sqos= 342 | /babel-plugin-transform-es2015-literals/6.22.0: 343 | dependencies: 344 | babel-runtime: 6.26.0 345 | dev: false 346 | resolution: 347 | integrity: sha1-T1SgLWzWbPkVKAAZox0xklN3yi4= 348 | /babel-plugin-transform-es2015-modules-amd/6.24.1: 349 | dependencies: 350 | babel-plugin-transform-es2015-modules-commonjs: 6.26.2 351 | babel-runtime: 6.26.0 352 | babel-template: 6.26.0 353 | dev: false 354 | resolution: 355 | integrity: sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ= 356 | /babel-plugin-transform-es2015-modules-commonjs/6.26.2: 357 | dependencies: 358 | babel-plugin-transform-strict-mode: 6.24.1 359 | babel-runtime: 6.26.0 360 | babel-template: 6.26.0 361 | babel-types: 6.26.0 362 | dev: false 363 | resolution: 364 | integrity: sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q== 365 | /babel-plugin-transform-es2015-modules-systemjs/6.24.1: 366 | dependencies: 367 | babel-helper-hoist-variables: 6.24.1 368 | babel-runtime: 6.26.0 369 | babel-template: 6.26.0 370 | dev: false 371 | resolution: 372 | integrity: sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM= 373 | /babel-plugin-transform-es2015-modules-umd/6.24.1: 374 | dependencies: 375 | babel-plugin-transform-es2015-modules-amd: 6.24.1 376 | babel-runtime: 6.26.0 377 | babel-template: 6.26.0 378 | dev: false 379 | resolution: 380 | integrity: sha1-rJl+YoXNGO1hdq22B9YCNErThGg= 381 | /babel-plugin-transform-es2015-object-super/6.24.1: 382 | dependencies: 383 | babel-helper-replace-supers: 6.24.1 384 | babel-runtime: 6.26.0 385 | dev: false 386 | resolution: 387 | integrity: sha1-JM72muIcuDp/hgPa0CH1cusnj40= 388 | /babel-plugin-transform-es2015-parameters/6.24.1: 389 | dependencies: 390 | babel-helper-call-delegate: 6.24.1 391 | babel-helper-get-function-arity: 6.24.1 392 | babel-runtime: 6.26.0 393 | babel-template: 6.26.0 394 | babel-traverse: 6.26.0 395 | babel-types: 6.26.0 396 | dev: false 397 | resolution: 398 | integrity: sha1-V6w1GrScrxSpfNE7CfZv3wpiXys= 399 | /babel-plugin-transform-es2015-shorthand-properties/6.24.1: 400 | dependencies: 401 | babel-runtime: 6.26.0 402 | babel-types: 6.26.0 403 | dev: false 404 | resolution: 405 | integrity: sha1-JPh11nIch2YbvZmkYi5R8U3jiqA= 406 | /babel-plugin-transform-es2015-spread/6.22.0: 407 | dependencies: 408 | babel-runtime: 6.26.0 409 | dev: false 410 | resolution: 411 | integrity: sha1-1taKmfia7cRTbIGlQujdnxdG+NE= 412 | /babel-plugin-transform-es2015-sticky-regex/6.24.1: 413 | dependencies: 414 | babel-helper-regex: 6.26.0 415 | babel-runtime: 6.26.0 416 | babel-types: 6.26.0 417 | dev: false 418 | resolution: 419 | integrity: sha1-AMHNsaynERLN8M9hJsLta0V8zbw= 420 | /babel-plugin-transform-es2015-template-literals/6.22.0: 421 | dependencies: 422 | babel-runtime: 6.26.0 423 | dev: false 424 | resolution: 425 | integrity: sha1-qEs0UPfp+PH2g51taH2oS7EjbY0= 426 | /babel-plugin-transform-es2015-typeof-symbol/6.23.0: 427 | dependencies: 428 | babel-runtime: 6.26.0 429 | dev: false 430 | resolution: 431 | integrity: sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I= 432 | /babel-plugin-transform-es2015-unicode-regex/6.24.1: 433 | dependencies: 434 | babel-helper-regex: 6.26.0 435 | babel-runtime: 6.26.0 436 | regexpu-core: 2.0.0 437 | dev: false 438 | resolution: 439 | integrity: sha1-04sS9C6nMj9yk4fxinxa4frrNek= 440 | /babel-plugin-transform-exponentiation-operator/6.24.1: 441 | dependencies: 442 | babel-helper-builder-binary-assignment-operator-visitor: 6.24.1 443 | babel-plugin-syntax-exponentiation-operator: 6.13.0 444 | babel-runtime: 6.26.0 445 | dev: false 446 | resolution: 447 | integrity: sha1-KrDJx/MJj6SJB3cruBP+QejeOg4= 448 | /babel-plugin-transform-flow-strip-types/6.22.0: 449 | dependencies: 450 | babel-plugin-syntax-flow: 6.18.0 451 | babel-runtime: 6.26.0 452 | dev: false 453 | resolution: 454 | integrity: sha1-hMtnKTXUNxT9wyvOhFaNh0Qc988= 455 | /babel-plugin-transform-object-rest-spread/6.26.0: 456 | dependencies: 457 | babel-plugin-syntax-object-rest-spread: 6.13.0 458 | babel-runtime: 6.26.0 459 | dev: false 460 | resolution: 461 | integrity: sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY= 462 | /babel-plugin-transform-react-constant-elements/6.23.0: 463 | dependencies: 464 | babel-runtime: 6.26.0 465 | dev: false 466 | resolution: 467 | integrity: sha1-LxGb9NLN1F65uqrldAU8YE9hR90= 468 | /babel-plugin-transform-react-display-name/6.25.0: 469 | dependencies: 470 | babel-runtime: 6.26.0 471 | dev: false 472 | resolution: 473 | integrity: sha1-Z+K/Hx6ck6sI25Z5LgU5K/LMKNE= 474 | /babel-plugin-transform-react-jsx-self/6.22.0: 475 | dependencies: 476 | babel-plugin-syntax-jsx: 6.18.0 477 | babel-runtime: 6.26.0 478 | dev: false 479 | resolution: 480 | integrity: sha1-322AqdomEqEh5t3XVYvL7PBuY24= 481 | /babel-plugin-transform-react-jsx-source/6.22.0: 482 | dependencies: 483 | babel-plugin-syntax-jsx: 6.18.0 484 | babel-runtime: 6.26.0 485 | dev: false 486 | resolution: 487 | integrity: sha1-ZqwSFT9c0tF7PBkmj0vwGX9E7NY= 488 | /babel-plugin-transform-react-jsx/6.24.1: 489 | dependencies: 490 | babel-helper-builder-react-jsx: 6.26.0 491 | babel-plugin-syntax-jsx: 6.18.0 492 | babel-runtime: 6.26.0 493 | dev: false 494 | resolution: 495 | integrity: sha1-hAoCjn30YN/DotKfDA2R9jduZqM= 496 | /babel-plugin-transform-regenerator/6.26.0: 497 | dependencies: 498 | regenerator-transform: 0.10.1 499 | dev: false 500 | resolution: 501 | integrity: sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8= 502 | /babel-plugin-transform-runtime/6.23.0: 503 | dependencies: 504 | babel-runtime: 6.26.0 505 | dev: false 506 | resolution: 507 | integrity: sha1-iEkNRGUC6puOfvsP4J7E2ZR5se4= 508 | /babel-plugin-transform-strict-mode/6.24.1: 509 | dependencies: 510 | babel-runtime: 6.26.0 511 | babel-types: 6.26.0 512 | dev: false 513 | resolution: 514 | integrity: sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g= 515 | /babel-preset-env/1.6.1: 516 | dependencies: 517 | babel-plugin-check-es2015-constants: 6.22.0 518 | babel-plugin-syntax-trailing-function-commas: 6.22.0 519 | babel-plugin-transform-async-to-generator: 6.24.1 520 | babel-plugin-transform-es2015-arrow-functions: 6.22.0 521 | babel-plugin-transform-es2015-block-scoped-functions: 6.22.0 522 | babel-plugin-transform-es2015-block-scoping: 6.26.0 523 | babel-plugin-transform-es2015-classes: 6.24.1 524 | babel-plugin-transform-es2015-computed-properties: 6.24.1 525 | babel-plugin-transform-es2015-destructuring: 6.23.0 526 | babel-plugin-transform-es2015-duplicate-keys: 6.24.1 527 | babel-plugin-transform-es2015-for-of: 6.23.0 528 | babel-plugin-transform-es2015-function-name: 6.24.1 529 | babel-plugin-transform-es2015-literals: 6.22.0 530 | babel-plugin-transform-es2015-modules-amd: 6.24.1 531 | babel-plugin-transform-es2015-modules-commonjs: 6.26.2 532 | babel-plugin-transform-es2015-modules-systemjs: 6.24.1 533 | babel-plugin-transform-es2015-modules-umd: 6.24.1 534 | babel-plugin-transform-es2015-object-super: 6.24.1 535 | babel-plugin-transform-es2015-parameters: 6.24.1 536 | babel-plugin-transform-es2015-shorthand-properties: 6.24.1 537 | babel-plugin-transform-es2015-spread: 6.22.0 538 | babel-plugin-transform-es2015-sticky-regex: 6.24.1 539 | babel-plugin-transform-es2015-template-literals: 6.22.0 540 | babel-plugin-transform-es2015-typeof-symbol: 6.23.0 541 | babel-plugin-transform-es2015-unicode-regex: 6.24.1 542 | babel-plugin-transform-exponentiation-operator: 6.24.1 543 | babel-plugin-transform-regenerator: 6.26.0 544 | browserslist: 2.11.3 545 | invariant: 2.2.4 546 | semver: 5.7.0 547 | dev: false 548 | resolution: 549 | integrity: sha512-W6VIyA6Ch9ePMI7VptNn2wBM6dbG0eSz25HEiL40nQXCsXGTGZSTZu1Iap+cj3Q0S5a7T9+529l/5Bkvd+afNA== 550 | /babel-preset-flow/6.23.0: 551 | dependencies: 552 | babel-plugin-transform-flow-strip-types: 6.22.0 553 | dev: false 554 | resolution: 555 | integrity: sha1-5xIYiHCFrpoktb5Baa/7WZgWxJ0= 556 | /babel-preset-jest/22.4.4: 557 | dependencies: 558 | babel-plugin-jest-hoist: 22.4.4 559 | babel-plugin-syntax-object-rest-spread: 6.13.0 560 | dev: false 561 | resolution: 562 | integrity: sha512-+dxMtOFwnSYWfum0NaEc0O03oSdwBsjx4tMSChRDPGwu/4wSY6Q6ANW3wkjKpJzzguaovRs/DODcT4hbSN8yiA== 563 | /babel-preset-react-app/3.1.2: 564 | dependencies: 565 | babel-plugin-dynamic-import-node: 1.1.0 566 | babel-plugin-syntax-dynamic-import: 6.18.0 567 | babel-plugin-transform-class-properties: 6.24.1 568 | babel-plugin-transform-es2015-destructuring: 6.23.0 569 | babel-plugin-transform-object-rest-spread: 6.26.0 570 | babel-plugin-transform-react-constant-elements: 6.23.0 571 | babel-plugin-transform-react-jsx: 6.24.1 572 | babel-plugin-transform-react-jsx-self: 6.22.0 573 | babel-plugin-transform-react-jsx-source: 6.22.0 574 | babel-plugin-transform-regenerator: 6.26.0 575 | babel-plugin-transform-runtime: 6.23.0 576 | babel-preset-env: 1.6.1 577 | babel-preset-react: 6.24.1 578 | dev: false 579 | peerDependencies: 580 | babel-runtime: ^6.23.0 581 | resolution: 582 | integrity: sha512-/sh5Qd5T08PYa6t4kuCdKh9tXp6/m/Jwyx7PJTqugsYMfsDUJMlBXOs5EwFODHprzjWrmQ0SydnMZu9FY4MZYg== 583 | /babel-preset-react/6.24.1: 584 | dependencies: 585 | babel-plugin-syntax-jsx: 6.18.0 586 | babel-plugin-transform-react-display-name: 6.25.0 587 | babel-plugin-transform-react-jsx: 6.24.1 588 | babel-plugin-transform-react-jsx-self: 6.22.0 589 | babel-plugin-transform-react-jsx-source: 6.22.0 590 | babel-preset-flow: 6.23.0 591 | dev: false 592 | resolution: 593 | integrity: sha1-umnfrqRfw+xjm2pOzqbhdwLJE4A= 594 | /babel-runtime/6.26.0: 595 | dependencies: 596 | core-js: 2.6.9 597 | regenerator-runtime: 0.11.1 598 | dev: false 599 | resolution: 600 | integrity: sha1-llxwWGaOgrVde/4E/yM3vItWR/4= 601 | /babel-template/6.26.0: 602 | dependencies: 603 | babel-runtime: 6.26.0 604 | babel-traverse: 6.26.0 605 | babel-types: 6.26.0 606 | babylon: 6.18.0 607 | lodash: 4.17.11 608 | dev: false 609 | resolution: 610 | integrity: sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= 611 | /babel-traverse/6.26.0: 612 | dependencies: 613 | babel-code-frame: 6.26.0 614 | babel-messages: 6.23.0 615 | babel-runtime: 6.26.0 616 | babel-types: 6.26.0 617 | babylon: 6.18.0 618 | debug: 2.6.9 619 | globals: 9.18.0 620 | invariant: 2.2.4 621 | lodash: 4.17.11 622 | dev: false 623 | resolution: 624 | integrity: sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= 625 | /babel-types/6.26.0: 626 | dependencies: 627 | babel-runtime: 6.26.0 628 | esutils: 2.0.2 629 | lodash: 4.17.11 630 | to-fast-properties: 1.0.3 631 | dev: false 632 | resolution: 633 | integrity: sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= 634 | /babylon/6.18.0: 635 | dev: false 636 | hasBin: true 637 | resolution: 638 | integrity: sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== 639 | /big.js/5.2.2: 640 | dev: false 641 | resolution: 642 | integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== 643 | /braces/1.8.5: 644 | dependencies: 645 | expand-range: 1.8.2 646 | preserve: 0.2.0 647 | repeat-element: 1.1.3 648 | dev: false 649 | engines: 650 | node: '>=0.10.0' 651 | resolution: 652 | integrity: sha1-uneWLhLf+WnWt2cR6RS3N4V79qc= 653 | /browserslist/2.11.3: 654 | dependencies: 655 | caniuse-lite: 1.0.30000979 656 | electron-to-chromium: 1.3.185 657 | deprecated: Browserslist 2 could fail on reading Browserslist >3.0 config used in other tools. 658 | dev: false 659 | hasBin: true 660 | resolution: 661 | integrity: sha512-yWu5cXT7Av6mVwzWc8lMsJMHWn4xyjSuGYi4IozbVTLUOEYPSagUB8kiMDUHA1fS3zjr8nkxkn9jdvug4BBRmA== 662 | /caniuse-lite/1.0.30000979: 663 | dev: false 664 | resolution: 665 | integrity: sha512-gcu45yfq3B7Y+WB05fOMfr0EiSlq+1u+m6rPHyJli/Wy3PVQNGaU7VA4bZE5qw+AU2UVOBR/N5g1bzADUqdvFw== 666 | /chalk/1.1.3: 667 | dependencies: 668 | ansi-styles: 2.2.1 669 | escape-string-regexp: 1.0.5 670 | has-ansi: 2.0.0 671 | strip-ansi: 3.0.1 672 | supports-color: 2.0.0 673 | dev: false 674 | engines: 675 | node: '>=0.10.0' 676 | resolution: 677 | integrity: sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= 678 | /commondir/1.0.1: 679 | dev: false 680 | resolution: 681 | integrity: sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= 682 | /core-js/2.6.9: 683 | dev: false 684 | requiresBuild: true 685 | resolution: 686 | integrity: sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A== 687 | /debug/2.6.9: 688 | dependencies: 689 | ms: 2.0.0 690 | dev: false 691 | resolution: 692 | integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== 693 | /detect-indent/4.0.0: 694 | dependencies: 695 | repeating: 2.0.1 696 | dev: false 697 | engines: 698 | node: '>=0.10.0' 699 | resolution: 700 | integrity: sha1-920GQ1LN9Docts5hnE7jqUdd4gg= 701 | /electron-to-chromium/1.3.185: 702 | dev: false 703 | resolution: 704 | integrity: sha512-h2iW0AHIwix8ifNJg/RkXhQjUDqBME8TvX8qQQMvvF2Tb6F2KnO6febvI+JqI9CdZOWnl90CPxdBRWGDrdk9UA== 705 | /emojis-list/2.1.0: 706 | dev: false 707 | engines: 708 | node: '>= 0.10' 709 | resolution: 710 | integrity: sha1-TapNnbAPmBmIDHn6RXrlsJof04k= 711 | /error-ex/1.3.2: 712 | dependencies: 713 | is-arrayish: 0.2.1 714 | dev: false 715 | resolution: 716 | integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== 717 | /escape-string-regexp/1.0.5: 718 | dev: false 719 | engines: 720 | node: '>=0.8.0' 721 | resolution: 722 | integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 723 | /esutils/2.0.2: 724 | dev: false 725 | engines: 726 | node: '>=0.10.0' 727 | resolution: 728 | integrity: sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= 729 | /expand-brackets/0.1.5: 730 | dependencies: 731 | is-posix-bracket: 0.1.1 732 | dev: false 733 | engines: 734 | node: '>=0.10.0' 735 | resolution: 736 | integrity: sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s= 737 | /expand-range/1.8.2: 738 | dependencies: 739 | fill-range: 2.2.4 740 | dev: false 741 | engines: 742 | node: '>=0.10.0' 743 | resolution: 744 | integrity: sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc= 745 | /extglob/0.3.2: 746 | dependencies: 747 | is-extglob: 1.0.0 748 | dev: false 749 | engines: 750 | node: '>=0.10.0' 751 | resolution: 752 | integrity: sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE= 753 | /filename-regex/2.0.1: 754 | dev: false 755 | engines: 756 | node: '>=0.10.0' 757 | resolution: 758 | integrity: sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY= 759 | /fill-range/2.2.4: 760 | dependencies: 761 | is-number: 2.1.0 762 | isobject: 2.1.0 763 | randomatic: 3.1.1 764 | repeat-element: 1.1.3 765 | repeat-string: 1.6.1 766 | dev: false 767 | engines: 768 | node: '>=0.10.0' 769 | resolution: 770 | integrity: sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q== 771 | /find-cache-dir/1.0.0: 772 | dependencies: 773 | commondir: 1.0.1 774 | make-dir: 1.3.0 775 | pkg-dir: 2.0.0 776 | dev: false 777 | engines: 778 | node: '>=4' 779 | resolution: 780 | integrity: sha1-kojj6ePMN0hxfTnq3hfPcfww7m8= 781 | /find-up/1.1.2: 782 | dependencies: 783 | path-exists: 2.1.0 784 | pinkie-promise: 2.0.1 785 | dev: false 786 | engines: 787 | node: '>=0.10.0' 788 | resolution: 789 | integrity: sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= 790 | /find-up/2.1.0: 791 | dependencies: 792 | locate-path: 2.0.0 793 | dev: false 794 | engines: 795 | node: '>=4' 796 | resolution: 797 | integrity: sha1-RdG35QbHF93UgndaK3eSCjwMV6c= 798 | /for-in/1.0.2: 799 | dev: false 800 | engines: 801 | node: '>=0.10.0' 802 | resolution: 803 | integrity: sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= 804 | /for-own/0.1.5: 805 | dependencies: 806 | for-in: 1.0.2 807 | dev: false 808 | engines: 809 | node: '>=0.10.0' 810 | resolution: 811 | integrity: sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4= 812 | /glob-base/0.3.0: 813 | dependencies: 814 | glob-parent: 2.0.0 815 | is-glob: 2.0.1 816 | dev: false 817 | engines: 818 | node: '>=0.10.0' 819 | resolution: 820 | integrity: sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q= 821 | /glob-parent/2.0.0: 822 | dependencies: 823 | is-glob: 2.0.1 824 | dev: false 825 | resolution: 826 | integrity: sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= 827 | /globals/9.18.0: 828 | dev: false 829 | engines: 830 | node: '>=0.10.0' 831 | resolution: 832 | integrity: sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== 833 | /graceful-fs/4.2.0: 834 | dev: false 835 | resolution: 836 | integrity: sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg== 837 | /has-ansi/2.0.0: 838 | dependencies: 839 | ansi-regex: 2.1.1 840 | dev: false 841 | engines: 842 | node: '>=0.10.0' 843 | resolution: 844 | integrity: sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= 845 | /hosted-git-info/2.7.1: 846 | dev: false 847 | resolution: 848 | integrity: sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w== 849 | /invariant/2.2.4: 850 | dependencies: 851 | loose-envify: 1.4.0 852 | dev: false 853 | resolution: 854 | integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== 855 | /is-arrayish/0.2.1: 856 | dev: false 857 | resolution: 858 | integrity: sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= 859 | /is-buffer/1.1.6: 860 | dev: false 861 | resolution: 862 | integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== 863 | /is-dotfile/1.0.3: 864 | dev: false 865 | engines: 866 | node: '>=0.10.0' 867 | resolution: 868 | integrity: sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE= 869 | /is-equal-shallow/0.1.3: 870 | dependencies: 871 | is-primitive: 2.0.0 872 | dev: false 873 | engines: 874 | node: '>=0.10.0' 875 | resolution: 876 | integrity: sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ= 877 | /is-extendable/0.1.1: 878 | dev: false 879 | engines: 880 | node: '>=0.10.0' 881 | resolution: 882 | integrity: sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= 883 | /is-extglob/1.0.0: 884 | dev: false 885 | engines: 886 | node: '>=0.10.0' 887 | resolution: 888 | integrity: sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= 889 | /is-finite/1.0.2: 890 | dependencies: 891 | number-is-nan: 1.0.1 892 | dev: false 893 | engines: 894 | node: '>=0.10.0' 895 | resolution: 896 | integrity: sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= 897 | /is-glob/2.0.1: 898 | dependencies: 899 | is-extglob: 1.0.0 900 | dev: false 901 | engines: 902 | node: '>=0.10.0' 903 | resolution: 904 | integrity: sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= 905 | /is-number/2.1.0: 906 | dependencies: 907 | kind-of: 3.2.2 908 | dev: false 909 | engines: 910 | node: '>=0.10.0' 911 | resolution: 912 | integrity: sha1-Afy7s5NGOlSPL0ZszhbezknbkI8= 913 | /is-number/4.0.0: 914 | dev: false 915 | engines: 916 | node: '>=0.10.0' 917 | resolution: 918 | integrity: sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== 919 | /is-posix-bracket/0.1.1: 920 | dev: false 921 | engines: 922 | node: '>=0.10.0' 923 | resolution: 924 | integrity: sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q= 925 | /is-primitive/2.0.0: 926 | dev: false 927 | engines: 928 | node: '>=0.10.0' 929 | resolution: 930 | integrity: sha1-IHurkWOEmcB7Kt8kCkGochADRXU= 931 | /is-utf8/0.2.1: 932 | dev: false 933 | resolution: 934 | integrity: sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= 935 | /isarray/1.0.0: 936 | dev: false 937 | resolution: 938 | integrity: sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= 939 | /isobject/2.1.0: 940 | dependencies: 941 | isarray: 1.0.0 942 | dev: false 943 | engines: 944 | node: '>=0.10.0' 945 | resolution: 946 | integrity: sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= 947 | /istanbul-lib-coverage/1.2.1: 948 | dev: false 949 | resolution: 950 | integrity: sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ== 951 | /istanbul-lib-instrument/1.10.2: 952 | dependencies: 953 | babel-generator: 6.26.1 954 | babel-template: 6.26.0 955 | babel-traverse: 6.26.0 956 | babel-types: 6.26.0 957 | babylon: 6.18.0 958 | istanbul-lib-coverage: 1.2.1 959 | semver: 5.7.0 960 | dev: false 961 | resolution: 962 | integrity: sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A== 963 | /js-tokens/3.0.2: 964 | dev: false 965 | resolution: 966 | integrity: sha1-mGbfOVECEw449/mWvOtlRDIJwls= 967 | /js-tokens/4.0.0: 968 | dev: false 969 | resolution: 970 | integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 971 | /jsesc/0.5.0: 972 | dev: false 973 | hasBin: true 974 | resolution: 975 | integrity: sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= 976 | /jsesc/1.3.0: 977 | dev: false 978 | hasBin: true 979 | resolution: 980 | integrity: sha1-RsP+yMGJKxKwgz25vHYiF226s0s= 981 | /json5/1.0.1: 982 | dependencies: 983 | minimist: 1.2.0 984 | dev: false 985 | hasBin: true 986 | resolution: 987 | integrity: sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== 988 | /kind-of/3.2.2: 989 | dependencies: 990 | is-buffer: 1.1.6 991 | dev: false 992 | engines: 993 | node: '>=0.10.0' 994 | resolution: 995 | integrity: sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= 996 | /kind-of/6.0.2: 997 | dev: false 998 | engines: 999 | node: '>=0.10.0' 1000 | resolution: 1001 | integrity: sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== 1002 | /load-json-file/1.1.0: 1003 | dependencies: 1004 | graceful-fs: 4.2.0 1005 | parse-json: 2.2.0 1006 | pify: 2.3.0 1007 | pinkie-promise: 2.0.1 1008 | strip-bom: 2.0.0 1009 | dev: false 1010 | engines: 1011 | node: '>=0.10.0' 1012 | resolution: 1013 | integrity: sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= 1014 | /loader-utils/1.2.3: 1015 | dependencies: 1016 | big.js: 5.2.2 1017 | emojis-list: 2.1.0 1018 | json5: 1.0.1 1019 | dev: false 1020 | engines: 1021 | node: '>=4.0.0' 1022 | resolution: 1023 | integrity: sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA== 1024 | /locate-path/2.0.0: 1025 | dependencies: 1026 | p-locate: 2.0.0 1027 | path-exists: 3.0.0 1028 | dev: false 1029 | engines: 1030 | node: '>=4' 1031 | resolution: 1032 | integrity: sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= 1033 | /lodash/4.17.11: 1034 | dev: false 1035 | resolution: 1036 | integrity: sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== 1037 | /loose-envify/1.4.0: 1038 | dependencies: 1039 | js-tokens: 4.0.0 1040 | dev: false 1041 | hasBin: true 1042 | resolution: 1043 | integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== 1044 | /make-dir/1.3.0: 1045 | dependencies: 1046 | pify: 3.0.0 1047 | dev: false 1048 | engines: 1049 | node: '>=4' 1050 | resolution: 1051 | integrity: sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== 1052 | /math-random/1.0.4: 1053 | dev: false 1054 | resolution: 1055 | integrity: sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A== 1056 | /micromatch/2.3.11: 1057 | dependencies: 1058 | arr-diff: 2.0.0 1059 | array-unique: 0.2.1 1060 | braces: 1.8.5 1061 | expand-brackets: 0.1.5 1062 | extglob: 0.3.2 1063 | filename-regex: 2.0.1 1064 | is-extglob: 1.0.0 1065 | is-glob: 2.0.1 1066 | kind-of: 3.2.2 1067 | normalize-path: 2.1.1 1068 | object.omit: 2.0.1 1069 | parse-glob: 3.0.4 1070 | regex-cache: 0.4.4 1071 | dev: false 1072 | engines: 1073 | node: '>=0.10.0' 1074 | resolution: 1075 | integrity: sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU= 1076 | /minimist/0.0.8: 1077 | dev: false 1078 | resolution: 1079 | integrity: sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= 1080 | /minimist/1.2.0: 1081 | dev: false 1082 | resolution: 1083 | integrity: sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= 1084 | /mkdirp/0.5.1: 1085 | dependencies: 1086 | minimist: 0.0.8 1087 | dev: false 1088 | hasBin: true 1089 | resolution: 1090 | integrity: sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= 1091 | /ms/2.0.0: 1092 | dev: false 1093 | resolution: 1094 | integrity: sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 1095 | /normalize-package-data/2.5.0: 1096 | dependencies: 1097 | hosted-git-info: 2.7.1 1098 | resolve: 1.11.1 1099 | semver: 5.7.0 1100 | validate-npm-package-license: 3.0.4 1101 | dev: false 1102 | resolution: 1103 | integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== 1104 | /normalize-path/2.1.1: 1105 | dependencies: 1106 | remove-trailing-separator: 1.1.0 1107 | dev: false 1108 | engines: 1109 | node: '>=0.10.0' 1110 | resolution: 1111 | integrity: sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= 1112 | /number-is-nan/1.0.1: 1113 | dev: false 1114 | engines: 1115 | node: '>=0.10.0' 1116 | resolution: 1117 | integrity: sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= 1118 | /object-assign/4.1.1: 1119 | dev: false 1120 | engines: 1121 | node: '>=0.10.0' 1122 | resolution: 1123 | integrity: sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 1124 | /object.omit/2.0.1: 1125 | dependencies: 1126 | for-own: 0.1.5 1127 | is-extendable: 0.1.1 1128 | dev: false 1129 | engines: 1130 | node: '>=0.10.0' 1131 | resolution: 1132 | integrity: sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo= 1133 | /p-limit/1.3.0: 1134 | dependencies: 1135 | p-try: 1.0.0 1136 | dev: false 1137 | engines: 1138 | node: '>=4' 1139 | resolution: 1140 | integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== 1141 | /p-locate/2.0.0: 1142 | dependencies: 1143 | p-limit: 1.3.0 1144 | dev: false 1145 | engines: 1146 | node: '>=4' 1147 | resolution: 1148 | integrity: sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= 1149 | /p-try/1.0.0: 1150 | dev: false 1151 | engines: 1152 | node: '>=4' 1153 | resolution: 1154 | integrity: sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= 1155 | /parse-glob/3.0.4: 1156 | dependencies: 1157 | glob-base: 0.3.0 1158 | is-dotfile: 1.0.3 1159 | is-extglob: 1.0.0 1160 | is-glob: 2.0.1 1161 | dev: false 1162 | engines: 1163 | node: '>=0.10.0' 1164 | resolution: 1165 | integrity: sha1-ssN2z7EfNVE7rdFz7wu246OIORw= 1166 | /parse-json/2.2.0: 1167 | dependencies: 1168 | error-ex: 1.3.2 1169 | dev: false 1170 | engines: 1171 | node: '>=0.10.0' 1172 | resolution: 1173 | integrity: sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= 1174 | /path-exists/2.1.0: 1175 | dependencies: 1176 | pinkie-promise: 2.0.1 1177 | dev: false 1178 | engines: 1179 | node: '>=0.10.0' 1180 | resolution: 1181 | integrity: sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= 1182 | /path-exists/3.0.0: 1183 | dev: false 1184 | engines: 1185 | node: '>=4' 1186 | resolution: 1187 | integrity: sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= 1188 | /path-parse/1.0.6: 1189 | dev: false 1190 | resolution: 1191 | integrity: sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== 1192 | /path-type/1.1.0: 1193 | dependencies: 1194 | graceful-fs: 4.2.0 1195 | pify: 2.3.0 1196 | pinkie-promise: 2.0.1 1197 | dev: false 1198 | engines: 1199 | node: '>=0.10.0' 1200 | resolution: 1201 | integrity: sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= 1202 | /pify/2.3.0: 1203 | dev: false 1204 | engines: 1205 | node: '>=0.10.0' 1206 | resolution: 1207 | integrity: sha1-7RQaasBDqEnqWISY59yosVMw6Qw= 1208 | /pify/3.0.0: 1209 | dev: false 1210 | engines: 1211 | node: '>=4' 1212 | resolution: 1213 | integrity: sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= 1214 | /pinkie-promise/2.0.1: 1215 | dependencies: 1216 | pinkie: 2.0.4 1217 | dev: false 1218 | engines: 1219 | node: '>=0.10.0' 1220 | resolution: 1221 | integrity: sha1-ITXW36ejWMBprJsXh3YogihFD/o= 1222 | /pinkie/2.0.4: 1223 | dev: false 1224 | engines: 1225 | node: '>=0.10.0' 1226 | resolution: 1227 | integrity: sha1-clVrgM+g1IqXToDnckjoDtT3+HA= 1228 | /pkg-dir/2.0.0: 1229 | dependencies: 1230 | find-up: 2.1.0 1231 | dev: false 1232 | engines: 1233 | node: '>=4' 1234 | resolution: 1235 | integrity: sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= 1236 | /preserve/0.2.0: 1237 | dev: false 1238 | engines: 1239 | node: '>=0.10.0' 1240 | resolution: 1241 | integrity: sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= 1242 | /private/0.1.8: 1243 | dev: false 1244 | engines: 1245 | node: '>= 0.6' 1246 | resolution: 1247 | integrity: sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== 1248 | /randomatic/3.1.1: 1249 | dependencies: 1250 | is-number: 4.0.0 1251 | kind-of: 6.0.2 1252 | math-random: 1.0.4 1253 | dev: false 1254 | engines: 1255 | node: '>= 0.10.0' 1256 | resolution: 1257 | integrity: sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw== 1258 | /read-pkg-up/1.0.1: 1259 | dependencies: 1260 | find-up: 1.1.2 1261 | read-pkg: 1.1.0 1262 | dev: false 1263 | engines: 1264 | node: '>=0.10.0' 1265 | resolution: 1266 | integrity: sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= 1267 | /read-pkg/1.1.0: 1268 | dependencies: 1269 | load-json-file: 1.1.0 1270 | normalize-package-data: 2.5.0 1271 | path-type: 1.1.0 1272 | dev: false 1273 | engines: 1274 | node: '>=0.10.0' 1275 | resolution: 1276 | integrity: sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= 1277 | /regenerate/1.4.0: 1278 | dev: false 1279 | resolution: 1280 | integrity: sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== 1281 | /regenerator-runtime/0.11.1: 1282 | dev: false 1283 | resolution: 1284 | integrity: sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== 1285 | /regenerator-transform/0.10.1: 1286 | dependencies: 1287 | babel-runtime: 6.26.0 1288 | babel-types: 6.26.0 1289 | private: 0.1.8 1290 | dev: false 1291 | resolution: 1292 | integrity: sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q== 1293 | /regex-cache/0.4.4: 1294 | dependencies: 1295 | is-equal-shallow: 0.1.3 1296 | dev: false 1297 | engines: 1298 | node: '>=0.10.0' 1299 | resolution: 1300 | integrity: sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ== 1301 | /regexpu-core/2.0.0: 1302 | dependencies: 1303 | regenerate: 1.4.0 1304 | regjsgen: 0.2.0 1305 | regjsparser: 0.1.5 1306 | dev: false 1307 | resolution: 1308 | integrity: sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA= 1309 | /regjsgen/0.2.0: 1310 | dev: false 1311 | resolution: 1312 | integrity: sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= 1313 | /regjsparser/0.1.5: 1314 | dependencies: 1315 | jsesc: 0.5.0 1316 | dev: false 1317 | hasBin: true 1318 | resolution: 1319 | integrity: sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= 1320 | /remove-trailing-separator/1.1.0: 1321 | dev: false 1322 | resolution: 1323 | integrity: sha1-wkvOKig62tW8P1jg1IJJuSN52O8= 1324 | /repeat-element/1.1.3: 1325 | dev: false 1326 | engines: 1327 | node: '>=0.10.0' 1328 | resolution: 1329 | integrity: sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== 1330 | /repeat-string/1.6.1: 1331 | dev: false 1332 | engines: 1333 | node: '>=0.10' 1334 | resolution: 1335 | integrity: sha1-jcrkcOHIirwtYA//Sndihtp15jc= 1336 | /repeating/2.0.1: 1337 | dependencies: 1338 | is-finite: 1.0.2 1339 | dev: false 1340 | engines: 1341 | node: '>=0.10.0' 1342 | resolution: 1343 | integrity: sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= 1344 | /require-main-filename/1.0.1: 1345 | dev: false 1346 | resolution: 1347 | integrity: sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= 1348 | /resolve/1.11.1: 1349 | dependencies: 1350 | path-parse: 1.0.6 1351 | dev: false 1352 | resolution: 1353 | integrity: sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw== 1354 | /semver/5.7.0: 1355 | dev: false 1356 | hasBin: true 1357 | resolution: 1358 | integrity: sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== 1359 | /source-map/0.5.7: 1360 | dev: false 1361 | engines: 1362 | node: '>=0.10.0' 1363 | resolution: 1364 | integrity: sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= 1365 | /spdx-correct/3.1.0: 1366 | dependencies: 1367 | spdx-expression-parse: 3.0.0 1368 | spdx-license-ids: 3.0.4 1369 | dev: false 1370 | resolution: 1371 | integrity: sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== 1372 | /spdx-exceptions/2.2.0: 1373 | dev: false 1374 | resolution: 1375 | integrity: sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== 1376 | /spdx-expression-parse/3.0.0: 1377 | dependencies: 1378 | spdx-exceptions: 2.2.0 1379 | spdx-license-ids: 3.0.4 1380 | dev: false 1381 | resolution: 1382 | integrity: sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== 1383 | /spdx-license-ids/3.0.4: 1384 | dev: false 1385 | resolution: 1386 | integrity: sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA== 1387 | /strip-ansi/3.0.1: 1388 | dependencies: 1389 | ansi-regex: 2.1.1 1390 | dev: false 1391 | engines: 1392 | node: '>=0.10.0' 1393 | resolution: 1394 | integrity: sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= 1395 | /strip-bom/2.0.0: 1396 | dependencies: 1397 | is-utf8: 0.2.1 1398 | dev: false 1399 | engines: 1400 | node: '>=0.10.0' 1401 | resolution: 1402 | integrity: sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= 1403 | /supports-color/2.0.0: 1404 | dev: false 1405 | engines: 1406 | node: '>=0.8.0' 1407 | resolution: 1408 | integrity: sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= 1409 | /test-exclude/4.2.3: 1410 | dependencies: 1411 | arrify: 1.0.1 1412 | micromatch: 2.3.11 1413 | object-assign: 4.1.1 1414 | read-pkg-up: 1.0.1 1415 | require-main-filename: 1.0.1 1416 | dev: false 1417 | resolution: 1418 | integrity: sha512-SYbXgY64PT+4GAL2ocI3HwPa4Q4TBKm0cwAVeKOt/Aoc0gSpNRjJX8w0pA1LMKZ3LBmd8pYBqApFNQLII9kavA== 1419 | /to-fast-properties/1.0.3: 1420 | dev: false 1421 | engines: 1422 | node: '>=0.10.0' 1423 | resolution: 1424 | integrity: sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= 1425 | /trim-right/1.0.1: 1426 | dev: false 1427 | engines: 1428 | node: '>=0.10.0' 1429 | resolution: 1430 | integrity: sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= 1431 | /validate-npm-package-license/3.0.4: 1432 | dependencies: 1433 | spdx-correct: 3.1.0 1434 | spdx-expression-parse: 3.0.0 1435 | dev: false 1436 | resolution: 1437 | integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== 1438 | specifiers: 1439 | babel-jest: ^22.1.0 1440 | babel-loader: ^7.1.2 1441 | babel-preset-react-app: ^3.1.1 1442 | -------------------------------------------------------------------------------- /tests/lolcatjs/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../. { inherit pkgs; }); 4 | let 5 | package = mkPnpmPackage { 6 | 7 | src = fetchFromGitHub { 8 | owner = "robertboloc"; 9 | repo = "lolcatjs"; 10 | rev = "a0baef18de64de2a794e1726fed89ad6b581aeec"; 11 | sha256 = "1s922sy2irzjwj8xswanqd6q6dnwaxy252npq4h13yvx7dirgm31"; 12 | }; 13 | 14 | packageJSON = ./package.json; 15 | pnpmLock = ./pnpm-lock.yaml; 16 | }; 17 | 18 | in package 19 | -------------------------------------------------------------------------------- /tests/lolcatjs/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "lolcatjs", 3 | "version": "2.3.1", 4 | "description": "The rainbow I tastes it", 5 | "main": "index.js", 6 | "bin": { 7 | "lolcatjs": "cli.js" 8 | }, 9 | "files": [ 10 | "index.js", 11 | "cli.js" 12 | ], 13 | "bugs": { 14 | "url": "https://github.com/robertboloc/lolcatjs/issues" 15 | }, 16 | "scripts": { 17 | "test": "echo \"Error: no test specified\" && exit 1" 18 | }, 19 | "repository": "robertboloc/lolcatjs", 20 | "keywords": [ 21 | "lolcat", 22 | "lol", 23 | "cat", 24 | "rainbow" 25 | ], 26 | "author": { 27 | "name": "Robert Boloc", 28 | "email": "robertboloc@gmail.com", 29 | "url": "http://robertboloc.eu" 30 | }, 31 | "license": "WTFPL", 32 | "dependencies": { 33 | "ansi": "^0.3.0", 34 | "chalk": "^2.1.0", 35 | "line-by-line": "^0.1.3", 36 | "minimist": "^1.1.1", 37 | "multiline": "^1.0.2", 38 | "supports-color": "^5.0.0" 39 | }, 40 | "optionalDependencies": { 41 | "sleep": "^5.0.0" 42 | }, 43 | "engines": { 44 | "node": "^6.9" 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /tests/lolcatjs/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | ansi: 0.3.1 3 | chalk: 2.4.2 4 | line-by-line: 0.1.6 5 | minimist: 1.2.0 6 | multiline: 1.0.2 7 | supports-color: 5.5.0 8 | lockfileVersion: 5 9 | optionalDependencies: 10 | sleep: 5.2.4 11 | packages: 12 | /ansi-styles/3.2.1: 13 | dependencies: 14 | color-convert: 1.9.3 15 | dev: false 16 | engines: 17 | node: '>=4' 18 | resolution: 19 | integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 20 | /ansi/0.3.1: 21 | dev: false 22 | resolution: 23 | integrity: sha1-DELU+xcWDVqa8eSEus4cZpIsGyE= 24 | /chalk/2.4.2: 25 | dependencies: 26 | ansi-styles: 3.2.1 27 | escape-string-regexp: 1.0.5 28 | supports-color: 5.5.0 29 | dev: false 30 | engines: 31 | node: '>=4' 32 | resolution: 33 | integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 34 | /color-convert/1.9.3: 35 | dependencies: 36 | color-name: 1.1.3 37 | dev: false 38 | resolution: 39 | integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 40 | /color-name/1.1.3: 41 | dev: false 42 | resolution: 43 | integrity: sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 44 | /escape-string-regexp/1.0.5: 45 | dev: false 46 | engines: 47 | node: '>=0.8.0' 48 | resolution: 49 | integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 50 | /get-stdin/4.0.1: 51 | dev: false 52 | engines: 53 | node: '>=0.10.0' 54 | resolution: 55 | integrity: sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= 56 | /has-flag/3.0.0: 57 | dev: false 58 | engines: 59 | node: '>=4' 60 | resolution: 61 | integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 62 | /line-by-line/0.1.6: 63 | dev: false 64 | engines: 65 | node: '>=4.0.0' 66 | resolution: 67 | integrity: sha512-MmwVPfOyp0lWnEZ3fBA8Ah4pMFvxO6WgWovqZNu7Y4J0TNnGcsV4S1LzECHbdgqk1hoHc2mFP1Axc37YUqwafg== 68 | /minimist/1.2.0: 69 | dev: false 70 | resolution: 71 | integrity: sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= 72 | /multiline/1.0.2: 73 | dependencies: 74 | strip-indent: 1.0.1 75 | dev: false 76 | engines: 77 | node: '>=0.10.0' 78 | resolution: 79 | integrity: sha1-abHyX/B00oKJBPJE3dBrfZbvbJM= 80 | /nan/2.14.0: 81 | dev: false 82 | optional: true 83 | resolution: 84 | integrity: sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== 85 | /sleep/5.2.4: 86 | dependencies: 87 | nan: 2.14.0 88 | dev: false 89 | engines: 90 | node: '>=0.8.0' 91 | optional: true 92 | requiresBuild: true 93 | resolution: 94 | integrity: sha512-SoltvxayTifWOgOGD6CTh+djcp5TaOa/zdbaA38wEH1ahF2azmiLOh8CPt6ExHf0pAJAsA9OCHTS7zK24Ym4yA== 95 | /strip-indent/1.0.1: 96 | dependencies: 97 | get-stdin: 4.0.1 98 | dev: false 99 | engines: 100 | node: '>=0.10.0' 101 | hasBin: true 102 | resolution: 103 | integrity: sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI= 104 | /supports-color/5.5.0: 105 | dependencies: 106 | has-flag: 3.0.0 107 | dev: false 108 | engines: 109 | node: '>=4' 110 | resolution: 111 | integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 112 | specifiers: 113 | ansi: ^0.3.0 114 | chalk: ^2.1.0 115 | line-by-line: ^0.1.3 116 | minimist: ^1.1.1 117 | multiline: ^1.0.2 118 | sleep: ^5.0.0 119 | supports-color: ^5.0.0 120 | -------------------------------------------------------------------------------- /tests/nested-dirs/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../. { inherit pkgs; }); 4 | 5 | mkPnpmPackage { 6 | src = ./.; 7 | packageJSON = ./package.json; 8 | pnpmLock = ./pnpm-lock.yaml; 9 | } 10 | -------------------------------------------------------------------------------- /tests/nested-dirs/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nested-dirs", 3 | "version": "1.0.0", 4 | "dependencies": { 5 | "@types/node": "^9.4.6" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /tests/nested-dirs/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | '@types/node': 9.6.49 3 | lockfileVersion: 5 4 | packages: 5 | /@types/node/9.6.49: 6 | dev: false 7 | resolution: 8 | integrity: sha512-YY0Okyn4QXC4ugJI+Kng5iWjK8A6eIHiQVaGIhJkyn0YL6Iqo0E0tBC8BuhvYcBK87vykBijM5FtMnCqaa5anA== 9 | specifiers: 10 | '@types/node': ^9.4.6 11 | -------------------------------------------------------------------------------- /tests/recursive-link/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /tests/recursive-link/.npmrc: -------------------------------------------------------------------------------- 1 | link-workspace-packages = true -------------------------------------------------------------------------------- /tests/recursive-link/packages/a/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../../../. { inherit pkgs; }); 4 | 5 | mkPnpmPackage { 6 | src = ./.; 7 | packageJSON = ./package.json; 8 | pnpmLock = ../../pnpm-lock.yaml; 9 | } 10 | -------------------------------------------------------------------------------- /tests/recursive-link/packages/a/index.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | const b = require("b"); 3 | const c = require("c"); 4 | 5 | if (b !== "b" && c !== "c") { 6 | process.exit(1); 7 | } 8 | 9 | process.exit(0); 10 | -------------------------------------------------------------------------------- /tests/recursive-link/packages/a/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "a", 3 | "version": "1.0.0", 4 | "main": "index.js", 5 | "license": "ISC", 6 | "bin": { 7 | "test-recursive-link": "index.js" 8 | }, 9 | "dependencies": { 10 | "b": "1.0.0", 11 | "c": "1.0.0" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /tests/recursive-link/packages/b/index.js: -------------------------------------------------------------------------------- 1 | const c = require("c"); 2 | 3 | module.exports = "b"; 4 | -------------------------------------------------------------------------------- /tests/recursive-link/packages/b/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "b", 3 | "version": "1.0.0", 4 | "main": "index.js", 5 | "license": "ISC", 6 | "dependencies": { 7 | "c": "1.0.0" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /tests/recursive-link/packages/b/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5 2 | -------------------------------------------------------------------------------- /tests/recursive-link/packages/c/index.js: -------------------------------------------------------------------------------- 1 | module.exports = "c"; 2 | -------------------------------------------------------------------------------- /tests/recursive-link/packages/c/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "c", 3 | "version": "1.0.0", 4 | "main": "index.js", 5 | "license": "ISC" 6 | } 7 | -------------------------------------------------------------------------------- /tests/recursive-link/packages/c/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5 2 | -------------------------------------------------------------------------------- /tests/recursive-link/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | importers: 2 | packages/a: 3 | dependencies: 4 | b: 'link:../b' 5 | c: 'link:../c' 6 | specifiers: 7 | b: 1.0.0 8 | c: 1.0.0 9 | packages/b: 10 | dependencies: 11 | c: 'link:../c' 12 | specifiers: 13 | c: 1.0.0 14 | packages/c: 15 | specifiers: {} 16 | lockfileVersion: 5 17 | -------------------------------------------------------------------------------- /tests/recursive-link/pnpm-workspace.yaml: -------------------------------------------------------------------------------- 1 | packages: 2 | - '**' 3 | -------------------------------------------------------------------------------- /tests/test-circular/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../. { inherit pkgs; }); 4 | let 5 | package = mkPnpmPackage { 6 | 7 | src = lib.cleanSource ./.; 8 | packageJSON = ./package.json; 9 | pnpmLock = ./pnpm-lock.yaml; 10 | }; 11 | 12 | in package 13 | -------------------------------------------------------------------------------- /tests/test-circular/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test-circular", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "bin": { 7 | "test-circular": "test-circular.js" 8 | }, 9 | "scripts": { 10 | "test": "echo \"Error: no test specified\" && exit 1" 11 | }, 12 | "author": "", 13 | "license": "ISC", 14 | "dependencies": { 15 | "babel-core": "^6.26.3" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /tests/test-circular/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | babel-core: 6.26.3 3 | lockfileVersion: 5 4 | packages: 5 | /ansi-regex/2.1.1: 6 | dev: false 7 | engines: 8 | node: '>=0.10.0' 9 | resolution: 10 | integrity: sha1-w7M6te42DYbg5ijwRorn7yfWVN8= 11 | /ansi-styles/2.2.1: 12 | dev: false 13 | engines: 14 | node: '>=0.10.0' 15 | resolution: 16 | integrity: sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= 17 | /babel-code-frame/6.26.0: 18 | dependencies: 19 | chalk: 1.1.3 20 | esutils: 2.0.2 21 | js-tokens: 3.0.2 22 | dev: false 23 | resolution: 24 | integrity: sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= 25 | /babel-core/6.26.3: 26 | dependencies: 27 | babel-code-frame: 6.26.0 28 | babel-generator: 6.26.1 29 | babel-helpers: 6.24.1 30 | babel-messages: 6.23.0 31 | babel-register: 6.26.0 32 | babel-runtime: 6.26.0 33 | babel-template: 6.26.0 34 | babel-traverse: 6.26.0 35 | babel-types: 6.26.0 36 | babylon: 6.18.0 37 | convert-source-map: 1.6.0 38 | debug: 2.6.9 39 | json5: 0.5.1 40 | lodash: 4.17.11 41 | minimatch: 3.0.4 42 | path-is-absolute: 1.0.1 43 | private: 0.1.8 44 | slash: 1.0.0 45 | source-map: 0.5.7 46 | dev: false 47 | resolution: 48 | integrity: sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA== 49 | /babel-generator/6.26.1: 50 | dependencies: 51 | babel-messages: 6.23.0 52 | babel-runtime: 6.26.0 53 | babel-types: 6.26.0 54 | detect-indent: 4.0.0 55 | jsesc: 1.3.0 56 | lodash: 4.17.11 57 | source-map: 0.5.7 58 | trim-right: 1.0.1 59 | dev: false 60 | resolution: 61 | integrity: sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA== 62 | /babel-helpers/6.24.1: 63 | dependencies: 64 | babel-runtime: 6.26.0 65 | babel-template: 6.26.0 66 | dev: false 67 | resolution: 68 | integrity: sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI= 69 | /babel-messages/6.23.0: 70 | dependencies: 71 | babel-runtime: 6.26.0 72 | dev: false 73 | resolution: 74 | integrity: sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= 75 | /babel-register/6.26.0: 76 | dependencies: 77 | babel-core: 6.26.3 78 | babel-runtime: 6.26.0 79 | core-js: 2.6.9 80 | home-or-tmp: 2.0.0 81 | lodash: 4.17.11 82 | mkdirp: 0.5.1 83 | source-map-support: 0.4.18 84 | dev: false 85 | resolution: 86 | integrity: sha1-btAhFz4vy0htestFxgCahW9kcHE= 87 | /babel-runtime/6.26.0: 88 | dependencies: 89 | core-js: 2.6.9 90 | regenerator-runtime: 0.11.1 91 | dev: false 92 | resolution: 93 | integrity: sha1-llxwWGaOgrVde/4E/yM3vItWR/4= 94 | /babel-template/6.26.0: 95 | dependencies: 96 | babel-runtime: 6.26.0 97 | babel-traverse: 6.26.0 98 | babel-types: 6.26.0 99 | babylon: 6.18.0 100 | lodash: 4.17.11 101 | dev: false 102 | resolution: 103 | integrity: sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= 104 | /babel-traverse/6.26.0: 105 | dependencies: 106 | babel-code-frame: 6.26.0 107 | babel-messages: 6.23.0 108 | babel-runtime: 6.26.0 109 | babel-types: 6.26.0 110 | babylon: 6.18.0 111 | debug: 2.6.9 112 | globals: 9.18.0 113 | invariant: 2.2.4 114 | lodash: 4.17.11 115 | dev: false 116 | resolution: 117 | integrity: sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= 118 | /babel-types/6.26.0: 119 | dependencies: 120 | babel-runtime: 6.26.0 121 | esutils: 2.0.2 122 | lodash: 4.17.11 123 | to-fast-properties: 1.0.3 124 | dev: false 125 | resolution: 126 | integrity: sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= 127 | /babylon/6.18.0: 128 | dev: false 129 | hasBin: true 130 | resolution: 131 | integrity: sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== 132 | /balanced-match/1.0.0: 133 | dev: false 134 | resolution: 135 | integrity: sha1-ibTRmasr7kneFk6gK4nORi1xt2c= 136 | /brace-expansion/1.1.11: 137 | dependencies: 138 | balanced-match: 1.0.0 139 | concat-map: 0.0.1 140 | dev: false 141 | resolution: 142 | integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 143 | /chalk/1.1.3: 144 | dependencies: 145 | ansi-styles: 2.2.1 146 | escape-string-regexp: 1.0.5 147 | has-ansi: 2.0.0 148 | strip-ansi: 3.0.1 149 | supports-color: 2.0.0 150 | dev: false 151 | engines: 152 | node: '>=0.10.0' 153 | resolution: 154 | integrity: sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= 155 | /concat-map/0.0.1: 156 | dev: false 157 | resolution: 158 | integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 159 | /convert-source-map/1.6.0: 160 | dependencies: 161 | safe-buffer: 5.1.2 162 | dev: false 163 | resolution: 164 | integrity: sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== 165 | /core-js/2.6.9: 166 | dev: false 167 | requiresBuild: true 168 | resolution: 169 | integrity: sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A== 170 | /debug/2.6.9: 171 | dependencies: 172 | ms: 2.0.0 173 | dev: false 174 | resolution: 175 | integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== 176 | /detect-indent/4.0.0: 177 | dependencies: 178 | repeating: 2.0.1 179 | dev: false 180 | engines: 181 | node: '>=0.10.0' 182 | resolution: 183 | integrity: sha1-920GQ1LN9Docts5hnE7jqUdd4gg= 184 | /escape-string-regexp/1.0.5: 185 | dev: false 186 | engines: 187 | node: '>=0.8.0' 188 | resolution: 189 | integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 190 | /esutils/2.0.2: 191 | dev: false 192 | engines: 193 | node: '>=0.10.0' 194 | resolution: 195 | integrity: sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= 196 | /globals/9.18.0: 197 | dev: false 198 | engines: 199 | node: '>=0.10.0' 200 | resolution: 201 | integrity: sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== 202 | /has-ansi/2.0.0: 203 | dependencies: 204 | ansi-regex: 2.1.1 205 | dev: false 206 | engines: 207 | node: '>=0.10.0' 208 | resolution: 209 | integrity: sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= 210 | /home-or-tmp/2.0.0: 211 | dependencies: 212 | os-homedir: 1.0.2 213 | os-tmpdir: 1.0.2 214 | dev: false 215 | engines: 216 | node: '>=0.10.0' 217 | resolution: 218 | integrity: sha1-42w/LSyufXRqhX440Y1fMqeILbg= 219 | /invariant/2.2.4: 220 | dependencies: 221 | loose-envify: 1.4.0 222 | dev: false 223 | resolution: 224 | integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== 225 | /is-finite/1.0.2: 226 | dependencies: 227 | number-is-nan: 1.0.1 228 | dev: false 229 | engines: 230 | node: '>=0.10.0' 231 | resolution: 232 | integrity: sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= 233 | /js-tokens/3.0.2: 234 | dev: false 235 | resolution: 236 | integrity: sha1-mGbfOVECEw449/mWvOtlRDIJwls= 237 | /js-tokens/4.0.0: 238 | dev: false 239 | resolution: 240 | integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 241 | /jsesc/1.3.0: 242 | dev: false 243 | hasBin: true 244 | resolution: 245 | integrity: sha1-RsP+yMGJKxKwgz25vHYiF226s0s= 246 | /json5/0.5.1: 247 | dev: false 248 | hasBin: true 249 | resolution: 250 | integrity: sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= 251 | /lodash/4.17.11: 252 | dev: false 253 | resolution: 254 | integrity: sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== 255 | /loose-envify/1.4.0: 256 | dependencies: 257 | js-tokens: 4.0.0 258 | dev: false 259 | hasBin: true 260 | resolution: 261 | integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== 262 | /minimatch/3.0.4: 263 | dependencies: 264 | brace-expansion: 1.1.11 265 | dev: false 266 | resolution: 267 | integrity: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 268 | /minimist/0.0.8: 269 | dev: false 270 | resolution: 271 | integrity: sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= 272 | /mkdirp/0.5.1: 273 | dependencies: 274 | minimist: 0.0.8 275 | dev: false 276 | hasBin: true 277 | resolution: 278 | integrity: sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= 279 | /ms/2.0.0: 280 | dev: false 281 | resolution: 282 | integrity: sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 283 | /number-is-nan/1.0.1: 284 | dev: false 285 | engines: 286 | node: '>=0.10.0' 287 | resolution: 288 | integrity: sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= 289 | /os-homedir/1.0.2: 290 | dev: false 291 | engines: 292 | node: '>=0.10.0' 293 | resolution: 294 | integrity: sha1-/7xJiDNuDoM94MFox+8VISGqf7M= 295 | /os-tmpdir/1.0.2: 296 | dev: false 297 | engines: 298 | node: '>=0.10.0' 299 | resolution: 300 | integrity: sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= 301 | /path-is-absolute/1.0.1: 302 | dev: false 303 | engines: 304 | node: '>=0.10.0' 305 | resolution: 306 | integrity: sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 307 | /private/0.1.8: 308 | dev: false 309 | engines: 310 | node: '>= 0.6' 311 | resolution: 312 | integrity: sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== 313 | /regenerator-runtime/0.11.1: 314 | dev: false 315 | resolution: 316 | integrity: sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== 317 | /repeating/2.0.1: 318 | dependencies: 319 | is-finite: 1.0.2 320 | dev: false 321 | engines: 322 | node: '>=0.10.0' 323 | resolution: 324 | integrity: sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= 325 | /safe-buffer/5.1.2: 326 | dev: false 327 | resolution: 328 | integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 329 | /slash/1.0.0: 330 | dev: false 331 | engines: 332 | node: '>=0.10.0' 333 | resolution: 334 | integrity: sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= 335 | /source-map-support/0.4.18: 336 | dependencies: 337 | source-map: 0.5.7 338 | dev: false 339 | resolution: 340 | integrity: sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA== 341 | /source-map/0.5.7: 342 | dev: false 343 | engines: 344 | node: '>=0.10.0' 345 | resolution: 346 | integrity: sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= 347 | /strip-ansi/3.0.1: 348 | dependencies: 349 | ansi-regex: 2.1.1 350 | dev: false 351 | engines: 352 | node: '>=0.10.0' 353 | resolution: 354 | integrity: sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= 355 | /supports-color/2.0.0: 356 | dev: false 357 | engines: 358 | node: '>=0.8.0' 359 | resolution: 360 | integrity: sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= 361 | /to-fast-properties/1.0.3: 362 | dev: false 363 | engines: 364 | node: '>=0.10.0' 365 | resolution: 366 | integrity: sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= 367 | /trim-right/1.0.1: 368 | dev: false 369 | engines: 370 | node: '>=0.10.0' 371 | resolution: 372 | integrity: sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= 373 | specifiers: 374 | babel-core: ^6.26.3 375 | -------------------------------------------------------------------------------- /tests/test-circular/test-circular.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | require('babel-core') 3 | require('babel-core/register') 4 | -------------------------------------------------------------------------------- /tests/test-devdependencies/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../. { inherit pkgs; }); 4 | let 5 | package = mkPnpmPackage { 6 | 7 | doCheck = true; 8 | 9 | preCheck = '' 10 | mkdir -p build 11 | ''; 12 | 13 | postCheck = '' 14 | mkdir -p $out 15 | mv build $out/ 16 | ''; 17 | 18 | src = ./.; 19 | packageJSON = ./package.json; 20 | pnpmLock = ./pnpm-lock.yaml; 21 | }; 22 | 23 | in package 24 | -------------------------------------------------------------------------------- /tests/test-devdependencies/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test-devdependencies", 3 | "version": "0.1.0", 4 | "private": true, 5 | "scripts": { 6 | "pretest": "mkdir -p build && touch build/pretest", 7 | "test": "mocha --reporter min | grep '1 passing' && touch build/test", 8 | "posttest": "touch build/posttest" 9 | }, 10 | "devDependencies": { 11 | "mocha": "^5.0.4" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /tests/test-devdependencies/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | devDependencies: 2 | mocha: 5.2.0 3 | lockfileVersion: 5 4 | packages: 5 | /balanced-match/1.0.0: 6 | dev: true 7 | resolution: 8 | integrity: sha1-ibTRmasr7kneFk6gK4nORi1xt2c= 9 | /brace-expansion/1.1.11: 10 | dependencies: 11 | balanced-match: 1.0.0 12 | concat-map: 0.0.1 13 | dev: true 14 | resolution: 15 | integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 16 | /browser-stdout/1.3.1: 17 | dev: true 18 | resolution: 19 | integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== 20 | /commander/2.15.1: 21 | dev: true 22 | resolution: 23 | integrity: sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag== 24 | /concat-map/0.0.1: 25 | dev: true 26 | resolution: 27 | integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 28 | /debug/3.1.0: 29 | dependencies: 30 | ms: 2.0.0 31 | dev: true 32 | resolution: 33 | integrity: sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== 34 | /diff/3.5.0: 35 | dev: true 36 | engines: 37 | node: '>=0.3.1' 38 | resolution: 39 | integrity: sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== 40 | /escape-string-regexp/1.0.5: 41 | dev: true 42 | engines: 43 | node: '>=0.8.0' 44 | resolution: 45 | integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 46 | /fs.realpath/1.0.0: 47 | dev: true 48 | resolution: 49 | integrity: sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 50 | /glob/7.1.2: 51 | dependencies: 52 | fs.realpath: 1.0.0 53 | inflight: 1.0.6 54 | inherits: 2.0.4 55 | minimatch: 3.0.4 56 | once: 1.4.0 57 | path-is-absolute: 1.0.1 58 | dev: true 59 | resolution: 60 | integrity: sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ== 61 | /growl/1.10.5: 62 | dev: true 63 | engines: 64 | node: '>=4.x' 65 | resolution: 66 | integrity: sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== 67 | /has-flag/3.0.0: 68 | dev: true 69 | engines: 70 | node: '>=4' 71 | resolution: 72 | integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 73 | /he/1.1.1: 74 | dev: true 75 | hasBin: true 76 | resolution: 77 | integrity: sha1-k0EP0hsAlzUVH4howvJx80J+I/0= 78 | /inflight/1.0.6: 79 | dependencies: 80 | once: 1.4.0 81 | wrappy: 1.0.2 82 | dev: true 83 | resolution: 84 | integrity: sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 85 | /inherits/2.0.4: 86 | dev: true 87 | resolution: 88 | integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 89 | /minimatch/3.0.4: 90 | dependencies: 91 | brace-expansion: 1.1.11 92 | dev: true 93 | resolution: 94 | integrity: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 95 | /minimist/0.0.8: 96 | dev: true 97 | resolution: 98 | integrity: sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= 99 | /mkdirp/0.5.1: 100 | dependencies: 101 | minimist: 0.0.8 102 | dev: true 103 | hasBin: true 104 | resolution: 105 | integrity: sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= 106 | /mocha/5.2.0: 107 | dependencies: 108 | browser-stdout: 1.3.1 109 | commander: 2.15.1 110 | debug: 3.1.0 111 | diff: 3.5.0 112 | escape-string-regexp: 1.0.5 113 | glob: 7.1.2 114 | growl: 1.10.5 115 | he: 1.1.1 116 | minimatch: 3.0.4 117 | mkdirp: 0.5.1 118 | supports-color: 5.4.0 119 | dev: true 120 | engines: 121 | node: '>= 4.0.0' 122 | hasBin: true 123 | resolution: 124 | integrity: sha512-2IUgKDhc3J7Uug+FxMXuqIyYzH7gJjXECKe/w43IGgQHTSj3InJi+yAA7T24L9bQMRKiUEHxEX37G5JpVUGLcQ== 125 | /ms/2.0.0: 126 | dev: true 127 | resolution: 128 | integrity: sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 129 | /once/1.4.0: 130 | dependencies: 131 | wrappy: 1.0.2 132 | dev: true 133 | resolution: 134 | integrity: sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 135 | /path-is-absolute/1.0.1: 136 | dev: true 137 | engines: 138 | node: '>=0.10.0' 139 | resolution: 140 | integrity: sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 141 | /supports-color/5.4.0: 142 | dependencies: 143 | has-flag: 3.0.0 144 | dev: true 145 | engines: 146 | node: '>=4' 147 | resolution: 148 | integrity: sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w== 149 | /wrappy/1.0.2: 150 | dev: true 151 | resolution: 152 | integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 153 | specifiers: 154 | mocha: ^5.0.4 155 | -------------------------------------------------------------------------------- /tests/test-devdependencies/test.js: -------------------------------------------------------------------------------- 1 | describe('Dummy test to see if mocha works', () => { 2 | 3 | it('Does nothing :)', () => { 4 | 5 | }) 6 | 7 | }) 8 | -------------------------------------------------------------------------------- /tests/test-falsy-script/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../. { inherit pkgs; }); 4 | 5 | mkPnpmPackage { 6 | src = ./.; 7 | packageJSON = ./package.json; 8 | pnpmLock = ./pnpm-lock.yaml; 9 | } 10 | -------------------------------------------------------------------------------- /tests/test-falsy-script/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test-falsy-script", 3 | "version": "0.0.1", 4 | "description": "Something something...", 5 | "dependencies": { 6 | "async-lock": "^1.1.3" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /tests/test-falsy-script/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | async-lock: 1.2.0 3 | lockfileVersion: 5 4 | packages: 5 | /async-lock/1.2.0: 6 | dev: false 7 | resolution: 8 | integrity: sha512-81HzTQm4+qMj6PwNlnR+y9g7pDdGGzd/YBUrQnHk+BhR28ja2qv497NkQQc1KcKEqh/RShm07di2b0cIWVFrNQ== 9 | specifiers: 10 | async-lock: ^1.1.3 11 | -------------------------------------------------------------------------------- /tests/test-impure/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../. { inherit pkgs; }); 4 | 5 | mkPnpmPackage { 6 | src = ./.; 7 | allowImpure = true; 8 | packageJSON = ./package.json; 9 | pnpmLock = ./pnpm-lock.yaml; 10 | } 11 | -------------------------------------------------------------------------------- /tests/test-impure/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test-impure", 3 | "version": "1.0.0", 4 | "bin": { 5 | "testapn": "test.js" 6 | }, 7 | "dependencies": { 8 | "apn": "^2.2.0" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /tests/test-impure/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | apn: 2.2.0 3 | lockfileVersion: 5 4 | packages: 5 | /apn/2.2.0: 6 | dependencies: 7 | debug: 3.2.6 8 | http2: github.com/node-apn/node-http2/archive/apn-2.1.4.tar.gz 9 | jsonwebtoken: 8.5.1 10 | node-forge: 0.7.6 11 | verror: 1.10.0 12 | dev: false 13 | engines: 14 | node: '>= 4.6.0' 15 | resolution: 16 | integrity: sha512-YIypYzPVJA9wzNBLKZ/mq2l1IZX/2FadPvwmSv4ZeR0VH7xdNITQ6Pucgh0Uw6ZZKC+XwheaJ57DFZAhJ0FvPg== 17 | /assert-plus/1.0.0: 18 | dev: false 19 | engines: 20 | node: '>=0.8' 21 | resolution: 22 | integrity: sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= 23 | /buffer-equal-constant-time/1.0.1: 24 | dev: false 25 | resolution: 26 | integrity: sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk= 27 | /core-util-is/1.0.2: 28 | dev: false 29 | resolution: 30 | integrity: sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= 31 | /debug/3.2.6: 32 | dependencies: 33 | ms: 2.1.2 34 | dev: false 35 | resolution: 36 | integrity: sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== 37 | /ecdsa-sig-formatter/1.0.11: 38 | dependencies: 39 | safe-buffer: 5.1.2 40 | dev: false 41 | resolution: 42 | integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== 43 | /extsprintf/1.4.0: 44 | dev: false 45 | engines: 46 | '0': node >=0.6.0 47 | resolution: 48 | integrity: sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= 49 | /jsonwebtoken/8.5.1: 50 | dependencies: 51 | jws: 3.2.2 52 | lodash.includes: 4.3.0 53 | lodash.isboolean: 3.0.3 54 | lodash.isinteger: 4.0.4 55 | lodash.isnumber: 3.0.3 56 | lodash.isplainobject: 4.0.6 57 | lodash.isstring: 4.0.1 58 | lodash.once: 4.1.1 59 | ms: 2.1.2 60 | semver: 5.7.0 61 | dev: false 62 | engines: 63 | node: '>=4' 64 | npm: '>=1.4.28' 65 | resolution: 66 | integrity: sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w== 67 | /jwa/1.4.1: 68 | dependencies: 69 | buffer-equal-constant-time: 1.0.1 70 | ecdsa-sig-formatter: 1.0.11 71 | safe-buffer: 5.1.2 72 | dev: false 73 | resolution: 74 | integrity: sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA== 75 | /jws/3.2.2: 76 | dependencies: 77 | jwa: 1.4.1 78 | safe-buffer: 5.1.2 79 | dev: false 80 | resolution: 81 | integrity: sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA== 82 | /lodash.includes/4.3.0: 83 | dev: false 84 | resolution: 85 | integrity: sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8= 86 | /lodash.isboolean/3.0.3: 87 | dev: false 88 | resolution: 89 | integrity: sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY= 90 | /lodash.isinteger/4.0.4: 91 | dev: false 92 | resolution: 93 | integrity: sha1-YZwK89A/iwTDH1iChAt3sRzWg0M= 94 | /lodash.isnumber/3.0.3: 95 | dev: false 96 | resolution: 97 | integrity: sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w= 98 | /lodash.isplainobject/4.0.6: 99 | dev: false 100 | resolution: 101 | integrity: sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= 102 | /lodash.isstring/4.0.1: 103 | dev: false 104 | resolution: 105 | integrity: sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= 106 | /lodash.once/4.1.1: 107 | dev: false 108 | resolution: 109 | integrity: sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= 110 | /ms/2.1.2: 111 | dev: false 112 | resolution: 113 | integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 114 | /node-forge/0.7.6: 115 | dev: false 116 | resolution: 117 | integrity: sha512-sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw== 118 | /safe-buffer/5.1.2: 119 | dev: false 120 | resolution: 121 | integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 122 | /semver/5.7.0: 123 | dev: false 124 | hasBin: true 125 | resolution: 126 | integrity: sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== 127 | /verror/1.10.0: 128 | dependencies: 129 | assert-plus: 1.0.0 130 | core-util-is: 1.0.2 131 | extsprintf: 1.4.0 132 | dev: false 133 | engines: 134 | '0': node >=0.6.0 135 | resolution: 136 | integrity: sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= 137 | github.com/node-apn/node-http2/archive/apn-2.1.4.tar.gz: 138 | dev: false 139 | engines: 140 | node: '>=0.12.0' 141 | name: http2 142 | resolution: 143 | tarball: 'https://github.com/node-apn/node-http2/archive/apn-2.1.4.tar.gz' 144 | version: 3.3.6 145 | specifiers: 146 | apn: ^2.2.0 147 | -------------------------------------------------------------------------------- /tests/test-impure/test.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 'use strict'; 3 | const assert = require('assert'); 4 | const apn = require('apn'); 5 | 6 | assert.ok(apn) 7 | -------------------------------------------------------------------------------- /tests/test-peerdependencies/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../. { inherit pkgs; }); 4 | 5 | mkPnpmPackage { 6 | src = ./.; 7 | packageJSON = ./package.json; 8 | pnpmLock = ./pnpm-lock.yaml; 9 | } 10 | -------------------------------------------------------------------------------- /tests/test-peerdependencies/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "peerdeps", 3 | "version": "1.0.0", 4 | "dependencies": { 5 | "winston": "^2.4.0", 6 | "winston-logstash": "^0.4.0" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /tests/test-peerdependencies/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | winston: 2.4.4 3 | winston-logstash: 0.4.0 4 | lockfileVersion: 5 5 | packages: 6 | /async/1.0.0: 7 | dev: false 8 | resolution: 9 | integrity: sha1-+PwEyjoTeErenhZBr5hXjPvWR6k= 10 | /colors/1.0.3: 11 | dev: false 12 | engines: 13 | node: '>=0.1.90' 14 | resolution: 15 | integrity: sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs= 16 | /cycle/1.0.3: 17 | dev: false 18 | engines: 19 | node: '>=0.4.0' 20 | resolution: 21 | integrity: sha1-IegLK+hYD5i0aPN5QwZisEbDStI= 22 | /eyes/0.1.8: 23 | dev: false 24 | engines: 25 | node: '> 0.1.90' 26 | resolution: 27 | integrity: sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A= 28 | /isstream/0.1.2: 29 | dev: false 30 | resolution: 31 | integrity: sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= 32 | /stack-trace/0.0.10: 33 | dev: false 34 | resolution: 35 | integrity: sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= 36 | /winston-logstash/0.4.0: 37 | dev: false 38 | engines: 39 | node: '>=4' 40 | peerDependencies: 41 | winston: '>=0.7.3' 42 | resolution: 43 | integrity: sha512-P31aKNVlgPWBWH5Q1mpa/S871bzofFF708FwjncU4vhxXfSJCVFC48yEk/iBgXCK4OlZkXtBxzRPEE+3dAdbEA== 44 | /winston/2.4.4: 45 | dependencies: 46 | async: 1.0.0 47 | colors: 1.0.3 48 | cycle: 1.0.3 49 | eyes: 0.1.8 50 | isstream: 0.1.2 51 | stack-trace: 0.0.10 52 | dev: false 53 | engines: 54 | node: '>= 0.10.0' 55 | resolution: 56 | integrity: sha512-NBo2Pepn4hK4V01UfcWcDlmiVTs7VTB1h7bgnB0rgP146bYhMxX0ypCz3lBOfNxCO4Zuek7yeT+y/zM1OfMw4Q== 57 | specifiers: 58 | winston: ^2.4.0 59 | winston-logstash: ^0.4.0 60 | -------------------------------------------------------------------------------- /tests/test-scoped/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../. { inherit pkgs; }); 4 | 5 | mkPnpmPackage { 6 | src = ./.; 7 | packageJSON = ./package.json; 8 | pnpmLock = ./pnpm-lock.yaml; 9 | } 10 | -------------------------------------------------------------------------------- /tests/test-scoped/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@test/test-scoped", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "bin": { 7 | "test-scoped": "test-scoped.js" 8 | }, 9 | "scripts": { 10 | "test": "echo \"Error: no test specified\" && exit 1" 11 | }, 12 | "author": "", 13 | "license": "ISC", 14 | "dependencies": { 15 | "@most/hold": "^3.0.0" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /tests/test-scoped/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | '@most/hold': 3.0.1 3 | lockfileVersion: 5 4 | packages: 5 | /@most/core/0.13.0: 6 | dependencies: 7 | '@most/disposable': 0.13.1 8 | '@most/prelude': 1.7.3 9 | '@most/scheduler': 0.13.1 10 | '@most/types': 0.11.1 11 | dev: false 12 | resolution: 13 | integrity: sha512-R1hR/B+GGFfmKvILe/1IAnZn5f7/pRiw27Oucxx5+DrSpaR06cE6YHJ1G9KP9GqB/VzM2fidzia+8UsbdsZVxw== 14 | /@most/disposable/0.13.1: 15 | dependencies: 16 | '@most/prelude': 1.7.3 17 | '@most/types': 0.11.1 18 | dev: false 19 | resolution: 20 | integrity: sha512-2Z89nEjdEJ6RvCzwyWZK6xv2avt2gY2NSkceemOQ869ggGDB2ZFA/ZMuyZag2KVoCyjb9zMOhfOgQw1gD/m9QA== 21 | /@most/hold/3.0.1: 22 | dependencies: 23 | '@most/core': 0.13.0 24 | '@most/scheduler': 0.13.1 25 | '@most/types': 0.11.1 26 | dev: false 27 | resolution: 28 | integrity: sha512-o2Jqb9A00a1iVDRBvGFFbqbnRePkgt700Vx2/AIRPJYn00PkHqR4N+op7kCyQN7Hl4Mhd90rGKWmFrEXAxuEWA== 29 | /@most/prelude/1.7.3: 30 | dev: false 31 | resolution: 32 | integrity: sha512-qWWEnA22UP1lzFfKx75XMut6DUUXGRKe7qv2k+Bgs7ju8lwb5RjsZYyQZ+VcsYvHcIavHKzseLlBMLOe2CvUZw== 33 | /@most/scheduler/0.13.1: 34 | dependencies: 35 | '@most/prelude': 1.7.3 36 | '@most/types': 0.11.1 37 | dev: false 38 | resolution: 39 | integrity: sha512-t14TLvEfUYPSLJQSLT/V5bQYxvKdLib8KFrz0hniOHZRoqyBgt6zhHKP1zywrEYQd9+sdhS5SZDnX9wAJ+xJxg== 40 | /@most/types/0.11.1: 41 | dev: false 42 | resolution: 43 | integrity: sha512-acP+xy7F4W50GAbpOmfdNgATPwCfMUSLmWEhUb4MHli9k0qAtN828LTVPgK3AsTBh/Fkx0TulbgW+H2t06BsKA== 44 | specifiers: 45 | '@most/hold': ^3.0.0 46 | -------------------------------------------------------------------------------- /tests/test-scoped/test-scoped.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | require("@most/hold"); 3 | -------------------------------------------------------------------------------- /tests/test-sharp/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../. { inherit pkgs; }); 4 | 5 | # Building this package requires an override (in default overrides) 6 | mkPnpmPackage { 7 | src = ./.; 8 | packageJSON = ./package.json; 9 | pnpmLock = ./pnpm-lock.yaml; 10 | } 11 | -------------------------------------------------------------------------------- /tests/test-sharp/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test-sharp", 3 | "version": "1.0.0", 4 | "bin": { 5 | "testsharp": "test.js" 6 | }, 7 | "dependencies": { 8 | "sharp": "^0.19.0" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /tests/test-sharp/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | sharp: 0.19.1 3 | lockfileVersion: 5 4 | packages: 5 | /chownr/1.1.1: 6 | dev: false 7 | resolution: 8 | integrity: sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g== 9 | /color-convert/1.9.3: 10 | dependencies: 11 | color-name: 1.1.3 12 | dev: false 13 | resolution: 14 | integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 15 | /color-name/1.1.3: 16 | dev: false 17 | resolution: 18 | integrity: sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 19 | /color-name/1.1.4: 20 | dev: false 21 | resolution: 22 | integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== 23 | /color-string/1.5.3: 24 | dependencies: 25 | color-name: 1.1.4 26 | simple-swizzle: 0.2.2 27 | dev: false 28 | resolution: 29 | integrity: sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw== 30 | /color/3.1.2: 31 | dependencies: 32 | color-convert: 1.9.3 33 | color-string: 1.5.3 34 | dev: false 35 | resolution: 36 | integrity: sha512-vXTJhHebByxZn3lDvDJYw4lR5+uB3vuoHsuYA5AKuxRVn5wzzIfQKGLBmgdVRHKTJYeK5rvJcHnrd0Li49CFpg== 37 | /decompress-response/3.3.0: 38 | dependencies: 39 | mimic-response: 1.0.1 40 | dev: false 41 | engines: 42 | node: '>=4' 43 | resolution: 44 | integrity: sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= 45 | /detect-libc/1.0.3: 46 | dev: false 47 | engines: 48 | node: '>=0.10' 49 | hasBin: true 50 | resolution: 51 | integrity: sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= 52 | /fs-minipass/1.2.6: 53 | dependencies: 54 | minipass: 2.3.5 55 | dev: false 56 | resolution: 57 | integrity: sha512-crhvyXcMejjv3Z5d2Fa9sf5xLYVCF5O1c71QxbVnbLsmYMBEvDAftewesN/HhY03YRoA7zOMxjNGrF5svGaaeQ== 58 | /is-arrayish/0.3.2: 59 | dev: false 60 | resolution: 61 | integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== 62 | /mimic-response/1.0.1: 63 | dev: false 64 | engines: 65 | node: '>=4' 66 | resolution: 67 | integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== 68 | /minimist/0.0.8: 69 | dev: false 70 | resolution: 71 | integrity: sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= 72 | /minipass/2.3.5: 73 | dependencies: 74 | safe-buffer: 5.1.2 75 | yallist: 3.0.3 76 | dev: false 77 | resolution: 78 | integrity: sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA== 79 | /minizlib/1.2.1: 80 | dependencies: 81 | minipass: 2.3.5 82 | dev: false 83 | resolution: 84 | integrity: sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA== 85 | /mkdirp/0.5.1: 86 | dependencies: 87 | minimist: 0.0.8 88 | dev: false 89 | hasBin: true 90 | resolution: 91 | integrity: sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= 92 | /nan/2.14.0: 93 | dev: false 94 | resolution: 95 | integrity: sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== 96 | /once/1.4.0: 97 | dependencies: 98 | wrappy: 1.0.2 99 | dev: false 100 | resolution: 101 | integrity: sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 102 | /safe-buffer/5.1.2: 103 | dev: false 104 | resolution: 105 | integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 106 | /semver/5.7.0: 107 | dev: false 108 | hasBin: true 109 | resolution: 110 | integrity: sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== 111 | /sharp/0.19.1: 112 | dependencies: 113 | color: 3.1.2 114 | detect-libc: 1.0.3 115 | nan: 2.14.0 116 | semver: 5.7.0 117 | simple-get: 2.8.1 118 | tar: 4.4.10 119 | tunnel-agent: 0.6.0 120 | dev: false 121 | engines: 122 | node: '>=4.5.0' 123 | requiresBuild: true 124 | resolution: 125 | integrity: sha1-gZvxH1w/T/MutGXyVbX7h+Q87qE= 126 | /simple-concat/1.0.0: 127 | dev: false 128 | resolution: 129 | integrity: sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY= 130 | /simple-get/2.8.1: 131 | dependencies: 132 | decompress-response: 3.3.0 133 | once: 1.4.0 134 | simple-concat: 1.0.0 135 | dev: false 136 | resolution: 137 | integrity: sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw== 138 | /simple-swizzle/0.2.2: 139 | dependencies: 140 | is-arrayish: 0.3.2 141 | dev: false 142 | resolution: 143 | integrity: sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= 144 | /tar/4.4.10: 145 | dependencies: 146 | chownr: 1.1.1 147 | fs-minipass: 1.2.6 148 | minipass: 2.3.5 149 | minizlib: 1.2.1 150 | mkdirp: 0.5.1 151 | safe-buffer: 5.1.2 152 | yallist: 3.0.3 153 | dev: false 154 | engines: 155 | node: '>=4.5' 156 | resolution: 157 | integrity: sha512-g2SVs5QIxvo6OLp0GudTqEf05maawKUxXru104iaayWA09551tFCTI8f1Asb4lPfkBr91k07iL4c11XO3/b0tA== 158 | /tunnel-agent/0.6.0: 159 | dependencies: 160 | safe-buffer: 5.1.2 161 | dev: false 162 | resolution: 163 | integrity: sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= 164 | /wrappy/1.0.2: 165 | dev: false 166 | resolution: 167 | integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 168 | /yallist/3.0.3: 169 | dev: false 170 | resolution: 171 | integrity: sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A== 172 | specifiers: 173 | sharp: ^0.19.0 174 | -------------------------------------------------------------------------------- /tests/test-sharp/test.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 'use strict'; 3 | const assert = require('assert'); 4 | const sharp = require('sharp'); 5 | 6 | 7 | const roundedCorners = new Buffer( 8 | '' 9 | ); 10 | 11 | 12 | const roundedCornerResizer = 13 | sharp() 14 | .resize(200, 200) 15 | .overlayWith(roundedCorners, { cutout: true }) 16 | .png(); 17 | 18 | 19 | new Promise((resolve, reject) => { 20 | roundedCornerResizer.toBuffer(function (err, data, info) { 21 | if (err) { 22 | reject(err); 23 | return; 24 | } 25 | 26 | resolve(data); 27 | return; 28 | }) 29 | }).then(data => { 30 | assert.strictEqual(true, data.length > 0); 31 | 32 | process.exit(0); 33 | }).catch(err => { 34 | console.error(err); 35 | process.exit(1); 36 | }) 37 | -------------------------------------------------------------------------------- /tests/tmptst/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../. { inherit pkgs; }); 4 | 5 | mkPnpmPackage { 6 | src = ./.; 7 | packageJSON = ./package.json; 8 | pnpmLock = ./pnpm-lock.yaml; 9 | # allowImpure = true; 10 | } 11 | -------------------------------------------------------------------------------- /tests/tmptst/index.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | console.log('dummy') 3 | -------------------------------------------------------------------------------- /tests/tmptst/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.0.1", 3 | "main": "index.js", 4 | "dependencies": { 5 | "@0xproject/base-contract": "^2.0.1", 6 | "@0xproject/utils": "^1.0.7", 7 | "@0xproject/web3-wrapper": "^2.0.1", 8 | "ethereum-types": "^1.0.5", 9 | "ethers": "^3.0.27", 10 | "lodash": "^4.17.10", 11 | "sane-subproviders": "github:enumatech/sane-subproviders" 12 | }, 13 | "devDependencies": { 14 | "typescript": "^3.0.3" 15 | }, 16 | "name": "trustedkey-contracts" 17 | } -------------------------------------------------------------------------------- /tests/tmptst/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | '@0xproject/base-contract': 2.0.5 3 | '@0xproject/utils': 1.0.11 4 | '@0xproject/web3-wrapper': 2.0.3 5 | ethereum-types: 1.1.6 6 | ethers: 3.0.29 7 | lodash: 4.17.11 8 | sane-subproviders: github.com/enumatech/sane-subproviders/e96c457222f3de73215fd3783952df0927dc459c 9 | devDependencies: 10 | typescript: 3.5.2 11 | lockfileVersion: 5 12 | packages: 13 | /@0xproject/assert/1.0.13: 14 | dependencies: 15 | '@0xproject/json-schemas': 1.0.7 16 | '@0xproject/typescript-typings': 3.0.2 17 | '@0xproject/utils': 2.0.2 18 | lodash: 4.17.11 19 | valid-url: 1.0.9 20 | dev: false 21 | engines: 22 | node: '>=6.12' 23 | resolution: 24 | integrity: sha512-qL9++/HspndCP7CvvMJ6ns7vJUyQDIlwt93hYJz9IoqL6fDsU+smSEwUpGMExlS/zotCc3MMgliuT5uaH1t1kw== 25 | /@0xproject/base-contract/2.0.5: 26 | dependencies: 27 | '@0xproject/typescript-typings': 2.0.2 28 | '@0xproject/utils': 1.0.11 29 | '@0xproject/web3-wrapper': 3.0.3 30 | ethereum-types: 1.1.6 31 | ethers: 3.0.22 32 | lodash: 4.17.11 33 | dev: false 34 | engines: 35 | node: '>=6.12' 36 | resolution: 37 | integrity: sha512-IqPsiThzvlguLqaW0dxWOy/HM5Axk5ak0XBPCVGIdoJYo6bh81XLL+8snEmAsL9QbRJKAAXwBlC6GZBGID6GHA== 38 | /@0xproject/json-schemas/1.0.7: 39 | dependencies: 40 | '@0xproject/typescript-typings': 3.0.2 41 | '@types/node': 12.0.10 42 | jsonschema: 1.2.4 43 | lodash.values: 4.3.0 44 | dev: false 45 | engines: 46 | node: '>=6.12' 47 | resolution: 48 | integrity: sha512-A4oG8lrA+YFAyzBIKoREVNbTrgCjJ5gvl462my+tTO3kkouR8zP/tk8LW++2C17wfraYZ0gXjbKP7WCEaHnQAw== 49 | /@0xproject/types/1.1.4: 50 | dependencies: 51 | '@types/node': 12.0.10 52 | bignumber.js: 4.1.0 53 | ethereum-types: 1.1.6 54 | dev: false 55 | engines: 56 | node: '>=6.12' 57 | resolution: 58 | integrity: sha512-kPVXvVDDoHhi/q3PSe3F5NbBFiIT8FfPG73J2WrLrXptf54vTSffbK3D+NMpwb12tk/q0KgdEPwNz6nhY1+xmw== 59 | /@0xproject/typescript-typings/1.0.5: 60 | dependencies: 61 | '@types/bn.js': 4.11.5 62 | '@types/react': 16.8.22 63 | bignumber.js: 4.1.0 64 | ethereum-types: 1.1.6 65 | popper.js: 1.14.3 66 | dev: false 67 | engines: 68 | node: '>=6.12' 69 | resolution: 70 | integrity: sha512-7CX1MXvlIgay3wt6vRYJzEPIzc6+ESP8rY1C7SopjLOKfkkSXSAwlO3xUwn3QEkU5kPMGEn88BO8r5CwAdrk3g== 71 | /@0xproject/typescript-typings/2.0.2: 72 | dependencies: 73 | '@types/bn.js': 4.11.5 74 | '@types/react': 16.8.22 75 | bignumber.js: 4.1.0 76 | ethereum-types: 1.1.6 77 | popper.js: 1.14.3 78 | dev: false 79 | engines: 80 | node: '>=6.12' 81 | resolution: 82 | integrity: sha512-kfwCwylCVHtOSRiq7llwpOyWbJcH7DpMB5nBE4WE/grnb+fb1RS576WUqvnZ6VTezb4D8TV9rl3KO+/HrJi4+w== 83 | /@0xproject/typescript-typings/3.0.2: 84 | dependencies: 85 | '@types/bn.js': 4.11.5 86 | '@types/react': 16.8.22 87 | bignumber.js: 4.1.0 88 | ethereum-types: 1.1.6 89 | popper.js: 1.14.3 90 | dev: false 91 | engines: 92 | node: '>=6.12' 93 | resolution: 94 | integrity: sha512-RuTWApc/SqXi+mZGHNR4j3RdvuMdGsJf8mdohPGZNrEnb+Fw5ufYAEf1KQkNU2Rm5cGfQ8NQQW4GFLsJkK+QEw== 95 | /@0xproject/utils/1.0.11: 96 | dependencies: 97 | '@0xproject/types': 1.1.4 98 | '@0xproject/typescript-typings': 2.0.2 99 | '@types/node': 12.0.10 100 | abortcontroller-polyfill: 1.3.0 101 | bignumber.js: 4.1.0 102 | detect-node: 2.0.3 103 | ethereum-types: 1.1.6 104 | ethereumjs-util: 5.2.0 105 | ethers: 3.0.22 106 | isomorphic-fetch: 2.2.1 107 | js-sha3: 0.7.0 108 | lodash: 4.17.11 109 | dev: false 110 | engines: 111 | node: '>=6.12' 112 | resolution: 113 | integrity: sha512-dUJx3OG0D6x+WFeD3moMvmVLUNXnMZCl9+GSLflO/LXDIYvuLu9tdjmQDLCUKppC3w+6LlvzO+zd8SOObIXW9A== 114 | /@0xproject/utils/2.0.2: 115 | dependencies: 116 | '@0xproject/types': 1.1.4 117 | '@0xproject/typescript-typings': 3.0.2 118 | '@types/node': 12.0.10 119 | abortcontroller-polyfill: 1.3.0 120 | bignumber.js: 4.1.0 121 | detect-node: 2.0.3 122 | ethereum-types: 1.1.6 123 | ethereumjs-util: 5.2.0 124 | ethers: 4.0.0-beta.14 125 | isomorphic-fetch: 2.2.1 126 | js-sha3: 0.7.0 127 | lodash: 4.17.11 128 | dev: false 129 | engines: 130 | node: '>=6.12' 131 | resolution: 132 | integrity: sha512-4hzplD8lXcjEu/CM2gmw7tzVYbxZ6HqU0YGX+nGvE8fiFSPkdbHiBgLvlST1bF8M7D854v/sRCirAuP5FbJf1A== 133 | /@0xproject/web3-wrapper/2.0.3: 134 | dependencies: 135 | '@0xproject/assert': 1.0.13 136 | '@0xproject/json-schemas': 1.0.7 137 | '@0xproject/typescript-typings': 2.0.2 138 | '@0xproject/utils': 1.0.11 139 | ethereum-types: 1.1.6 140 | ethereumjs-util: 5.2.0 141 | ethers: 3.0.22 142 | lodash: 4.17.11 143 | dev: false 144 | engines: 145 | node: '>=6.12' 146 | resolution: 147 | integrity: sha512-89wz5Qr0cy5PSq9vwtB1zOCPwzhAfuziEUtbccvYWm/+M4tWKgp91DEhIy/wYbORZ+i63+0f5y0DHn2iJWXyYQ== 148 | /@0xproject/web3-wrapper/3.0.3: 149 | dependencies: 150 | '@0xproject/assert': 1.0.13 151 | '@0xproject/json-schemas': 1.0.7 152 | '@0xproject/typescript-typings': 3.0.2 153 | '@0xproject/utils': 2.0.2 154 | ethereum-types: 1.1.6 155 | ethereumjs-util: 5.2.0 156 | ethers: 4.0.0-beta.14 157 | lodash: 4.17.11 158 | dev: false 159 | engines: 160 | node: '>=6.12' 161 | resolution: 162 | integrity: sha512-eSg60Q/H2H7A7/gEcfUeUhcz9svgd+zyfLhjnBCpqNS4j0Qdy359ZVb+mGjJk5w+8seAXMLKYDNb1HTr2dmtYg== 163 | /@types/bn.js/4.11.5: 164 | dependencies: 165 | '@types/node': 12.0.10 166 | dev: false 167 | resolution: 168 | integrity: sha512-AEAZcIZga0JgVMHNtl1CprA/hXX7/wPt79AgR4XqaDt7jyj3QWYw6LPoOiznPtugDmlubUnAahMs2PFxGcQrng== 169 | /@types/node/10.14.10: 170 | dev: false 171 | resolution: 172 | integrity: sha512-V8wj+w2YMNvGuhgl/MA5fmTxgjmVHVoasfIaxMMZJV6Y8Kk+Ydpi1z2whoShDCJ2BuNVoqH/h1hrygnBxkrw/Q== 173 | /@types/node/12.0.10: 174 | dev: false 175 | resolution: 176 | integrity: sha512-LcsGbPomWsad6wmMNv7nBLw7YYYyfdYcz6xryKYQhx89c3XXan+8Q6AJ43G5XDIaklaVkK3mE4fCb0SBvMiPSQ== 177 | /@types/prop-types/15.7.1: 178 | dev: false 179 | resolution: 180 | integrity: sha512-CFzn9idOEpHrgdw8JsoTkaDDyRWk1jrzIV8djzcgpq0y9tG4B4lFT+Nxh52DVpDXV+n4+NPNv7M1Dj5uMp6XFg== 181 | /@types/react/16.8.22: 182 | dependencies: 183 | '@types/prop-types': 15.7.1 184 | csstype: 2.6.5 185 | dev: false 186 | resolution: 187 | integrity: sha512-C3O1yVqk4sUXqWyx0wlys76eQfhrQhiDhDlHBrjER76lR2S2Agiid/KpOU9oCqj1dISStscz7xXz1Cg8+sCQeA== 188 | /abortcontroller-polyfill/1.3.0: 189 | dev: false 190 | resolution: 191 | integrity: sha512-lbWQgf+eRvku3va8poBlDBO12FigTQr9Zb7NIjXrePrhxWVKdCP2wbDl1tLDaYa18PWTom3UEWwdH13S46I+yA== 192 | /aes-js/3.0.0: 193 | dev: false 194 | resolution: 195 | integrity: sha1-4h3xCtbCBTKVvLuNq0Cwnb6ofk0= 196 | /bignumber.js/4.1.0: 197 | dev: false 198 | resolution: 199 | integrity: sha512-eJzYkFYy9L4JzXsbymsFn3p54D+llV27oTQ+ziJG7WFRheJcNZilgVXMG0LoZtlQSKBsJdWtLFqOD0u+U0jZKA== 200 | /bindings/1.5.0: 201 | dependencies: 202 | file-uri-to-path: 1.0.0 203 | dev: false 204 | resolution: 205 | integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== 206 | /bip66/1.1.5: 207 | dependencies: 208 | safe-buffer: 5.1.2 209 | dev: false 210 | resolution: 211 | integrity: sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI= 212 | /bn.js/4.11.8: 213 | dev: false 214 | resolution: 215 | integrity: sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== 216 | /brorand/1.1.0: 217 | dev: false 218 | resolution: 219 | integrity: sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= 220 | /browserify-aes/1.2.0: 221 | dependencies: 222 | buffer-xor: 1.0.3 223 | cipher-base: 1.0.4 224 | create-hash: 1.2.0 225 | evp_bytestokey: 1.0.3 226 | inherits: 2.0.4 227 | safe-buffer: 5.1.2 228 | dev: false 229 | resolution: 230 | integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== 231 | /buffer-xor/1.0.3: 232 | dev: false 233 | resolution: 234 | integrity: sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= 235 | /cipher-base/1.0.4: 236 | dependencies: 237 | inherits: 2.0.4 238 | safe-buffer: 5.1.2 239 | dev: false 240 | resolution: 241 | integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== 242 | /create-hash/1.2.0: 243 | dependencies: 244 | cipher-base: 1.0.4 245 | inherits: 2.0.4 246 | md5.js: 1.3.5 247 | ripemd160: 2.0.2 248 | sha.js: 2.4.11 249 | dev: false 250 | resolution: 251 | integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== 252 | /create-hmac/1.1.7: 253 | dependencies: 254 | cipher-base: 1.0.4 255 | create-hash: 1.2.0 256 | inherits: 2.0.4 257 | ripemd160: 2.0.2 258 | safe-buffer: 5.1.2 259 | sha.js: 2.4.11 260 | dev: false 261 | resolution: 262 | integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== 263 | /csstype/2.6.5: 264 | dev: false 265 | resolution: 266 | integrity: sha512-JsTaiksRsel5n7XwqPAfB0l3TFKdpjW/kgAELf9vrb5adGA7UCPLajKK5s3nFrcFm3Rkyp/Qkgl73ENc1UY3cA== 267 | /detect-node/2.0.3: 268 | dev: false 269 | resolution: 270 | integrity: sha1-ogM8CcyOFY03dI+951B4Mr1s4Sc= 271 | /drbg.js/1.0.1: 272 | dependencies: 273 | browserify-aes: 1.2.0 274 | create-hash: 1.2.0 275 | create-hmac: 1.1.7 276 | dev: false 277 | engines: 278 | node: '>=0.10' 279 | resolution: 280 | integrity: sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs= 281 | /elliptic/6.3.3: 282 | dependencies: 283 | bn.js: 4.11.8 284 | brorand: 1.1.0 285 | hash.js: 1.1.7 286 | inherits: 2.0.4 287 | dev: false 288 | resolution: 289 | integrity: sha1-VILZZG1UvLif19mU/J4ulWiHbj8= 290 | /elliptic/6.5.0: 291 | dependencies: 292 | bn.js: 4.11.8 293 | brorand: 1.1.0 294 | hash.js: 1.1.7 295 | hmac-drbg: 1.0.1 296 | inherits: 2.0.4 297 | minimalistic-assert: 1.0.1 298 | minimalistic-crypto-utils: 1.0.1 299 | dev: false 300 | resolution: 301 | integrity: sha512-eFOJTMyCYb7xtE/caJ6JJu+bhi67WCYNbkGSknu20pmM8Ke/bqOfdnZWxyoGN26JgfxTbXrsCkEw4KheCT/KGg== 302 | /encoding/0.1.12: 303 | dependencies: 304 | iconv-lite: 0.4.24 305 | dev: false 306 | resolution: 307 | integrity: sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= 308 | /ethereum-types/1.1.6: 309 | dependencies: 310 | '@types/node': 12.0.10 311 | bignumber.js: 4.1.0 312 | dev: false 313 | engines: 314 | node: '>=6.12' 315 | resolution: 316 | integrity: sha512-/1ixUyyg0f3Gor+U+3Kc3o9AvS8V5hNVHS9qeNXlooqVee+FIpv5kq+SOgMpKSNSVKp4wBJSjrzp0ShjbKo3bA== 317 | /ethereumjs-util/5.2.0: 318 | dependencies: 319 | bn.js: 4.11.8 320 | create-hash: 1.2.0 321 | ethjs-util: 0.1.6 322 | keccak: 1.4.0 323 | rlp: 2.2.3 324 | safe-buffer: 5.1.2 325 | secp256k1: 3.7.1 326 | dev: false 327 | resolution: 328 | integrity: sha512-CJAKdI0wgMbQFLlLRtZKGcy/L6pzVRgelIZqRqNbuVFM3K9VEnyfbcvz0ncWMRNCe4kaHWjwRYQcYMucmwsnWA== 329 | /ethers/3.0.22: 330 | dependencies: 331 | aes-js: 3.0.0 332 | bn.js: 4.11.8 333 | elliptic: 6.3.3 334 | hash.js: 1.1.7 335 | inherits: 2.0.1 336 | js-sha3: 0.5.7 337 | scrypt-js: 2.0.3 338 | setimmediate: 1.0.4 339 | uuid: 2.0.1 340 | xmlhttprequest: 1.8.0 341 | dev: false 342 | resolution: 343 | integrity: sha512-veXsoCdFL3yAdRohQWANA5/sw/btTCxPVmOruMDdzTtQelzRTrkDPN3CN1Y7TG1mQgayWoWkkfS4ks2t21wNqQ== 344 | /ethers/3.0.29: 345 | dependencies: 346 | aes-js: 3.0.0 347 | bn.js: 4.11.8 348 | elliptic: 6.3.3 349 | hash.js: 1.1.7 350 | inherits: 2.0.1 351 | js-sha3: 0.5.7 352 | scrypt-js: 2.0.3 353 | setimmediate: 1.0.4 354 | uuid: 2.0.1 355 | xmlhttprequest: 1.8.0 356 | dev: false 357 | resolution: 358 | integrity: sha512-OGyA5pW5xFC5o/ZV5MfIoVp/EdA1QMg2bMJFf7Kznsz8m7IzzbgsPHTCjzSfKQDs/XDphGyRcA7A6bkIeJL4gw== 359 | /ethers/4.0.0-beta.14: 360 | dependencies: 361 | '@types/node': 10.14.10 362 | aes-js: 3.0.0 363 | bn.js: 4.11.8 364 | elliptic: 6.3.3 365 | hash.js: 1.1.3 366 | js-sha3: 0.5.7 367 | scrypt-js: 2.0.3 368 | setimmediate: 1.0.4 369 | uuid: 2.0.1 370 | xmlhttprequest: 1.8.0 371 | dev: false 372 | resolution: 373 | integrity: sha512-fF6Q+rEEIJoWbTBUDtgti1pCOmGGX0EGywN6ZuRDJDMBvh5yrSibkrBeZtX75kpj5f3KG24kE62p2HKi7mMVJA== 374 | /ethjs-util/0.1.6: 375 | dependencies: 376 | is-hex-prefixed: 1.0.0 377 | strip-hex-prefix: 1.0.0 378 | dev: false 379 | engines: 380 | node: '>=6.5.0' 381 | npm: '>=3' 382 | resolution: 383 | integrity: sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w== 384 | /evp_bytestokey/1.0.3: 385 | dependencies: 386 | md5.js: 1.3.5 387 | safe-buffer: 5.1.2 388 | dev: false 389 | resolution: 390 | integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== 391 | /file-uri-to-path/1.0.0: 392 | dev: false 393 | resolution: 394 | integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== 395 | /hash-base/3.0.4: 396 | dependencies: 397 | inherits: 2.0.4 398 | safe-buffer: 5.1.2 399 | dev: false 400 | engines: 401 | node: '>=4' 402 | resolution: 403 | integrity: sha1-X8hoaEfs1zSZQDMZprCj8/auSRg= 404 | /hash.js/1.1.3: 405 | dependencies: 406 | inherits: 2.0.4 407 | minimalistic-assert: 1.0.1 408 | dev: false 409 | resolution: 410 | integrity: sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA== 411 | /hash.js/1.1.7: 412 | dependencies: 413 | inherits: 2.0.4 414 | minimalistic-assert: 1.0.1 415 | dev: false 416 | resolution: 417 | integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== 418 | /hmac-drbg/1.0.1: 419 | dependencies: 420 | hash.js: 1.1.7 421 | minimalistic-assert: 1.0.1 422 | minimalistic-crypto-utils: 1.0.1 423 | dev: false 424 | resolution: 425 | integrity: sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= 426 | /iconv-lite/0.4.24: 427 | dependencies: 428 | safer-buffer: 2.1.2 429 | dev: false 430 | engines: 431 | node: '>=0.10.0' 432 | resolution: 433 | integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 434 | /inherits/2.0.1: 435 | dev: false 436 | resolution: 437 | integrity: sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= 438 | /inherits/2.0.4: 439 | dev: false 440 | resolution: 441 | integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 442 | /is-hex-prefixed/1.0.0: 443 | dev: false 444 | engines: 445 | node: '>=6.5.0' 446 | npm: '>=3' 447 | resolution: 448 | integrity: sha1-fY035q135dEnFIkTxXPggtd39VQ= 449 | /is-stream/1.1.0: 450 | dev: false 451 | engines: 452 | node: '>=0.10.0' 453 | resolution: 454 | integrity: sha1-EtSj3U5o4Lec6428hBc66A2RykQ= 455 | /isomorphic-fetch/2.2.1: 456 | dependencies: 457 | node-fetch: 1.7.3 458 | whatwg-fetch: 3.0.0 459 | dev: false 460 | resolution: 461 | integrity: sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk= 462 | /js-sha3/0.5.7: 463 | dev: false 464 | resolution: 465 | integrity: sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc= 466 | /js-sha3/0.7.0: 467 | dev: false 468 | resolution: 469 | integrity: sha512-Wpks3yBDm0UcL5qlVhwW9Jr9n9i4FfeWBFOOXP5puDS/SiudJGhw7DPyBqn3487qD4F0lsC0q3zxink37f7zeA== 470 | /json-rpc-error/2.0.0: 471 | dependencies: 472 | inherits: 2.0.4 473 | dev: false 474 | resolution: 475 | integrity: sha1-p6+cICg4tekFxyUOVH8a/3cligI= 476 | /jsonschema/1.2.4: 477 | dev: false 478 | resolution: 479 | integrity: sha512-lz1nOH69GbsVHeVgEdvyavc/33oymY1AZwtePMiMj4HZPMbP5OIKK3zT9INMWjwua/V4Z4yq7wSlBbSG+g4AEw== 480 | /keccak/1.4.0: 481 | dependencies: 482 | bindings: 1.5.0 483 | inherits: 2.0.4 484 | nan: 2.14.0 485 | safe-buffer: 5.1.2 486 | dev: false 487 | engines: 488 | node: '>=4.0.0' 489 | requiresBuild: true 490 | resolution: 491 | integrity: sha512-eZVaCpblK5formjPjeTBik7TAg+pqnDrMHIffSvi9Lh7PQgM1+hSzakUeZFCk9DVVG0dacZJuaz2ntwlzZUIBw== 492 | /lodash.values/4.3.0: 493 | dev: false 494 | resolution: 495 | integrity: sha1-o6bCsOvsxcLLocF+bmIP6BtT00c= 496 | /lodash/4.17.11: 497 | dev: false 498 | resolution: 499 | integrity: sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== 500 | /md5.js/1.3.5: 501 | dependencies: 502 | hash-base: 3.0.4 503 | inherits: 2.0.4 504 | safe-buffer: 5.1.2 505 | dev: false 506 | resolution: 507 | integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== 508 | /minimalistic-assert/1.0.1: 509 | dev: false 510 | resolution: 511 | integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== 512 | /minimalistic-crypto-utils/1.0.1: 513 | dev: false 514 | resolution: 515 | integrity: sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= 516 | /nan/2.14.0: 517 | dev: false 518 | resolution: 519 | integrity: sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== 520 | /node-fetch/1.7.3: 521 | dependencies: 522 | encoding: 0.1.12 523 | is-stream: 1.1.0 524 | dev: false 525 | resolution: 526 | integrity: sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== 527 | /popper.js/1.14.3: 528 | dev: false 529 | resolution: 530 | integrity: sha1-FDj5jQRqz3tNeM1QK/QYrGTU8JU= 531 | /psl/1.2.0: 532 | dev: false 533 | resolution: 534 | integrity: sha512-GEn74ZffufCmkDDLNcl3uuyF/aSD6exEyh1v/ZSdAomB82t6G9hzJVRx0jBmLDW+VfZqks3aScmMw9DszwUalA== 535 | /punycode/2.1.1: 536 | dev: false 537 | engines: 538 | node: '>=6' 539 | resolution: 540 | integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 541 | /request-promise-core/1.1.2: 542 | dependencies: 543 | lodash: 4.17.11 544 | dev: false 545 | engines: 546 | node: '>=0.10.0' 547 | peerDependencies: 548 | request: ^2.34 549 | resolution: 550 | integrity: sha512-UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag== 551 | /request-promise-native/1.0.7: 552 | dependencies: 553 | request-promise-core: 1.1.2 554 | stealthy-require: 1.1.1 555 | tough-cookie: 2.5.0 556 | dev: false 557 | engines: 558 | node: '>=0.12.0' 559 | peerDependencies: 560 | request: ^2.34 561 | resolution: 562 | integrity: sha512-rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w== 563 | /ripemd160/2.0.2: 564 | dependencies: 565 | hash-base: 3.0.4 566 | inherits: 2.0.4 567 | dev: false 568 | resolution: 569 | integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== 570 | /rlp/2.2.3: 571 | dependencies: 572 | bn.js: 4.11.8 573 | safe-buffer: 5.1.2 574 | dev: false 575 | hasBin: true 576 | resolution: 577 | integrity: sha512-l6YVrI7+d2vpW6D6rS05x2Xrmq8oW7v3pieZOJKBEdjuTF4Kz/iwk55Zyh1Zaz+KOB2kC8+2jZlp2u9L4tTzCQ== 578 | /safe-buffer/5.1.2: 579 | dev: false 580 | resolution: 581 | integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 582 | /safer-buffer/2.1.2: 583 | dev: false 584 | resolution: 585 | integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 586 | /scrypt-js/2.0.3: 587 | dev: false 588 | resolution: 589 | integrity: sha1-uwBAvgMEPamgEqLOqfyfhSz8h9Q= 590 | /secp256k1/3.7.1: 591 | dependencies: 592 | bindings: 1.5.0 593 | bip66: 1.1.5 594 | bn.js: 4.11.8 595 | create-hash: 1.2.0 596 | drbg.js: 1.0.1 597 | elliptic: 6.5.0 598 | nan: 2.14.0 599 | safe-buffer: 5.1.2 600 | dev: false 601 | engines: 602 | node: '>=4.0.0' 603 | requiresBuild: true 604 | resolution: 605 | integrity: sha512-1cf8sbnRreXrQFdH6qsg2H71Xw91fCCS9Yp021GnUNJzWJS/py96fS4lHbnTnouLp08Xj6jBoBB6V78Tdbdu5g== 606 | /setimmediate/1.0.4: 607 | dev: false 608 | resolution: 609 | integrity: sha1-IOgd5iLUoCWIzgyNqJc8vPHTE48= 610 | /sha.js/2.4.11: 611 | dependencies: 612 | inherits: 2.0.4 613 | safe-buffer: 5.1.2 614 | dev: false 615 | hasBin: true 616 | resolution: 617 | integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== 618 | /stealthy-require/1.1.1: 619 | dev: false 620 | engines: 621 | node: '>=0.10.0' 622 | resolution: 623 | integrity: sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= 624 | /strip-hex-prefix/1.0.0: 625 | dependencies: 626 | is-hex-prefixed: 1.0.0 627 | dev: false 628 | engines: 629 | node: '>=6.5.0' 630 | npm: '>=3' 631 | resolution: 632 | integrity: sha1-DF8VX+8RUTczd96du1iNoFUA428= 633 | /tough-cookie/2.5.0: 634 | dependencies: 635 | psl: 1.2.0 636 | punycode: 2.1.1 637 | dev: false 638 | engines: 639 | node: '>=0.8' 640 | resolution: 641 | integrity: sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== 642 | /typescript/3.5.2: 643 | dev: true 644 | engines: 645 | node: '>=4.2.0' 646 | hasBin: true 647 | resolution: 648 | integrity: sha512-7KxJovlYhTX5RaRbUdkAXN1KUZ8PwWlTzQdHV6xNqvuFOs7+WBo10TQUqT19Q/Jz2hk5v9TQDIhyLhhJY4p5AA== 649 | /uuid/2.0.1: 650 | dev: false 651 | resolution: 652 | integrity: sha1-wqMN7bPlNdcsz4LjQ5QaULqFM6w= 653 | /valid-url/1.0.9: 654 | dev: false 655 | resolution: 656 | integrity: sha1-HBRHm0DxOXp1eC8RXkCGRHQzogA= 657 | /whatwg-fetch/3.0.0: 658 | dev: false 659 | resolution: 660 | integrity: sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== 661 | /xmlhttprequest/1.8.0: 662 | dev: false 663 | engines: 664 | node: '>=0.4.0' 665 | resolution: 666 | integrity: sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw= 667 | github.com/enumatech/sane-subproviders/e96c457222f3de73215fd3783952df0927dc459c: 668 | dependencies: 669 | '@0xproject/types': 1.1.4 670 | '@0xproject/typescript-typings': 1.0.5 671 | '@0xproject/utils': 1.0.11 672 | ethereum-types: 1.1.6 673 | json-rpc-error: 2.0.0 674 | lodash: 4.17.11 675 | request-promise-native: 1.0.7 676 | dev: false 677 | engines: 678 | node: '>=6.12' 679 | name: sane-subproviders 680 | resolution: 681 | tarball: 'https://codeload.github.com/enumatech/sane-subproviders/tar.gz/e96c457222f3de73215fd3783952df0927dc459c' 682 | version: 1.0.8 683 | specifiers: 684 | '@0xproject/base-contract': ^2.0.1 685 | '@0xproject/utils': ^1.0.7 686 | '@0xproject/web3-wrapper': ^2.0.1 687 | ethereum-types: ^1.0.5 688 | ethers: ^3.0.27 689 | lodash: ^4.17.10 690 | sane-subproviders: 'github:enumatech/sane-subproviders' 691 | typescript: ^3.0.3 692 | -------------------------------------------------------------------------------- /tests/web3/default.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? (import {})}: 2 | with pkgs; 3 | with (import ../../. { inherit pkgs; }); 4 | 5 | mkPnpmPackage { 6 | src = ./.; 7 | packageJSON = ./package.json; 8 | pnpmLock = ./pnpm-lock.yaml; 9 | } 10 | -------------------------------------------------------------------------------- /tests/web3/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test-web3", 3 | "version": "1.0.0", 4 | "dependencies": { 5 | "web3": "^1.0.0-beta.30" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /tests/web3/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | web3: 1.0.0-beta.55 3 | lockfileVersion: 5 4 | packages: 5 | /@babel/runtime/7.4.5: 6 | dependencies: 7 | regenerator-runtime: 0.13.2 8 | dev: false 9 | resolution: 10 | integrity: sha512-TuI4qpWZP6lGOGIuGWtp9sPluqYICmbk8T/1vpSysqJxRPkudh/ofFWyqdcMsDf2s7KvDL4/YHgKyvcS3g9CJQ== 11 | /@types/bn.js/4.11.5: 12 | dependencies: 13 | '@types/node': 12.0.10 14 | dev: false 15 | resolution: 16 | integrity: sha512-AEAZcIZga0JgVMHNtl1CprA/hXX7/wPt79AgR4XqaDt7jyj3QWYw6LPoOiznPtugDmlubUnAahMs2PFxGcQrng== 17 | /@types/node/10.14.10: 18 | dev: false 19 | resolution: 20 | integrity: sha512-V8wj+w2YMNvGuhgl/MA5fmTxgjmVHVoasfIaxMMZJV6Y8Kk+Ydpi1z2whoShDCJ2BuNVoqH/h1hrygnBxkrw/Q== 21 | /@types/node/12.0.10: 22 | dev: false 23 | resolution: 24 | integrity: sha512-LcsGbPomWsad6wmMNv7nBLw7YYYyfdYcz6xryKYQhx89c3XXan+8Q6AJ43G5XDIaklaVkK3mE4fCb0SBvMiPSQ== 25 | /aes-js/3.0.0: 26 | dev: false 27 | resolution: 28 | integrity: sha1-4h3xCtbCBTKVvLuNq0Cwnb6ofk0= 29 | /bindings/1.5.0: 30 | dependencies: 31 | file-uri-to-path: 1.0.0 32 | dev: false 33 | resolution: 34 | integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== 35 | /bip66/1.1.5: 36 | dependencies: 37 | safe-buffer: 5.1.2 38 | dev: false 39 | resolution: 40 | integrity: sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI= 41 | /bn.js/4.11.6: 42 | dev: false 43 | resolution: 44 | integrity: sha1-UzRK2xRhehP26N0s4okF0cC6MhU= 45 | /bn.js/4.11.8: 46 | dev: false 47 | resolution: 48 | integrity: sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== 49 | /brorand/1.1.0: 50 | dev: false 51 | resolution: 52 | integrity: sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= 53 | /browserify-aes/1.2.0: 54 | dependencies: 55 | buffer-xor: 1.0.3 56 | cipher-base: 1.0.4 57 | create-hash: 1.2.0 58 | evp_bytestokey: 1.0.3 59 | inherits: 2.0.4 60 | safe-buffer: 5.1.2 61 | dev: false 62 | resolution: 63 | integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== 64 | /browserify-cipher/1.0.1: 65 | dependencies: 66 | browserify-aes: 1.2.0 67 | browserify-des: 1.0.2 68 | evp_bytestokey: 1.0.3 69 | dev: false 70 | resolution: 71 | integrity: sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== 72 | /browserify-des/1.0.2: 73 | dependencies: 74 | cipher-base: 1.0.4 75 | des.js: 1.0.0 76 | inherits: 2.0.4 77 | safe-buffer: 5.1.2 78 | dev: false 79 | resolution: 80 | integrity: sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== 81 | /buffer-to-arraybuffer/0.0.5: 82 | dev: false 83 | resolution: 84 | integrity: sha1-YGSkD6dutDxyOrqe+PbhIW0QURo= 85 | /buffer-xor/1.0.3: 86 | dev: false 87 | resolution: 88 | integrity: sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= 89 | /cipher-base/1.0.4: 90 | dependencies: 91 | inherits: 2.0.4 92 | safe-buffer: 5.1.2 93 | dev: false 94 | resolution: 95 | integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== 96 | /cookiejar/2.1.2: 97 | dev: false 98 | resolution: 99 | integrity: sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA== 100 | /create-hash/1.2.0: 101 | dependencies: 102 | cipher-base: 1.0.4 103 | inherits: 2.0.4 104 | md5.js: 1.3.5 105 | ripemd160: 2.0.2 106 | sha.js: 2.4.11 107 | dev: false 108 | resolution: 109 | integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== 110 | /create-hmac/1.1.7: 111 | dependencies: 112 | cipher-base: 1.0.4 113 | create-hash: 1.2.0 114 | inherits: 2.0.4 115 | ripemd160: 2.0.2 116 | safe-buffer: 5.1.2 117 | sha.js: 2.4.11 118 | dev: false 119 | resolution: 120 | integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== 121 | /debug/2.6.9: 122 | dependencies: 123 | ms: 2.0.0 124 | dev: false 125 | resolution: 126 | integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== 127 | /decode-uri-component/0.2.0: 128 | dev: false 129 | engines: 130 | node: '>=0.10' 131 | resolution: 132 | integrity: sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= 133 | /decompress-response/3.3.0: 134 | dependencies: 135 | mimic-response: 1.0.1 136 | dev: false 137 | engines: 138 | node: '>=4' 139 | resolution: 140 | integrity: sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= 141 | /define-properties/1.1.3: 142 | dependencies: 143 | object-keys: 1.1.1 144 | dev: false 145 | engines: 146 | node: '>= 0.4' 147 | resolution: 148 | integrity: sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== 149 | /des.js/1.0.0: 150 | dependencies: 151 | inherits: 2.0.4 152 | minimalistic-assert: 1.0.1 153 | dev: false 154 | resolution: 155 | integrity: sha1-wHTS4qpqipoH29YfmhXCzYPsjsw= 156 | /dom-walk/0.1.1: 157 | dev: false 158 | resolution: 159 | integrity: sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg= 160 | /drbg.js/1.0.1: 161 | dependencies: 162 | browserify-aes: 1.2.0 163 | create-hash: 1.2.0 164 | create-hmac: 1.1.7 165 | dev: false 166 | engines: 167 | node: '>=0.10' 168 | resolution: 169 | integrity: sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs= 170 | /elliptic/6.3.3: 171 | dependencies: 172 | bn.js: 4.11.8 173 | brorand: 1.1.0 174 | hash.js: 1.1.7 175 | inherits: 2.0.4 176 | dev: false 177 | resolution: 178 | integrity: sha1-VILZZG1UvLif19mU/J4ulWiHbj8= 179 | /elliptic/6.5.0: 180 | dependencies: 181 | bn.js: 4.11.8 182 | brorand: 1.1.0 183 | hash.js: 1.1.7 184 | hmac-drbg: 1.0.1 185 | inherits: 2.0.4 186 | minimalistic-assert: 1.0.1 187 | minimalistic-crypto-utils: 1.0.1 188 | dev: false 189 | resolution: 190 | integrity: sha512-eFOJTMyCYb7xtE/caJ6JJu+bhi67WCYNbkGSknu20pmM8Ke/bqOfdnZWxyoGN26JgfxTbXrsCkEw4KheCT/KGg== 191 | /es-abstract/1.13.0: 192 | dependencies: 193 | es-to-primitive: 1.2.0 194 | function-bind: 1.1.1 195 | has: 1.0.3 196 | is-callable: 1.1.4 197 | is-regex: 1.0.4 198 | object-keys: 1.1.1 199 | dev: false 200 | engines: 201 | node: '>= 0.4' 202 | resolution: 203 | integrity: sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg== 204 | /es-to-primitive/1.2.0: 205 | dependencies: 206 | is-callable: 1.1.4 207 | is-date-object: 1.0.1 208 | is-symbol: 1.0.2 209 | dev: false 210 | engines: 211 | node: '>= 0.4' 212 | resolution: 213 | integrity: sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg== 214 | /eth-ens-namehash/2.0.8: 215 | dependencies: 216 | idna-uts46-hx: 2.3.1 217 | js-sha3: 0.5.7 218 | dev: false 219 | resolution: 220 | integrity: sha1-IprEbsqG1S4MmR58sq74P/D2i88= 221 | /eth-lib/0.2.8: 222 | dependencies: 223 | bn.js: 4.11.8 224 | elliptic: 6.5.0 225 | xhr-request-promise: 0.1.2 226 | dev: false 227 | resolution: 228 | integrity: sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw== 229 | /ethereum-common/0.0.18: 230 | dev: false 231 | resolution: 232 | integrity: sha1-L9w1dvIykDNYl26znaeDIT/5Uj8= 233 | /ethereumjs-tx/1.3.7: 234 | dependencies: 235 | ethereum-common: 0.0.18 236 | ethereumjs-util: 5.2.0 237 | dev: false 238 | resolution: 239 | integrity: sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA== 240 | /ethereumjs-util/5.2.0: 241 | dependencies: 242 | bn.js: 4.11.8 243 | create-hash: 1.2.0 244 | ethjs-util: 0.1.6 245 | keccak: 1.4.0 246 | rlp: 2.2.3 247 | safe-buffer: 5.1.2 248 | secp256k1: 3.7.1 249 | dev: false 250 | resolution: 251 | integrity: sha512-CJAKdI0wgMbQFLlLRtZKGcy/L6pzVRgelIZqRqNbuVFM3K9VEnyfbcvz0ncWMRNCe4kaHWjwRYQcYMucmwsnWA== 252 | /ethers/4.0.32: 253 | dependencies: 254 | '@types/node': 10.14.10 255 | aes-js: 3.0.0 256 | bn.js: 4.11.8 257 | elliptic: 6.3.3 258 | hash.js: 1.1.3 259 | js-sha3: 0.5.7 260 | scrypt-js: 2.0.4 261 | setimmediate: 1.0.4 262 | uuid: 2.0.1 263 | xmlhttprequest: 1.8.0 264 | dev: false 265 | resolution: 266 | integrity: sha512-r0k2tBNF6MYEsvwmINeP3VPppD/7eAZyiOk/ifDDawXGCKqr3iEQkPq6OZSDVD+4Jie38WPteS9thXzpn2+A5Q== 267 | /ethjs-unit/0.1.6: 268 | dependencies: 269 | bn.js: 4.11.6 270 | number-to-bn: 1.7.0 271 | dev: false 272 | engines: 273 | node: '>=6.5.0' 274 | npm: '>=3' 275 | resolution: 276 | integrity: sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk= 277 | /ethjs-util/0.1.6: 278 | dependencies: 279 | is-hex-prefixed: 1.0.0 280 | strip-hex-prefix: 1.0.0 281 | dev: false 282 | engines: 283 | node: '>=6.5.0' 284 | npm: '>=3' 285 | resolution: 286 | integrity: sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w== 287 | /eventemitter3/3.1.0: 288 | dev: false 289 | resolution: 290 | integrity: sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA== 291 | /eventemitter3/3.1.2: 292 | dev: false 293 | resolution: 294 | integrity: sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q== 295 | /evp_bytestokey/1.0.3: 296 | dependencies: 297 | md5.js: 1.3.5 298 | safe-buffer: 5.1.2 299 | dev: false 300 | resolution: 301 | integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== 302 | /file-uri-to-path/1.0.0: 303 | dev: false 304 | resolution: 305 | integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== 306 | /for-each/0.3.3: 307 | dependencies: 308 | is-callable: 1.1.4 309 | dev: false 310 | resolution: 311 | integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== 312 | /function-bind/1.1.1: 313 | dev: false 314 | resolution: 315 | integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 316 | /global/4.3.2: 317 | dependencies: 318 | min-document: 2.19.0 319 | process: 0.5.2 320 | dev: false 321 | resolution: 322 | integrity: sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8= 323 | /has-symbols/1.0.0: 324 | dev: false 325 | engines: 326 | node: '>= 0.4' 327 | resolution: 328 | integrity: sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= 329 | /has/1.0.3: 330 | dependencies: 331 | function-bind: 1.1.1 332 | dev: false 333 | engines: 334 | node: '>= 0.4.0' 335 | resolution: 336 | integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 337 | /hash-base/3.0.4: 338 | dependencies: 339 | inherits: 2.0.4 340 | safe-buffer: 5.1.2 341 | dev: false 342 | engines: 343 | node: '>=4' 344 | resolution: 345 | integrity: sha1-X8hoaEfs1zSZQDMZprCj8/auSRg= 346 | /hash.js/1.1.3: 347 | dependencies: 348 | inherits: 2.0.4 349 | minimalistic-assert: 1.0.1 350 | dev: false 351 | resolution: 352 | integrity: sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA== 353 | /hash.js/1.1.7: 354 | dependencies: 355 | inherits: 2.0.4 356 | minimalistic-assert: 1.0.1 357 | dev: false 358 | resolution: 359 | integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== 360 | /hmac-drbg/1.0.1: 361 | dependencies: 362 | hash.js: 1.1.7 363 | minimalistic-assert: 1.0.1 364 | minimalistic-crypto-utils: 1.0.1 365 | dev: false 366 | resolution: 367 | integrity: sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= 368 | /idna-uts46-hx/2.3.1: 369 | dependencies: 370 | punycode: 2.1.0 371 | dev: false 372 | engines: 373 | node: '>=4.0.0' 374 | resolution: 375 | integrity: sha512-PWoF9Keq6laYdIRwwCdhTPl60xRqAloYNMQLiyUnG42VjT53oW07BXIRM+NK7eQjzXjAk2gUvX9caRxlnF9TAA== 376 | /inherits/2.0.4: 377 | dev: false 378 | resolution: 379 | integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 380 | /is-callable/1.1.4: 381 | dev: false 382 | engines: 383 | node: '>= 0.4' 384 | resolution: 385 | integrity: sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== 386 | /is-date-object/1.0.1: 387 | dev: false 388 | engines: 389 | node: '>= 0.4' 390 | resolution: 391 | integrity: sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= 392 | /is-function/1.0.1: 393 | dev: false 394 | resolution: 395 | integrity: sha1-Es+5i2W1fdPRk6MSH19uL0N2ArU= 396 | /is-hex-prefixed/1.0.0: 397 | dev: false 398 | engines: 399 | node: '>=6.5.0' 400 | npm: '>=3' 401 | resolution: 402 | integrity: sha1-fY035q135dEnFIkTxXPggtd39VQ= 403 | /is-regex/1.0.4: 404 | dependencies: 405 | has: 1.0.3 406 | dev: false 407 | engines: 408 | node: '>= 0.4' 409 | resolution: 410 | integrity: sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= 411 | /is-symbol/1.0.2: 412 | dependencies: 413 | has-symbols: 1.0.0 414 | dev: false 415 | engines: 416 | node: '>= 0.4' 417 | resolution: 418 | integrity: sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== 419 | /is-typedarray/1.0.0: 420 | dev: false 421 | resolution: 422 | integrity: sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= 423 | /js-sha3/0.5.7: 424 | dev: false 425 | resolution: 426 | integrity: sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc= 427 | /keccak/1.4.0: 428 | dependencies: 429 | bindings: 1.5.0 430 | inherits: 2.0.4 431 | nan: 2.14.0 432 | safe-buffer: 5.1.2 433 | dev: false 434 | engines: 435 | node: '>=4.0.0' 436 | requiresBuild: true 437 | resolution: 438 | integrity: sha512-eZVaCpblK5formjPjeTBik7TAg+pqnDrMHIffSvi9Lh7PQgM1+hSzakUeZFCk9DVVG0dacZJuaz2ntwlzZUIBw== 439 | /lodash/4.17.11: 440 | dev: false 441 | resolution: 442 | integrity: sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== 443 | /md5.js/1.3.5: 444 | dependencies: 445 | hash-base: 3.0.4 446 | inherits: 2.0.4 447 | safe-buffer: 5.1.2 448 | dev: false 449 | resolution: 450 | integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== 451 | /mimic-response/1.0.1: 452 | dev: false 453 | engines: 454 | node: '>=4' 455 | resolution: 456 | integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== 457 | /min-document/2.19.0: 458 | dependencies: 459 | dom-walk: 0.1.1 460 | dev: false 461 | resolution: 462 | integrity: sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU= 463 | /minimalistic-assert/1.0.1: 464 | dev: false 465 | resolution: 466 | integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== 467 | /minimalistic-crypto-utils/1.0.1: 468 | dev: false 469 | resolution: 470 | integrity: sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= 471 | /ms/2.0.0: 472 | dev: false 473 | resolution: 474 | integrity: sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 475 | /nan/2.14.0: 476 | dev: false 477 | resolution: 478 | integrity: sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== 479 | /number-to-bn/1.7.0: 480 | dependencies: 481 | bn.js: 4.11.6 482 | strip-hex-prefix: 1.0.0 483 | dev: false 484 | engines: 485 | node: '>=6.5.0' 486 | npm: '>=3' 487 | resolution: 488 | integrity: sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA= 489 | /object-assign/4.1.1: 490 | dev: false 491 | engines: 492 | node: '>=0.10.0' 493 | resolution: 494 | integrity: sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 495 | /object-keys/1.1.1: 496 | dev: false 497 | engines: 498 | node: '>= 0.4' 499 | resolution: 500 | integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== 501 | /once/1.4.0: 502 | dependencies: 503 | wrappy: 1.0.2 504 | dev: false 505 | resolution: 506 | integrity: sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 507 | /parse-headers/2.0.2: 508 | dependencies: 509 | for-each: 0.3.3 510 | string.prototype.trim: 1.1.2 511 | dev: false 512 | resolution: 513 | integrity: sha512-/LypJhzFmyBIDYP9aDVgeyEb5sQfbfY5mnDq4hVhlQ69js87wXfmEI5V3xI6vvXasqebp0oCytYFLxsBVfCzSg== 514 | /pbkdf2/3.0.17: 515 | dependencies: 516 | create-hash: 1.2.0 517 | create-hmac: 1.1.7 518 | ripemd160: 2.0.2 519 | safe-buffer: 5.1.2 520 | sha.js: 2.4.11 521 | dev: false 522 | engines: 523 | node: '>=0.12' 524 | resolution: 525 | integrity: sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA== 526 | /process/0.5.2: 527 | dev: false 528 | engines: 529 | node: '>= 0.6.0' 530 | resolution: 531 | integrity: sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8= 532 | /punycode/2.1.0: 533 | dev: false 534 | engines: 535 | node: '>=6' 536 | resolution: 537 | integrity: sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0= 538 | /query-string/5.1.1: 539 | dependencies: 540 | decode-uri-component: 0.2.0 541 | object-assign: 4.1.1 542 | strict-uri-encode: 1.1.0 543 | dev: false 544 | engines: 545 | node: '>=0.10.0' 546 | resolution: 547 | integrity: sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw== 548 | /querystringify/2.1.1: 549 | dev: false 550 | resolution: 551 | integrity: sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA== 552 | /randombytes/2.1.0: 553 | dependencies: 554 | safe-buffer: 5.1.2 555 | dev: false 556 | resolution: 557 | integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== 558 | /regenerator-runtime/0.13.2: 559 | dev: false 560 | resolution: 561 | integrity: sha512-S/TQAZJO+D3m9xeN1WTI8dLKBBiRgXBlTJvbWjCThHWZj9EvHK70Ff50/tYj2J/fvBY6JtFVwRuazHN2E7M9BA== 562 | /requires-port/1.0.0: 563 | dev: false 564 | resolution: 565 | integrity: sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= 566 | /ripemd160/2.0.2: 567 | dependencies: 568 | hash-base: 3.0.4 569 | inherits: 2.0.4 570 | dev: false 571 | resolution: 572 | integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== 573 | /rlp/2.2.3: 574 | dependencies: 575 | bn.js: 4.11.8 576 | safe-buffer: 5.1.2 577 | dev: false 578 | hasBin: true 579 | resolution: 580 | integrity: sha512-l6YVrI7+d2vpW6D6rS05x2Xrmq8oW7v3pieZOJKBEdjuTF4Kz/iwk55Zyh1Zaz+KOB2kC8+2jZlp2u9L4tTzCQ== 581 | /rxjs/6.5.2: 582 | dependencies: 583 | tslib: 1.10.0 584 | dev: false 585 | engines: 586 | npm: '>=2.0.0' 587 | resolution: 588 | integrity: sha512-HUb7j3kvb7p7eCUHE3FqjoDsC1xfZQ4AHFWfTKSpZ+sAhhz5X1WX0ZuUqWbzB2QhSLp3DoLUG+hMdEDKqWo2Zg== 589 | /safe-buffer/5.1.2: 590 | dev: false 591 | resolution: 592 | integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 593 | /scrypt-js/2.0.4: 594 | dev: false 595 | resolution: 596 | integrity: sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw== 597 | /scrypt.js/0.3.0: 598 | dependencies: 599 | scryptsy: 1.2.1 600 | dev: false 601 | optionalDependencies: 602 | scrypt: 6.0.3 603 | resolution: 604 | integrity: sha512-42LTc1nyFsyv/o0gcHtDztrn+aqpkaCNt5Qh7ATBZfhEZU7IC/0oT/qbBH+uRNoAPvs2fwiOId68FDEoSRA8/A== 605 | /scrypt/6.0.3: 606 | dependencies: 607 | nan: 2.14.0 608 | dev: false 609 | engines: 610 | node: '>= 0.10' 611 | optional: true 612 | requiresBuild: true 613 | resolution: 614 | integrity: sha1-BOAUpWgrU/pQwtXM4WfXGcBthw0= 615 | /scryptsy/1.2.1: 616 | dependencies: 617 | pbkdf2: 3.0.17 618 | dev: false 619 | resolution: 620 | integrity: sha1-oyJfpLJST4AnAHYeKFW987LZIWM= 621 | /secp256k1/3.7.1: 622 | dependencies: 623 | bindings: 1.5.0 624 | bip66: 1.1.5 625 | bn.js: 4.11.8 626 | create-hash: 1.2.0 627 | drbg.js: 1.0.1 628 | elliptic: 6.5.0 629 | nan: 2.14.0 630 | safe-buffer: 5.1.2 631 | dev: false 632 | engines: 633 | node: '>=4.0.0' 634 | requiresBuild: true 635 | resolution: 636 | integrity: sha512-1cf8sbnRreXrQFdH6qsg2H71Xw91fCCS9Yp021GnUNJzWJS/py96fS4lHbnTnouLp08Xj6jBoBB6V78Tdbdu5g== 637 | /setimmediate/1.0.4: 638 | dev: false 639 | resolution: 640 | integrity: sha1-IOgd5iLUoCWIzgyNqJc8vPHTE48= 641 | /sha.js/2.4.11: 642 | dependencies: 643 | inherits: 2.0.4 644 | safe-buffer: 5.1.2 645 | dev: false 646 | hasBin: true 647 | resolution: 648 | integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== 649 | /simple-concat/1.0.0: 650 | dev: false 651 | resolution: 652 | integrity: sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY= 653 | /simple-get/2.8.1: 654 | dependencies: 655 | decompress-response: 3.3.0 656 | once: 1.4.0 657 | simple-concat: 1.0.0 658 | dev: false 659 | resolution: 660 | integrity: sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw== 661 | /strict-uri-encode/1.1.0: 662 | dev: false 663 | engines: 664 | node: '>=0.10.0' 665 | resolution: 666 | integrity: sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= 667 | /string.prototype.trim/1.1.2: 668 | dependencies: 669 | define-properties: 1.1.3 670 | es-abstract: 1.13.0 671 | function-bind: 1.1.1 672 | dev: false 673 | engines: 674 | node: '>= 0.4' 675 | resolution: 676 | integrity: sha1-0E3iyJ4Tf019IG8Ia17S+ua+jOo= 677 | /strip-hex-prefix/1.0.0: 678 | dependencies: 679 | is-hex-prefixed: 1.0.0 680 | dev: false 681 | engines: 682 | node: '>=6.5.0' 683 | npm: '>=3' 684 | resolution: 685 | integrity: sha1-DF8VX+8RUTczd96du1iNoFUA428= 686 | /timed-out/4.0.1: 687 | dev: false 688 | engines: 689 | node: '>=0.10.0' 690 | resolution: 691 | integrity: sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8= 692 | /tslib/1.10.0: 693 | dev: false 694 | resolution: 695 | integrity: sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== 696 | /typedarray-to-buffer/3.1.5: 697 | dependencies: 698 | is-typedarray: 1.0.0 699 | dev: false 700 | resolution: 701 | integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== 702 | /url-parse/1.4.4: 703 | dependencies: 704 | querystringify: 2.1.1 705 | requires-port: 1.0.0 706 | dev: false 707 | resolution: 708 | integrity: sha512-/92DTTorg4JjktLNLe6GPS2/RvAd/RGr6LuktmWSMLEOa6rjnlrFXNgSbSmkNvCoL2T028A0a1JaJLzRMlFoHg== 709 | /url-set-query/1.0.0: 710 | dev: false 711 | resolution: 712 | integrity: sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk= 713 | /utf8/2.1.1: 714 | dev: false 715 | resolution: 716 | integrity: sha1-LgHbAvfY0JRPdxBPFgnrDDBM92g= 717 | /uuid/2.0.1: 718 | dev: false 719 | resolution: 720 | integrity: sha1-wqMN7bPlNdcsz4LjQ5QaULqFM6w= 721 | /uuid/3.3.2: 722 | dev: false 723 | hasBin: true 724 | resolution: 725 | integrity: sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== 726 | /web3-core-helpers/1.0.0-beta.55: 727 | dependencies: 728 | '@babel/runtime': 7.4.5 729 | lodash: 4.17.11 730 | web3-core: 1.0.0-beta.55 731 | web3-eth-iban: 1.0.0-beta.55 732 | web3-utils: 1.0.0-beta.55 733 | dev: false 734 | resolution: 735 | integrity: sha512-suj9Xy/lIqajaYLJTEjr2rlFgu6hGYwChHmf8+qNrC2luZA6kirTamtB9VThWMxbywx7p0bqQFjW6zXogAgWhg== 736 | /web3-core-method/1.0.0-beta.55: 737 | dependencies: 738 | '@babel/runtime': 7.4.5 739 | eventemitter3: 3.1.0 740 | lodash: 4.17.11 741 | rxjs: 6.5.2 742 | web3-core: 1.0.0-beta.55 743 | web3-core-helpers: 1.0.0-beta.55 744 | web3-core-subscriptions: 1.0.0-beta.55 745 | web3-utils: 1.0.0-beta.55 746 | dev: false 747 | resolution: 748 | integrity: sha512-w1cW/s2ji9qGELHk2uMJCn1ooay0JJLVoPD1nvmsW6OTRWcVjxa62nJrFQhe6P5lEb83Xk9oHgmCxZoVUHibOw== 749 | /web3-core-subscriptions/1.0.0-beta.55: 750 | dependencies: 751 | '@babel/runtime': 7.4.5 752 | eventemitter3: 3.1.2 753 | lodash: 4.17.11 754 | dev: false 755 | resolution: 756 | integrity: sha512-pb3oQbUzK7IoyXwag8TYInQddg0rr7BHxKc+Pbs/92hVNQ5ps4iGMVJKezdrjlQ1IJEEUiDIglXl4LZ1hIuMkw== 757 | /web3-core/1.0.0-beta.55: 758 | dependencies: 759 | '@babel/runtime': 7.4.5 760 | '@types/bn.js': 4.11.5 761 | '@types/node': 10.14.10 762 | lodash: 4.17.11 763 | web3-core-method: 1.0.0-beta.55 764 | web3-providers: 1.0.0-beta.55 765 | web3-utils: 1.0.0-beta.55 766 | dev: false 767 | resolution: 768 | integrity: sha512-AMMp7TLEtE7u8IJAu/THrRhBTZyZzeo7Y6GiWYNwb5+KStC9hIGLr9cI1KX9R6ZioTOLRHrqT7awDhnJ1ku2mg== 769 | /web3-eth-abi/1.0.0-beta.55: 770 | dependencies: 771 | '@babel/runtime': 7.4.5 772 | ethers: 4.0.32 773 | lodash: 4.17.11 774 | web3-utils: 1.0.0-beta.55 775 | dev: false 776 | resolution: 777 | integrity: sha512-3h1xnm/vYmKUXTOYAOP0OsB5uijQV76pNNRGKOB6Dq6GR1pbcbD3WrB/4I643YA8l91t5FRzFzUiA3S77R2iqw== 778 | /web3-eth-accounts/1.0.0-beta.55: 779 | dependencies: 780 | '@babel/runtime': 7.4.5 781 | browserify-cipher: 1.0.1 782 | eth-lib: 0.2.8 783 | lodash: 4.17.11 784 | pbkdf2: 3.0.17 785 | randombytes: 2.1.0 786 | scrypt.js: 0.3.0 787 | uuid: 3.3.2 788 | web3-core: 1.0.0-beta.55 789 | web3-core-helpers: 1.0.0-beta.55 790 | web3-core-method: 1.0.0-beta.55 791 | web3-providers: 1.0.0-beta.55 792 | web3-utils: 1.0.0-beta.55 793 | dev: false 794 | resolution: 795 | integrity: sha512-VfzvwpSDHXqRVelIxsBVhgbV9BkFvhJ/q+bKhnVUUXV0JAhMK/7uC92TsqKk4EBYuqpHyZ1jjqrL4n03fMU7zw== 796 | /web3-eth-contract/1.0.0-beta.55: 797 | dependencies: 798 | '@babel/runtime': 7.4.5 799 | '@types/bn.js': 4.11.5 800 | lodash: 4.17.11 801 | web3-core: 1.0.0-beta.55 802 | web3-core-helpers: 1.0.0-beta.55 803 | web3-core-method: 1.0.0-beta.55 804 | web3-core-subscriptions: 1.0.0-beta.55 805 | web3-eth-abi: 1.0.0-beta.55 806 | web3-eth-accounts: 1.0.0-beta.55 807 | web3-providers: 1.0.0-beta.55 808 | web3-utils: 1.0.0-beta.55 809 | dev: false 810 | resolution: 811 | integrity: sha512-v6oB1wfH039/A5sTb4ZTKX++fcBTHEkuQGpq50ATIDoxP/UTz2+6S+iL+3sCJTsByPw2/Bni/HM7NmLkXqzg/Q== 812 | /web3-eth-ens/1.0.0-beta.55: 813 | dependencies: 814 | '@babel/runtime': 7.4.5 815 | eth-ens-namehash: 2.0.8 816 | lodash: 4.17.11 817 | web3-core: 1.0.0-beta.55 818 | web3-core-helpers: 1.0.0-beta.55 819 | web3-core-method: 1.0.0-beta.55 820 | web3-eth-abi: 1.0.0-beta.55 821 | web3-eth-accounts: 1.0.0-beta.55 822 | web3-eth-contract: 1.0.0-beta.55 823 | web3-net: 1.0.0-beta.55 824 | web3-providers: 1.0.0-beta.55 825 | web3-utils: 1.0.0-beta.55 826 | dev: false 827 | resolution: 828 | integrity: sha512-jEL17coO0FJXb7KYq4+7DhVXj0Rh+wHfZ86jOvFUvJsRaUHfqK2TlMatuhD2mbrmxpBYb6oMPnXVnNK9bnD5Rg== 829 | /web3-eth-iban/1.0.0-beta.55: 830 | dependencies: 831 | '@babel/runtime': 7.4.5 832 | bn.js: 4.11.8 833 | web3-utils: 1.0.0-beta.55 834 | dev: false 835 | resolution: 836 | integrity: sha512-a2Fxsb5Mssa+jiXgjUdIzJipE0175IcQXJbZLpKft2+zeSJWNTbaa3PQD2vPPpIM4W789q06N+f9Zc0Fyls+1g== 837 | /web3-eth-personal/1.0.0-beta.55: 838 | dependencies: 839 | '@babel/runtime': 7.4.5 840 | web3-core: 1.0.0-beta.55 841 | web3-core-helpers: 1.0.0-beta.55 842 | web3-core-method: 1.0.0-beta.55 843 | web3-eth-accounts: 1.0.0-beta.55 844 | web3-net: 1.0.0-beta.55 845 | web3-providers: 1.0.0-beta.55 846 | web3-utils: 1.0.0-beta.55 847 | dev: false 848 | resolution: 849 | integrity: sha512-H0mahLQx6Oj7lpgTamKAswr3rHChRUZijeWAar2Hj7BABQlLRKwx8n09nYhxggvvLYQNQS90JjvQue7rAo2LQQ== 850 | /web3-eth/1.0.0-beta.55: 851 | dependencies: 852 | '@babel/runtime': 7.4.5 853 | ethereumjs-tx: 1.3.7 854 | rxjs: 6.5.2 855 | web3-core: 1.0.0-beta.55 856 | web3-core-helpers: 1.0.0-beta.55 857 | web3-core-method: 1.0.0-beta.55 858 | web3-core-subscriptions: 1.0.0-beta.55 859 | web3-eth-abi: 1.0.0-beta.55 860 | web3-eth-accounts: 1.0.0-beta.55 861 | web3-eth-contract: 1.0.0-beta.55 862 | web3-eth-ens: 1.0.0-beta.55 863 | web3-eth-iban: 1.0.0-beta.55 864 | web3-eth-personal: 1.0.0-beta.55 865 | web3-net: 1.0.0-beta.55 866 | web3-providers: 1.0.0-beta.55 867 | web3-utils: 1.0.0-beta.55 868 | dev: false 869 | resolution: 870 | integrity: sha512-F3zJ9I1gOgQdNGfi2Dy2lmj6OqCMJoRN01XHhQZagq0HY1JYMfObtfMi5E3L+qsegsSddHbqp4YY57tKx6uxpA== 871 | /web3-net/1.0.0-beta.55: 872 | dependencies: 873 | '@babel/runtime': 7.4.5 874 | lodash: 4.17.11 875 | web3-core: 1.0.0-beta.55 876 | web3-core-helpers: 1.0.0-beta.55 877 | web3-core-method: 1.0.0-beta.55 878 | web3-providers: 1.0.0-beta.55 879 | web3-utils: 1.0.0-beta.55 880 | dev: false 881 | resolution: 882 | integrity: sha512-do2WY8+/GArJSWX7k/zZ7nBnV9Y3n6LhPYkwT3LeFqDzD515bKwlomaNC8hOaTc6UQyXIoPprYTK2FevL7jrZw== 883 | /web3-providers/1.0.0-beta.55: 884 | dependencies: 885 | '@babel/runtime': 7.4.5 886 | '@types/node': 10.14.10 887 | eventemitter3: 3.1.0 888 | lodash: 4.17.11 889 | url-parse: 1.4.4 890 | web3-core: 1.0.0-beta.55 891 | web3-core-helpers: 1.0.0-beta.55 892 | web3-core-method: 1.0.0-beta.55 893 | web3-utils: 1.0.0-beta.55 894 | websocket: 1.0.28 895 | xhr2-cookies: 1.1.0 896 | dev: false 897 | resolution: 898 | integrity: sha512-MNifc7W+iF6rykpbDR1MuX152jshWdZXHAU9Dk0Ja2/23elhIs4nCWs7wOX9FHrKgdrQbscPoq0uy+0aGzyWVQ== 899 | /web3-shh/1.0.0-beta.55: 900 | dependencies: 901 | '@babel/runtime': 7.4.5 902 | web3-core: 1.0.0-beta.55 903 | web3-core-helpers: 1.0.0-beta.55 904 | web3-core-method: 1.0.0-beta.55 905 | web3-core-subscriptions: 1.0.0-beta.55 906 | web3-net: 1.0.0-beta.55 907 | web3-providers: 1.0.0-beta.55 908 | web3-utils: 1.0.0-beta.55 909 | dev: false 910 | resolution: 911 | integrity: sha512-lGP2HQ/1ThNnfoU8677aL48KsTx4Ht+2KQIn39dGpxVZqysQmovQIltbymVnAr4h8wofwcEz46iNHGa+PAyNzA== 912 | /web3-utils/1.0.0-beta.55: 913 | dependencies: 914 | '@babel/runtime': 7.4.5 915 | '@types/bn.js': 4.11.5 916 | '@types/node': 10.14.10 917 | bn.js: 4.11.8 918 | eth-lib: 0.2.8 919 | ethjs-unit: 0.1.6 920 | lodash: 4.17.11 921 | number-to-bn: 1.7.0 922 | randombytes: 2.1.0 923 | utf8: 2.1.1 924 | dev: false 925 | resolution: 926 | integrity: sha512-ASWqUi8gtWK02Tp8ZtcoAbHenMpQXNvHrakgzvqTNNZn26wgpv+Q4mdPi0KOR6ZgHFL8R/9b5BBoUTglS1WPpg== 927 | /web3/1.0.0-beta.55: 928 | dependencies: 929 | '@babel/runtime': 7.4.5 930 | '@types/node': 10.14.10 931 | web3-core: 1.0.0-beta.55 932 | web3-eth: 1.0.0-beta.55 933 | web3-eth-personal: 1.0.0-beta.55 934 | web3-net: 1.0.0-beta.55 935 | web3-providers: 1.0.0-beta.55 936 | web3-shh: 1.0.0-beta.55 937 | web3-utils: 1.0.0-beta.55 938 | dev: false 939 | requiresBuild: true 940 | resolution: 941 | integrity: sha512-yJpwy4IUA3T/F9hWzYQVn0GbJCrAaZ0KTIO3iuqkhaYH0Y09KV7k4GzFi4hN7hT4cFTj4yIKaeVCwQ5kzvi2Vg== 942 | /websocket/1.0.28: 943 | dependencies: 944 | debug: 2.6.9 945 | nan: 2.14.0 946 | typedarray-to-buffer: 3.1.5 947 | yaeti: 0.0.6 948 | dev: false 949 | engines: 950 | node: '>=0.10.0' 951 | requiresBuild: true 952 | resolution: 953 | integrity: sha512-00y/20/80P7H4bCYkzuuvvfDvh+dgtXi5kzDf3UcZwN6boTYaKvsrtZ5lIYm1Gsg48siMErd9M4zjSYfYFHTrA== 954 | /wrappy/1.0.2: 955 | dev: false 956 | resolution: 957 | integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 958 | /xhr-request-promise/0.1.2: 959 | dependencies: 960 | xhr-request: 1.1.0 961 | dev: false 962 | resolution: 963 | integrity: sha1-NDxE0e53JrhkgGloLQ+EDIO0Jh0= 964 | /xhr-request/1.1.0: 965 | dependencies: 966 | buffer-to-arraybuffer: 0.0.5 967 | object-assign: 4.1.1 968 | query-string: 5.1.1 969 | simple-get: 2.8.1 970 | timed-out: 4.0.1 971 | url-set-query: 1.0.0 972 | xhr: 2.5.0 973 | dev: false 974 | resolution: 975 | integrity: sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA== 976 | /xhr/2.5.0: 977 | dependencies: 978 | global: 4.3.2 979 | is-function: 1.0.1 980 | parse-headers: 2.0.2 981 | xtend: 4.0.1 982 | dev: false 983 | resolution: 984 | integrity: sha512-4nlO/14t3BNUZRXIXfXe+3N6w3s1KoxcJUUURctd64BLRe67E4gRwp4PjywtDY72fXpZ1y6Ch0VZQRY/gMPzzQ== 985 | /xhr2-cookies/1.1.0: 986 | dependencies: 987 | cookiejar: 2.1.2 988 | dev: false 989 | resolution: 990 | integrity: sha1-fXdEnQmZGX8VXLc7I99yUF7YnUg= 991 | /xmlhttprequest/1.8.0: 992 | dev: false 993 | engines: 994 | node: '>=0.4.0' 995 | resolution: 996 | integrity: sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw= 997 | /xtend/4.0.1: 998 | dev: false 999 | engines: 1000 | node: '>=0.4' 1001 | resolution: 1002 | integrity: sha1-pcbVMr5lbiPbgg77lDofBJmNY68= 1003 | /yaeti/0.0.6: 1004 | dev: false 1005 | engines: 1006 | node: '>=0.10.32' 1007 | resolution: 1008 | integrity: sha1-8m9ITXJoTPQr7ft2lwqhYI+/lXc= 1009 | specifiers: 1010 | web3: ^1.0.0-beta.30 1011 | --------------------------------------------------------------------------------