├── .gitignore
├── LICENSE
├── README.md
├── index.js
├── package-lock.json
├── package.json
├── sample.js
└── test
├── app
├── index.html
├── main.js
├── renderer.js
└── test_input.txt
├── basic.js
└── electron.js
/.gitignore:
--------------------------------------------------------------------------------
1 |
2 | # Created by https://www.gitignore.io/api/osx,node,linux
3 |
4 | ### Linux ###
5 | *~
6 |
7 | # temporary files which can be created if a process still has a handle open of a deleted file
8 | .fuse_hidden*
9 |
10 | # KDE directory preferences
11 | .directory
12 |
13 | # Linux trash folder which might appear on any partition or disk
14 | .Trash-*
15 |
16 | # .nfs files are created when an open file is removed but is still being accessed
17 | .nfs*
18 |
19 | ### Node ###
20 | # Logs
21 | logs
22 | *.log
23 | npm-debug.log*
24 | yarn-debug.log*
25 | yarn-error.log*
26 |
27 | # Runtime data
28 | pids
29 | *.pid
30 | *.seed
31 | *.pid.lock
32 |
33 | # Directory for instrumented libs generated by jscoverage/JSCover
34 | lib-cov
35 |
36 | # Coverage directory used by tools like istanbul
37 | coverage
38 |
39 | # nyc test coverage
40 | .nyc_output
41 |
42 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
43 | .grunt
44 |
45 | # Bower dependency directory (https://bower.io/)
46 | bower_components
47 |
48 | # node-waf configuration
49 | .lock-wscript
50 |
51 | # Compiled binary addons (http://nodejs.org/api/addons.html)
52 | build/Release
53 |
54 | # Dependency directories
55 | node_modules/
56 | jspm_packages/
57 |
58 | # Typescript v1 declaration files
59 | typings/
60 |
61 | # Optional npm cache directory
62 | .npm
63 |
64 | # Optional eslint cache
65 | .eslintcache
66 |
67 | # Optional REPL history
68 | .node_repl_history
69 |
70 | # Output of 'npm pack'
71 | *.tgz
72 |
73 | # Yarn Integrity file
74 | .yarn-integrity
75 |
76 | # dotenv environment variables file
77 | .env
78 |
79 |
80 | ### OSX ###
81 | *.DS_Store
82 | .AppleDouble
83 | .LSOverride
84 |
85 | # Icon must end with two \r
86 | Icon
87 |
88 | # Thumbnails
89 | ._*
90 |
91 | # Files that might appear in the root of a volume
92 | .DocumentRevisions-V100
93 | .fseventsd
94 | .Spotlight-V100
95 | .TemporaryItems
96 | .Trashes
97 | .VolumeIcon.icns
98 | .com.apple.timemachine.donotpresent
99 |
100 | # Directories potentially created on remote AFP share
101 | .AppleDB
102 | .AppleDesktop
103 | Network Trash Folder
104 | Temporary Items
105 | .apdisk
106 |
107 | # End of https://www.gitignore.io/api/osx,node,linux
108 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Creative Commons Legal Code
2 |
3 | CC0 1.0 Universal
4 |
5 | CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
6 | LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
7 | ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
8 | INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
9 | REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
10 | PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
11 | THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
12 | HEREUNDER.
13 |
14 | Statement of Purpose
15 |
16 | The laws of most jurisdictions throughout the world automatically confer
17 | exclusive Copyright and Related Rights (defined below) upon the creator
18 | and subsequent owner(s) (each and all, an "owner") of an original work of
19 | authorship and/or a database (each, a "Work").
20 |
21 | Certain owners wish to permanently relinquish those rights to a Work for
22 | the purpose of contributing to a commons of creative, cultural and
23 | scientific works ("Commons") that the public can reliably and without fear
24 | of later claims of infringement build upon, modify, incorporate in other
25 | works, reuse and redistribute as freely as possible in any form whatsoever
26 | and for any purposes, including without limitation commercial purposes.
27 | These owners may contribute to the Commons to promote the ideal of a free
28 | culture and the further production of creative, cultural and scientific
29 | works, or to gain reputation or greater distribution for their Work in
30 | part through the use and efforts of others.
31 |
32 | For these and/or other purposes and motivations, and without any
33 | expectation of additional consideration or compensation, the person
34 | associating CC0 with a Work (the "Affirmer"), to the extent that he or she
35 | is an owner of Copyright and Related Rights in the Work, voluntarily
36 | elects to apply CC0 to the Work and publicly distribute the Work under its
37 | terms, with knowledge of his or her Copyright and Related Rights in the
38 | Work and the meaning and intended legal effect of CC0 on those rights.
39 |
40 | 1. Copyright and Related Rights. A Work made available under CC0 may be
41 | protected by copyright and related or neighboring rights ("Copyright and
42 | Related Rights"). Copyright and Related Rights include, but are not
43 | limited to, the following:
44 |
45 | i. the right to reproduce, adapt, distribute, perform, display,
46 | communicate, and translate a Work;
47 | ii. moral rights retained by the original author(s) and/or performer(s);
48 | iii. publicity and privacy rights pertaining to a person's image or
49 | likeness depicted in a Work;
50 | iv. rights protecting against unfair competition in regards to a Work,
51 | subject to the limitations in paragraph 4(a), below;
52 | v. rights protecting the extraction, dissemination, use and reuse of data
53 | in a Work;
54 | vi. database rights (such as those arising under Directive 96/9/EC of the
55 | European Parliament and of the Council of 11 March 1996 on the legal
56 | protection of databases, and under any national implementation
57 | thereof, including any amended or successor version of such
58 | directive); and
59 | vii. other similar, equivalent or corresponding rights throughout the
60 | world based on applicable law or treaty, and any national
61 | implementations thereof.
62 |
63 | 2. Waiver. To the greatest extent permitted by, but not in contravention
64 | of, applicable law, Affirmer hereby overtly, fully, permanently,
65 | irrevocably and unconditionally waives, abandons, and surrenders all of
66 | Affirmer's Copyright and Related Rights and associated claims and causes
67 | of action, whether now known or unknown (including existing as well as
68 | future claims and causes of action), in the Work (i) in all territories
69 | worldwide, (ii) for the maximum duration provided by applicable law or
70 | treaty (including future time extensions), (iii) in any current or future
71 | medium and for any number of copies, and (iv) for any purpose whatsoever,
72 | including without limitation commercial, advertising or promotional
73 | purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
74 | member of the public at large and to the detriment of Affirmer's heirs and
75 | successors, fully intending that such Waiver shall not be subject to
76 | revocation, rescission, cancellation, termination, or any other legal or
77 | equitable action to disrupt the quiet enjoyment of the Work by the public
78 | as contemplated by Affirmer's express Statement of Purpose.
79 |
80 | 3. Public License Fallback. Should any part of the Waiver for any reason
81 | be judged legally invalid or ineffective under applicable law, then the
82 | Waiver shall be preserved to the maximum extent permitted taking into
83 | account Affirmer's express Statement of Purpose. In addition, to the
84 | extent the Waiver is so judged Affirmer hereby grants to each affected
85 | person a royalty-free, non transferable, non sublicensable, non exclusive,
86 | irrevocable and unconditional license to exercise Affirmer's Copyright and
87 | Related Rights in the Work (i) in all territories worldwide, (ii) for the
88 | maximum duration provided by applicable law or treaty (including future
89 | time extensions), (iii) in any current or future medium and for any number
90 | of copies, and (iv) for any purpose whatsoever, including without
91 | limitation commercial, advertising or promotional purposes (the
92 | "License"). The License shall be deemed effective as of the date CC0 was
93 | applied by Affirmer to the Work. Should any part of the License for any
94 | reason be judged legally invalid or ineffective under applicable law, such
95 | partial invalidity or ineffectiveness shall not invalidate the remainder
96 | of the License, and in such case Affirmer hereby affirms that he or she
97 | will not (i) exercise any of his or her remaining Copyright and Related
98 | Rights in the Work or (ii) assert any associated claims and causes of
99 | action with respect to the Work, in either case contrary to Affirmer's
100 | express Statement of Purpose.
101 |
102 | 4. Limitations and Disclaimers.
103 |
104 | a. No trademark or patent rights held by Affirmer are waived, abandoned,
105 | surrendered, licensed or otherwise affected by this document.
106 | b. Affirmer offers the Work as-is and makes no representations or
107 | warranties of any kind concerning the Work, express, implied,
108 | statutory or otherwise, including without limitation warranties of
109 | title, merchantability, fitness for a particular purpose, non
110 | infringement, or the absence of latent or other defects, accuracy, or
111 | the present or absence of errors, whether or not discoverable, all to
112 | the greatest extent permissible under applicable law.
113 | c. Affirmer disclaims responsibility for clearing rights of other persons
114 | that may apply to the Work or any use thereof, including without
115 | limitation any person's Copyright and Related Rights in the Work.
116 | Further, Affirmer disclaims responsibility for obtaining any necessary
117 | consents, permissions or other rights required for any use of the
118 | Work.
119 | d. Affirmer understands and acknowledges that Creative Commons is not a
120 | party to this document and has no duty or obligation with respect to
121 | this CC0 or use of the Work.
122 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ---
2 |
3 |
4 |
electron-renderify
5 |
Browserify transform to allow bundling for Electron renderer processes
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | ---
17 |
18 | Prefix calls to `require` as `window.require` for node and electron built-in modules. This allows them to work as you would expect in electron processes.
19 |
20 | ## Install
21 |
22 | ```
23 | npm install electron-renderify
24 | ```
25 |
26 | ## Usage
27 |
28 | This module is to be used as a [browserify]() transform.
29 |
30 | Depending on what is in your bundle, and how you are setting up Electron, you may need to apply some or all of the following browserify settings:
31 |
32 | ```js
33 | {
34 | builtins: [],
35 | commonDir: false,
36 | detectGlobals: false,
37 | ignoreMissing: true,
38 | insertGlobalVars: 'global',
39 | browserField: false
40 | }
41 | ```
42 |
43 | The best place to apply the settings is in your `package.json`. That way they will take effect with either CLI or JS api use.
44 |
45 | ### CLI
46 |
47 | ```bash
48 | browserify -t electron-renderify sample.js > bundle.js
49 | ```
50 |
51 | ### JS
52 |
53 | ```js
54 | var browserify = require('browserify')
55 | var renderify = require('electron-renderify')
56 |
57 | var path = require('path')
58 |
59 | browserify()
60 | .transform(renderify)
61 | .add(path.join(__dirname, 'sample.js'))
62 | .bundle()
63 | .pipe(process.stdout)
64 | ```
65 |
66 | ## Options
67 |
68 | You can modify the behaviour of `electron-renderify` by passing options to the transform, like this:
69 |
70 | ```js
71 | browserify()
72 | .transform(renderify, opts)
73 | ```
74 |
75 | The following options are available:
76 |
77 | ### `opts.windowRequire` [Array[String]]
78 |
79 | An array of strings, each of which specifies a module that should use `window.require` instead of plain `require`. This might be required for any native modules (although you should consider moving any such dependencies to the main process).
80 |
81 | Example:
82 |
83 | ```js
84 | var browserify = require('browserify')
85 | var renderify = require('electron-renderify')
86 |
87 | var path = require('path')
88 |
89 | var renderifyOpts = {
90 | windowRequire: ['leveldown']
91 | }
92 |
93 | browserify()
94 | .transform(renderify, renderifyOpts)
95 | .add('somefile-requiring-leveldown.js')
96 | .bundle()
97 | .pipe(process.stdout)
98 | ```
99 |
100 | ## License
101 |
102 | To the extent possible by law, we transfer any rights we have in this code to the public domain. Specifically, we do so using the [CC0 1.0 Universal Public Domain Dedication](https://creativecommons.org/publicdomain/zero/1.0/).
103 |
104 | You can do whatever you want with this code. No need to credit us, link to us, include any license, or anything else. But if you want to do those things, you're free to do that too.
105 |
--------------------------------------------------------------------------------
/index.js:
--------------------------------------------------------------------------------
1 | // replace requires for electron builtin node modules with window.require
2 |
3 | var through = require('through2')
4 | var path = require('path')
5 |
6 | var defaultBlacklist = [
7 | 'assert',
8 | 'buffer',
9 | 'child_process',
10 | 'cluster',
11 | 'console',
12 | 'constants',
13 | 'crypto',
14 | 'dgram',
15 | 'dns',
16 | 'domain',
17 | 'electron',
18 | 'events',
19 | 'fs',
20 | 'http',
21 | 'https',
22 | 'module',
23 | 'net',
24 | 'os',
25 | 'path',
26 | 'punycode',
27 | 'querystring',
28 | 'readline',
29 | 'repl',
30 | 'stream',
31 | '_stream_duplex',
32 | '_stream_passthrough',
33 | '_stream_readable',
34 | '_stream_transform',
35 | '_stream_writable',
36 | 'string_decoder',
37 | 'sys',
38 | 'timers',
39 | 'tls',
40 | 'tty',
41 | 'url',
42 | 'util',
43 | 'vm',
44 | 'zlib',
45 | '_process'
46 | ]
47 |
48 | module.exports = function (file, opts) {
49 | var data = ''
50 |
51 | if (!opts) opts = { windowRequire: [] }
52 |
53 | var blacklist = defaultBlacklist.concat(opts.windowRequire)
54 |
55 | return (path.extname(file) === '.json')
56 | ? through()
57 | : through(ondata, onend)
58 |
59 | function ondata (d, enc, cb) {
60 | data += d
61 | cb()
62 | }
63 |
64 | function onend (cb) {
65 | var replaced = replace(data)
66 | this.push(replaced)
67 | cb()
68 | }
69 |
70 | function blacklisted (mod) {
71 | return blacklist.indexOf(mod.replace(/['"]+/g, '')) !== -1
72 | }
73 |
74 | function replace (code) {
75 | return code.replace(/\srequire\(([^\)]+)\)/g, function (match, mod) {
76 | if (blacklisted(mod)) {
77 | return ' window.require(' + mod + ')'
78 | } else {
79 | return match
80 | }
81 | })
82 | }
83 | }
84 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "electron-renderify",
3 | "version": "0.0.2",
4 | "lockfileVersion": 1,
5 | "requires": true,
6 | "dependencies": {
7 | "@types/node": {
8 | "version": "7.0.39",
9 | "resolved": "https://registry.npmjs.org/@types/node/-/node-7.0.39.tgz",
10 | "integrity": "sha512-KQHAZeVsk4UIT9XaR6cn4WpHZzimK6UBD1UomQKfQQFmTlUHaNBzeuov+TM4+kigLO0IJt4I5OOsshcCyA9gSA==",
11 | "dev": true
12 | },
13 | "ajv": {
14 | "version": "4.11.8",
15 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz",
16 | "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=",
17 | "dev": true,
18 | "requires": {
19 | "co": "4.6.0",
20 | "json-stable-stringify": "1.0.1"
21 | }
22 | },
23 | "ansi-regex": {
24 | "version": "2.1.1",
25 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
26 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
27 | "dev": true
28 | },
29 | "array-filter": {
30 | "version": "0.0.1",
31 | "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz",
32 | "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=",
33 | "dev": true
34 | },
35 | "array-find-index": {
36 | "version": "1.0.2",
37 | "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
38 | "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
39 | "dev": true
40 | },
41 | "array-map": {
42 | "version": "0.0.0",
43 | "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz",
44 | "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=",
45 | "dev": true
46 | },
47 | "array-reduce": {
48 | "version": "0.0.0",
49 | "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz",
50 | "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=",
51 | "dev": true
52 | },
53 | "asn1": {
54 | "version": "0.2.3",
55 | "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
56 | "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=",
57 | "dev": true
58 | },
59 | "asn1.js": {
60 | "version": "4.9.1",
61 | "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.9.1.tgz",
62 | "integrity": "sha1-SLokC0WpKA6UdImQull9IWYX/UA=",
63 | "dev": true,
64 | "requires": {
65 | "bn.js": "4.11.7",
66 | "inherits": "2.0.3",
67 | "minimalistic-assert": "1.0.0"
68 | }
69 | },
70 | "assert": {
71 | "version": "1.4.1",
72 | "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz",
73 | "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=",
74 | "dev": true,
75 | "requires": {
76 | "util": "0.10.3"
77 | }
78 | },
79 | "assert-plus": {
80 | "version": "0.2.0",
81 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz",
82 | "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=",
83 | "dev": true
84 | },
85 | "astw": {
86 | "version": "2.2.0",
87 | "resolved": "https://registry.npmjs.org/astw/-/astw-2.2.0.tgz",
88 | "integrity": "sha1-e9QXhNMkk5h66yOba04cV6hzuRc=",
89 | "dev": true,
90 | "requires": {
91 | "acorn": "4.0.13"
92 | },
93 | "dependencies": {
94 | "acorn": {
95 | "version": "4.0.13",
96 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz",
97 | "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=",
98 | "dev": true
99 | }
100 | }
101 | },
102 | "asynckit": {
103 | "version": "0.4.0",
104 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
105 | "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
106 | "dev": true
107 | },
108 | "aws-sign2": {
109 | "version": "0.6.0",
110 | "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz",
111 | "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=",
112 | "dev": true
113 | },
114 | "aws4": {
115 | "version": "1.6.0",
116 | "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz",
117 | "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=",
118 | "dev": true
119 | },
120 | "balanced-match": {
121 | "version": "1.0.0",
122 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
123 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
124 | "dev": true
125 | },
126 | "base64-js": {
127 | "version": "1.2.1",
128 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.1.tgz",
129 | "integrity": "sha512-dwVUVIXsBZXwTuwnXI9RK8sBmgq09NDHzyR9SAph9eqk76gKK2JSQmZARC2zRC81JC2QTtxD0ARU5qTS25gIGw==",
130 | "dev": true
131 | },
132 | "bcrypt-pbkdf": {
133 | "version": "1.0.1",
134 | "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
135 | "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=",
136 | "dev": true,
137 | "optional": true,
138 | "requires": {
139 | "tweetnacl": "0.14.5"
140 | }
141 | },
142 | "bn.js": {
143 | "version": "4.11.7",
144 | "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.7.tgz",
145 | "integrity": "sha512-LxFiV5mefv0ley0SzqkOPR1bC4EbpPx8LkOz5vMe/Yi15t5hzwgO/G+tc7wOtL4PZTYjwHu8JnEiSLumuSjSfA==",
146 | "dev": true
147 | },
148 | "boom": {
149 | "version": "2.10.1",
150 | "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
151 | "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
152 | "dev": true,
153 | "requires": {
154 | "hoek": "2.16.3"
155 | }
156 | },
157 | "brace-expansion": {
158 | "version": "1.1.8",
159 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz",
160 | "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=",
161 | "dev": true,
162 | "requires": {
163 | "balanced-match": "1.0.0",
164 | "concat-map": "0.0.1"
165 | }
166 | },
167 | "brorand": {
168 | "version": "1.1.0",
169 | "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
170 | "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=",
171 | "dev": true
172 | },
173 | "browser-pack": {
174 | "version": "6.0.2",
175 | "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.0.2.tgz",
176 | "integrity": "sha1-+GzWzvT1MAyOY+B6TVEvZfv/RTE=",
177 | "dev": true,
178 | "requires": {
179 | "combine-source-map": "0.7.2",
180 | "defined": "1.0.0",
181 | "JSONStream": "1.3.1",
182 | "through2": "2.0.3",
183 | "umd": "3.0.1"
184 | },
185 | "dependencies": {
186 | "defined": {
187 | "version": "1.0.0",
188 | "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
189 | "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
190 | "dev": true
191 | },
192 | "isarray": {
193 | "version": "1.0.0",
194 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
195 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
196 | "dev": true
197 | },
198 | "readable-stream": {
199 | "version": "2.3.3",
200 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
201 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
202 | "dev": true,
203 | "requires": {
204 | "core-util-is": "1.0.2",
205 | "inherits": "2.0.3",
206 | "isarray": "1.0.0",
207 | "process-nextick-args": "1.0.7",
208 | "safe-buffer": "5.1.1",
209 | "string_decoder": "1.0.3",
210 | "util-deprecate": "1.0.2"
211 | }
212 | },
213 | "string_decoder": {
214 | "version": "1.0.3",
215 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
216 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
217 | "dev": true,
218 | "requires": {
219 | "safe-buffer": "5.1.1"
220 | }
221 | },
222 | "through2": {
223 | "version": "2.0.3",
224 | "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz",
225 | "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=",
226 | "dev": true,
227 | "requires": {
228 | "readable-stream": "2.3.3",
229 | "xtend": "4.0.1"
230 | }
231 | },
232 | "xtend": {
233 | "version": "4.0.1",
234 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
235 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=",
236 | "dev": true
237 | }
238 | }
239 | },
240 | "browser-resolve": {
241 | "version": "1.11.2",
242 | "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.2.tgz",
243 | "integrity": "sha1-j/CbCixCFxihBRwmCzLkj0QpOM4=",
244 | "dev": true,
245 | "requires": {
246 | "resolve": "1.1.7"
247 | },
248 | "dependencies": {
249 | "resolve": {
250 | "version": "1.1.7",
251 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz",
252 | "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=",
253 | "dev": true
254 | }
255 | }
256 | },
257 | "browserify": {
258 | "version": "14.4.0",
259 | "resolved": "https://registry.npmjs.org/browserify/-/browserify-14.4.0.tgz",
260 | "integrity": "sha1-CJo0Y69Y0OSNjNQHCz90ZU1avKk=",
261 | "dev": true,
262 | "requires": {
263 | "assert": "1.4.1",
264 | "browser-pack": "6.0.2",
265 | "browser-resolve": "1.11.2",
266 | "browserify-zlib": "0.1.4",
267 | "buffer": "5.0.6",
268 | "cached-path-relative": "1.0.1",
269 | "concat-stream": "1.5.2",
270 | "console-browserify": "1.1.0",
271 | "constants-browserify": "1.0.0",
272 | "crypto-browserify": "3.11.1",
273 | "defined": "1.0.0",
274 | "deps-sort": "2.0.0",
275 | "domain-browser": "1.1.7",
276 | "duplexer2": "0.1.4",
277 | "events": "1.1.1",
278 | "glob": "7.1.2",
279 | "has": "1.0.1",
280 | "htmlescape": "1.1.1",
281 | "https-browserify": "1.0.0",
282 | "inherits": "2.0.3",
283 | "insert-module-globals": "7.0.1",
284 | "JSONStream": "1.3.1",
285 | "labeled-stream-splicer": "2.0.0",
286 | "module-deps": "4.1.1",
287 | "os-browserify": "0.1.2",
288 | "parents": "1.0.1",
289 | "path-browserify": "0.0.0",
290 | "process": "0.11.10",
291 | "punycode": "1.4.1",
292 | "querystring-es3": "0.2.1",
293 | "read-only-stream": "2.0.0",
294 | "readable-stream": "2.3.3",
295 | "resolve": "1.3.3",
296 | "shasum": "1.0.2",
297 | "shell-quote": "1.6.1",
298 | "stream-browserify": "2.0.1",
299 | "stream-http": "2.7.2",
300 | "string_decoder": "1.0.3",
301 | "subarg": "1.0.0",
302 | "syntax-error": "1.3.0",
303 | "through2": "2.0.3",
304 | "timers-browserify": "1.4.2",
305 | "tty-browserify": "0.0.0",
306 | "url": "0.11.0",
307 | "util": "0.10.3",
308 | "vm-browserify": "0.0.4",
309 | "xtend": "4.0.1"
310 | },
311 | "dependencies": {
312 | "concat-stream": {
313 | "version": "1.5.2",
314 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz",
315 | "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=",
316 | "dev": true,
317 | "requires": {
318 | "inherits": "2.0.3",
319 | "readable-stream": "2.0.6",
320 | "typedarray": "0.0.6"
321 | },
322 | "dependencies": {
323 | "readable-stream": {
324 | "version": "2.0.6",
325 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz",
326 | "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=",
327 | "dev": true,
328 | "requires": {
329 | "core-util-is": "1.0.2",
330 | "inherits": "2.0.3",
331 | "isarray": "1.0.0",
332 | "process-nextick-args": "1.0.7",
333 | "string_decoder": "0.10.31",
334 | "util-deprecate": "1.0.2"
335 | }
336 | },
337 | "string_decoder": {
338 | "version": "0.10.31",
339 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
340 | "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
341 | "dev": true
342 | }
343 | }
344 | },
345 | "defined": {
346 | "version": "1.0.0",
347 | "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
348 | "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
349 | "dev": true
350 | },
351 | "isarray": {
352 | "version": "1.0.0",
353 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
354 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
355 | "dev": true
356 | },
357 | "readable-stream": {
358 | "version": "2.3.3",
359 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
360 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
361 | "dev": true,
362 | "requires": {
363 | "core-util-is": "1.0.2",
364 | "inherits": "2.0.3",
365 | "isarray": "1.0.0",
366 | "process-nextick-args": "1.0.7",
367 | "safe-buffer": "5.1.1",
368 | "string_decoder": "1.0.3",
369 | "util-deprecate": "1.0.2"
370 | }
371 | },
372 | "string_decoder": {
373 | "version": "1.0.3",
374 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
375 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
376 | "dev": true,
377 | "requires": {
378 | "safe-buffer": "5.1.1"
379 | }
380 | },
381 | "through2": {
382 | "version": "2.0.3",
383 | "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz",
384 | "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=",
385 | "dev": true,
386 | "requires": {
387 | "readable-stream": "2.3.3",
388 | "xtend": "4.0.1"
389 | }
390 | },
391 | "xtend": {
392 | "version": "4.0.1",
393 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
394 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=",
395 | "dev": true
396 | }
397 | }
398 | },
399 | "browserify-aes": {
400 | "version": "1.0.6",
401 | "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.0.6.tgz",
402 | "integrity": "sha1-Xncl297x/Vkw1OurSFZ85FHEigo=",
403 | "dev": true,
404 | "requires": {
405 | "buffer-xor": "1.0.3",
406 | "cipher-base": "1.0.4",
407 | "create-hash": "1.1.3",
408 | "evp_bytestokey": "1.0.0",
409 | "inherits": "2.0.3"
410 | }
411 | },
412 | "browserify-cipher": {
413 | "version": "1.0.0",
414 | "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.0.tgz",
415 | "integrity": "sha1-mYgkSHS/XtTijalWZtzWasj8Njo=",
416 | "dev": true,
417 | "requires": {
418 | "browserify-aes": "1.0.6",
419 | "browserify-des": "1.0.0",
420 | "evp_bytestokey": "1.0.0"
421 | }
422 | },
423 | "browserify-des": {
424 | "version": "1.0.0",
425 | "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.0.tgz",
426 | "integrity": "sha1-2qJ3cXRwki7S/hhZQRihdUOXId0=",
427 | "dev": true,
428 | "requires": {
429 | "cipher-base": "1.0.4",
430 | "des.js": "1.0.0",
431 | "inherits": "2.0.3"
432 | }
433 | },
434 | "browserify-rsa": {
435 | "version": "4.0.1",
436 | "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
437 | "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
438 | "dev": true,
439 | "requires": {
440 | "bn.js": "4.11.7",
441 | "randombytes": "2.0.5"
442 | }
443 | },
444 | "browserify-sign": {
445 | "version": "4.0.4",
446 | "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz",
447 | "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=",
448 | "dev": true,
449 | "requires": {
450 | "bn.js": "4.11.7",
451 | "browserify-rsa": "4.0.1",
452 | "create-hash": "1.1.3",
453 | "create-hmac": "1.1.6",
454 | "elliptic": "6.4.0",
455 | "inherits": "2.0.3",
456 | "parse-asn1": "5.1.0"
457 | }
458 | },
459 | "browserify-zlib": {
460 | "version": "0.1.4",
461 | "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz",
462 | "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=",
463 | "dev": true,
464 | "requires": {
465 | "pako": "0.2.9"
466 | }
467 | },
468 | "buffer": {
469 | "version": "5.0.6",
470 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.0.6.tgz",
471 | "integrity": "sha1-LqZp9+7Atu2gWwj4tf9mGyhXNYg=",
472 | "dev": true,
473 | "requires": {
474 | "base64-js": "1.2.1",
475 | "ieee754": "1.1.8"
476 | }
477 | },
478 | "buffer-xor": {
479 | "version": "1.0.3",
480 | "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
481 | "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
482 | "dev": true
483 | },
484 | "builtin-modules": {
485 | "version": "1.1.1",
486 | "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
487 | "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
488 | "dev": true
489 | },
490 | "builtin-status-codes": {
491 | "version": "3.0.0",
492 | "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
493 | "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=",
494 | "dev": true
495 | },
496 | "cached-path-relative": {
497 | "version": "1.0.1",
498 | "resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.0.1.tgz",
499 | "integrity": "sha1-0JxLUoAKpMB44t2BqGmqyQ0uVOc=",
500 | "dev": true
501 | },
502 | "camelcase": {
503 | "version": "2.1.1",
504 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
505 | "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
506 | "dev": true
507 | },
508 | "camelcase-keys": {
509 | "version": "2.1.0",
510 | "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
511 | "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
512 | "dev": true,
513 | "requires": {
514 | "camelcase": "2.1.1",
515 | "map-obj": "1.0.1"
516 | }
517 | },
518 | "caseless": {
519 | "version": "0.12.0",
520 | "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
521 | "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
522 | "dev": true
523 | },
524 | "cipher-base": {
525 | "version": "1.0.4",
526 | "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
527 | "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
528 | "dev": true,
529 | "requires": {
530 | "inherits": "2.0.3",
531 | "safe-buffer": "5.1.1"
532 | }
533 | },
534 | "co": {
535 | "version": "4.6.0",
536 | "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
537 | "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
538 | "dev": true
539 | },
540 | "code-point-at": {
541 | "version": "1.1.0",
542 | "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
543 | "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
544 | "dev": true
545 | },
546 | "combine-source-map": {
547 | "version": "0.7.2",
548 | "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.7.2.tgz",
549 | "integrity": "sha1-CHAxKFazB6h8xKxIbzqaYq7MwJ4=",
550 | "dev": true,
551 | "requires": {
552 | "convert-source-map": "1.1.3",
553 | "inline-source-map": "0.6.2",
554 | "lodash.memoize": "3.0.4",
555 | "source-map": "0.5.6"
556 | }
557 | },
558 | "combined-stream": {
559 | "version": "1.0.5",
560 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz",
561 | "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=",
562 | "dev": true,
563 | "requires": {
564 | "delayed-stream": "1.0.0"
565 | }
566 | },
567 | "concat-map": {
568 | "version": "0.0.1",
569 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
570 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
571 | "dev": true
572 | },
573 | "concat-stream": {
574 | "version": "1.6.0",
575 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz",
576 | "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=",
577 | "dev": true,
578 | "requires": {
579 | "inherits": "2.0.3",
580 | "readable-stream": "2.3.3",
581 | "typedarray": "0.0.6"
582 | },
583 | "dependencies": {
584 | "isarray": {
585 | "version": "1.0.0",
586 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
587 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
588 | "dev": true
589 | },
590 | "readable-stream": {
591 | "version": "2.3.3",
592 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
593 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
594 | "dev": true,
595 | "requires": {
596 | "core-util-is": "1.0.2",
597 | "inherits": "2.0.3",
598 | "isarray": "1.0.0",
599 | "process-nextick-args": "1.0.7",
600 | "safe-buffer": "5.1.1",
601 | "string_decoder": "1.0.3",
602 | "util-deprecate": "1.0.2"
603 | }
604 | },
605 | "string_decoder": {
606 | "version": "1.0.3",
607 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
608 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
609 | "dev": true,
610 | "requires": {
611 | "safe-buffer": "5.1.1"
612 | }
613 | }
614 | }
615 | },
616 | "console-browserify": {
617 | "version": "1.1.0",
618 | "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz",
619 | "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=",
620 | "dev": true,
621 | "requires": {
622 | "date-now": "0.1.4"
623 | }
624 | },
625 | "constants-browserify": {
626 | "version": "1.0.0",
627 | "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
628 | "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=",
629 | "dev": true
630 | },
631 | "convert-source-map": {
632 | "version": "1.1.3",
633 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz",
634 | "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=",
635 | "dev": true
636 | },
637 | "core-util-is": {
638 | "version": "1.0.2",
639 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
640 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
641 | },
642 | "create-ecdh": {
643 | "version": "4.0.0",
644 | "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz",
645 | "integrity": "sha1-iIxyNZbN92EvZJgjPuvXo1MBc30=",
646 | "dev": true,
647 | "requires": {
648 | "bn.js": "4.11.7",
649 | "elliptic": "6.4.0"
650 | }
651 | },
652 | "create-hash": {
653 | "version": "1.1.3",
654 | "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz",
655 | "integrity": "sha1-YGBCrIuSYnUPSDyt2rD1gZFy2P0=",
656 | "dev": true,
657 | "requires": {
658 | "cipher-base": "1.0.4",
659 | "inherits": "2.0.3",
660 | "ripemd160": "2.0.1",
661 | "sha.js": "2.4.8"
662 | }
663 | },
664 | "create-hmac": {
665 | "version": "1.1.6",
666 | "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz",
667 | "integrity": "sha1-rLniIaThe9sHbpBlfEK5PjcmzwY=",
668 | "dev": true,
669 | "requires": {
670 | "cipher-base": "1.0.4",
671 | "create-hash": "1.1.3",
672 | "inherits": "2.0.3",
673 | "ripemd160": "2.0.1",
674 | "safe-buffer": "5.1.1",
675 | "sha.js": "2.4.8"
676 | }
677 | },
678 | "cryptiles": {
679 | "version": "2.0.5",
680 | "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
681 | "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
682 | "dev": true,
683 | "requires": {
684 | "boom": "2.10.1"
685 | }
686 | },
687 | "crypto-browserify": {
688 | "version": "3.11.1",
689 | "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.11.1.tgz",
690 | "integrity": "sha512-Na7ZlwCOqoaW5RwUK1WpXws2kv8mNhWdTlzob0UXulk6G9BDbyiJaGTYBIX61Ozn9l1EPPJpICZb4DaOpT9NlQ==",
691 | "dev": true,
692 | "requires": {
693 | "browserify-cipher": "1.0.0",
694 | "browserify-sign": "4.0.4",
695 | "create-ecdh": "4.0.0",
696 | "create-hash": "1.1.3",
697 | "create-hmac": "1.1.6",
698 | "diffie-hellman": "5.0.2",
699 | "inherits": "2.0.3",
700 | "pbkdf2": "3.0.12",
701 | "public-encrypt": "4.0.0",
702 | "randombytes": "2.0.5"
703 | }
704 | },
705 | "currently-unhandled": {
706 | "version": "0.4.1",
707 | "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
708 | "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
709 | "dev": true,
710 | "requires": {
711 | "array-find-index": "1.0.2"
712 | }
713 | },
714 | "dashdash": {
715 | "version": "1.14.1",
716 | "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
717 | "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
718 | "dev": true,
719 | "requires": {
720 | "assert-plus": "1.0.0"
721 | },
722 | "dependencies": {
723 | "assert-plus": {
724 | "version": "1.0.0",
725 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
726 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
727 | "dev": true
728 | }
729 | }
730 | },
731 | "date-now": {
732 | "version": "0.1.4",
733 | "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz",
734 | "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=",
735 | "dev": true
736 | },
737 | "debug": {
738 | "version": "2.6.8",
739 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz",
740 | "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=",
741 | "dev": true,
742 | "requires": {
743 | "ms": "2.0.0"
744 | }
745 | },
746 | "decamelize": {
747 | "version": "1.2.0",
748 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
749 | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
750 | "dev": true
751 | },
752 | "deep-equal": {
753 | "version": "0.1.2",
754 | "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-0.1.2.tgz",
755 | "integrity": "sha1-skbCuApXCkfBG+HZvRBw7IeLh84=",
756 | "dev": true
757 | },
758 | "deep-extend": {
759 | "version": "0.4.2",
760 | "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz",
761 | "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=",
762 | "dev": true
763 | },
764 | "define-properties": {
765 | "version": "1.1.2",
766 | "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz",
767 | "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=",
768 | "dev": true,
769 | "requires": {
770 | "foreach": "2.0.5",
771 | "object-keys": "1.0.11"
772 | },
773 | "dependencies": {
774 | "object-keys": {
775 | "version": "1.0.11",
776 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz",
777 | "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=",
778 | "dev": true
779 | }
780 | }
781 | },
782 | "defined": {
783 | "version": "0.0.0",
784 | "resolved": "https://registry.npmjs.org/defined/-/defined-0.0.0.tgz",
785 | "integrity": "sha1-817qfXBekzuvE7LwOz+D2SFAOz4=",
786 | "dev": true
787 | },
788 | "delayed-stream": {
789 | "version": "1.0.0",
790 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
791 | "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
792 | "dev": true
793 | },
794 | "deps-sort": {
795 | "version": "2.0.0",
796 | "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.0.tgz",
797 | "integrity": "sha1-CRckkC6EZYJg65EHSMzNGvbiH7U=",
798 | "dev": true,
799 | "requires": {
800 | "JSONStream": "1.3.1",
801 | "shasum": "1.0.2",
802 | "subarg": "1.0.0",
803 | "through2": "2.0.3"
804 | },
805 | "dependencies": {
806 | "isarray": {
807 | "version": "1.0.0",
808 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
809 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
810 | "dev": true
811 | },
812 | "readable-stream": {
813 | "version": "2.3.3",
814 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
815 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
816 | "dev": true,
817 | "requires": {
818 | "core-util-is": "1.0.2",
819 | "inherits": "2.0.3",
820 | "isarray": "1.0.0",
821 | "process-nextick-args": "1.0.7",
822 | "safe-buffer": "5.1.1",
823 | "string_decoder": "1.0.3",
824 | "util-deprecate": "1.0.2"
825 | }
826 | },
827 | "string_decoder": {
828 | "version": "1.0.3",
829 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
830 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
831 | "dev": true,
832 | "requires": {
833 | "safe-buffer": "5.1.1"
834 | }
835 | },
836 | "through2": {
837 | "version": "2.0.3",
838 | "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz",
839 | "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=",
840 | "dev": true,
841 | "requires": {
842 | "readable-stream": "2.3.3",
843 | "xtend": "4.0.1"
844 | }
845 | },
846 | "xtend": {
847 | "version": "4.0.1",
848 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
849 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=",
850 | "dev": true
851 | }
852 | }
853 | },
854 | "des.js": {
855 | "version": "1.0.0",
856 | "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz",
857 | "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=",
858 | "dev": true,
859 | "requires": {
860 | "inherits": "2.0.3",
861 | "minimalistic-assert": "1.0.0"
862 | }
863 | },
864 | "detective": {
865 | "version": "4.5.0",
866 | "resolved": "https://registry.npmjs.org/detective/-/detective-4.5.0.tgz",
867 | "integrity": "sha1-blqMaybmx6JUsca210kNmOyR7dE=",
868 | "dev": true,
869 | "requires": {
870 | "acorn": "4.0.13",
871 | "defined": "1.0.0"
872 | },
873 | "dependencies": {
874 | "acorn": {
875 | "version": "4.0.13",
876 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz",
877 | "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=",
878 | "dev": true
879 | },
880 | "defined": {
881 | "version": "1.0.0",
882 | "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
883 | "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
884 | "dev": true
885 | }
886 | }
887 | },
888 | "diffie-hellman": {
889 | "version": "5.0.2",
890 | "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz",
891 | "integrity": "sha1-tYNXOScM/ias9jIJn97SoH8gnl4=",
892 | "dev": true,
893 | "requires": {
894 | "bn.js": "4.11.7",
895 | "miller-rabin": "4.0.0",
896 | "randombytes": "2.0.5"
897 | }
898 | },
899 | "domain-browser": {
900 | "version": "1.1.7",
901 | "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.7.tgz",
902 | "integrity": "sha1-hnqksJP6oF8d4IwG9NeyH9+GmLw=",
903 | "dev": true
904 | },
905 | "duplexer": {
906 | "version": "0.1.1",
907 | "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz",
908 | "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=",
909 | "dev": true
910 | },
911 | "duplexer2": {
912 | "version": "0.1.4",
913 | "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
914 | "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=",
915 | "dev": true,
916 | "requires": {
917 | "readable-stream": "2.3.3"
918 | },
919 | "dependencies": {
920 | "isarray": {
921 | "version": "1.0.0",
922 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
923 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
924 | "dev": true
925 | },
926 | "readable-stream": {
927 | "version": "2.3.3",
928 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
929 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
930 | "dev": true,
931 | "requires": {
932 | "core-util-is": "1.0.2",
933 | "inherits": "2.0.3",
934 | "isarray": "1.0.0",
935 | "process-nextick-args": "1.0.7",
936 | "safe-buffer": "5.1.1",
937 | "string_decoder": "1.0.3",
938 | "util-deprecate": "1.0.2"
939 | }
940 | },
941 | "string_decoder": {
942 | "version": "1.0.3",
943 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
944 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
945 | "dev": true,
946 | "requires": {
947 | "safe-buffer": "5.1.1"
948 | }
949 | }
950 | }
951 | },
952 | "ecc-jsbn": {
953 | "version": "0.1.1",
954 | "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz",
955 | "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
956 | "dev": true,
957 | "optional": true,
958 | "requires": {
959 | "jsbn": "0.1.1"
960 | }
961 | },
962 | "electron": {
963 | "version": "1.7.9",
964 | "resolved": "https://registry.npmjs.org/electron/-/electron-1.7.9.tgz",
965 | "integrity": "sha1-rdVOn4+D7QL2UZ7BATX2mLGTNs8=",
966 | "dev": true,
967 | "requires": {
968 | "@types/node": "7.0.39",
969 | "electron-download": "3.3.0",
970 | "extract-zip": "1.6.5"
971 | }
972 | },
973 | "electron-download": {
974 | "version": "3.3.0",
975 | "resolved": "https://registry.npmjs.org/electron-download/-/electron-download-3.3.0.tgz",
976 | "integrity": "sha1-LP1U1pZsAZxNSa1l++Zcyc3vaMg=",
977 | "dev": true,
978 | "requires": {
979 | "debug": "2.6.8",
980 | "fs-extra": "0.30.0",
981 | "home-path": "1.0.5",
982 | "minimist": "1.2.0",
983 | "nugget": "2.0.1",
984 | "path-exists": "2.1.0",
985 | "rc": "1.2.1",
986 | "semver": "5.3.0",
987 | "sumchecker": "1.3.1"
988 | },
989 | "dependencies": {
990 | "minimist": {
991 | "version": "1.2.0",
992 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
993 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
994 | "dev": true
995 | }
996 | }
997 | },
998 | "elliptic": {
999 | "version": "6.4.0",
1000 | "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz",
1001 | "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=",
1002 | "dev": true,
1003 | "requires": {
1004 | "bn.js": "4.11.7",
1005 | "brorand": "1.1.0",
1006 | "hash.js": "1.1.3",
1007 | "hmac-drbg": "1.0.1",
1008 | "inherits": "2.0.3",
1009 | "minimalistic-assert": "1.0.0",
1010 | "minimalistic-crypto-utils": "1.0.1"
1011 | }
1012 | },
1013 | "error-ex": {
1014 | "version": "1.3.1",
1015 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz",
1016 | "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=",
1017 | "dev": true,
1018 | "requires": {
1019 | "is-arrayish": "0.2.1"
1020 | }
1021 | },
1022 | "es-abstract": {
1023 | "version": "1.7.0",
1024 | "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.7.0.tgz",
1025 | "integrity": "sha1-363ndOAb/Nl/lhgCmMRJyGI/uUw=",
1026 | "dev": true,
1027 | "requires": {
1028 | "es-to-primitive": "1.1.1",
1029 | "function-bind": "1.1.0",
1030 | "is-callable": "1.1.3",
1031 | "is-regex": "1.0.4"
1032 | }
1033 | },
1034 | "es-to-primitive": {
1035 | "version": "1.1.1",
1036 | "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz",
1037 | "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=",
1038 | "dev": true,
1039 | "requires": {
1040 | "is-callable": "1.1.3",
1041 | "is-date-object": "1.0.1",
1042 | "is-symbol": "1.0.1"
1043 | }
1044 | },
1045 | "es6-promise": {
1046 | "version": "4.1.1",
1047 | "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.1.1.tgz",
1048 | "integrity": "sha512-OaU1hHjgJf+b0NzsxCg7NdIYERD6Hy/PEmFLTjw+b65scuisG3Kt4QoTvJ66BBkPZ581gr0kpoVzKnxniM8nng==",
1049 | "dev": true
1050 | },
1051 | "events": {
1052 | "version": "1.1.1",
1053 | "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz",
1054 | "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=",
1055 | "dev": true
1056 | },
1057 | "evp_bytestokey": {
1058 | "version": "1.0.0",
1059 | "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz",
1060 | "integrity": "sha1-SXtmrZ/vZc18CKYYCCS6FHa2blM=",
1061 | "dev": true,
1062 | "requires": {
1063 | "create-hash": "1.1.3"
1064 | }
1065 | },
1066 | "extend": {
1067 | "version": "3.0.1",
1068 | "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
1069 | "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=",
1070 | "dev": true
1071 | },
1072 | "extract-zip": {
1073 | "version": "1.6.5",
1074 | "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.5.tgz",
1075 | "integrity": "sha1-maBnNbbqIOqbcF13ms/8yHz/BEA=",
1076 | "dev": true,
1077 | "requires": {
1078 | "concat-stream": "1.6.0",
1079 | "debug": "2.2.0",
1080 | "mkdirp": "0.5.0",
1081 | "yauzl": "2.4.1"
1082 | },
1083 | "dependencies": {
1084 | "debug": {
1085 | "version": "2.2.0",
1086 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz",
1087 | "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=",
1088 | "dev": true,
1089 | "requires": {
1090 | "ms": "0.7.1"
1091 | }
1092 | },
1093 | "ms": {
1094 | "version": "0.7.1",
1095 | "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz",
1096 | "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=",
1097 | "dev": true
1098 | }
1099 | }
1100 | },
1101 | "extsprintf": {
1102 | "version": "1.0.2",
1103 | "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz",
1104 | "integrity": "sha1-4QgOBljjALBilJkMxw4VAiNf1VA=",
1105 | "dev": true
1106 | },
1107 | "faucet": {
1108 | "version": "0.0.1",
1109 | "resolved": "https://registry.npmjs.org/faucet/-/faucet-0.0.1.tgz",
1110 | "integrity": "sha1-WX3PHSGJosBiMhtZHo8VHtIDnZw=",
1111 | "dev": true,
1112 | "requires": {
1113 | "defined": "0.0.0",
1114 | "duplexer": "0.1.1",
1115 | "minimist": "0.0.5",
1116 | "sprintf": "0.1.5",
1117 | "tap-parser": "0.4.3",
1118 | "tape": "2.3.3",
1119 | "through2": "0.2.3"
1120 | },
1121 | "dependencies": {
1122 | "tape": {
1123 | "version": "2.3.3",
1124 | "resolved": "https://registry.npmjs.org/tape/-/tape-2.3.3.tgz",
1125 | "integrity": "sha1-Lnzgox3wn41oUWZKcYQuDKUFevc=",
1126 | "dev": true,
1127 | "requires": {
1128 | "deep-equal": "0.1.2",
1129 | "defined": "0.0.0",
1130 | "inherits": "2.0.3",
1131 | "jsonify": "0.0.0",
1132 | "resumer": "0.0.0",
1133 | "through": "2.3.8"
1134 | }
1135 | },
1136 | "through2": {
1137 | "version": "0.2.3",
1138 | "resolved": "https://registry.npmjs.org/through2/-/through2-0.2.3.tgz",
1139 | "integrity": "sha1-6zKE2k6jEbbMis42U3SKUqvyWj8=",
1140 | "dev": true,
1141 | "requires": {
1142 | "readable-stream": "1.1.14",
1143 | "xtend": "2.1.2"
1144 | }
1145 | }
1146 | }
1147 | },
1148 | "fd-slicer": {
1149 | "version": "1.0.1",
1150 | "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz",
1151 | "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=",
1152 | "dev": true,
1153 | "requires": {
1154 | "pend": "1.2.0"
1155 | }
1156 | },
1157 | "find-up": {
1158 | "version": "1.1.2",
1159 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
1160 | "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
1161 | "dev": true,
1162 | "requires": {
1163 | "path-exists": "2.1.0",
1164 | "pinkie-promise": "2.0.1"
1165 | }
1166 | },
1167 | "for-each": {
1168 | "version": "0.3.2",
1169 | "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.2.tgz",
1170 | "integrity": "sha1-LEBFC5NI6X8oEyJZO6lnBLmr1NQ=",
1171 | "dev": true,
1172 | "requires": {
1173 | "is-function": "1.0.1"
1174 | }
1175 | },
1176 | "foreach": {
1177 | "version": "2.0.5",
1178 | "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz",
1179 | "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=",
1180 | "dev": true
1181 | },
1182 | "forever-agent": {
1183 | "version": "0.6.1",
1184 | "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
1185 | "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
1186 | "dev": true
1187 | },
1188 | "form-data": {
1189 | "version": "2.1.4",
1190 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz",
1191 | "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=",
1192 | "dev": true,
1193 | "requires": {
1194 | "asynckit": "0.4.0",
1195 | "combined-stream": "1.0.5",
1196 | "mime-types": "2.1.15"
1197 | }
1198 | },
1199 | "fs-extra": {
1200 | "version": "0.30.0",
1201 | "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz",
1202 | "integrity": "sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A=",
1203 | "dev": true,
1204 | "requires": {
1205 | "graceful-fs": "4.1.11",
1206 | "jsonfile": "2.4.0",
1207 | "klaw": "1.3.1",
1208 | "path-is-absolute": "1.0.1",
1209 | "rimraf": "2.6.1"
1210 | }
1211 | },
1212 | "fs.realpath": {
1213 | "version": "1.0.0",
1214 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
1215 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
1216 | "dev": true
1217 | },
1218 | "function-bind": {
1219 | "version": "1.1.0",
1220 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.0.tgz",
1221 | "integrity": "sha1-FhdnFMgBeY5Ojyz391KUZ7tKV3E=",
1222 | "dev": true
1223 | },
1224 | "get-stdin": {
1225 | "version": "4.0.1",
1226 | "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
1227 | "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
1228 | "dev": true
1229 | },
1230 | "getpass": {
1231 | "version": "0.1.7",
1232 | "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
1233 | "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
1234 | "dev": true,
1235 | "requires": {
1236 | "assert-plus": "1.0.0"
1237 | },
1238 | "dependencies": {
1239 | "assert-plus": {
1240 | "version": "1.0.0",
1241 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
1242 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
1243 | "dev": true
1244 | }
1245 | }
1246 | },
1247 | "glob": {
1248 | "version": "7.1.2",
1249 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
1250 | "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
1251 | "dev": true,
1252 | "requires": {
1253 | "fs.realpath": "1.0.0",
1254 | "inflight": "1.0.6",
1255 | "inherits": "2.0.3",
1256 | "minimatch": "3.0.4",
1257 | "once": "1.4.0",
1258 | "path-is-absolute": "1.0.1"
1259 | }
1260 | },
1261 | "graceful-fs": {
1262 | "version": "4.1.11",
1263 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
1264 | "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
1265 | "dev": true
1266 | },
1267 | "har-schema": {
1268 | "version": "1.0.5",
1269 | "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz",
1270 | "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=",
1271 | "dev": true
1272 | },
1273 | "har-validator": {
1274 | "version": "4.2.1",
1275 | "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz",
1276 | "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=",
1277 | "dev": true,
1278 | "requires": {
1279 | "ajv": "4.11.8",
1280 | "har-schema": "1.0.5"
1281 | }
1282 | },
1283 | "has": {
1284 | "version": "1.0.1",
1285 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz",
1286 | "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=",
1287 | "dev": true,
1288 | "requires": {
1289 | "function-bind": "1.1.0"
1290 | }
1291 | },
1292 | "hash-base": {
1293 | "version": "2.0.2",
1294 | "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz",
1295 | "integrity": "sha1-ZuodhW206KVHDK32/OI65SRO8uE=",
1296 | "dev": true,
1297 | "requires": {
1298 | "inherits": "2.0.3"
1299 | }
1300 | },
1301 | "hash.js": {
1302 | "version": "1.1.3",
1303 | "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz",
1304 | "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==",
1305 | "dev": true,
1306 | "requires": {
1307 | "inherits": "2.0.3",
1308 | "minimalistic-assert": "1.0.0"
1309 | }
1310 | },
1311 | "hawk": {
1312 | "version": "3.1.3",
1313 | "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz",
1314 | "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=",
1315 | "dev": true,
1316 | "requires": {
1317 | "boom": "2.10.1",
1318 | "cryptiles": "2.0.5",
1319 | "hoek": "2.16.3",
1320 | "sntp": "1.0.9"
1321 | }
1322 | },
1323 | "hmac-drbg": {
1324 | "version": "1.0.1",
1325 | "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
1326 | "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
1327 | "dev": true,
1328 | "requires": {
1329 | "hash.js": "1.1.3",
1330 | "minimalistic-assert": "1.0.0",
1331 | "minimalistic-crypto-utils": "1.0.1"
1332 | }
1333 | },
1334 | "hoek": {
1335 | "version": "2.16.3",
1336 | "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
1337 | "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=",
1338 | "dev": true
1339 | },
1340 | "home-path": {
1341 | "version": "1.0.5",
1342 | "resolved": "https://registry.npmjs.org/home-path/-/home-path-1.0.5.tgz",
1343 | "integrity": "sha1-eIspgVsS1Tus9XVkhHbm+QQdEz8=",
1344 | "dev": true
1345 | },
1346 | "hosted-git-info": {
1347 | "version": "2.5.0",
1348 | "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz",
1349 | "integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==",
1350 | "dev": true
1351 | },
1352 | "htmlescape": {
1353 | "version": "1.1.1",
1354 | "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz",
1355 | "integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E=",
1356 | "dev": true
1357 | },
1358 | "http-signature": {
1359 | "version": "1.1.1",
1360 | "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz",
1361 | "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=",
1362 | "dev": true,
1363 | "requires": {
1364 | "assert-plus": "0.2.0",
1365 | "jsprim": "1.4.0",
1366 | "sshpk": "1.13.1"
1367 | }
1368 | },
1369 | "https-browserify": {
1370 | "version": "1.0.0",
1371 | "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
1372 | "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=",
1373 | "dev": true
1374 | },
1375 | "ieee754": {
1376 | "version": "1.1.8",
1377 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz",
1378 | "integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q=",
1379 | "dev": true
1380 | },
1381 | "indent-string": {
1382 | "version": "2.1.0",
1383 | "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
1384 | "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
1385 | "dev": true,
1386 | "requires": {
1387 | "repeating": "2.0.1"
1388 | }
1389 | },
1390 | "indexof": {
1391 | "version": "0.0.1",
1392 | "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz",
1393 | "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=",
1394 | "dev": true
1395 | },
1396 | "inflight": {
1397 | "version": "1.0.6",
1398 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
1399 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
1400 | "dev": true,
1401 | "requires": {
1402 | "once": "1.4.0",
1403 | "wrappy": "1.0.2"
1404 | }
1405 | },
1406 | "inherits": {
1407 | "version": "2.0.3",
1408 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
1409 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
1410 | },
1411 | "ini": {
1412 | "version": "1.3.4",
1413 | "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.4.tgz",
1414 | "integrity": "sha1-BTfLedr1m1mhpRff9wbIbsA5Fi4=",
1415 | "dev": true
1416 | },
1417 | "inline-source-map": {
1418 | "version": "0.6.2",
1419 | "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz",
1420 | "integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=",
1421 | "dev": true,
1422 | "requires": {
1423 | "source-map": "0.5.6"
1424 | }
1425 | },
1426 | "insert-module-globals": {
1427 | "version": "7.0.1",
1428 | "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.0.1.tgz",
1429 | "integrity": "sha1-wDv04BywhtW15azorQr+eInWOMM=",
1430 | "dev": true,
1431 | "requires": {
1432 | "combine-source-map": "0.7.2",
1433 | "concat-stream": "1.5.2",
1434 | "is-buffer": "1.1.5",
1435 | "JSONStream": "1.3.1",
1436 | "lexical-scope": "1.2.0",
1437 | "process": "0.11.10",
1438 | "through2": "2.0.3",
1439 | "xtend": "4.0.1"
1440 | },
1441 | "dependencies": {
1442 | "concat-stream": {
1443 | "version": "1.5.2",
1444 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz",
1445 | "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=",
1446 | "dev": true,
1447 | "requires": {
1448 | "inherits": "2.0.3",
1449 | "readable-stream": "2.0.6",
1450 | "typedarray": "0.0.6"
1451 | }
1452 | },
1453 | "isarray": {
1454 | "version": "1.0.0",
1455 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
1456 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
1457 | "dev": true
1458 | },
1459 | "readable-stream": {
1460 | "version": "2.0.6",
1461 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz",
1462 | "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=",
1463 | "dev": true,
1464 | "requires": {
1465 | "core-util-is": "1.0.2",
1466 | "inherits": "2.0.3",
1467 | "isarray": "1.0.0",
1468 | "process-nextick-args": "1.0.7",
1469 | "string_decoder": "0.10.31",
1470 | "util-deprecate": "1.0.2"
1471 | }
1472 | },
1473 | "through2": {
1474 | "version": "2.0.3",
1475 | "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz",
1476 | "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=",
1477 | "dev": true,
1478 | "requires": {
1479 | "readable-stream": "2.3.3",
1480 | "xtend": "4.0.1"
1481 | },
1482 | "dependencies": {
1483 | "readable-stream": {
1484 | "version": "2.3.3",
1485 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
1486 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
1487 | "dev": true,
1488 | "requires": {
1489 | "core-util-is": "1.0.2",
1490 | "inherits": "2.0.3",
1491 | "isarray": "1.0.0",
1492 | "process-nextick-args": "1.0.7",
1493 | "safe-buffer": "5.1.1",
1494 | "string_decoder": "1.0.3",
1495 | "util-deprecate": "1.0.2"
1496 | }
1497 | },
1498 | "string_decoder": {
1499 | "version": "1.0.3",
1500 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
1501 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
1502 | "dev": true,
1503 | "requires": {
1504 | "safe-buffer": "5.1.1"
1505 | }
1506 | }
1507 | }
1508 | },
1509 | "xtend": {
1510 | "version": "4.0.1",
1511 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
1512 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=",
1513 | "dev": true
1514 | }
1515 | }
1516 | },
1517 | "is-arrayish": {
1518 | "version": "0.2.1",
1519 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
1520 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
1521 | "dev": true
1522 | },
1523 | "is-buffer": {
1524 | "version": "1.1.5",
1525 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.5.tgz",
1526 | "integrity": "sha1-Hzsm72E7IUuIy8ojzGwB2Hlh7sw=",
1527 | "dev": true
1528 | },
1529 | "is-builtin-module": {
1530 | "version": "1.0.0",
1531 | "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz",
1532 | "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=",
1533 | "dev": true,
1534 | "requires": {
1535 | "builtin-modules": "1.1.1"
1536 | }
1537 | },
1538 | "is-callable": {
1539 | "version": "1.1.3",
1540 | "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz",
1541 | "integrity": "sha1-hut1OSgF3cM69xySoO7fdO52BLI=",
1542 | "dev": true
1543 | },
1544 | "is-date-object": {
1545 | "version": "1.0.1",
1546 | "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz",
1547 | "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=",
1548 | "dev": true
1549 | },
1550 | "is-finite": {
1551 | "version": "1.0.2",
1552 | "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz",
1553 | "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=",
1554 | "dev": true,
1555 | "requires": {
1556 | "number-is-nan": "1.0.1"
1557 | }
1558 | },
1559 | "is-fullwidth-code-point": {
1560 | "version": "1.0.0",
1561 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
1562 | "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
1563 | "dev": true,
1564 | "requires": {
1565 | "number-is-nan": "1.0.1"
1566 | }
1567 | },
1568 | "is-function": {
1569 | "version": "1.0.1",
1570 | "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.1.tgz",
1571 | "integrity": "sha1-Es+5i2W1fdPRk6MSH19uL0N2ArU=",
1572 | "dev": true
1573 | },
1574 | "is-regex": {
1575 | "version": "1.0.4",
1576 | "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz",
1577 | "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=",
1578 | "dev": true,
1579 | "requires": {
1580 | "has": "1.0.1"
1581 | }
1582 | },
1583 | "is-symbol": {
1584 | "version": "1.0.1",
1585 | "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz",
1586 | "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=",
1587 | "dev": true
1588 | },
1589 | "is-typedarray": {
1590 | "version": "1.0.0",
1591 | "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
1592 | "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
1593 | "dev": true
1594 | },
1595 | "is-utf8": {
1596 | "version": "0.2.1",
1597 | "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
1598 | "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
1599 | "dev": true
1600 | },
1601 | "isarray": {
1602 | "version": "0.0.1",
1603 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
1604 | "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
1605 | "dev": true
1606 | },
1607 | "isstream": {
1608 | "version": "0.1.2",
1609 | "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
1610 | "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
1611 | "dev": true
1612 | },
1613 | "jsbn": {
1614 | "version": "0.1.1",
1615 | "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
1616 | "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
1617 | "dev": true,
1618 | "optional": true
1619 | },
1620 | "json-schema": {
1621 | "version": "0.2.3",
1622 | "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
1623 | "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=",
1624 | "dev": true
1625 | },
1626 | "json-stable-stringify": {
1627 | "version": "1.0.1",
1628 | "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz",
1629 | "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=",
1630 | "dev": true,
1631 | "requires": {
1632 | "jsonify": "0.0.0"
1633 | }
1634 | },
1635 | "json-stringify-safe": {
1636 | "version": "5.0.1",
1637 | "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
1638 | "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
1639 | "dev": true
1640 | },
1641 | "jsonfile": {
1642 | "version": "2.4.0",
1643 | "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz",
1644 | "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=",
1645 | "dev": true,
1646 | "requires": {
1647 | "graceful-fs": "4.1.11"
1648 | }
1649 | },
1650 | "jsonify": {
1651 | "version": "0.0.0",
1652 | "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
1653 | "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=",
1654 | "dev": true
1655 | },
1656 | "jsonparse": {
1657 | "version": "1.3.1",
1658 | "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
1659 | "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=",
1660 | "dev": true
1661 | },
1662 | "JSONStream": {
1663 | "version": "1.3.1",
1664 | "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.1.tgz",
1665 | "integrity": "sha1-cH92HgHa6eFvG8+TcDt4xwlmV5o=",
1666 | "dev": true,
1667 | "requires": {
1668 | "jsonparse": "1.3.1",
1669 | "through": "2.3.8"
1670 | }
1671 | },
1672 | "jsprim": {
1673 | "version": "1.4.0",
1674 | "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.0.tgz",
1675 | "integrity": "sha1-o7h+QCmNjDgFUtjMdiigu5WiKRg=",
1676 | "dev": true,
1677 | "requires": {
1678 | "assert-plus": "1.0.0",
1679 | "extsprintf": "1.0.2",
1680 | "json-schema": "0.2.3",
1681 | "verror": "1.3.6"
1682 | },
1683 | "dependencies": {
1684 | "assert-plus": {
1685 | "version": "1.0.0",
1686 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
1687 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
1688 | "dev": true
1689 | }
1690 | }
1691 | },
1692 | "klaw": {
1693 | "version": "1.3.1",
1694 | "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz",
1695 | "integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=",
1696 | "dev": true,
1697 | "requires": {
1698 | "graceful-fs": "4.1.11"
1699 | }
1700 | },
1701 | "labeled-stream-splicer": {
1702 | "version": "2.0.0",
1703 | "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.0.tgz",
1704 | "integrity": "sha1-pS4dE4AkwAuGscDJH2d5GLiuClk=",
1705 | "dev": true,
1706 | "requires": {
1707 | "inherits": "2.0.3",
1708 | "isarray": "0.0.1",
1709 | "stream-splicer": "2.0.0"
1710 | }
1711 | },
1712 | "lexical-scope": {
1713 | "version": "1.2.0",
1714 | "resolved": "https://registry.npmjs.org/lexical-scope/-/lexical-scope-1.2.0.tgz",
1715 | "integrity": "sha1-/Ope3HBKSzqHls3KQZw6CvryLfQ=",
1716 | "dev": true,
1717 | "requires": {
1718 | "astw": "2.2.0"
1719 | }
1720 | },
1721 | "load-json-file": {
1722 | "version": "1.1.0",
1723 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
1724 | "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
1725 | "dev": true,
1726 | "requires": {
1727 | "graceful-fs": "4.1.11",
1728 | "parse-json": "2.2.0",
1729 | "pify": "2.3.0",
1730 | "pinkie-promise": "2.0.1",
1731 | "strip-bom": "2.0.0"
1732 | }
1733 | },
1734 | "lodash.memoize": {
1735 | "version": "3.0.4",
1736 | "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz",
1737 | "integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=",
1738 | "dev": true
1739 | },
1740 | "loud-rejection": {
1741 | "version": "1.6.0",
1742 | "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
1743 | "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
1744 | "dev": true,
1745 | "requires": {
1746 | "currently-unhandled": "0.4.1",
1747 | "signal-exit": "3.0.2"
1748 | }
1749 | },
1750 | "map-obj": {
1751 | "version": "1.0.1",
1752 | "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
1753 | "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
1754 | "dev": true
1755 | },
1756 | "meow": {
1757 | "version": "3.7.0",
1758 | "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
1759 | "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
1760 | "dev": true,
1761 | "requires": {
1762 | "camelcase-keys": "2.1.0",
1763 | "decamelize": "1.2.0",
1764 | "loud-rejection": "1.6.0",
1765 | "map-obj": "1.0.1",
1766 | "minimist": "1.2.0",
1767 | "normalize-package-data": "2.4.0",
1768 | "object-assign": "4.1.1",
1769 | "read-pkg-up": "1.0.1",
1770 | "redent": "1.0.0",
1771 | "trim-newlines": "1.0.0"
1772 | },
1773 | "dependencies": {
1774 | "minimist": {
1775 | "version": "1.2.0",
1776 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
1777 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
1778 | "dev": true
1779 | }
1780 | }
1781 | },
1782 | "miller-rabin": {
1783 | "version": "4.0.0",
1784 | "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.0.tgz",
1785 | "integrity": "sha1-SmL7HUKTPAVYOYL0xxb2+55sbT0=",
1786 | "dev": true,
1787 | "requires": {
1788 | "bn.js": "4.11.7",
1789 | "brorand": "1.1.0"
1790 | }
1791 | },
1792 | "mime-db": {
1793 | "version": "1.27.0",
1794 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.27.0.tgz",
1795 | "integrity": "sha1-gg9XIpa70g7CXtVeW13oaeVDbrE=",
1796 | "dev": true
1797 | },
1798 | "mime-types": {
1799 | "version": "2.1.15",
1800 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.15.tgz",
1801 | "integrity": "sha1-pOv1BkCUVpI3uM9wBGd20J/JKu0=",
1802 | "dev": true,
1803 | "requires": {
1804 | "mime-db": "1.27.0"
1805 | }
1806 | },
1807 | "minimalistic-assert": {
1808 | "version": "1.0.0",
1809 | "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz",
1810 | "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=",
1811 | "dev": true
1812 | },
1813 | "minimalistic-crypto-utils": {
1814 | "version": "1.0.1",
1815 | "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
1816 | "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=",
1817 | "dev": true
1818 | },
1819 | "minimatch": {
1820 | "version": "3.0.4",
1821 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
1822 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
1823 | "dev": true,
1824 | "requires": {
1825 | "brace-expansion": "1.1.8"
1826 | }
1827 | },
1828 | "minimist": {
1829 | "version": "0.0.5",
1830 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.5.tgz",
1831 | "integrity": "sha1-16oye87PUY+RBqxrjwA/o7zqhWY=",
1832 | "dev": true
1833 | },
1834 | "mkdirp": {
1835 | "version": "0.5.0",
1836 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz",
1837 | "integrity": "sha1-HXMHam35hs2TROFecfzAWkyavxI=",
1838 | "dev": true,
1839 | "requires": {
1840 | "minimist": "0.0.8"
1841 | },
1842 | "dependencies": {
1843 | "minimist": {
1844 | "version": "0.0.8",
1845 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
1846 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
1847 | "dev": true
1848 | }
1849 | }
1850 | },
1851 | "module-deps": {
1852 | "version": "4.1.1",
1853 | "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-4.1.1.tgz",
1854 | "integrity": "sha1-IyFYM/HaE/1gbMuAh7RIUty4If0=",
1855 | "dev": true,
1856 | "requires": {
1857 | "browser-resolve": "1.11.2",
1858 | "cached-path-relative": "1.0.1",
1859 | "concat-stream": "1.5.2",
1860 | "defined": "1.0.0",
1861 | "detective": "4.5.0",
1862 | "duplexer2": "0.1.4",
1863 | "inherits": "2.0.3",
1864 | "JSONStream": "1.3.1",
1865 | "parents": "1.0.1",
1866 | "readable-stream": "2.3.3",
1867 | "resolve": "1.3.3",
1868 | "stream-combiner2": "1.1.1",
1869 | "subarg": "1.0.0",
1870 | "through2": "2.0.3",
1871 | "xtend": "4.0.1"
1872 | },
1873 | "dependencies": {
1874 | "concat-stream": {
1875 | "version": "1.5.2",
1876 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz",
1877 | "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=",
1878 | "dev": true,
1879 | "requires": {
1880 | "inherits": "2.0.3",
1881 | "readable-stream": "2.0.6",
1882 | "typedarray": "0.0.6"
1883 | },
1884 | "dependencies": {
1885 | "readable-stream": {
1886 | "version": "2.0.6",
1887 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz",
1888 | "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=",
1889 | "dev": true,
1890 | "requires": {
1891 | "core-util-is": "1.0.2",
1892 | "inherits": "2.0.3",
1893 | "isarray": "1.0.0",
1894 | "process-nextick-args": "1.0.7",
1895 | "string_decoder": "0.10.31",
1896 | "util-deprecate": "1.0.2"
1897 | }
1898 | }
1899 | }
1900 | },
1901 | "defined": {
1902 | "version": "1.0.0",
1903 | "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
1904 | "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
1905 | "dev": true
1906 | },
1907 | "isarray": {
1908 | "version": "1.0.0",
1909 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
1910 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
1911 | "dev": true
1912 | },
1913 | "readable-stream": {
1914 | "version": "2.3.3",
1915 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
1916 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
1917 | "dev": true,
1918 | "requires": {
1919 | "core-util-is": "1.0.2",
1920 | "inherits": "2.0.3",
1921 | "isarray": "1.0.0",
1922 | "process-nextick-args": "1.0.7",
1923 | "safe-buffer": "5.1.1",
1924 | "string_decoder": "1.0.3",
1925 | "util-deprecate": "1.0.2"
1926 | },
1927 | "dependencies": {
1928 | "string_decoder": {
1929 | "version": "1.0.3",
1930 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
1931 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
1932 | "dev": true,
1933 | "requires": {
1934 | "safe-buffer": "5.1.1"
1935 | }
1936 | }
1937 | }
1938 | },
1939 | "through2": {
1940 | "version": "2.0.3",
1941 | "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz",
1942 | "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=",
1943 | "dev": true,
1944 | "requires": {
1945 | "readable-stream": "2.3.3",
1946 | "xtend": "4.0.1"
1947 | }
1948 | },
1949 | "xtend": {
1950 | "version": "4.0.1",
1951 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
1952 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=",
1953 | "dev": true
1954 | }
1955 | }
1956 | },
1957 | "ms": {
1958 | "version": "2.0.0",
1959 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
1960 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
1961 | "dev": true
1962 | },
1963 | "normalize-package-data": {
1964 | "version": "2.4.0",
1965 | "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz",
1966 | "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==",
1967 | "dev": true,
1968 | "requires": {
1969 | "hosted-git-info": "2.5.0",
1970 | "is-builtin-module": "1.0.0",
1971 | "semver": "5.3.0",
1972 | "validate-npm-package-license": "3.0.1"
1973 | }
1974 | },
1975 | "nugget": {
1976 | "version": "2.0.1",
1977 | "resolved": "https://registry.npmjs.org/nugget/-/nugget-2.0.1.tgz",
1978 | "integrity": "sha1-IBCVpIfhrTYIGzQy+jytpPjQcbA=",
1979 | "dev": true,
1980 | "requires": {
1981 | "debug": "2.6.8",
1982 | "minimist": "1.2.0",
1983 | "pretty-bytes": "1.0.4",
1984 | "progress-stream": "1.2.0",
1985 | "request": "2.81.0",
1986 | "single-line-log": "1.1.2",
1987 | "throttleit": "0.0.2"
1988 | },
1989 | "dependencies": {
1990 | "minimist": {
1991 | "version": "1.2.0",
1992 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
1993 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
1994 | "dev": true
1995 | }
1996 | }
1997 | },
1998 | "number-is-nan": {
1999 | "version": "1.0.1",
2000 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
2001 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
2002 | "dev": true
2003 | },
2004 | "oauth-sign": {
2005 | "version": "0.8.2",
2006 | "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz",
2007 | "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=",
2008 | "dev": true
2009 | },
2010 | "object-assign": {
2011 | "version": "4.1.1",
2012 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
2013 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
2014 | "dev": true
2015 | },
2016 | "object-inspect": {
2017 | "version": "1.2.2",
2018 | "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.2.2.tgz",
2019 | "integrity": "sha1-yCEV5PzIiK6hTWTCLk8X9qcNXlo=",
2020 | "dev": true
2021 | },
2022 | "object-keys": {
2023 | "version": "0.4.0",
2024 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz",
2025 | "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=",
2026 | "dev": true
2027 | },
2028 | "once": {
2029 | "version": "1.4.0",
2030 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
2031 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
2032 | "dev": true,
2033 | "requires": {
2034 | "wrappy": "1.0.2"
2035 | }
2036 | },
2037 | "os-browserify": {
2038 | "version": "0.1.2",
2039 | "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.1.2.tgz",
2040 | "integrity": "sha1-ScoCk+CxlZCl9d4Qx/JlphfY/lQ=",
2041 | "dev": true
2042 | },
2043 | "pako": {
2044 | "version": "0.2.9",
2045 | "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz",
2046 | "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=",
2047 | "dev": true
2048 | },
2049 | "parents": {
2050 | "version": "1.0.1",
2051 | "resolved": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz",
2052 | "integrity": "sha1-/t1NK/GTp3dF/nHjcdc8MwfZx1E=",
2053 | "dev": true,
2054 | "requires": {
2055 | "path-platform": "0.11.15"
2056 | }
2057 | },
2058 | "parse-asn1": {
2059 | "version": "5.1.0",
2060 | "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.0.tgz",
2061 | "integrity": "sha1-N8T5t+06tlx0gXtfJICTf7+XxxI=",
2062 | "dev": true,
2063 | "requires": {
2064 | "asn1.js": "4.9.1",
2065 | "browserify-aes": "1.0.6",
2066 | "create-hash": "1.1.3",
2067 | "evp_bytestokey": "1.0.0",
2068 | "pbkdf2": "3.0.12"
2069 | }
2070 | },
2071 | "parse-json": {
2072 | "version": "2.2.0",
2073 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
2074 | "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
2075 | "dev": true,
2076 | "requires": {
2077 | "error-ex": "1.3.1"
2078 | }
2079 | },
2080 | "path-browserify": {
2081 | "version": "0.0.0",
2082 | "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz",
2083 | "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=",
2084 | "dev": true
2085 | },
2086 | "path-exists": {
2087 | "version": "2.1.0",
2088 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
2089 | "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
2090 | "dev": true,
2091 | "requires": {
2092 | "pinkie-promise": "2.0.1"
2093 | }
2094 | },
2095 | "path-is-absolute": {
2096 | "version": "1.0.1",
2097 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
2098 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
2099 | "dev": true
2100 | },
2101 | "path-parse": {
2102 | "version": "1.0.5",
2103 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz",
2104 | "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=",
2105 | "dev": true
2106 | },
2107 | "path-platform": {
2108 | "version": "0.11.15",
2109 | "resolved": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz",
2110 | "integrity": "sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I=",
2111 | "dev": true
2112 | },
2113 | "path-type": {
2114 | "version": "1.1.0",
2115 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
2116 | "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
2117 | "dev": true,
2118 | "requires": {
2119 | "graceful-fs": "4.1.11",
2120 | "pify": "2.3.0",
2121 | "pinkie-promise": "2.0.1"
2122 | }
2123 | },
2124 | "pbkdf2": {
2125 | "version": "3.0.12",
2126 | "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.12.tgz",
2127 | "integrity": "sha1-vjZ4XFBn6kjYBv+SMojF91C2uKI=",
2128 | "dev": true,
2129 | "requires": {
2130 | "create-hash": "1.1.3",
2131 | "create-hmac": "1.1.6",
2132 | "ripemd160": "2.0.1",
2133 | "safe-buffer": "5.1.1",
2134 | "sha.js": "2.4.8"
2135 | }
2136 | },
2137 | "pend": {
2138 | "version": "1.2.0",
2139 | "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
2140 | "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=",
2141 | "dev": true
2142 | },
2143 | "performance-now": {
2144 | "version": "0.2.0",
2145 | "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz",
2146 | "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=",
2147 | "dev": true
2148 | },
2149 | "pify": {
2150 | "version": "2.3.0",
2151 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
2152 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
2153 | "dev": true
2154 | },
2155 | "pinkie": {
2156 | "version": "2.0.4",
2157 | "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
2158 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
2159 | "dev": true
2160 | },
2161 | "pinkie-promise": {
2162 | "version": "2.0.1",
2163 | "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
2164 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
2165 | "dev": true,
2166 | "requires": {
2167 | "pinkie": "2.0.4"
2168 | }
2169 | },
2170 | "pretty-bytes": {
2171 | "version": "1.0.4",
2172 | "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-1.0.4.tgz",
2173 | "integrity": "sha1-CiLoIQYJrTVUL4yNXSFZr/B1HIQ=",
2174 | "dev": true,
2175 | "requires": {
2176 | "get-stdin": "4.0.1",
2177 | "meow": "3.7.0"
2178 | }
2179 | },
2180 | "process": {
2181 | "version": "0.11.10",
2182 | "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
2183 | "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=",
2184 | "dev": true
2185 | },
2186 | "process-nextick-args": {
2187 | "version": "1.0.7",
2188 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
2189 | "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M="
2190 | },
2191 | "progress-stream": {
2192 | "version": "1.2.0",
2193 | "resolved": "https://registry.npmjs.org/progress-stream/-/progress-stream-1.2.0.tgz",
2194 | "integrity": "sha1-LNPP6jO6OonJwSHsM0er6asSX3c=",
2195 | "dev": true,
2196 | "requires": {
2197 | "speedometer": "0.1.4",
2198 | "through2": "0.2.3"
2199 | },
2200 | "dependencies": {
2201 | "through2": {
2202 | "version": "0.2.3",
2203 | "resolved": "https://registry.npmjs.org/through2/-/through2-0.2.3.tgz",
2204 | "integrity": "sha1-6zKE2k6jEbbMis42U3SKUqvyWj8=",
2205 | "dev": true,
2206 | "requires": {
2207 | "readable-stream": "1.1.14",
2208 | "xtend": "2.1.2"
2209 | }
2210 | }
2211 | }
2212 | },
2213 | "public-encrypt": {
2214 | "version": "4.0.0",
2215 | "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz",
2216 | "integrity": "sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY=",
2217 | "dev": true,
2218 | "requires": {
2219 | "bn.js": "4.11.7",
2220 | "browserify-rsa": "4.0.1",
2221 | "create-hash": "1.1.3",
2222 | "parse-asn1": "5.1.0",
2223 | "randombytes": "2.0.5"
2224 | }
2225 | },
2226 | "punycode": {
2227 | "version": "1.4.1",
2228 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
2229 | "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
2230 | "dev": true
2231 | },
2232 | "qs": {
2233 | "version": "6.4.0",
2234 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz",
2235 | "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=",
2236 | "dev": true
2237 | },
2238 | "querystring": {
2239 | "version": "0.2.0",
2240 | "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
2241 | "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=",
2242 | "dev": true
2243 | },
2244 | "querystring-es3": {
2245 | "version": "0.2.1",
2246 | "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz",
2247 | "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=",
2248 | "dev": true
2249 | },
2250 | "randombytes": {
2251 | "version": "2.0.5",
2252 | "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.5.tgz",
2253 | "integrity": "sha512-8T7Zn1AhMsQ/HI1SjcCfT/t4ii3eAqco3yOcSzS4mozsOz69lHLsoMXmF9nZgnFanYscnSlUSgs8uZyKzpE6kg==",
2254 | "dev": true,
2255 | "requires": {
2256 | "safe-buffer": "5.1.1"
2257 | }
2258 | },
2259 | "rc": {
2260 | "version": "1.2.1",
2261 | "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.1.tgz",
2262 | "integrity": "sha1-LgPo5C7kULjLPc5lvhv4l04d/ZU=",
2263 | "dev": true,
2264 | "requires": {
2265 | "deep-extend": "0.4.2",
2266 | "ini": "1.3.4",
2267 | "minimist": "1.2.0",
2268 | "strip-json-comments": "2.0.1"
2269 | },
2270 | "dependencies": {
2271 | "minimist": {
2272 | "version": "1.2.0",
2273 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
2274 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
2275 | "dev": true
2276 | }
2277 | }
2278 | },
2279 | "read-only-stream": {
2280 | "version": "2.0.0",
2281 | "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz",
2282 | "integrity": "sha1-JyT9aoET1zdkrCiNQ4YnDB2/F/A=",
2283 | "dev": true,
2284 | "requires": {
2285 | "readable-stream": "2.3.3"
2286 | },
2287 | "dependencies": {
2288 | "isarray": {
2289 | "version": "1.0.0",
2290 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
2291 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
2292 | "dev": true
2293 | },
2294 | "readable-stream": {
2295 | "version": "2.3.3",
2296 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
2297 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
2298 | "dev": true,
2299 | "requires": {
2300 | "core-util-is": "1.0.2",
2301 | "inherits": "2.0.3",
2302 | "isarray": "1.0.0",
2303 | "process-nextick-args": "1.0.7",
2304 | "safe-buffer": "5.1.1",
2305 | "string_decoder": "1.0.3",
2306 | "util-deprecate": "1.0.2"
2307 | }
2308 | },
2309 | "string_decoder": {
2310 | "version": "1.0.3",
2311 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
2312 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
2313 | "dev": true,
2314 | "requires": {
2315 | "safe-buffer": "5.1.1"
2316 | }
2317 | }
2318 | }
2319 | },
2320 | "read-pkg": {
2321 | "version": "1.1.0",
2322 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
2323 | "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
2324 | "dev": true,
2325 | "requires": {
2326 | "load-json-file": "1.1.0",
2327 | "normalize-package-data": "2.4.0",
2328 | "path-type": "1.1.0"
2329 | }
2330 | },
2331 | "read-pkg-up": {
2332 | "version": "1.0.1",
2333 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
2334 | "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
2335 | "dev": true,
2336 | "requires": {
2337 | "find-up": "1.1.2",
2338 | "read-pkg": "1.1.0"
2339 | }
2340 | },
2341 | "readable-stream": {
2342 | "version": "1.1.14",
2343 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
2344 | "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
2345 | "dev": true,
2346 | "requires": {
2347 | "core-util-is": "1.0.2",
2348 | "inherits": "2.0.3",
2349 | "isarray": "0.0.1",
2350 | "string_decoder": "0.10.31"
2351 | }
2352 | },
2353 | "redent": {
2354 | "version": "1.0.0",
2355 | "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
2356 | "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
2357 | "dev": true,
2358 | "requires": {
2359 | "indent-string": "2.1.0",
2360 | "strip-indent": "1.0.1"
2361 | }
2362 | },
2363 | "repeating": {
2364 | "version": "2.0.1",
2365 | "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
2366 | "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
2367 | "dev": true,
2368 | "requires": {
2369 | "is-finite": "1.0.2"
2370 | }
2371 | },
2372 | "request": {
2373 | "version": "2.81.0",
2374 | "resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz",
2375 | "integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=",
2376 | "dev": true,
2377 | "requires": {
2378 | "aws-sign2": "0.6.0",
2379 | "aws4": "1.6.0",
2380 | "caseless": "0.12.0",
2381 | "combined-stream": "1.0.5",
2382 | "extend": "3.0.1",
2383 | "forever-agent": "0.6.1",
2384 | "form-data": "2.1.4",
2385 | "har-validator": "4.2.1",
2386 | "hawk": "3.1.3",
2387 | "http-signature": "1.1.1",
2388 | "is-typedarray": "1.0.0",
2389 | "isstream": "0.1.2",
2390 | "json-stringify-safe": "5.0.1",
2391 | "mime-types": "2.1.15",
2392 | "oauth-sign": "0.8.2",
2393 | "performance-now": "0.2.0",
2394 | "qs": "6.4.0",
2395 | "safe-buffer": "5.1.1",
2396 | "stringstream": "0.0.5",
2397 | "tough-cookie": "2.3.2",
2398 | "tunnel-agent": "0.6.0",
2399 | "uuid": "3.1.0"
2400 | }
2401 | },
2402 | "resolve": {
2403 | "version": "1.3.3",
2404 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.3.3.tgz",
2405 | "integrity": "sha1-ZVkHw0aahoDcLeOidaj91paR8OU=",
2406 | "dev": true,
2407 | "requires": {
2408 | "path-parse": "1.0.5"
2409 | }
2410 | },
2411 | "resumer": {
2412 | "version": "0.0.0",
2413 | "resolved": "https://registry.npmjs.org/resumer/-/resumer-0.0.0.tgz",
2414 | "integrity": "sha1-8ej0YeQGS6Oegq883CqMiT0HZ1k=",
2415 | "dev": true,
2416 | "requires": {
2417 | "through": "2.3.8"
2418 | }
2419 | },
2420 | "rimraf": {
2421 | "version": "2.6.1",
2422 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.1.tgz",
2423 | "integrity": "sha1-wjOOxkPfeht/5cVPqG9XQopV8z0=",
2424 | "dev": true,
2425 | "requires": {
2426 | "glob": "7.1.2"
2427 | }
2428 | },
2429 | "ripemd160": {
2430 | "version": "2.0.1",
2431 | "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz",
2432 | "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=",
2433 | "dev": true,
2434 | "requires": {
2435 | "hash-base": "2.0.2",
2436 | "inherits": "2.0.3"
2437 | }
2438 | },
2439 | "safe-buffer": {
2440 | "version": "5.1.1",
2441 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
2442 | "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg=="
2443 | },
2444 | "semver": {
2445 | "version": "5.3.0",
2446 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
2447 | "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=",
2448 | "dev": true
2449 | },
2450 | "sha.js": {
2451 | "version": "2.4.8",
2452 | "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.8.tgz",
2453 | "integrity": "sha1-NwaMLEdra69ALRSknGf1l5IfY08=",
2454 | "dev": true,
2455 | "requires": {
2456 | "inherits": "2.0.3"
2457 | }
2458 | },
2459 | "shasum": {
2460 | "version": "1.0.2",
2461 | "resolved": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz",
2462 | "integrity": "sha1-5wEjENj0F/TetXEhUOVni4euVl8=",
2463 | "dev": true,
2464 | "requires": {
2465 | "json-stable-stringify": "0.0.1",
2466 | "sha.js": "2.4.8"
2467 | },
2468 | "dependencies": {
2469 | "json-stable-stringify": {
2470 | "version": "0.0.1",
2471 | "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz",
2472 | "integrity": "sha1-YRwj6BTbN1Un34URk9tZ3Sryf0U=",
2473 | "dev": true,
2474 | "requires": {
2475 | "jsonify": "0.0.0"
2476 | }
2477 | }
2478 | }
2479 | },
2480 | "shell-quote": {
2481 | "version": "1.6.1",
2482 | "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz",
2483 | "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=",
2484 | "dev": true,
2485 | "requires": {
2486 | "array-filter": "0.0.1",
2487 | "array-map": "0.0.0",
2488 | "array-reduce": "0.0.0",
2489 | "jsonify": "0.0.0"
2490 | }
2491 | },
2492 | "signal-exit": {
2493 | "version": "3.0.2",
2494 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
2495 | "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
2496 | "dev": true
2497 | },
2498 | "single-line-log": {
2499 | "version": "1.1.2",
2500 | "resolved": "https://registry.npmjs.org/single-line-log/-/single-line-log-1.1.2.tgz",
2501 | "integrity": "sha1-wvg/Jzo+GhbtsJlWYdoO1e8DM2Q=",
2502 | "dev": true,
2503 | "requires": {
2504 | "string-width": "1.0.2"
2505 | }
2506 | },
2507 | "sntp": {
2508 | "version": "1.0.9",
2509 | "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz",
2510 | "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=",
2511 | "dev": true,
2512 | "requires": {
2513 | "hoek": "2.16.3"
2514 | }
2515 | },
2516 | "source-map": {
2517 | "version": "0.5.6",
2518 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz",
2519 | "integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI=",
2520 | "dev": true
2521 | },
2522 | "spdx-correct": {
2523 | "version": "1.0.2",
2524 | "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz",
2525 | "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=",
2526 | "dev": true,
2527 | "requires": {
2528 | "spdx-license-ids": "1.2.2"
2529 | }
2530 | },
2531 | "spdx-expression-parse": {
2532 | "version": "1.0.4",
2533 | "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz",
2534 | "integrity": "sha1-m98vIOH0DtRH++JzJmGR/O1RYmw=",
2535 | "dev": true
2536 | },
2537 | "spdx-license-ids": {
2538 | "version": "1.2.2",
2539 | "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz",
2540 | "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=",
2541 | "dev": true
2542 | },
2543 | "speedometer": {
2544 | "version": "0.1.4",
2545 | "resolved": "https://registry.npmjs.org/speedometer/-/speedometer-0.1.4.tgz",
2546 | "integrity": "sha1-mHbb0qFp0xFUAtSObqYynIgWpQ0=",
2547 | "dev": true
2548 | },
2549 | "sprintf": {
2550 | "version": "0.1.5",
2551 | "resolved": "https://registry.npmjs.org/sprintf/-/sprintf-0.1.5.tgz",
2552 | "integrity": "sha1-j4PjmpMXwaUCy324BQ5Rxnn27c8=",
2553 | "dev": true
2554 | },
2555 | "sshpk": {
2556 | "version": "1.13.1",
2557 | "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz",
2558 | "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=",
2559 | "dev": true,
2560 | "requires": {
2561 | "asn1": "0.2.3",
2562 | "assert-plus": "1.0.0",
2563 | "bcrypt-pbkdf": "1.0.1",
2564 | "dashdash": "1.14.1",
2565 | "ecc-jsbn": "0.1.1",
2566 | "getpass": "0.1.7",
2567 | "jsbn": "0.1.1",
2568 | "tweetnacl": "0.14.5"
2569 | },
2570 | "dependencies": {
2571 | "assert-plus": {
2572 | "version": "1.0.0",
2573 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
2574 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
2575 | "dev": true
2576 | }
2577 | }
2578 | },
2579 | "stream-browserify": {
2580 | "version": "2.0.1",
2581 | "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz",
2582 | "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=",
2583 | "dev": true,
2584 | "requires": {
2585 | "inherits": "2.0.3",
2586 | "readable-stream": "2.3.3"
2587 | },
2588 | "dependencies": {
2589 | "isarray": {
2590 | "version": "1.0.0",
2591 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
2592 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
2593 | "dev": true
2594 | },
2595 | "readable-stream": {
2596 | "version": "2.3.3",
2597 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
2598 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
2599 | "dev": true,
2600 | "requires": {
2601 | "core-util-is": "1.0.2",
2602 | "inherits": "2.0.3",
2603 | "isarray": "1.0.0",
2604 | "process-nextick-args": "1.0.7",
2605 | "safe-buffer": "5.1.1",
2606 | "string_decoder": "1.0.3",
2607 | "util-deprecate": "1.0.2"
2608 | }
2609 | },
2610 | "string_decoder": {
2611 | "version": "1.0.3",
2612 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
2613 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
2614 | "dev": true,
2615 | "requires": {
2616 | "safe-buffer": "5.1.1"
2617 | }
2618 | }
2619 | }
2620 | },
2621 | "stream-combiner2": {
2622 | "version": "1.1.1",
2623 | "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz",
2624 | "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=",
2625 | "dev": true,
2626 | "requires": {
2627 | "duplexer2": "0.1.4",
2628 | "readable-stream": "2.3.3"
2629 | },
2630 | "dependencies": {
2631 | "isarray": {
2632 | "version": "1.0.0",
2633 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
2634 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
2635 | "dev": true
2636 | },
2637 | "readable-stream": {
2638 | "version": "2.3.3",
2639 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
2640 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
2641 | "dev": true,
2642 | "requires": {
2643 | "core-util-is": "1.0.2",
2644 | "inherits": "2.0.3",
2645 | "isarray": "1.0.0",
2646 | "process-nextick-args": "1.0.7",
2647 | "safe-buffer": "5.1.1",
2648 | "string_decoder": "1.0.3",
2649 | "util-deprecate": "1.0.2"
2650 | }
2651 | },
2652 | "string_decoder": {
2653 | "version": "1.0.3",
2654 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
2655 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
2656 | "dev": true,
2657 | "requires": {
2658 | "safe-buffer": "5.1.1"
2659 | }
2660 | }
2661 | }
2662 | },
2663 | "stream-http": {
2664 | "version": "2.7.2",
2665 | "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.7.2.tgz",
2666 | "integrity": "sha512-c0yTD2rbQzXtSsFSVhtpvY/vS6u066PcXOX9kBB3mSO76RiUQzL340uJkGBWnlBg4/HZzqiUXtaVA7wcRcJgEw==",
2667 | "dev": true,
2668 | "requires": {
2669 | "builtin-status-codes": "3.0.0",
2670 | "inherits": "2.0.3",
2671 | "readable-stream": "2.3.3",
2672 | "to-arraybuffer": "1.0.1",
2673 | "xtend": "4.0.1"
2674 | },
2675 | "dependencies": {
2676 | "isarray": {
2677 | "version": "1.0.0",
2678 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
2679 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
2680 | "dev": true
2681 | },
2682 | "readable-stream": {
2683 | "version": "2.3.3",
2684 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
2685 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
2686 | "dev": true,
2687 | "requires": {
2688 | "core-util-is": "1.0.2",
2689 | "inherits": "2.0.3",
2690 | "isarray": "1.0.0",
2691 | "process-nextick-args": "1.0.7",
2692 | "safe-buffer": "5.1.1",
2693 | "string_decoder": "1.0.3",
2694 | "util-deprecate": "1.0.2"
2695 | }
2696 | },
2697 | "string_decoder": {
2698 | "version": "1.0.3",
2699 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
2700 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
2701 | "dev": true,
2702 | "requires": {
2703 | "safe-buffer": "5.1.1"
2704 | }
2705 | },
2706 | "xtend": {
2707 | "version": "4.0.1",
2708 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
2709 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=",
2710 | "dev": true
2711 | }
2712 | }
2713 | },
2714 | "stream-splicer": {
2715 | "version": "2.0.0",
2716 | "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.0.tgz",
2717 | "integrity": "sha1-G2O+Q4oTPktnHMGTUZdgAXWRDYM=",
2718 | "dev": true,
2719 | "requires": {
2720 | "inherits": "2.0.3",
2721 | "readable-stream": "2.3.3"
2722 | },
2723 | "dependencies": {
2724 | "isarray": {
2725 | "version": "1.0.0",
2726 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
2727 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
2728 | "dev": true
2729 | },
2730 | "readable-stream": {
2731 | "version": "2.3.3",
2732 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
2733 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
2734 | "dev": true,
2735 | "requires": {
2736 | "core-util-is": "1.0.2",
2737 | "inherits": "2.0.3",
2738 | "isarray": "1.0.0",
2739 | "process-nextick-args": "1.0.7",
2740 | "safe-buffer": "5.1.1",
2741 | "string_decoder": "1.0.3",
2742 | "util-deprecate": "1.0.2"
2743 | }
2744 | },
2745 | "string_decoder": {
2746 | "version": "1.0.3",
2747 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
2748 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
2749 | "dev": true,
2750 | "requires": {
2751 | "safe-buffer": "5.1.1"
2752 | }
2753 | }
2754 | }
2755 | },
2756 | "string_decoder": {
2757 | "version": "0.10.31",
2758 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
2759 | "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
2760 | "dev": true
2761 | },
2762 | "string-width": {
2763 | "version": "1.0.2",
2764 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
2765 | "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
2766 | "dev": true,
2767 | "requires": {
2768 | "code-point-at": "1.1.0",
2769 | "is-fullwidth-code-point": "1.0.0",
2770 | "strip-ansi": "3.0.1"
2771 | }
2772 | },
2773 | "string.prototype.trim": {
2774 | "version": "1.1.2",
2775 | "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.1.2.tgz",
2776 | "integrity": "sha1-0E3iyJ4Tf019IG8Ia17S+ua+jOo=",
2777 | "dev": true,
2778 | "requires": {
2779 | "define-properties": "1.1.2",
2780 | "es-abstract": "1.7.0",
2781 | "function-bind": "1.1.0"
2782 | }
2783 | },
2784 | "stringstream": {
2785 | "version": "0.0.5",
2786 | "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz",
2787 | "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=",
2788 | "dev": true
2789 | },
2790 | "strip-ansi": {
2791 | "version": "3.0.1",
2792 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
2793 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
2794 | "dev": true,
2795 | "requires": {
2796 | "ansi-regex": "2.1.1"
2797 | }
2798 | },
2799 | "strip-bom": {
2800 | "version": "2.0.0",
2801 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
2802 | "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
2803 | "dev": true,
2804 | "requires": {
2805 | "is-utf8": "0.2.1"
2806 | }
2807 | },
2808 | "strip-indent": {
2809 | "version": "1.0.1",
2810 | "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
2811 | "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
2812 | "dev": true,
2813 | "requires": {
2814 | "get-stdin": "4.0.1"
2815 | }
2816 | },
2817 | "strip-json-comments": {
2818 | "version": "2.0.1",
2819 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
2820 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=",
2821 | "dev": true
2822 | },
2823 | "subarg": {
2824 | "version": "1.0.0",
2825 | "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz",
2826 | "integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=",
2827 | "dev": true,
2828 | "requires": {
2829 | "minimist": "1.2.0"
2830 | },
2831 | "dependencies": {
2832 | "minimist": {
2833 | "version": "1.2.0",
2834 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
2835 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
2836 | "dev": true
2837 | }
2838 | }
2839 | },
2840 | "sumchecker": {
2841 | "version": "1.3.1",
2842 | "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-1.3.1.tgz",
2843 | "integrity": "sha1-ebs7RFbdBPGOvbwNcDodHa7FEF0=",
2844 | "dev": true,
2845 | "requires": {
2846 | "debug": "2.6.8",
2847 | "es6-promise": "4.1.1"
2848 | }
2849 | },
2850 | "syntax-error": {
2851 | "version": "1.3.0",
2852 | "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.3.0.tgz",
2853 | "integrity": "sha1-HtkmbE1AvnXcVb+bsct3Biu5bKE=",
2854 | "dev": true,
2855 | "requires": {
2856 | "acorn": "4.0.13"
2857 | },
2858 | "dependencies": {
2859 | "acorn": {
2860 | "version": "4.0.13",
2861 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz",
2862 | "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=",
2863 | "dev": true
2864 | }
2865 | }
2866 | },
2867 | "tap-parser": {
2868 | "version": "0.4.3",
2869 | "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-0.4.3.tgz",
2870 | "integrity": "sha1-pOrhkMENdsehEZIf84u+TVjwnuo=",
2871 | "dev": true,
2872 | "requires": {
2873 | "inherits": "2.0.3",
2874 | "readable-stream": "1.1.14"
2875 | }
2876 | },
2877 | "tape": {
2878 | "version": "4.7.0",
2879 | "resolved": "https://registry.npmjs.org/tape/-/tape-4.7.0.tgz",
2880 | "integrity": "sha512-ePzu2KfZYVtq0v+KKGxBJ9HJWYZ4MaQWeGabD+KpVdMKRen3NJPf6EiwA5BxfMkhQPGtCwnOFWelcB39bhOUng==",
2881 | "dev": true,
2882 | "requires": {
2883 | "deep-equal": "1.0.1",
2884 | "defined": "1.0.0",
2885 | "for-each": "0.3.2",
2886 | "function-bind": "1.1.0",
2887 | "glob": "7.1.2",
2888 | "has": "1.0.1",
2889 | "inherits": "2.0.3",
2890 | "minimist": "1.2.0",
2891 | "object-inspect": "1.2.2",
2892 | "resolve": "1.3.3",
2893 | "resumer": "0.0.0",
2894 | "string.prototype.trim": "1.1.2",
2895 | "through": "2.3.8"
2896 | },
2897 | "dependencies": {
2898 | "deep-equal": {
2899 | "version": "1.0.1",
2900 | "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz",
2901 | "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=",
2902 | "dev": true
2903 | },
2904 | "defined": {
2905 | "version": "1.0.0",
2906 | "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
2907 | "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
2908 | "dev": true
2909 | },
2910 | "minimist": {
2911 | "version": "1.2.0",
2912 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
2913 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
2914 | "dev": true
2915 | }
2916 | }
2917 | },
2918 | "throttleit": {
2919 | "version": "0.0.2",
2920 | "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-0.0.2.tgz",
2921 | "integrity": "sha1-z+34jmDADdlpe2H90qg0OptoDq8=",
2922 | "dev": true
2923 | },
2924 | "through": {
2925 | "version": "2.3.8",
2926 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
2927 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
2928 | "dev": true
2929 | },
2930 | "through2": {
2931 | "version": "2.0.3",
2932 | "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz",
2933 | "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=",
2934 | "requires": {
2935 | "readable-stream": "2.3.3",
2936 | "xtend": "4.0.1"
2937 | },
2938 | "dependencies": {
2939 | "isarray": {
2940 | "version": "1.0.0",
2941 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
2942 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
2943 | },
2944 | "readable-stream": {
2945 | "version": "2.3.3",
2946 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz",
2947 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==",
2948 | "requires": {
2949 | "core-util-is": "1.0.2",
2950 | "inherits": "2.0.3",
2951 | "isarray": "1.0.0",
2952 | "process-nextick-args": "1.0.7",
2953 | "safe-buffer": "5.1.1",
2954 | "string_decoder": "1.0.3",
2955 | "util-deprecate": "1.0.2"
2956 | }
2957 | },
2958 | "string_decoder": {
2959 | "version": "1.0.3",
2960 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
2961 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
2962 | "requires": {
2963 | "safe-buffer": "5.1.1"
2964 | }
2965 | },
2966 | "xtend": {
2967 | "version": "4.0.1",
2968 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
2969 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68="
2970 | }
2971 | }
2972 | },
2973 | "timers-browserify": {
2974 | "version": "1.4.2",
2975 | "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz",
2976 | "integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=",
2977 | "dev": true,
2978 | "requires": {
2979 | "process": "0.11.10"
2980 | }
2981 | },
2982 | "to-arraybuffer": {
2983 | "version": "1.0.1",
2984 | "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz",
2985 | "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=",
2986 | "dev": true
2987 | },
2988 | "tough-cookie": {
2989 | "version": "2.3.2",
2990 | "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.2.tgz",
2991 | "integrity": "sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo=",
2992 | "dev": true,
2993 | "requires": {
2994 | "punycode": "1.4.1"
2995 | }
2996 | },
2997 | "trim-newlines": {
2998 | "version": "1.0.0",
2999 | "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
3000 | "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
3001 | "dev": true
3002 | },
3003 | "tty-browserify": {
3004 | "version": "0.0.0",
3005 | "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz",
3006 | "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=",
3007 | "dev": true
3008 | },
3009 | "tunnel-agent": {
3010 | "version": "0.6.0",
3011 | "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
3012 | "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
3013 | "dev": true,
3014 | "requires": {
3015 | "safe-buffer": "5.1.1"
3016 | }
3017 | },
3018 | "tweetnacl": {
3019 | "version": "0.14.5",
3020 | "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
3021 | "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
3022 | "dev": true,
3023 | "optional": true
3024 | },
3025 | "typedarray": {
3026 | "version": "0.0.6",
3027 | "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
3028 | "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
3029 | "dev": true
3030 | },
3031 | "umd": {
3032 | "version": "3.0.1",
3033 | "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.1.tgz",
3034 | "integrity": "sha1-iuVW4RAR9jwllnCKiDclnwGz1g4=",
3035 | "dev": true
3036 | },
3037 | "url": {
3038 | "version": "0.11.0",
3039 | "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz",
3040 | "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=",
3041 | "dev": true,
3042 | "requires": {
3043 | "punycode": "1.3.2",
3044 | "querystring": "0.2.0"
3045 | },
3046 | "dependencies": {
3047 | "punycode": {
3048 | "version": "1.3.2",
3049 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
3050 | "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=",
3051 | "dev": true
3052 | }
3053 | }
3054 | },
3055 | "util": {
3056 | "version": "0.10.3",
3057 | "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
3058 | "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
3059 | "dev": true,
3060 | "requires": {
3061 | "inherits": "2.0.1"
3062 | },
3063 | "dependencies": {
3064 | "inherits": {
3065 | "version": "2.0.1",
3066 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
3067 | "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
3068 | "dev": true
3069 | }
3070 | }
3071 | },
3072 | "util-deprecate": {
3073 | "version": "1.0.2",
3074 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
3075 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
3076 | },
3077 | "uuid": {
3078 | "version": "3.1.0",
3079 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz",
3080 | "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==",
3081 | "dev": true
3082 | },
3083 | "validate-npm-package-license": {
3084 | "version": "3.0.1",
3085 | "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz",
3086 | "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=",
3087 | "dev": true,
3088 | "requires": {
3089 | "spdx-correct": "1.0.2",
3090 | "spdx-expression-parse": "1.0.4"
3091 | }
3092 | },
3093 | "verror": {
3094 | "version": "1.3.6",
3095 | "resolved": "https://registry.npmjs.org/verror/-/verror-1.3.6.tgz",
3096 | "integrity": "sha1-z/XfEpRtKX0rqu+qJoniW+AcAFw=",
3097 | "dev": true,
3098 | "requires": {
3099 | "extsprintf": "1.0.2"
3100 | }
3101 | },
3102 | "vm-browserify": {
3103 | "version": "0.0.4",
3104 | "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz",
3105 | "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=",
3106 | "dev": true,
3107 | "requires": {
3108 | "indexof": "0.0.1"
3109 | }
3110 | },
3111 | "wrappy": {
3112 | "version": "1.0.2",
3113 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
3114 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
3115 | "dev": true
3116 | },
3117 | "xtend": {
3118 | "version": "2.1.2",
3119 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz",
3120 | "integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=",
3121 | "dev": true,
3122 | "requires": {
3123 | "object-keys": "0.4.0"
3124 | }
3125 | },
3126 | "yauzl": {
3127 | "version": "2.4.1",
3128 | "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz",
3129 | "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=",
3130 | "dev": true,
3131 | "requires": {
3132 | "fd-slicer": "1.0.1"
3133 | }
3134 | }
3135 | }
3136 | }
3137 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "electron-renderify",
3 | "version": "0.0.2",
4 | "description": "electron-renderify",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "faucet"
8 | },
9 | "dependencies": {
10 | "through2": "^2.0.3"
11 | },
12 | "devDependencies": {
13 | "browserify": "^14.4.0",
14 | "electron": "^1.7.9",
15 | "faucet": "0.0.1",
16 | "tape": "^4.7.0"
17 | },
18 | "repository": {
19 | "type": "git",
20 | "url": "https://github.com/blahah/electron-renderify.git"
21 | },
22 | "author": "Rik Smith-Unna (@blahah)",
23 | "license": "CC0-1.0",
24 | "bugs": {
25 | "url": "https://github.com/blahah/electron-renderify/issues"
26 | },
27 | "homepage": "https://github.com/blahah/electron-renderify"
28 | }
29 |
--------------------------------------------------------------------------------
/sample.js:
--------------------------------------------------------------------------------
1 | // renderify sample start
2 | var fs = require('fs')
3 | var renderify = require('./index')
4 | // renderify sample end
5 |
--------------------------------------------------------------------------------
/test/app/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Hello World!
6 |
7 |
8 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/test/app/main.js:
--------------------------------------------------------------------------------
1 | const electron = require('electron')
2 | const app = electron.app
3 | const BrowserWindow = electron.BrowserWindow
4 | const ipc = electron.ipcMain
5 |
6 | const path = require('path')
7 | const url = require('url')
8 |
9 | let mainWindow
10 |
11 | function createWindow () {
12 | mainWindow = new BrowserWindow({ show: false })
13 |
14 | mainWindow.loadURL(url.format({
15 | pathname: path.join(__dirname, 'index.html'),
16 | protocol: 'file:',
17 | slashes: true
18 | }))
19 |
20 | mainWindow.on('closed', function () {
21 | mainWindow = null
22 | })
23 | }
24 |
25 | app.on('ready', createWindow)
26 |
27 | app.on('window-all-closed', function () {
28 | if (process.platform !== 'darwin') {
29 | app.quit()
30 | }
31 | })
32 |
33 | ipc.on('quit', function () {
34 | app.quit()
35 | })
36 |
--------------------------------------------------------------------------------
/test/app/renderer.js:
--------------------------------------------------------------------------------
1 | var fs = require('fs')
2 | var path = require('path')
3 |
4 | var inpath = path.join(__dirname, 'test_input.txt')
5 | var text = fs.readFileSync(inpath)
6 |
7 | var outpath = path.join(__dirname, 'test_output.txt')
8 |
9 | fs.writeFileSync(outpath, text)
10 |
11 | window.document.body.innerHTML = `SUCCESS: ${text}
`
12 |
13 | var ipc = require('electron').ipcRenderer
14 |
15 | ipc.send('quit')
16 |
--------------------------------------------------------------------------------
/test/app/test_input.txt:
--------------------------------------------------------------------------------
1 | text loaded
2 |
--------------------------------------------------------------------------------
/test/basic.js:
--------------------------------------------------------------------------------
1 | var test = require('tape')
2 | var through = require('through2')
3 | var browserify = require('browserify')
4 | var path = require('path')
5 |
6 | test('replaces all blacklisted requires, leaving others intact', function (t) {
7 | t.plan(1)
8 |
9 | browserify()
10 | .transform(require('../index'))
11 | .add(path.join(__dirname, '..', 'sample.js'))
12 | .bundle()
13 | .pipe(through(ondata, onend))
14 |
15 | var data = ''
16 |
17 | function ondata (d, enc, cb) {
18 | data += d
19 | cb()
20 | }
21 |
22 | function onend (cb) {
23 | var lines = data.split('\n')
24 | console.log(lines)
25 | var start = lines.indexOf('// renderify sample start') + 1
26 | var end = lines.indexOf('// renderify sample end')
27 |
28 | t.deepEqual(
29 | lines.slice(start, end),
30 | [
31 | "var fs = window.require('fs')",
32 | "var renderify = require('./index')"
33 | ]
34 | )
35 |
36 | }
37 | })
38 |
--------------------------------------------------------------------------------
/test/electron.js:
--------------------------------------------------------------------------------
1 | var test = require('tape')
2 | var through = require('through2')
3 | var browserify = require('browserify')
4 | var path = require('path')
5 | var fs = require('fs')
6 | var exec = require('child_process').exec
7 |
8 | var opts = {
9 | timeout: 5000
10 | }
11 |
12 | var bundlePath = path.join(__dirname, 'app', 'bundle.js')
13 | var outputPath = path.join(__dirname, 'app', 'test_output.txt')
14 |
15 | cleanup(go)
16 |
17 | function go () {
18 | test('allows fs to be used in bundle in electron renderer', function (t) {
19 | var write = fs.createWriteStream(bundlePath)
20 |
21 | write.once('close', runElectron)
22 | write.on('err', handleErr)
23 |
24 | var browserifyOpts = {
25 | builtins: [],
26 | commonDir: false,
27 | detectGlobals: false,
28 | ignoreMissing: true,
29 | insertGlobalVars: 'global',
30 | browserField: false,
31 | standalone: 'renderer'
32 | }
33 |
34 | browserify(browserifyOpts)
35 | .transform(require('../index'))
36 | .add(path.join(__dirname, 'app', 'renderer'))
37 | .bundle()
38 | .pipe(write)
39 |
40 | function runElectron () {
41 | var electron = path.join(__dirname, '../node_modules/.bin/electron')
42 | var app = path.join(__dirname, 'app', 'main.js')
43 | var child = exec(electron + ' ' + app)
44 |
45 | child.once('close', runTest)
46 | child.on('error', handleErr)
47 | }
48 |
49 | function runTest () {
50 | var result = fs.readFileSync(outputPath, 'utf8')
51 | t.equal(result.trim(), 'text loaded')
52 | cleanup(function () {
53 | t.end()
54 | })
55 | }
56 |
57 | function handleErr (err) {
58 | cleanup(function () {
59 | throw err
60 | })
61 | }
62 | })
63 | }
64 |
65 | function cleanup (cb) {
66 | fs.unlink(bundlePath, function () {
67 | fs.unlink(outputPath, cb)
68 | })
69 | }
70 |
--------------------------------------------------------------------------------