aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/tools
diff options
context:
space:
mode:
Diffstat (limited to 'server/tools')
-rw-r--r--server/tools/cli.ts122
-rw-r--r--server/tools/package.json14
-rw-r--r--server/tools/peertube-auth.ts17
-rw-r--r--server/tools/peertube-get-access-token.ts18
-rw-r--r--server/tools/peertube-import-videos.ts171
-rw-r--r--server/tools/peertube-repl.ts11
-rw-r--r--server/tools/peertube-upload.ts91
-rw-r--r--server/tools/peertube-watch.ts47
-rw-r--r--[-rwxr-xr-x]server/tools/peertube.ts7
-rw-r--r--server/tools/tsconfig.json4
-rw-r--r--server/tools/yarn.lock2063
11 files changed, 2371 insertions, 194 deletions
diff --git a/server/tools/cli.ts b/server/tools/cli.ts
index 59e9fcfc4..2eec51aa4 100644
--- a/server/tools/cli.ts
+++ b/server/tools/cli.ts
@@ -1,5 +1,14 @@
1const config = require('application-config')('PeerTube/CLI') 1import { Netrc } from 'netrc-parser'
2const netrc = require('netrc-parser').default 2import { getAppNumber, isTestInstance } from '../helpers/core-utils'
3import { join } from 'path'
4import { getVideoChannel, root } from '../../shared/extra-utils'
5import { Command } from 'commander'
6import { VideoChannel, VideoPrivacy } from '../../shared/models/videos'
7
8let configName = 'PeerTube/CLI'
9if (isTestInstance()) configName += `-${getAppNumber()}`
10
11const config = require('application-config')(configName)
3 12
4const version = require('../../../package.json').version 13const version = require('../../../package.json').version
5 14
@@ -12,7 +21,7 @@ function getSettings () {
12 return new Promise<Settings>((res, rej) => { 21 return new Promise<Settings>((res, rej) => {
13 const defaultSettings = { 22 const defaultSettings = {
14 remotes: [], 23 remotes: [],
15 default: 0 24 default: -1
16 } 25 }
17 26
18 config.read((err, data) => { 27 config.read((err, data) => {
@@ -24,6 +33,12 @@ function getSettings () {
24} 33}
25 34
26async function getNetrc () { 35async function getNetrc () {
36 const Netrc = require('netrc-parser').Netrc
37
38 const netrc = isTestInstance()
39 ? new Netrc(join(root(), 'test' + getAppNumber(), 'netrc'))
40 : new Netrc()
41
27 await netrc.load() 42 await netrc.load()
28 43
29 return netrc 44 return netrc
@@ -31,7 +46,17 @@ async function getNetrc () {
31 46
32function writeSettings (settings) { 47function writeSettings (settings) {
33 return new Promise((res, rej) => { 48 return new Promise((res, rej) => {
34 config.write(settings, function (err) { 49 config.write(settings, err => {
50 if (err) return rej(err)
51
52 return res()
53 })
54 })
55}
56
57function deleteSettings () {
58 return new Promise((res, rej) => {
59 config.trash((err) => {
35 if (err) return rej(err) 60 if (err) return rej(err)
36 61
37 return res() 62 return res()
@@ -39,10 +64,10 @@ function writeSettings (settings) {
39 }) 64 })
40} 65}
41 66
42function getRemoteObjectOrDie (program: any, settings: Settings) { 67function getRemoteObjectOrDie (program: any, settings: Settings, netrc: Netrc) {
43 if (!program['url'] || !program['username'] || !program['password']) { 68 if (!program['url'] || !program['username'] || !program['password']) {
44 // No remote and we don't have program parameters: throw 69 // No remote and we don't have program parameters: quit
45 if (settings.remotes.length === 0) { 70 if (settings.remotes.length === 0 || Object.keys(netrc.machines).length === 0) {
46 if (!program[ 'url' ]) console.error('--url field is required.') 71 if (!program[ 'url' ]) console.error('--url field is required.')
47 if (!program[ 'username' ]) console.error('--username field is required.') 72 if (!program[ 'username' ]) console.error('--username field is required.')
48 if (!program[ 'password' ]) console.error('--password field is required.') 73 if (!program[ 'password' ]) console.error('--password field is required.')
@@ -54,14 +79,12 @@ function getRemoteObjectOrDie (program: any, settings: Settings) {
54 let username: string = program['username'] 79 let username: string = program['username']
55 let password: string = program['password'] 80 let password: string = program['password']
56 81
57 if (!url) { 82 if (!url && settings.default !== -1) url = settings.remotes[settings.default]
58 url = settings.default !== -1 83
59 ? settings.remotes[settings.default] 84 const machine = netrc.machines[url]
60 : settings.remotes[0]
61 }
62 85
63 if (!username) username = netrc.machines[url].login 86 if (!username && machine) username = machine.login
64 if (!password) password = netrc.machines[url].password 87 if (!password && machine) password = machine.password
65 88
66 return { url, username, password } 89 return { url, username, password }
67 } 90 }
@@ -73,6 +96,71 @@ function getRemoteObjectOrDie (program: any, settings: Settings) {
73 } 96 }
74} 97}
75 98
99function buildCommonVideoOptions (command: Command) {
100 function list (val) {
101 return val.split(',')
102 }
103
104 return command
105 .option('-n, --video-name <name>', 'Video name')
106 .option('-c, --category <category_number>', 'Category number')
107 .option('-l, --licence <licence_number>', 'Licence number')
108 .option('-L, --language <language_code>', 'Language ISO 639 code (fr or en...)')
109 .option('-t, --tags <tags>', 'Video tags', list)
110 .option('-N, --nsfw', 'Video is Not Safe For Work')
111 .option('-d, --video-description <description>', 'Video description')
112 .option('-P, --privacy <privacy_number>', 'Privacy')
113 .option('-C, --channel-name <channel_name>', 'Channel name')
114 .option('-m, --comments-enabled', 'Enable comments')
115 .option('-s, --support <support>', 'Video support text')
116 .option('-w, --wait-transcoding', 'Wait transcoding before publishing the video')
117}
118
119async function buildVideoAttributesFromCommander (url: string, command: Command, defaultAttributes: any) {
120 const defaultBooleanAttributes = {
121 nsfw: false,
122 commentsEnabled: true,
123 downloadEnabled: true,
124 waitTranscoding: true
125 }
126
127 const booleanAttributes: { [id in keyof typeof defaultBooleanAttributes]: boolean } | {} = {}
128
129 for (const key of Object.keys(defaultBooleanAttributes)) {
130 if (command[ key ] !== undefined) {
131 booleanAttributes[key] = command[ key ]
132 } else if (defaultAttributes[key] !== undefined) {
133 booleanAttributes[key] = defaultAttributes[key]
134 } else {
135 booleanAttributes[key] = defaultBooleanAttributes[key]
136 }
137 }
138
139 const videoAttributes = {
140 name: command[ 'videoName' ] || defaultAttributes.name,
141 category: command[ 'category' ] || defaultAttributes.category || undefined,
142 licence: command[ 'licence' ] || defaultAttributes.licence || undefined,
143 language: command[ 'language' ] || defaultAttributes.language || undefined,
144 privacy: command[ 'privacy' ] || defaultAttributes.privacy || VideoPrivacy.PUBLIC,
145 support: command[ 'support' ] || defaultAttributes.support || undefined
146 }
147
148 Object.assign(videoAttributes, booleanAttributes)
149
150 if (command[ 'channelName' ]) {
151 const res = await getVideoChannel(url, command['channelName'])
152 const videoChannel: VideoChannel = res.body
153
154 Object.assign(videoAttributes, { channelId: videoChannel.id })
155
156 if (!videoAttributes.support && videoChannel.support) {
157 Object.assign(videoAttributes, { support: videoChannel.support })
158 }
159 }
160
161 return videoAttributes
162}
163
76// --------------------------------------------------------------------------- 164// ---------------------------------------------------------------------------
77 165
78export { 166export {
@@ -81,5 +169,9 @@ export {
81 getSettings, 169 getSettings,
82 getNetrc, 170 getNetrc,
83 getRemoteObjectOrDie, 171 getRemoteObjectOrDie,
84 writeSettings 172 writeSettings,
173 deleteSettings,
174
175 buildCommonVideoOptions,
176 buildVideoAttributesFromCommander
85} 177}
diff --git a/server/tools/package.json b/server/tools/package.json
new file mode 100644
index 000000000..22fb8d24c
--- /dev/null
+++ b/server/tools/package.json
@@ -0,0 +1,14 @@
1{
2 "name": "@peertube/cli",
3 "version": "1.0.0",
4 "private": true,
5 "dependencies": {
6 "application-config": "^1.0.1",
7 "cli-table": "^0.3.1",
8 "netrc-parser": "^3.1.6",
9 "webtorrent-hybrid": "^2.1.0"
10 },
11 "summon": {
12 "silent": true
13 }
14}
diff --git a/server/tools/peertube-auth.ts b/server/tools/peertube-auth.ts
index 8bc3d332c..ff5ffb60e 100644
--- a/server/tools/peertube-auth.ts
+++ b/server/tools/peertube-auth.ts
@@ -9,7 +9,11 @@ const Table = require('cli-table')
9async function delInstance (url: string) { 9async function delInstance (url: string) {
10 const [ settings, netrc ] = await Promise.all([ getSettings(), getNetrc() ]) 10 const [ settings, netrc ] = await Promise.all([ getSettings(), getNetrc() ])
11 11
12 settings.remotes.splice(settings.remotes.indexOf(url)) 12 const index = settings.remotes.indexOf(url)
13 settings.remotes.splice(index)
14
15 if (settings.default === index) settings.default = -1
16
13 await writeSettings(settings) 17 await writeSettings(settings)
14 18
15 delete netrc.machines[url] 19 delete netrc.machines[url]
@@ -17,12 +21,17 @@ async function delInstance (url: string) {
17 await netrc.save() 21 await netrc.save()
18} 22}
19 23
20async function setInstance (url: string, username: string, password: string) { 24async function setInstance (url: string, username: string, password: string, isDefault: boolean) {
21 const [ settings, netrc ] = await Promise.all([ getSettings(), getNetrc() ]) 25 const [ settings, netrc ] = await Promise.all([ getSettings(), getNetrc() ])
22 26
23 if (settings.remotes.indexOf(url) === -1) { 27 if (settings.remotes.indexOf(url) === -1) {
24 settings.remotes.push(url) 28 settings.remotes.push(url)
25 } 29 }
30
31 if (isDefault || settings.remotes.length === 1) {
32 settings.default = settings.remotes.length - 1
33 }
34
26 await writeSettings(settings) 35 await writeSettings(settings)
27 36
28 netrc.machines[url] = { login: username, password } 37 netrc.machines[url] = { login: username, password }
@@ -66,7 +75,7 @@ program
66 } 75 }
67 } 76 }
68 }, async (_, result) => { 77 }, async (_, result) => {
69 await setInstance(result.url, result.username, result.password) 78 await setInstance(result.url, result.username, result.password, program['default'])
70 79
71 process.exit(0) 80 process.exit(0)
72 }) 81 })
@@ -93,6 +102,8 @@ program
93 }) 102 })
94 103
95 settings.remotes.forEach(element => { 104 settings.remotes.forEach(element => {
105 if (!netrc.machines[element]) return
106
96 table.push([ 107 table.push([
97 element, 108 element,
98 netrc.machines[element].login 109 netrc.machines[element].login
diff --git a/server/tools/peertube-get-access-token.ts b/server/tools/peertube-get-access-token.ts
index 85660de2c..103495347 100644
--- a/server/tools/peertube-get-access-token.ts
+++ b/server/tools/peertube-get-access-token.ts
@@ -1,12 +1,5 @@
1import * as program from 'commander' 1import * as program from 'commander'
2 2import { getClient, Server, serverLogin } from '../../shared/extra-utils'
3import {
4 getClient,
5 serverLogin,
6 Server,
7 Client,
8 User
9} from '../../shared/extra-utils'
10 3
11program 4program
12 .option('-u, --url <url>', 'Server url') 5 .option('-u, --url <url>', 'Server url')
@@ -22,6 +15,7 @@ if (
22 if (!program['url']) console.error('--url field is required.') 15 if (!program['url']) console.error('--url field is required.')
23 if (!program['username']) console.error('--username field is required.') 16 if (!program['username']) console.error('--username field is required.')
24 if (!program['password']) console.error('--password field is required.') 17 if (!program['password']) console.error('--password field is required.')
18
25 process.exit(-1) 19 process.exit(-1)
26} 20}
27 21
@@ -32,11 +26,11 @@ getClient(program.url)
32 user: { 26 user: {
33 username: program['username'], 27 username: program['username'],
34 password: program['password'] 28 password: program['password']
35 } as User, 29 },
36 client: { 30 client: {
37 id: res.body.client_id as string, 31 id: res.body.client_id,
38 secret: res.body.client_secret as string 32 secret: res.body.client_secret
39 } as Client 33 }
40 } as Server 34 } as Server
41 35
42 return serverLogin(server) 36 return serverLogin(server)
diff --git a/server/tools/peertube-import-videos.ts b/server/tools/peertube-import-videos.ts
index 9a366dbbd..d7bb00e02 100644
--- a/server/tools/peertube-import-videos.ts
+++ b/server/tools/peertube-import-videos.ts
@@ -3,7 +3,6 @@ require('tls').DEFAULT_ECDH_CURVE = 'auto'
3 3
4import * as program from 'commander' 4import * as program from 'commander'
5import { join } from 'path' 5import { join } from 'path'
6import { VideoPrivacy } from '../../shared/models/videos'
7import { doRequestAndSaveToFile } from '../helpers/requests' 6import { doRequestAndSaveToFile } from '../helpers/requests'
8import { CONSTRAINTS_FIELDS } from '../initializers/constants' 7import { CONSTRAINTS_FIELDS } from '../initializers/constants'
9import { getClient, getVideoCategories, login, searchVideoWithSort, uploadVideo } from '../../shared/extra-utils/index' 8import { getClient, getVideoCategories, login, searchVideoWithSort, uploadVideo } from '../../shared/extra-utils/index'
@@ -12,29 +11,34 @@ import * as prompt from 'prompt'
12import { remove } from 'fs-extra' 11import { remove } from 'fs-extra'
13import { sha256 } from '../helpers/core-utils' 12import { sha256 } from '../helpers/core-utils'
14import { buildOriginallyPublishedAt, safeGetYoutubeDL } from '../helpers/youtube-dl' 13import { buildOriginallyPublishedAt, safeGetYoutubeDL } from '../helpers/youtube-dl'
15import { getNetrc, getRemoteObjectOrDie, getSettings } from './cli' 14import { buildCommonVideoOptions, buildVideoAttributesFromCommander, getNetrc, getRemoteObjectOrDie, getSettings } from './cli'
16 15
17let accessToken: string 16type UserInfo = {
18let client: { id: string, secret: string } 17 username: string
18 password: string
19}
19 20
20const processOptions = { 21const processOptions = {
21 cwd: __dirname, 22 cwd: __dirname,
22 maxBuffer: Infinity 23 maxBuffer: Infinity
23} 24}
24 25
25program 26let command = program
26 .name('import-videos') 27 .name('import-videos')
28
29command = buildCommonVideoOptions(command)
30
31command
27 .option('-u, --url <url>', 'Server url') 32 .option('-u, --url <url>', 'Server url')
28 .option('-U, --username <username>', 'Username') 33 .option('-U, --username <username>', 'Username')
29 .option('-p, --password <token>', 'Password') 34 .option('-p, --password <token>', 'Password')
30 .option('-t, --target-url <targetUrl>', 'Video target URL') 35 .option('-t, --target-url <targetUrl>', 'Video target URL')
31 .option('-l, --language <languageCode>', 'Language ISO 639 code (fr or en...)')
32 .option('-v, --verbose', 'Verbose mode') 36 .option('-v, --verbose', 'Verbose mode')
33 .parse(process.argv) 37 .parse(process.argv)
34 38
35Promise.all([ getSettings(), getNetrc() ]) 39Promise.all([ getSettings(), getNetrc() ])
36 .then(([ settings, netrc ]) => { 40 .then(([ settings, netrc ]) => {
37 const { url, username, password } = getRemoteObjectOrDie(program, settings) 41 const { url, username, password } = getRemoteObjectOrDie(program, settings, netrc)
38 42
39 if (!program[ 'targetUrl' ]) { 43 if (!program[ 'targetUrl' ]) {
40 console.error('--targetUrl field is required.') 44 console.error('--targetUrl field is required.')
@@ -45,56 +49,20 @@ Promise.all([ getSettings(), getNetrc() ])
45 removeEndSlashes(url) 49 removeEndSlashes(url)
46 removeEndSlashes(program[ 'targetUrl' ]) 50 removeEndSlashes(program[ 'targetUrl' ])
47 51
48 const user = { 52 const user = { username, password }
49 username: username,
50 password: password
51 }
52 53
53 run(user, url) 54 run(url, user)
54 .catch(err => { 55 .catch(err => {
55 console.error(err) 56 console.error(err)
56 process.exit(-1) 57 process.exit(-1)
57 }) 58 })
58 }) 59 })
59 60
60async function promptPassword () { 61async function run (url: string, user: UserInfo) {
61 return new Promise((res, rej) => {
62 prompt.start()
63 const schema = {
64 properties: {
65 password: {
66 hidden: true,
67 required: true
68 }
69 }
70 }
71 prompt.get(schema, function (err, result) {
72 if (err) {
73 return rej(err)
74 }
75 return res(result.password)
76 })
77 })
78}
79
80async function run (user, url: string) {
81 if (!user.password) { 62 if (!user.password) {
82 user.password = await promptPassword() 63 user.password = await promptPassword()
83 } 64 }
84 65
85 const res = await getClient(url)
86 client = {
87 id: res.body.client_id,
88 secret: res.body.client_secret
89 }
90
91 try {
92 const res = await login(program[ 'url' ], client, user)
93 accessToken = res.body.access_token
94 } catch (err) {
95 throw new Error('Cannot authenticate. Please check your username/password.')
96 }
97
98 const youtubeDL = await safeGetYoutubeDL() 66 const youtubeDL = await safeGetYoutubeDL()
99 67
100 const options = [ '-j', '--flat-playlist', '--playlist-reverse' ] 68 const options = [ '-j', '--flat-playlist', '--playlist-reverse' ]
@@ -115,7 +83,12 @@ async function run (user, url: string) {
115 console.log('Will download and upload %d videos.\n', infoArray.length) 83 console.log('Will download and upload %d videos.\n', infoArray.length)
116 84
117 for (const info of infoArray) { 85 for (const info of infoArray) {
118 await processVideo(info, program[ 'language' ], processOptions.cwd, url, user) 86 await processVideo({
87 cwd: processOptions.cwd,
88 url,
89 user,
90 youtubeInfo: info
91 })
119 } 92 }
120 93
121 console.log('Video/s for user %s imported: %s', program[ 'username' ], program[ 'targetUrl' ]) 94 console.log('Video/s for user %s imported: %s', program[ 'username' ], program[ 'targetUrl' ])
@@ -123,11 +96,18 @@ async function run (user, url: string) {
123 }) 96 })
124} 97}
125 98
126function processVideo (info: any, languageCode: string, cwd: string, url: string, user) { 99function processVideo (parameters: {
100 cwd: string,
101 url: string,
102 user: { username: string, password: string },
103 youtubeInfo: any
104}) {
105 const { youtubeInfo, cwd, url, user } = parameters
106
127 return new Promise(async res => { 107 return new Promise(async res => {
128 if (program[ 'verbose' ]) console.log('Fetching object.', info) 108 if (program[ 'verbose' ]) console.log('Fetching object.', youtubeInfo)
129 109
130 const videoInfo = await fetchObject(info) 110 const videoInfo = await fetchObject(youtubeInfo)
131 if (program[ 'verbose' ]) console.log('Fetched object.', videoInfo) 111 if (program[ 'verbose' ]) console.log('Fetched object.', videoInfo)
132 112
133 const result = await searchVideoWithSort(url, videoInfo.title, '-match') 113 const result = await searchVideoWithSort(url, videoInfo.title, '-match')
@@ -153,7 +133,13 @@ function processVideo (info: any, languageCode: string, cwd: string, url: string
153 } 133 }
154 134
155 console.log(output.join('\n')) 135 console.log(output.join('\n'))
156 await uploadVideoOnPeerTube(normalizeObject(videoInfo), path, cwd, url, user, languageCode) 136 await uploadVideoOnPeerTube({
137 cwd,
138 url,
139 user,
140 videoInfo: normalizeObject(videoInfo),
141 videoPath: path
142 })
157 return res() 143 return res()
158 }) 144 })
159 } catch (err) { 145 } catch (err) {
@@ -163,7 +149,15 @@ function processVideo (info: any, languageCode: string, cwd: string, url: string
163 }) 149 })
164} 150}
165 151
166async function uploadVideoOnPeerTube (videoInfo: any, videoPath: string, cwd: string, url: string, user, language?: string) { 152async function uploadVideoOnPeerTube (parameters: {
153 videoInfo: any,
154 videoPath: string,
155 cwd: string,
156 url: string,
157 user: { username: string; password: string }
158}) {
159 const { videoInfo, videoPath, cwd, url, user } = parameters
160
167 const category = await getCategory(videoInfo.categories, url) 161 const category = await getCategory(videoInfo.categories, url)
168 const licence = getLicence(videoInfo.license) 162 const licence = getLicence(videoInfo.license)
169 let tags = [] 163 let tags = []
@@ -186,7 +180,7 @@ async function uploadVideoOnPeerTube (videoInfo: any, videoPath: string, cwd: st
186 180
187 const originallyPublishedAt = buildOriginallyPublishedAt(videoInfo) 181 const originallyPublishedAt = buildOriginallyPublishedAt(videoInfo)
188 182
189 const videoAttributes = { 183 const defaultAttributes = {
190 name: truncate(videoInfo.title, { 184 name: truncate(videoInfo.title, {
191 'length': CONSTRAINTS_FIELDS.VIDEOS.NAME.max, 185 'length': CONSTRAINTS_FIELDS.VIDEOS.NAME.max,
192 'separator': /,? +/, 186 'separator': /,? +/,
@@ -194,30 +188,31 @@ async function uploadVideoOnPeerTube (videoInfo: any, videoPath: string, cwd: st
194 }), 188 }),
195 category, 189 category,
196 licence, 190 licence,
197 language,
198 nsfw: isNSFW(videoInfo), 191 nsfw: isNSFW(videoInfo),
199 waitTranscoding: true, 192 description: videoInfo.description,
200 commentsEnabled: true, 193 tags
201 downloadEnabled: true, 194 }
202 description: videoInfo.description || undefined, 195
203 support: undefined, 196 const videoAttributes = await buildVideoAttributesFromCommander(url, program, defaultAttributes)
204 tags, 197
205 privacy: VideoPrivacy.PUBLIC, 198 Object.assign(videoAttributes, {
206 fixture: videoPath, 199 originallyPublishedAt: originallyPublishedAt ? originallyPublishedAt.toISOString() : null,
207 thumbnailfile, 200 thumbnailfile,
208 previewfile: thumbnailfile, 201 previewfile: thumbnailfile,
209 originallyPublishedAt: originallyPublishedAt ? originallyPublishedAt.toISOString() : null 202 fixture: videoPath
210 } 203 })
211 204
212 console.log('\nUploading on PeerTube video "%s".', videoAttributes.name) 205 console.log('\nUploading on PeerTube video "%s".', videoAttributes.name)
206
207 let accessToken = await getAccessTokenOrDie(url, user)
208
213 try { 209 try {
214 await uploadVideo(url, accessToken, videoAttributes) 210 await uploadVideo(url, accessToken, videoAttributes)
215 } catch (err) { 211 } catch (err) {
216 if (err.message.indexOf('401') !== -1) { 212 if (err.message.indexOf('401') !== -1) {
217 console.log('Got 401 Unauthorized, token may have expired, renewing token and retry.') 213 console.log('Got 401 Unauthorized, token may have expired, renewing token and retry.')
218 214
219 const res = await login(url, client, user) 215 accessToken = await getAccessTokenOrDie(url, user)
220 accessToken = res.body.access_token
221 216
222 await uploadVideo(url, accessToken, videoAttributes) 217 await uploadVideo(url, accessToken, videoAttributes)
223 } else { 218 } else {
@@ -232,6 +227,8 @@ async function uploadVideoOnPeerTube (videoInfo: any, videoPath: string, cwd: st
232 console.log('Uploaded video "%s"!\n', videoAttributes.name) 227 console.log('Uploaded video "%s"!\n', videoAttributes.name)
233} 228}
234 229
230/* ---------------------------------------------------------- */
231
235async function getCategory (categories: string[], url: string) { 232async function getCategory (categories: string[], url: string) {
236 if (!categories) return undefined 233 if (!categories) return undefined
237 234
@@ -250,8 +247,6 @@ async function getCategory (categories: string[], url: string) {
250 return undefined 247 return undefined
251} 248}
252 249
253/* ---------------------------------------------------------- */
254
255function getLicence (licence: string) { 250function getLicence (licence: string) {
256 if (!licence) return undefined 251 if (!licence) return undefined
257 252
@@ -305,9 +300,7 @@ function buildUrl (info: any) {
305} 300}
306 301
307function isNSFW (info: any) { 302function isNSFW (info: any) {
308 if (info.age_limit && info.age_limit >= 16) return true 303 return info.age_limit && info.age_limit >= 16
309
310 return false
311} 304}
312 305
313function removeEndSlashes (url: string) { 306function removeEndSlashes (url: string) {
@@ -315,3 +308,39 @@ function removeEndSlashes (url: string) {
315 url.slice(0, -1) 308 url.slice(0, -1)
316 } 309 }
317} 310}
311
312async function promptPassword () {
313 return new Promise<string>((res, rej) => {
314 prompt.start()
315 const schema = {
316 properties: {
317 password: {
318 hidden: true,
319 required: true
320 }
321 }
322 }
323 prompt.get(schema, function (err, result) {
324 if (err) {
325 return rej(err)
326 }
327 return res(result.password)
328 })
329 })
330}
331
332async function getAccessTokenOrDie (url: string, user: UserInfo) {
333 const resClient = await getClient(url)
334 const client = {
335 id: resClient.body.client_id,
336 secret: resClient.body.client_secret
337 }
338
339 try {
340 const res = await login(url, client, user)
341 return res.body.access_token
342 } catch (err) {
343 console.error('Cannot authenticate. Please check your username/password.')
344 process.exit(-1)
345 }
346}
diff --git a/server/tools/peertube-repl.ts b/server/tools/peertube-repl.ts
index 04d8b95a3..fbdec1613 100644
--- a/server/tools/peertube-repl.ts
+++ b/server/tools/peertube-repl.ts
@@ -43,7 +43,7 @@ const start = async () => {
43 Object.defineProperty(context, prop, { 43 Object.defineProperty(context, prop, {
44 configurable: false, 44 configurable: false,
45 enumerable: true, 45 enumerable: true,
46 value: properties[prop] 46 value: properties[ prop ]
47 }) 47 })
48 } 48 }
49 } 49 }
@@ -69,8 +69,7 @@ const start = async () => {
69 69
70} 70}
71 71
72start().then((data) => { 72start()
73 // do nothing 73 .catch((err) => {
74}).catch((err) => { 74 console.error(err)
75 console.error(err) 75 })
76})
diff --git a/server/tools/peertube-upload.ts b/server/tools/peertube-upload.ts
index 687f2e60b..c00205e8f 100644
--- a/server/tools/peertube-upload.ts
+++ b/server/tools/peertube-upload.ts
@@ -3,54 +3,47 @@ import { access, constants } from 'fs-extra'
3import { isAbsolute } from 'path' 3import { isAbsolute } from 'path'
4import { getClient, login } from '../../shared/extra-utils' 4import { getClient, login } from '../../shared/extra-utils'
5import { uploadVideo } from '../../shared/extra-utils/' 5import { uploadVideo } from '../../shared/extra-utils/'
6import { VideoPrivacy } from '../../shared/models/videos' 6import { buildCommonVideoOptions, buildVideoAttributesFromCommander, getNetrc, getRemoteObjectOrDie, getSettings } from './cli'
7import { getRemoteObjectOrDie, getSettings } from './cli'
8 7
9program 8let command = program
10 .name('upload') 9 .name('upload')
10
11command = buildCommonVideoOptions(command)
12
13command
14
11 .option('-u, --url <url>', 'Server url') 15 .option('-u, --url <url>', 'Server url')
12 .option('-U, --username <username>', 'Username') 16 .option('-U, --username <username>', 'Username')
13 .option('-p, --password <token>', 'Password') 17 .option('-p, --password <token>', 'Password')
14 .option('-n, --video-name <name>', 'Video name')
15 .option('-P, --privacy <privacy_number>', 'Privacy')
16 .option('-N, --nsfw', 'Video is Not Safe For Work')
17 .option('-c, --category <category_number>', 'Category number')
18 .option('-C, --channel-id <channel_id>', 'Channel ID')
19 .option('-m, --comments-enabled', 'Enable comments')
20 .option('-l, --licence <licence_number>', 'Licence number')
21 .option('-L, --language <language_code>', 'Language ISO 639 code (fr or en...)')
22 .option('-d, --video-description <description>', 'Video description')
23 .option('-t, --tags <tags>', 'Video tags', list)
24 .option('-b, --thumbnail <thumbnailPath>', 'Thumbnail path') 18 .option('-b, --thumbnail <thumbnailPath>', 'Thumbnail path')
25 .option('-v, --preview <previewPath>', 'Preview path') 19 .option('-v, --preview <previewPath>', 'Preview path')
26 .option('-f, --file <file>', 'Video absolute file path') 20 .option('-f, --file <file>', 'Video absolute file path')
27 .parse(process.argv) 21 .parse(process.argv)
28 22
29getSettings() 23Promise.all([ getSettings(), getNetrc() ])
30 .then(settings => { 24 .then(([ settings, netrc ]) => {
31 const { url, username, password } = getRemoteObjectOrDie(program, settings) 25 const { url, username, password } = getRemoteObjectOrDie(program, settings, netrc)
32 26
33 if (!program['videoName'] || !program['file'] || !program['channelId']) { 27 if (!program[ 'videoName' ] || !program[ 'file' ]) {
34 if (!program['videoName']) console.error('--video-name is required.') 28 if (!program[ 'videoName' ]) console.error('--video-name is required.')
35 if (!program['file']) console.error('--file is required.') 29 if (!program[ 'file' ]) console.error('--file is required.')
36 if (!program['channelId']) console.error('--channel-id is required.')
37 30
38 process.exit(-1) 31 process.exit(-1)
39 } 32 }
40 33
41 if (isAbsolute(program['file']) === false) { 34 if (isAbsolute(program[ 'file' ]) === false) {
42 console.error('File path should be absolute.') 35 console.error('File path should be absolute.')
43 process.exit(-1) 36 process.exit(-1)
44 } 37 }
45 38
46 run(url, username, password).catch(err => { 39 run(url, username, password).catch(err => {
47 console.error(err) 40 console.error(err)
48 process.exit(-1) 41 process.exit(-1)
49 }) 42 })
50 }) 43 })
51 44
52async function run (url: string, username: string, password: string) { 45async function run (url: string, username: string, password: string) {
53 const resClient = await getClient(program[ 'url' ]) 46 const resClient = await getClient(url)
54 const client = { 47 const client = {
55 id: resClient.body.client_id, 48 id: resClient.body.client_id,
56 secret: resClient.body.client_secret 49 secret: resClient.body.client_secret
@@ -70,38 +63,26 @@ async function run (url: string, username: string, password: string) {
70 63
71 console.log('Uploading %s video...', program[ 'videoName' ]) 64 console.log('Uploading %s video...', program[ 'videoName' ])
72 65
73 const videoAttributes = { 66 const defaultAttributes = {
74 name: program['videoName'], 67 tags: command[ 'tags' ],
75 category: program['category'] || undefined, 68 description: command[ 'videoDescription' ]
76 channelId: program['channelId'],
77 licence: program['licence'] || undefined,
78 language: program['language'] || undefined,
79 nsfw: program['nsfw'] !== undefined ? program['nsfw'] : false,
80 description: program['videoDescription'] || '',
81 tags: program['tags'] || [],
82 commentsEnabled: program['commentsEnabled'] !== undefined ? program['commentsEnabled'] : true,
83 downloadEnabled: program['downloadEnabled'] !== undefined ? program['downloadEnabled'] : true,
84 fixture: program['file'],
85 thumbnailfile: program['thumbnail'],
86 previewfile: program['preview'],
87 waitTranscoding: true,
88 privacy: program['privacy'] || VideoPrivacy.PUBLIC,
89 support: undefined
90 } 69 }
70 const videoAttributes = await buildVideoAttributesFromCommander(url, program, defaultAttributes)
71
72 Object.assign(videoAttributes, {
73 fixture: program[ 'file' ],
74 thumbnailfile: program[ 'thumbnail' ],
75 previewfile: program[ 'preview' ]
76 })
91 77
92 try { 78 try {
93 await uploadVideo(url, accessToken, videoAttributes) 79 await uploadVideo(url, accessToken, videoAttributes)
94 console.log(`Video ${program['videoName']} uploaded.`) 80 console.log(`Video ${program[ 'videoName' ]} uploaded.`)
95 process.exit(0) 81 process.exit(0)
96 } catch (err) { 82 } catch (err) {
97 console.log('coucou')
98 console.error(require('util').inspect(err)) 83 console.error(require('util').inspect(err))
99 process.exit(-1) 84 process.exit(-1)
100 } 85 }
101} 86}
102 87
103// ---------------------------------------------------------------------------- 88// ----------------------------------------------------------------------------
104
105function list (val) {
106 return val.split(',')
107}
diff --git a/server/tools/peertube-watch.ts b/server/tools/peertube-watch.ts
index bf7274aab..7c27c1364 100644
--- a/server/tools/peertube-watch.ts
+++ b/server/tools/peertube-watch.ts
@@ -1,21 +1,15 @@
1import * as program from 'commander' 1import * as program from 'commander'
2import * as summon from 'summon-install'
3import { join } from 'path' 2import { join } from 'path'
4import { execSync } from 'child_process' 3import { execSync } from 'child_process'
5import { root } from '../helpers/core-utils'
6
7let videoURL
8 4
9program 5program
10 .name('watch') 6 .name('watch')
11 .arguments('<url>') 7 .arguments('<url>')
12 .option('-g, --gui <player>', 'player type', /^(airplay|stdout|chromecast|mpv|vlc|mplayer|ascii|xbmc)$/i, 'ascii') 8 .option('-g, --gui <player>', 'player type', /^(airplay|stdout|chromecast|mpv|vlc|mplayer|xbmc)$/i, 'vlc')
13 .option('-i, --invert', 'invert colors (ascii player only)', true) 9 .option('-r, --resolution <res>', 'video resolution', '480')
14 .option('-r, --resolution <res>', 'video resolution', /^(240|360|720|1080)$/i, '720')
15 .on('--help', function () { 10 .on('--help', function () {
16 console.log(' Available Players:') 11 console.log(' Available Players:')
17 console.log() 12 console.log()
18 console.log(' - ascii')
19 console.log(' - mpv') 13 console.log(' - mpv')
20 console.log(' - mplayer') 14 console.log(' - mplayer')
21 console.log(' - vlc') 15 console.log(' - vlc')
@@ -24,7 +18,6 @@ program
24 console.log(' - airplay') 18 console.log(' - airplay')
25 console.log(' - chromecast') 19 console.log(' - chromecast')
26 console.log() 20 console.log()
27 console.log(' Note: \'ascii\' is the only option not using WebTorrent and not seeding back the video.')
28 console.log() 21 console.log()
29 console.log(' Examples:') 22 console.log(' Examples:')
30 console.log() 23 console.log()
@@ -33,29 +26,25 @@ program
33 console.log(' $ peertube watch https://peertube.cpy.re/videos/watch/e8a1af4e-414a-4d58-bfe6-2146eed06d10') 26 console.log(' $ peertube watch https://peertube.cpy.re/videos/watch/e8a1af4e-414a-4d58-bfe6-2146eed06d10')
34 console.log() 27 console.log()
35 }) 28 })
36 .action((url) => { 29 .action((url, cmd) => {
37 videoURL = url 30 run(url, cmd)
31 .catch(err => {
32 console.error(err)
33 process.exit(-1)
34 })
38 }) 35 })
39 .parse(process.argv) 36 .parse(process.argv)
40 37
41if (!videoURL) { 38async function run (url: string, program: any) {
42 console.error('<url> positional argument is required.') 39 if (!url) {
43 process.exit(-1) 40 console.error('<url> positional argument is required.')
44} else { program['url'] = videoURL } 41 process.exit(-1)
42 }
45 43
46handler(program) 44 const cmd = 'node ' + join(__dirname, 'node_modules', 'webtorrent-hybrid', 'bin', 'cmd.js')
45 const args = ` --${program.gui} ` +
46 url.replace('videos/watch', 'download/torrents') +
47 `-${program.resolution}.torrent`
47 48
48function handler (argv) { 49 execSync(cmd + args)
49 if (argv['gui'] === 'ascii') {
50 summon('peerterminal')
51 const peerterminal = summon('peerterminal')
52 peerterminal([ '--link', videoURL, '--invert', argv['invert'] ])
53 } else {
54 summon('webtorrent-hybrid')
55 const CMD = 'node ' + join(root(), 'node_modules', 'webtorrent-hybrid', 'bin', 'cmd.js')
56 const CMDargs = ` --${argv.gui} ` +
57 argv['url'].replace('videos/watch', 'download/torrents') +
58 `-${argv.resolution}.torrent`
59 execSync(CMD + CMDargs)
60 }
61} 50}
diff --git a/server/tools/peertube.ts b/server/tools/peertube.ts
index 5d3ab2815..daa5586c3 100755..100644
--- a/server/tools/peertube.ts
+++ b/server/tools/peertube.ts
@@ -63,9 +63,10 @@ if (!process.argv.slice(2).length) {
63 63
64getSettings() 64getSettings()
65 .then(settings => { 65 .then(settings => {
66 const state = (settings.default === undefined || settings.default === -1) ? 66 const state = (settings.default === undefined || settings.default === -1)
67 'no instance selected, commands will require explicit arguments' : 67 ? 'no instance selected, commands will require explicit arguments'
68 ('instance ' + settings.remotes[settings.default] + ' selected') 68 : 'instance ' + settings.remotes[settings.default] + ' selected'
69
69 program 70 program
70 .on('--help', function () { 71 .on('--help', function () {
71 console.log() 72 console.log()
diff --git a/server/tools/tsconfig.json b/server/tools/tsconfig.json
new file mode 100644
index 000000000..f8a1c705c
--- /dev/null
+++ b/server/tools/tsconfig.json
@@ -0,0 +1,4 @@
1{
2 "extends": "../../tsconfig.json",
3 "exclude": [ ] // Overwrite exclude property
4}
diff --git a/server/tools/yarn.lock b/server/tools/yarn.lock
new file mode 100644
index 000000000..7ef68fc71
--- /dev/null
+++ b/server/tools/yarn.lock
@@ -0,0 +1,2063 @@
1# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2# yarn lockfile v1
3
4
5abbrev@1:
6 version "1.1.1"
7 resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
8 integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==
9
10addr-to-ip-port@^1.0.1, addr-to-ip-port@^1.4.2:
11 version "1.5.1"
12 resolved "https://registry.yarnpkg.com/addr-to-ip-port/-/addr-to-ip-port-1.5.1.tgz#bfada13fd6aeeeac19f1e9f7d84b4bbab45e5208"
13 integrity sha512-bA+dyydTNuQtrEDJ0g9eR7XabNhvrM5yZY0hvTbNK3yvoeC73ZqMES6E1cEqH9WPxs4uMtMsOjfwS4FmluhsAA==
14
15airplay-js@^0.3.0:
16 version "0.3.0"
17 resolved "https://registry.yarnpkg.com/airplay-js/-/airplay-js-0.3.0.tgz#16bac2ef91b31249382924bfdeeabaddc9db7398"
18 integrity sha1-FrrC75GzEkk4KSS/3uq63cnbc5g=
19 dependencies:
20 mdns-js "0.5.0"
21 plist-with-patches "0.5.1"
22
23ansi-regex@^2.0.0:
24 version "2.1.1"
25 resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
26 integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
27
28ansi-regex@^3.0.0:
29 version "3.0.0"
30 resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998"
31 integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=
32
33application-config-path@^0.1.0:
34 version "0.1.0"
35 resolved "https://registry.yarnpkg.com/application-config-path/-/application-config-path-0.1.0.tgz#193c5f0a86541a4c66fba1e2dc38583362ea5e8f"
36 integrity sha1-GTxfCoZUGkxm+6Hi3DhYM2LqXo8=
37
38application-config@^1.0.1:
39 version "1.0.1"
40 resolved "https://registry.yarnpkg.com/application-config/-/application-config-1.0.1.tgz#5aa2e2a5ed6abd2e5d1d473d3596f574044fe9e7"
41 integrity sha1-WqLipe1qvS5dHUc9NZb1dARP6ec=
42 dependencies:
43 application-config-path "^0.1.0"
44 mkdirp "^0.5.1"
45
46aproba@^1.0.3:
47 version "1.2.0"
48 resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a"
49 integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==
50
51are-we-there-yet@~1.1.2:
52 version "1.1.5"
53 resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21"
54 integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==
55 dependencies:
56 delegates "^1.0.0"
57 readable-stream "^2.0.6"
58
59ascli@~0.3:
60 version "0.3.0"
61 resolved "https://registry.yarnpkg.com/ascli/-/ascli-0.3.0.tgz#5e66230e5219fe3e8952a4efb4f20fae596a813a"
62 integrity sha1-XmYjDlIZ/j6JUqTvtPIPrllqgTo=
63 dependencies:
64 colour latest
65 optjs latest
66
67async-limiter@~1.0.0:
68 version "1.0.0"
69 resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8"
70 integrity sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==
71
72balanced-match@^1.0.0:
73 version "1.0.0"
74 resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
75 integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c=
76
77bencode@^2.0.0:
78 version "2.0.1"
79 resolved "https://registry.yarnpkg.com/bencode/-/bencode-2.0.1.tgz#667a6a31c5e038d558608333da6b7c94e836c85b"
80 integrity sha512-2uhEl8FdjSBUyb69qDTgOEeeqDTa+n3yMQzLW0cOzNf1Ow5bwcg3idf+qsWisIKRH8Bk8oC7UXL8irRcPA8ZEQ==
81 dependencies:
82 safe-buffer "^5.1.1"
83
84binary-search@^1.3.4:
85 version "1.3.5"
86 resolved "https://registry.yarnpkg.com/binary-search/-/binary-search-1.3.5.tgz#479ad009589e0273cf54e5d74ab1546c489078ce"
87 integrity sha512-RHFP0AdU6KAB0CCZsRMU2CJTk2EpL8GLURT+4gilpjr1f/7M91FgUMnXuQLmf3OKLet34gjuNFwO7e4agdX5pw==
88
89bitfield@^2.0.0:
90 version "2.0.0"
91 resolved "https://registry.yarnpkg.com/bitfield/-/bitfield-2.0.0.tgz#fbe6767592fe5b4c87ecf1d04126294cc1bfa837"
92 integrity sha512-4xM4DYejOHQ/qWBfeqBXNA4mJ12PwcOibFYnH1kYh5U9BHciCqEJBqGNVnMJXUhm8mflujNRLSv7IiVQxovgjw==
93
94bittorrent-dht@^9.0.0:
95 version "9.0.0"
96 resolved "https://registry.yarnpkg.com/bittorrent-dht/-/bittorrent-dht-9.0.0.tgz#08d5ebb51ed91d7e3eea5c275554f4323fb523e5"
97 integrity sha512-X5ax4G/PLtEPfqOUjqDZ2nmPENndWRMK4sT2jcQ4sXor904zhR40r4KqTyTvWYAljh5/hPPqM9DCUUtqWzRXoQ==
98 dependencies:
99 bencode "^2.0.0"
100 buffer-equals "^1.0.3"
101 debug "^3.1.0"
102 inherits "^2.0.1"
103 k-bucket "^5.0.0"
104 k-rpc "^5.0.0"
105 last-one-wins "^1.0.4"
106 lru "^3.1.0"
107 randombytes "^2.0.5"
108 record-cache "^1.0.2"
109 safe-buffer "^5.0.1"
110 simple-sha1 "^2.1.0"
111
112bittorrent-peerid@^1.0.2:
113 version "1.3.0"
114 resolved "https://registry.yarnpkg.com/bittorrent-peerid/-/bittorrent-peerid-1.3.0.tgz#a435d3b267c887c586c528b53359845905d7c158"
115 integrity sha512-SYd5H3RbN1ex+TrWAKXkEkASFWxAR7Tk6iLt9tfAT9ehBvZb/Y3AQDVRVJynlrixcWpnmsLYKI7tkRWgp7ORoQ==
116
117bittorrent-protocol@^3.0.0:
118 version "3.0.1"
119 resolved "https://registry.yarnpkg.com/bittorrent-protocol/-/bittorrent-protocol-3.0.1.tgz#d3948f4d2b09d538095f7e5f93f64ba5df6b5c2a"
120 integrity sha512-hnvOzAu9u+2H0OLLL5byoFdz6oz5f3bx5f7R+ItUohTHMq9TgUhEJfcjo7xWtQHSKOVciYWwYTJ4EjczF5RX2A==
121 dependencies:
122 bencode "^2.0.0"
123 bitfield "^2.0.0"
124 debug "^3.1.0"
125 randombytes "^2.0.5"
126 readable-stream "^2.3.2"
127 speedometer "^1.0.0"
128 unordered-array-remove "^1.0.2"
129 xtend "^4.0.0"
130
131bittorrent-tracker@^9.0.0:
132 version "9.11.0"
133 resolved "https://registry.yarnpkg.com/bittorrent-tracker/-/bittorrent-tracker-9.11.0.tgz#9911f9c14e5a29f84990a0c31b3d83dd16eb2876"
134 integrity sha512-T1zvW/kSeEnWT4I3JE+6c7aZbO5jtleZyQe911SyzIxFF9DvtUNWXud3p5ZUkXaoI2xXwfpvlks5VFj5SKEB+A==
135 dependencies:
136 bencode "^2.0.0"
137 bittorrent-peerid "^1.0.2"
138 bn.js "^4.4.0"
139 compact2string "^1.2.0"
140 debug "^4.0.1"
141 ip "^1.0.1"
142 lru "^3.0.0"
143 minimist "^1.1.1"
144 once "^1.3.0"
145 random-iterate "^1.0.1"
146 randombytes "^2.0.3"
147 run-parallel "^1.1.2"
148 run-series "^1.0.2"
149 safe-buffer "^5.0.0"
150 simple-get "^3.0.0"
151 simple-peer "^9.0.0"
152 simple-websocket "^7.0.1"
153 string2compact "^1.1.1"
154 uniq "^1.0.1"
155 unordered-array-remove "^1.0.2"
156 ws "^6.0.0"
157 optionalDependencies:
158 bufferutil "^4.0.0"
159 utf-8-validate "^5.0.1"
160
161blob-to-buffer@^1.2.6:
162 version "1.2.8"
163 resolved "https://registry.yarnpkg.com/blob-to-buffer/-/blob-to-buffer-1.2.8.tgz#78eeeb332f1280ed0ca6fb2b60693a8c6d36903a"
164 integrity sha512-re0AIxakF504MgeMtIyJkVcZ8T5aUxtp/QmTMlmjyb3P44E1BEv5x3LATBGApWAJATyXHtkXRD+gWTmeyYLiQA==
165
166block-stream2@^1.0.0:
167 version "1.1.0"
168 resolved "https://registry.yarnpkg.com/block-stream2/-/block-stream2-1.1.0.tgz#c738e3a91ba977ebb5e1fef431e13ca11d8639e2"
169 integrity sha1-xzjjqRupd+u14f70MeE8oR2GOeI=
170 dependencies:
171 defined "^1.0.0"
172 inherits "^2.0.1"
173 readable-stream "^2.0.4"
174
175bn.js@^4.4.0:
176 version "4.11.8"
177 resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f"
178 integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==
179
180brace-expansion@^1.1.7:
181 version "1.1.11"
182 resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
183 integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
184 dependencies:
185 balanced-match "^1.0.0"
186 concat-map "0.0.1"
187
188browserify-package-json@^1.0.0:
189 version "1.0.1"
190 resolved "https://registry.yarnpkg.com/browserify-package-json/-/browserify-package-json-1.0.1.tgz#98dde8aa5c561fd6d3fe49bbaa102b74b396fdea"
191 integrity sha1-mN3oqlxWH9bT/km7qhArdLOW/eo=
192
193buffer-alloc-unsafe@^1.1.0:
194 version "1.1.0"
195 resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0"
196 integrity sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==
197
198buffer-alloc@^1.1.0, buffer-alloc@^1.2.0:
199 version "1.2.0"
200 resolved "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec"
201 integrity sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==
202 dependencies:
203 buffer-alloc-unsafe "^1.1.0"
204 buffer-fill "^1.0.0"
205
206buffer-equals@^1.0.3, buffer-equals@^1.0.4:
207 version "1.0.4"
208 resolved "https://registry.yarnpkg.com/buffer-equals/-/buffer-equals-1.0.4.tgz#0353b54fd07fd9564170671ae6f66b9cf10d27f5"
209 integrity sha1-A1O1T9B/2VZBcGca5vZrnPENJ/U=
210
211buffer-fill@^1.0.0:
212 version "1.0.0"
213 resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c"
214 integrity sha1-+PeLdniYiO858gXNY39o5wISKyw=
215
216buffer-from@^1.0.0, buffer-from@^1.1.0:
217 version "1.1.1"
218 resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"
219 integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==
220
221buffer-indexof@^1.0.0:
222 version "1.1.1"
223 resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c"
224 integrity sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==
225
226bufferutil@^4.0.0:
227 version "4.0.1"
228 resolved "https://registry.yarnpkg.com/bufferutil/-/bufferutil-4.0.1.tgz#3a177e8e5819a1243fe16b63a199951a7ad8d4a7"
229 integrity sha512-xowrxvpxojqkagPcWRQVXZl0YXhRhAtBEIq3VoER1NH5Mw1n1o0ojdspp+GS2J//2gCVyrzQDApQ4unGF+QOoA==
230 dependencies:
231 node-gyp-build "~3.7.0"
232
233bufferview@~1:
234 version "1.0.1"
235 resolved "https://registry.yarnpkg.com/bufferview/-/bufferview-1.0.1.tgz#7afd74a45f937fa422a1d338c08bbfdc76cd725d"
236 integrity sha1-ev10pF+Tf6QiodM4wIu/3HbNcl0=
237
238"bytebuffer@~3 >=3.5":
239 version "3.5.5"
240 resolved "https://registry.yarnpkg.com/bytebuffer/-/bytebuffer-3.5.5.tgz#7a6faf1a13514b083f1fcf9541c4c9bfbe7e7fd3"
241 integrity sha1-em+vGhNRSwg/H8+VQcTJv75+f9M=
242 dependencies:
243 bufferview "~1"
244 long "~2 >=2.2.3"
245
246camelcase@^3.0.0:
247 version "3.0.0"
248 resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a"
249 integrity sha1-MvxLn82vhF/N9+c7uXysImHwqwo=
250
251castv2-client@^1.1.0:
252 version "1.2.0"
253 resolved "https://registry.yarnpkg.com/castv2-client/-/castv2-client-1.2.0.tgz#a9193b1a5448b8cb9a0415bd021c8811ed7b0544"
254 integrity sha1-qRk7GlRIuMuaBBW9AhyIEe17BUQ=
255 dependencies:
256 castv2 "~0.1.4"
257 debug "^2.2.0"
258
259castv2@~0.1.4:
260 version "0.1.9"
261 resolved "https://registry.yarnpkg.com/castv2/-/castv2-0.1.9.tgz#d0b0fab1fd06b0d9cca636886716ec1293a5905a"
262 integrity sha1-0LD6sf0GsNnMpjaIZxbsEpOlkFo=
263 dependencies:
264 debug "^2.2.0"
265 protobufjs "^3.2.2"
266
267chownr@^1.1.1:
268 version "1.1.1"
269 resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494"
270 integrity sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==
271
272chromecasts@^1.5.3:
273 version "1.9.1"
274 resolved "https://registry.yarnpkg.com/chromecasts/-/chromecasts-1.9.1.tgz#67b162e8414d57d6106c49fe4a0e9b08f20bbd12"
275 integrity sha512-nsXv7ufgrpC8s5DUm6FJEa2XJ2VvE9FmbTVi6r4zGreTFTTSRSJjvqVEqLUFX/fGo/zbSre3zdoV+Pu9DGLz0A==
276 dependencies:
277 castv2-client "^1.1.0"
278 debug "^2.1.3"
279 dns-txt "^2.0.2"
280 mime "^1.3.4"
281 multicast-dns "^6.0.1"
282 simple-get "^2.0.0"
283 thunky "^0.1.0"
284 xml2js "^0.4.8"
285 optionalDependencies:
286 node-ssdp "^2.2.0"
287
288chunk-store-stream@^3.0.1:
289 version "3.0.1"
290 resolved "https://registry.yarnpkg.com/chunk-store-stream/-/chunk-store-stream-3.0.1.tgz#8e0d739226dcb386f44447b82a005b597a1d41d9"
291 integrity sha512-GA1NIFDZKElhkjiO6QOyzfK1QbUt6M3gFhUU/aR05JYaDqXbU5d7U92cLvGKdItJEDfojky6NQefy5VL5PpDBA==
292 dependencies:
293 block-stream2 "^1.0.0"
294 readable-stream "^2.0.5"
295
296cli-table@^0.3.1:
297 version "0.3.1"
298 resolved "https://registry.yarnpkg.com/cli-table/-/cli-table-0.3.1.tgz#f53b05266a8b1a0b934b3d0821e6e2dc5914ae23"
299 integrity sha1-9TsFJmqLGguTSz0IIebi3FkUriM=
300 dependencies:
301 colors "1.0.3"
302
303cliui@^3.2.0:
304 version "3.2.0"
305 resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d"
306 integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=
307 dependencies:
308 string-width "^1.0.1"
309 strip-ansi "^3.0.1"
310 wrap-ansi "^2.0.0"
311
312clivas@^0.2.0:
313 version "0.2.0"
314 resolved "https://registry.yarnpkg.com/clivas/-/clivas-0.2.0.tgz#b8d19188b3243e390f302410bd0cb1622db82649"
315 integrity sha1-uNGRiLMkPjkPMCQQvQyxYi24Jkk=
316
317closest-to@~2.0.0:
318 version "2.0.0"
319 resolved "https://registry.yarnpkg.com/closest-to/-/closest-to-2.0.0.tgz#bb2a860edb7769b62d04821748ae50da24dbefaa"
320 integrity sha1-uyqGDtt3abYtBIIXSK5Q2iTb76o=
321
322code-point-at@^1.0.0:
323 version "1.1.0"
324 resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
325 integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=
326
327colors@1.0.3:
328 version "1.0.3"
329 resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b"
330 integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=
331
332colour@latest:
333 version "0.7.1"
334 resolved "https://registry.yarnpkg.com/colour/-/colour-0.7.1.tgz#9cb169917ec5d12c0736d3e8685746df1cadf778"
335 integrity sha1-nLFpkX7F0SwHNtPoaFdG3xyt93g=
336
337compact2string@^1.2.0:
338 version "1.4.1"
339 resolved "https://registry.yarnpkg.com/compact2string/-/compact2string-1.4.1.tgz#8d34929055f8300a13cfc030ad1832e2e53c2e25"
340 integrity sha512-3D+EY5nsRhqnOwDxveBv5T8wGo4DEvYxjDtPGmdOX+gfr5gE92c2RC0w2wa+xEefm07QuVqqcF3nZJUZ92l/og==
341 dependencies:
342 ipaddr.js ">= 0.1.5"
343
344concat-map@0.0.1:
345 version "0.0.1"
346 resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
347 integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
348
349concat-stream@^1.4.8:
350 version "1.6.2"
351 resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
352 integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
353 dependencies:
354 buffer-from "^1.0.0"
355 inherits "^2.0.3"
356 readable-stream "^2.2.2"
357 typedarray "^0.0.6"
358
359console-control-strings@^1.0.0, console-control-strings@~1.1.0:
360 version "1.1.0"
361 resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e"
362 integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=
363
364core-util-is@~1.0.0:
365 version "1.0.2"
366 resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
367 integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
368
369create-torrent@^3.23.1, create-torrent@^3.33.0:
370 version "3.33.0"
371 resolved "https://registry.yarnpkg.com/create-torrent/-/create-torrent-3.33.0.tgz#8a7a2aa2213a799c266c40e4c12f1468ede25105"
372 integrity sha512-KMd0KuvwVUg1grlRd5skG9ZkSbBYDDkAjDUMLnvxdRn0rL7ph3IwoOk7I8u1yLX4HYjGiLVlWYO55YWNNPjJFA==
373 dependencies:
374 bencode "^2.0.0"
375 block-stream2 "^1.0.0"
376 filestream "^4.0.0"
377 flatten "^1.0.2"
378 is-file "^1.0.0"
379 junk "^2.1.0"
380 minimist "^1.1.0"
381 multistream "^2.0.2"
382 once "^1.3.0"
383 piece-length "^1.0.0"
384 readable-stream "^3.0.2"
385 run-parallel "^1.0.0"
386 simple-sha1 "^2.0.0"
387
388cross-spawn@^6.0.0:
389 version "6.0.5"
390 resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4"
391 integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==
392 dependencies:
393 nice-try "^1.0.4"
394 path-key "^2.0.1"
395 semver "^5.5.0"
396 shebang-command "^1.2.0"
397 which "^1.2.9"
398
399debug@^2.1.0, debug@^2.1.1, debug@^2.1.3, debug@^2.2.0:
400 version "2.6.9"
401 resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
402 integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
403 dependencies:
404 ms "2.0.0"
405
406debug@^3.1.0, debug@^3.2.6:
407 version "3.2.6"
408 resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
409 integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
410 dependencies:
411 ms "^2.1.1"
412
413debug@^4.0.1, debug@^4.1.0:
414 version "4.1.1"
415 resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791"
416 integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==
417 dependencies:
418 ms "^2.1.1"
419
420decamelize@^1.1.1:
421 version "1.2.0"
422 resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
423 integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
424
425decompress-response@^3.3.0:
426 version "3.3.0"
427 resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3"
428 integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=
429 dependencies:
430 mimic-response "^1.0.0"
431
432deep-extend@^0.6.0:
433 version "0.6.0"
434 resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
435 integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
436
437defined@^1.0.0:
438 version "1.0.0"
439 resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693"
440 integrity sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=
441
442delegates@^1.0.0:
443 version "1.0.0"
444 resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"
445 integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=
446
447detect-libc@^1.0.2:
448 version "1.0.3"
449 resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
450 integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=
451
452dlnacasts@^0.1.0:
453 version "0.1.0"
454 resolved "https://registry.yarnpkg.com/dlnacasts/-/dlnacasts-0.1.0.tgz#f805211dcac74f6bb3a4d5d5541ad783b1b67d22"
455 integrity sha1-+AUhHcrHT2uzpNXVVBrXg7G2fSI=
456 dependencies:
457 debug "^2.1.3"
458 mime "^1.3.4"
459 node-ssdp "^2.7.1"
460 run-parallel "^1.1.6"
461 simple-get "^2.1.0"
462 thunky "^0.1.0"
463 upnp-mediarenderer-client "^1.2.2"
464 xml2js "^0.4.8"
465
466dns-packet@^1.3.1:
467 version "1.3.1"
468 resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a"
469 integrity sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==
470 dependencies:
471 ip "^1.1.0"
472 safe-buffer "^5.0.1"
473
474dns-txt@^2.0.2:
475 version "2.0.2"
476 resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6"
477 integrity sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=
478 dependencies:
479 buffer-indexof "^1.0.0"
480
481domexception@^1.0.1:
482 version "1.0.1"
483 resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90"
484 integrity sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==
485 dependencies:
486 webidl-conversions "^4.0.2"
487
488ecstatic@^3.0.0:
489 version "3.3.2"
490 resolved "https://registry.yarnpkg.com/ecstatic/-/ecstatic-3.3.2.tgz#6d1dd49814d00594682c652adb66076a69d46c48"
491 integrity sha512-fLf9l1hnwrHI2xn9mEDT7KIi22UDqA2jaCwyCbSUJh9a1V+LEUSL/JO/6TIz/QyuBURWUHrFL5Kg2TtO1bkkog==
492 dependencies:
493 he "^1.1.1"
494 mime "^1.6.0"
495 minimist "^1.1.0"
496 url-join "^2.0.5"
497
498elementtree@^0.1.6, elementtree@~0.1.6:
499 version "0.1.7"
500 resolved "https://registry.yarnpkg.com/elementtree/-/elementtree-0.1.7.tgz#9ac91be6e52fb6e6244c4e54a4ac3ed8ae8e29c0"
501 integrity sha1-mskb5uUvtuYkTE5UpKw+2K6OKcA=
502 dependencies:
503 sax "1.1.4"
504
505end-of-stream@^1.1.0:
506 version "1.4.1"
507 resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43"
508 integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==
509 dependencies:
510 once "^1.4.0"
511
512error-ex@^1.2.0:
513 version "1.3.2"
514 resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
515 integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
516 dependencies:
517 is-arrayish "^0.2.1"
518
519execa@^0.10.0:
520 version "0.10.0"
521 resolved "https://registry.yarnpkg.com/execa/-/execa-0.10.0.tgz#ff456a8f53f90f8eccc71a96d11bdfc7f082cb50"
522 integrity sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==
523 dependencies:
524 cross-spawn "^6.0.0"
525 get-stream "^3.0.0"
526 is-stream "^1.1.0"
527 npm-run-path "^2.0.0"
528 p-finally "^1.0.0"
529 signal-exit "^3.0.0"
530 strip-eof "^1.0.0"
531
532executable@^4.0.0:
533 version "4.1.1"
534 resolved "https://registry.yarnpkg.com/executable/-/executable-4.1.1.tgz#41532bff361d3e57af4d763b70582db18f5d133c"
535 integrity sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==
536 dependencies:
537 pify "^2.2.0"
538
539filestream@^4.0.0:
540 version "4.1.3"
541 resolved "https://registry.yarnpkg.com/filestream/-/filestream-4.1.3.tgz#948fcaade8221f715f5ecaddc54862faaacc9325"
542 integrity sha1-lI/KregiH3FfXsrdxUhi+qrMkyU=
543 dependencies:
544 inherits "^2.0.1"
545 readable-stream "^2.0.5"
546 typedarray-to-buffer "^3.0.0"
547 xtend "^4.0.1"
548
549find-up@^1.0.0:
550 version "1.1.2"
551 resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f"
552 integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=
553 dependencies:
554 path-exists "^2.0.0"
555 pinkie-promise "^2.0.0"
556
557flatten@^1.0.2:
558 version "1.0.2"
559 resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782"
560 integrity sha1-2uRqnXj74lKSJYzB54CkHZXAN4I=
561
562fs-chunk-store@^1.6.2:
563 version "1.7.0"
564 resolved "https://registry.yarnpkg.com/fs-chunk-store/-/fs-chunk-store-1.7.0.tgz#1c4bcbe93c99af10aa04b65348f2bb27377a4010"
565 integrity sha512-KhjJmZAs2eqfhCb6PdPx4RcZtheGTz86tpTC5JTvqBn/xda+Nb+0C7dCyjOSN7T76H6a56LvH0SVXQMchLXDRw==
566 dependencies:
567 mkdirp "^0.5.1"
568 random-access-file "^2.0.1"
569 randombytes "^2.0.3"
570 rimraf "^2.4.2"
571 run-parallel "^1.1.2"
572 thunky "^1.0.1"
573
574fs-minipass@^1.2.5:
575 version "1.2.6"
576 resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.6.tgz#2c5cc30ded81282bfe8a0d7c7c1853ddeb102c07"
577 integrity sha512-crhvyXcMejjv3Z5d2Fa9sf5xLYVCF5O1c71QxbVnbLsmYMBEvDAftewesN/HhY03YRoA7zOMxjNGrF5svGaaeQ==
578 dependencies:
579 minipass "^2.2.1"
580
581fs.realpath@^1.0.0:
582 version "1.0.0"
583 resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
584 integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
585
586gauge@~2.7.3:
587 version "2.7.4"
588 resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7"
589 integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=
590 dependencies:
591 aproba "^1.0.3"
592 console-control-strings "^1.0.0"
593 has-unicode "^2.0.0"
594 object-assign "^4.1.0"
595 signal-exit "^3.0.0"
596 string-width "^1.0.1"
597 strip-ansi "^3.0.1"
598 wide-align "^1.1.0"
599
600get-browser-rtc@^1.0.0:
601 version "1.0.2"
602 resolved "https://registry.yarnpkg.com/get-browser-rtc/-/get-browser-rtc-1.0.2.tgz#bbcd40c8451a7ed4ef5c373b8169a409dd1d11d9"
603 integrity sha1-u81AyEUaftTvXDc7gWmkCd0dEdk=
604
605get-caller-file@^1.0.1:
606 version "1.0.3"
607 resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a"
608 integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==
609
610get-stdin@^6.0.0:
611 version "6.0.0"
612 resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b"
613 integrity sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==
614
615get-stream@^3.0.0:
616 version "3.0.0"
617 resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14"
618 integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=
619
620glob@^7.1.3:
621 version "7.1.4"
622 resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255"
623 integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==
624 dependencies:
625 fs.realpath "^1.0.0"
626 inflight "^1.0.4"
627 inherits "2"
628 minimatch "^3.0.4"
629 once "^1.3.0"
630 path-is-absolute "^1.0.0"
631
632graceful-fs@^4.1.2:
633 version "4.1.15"
634 resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00"
635 integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==
636
637has-unicode@^2.0.0:
638 version "2.0.1"
639 resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
640 integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=
641
642he@^1.1.1:
643 version "1.2.0"
644 resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
645 integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
646
647hosted-git-info@^2.1.4:
648 version "2.7.1"
649 resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047"
650 integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==
651
652iconv-lite@^0.4.4:
653 version "0.4.24"
654 resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
655 integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
656 dependencies:
657 safer-buffer ">= 2.1.2 < 3"
658
659ignore-walk@^3.0.1:
660 version "3.0.1"
661 resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.1.tgz#a83e62e7d272ac0e3b551aaa82831a19b69f82f8"
662 integrity sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==
663 dependencies:
664 minimatch "^3.0.4"
665
666immediate-chunk-store@^2.0.0:
667 version "2.0.0"
668 resolved "https://registry.yarnpkg.com/immediate-chunk-store/-/immediate-chunk-store-2.0.0.tgz#f313fd0cc71396d8911ad031179e1cccfda3da18"
669 integrity sha512-5s6NiCGbtWc+OQA60jrre54w12U7tynIyUNjO5LJjNA5lWwvCv6640roq8Wk/wIuaqnd4Pgtp453OyJ7hbONkQ==
670
671inflight@^1.0.4:
672 version "1.0.6"
673 resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
674 integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
675 dependencies:
676 once "^1.3.0"
677 wrappy "1"
678
679inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3:
680 version "2.0.3"
681 resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
682 integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
683
684ini@~1.3.0:
685 version "1.3.5"
686 resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
687 integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==
688
689invert-kv@^1.0.0:
690 version "1.0.0"
691 resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6"
692 integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY=
693
694ip-set@^1.0.0:
695 version "1.0.2"
696 resolved "https://registry.yarnpkg.com/ip-set/-/ip-set-1.0.2.tgz#be4f119f82c124836455993dfcd554639c7007de"
697 integrity sha512-Mb6kv78bTi4RNAIIWL8Bbre7hXOR2pNUi3j8FaQkLaitf/ZWxkq3/iIwXNYk2ACO3IMfdVdQrOkUtwZblO7uBA==
698 dependencies:
699 ip "^1.1.3"
700
701ip@^1.0.1, ip@^1.1.0, ip@^1.1.3:
702 version "1.1.5"
703 resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a"
704 integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=
705
706"ipaddr.js@>= 0.1.5", ipaddr.js@^1.0.1:
707 version "1.9.0"
708 resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.0.tgz#37df74e430a0e47550fe54a2defe30d8acd95f65"
709 integrity sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==
710
711is-arrayish@^0.2.1:
712 version "0.2.1"
713 resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
714 integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
715
716is-ascii@^1.0.0:
717 version "1.0.0"
718 resolved "https://registry.yarnpkg.com/is-ascii/-/is-ascii-1.0.0.tgz#f02ad0259a0921cd199ff21ce1b09e0f6b4e3929"
719 integrity sha1-8CrQJZoJIc0Zn/Ic4bCeD2tOOSk=
720
721is-file@^1.0.0:
722 version "1.0.0"
723 resolved "https://registry.yarnpkg.com/is-file/-/is-file-1.0.0.tgz#28a44cfbd9d3db193045f22b65fce8edf9620596"
724 integrity sha1-KKRM+9nT2xkwRfIrZfzo7fliBZY=
725
726is-fullwidth-code-point@^1.0.0:
727 version "1.0.0"
728 resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
729 integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs=
730 dependencies:
731 number-is-nan "^1.0.0"
732
733is-fullwidth-code-point@^2.0.0:
734 version "2.0.0"
735 resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
736 integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
737
738is-stream@^1.1.0:
739 version "1.1.0"
740 resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
741 integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ=
742
743is-typedarray@^1.0.0:
744 version "1.0.0"
745 resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
746 integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
747
748is-utf8@^0.2.0:
749 version "0.2.1"
750 resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72"
751 integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=
752
753isarray@~1.0.0:
754 version "1.0.0"
755 resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
756 integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
757
758isexe@^2.0.0:
759 version "2.0.0"
760 resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
761 integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
762
763junk@^2.1.0:
764 version "2.1.0"
765 resolved "https://registry.yarnpkg.com/junk/-/junk-2.1.0.tgz#f431b4b7f072dc500a5f10ce7f4ec71930e70134"
766 integrity sha1-9DG0t/By3FAKXxDOf07HGTDnATQ=
767
768k-bucket@^4.0.0:
769 version "4.0.1"
770 resolved "https://registry.yarnpkg.com/k-bucket/-/k-bucket-4.0.1.tgz#3fc2e5693f0b7bff90d7b6b476edd6087955d542"
771 integrity sha512-YvDpmY3waI999h1zZoW1rJ04fZrgZ+5PAlVmvwDHT6YO/Q1AOhdel07xsKy9eAvJjQ9xZV1wz3rXKqEfaWvlcQ==
772 dependencies:
773 inherits "^2.0.1"
774 randombytes "^2.0.3"
775
776k-bucket@^5.0.0:
777 version "5.0.0"
778 resolved "https://registry.yarnpkg.com/k-bucket/-/k-bucket-5.0.0.tgz#ef7a401fcd4c37cd31dceaa6ae4440ca91055e01"
779 integrity sha512-r/q+wV/Kde62/tk+rqyttEJn6h0jR7x+incdMVSYTqK73zVxVrzJa70kJL49cIKen8XjIgUZKSvk8ktnrQbK4w==
780 dependencies:
781 randombytes "^2.0.3"
782
783k-rpc-socket@^1.7.2:
784 version "1.8.0"
785 resolved "https://registry.yarnpkg.com/k-rpc-socket/-/k-rpc-socket-1.8.0.tgz#9a4dd6a4f3795ed847ffa156579cc389990bd1f2"
786 integrity sha512-f/9TynsO8YYjZ6JjNNtSSH7CJcIHcio1buy3zqByGxb/GX8AWLdL6FZEWTrN8V3/J7W4/E0ZTQQ+Jt2rVq7ELg==
787 dependencies:
788 bencode "^2.0.0"
789 buffer-equals "^1.0.4"
790 safe-buffer "^5.1.1"
791
792k-rpc@^5.0.0:
793 version "5.0.0"
794 resolved "https://registry.yarnpkg.com/k-rpc/-/k-rpc-5.0.0.tgz#a72651860c96db440579e4c9f38dce8a42b481a8"
795 integrity sha512-vCH2rQdfMOS+MlUuTSuar1pS2EMrltURf9LmAR9xR6Jik0XPlMX3vEixgqMn17wKmFVCublJqSJ4hJIP7oKZ3Q==
796 dependencies:
797 buffer-equals "^1.0.3"
798 k-bucket "^4.0.0"
799 k-rpc-socket "^1.7.2"
800 randombytes "^2.0.5"
801 safe-buffer "^5.1.1"
802
803last-one-wins@^1.0.4:
804 version "1.0.4"
805 resolved "https://registry.yarnpkg.com/last-one-wins/-/last-one-wins-1.0.4.tgz#c1bfd0cbcb46790ec9156b8d1aee8fcb86cda22a"
806 integrity sha1-wb/Qy8tGeQ7JFWuNGu6Py4bNoio=
807
808lcid@^1.0.0:
809 version "1.0.0"
810 resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835"
811 integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=
812 dependencies:
813 invert-kv "^1.0.0"
814
815load-ip-set@^2.1.0:
816 version "2.1.0"
817 resolved "https://registry.yarnpkg.com/load-ip-set/-/load-ip-set-2.1.0.tgz#2d50b737cae41de4e413d213991d4083a3e1784b"
818 integrity sha512-taz7U6B+F7Zq90dfIKwqsB1CrFKelSEmMGC68OUqem8Cgd1QZygQBYb2Fk9i6muBSfH4xwF/Pjt4KKlAdOyWZw==
819 dependencies:
820 ip-set "^1.0.0"
821 netmask "^1.0.6"
822 once "^1.3.0"
823 simple-get "^3.0.0"
824 split "^1.0.0"
825
826load-json-file@^1.0.0:
827 version "1.1.0"
828 resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0"
829 integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=
830 dependencies:
831 graceful-fs "^4.1.2"
832 parse-json "^2.2.0"
833 pify "^2.0.0"
834 pinkie-promise "^2.0.0"
835 strip-bom "^2.0.0"
836
837"long@~2 >=2.2.3":
838 version "2.4.0"
839 resolved "https://registry.yarnpkg.com/long/-/long-2.4.0.tgz#9fa180bb1d9500cdc29c4156766a1995e1f4524f"
840 integrity sha1-n6GAux2VAM3CnEFWdmoZleH0Uk8=
841
842lru@^3.0.0, lru@^3.1.0:
843 version "3.1.0"
844 resolved "https://registry.yarnpkg.com/lru/-/lru-3.1.0.tgz#ea7fb8546d83733396a13091d76cfeb4c06837d5"
845 integrity sha1-6n+4VG2DczOWoTCR12z+tMBoN9U=
846 dependencies:
847 inherits "^2.0.1"
848
849magnet-uri@^5.1.3:
850 version "5.2.4"
851 resolved "https://registry.yarnpkg.com/magnet-uri/-/magnet-uri-5.2.4.tgz#7afe5b736af04445aff744c93a890a3710077688"
852 integrity sha512-VYaJMxhr8B9BrCiNINUsuhaEe40YnG+AQBwcqUKO66lSVaI9I3A1iH/6EmEwRI8OYUg5Gt+4lLE7achg676lrg==
853 dependencies:
854 thirty-two "^1.0.1"
855 uniq "^1.0.1"
856
857mdns-js-packet@~0.2.0:
858 version "0.2.0"
859 resolved "https://registry.yarnpkg.com/mdns-js-packet/-/mdns-js-packet-0.2.0.tgz#642409e8183c7561cc60615bbd1420ec2fad7616"
860 integrity sha1-ZCQJ6Bg8dWHMYGFbvRQg7C+tdhY=
861 dependencies:
862 debug "^2.1.0"
863 qap "^3.1.2"
864
865mdns-js@0.5.0:
866 version "0.5.0"
867 resolved "https://registry.yarnpkg.com/mdns-js/-/mdns-js-0.5.0.tgz#4c8abb6ba7cabdc892d39228c3faa2556e09cf87"
868 integrity sha1-TIq7a6fKvciS05Iow/qiVW4Jz4c=
869 dependencies:
870 debug "^2.1.1"
871 mdns-js-packet "~0.2.0"
872 semver "~5.1.0"
873
874mediasource@^2.1.0, mediasource@^2.2.2:
875 version "2.3.0"
876 resolved "https://registry.yarnpkg.com/mediasource/-/mediasource-2.3.0.tgz#4c7b49e7ea4fb88f1cc181d8fcf0d94649271dc6"
877 integrity sha512-fqm86UwHvAnneIv40Uy1sDQaFtAByq/k0SQ3uCtbnEeSQNT1s5TDHCZOD1VmYCHwfY1jL2NjoZVwzZKYqy3L7A==
878 dependencies:
879 inherits "^2.0.1"
880 readable-stream "^3.0.0"
881 to-arraybuffer "^1.0.1"
882
883memory-chunk-store@^1.2.0:
884 version "1.3.0"
885 resolved "https://registry.yarnpkg.com/memory-chunk-store/-/memory-chunk-store-1.3.0.tgz#ae99e7e3b58b52db43d49d94722930d39459d0c4"
886 integrity sha512-6LsOpHKKhxYrLhHmOJdBCUtSO7op5rUs1pag0fhjHo0QiXRyna0bwYf4EmQuL7InUeF2J7dUMPr6VMogRyf9NA==
887
888mime@^1.3.4, mime@^1.6.0:
889 version "1.6.0"
890 resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
891 integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
892
893mime@^2.1.0, mime@^2.4.0:
894 version "2.4.3"
895 resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.3.tgz#229687331e86f68924e6cb59e1cdd937f18275fe"
896 integrity sha512-QgrPRJfE+riq5TPZMcHZOtm8c6K/yYrMbKIoRfapfiGLxS8OTeIfRhUGW5LU7MlRa52KOAGCfUNruqLrIBvWZw==
897
898mimic-response@^1.0.0:
899 version "1.0.1"
900 resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
901 integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==
902
903minimatch@^3.0.4:
904 version "3.0.4"
905 resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
906 integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
907 dependencies:
908 brace-expansion "^1.1.7"
909
910minimist@0.0.8:
911 version "0.0.8"
912 resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
913 integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=
914
915minimist@^1.1.0, minimist@^1.1.1, minimist@^1.2.0:
916 version "1.2.0"
917 resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
918 integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=
919
920minipass@^2.2.1, minipass@^2.3.4:
921 version "2.3.5"
922 resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.5.tgz#cacebe492022497f656b0f0f51e2682a9ed2d848"
923 integrity sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==
924 dependencies:
925 safe-buffer "^5.1.2"
926 yallist "^3.0.0"
927
928minizlib@^1.1.1:
929 version "1.2.1"
930 resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.2.1.tgz#dd27ea6136243c7c880684e8672bb3a45fd9b614"
931 integrity sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==
932 dependencies:
933 minipass "^2.2.1"
934
935mkdirp@^0.5.0, mkdirp@^0.5.1:
936 version "0.5.1"
937 resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
938 integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
939 dependencies:
940 minimist "0.0.8"
941
942moment@^2.12.0:
943 version "2.24.0"
944 resolved "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b"
945 integrity sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==
946
947mp4-box-encoding@^1.1.0, mp4-box-encoding@^1.3.0:
948 version "1.3.0"
949 resolved "https://registry.yarnpkg.com/mp4-box-encoding/-/mp4-box-encoding-1.3.0.tgz#2a6f750947ff68c3a498fd76cd6424c53d995d48"
950 integrity sha512-U4pMLpjT/UzB8d36dxj6Mf1bG9xypEvgbuRIa1fztRXNKKTCAtRxsnFZhNOd7YDFOKtjBgssYGvo4H/Q3ZY1MA==
951 dependencies:
952 buffer-alloc "^1.2.0"
953 buffer-from "^1.1.0"
954 uint64be "^2.0.2"
955
956mp4-stream@^2.0.0:
957 version "2.0.3"
958 resolved "https://registry.yarnpkg.com/mp4-stream/-/mp4-stream-2.0.3.tgz#30acee07709d323f8dcd87a07b3ce9c3c4bfb364"
959 integrity sha512-5NzgI0+bGakoZEwnIYINXqB3mnewkt3Y7jcvkXsTubnCNUSdM8cpP0Vemxf6FLg0qUN8fydTgNMVAc3QU8B92g==
960 dependencies:
961 buffer-alloc "^1.1.0"
962 inherits "^2.0.1"
963 mp4-box-encoding "^1.1.0"
964 next-event "^1.0.0"
965 readable-stream "^2.0.3"
966
967ms@2.0.0:
968 version "2.0.0"
969 resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
970 integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
971
972ms@^2.1.1:
973 version "2.1.1"
974 resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a"
975 integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==
976
977multicast-dns@^6.0.1:
978 version "6.2.3"
979 resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229"
980 integrity sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==
981 dependencies:
982 dns-packet "^1.3.1"
983 thunky "^1.0.2"
984
985multistream@^2.0.2, multistream@^2.0.5:
986 version "2.1.1"
987 resolved "https://registry.yarnpkg.com/multistream/-/multistream-2.1.1.tgz#629d3a29bd76623489980d04519a2c365948148c"
988 integrity sha512-xasv76hl6nr1dEy3lPvy7Ej7K/Lx3O/FCvwge8PeVJpciPPoNCbaANcNiBug3IpdvTveZUcAV0DJzdnUDMesNQ==
989 dependencies:
990 inherits "^2.0.1"
991 readable-stream "^2.0.5"
992
993nan@*, nan@^2.3.2:
994 version "2.14.0"
995 resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c"
996 integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==
997
998needle@^2.2.1:
999 version "2.4.0"
1000 resolved "https://registry.yarnpkg.com/needle/-/needle-2.4.0.tgz#6833e74975c444642590e15a750288c5f939b57c"
1001 integrity sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg==
1002 dependencies:
1003 debug "^3.2.6"
1004 iconv-lite "^0.4.4"
1005 sax "^1.2.4"
1006
1007netmask@^1.0.6:
1008 version "1.0.6"
1009 resolved "https://registry.yarnpkg.com/netmask/-/netmask-1.0.6.tgz#20297e89d86f6f6400f250d9f4f6b4c1945fcd35"
1010 integrity sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=
1011
1012netrc-parser@^3.1.6:
1013 version "3.1.6"
1014 resolved "https://registry.yarnpkg.com/netrc-parser/-/netrc-parser-3.1.6.tgz#7243c9ec850b8e805b9bdc7eae7b1450d4a96e72"
1015 integrity sha512-lY+fmkqSwntAAjfP63jB4z5p5WbuZwyMCD3pInT7dpHU/Gc6Vv90SAC6A0aNiqaRGHiuZFBtiwu+pu8W/Eyotw==
1016 dependencies:
1017 debug "^3.1.0"
1018 execa "^0.10.0"
1019
1020network-address@^1.0.0, network-address@^1.1.0:
1021 version "1.1.2"
1022 resolved "https://registry.yarnpkg.com/network-address/-/network-address-1.1.2.tgz#4aa7bfd43f03f0b81c9702b13d6a858ddb326f3e"
1023 integrity sha1-Sqe/1D8D8LgclwKxPWqFjdsybz4=
1024
1025next-event@^1.0.0:
1026 version "1.0.0"
1027 resolved "https://registry.yarnpkg.com/next-event/-/next-event-1.0.0.tgz#e7778acde2e55802e0ad1879c39cf6f75eda61d8"
1028 integrity sha1-53eKzeLlWALgrRh5w5z2917aYdg=
1029
1030nice-try@^1.0.4:
1031 version "1.0.5"
1032 resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
1033 integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==
1034
1035node-cmake@2.3.2:
1036 version "2.3.2"
1037 resolved "https://registry.yarnpkg.com/node-cmake/-/node-cmake-2.3.2.tgz#e0fbc54b11405b07705e4d6d41865ae95ad289d0"
1038 integrity sha1-4PvFSxFAWwdwXk1tQYZa6VrSidA=
1039 dependencies:
1040 nan "*"
1041 which "^1.2.14"
1042 yargs "^7.0.2"
1043
1044node-gyp-build@~3.7.0:
1045 version "3.7.0"
1046 resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-3.7.0.tgz#daa77a4f547b9aed3e2aac779eaf151afd60ec8d"
1047 integrity sha512-L/Eg02Epx6Si2NXmedx+Okg+4UHqmaf3TNcxd50SF9NQGcJaON3AtU++kax69XV7YWz4tUspqZSAsVofhFKG2w==
1048
1049node-pre-gyp@0.11.x:
1050 version "0.11.0"
1051 resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.11.0.tgz#db1f33215272f692cd38f03238e3e9b47c5dd054"
1052 integrity sha512-TwWAOZb0j7e9eGaf9esRx3ZcLaE5tQ2lvYy1pb5IAaG1a2e2Kv5Lms1Y4hpj+ciXJRofIxxlt5haeQ/2ANeE0Q==
1053 dependencies:
1054 detect-libc "^1.0.2"
1055 mkdirp "^0.5.1"
1056 needle "^2.2.1"
1057 nopt "^4.0.1"
1058 npm-packlist "^1.1.6"
1059 npmlog "^4.0.2"
1060 rc "^1.2.7"
1061 rimraf "^2.6.1"
1062 semver "^5.3.0"
1063 tar "^4"
1064
1065node-ssdp@^2.2.0, node-ssdp@^2.7.1:
1066 version "2.9.1"
1067 resolved "https://registry.yarnpkg.com/node-ssdp/-/node-ssdp-2.9.1.tgz#2d6ba8e7eff9bf5b338564f91f7ac5d5cdddc55b"
1068 integrity sha1-LWuo5+/5v1szhWT5H3rF1c3dxVs=
1069 dependencies:
1070 debug "^2.2.0"
1071 ip "^1.0.1"
1072
1073nodebmc@0.0.7:
1074 version "0.0.7"
1075 resolved "https://registry.yarnpkg.com/nodebmc/-/nodebmc-0.0.7.tgz#fae179165265509302cefbebeabd29bd4035184d"
1076 integrity sha1-+uF5FlJlUJMCzvvr6r0pvUA1GE0=
1077 dependencies:
1078 mdns-js "0.5.0"
1079
1080nopt@^4.0.1:
1081 version "4.0.1"
1082 resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d"
1083 integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=
1084 dependencies:
1085 abbrev "1"
1086 osenv "^0.1.4"
1087
1088normalize-package-data@^2.3.2:
1089 version "2.5.0"
1090 resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
1091 integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
1092 dependencies:
1093 hosted-git-info "^2.1.4"
1094 resolve "^1.10.0"
1095 semver "2 || 3 || 4 || 5"
1096 validate-npm-package-license "^3.0.1"
1097
1098npm-bundled@^1.0.1:
1099 version "1.0.6"
1100 resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.6.tgz#e7ba9aadcef962bb61248f91721cd932b3fe6bdd"
1101 integrity sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==
1102
1103npm-packlist@^1.1.6:
1104 version "1.4.1"
1105 resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.1.tgz#19064cdf988da80ea3cee45533879d90192bbfbc"
1106 integrity sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==
1107 dependencies:
1108 ignore-walk "^3.0.1"
1109 npm-bundled "^1.0.1"
1110
1111npm-run-path@^2.0.0:
1112 version "2.0.2"
1113 resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f"
1114 integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=
1115 dependencies:
1116 path-key "^2.0.0"
1117
1118npmlog@^4.0.2:
1119 version "4.1.2"
1120 resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
1121 integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==
1122 dependencies:
1123 are-we-there-yet "~1.1.2"
1124 console-control-strings "~1.1.0"
1125 gauge "~2.7.3"
1126 set-blocking "~2.0.0"
1127
1128number-is-nan@^1.0.0:
1129 version "1.0.1"
1130 resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
1131 integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=
1132
1133object-assign@^4.1.0:
1134 version "4.1.1"
1135 resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
1136 integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
1137
1138once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0:
1139 version "1.4.0"
1140 resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
1141 integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
1142 dependencies:
1143 wrappy "1"
1144
1145open@0.0.5:
1146 version "0.0.5"
1147 resolved "https://registry.yarnpkg.com/open/-/open-0.0.5.tgz#42c3e18ec95466b6bf0dc42f3a2945c3f0cad8fc"
1148 integrity sha1-QsPhjslUZra/DcQvOilFw/DK2Pw=
1149
1150optjs@latest:
1151 version "3.2.2"
1152 resolved "https://registry.yarnpkg.com/optjs/-/optjs-3.2.2.tgz#69a6ce89c442a44403141ad2f9b370bd5bb6f4ee"
1153 integrity sha1-aabOicRCpEQDFBrS+bNwvVu29O4=
1154
1155os-homedir@^1.0.0:
1156 version "1.0.2"
1157 resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
1158 integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M=
1159
1160os-locale@^1.4.0:
1161 version "1.4.0"
1162 resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9"
1163 integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=
1164 dependencies:
1165 lcid "^1.0.0"
1166
1167os-tmpdir@^1.0.0:
1168 version "1.0.2"
1169 resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
1170 integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
1171
1172osenv@^0.1.4:
1173 version "0.1.5"
1174 resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410"
1175 integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==
1176 dependencies:
1177 os-homedir "^1.0.0"
1178 os-tmpdir "^1.0.0"
1179
1180p-finally@^1.0.0:
1181 version "1.0.0"
1182 resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
1183 integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=
1184
1185package-json-versionify@^1.0.2:
1186 version "1.0.4"
1187 resolved "https://registry.yarnpkg.com/package-json-versionify/-/package-json-versionify-1.0.4.tgz#5860587a944873a6b7e6d26e8e51ffb22315bf17"
1188 integrity sha1-WGBYepRIc6a35tJujlH/siMVvxc=
1189 dependencies:
1190 browserify-package-json "^1.0.0"
1191
1192parse-json@^2.2.0:
1193 version "2.2.0"
1194 resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9"
1195 integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=
1196 dependencies:
1197 error-ex "^1.2.0"
1198
1199parse-numeric-range@^0.0.2:
1200 version "0.0.2"
1201 resolved "https://registry.yarnpkg.com/parse-numeric-range/-/parse-numeric-range-0.0.2.tgz#b4f09d413c7adbcd987f6e9233c7b4b210c938e4"
1202 integrity sha1-tPCdQTx6282Yf26SM8e0shDJOOQ=
1203
1204parse-torrent@^6.0.0, parse-torrent@^6.1.2:
1205 version "6.1.2"
1206 resolved "https://registry.yarnpkg.com/parse-torrent/-/parse-torrent-6.1.2.tgz#99da5bdd23435a1cb7e8e7a63847c4efb21b1956"
1207 integrity sha512-Z/vig84sHwtrTEbOzisT4xnYTFlOgAaLQccPruMPgRahZUppVE/BUXzAos3jZM7c64o0lfukQdQ4ozWa5lN39w==
1208 dependencies:
1209 bencode "^2.0.0"
1210 blob-to-buffer "^1.2.6"
1211 get-stdin "^6.0.0"
1212 magnet-uri "^5.1.3"
1213 simple-get "^3.0.1"
1214 simple-sha1 "^2.0.0"
1215 uniq "^1.0.1"
1216
1217path-exists@^2.0.0:
1218 version "2.1.0"
1219 resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
1220 integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=
1221 dependencies:
1222 pinkie-promise "^2.0.0"
1223
1224path-is-absolute@^1.0.0:
1225 version "1.0.1"
1226 resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
1227 integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
1228
1229path-key@^2.0.0, path-key@^2.0.1:
1230 version "2.0.1"
1231 resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40"
1232 integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=
1233
1234path-parse@^1.0.6:
1235 version "1.0.6"
1236 resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c"
1237 integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==
1238
1239path-type@^1.0.0:
1240 version "1.1.0"
1241 resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441"
1242 integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=
1243 dependencies:
1244 graceful-fs "^4.1.2"
1245 pify "^2.0.0"
1246 pinkie-promise "^2.0.0"
1247
1248piece-length@^1.0.0:
1249 version "1.0.0"
1250 resolved "https://registry.yarnpkg.com/piece-length/-/piece-length-1.0.0.tgz#4db7167157fd69fef14caf7262cd39f189b24508"
1251 integrity sha1-TbcWcVf9af7xTK9yYs058YmyRQg=
1252 dependencies:
1253 closest-to "~2.0.0"
1254
1255pify@^2.0.0, pify@^2.2.0:
1256 version "2.3.0"
1257 resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
1258 integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw=
1259
1260pinkie-promise@^2.0.0:
1261 version "2.0.1"
1262 resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
1263 integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o=
1264 dependencies:
1265 pinkie "^2.0.0"
1266
1267pinkie@^2.0.0:
1268 version "2.0.4"
1269 resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
1270 integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA=
1271
1272plist-with-patches@0.5.1:
1273 version "0.5.1"
1274 resolved "https://registry.yarnpkg.com/plist-with-patches/-/plist-with-patches-0.5.1.tgz#868aae2e0df8989b026562b35cbc19cfd8bb780d"
1275 integrity sha1-hoquLg34mJsCZWKzXLwZz9i7eA0=
1276 dependencies:
1277 xmlbuilder "0.4.x"
1278 xmldom "0.1.x"
1279
1280prettier-bytes@^1.0.3:
1281 version "1.0.4"
1282 resolved "https://registry.yarnpkg.com/prettier-bytes/-/prettier-bytes-1.0.4.tgz#994b02aa46f699c50b6257b5faaa7fe2557e62d6"
1283 integrity sha1-mUsCqkb2mcULYle1+qp/4lV+YtY=
1284
1285process-nextick-args@~2.0.0:
1286 version "2.0.0"
1287 resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa"
1288 integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==
1289
1290protobufjs@^3.2.2:
1291 version "3.8.2"
1292 resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-3.8.2.tgz#bc826e34c3af4697e8d0af7a669e4d612aedcd17"
1293 integrity sha1-vIJuNMOvRpfo0K96Zp5NYSrtzRc=
1294 dependencies:
1295 ascli "~0.3"
1296 bytebuffer "~3 >=3.5"
1297
1298pump@^3.0.0:
1299 version "3.0.0"
1300 resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
1301 integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==
1302 dependencies:
1303 end-of-stream "^1.1.0"
1304 once "^1.3.1"
1305
1306qap@^3.1.2:
1307 version "3.3.1"
1308 resolved "https://registry.yarnpkg.com/qap/-/qap-3.3.1.tgz#11f9e8fa8890fe7cb99210c0f44d0613b7372cac"
1309 integrity sha1-Efno+oiQ/ny5khDA9E0GE7c3LKw=
1310
1311random-access-file@^2.0.1:
1312 version "2.1.2"
1313 resolved "https://registry.yarnpkg.com/random-access-file/-/random-access-file-2.1.2.tgz#eeb32e50b9831f32060516862381152ae4e05aa6"
1314 integrity sha512-dZo7HEcEPbZ/6XLXC4GXypiWvFbXVkdeMrJTi0B94pBJwddt/AvJh8GaQhso6KGYROGYCI/VWdHbmRDtkwT9pQ==
1315 dependencies:
1316 mkdirp "^0.5.1"
1317 random-access-storage "^1.1.1"
1318
1319random-access-storage@^1.1.1:
1320 version "1.3.0"
1321 resolved "https://registry.yarnpkg.com/random-access-storage/-/random-access-storage-1.3.0.tgz#d27e4d897b79dc4358afc2bbe553044e5c8cfe35"
1322 integrity sha512-pdS9Mcb9TB7oICypPRALlheaSuszuAKmLVEPKJMuYor7R/zDuHh5ALuQoS+ox31XRwQUL+tDwWH2GPdyspwelA==
1323 dependencies:
1324 inherits "^2.0.3"
1325
1326random-iterate@^1.0.1:
1327 version "1.0.1"
1328 resolved "https://registry.yarnpkg.com/random-iterate/-/random-iterate-1.0.1.tgz#f7d97d92dee6665ec5f6da08c7f963cad4b2ac99"
1329 integrity sha1-99l9kt7mZl7F9toIx/ljytSyrJk=
1330
1331randombytes@^2.0.3, randombytes@^2.0.5:
1332 version "2.1.0"
1333 resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a"
1334 integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==
1335 dependencies:
1336 safe-buffer "^5.1.0"
1337
1338range-parser@^1.2.0:
1339 version "1.2.1"
1340 resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031"
1341 integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==
1342
1343range-slice-stream@^2.0.0:
1344 version "2.0.0"
1345 resolved "https://registry.yarnpkg.com/range-slice-stream/-/range-slice-stream-2.0.0.tgz#1f25fc7a2cacf9ccd140c46f9cf670a1a7fe3ce6"
1346 integrity sha512-PPYLwZ63lXi6Tv2EZ8w3M4FzC0rVqvxivaOVS8pXSp5FMIHFnvi4MWHL3UdFLhwSy50aNtJsgjY0mBC6oFL26Q==
1347 dependencies:
1348 readable-stream "^3.0.2"
1349
1350rc@^1.2.7:
1351 version "1.2.8"
1352 resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
1353 integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==
1354 dependencies:
1355 deep-extend "^0.6.0"
1356 ini "~1.3.0"
1357 minimist "^1.2.0"
1358 strip-json-comments "~2.0.1"
1359
1360read-pkg-up@^1.0.1:
1361 version "1.0.1"
1362 resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02"
1363 integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=
1364 dependencies:
1365 find-up "^1.0.0"
1366 read-pkg "^1.0.0"
1367
1368read-pkg@^1.0.0:
1369 version "1.1.0"
1370 resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28"
1371 integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=
1372 dependencies:
1373 load-json-file "^1.0.0"
1374 normalize-package-data "^2.3.2"
1375 path-type "^1.0.0"
1376
1377readable-stream@^2.0.3, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.2.2, readable-stream@^2.3.2, readable-stream@^2.3.4:
1378 version "2.3.6"
1379 resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
1380 integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==
1381 dependencies:
1382 core-util-is "~1.0.0"
1383 inherits "~2.0.3"
1384 isarray "~1.0.0"
1385 process-nextick-args "~2.0.0"
1386 safe-buffer "~5.1.1"
1387 string_decoder "~1.1.1"
1388 util-deprecate "~1.0.1"
1389
1390readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.0.6:
1391 version "3.3.0"
1392 resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.3.0.tgz#cb8011aad002eb717bf040291feba8569c986fb9"
1393 integrity sha512-EsI+s3k3XsW+fU8fQACLN59ky34AZ14LoeVZpYwmZvldCFo0r0gnelwF2TcMjLor/BTL5aDJVBMkss0dthToPw==
1394 dependencies:
1395 inherits "^2.0.3"
1396 string_decoder "^1.1.1"
1397 util-deprecate "^1.0.1"
1398
1399record-cache@^1.0.2:
1400 version "1.1.0"
1401 resolved "https://registry.yarnpkg.com/record-cache/-/record-cache-1.1.0.tgz#f8a467a691a469584b26e88d36b18afdb3932037"
1402 integrity sha512-u8rbtLEJV7HRacl/ZYwSBFD8NFyB3PfTTfGLP37IW3hftQCwu6z4Q2RLyxo1YJUNRTEzJfpLpGwVuEYdaIkG9Q==
1403
1404render-media@^3.0.0:
1405 version "3.1.3"
1406 resolved "https://registry.yarnpkg.com/render-media/-/render-media-3.1.3.tgz#aa8c8cd3f720049370067180709b551d3c566254"
1407 integrity sha512-K7ziKKlIcgYpAovRsABDiSaNn7TzDDyyuFGpRwM52cloNcajInB6sCxFPUEzOuTJUeyvKCqT/k5INOjpKLCjhQ==
1408 dependencies:
1409 debug "^3.1.0"
1410 is-ascii "^1.0.0"
1411 mediasource "^2.1.0"
1412 stream-to-blob-url "^2.0.0"
1413 videostream "^2.5.1"
1414
1415require-directory@^2.1.1:
1416 version "2.1.1"
1417 resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
1418 integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I=
1419
1420require-main-filename@^1.0.1:
1421 version "1.0.1"
1422 resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1"
1423 integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=
1424
1425resolve@^1.10.0:
1426 version "1.11.0"
1427 resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.11.0.tgz#4014870ba296176b86343d50b60f3b50609ce232"
1428 integrity sha512-WL2pBDjqT6pGUNSUzMw00o4T7If+z4H2x3Gz893WoUQ5KW8Vr9txp00ykiP16VBaZF5+j/OcXJHZ9+PCvdiDKw==
1429 dependencies:
1430 path-parse "^1.0.6"
1431
1432rimraf@^2.4.2, rimraf@^2.6.1:
1433 version "2.6.3"
1434 resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab"
1435 integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==
1436 dependencies:
1437 glob "^7.1.3"
1438
1439run-parallel-limit@^1.0.3:
1440 version "1.0.5"
1441 resolved "https://registry.yarnpkg.com/run-parallel-limit/-/run-parallel-limit-1.0.5.tgz#c29a4fd17b4df358cb52a8a697811a63c984f1b7"
1442 integrity sha512-NsY+oDngvrvMxKB3G8ijBzIema6aYbQMD2bHOamvN52BysbIGTnEY2xsNyfrcr9GhY995/t/0nQN3R3oZvaDlg==
1443
1444run-parallel@^1.0.0, run-parallel@^1.1.2, run-parallel@^1.1.6:
1445 version "1.1.9"
1446 resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679"
1447 integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==
1448
1449run-series@^1.0.2:
1450 version "1.1.8"
1451 resolved "https://registry.yarnpkg.com/run-series/-/run-series-1.1.8.tgz#2c4558f49221e01cd6371ff4e0a1e203e460fc36"
1452 integrity sha512-+GztYEPRpIsQoCSraWHDBs9WVy4eVME16zhOtDB4H9J4xN0XRhknnmLOl+4gRgZtu8dpp9N/utSPjKH/xmDzXg==
1453
1454rusha@^0.8.1:
1455 version "0.8.13"
1456 resolved "https://registry.yarnpkg.com/rusha/-/rusha-0.8.13.tgz#9a084e7b860b17bff3015b92c67a6a336191513a"
1457 integrity sha1-mghOe4YLF7/zAVuSxnpqM2GRUTo=
1458
1459safe-buffer@^5.0.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
1460 version "5.1.2"
1461 resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
1462 integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
1463
1464"safer-buffer@>= 2.1.2 < 3":
1465 version "2.1.2"
1466 resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
1467 integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
1468
1469sax@1.1.4:
1470 version "1.1.4"
1471 resolved "https://registry.yarnpkg.com/sax/-/sax-1.1.4.tgz#74b6d33c9ae1e001510f179a91168588f1aedaa9"
1472 integrity sha1-dLbTPJrh4AFRDxeakRaFiPGu2qk=
1473
1474sax@>=0.6.0, sax@^1.2.4:
1475 version "1.2.4"
1476 resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
1477 integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
1478
1479"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.5.0:
1480 version "5.7.0"
1481 resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b"
1482 integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==
1483
1484semver@~5.1.0:
1485 version "5.1.1"
1486 resolved "https://registry.yarnpkg.com/semver/-/semver-5.1.1.tgz#a3292a373e6f3e0798da0b20641b9a9c5bc47e19"
1487 integrity sha1-oykqNz5vPgeY2gsgZBuanFvEfhk=
1488
1489set-blocking@^2.0.0, set-blocking@~2.0.0:
1490 version "2.0.0"
1491 resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
1492 integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc=
1493
1494shebang-command@^1.2.0:
1495 version "1.2.0"
1496 resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
1497 integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=
1498 dependencies:
1499 shebang-regex "^1.0.0"
1500
1501shebang-regex@^1.0.0:
1502 version "1.0.0"
1503 resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
1504 integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=
1505
1506signal-exit@^3.0.0:
1507 version "3.0.2"
1508 resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
1509 integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=
1510
1511simple-concat@^1.0.0:
1512 version "1.0.0"
1513 resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.0.tgz#7344cbb8b6e26fb27d66b2fc86f9f6d5997521c6"
1514 integrity sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=
1515
1516simple-get@^2.0.0, simple-get@^2.1.0:
1517 version "2.8.1"
1518 resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-2.8.1.tgz#0e22e91d4575d87620620bc91308d57a77f44b5d"
1519 integrity sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw==
1520 dependencies:
1521 decompress-response "^3.3.0"
1522 once "^1.3.1"
1523 simple-concat "^1.0.0"
1524
1525simple-get@^3.0.0, simple-get@^3.0.1:
1526 version "3.0.3"
1527 resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-3.0.3.tgz#924528ac3f9d7718ce5e9ec1b1a69c0be4d62efa"
1528 integrity sha512-Wvre/Jq5vgoz31Z9stYWPLn0PqRqmBDpFSdypAnHu5AvRVCYPRYGnvryNLiXu8GOBNDH82J2FRHUGMjjHUpXFw==
1529 dependencies:
1530 decompress-response "^3.3.0"
1531 once "^1.3.1"
1532 simple-concat "^1.0.0"
1533
1534simple-peer@^9.0.0:
1535 version "9.3.0"
1536 resolved "https://registry.yarnpkg.com/simple-peer/-/simple-peer-9.3.0.tgz#85ecb126b23d8730f3904f199db65e84141e0f4e"
1537 integrity sha512-5dLDfrRomrS2LuZUuH2aO7yTGtHFEl5Eb+8ZzqM0KC0lHcYUyJudUomP9ZY/lPUKBx2broL/Eee9bQ53yycEgQ==
1538 dependencies:
1539 debug "^4.0.1"
1540 get-browser-rtc "^1.0.0"
1541 inherits "^2.0.1"
1542 randombytes "^2.0.3"
1543 readable-stream "^2.3.4"
1544
1545simple-sha1@^2.0.0, simple-sha1@^2.0.8, simple-sha1@^2.1.0:
1546 version "2.1.2"
1547 resolved "https://registry.yarnpkg.com/simple-sha1/-/simple-sha1-2.1.2.tgz#de40cbd5aae278fde8e3bb3250a35d74c67326b1"
1548 integrity sha512-TQl9rm4rdKAVmhO++sXAb8TNN0D6JAD5iyI1mqEPNpxUzTRrtm4aOG1pDf/5W/qCFihiaoK6uuL9rvQz1x1VKw==
1549 dependencies:
1550 rusha "^0.8.1"
1551
1552simple-websocket@^7.0.1:
1553 version "7.2.0"
1554 resolved "https://registry.yarnpkg.com/simple-websocket/-/simple-websocket-7.2.0.tgz#c3190555d74399372b96b51435f2d8c4b04611df"
1555 integrity sha512-wdxFg1fHw1yqFKWDcw+yNb4VIYqtl+vknZMlpLhvZSlR6l7/iVuwozqo+Qtl73mB1IH5QnXzonD1S+hAaLNTvQ==
1556 dependencies:
1557 debug "^3.1.0"
1558 inherits "^2.0.1"
1559 randombytes "^2.0.3"
1560 readable-stream "^2.0.5"
1561 ws "^6.0.0"
1562
1563spdx-correct@^3.0.0:
1564 version "3.1.0"
1565 resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4"
1566 integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==
1567 dependencies:
1568 spdx-expression-parse "^3.0.0"
1569 spdx-license-ids "^3.0.0"
1570
1571spdx-exceptions@^2.1.0:
1572 version "2.2.0"
1573 resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977"
1574 integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==
1575
1576spdx-expression-parse@^3.0.0:
1577 version "3.0.0"
1578 resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0"
1579 integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==
1580 dependencies:
1581 spdx-exceptions "^2.1.0"
1582 spdx-license-ids "^3.0.0"
1583
1584spdx-license-ids@^3.0.0:
1585 version "3.0.4"
1586 resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz#75ecd1a88de8c184ef015eafb51b5b48bfd11bb1"
1587 integrity sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==
1588
1589speedometer@^1.0.0:
1590 version "1.1.0"
1591 resolved "https://registry.yarnpkg.com/speedometer/-/speedometer-1.1.0.tgz#a30b13abda45687a1a76977012c060f2ac8a7934"
1592 integrity sha512-z/wAiTESw2XVPssY2XRcme4niTc4S5FkkJ4gknudtVoc33Zil8TdTxHy5torRcgqMqksJV2Yz8HQcvtbsnw0mQ==
1593
1594split@^1.0.0:
1595 version "1.0.1"
1596 resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9"
1597 integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==
1598 dependencies:
1599 through "2"
1600
1601stream-to-blob-url@^2.0.0, stream-to-blob-url@^2.1.0:
1602 version "2.1.1"
1603 resolved "https://registry.yarnpkg.com/stream-to-blob-url/-/stream-to-blob-url-2.1.1.tgz#e1ac97f86ca8e9f512329a48e7830ce9a50beef2"
1604 integrity sha512-DKJPEmCmIZoBfGVle9IhSfERiWaN5cuOtmfPxP2dZbLDRZxkBWZ4QbYxEJOSALk1Kf+WjBgedAMO6qkkf7Lmrg==
1605 dependencies:
1606 stream-to-blob "^1.0.0"
1607
1608stream-to-blob@^1.0.0:
1609 version "1.0.1"
1610 resolved "https://registry.yarnpkg.com/stream-to-blob/-/stream-to-blob-1.0.1.tgz#2dc1e09b71677a234d00445f8eb7ff70c4fe9948"
1611 integrity sha512-aRy4neA4rf+qMtLT9fCRLPGWdrsIKtCx4kUdNTIPgPQ2hkHkdxbViVAvABMx9oRM6yCWfngHx6pwXfbYkVuPuw==
1612 dependencies:
1613 once "^1.3.3"
1614
1615stream-with-known-length-to-buffer@^1.0.0:
1616 version "1.0.2"
1617 resolved "https://registry.yarnpkg.com/stream-with-known-length-to-buffer/-/stream-with-known-length-to-buffer-1.0.2.tgz#b8ea5a92086a1ed5d27fc4c529636682118c945b"
1618 integrity sha512-UxSISjxmguvfYzZdq6d4XAjc3gAocqTIOS1CjgwkDkkGT/LMTsIYiV8agIw42IHFFHf8k4lPOoroCCf4W9oqzg==
1619 dependencies:
1620 once "^1.3.3"
1621
1622string-width@^1.0.1, string-width@^1.0.2:
1623 version "1.0.2"
1624 resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
1625 integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=
1626 dependencies:
1627 code-point-at "^1.0.0"
1628 is-fullwidth-code-point "^1.0.0"
1629 strip-ansi "^3.0.0"
1630
1631"string-width@^1.0.2 || 2":
1632 version "2.1.1"
1633 resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
1634 integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==
1635 dependencies:
1636 is-fullwidth-code-point "^2.0.0"
1637 strip-ansi "^4.0.0"
1638
1639string2compact@^1.1.1, string2compact@^1.2.5:
1640 version "1.3.0"
1641 resolved "https://registry.yarnpkg.com/string2compact/-/string2compact-1.3.0.tgz#22d946127b082d1203c51316af60117a337423c3"
1642 integrity sha512-004ulKKANDuQilQsNxy2lisrpMG0qUJxBU+2YCEF7KziRyNR0Nredm2qk0f1V82nva59H3y9GWeHXE63HzGRFw==
1643 dependencies:
1644 addr-to-ip-port "^1.0.1"
1645 ipaddr.js "^1.0.1"
1646
1647string_decoder@^1.1.1:
1648 version "1.2.0"
1649 resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.2.0.tgz#fe86e738b19544afe70469243b2a1ee9240eae8d"
1650 integrity sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w==
1651 dependencies:
1652 safe-buffer "~5.1.0"
1653
1654string_decoder@~1.1.1:
1655 version "1.1.1"
1656 resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
1657 integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
1658 dependencies:
1659 safe-buffer "~5.1.0"
1660
1661strip-ansi@^3.0.0, strip-ansi@^3.0.1:
1662 version "3.0.1"
1663 resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
1664 integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=
1665 dependencies:
1666 ansi-regex "^2.0.0"
1667
1668strip-ansi@^4.0.0:
1669 version "4.0.0"
1670 resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f"
1671 integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8=
1672 dependencies:
1673 ansi-regex "^3.0.0"
1674
1675strip-bom@^2.0.0:
1676 version "2.0.0"
1677 resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
1678 integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=
1679 dependencies:
1680 is-utf8 "^0.2.0"
1681
1682strip-eof@^1.0.0:
1683 version "1.0.0"
1684 resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf"
1685 integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=
1686
1687strip-json-comments@~2.0.1:
1688 version "2.0.1"
1689 resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
1690 integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
1691
1692tar@^4:
1693 version "4.4.8"
1694 resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.8.tgz#b19eec3fde2a96e64666df9fdb40c5ca1bc3747d"
1695 integrity sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==
1696 dependencies:
1697 chownr "^1.1.1"
1698 fs-minipass "^1.2.5"
1699 minipass "^2.3.4"
1700 minizlib "^1.1.1"
1701 mkdirp "^0.5.0"
1702 safe-buffer "^5.1.2"
1703 yallist "^3.0.2"
1704
1705thirty-two@^1.0.1:
1706 version "1.0.2"
1707 resolved "https://registry.yarnpkg.com/thirty-two/-/thirty-two-1.0.2.tgz#4ca2fffc02a51290d2744b9e3f557693ca6b627a"
1708 integrity sha1-TKL//AKlEpDSdEueP1V2k8prYno=
1709
1710through@2:
1711 version "2.3.8"
1712 resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
1713 integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=
1714
1715thunky@^0.1.0:
1716 version "0.1.0"
1717 resolved "https://registry.yarnpkg.com/thunky/-/thunky-0.1.0.tgz#bf30146824e2b6e67b0f2d7a4ac8beb26908684e"
1718 integrity sha1-vzAUaCTituZ7Dy16Ssi+smkIaE4=
1719
1720thunky@^1.0.1, thunky@^1.0.2:
1721 version "1.0.3"
1722 resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.0.3.tgz#f5df732453407b09191dae73e2a8cc73f381a826"
1723 integrity sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow==
1724
1725to-arraybuffer@^1.0.1:
1726 version "1.0.1"
1727 resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
1728 integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=
1729
1730torrent-discovery@^9.1.1:
1731 version "9.1.1"
1732 resolved "https://registry.yarnpkg.com/torrent-discovery/-/torrent-discovery-9.1.1.tgz#56704e6747b24fe00dbb75b442d202051f78d37d"
1733 integrity sha512-3mHf+bxVCVLrlkPJdAoMbPMY1hpTZVeWw5hNc2pPFm+HCc2DS0HgVFTBTSWtB8vQPWA1hSEZpqJ+3QfdXxDE1g==
1734 dependencies:
1735 bittorrent-dht "^9.0.0"
1736 bittorrent-tracker "^9.0.0"
1737 debug "^3.1.0"
1738 run-parallel "^1.1.2"
1739
1740torrent-piece@^2.0.0:
1741 version "2.0.0"
1742 resolved "https://registry.yarnpkg.com/torrent-piece/-/torrent-piece-2.0.0.tgz#6598ae67d93699e887f178db267ba16d89d7ec9b"
1743 integrity sha512-H/Z/yCuvZJj1vl1IQHI8dvF2QrUuXRJoptT5DW5967/dsLpXlCg+uyhFR5lfNj5mNaYePUbKtnL+qKWZGXv4Nw==
1744
1745typedarray-to-buffer@^3.0.0:
1746 version "3.1.5"
1747 resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080"
1748 integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==
1749 dependencies:
1750 is-typedarray "^1.0.0"
1751
1752typedarray@^0.0.6:
1753 version "0.0.6"
1754 resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
1755 integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
1756
1757uint64be@^2.0.2:
1758 version "2.0.2"
1759 resolved "https://registry.yarnpkg.com/uint64be/-/uint64be-2.0.2.tgz#ef4a179752fe8f9ddaa29544ecfc13490031e8e5"
1760 integrity sha512-9QqdvpGQTXgxthP+lY4e/gIBy+RuqcBaC6JVwT5I3bDLgT/btL6twZMR0pI3/Fgah9G/pdwzIprE5gL6v9UvyQ==
1761 dependencies:
1762 buffer-alloc "^1.1.0"
1763
1764uniq@^1.0.1:
1765 version "1.0.1"
1766 resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff"
1767 integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=
1768
1769unordered-array-remove@^1.0.2:
1770 version "1.0.2"
1771 resolved "https://registry.yarnpkg.com/unordered-array-remove/-/unordered-array-remove-1.0.2.tgz#c546e8f88e317a0cf2644c97ecb57dba66d250ef"
1772 integrity sha1-xUbo+I4xegzyZEyX7LV9umbSUO8=
1773
1774upnp-device-client@^1.0.0:
1775 version "1.0.2"
1776 resolved "https://registry.yarnpkg.com/upnp-device-client/-/upnp-device-client-1.0.2.tgz#91f84705f2349bf89082855fff4e3006ac435337"
1777 integrity sha1-kfhHBfI0m/iQgoVf/04wBqxDUzc=
1778 dependencies:
1779 concat-stream "^1.4.8"
1780 debug "^2.1.3"
1781 elementtree "~0.1.6"
1782 network-address "^1.0.0"
1783
1784upnp-mediarenderer-client@^1.2.2:
1785 version "1.2.4"
1786 resolved "https://registry.yarnpkg.com/upnp-mediarenderer-client/-/upnp-mediarenderer-client-1.2.4.tgz#0c63a51802082b6b03b596c475cc64fc1e0877c8"
1787 integrity sha1-DGOlGAIIK2sDtZbEdcxk/B4Id8g=
1788 dependencies:
1789 debug "^2.1.3"
1790 elementtree "^0.1.6"
1791 upnp-device-client "^1.0.0"
1792
1793url-join@^2.0.5:
1794 version "2.0.5"
1795 resolved "https://registry.yarnpkg.com/url-join/-/url-join-2.0.5.tgz#5af22f18c052a000a48d7b82c5e9c2e2feeda728"
1796 integrity sha1-WvIvGMBSoACkjXuCxenC4v7tpyg=
1797
1798ut_metadata@^3.3.0:
1799 version "3.3.0"
1800 resolved "https://registry.yarnpkg.com/ut_metadata/-/ut_metadata-3.3.0.tgz#a0e0e861ebc39ed96e506601d1463ade3b548a7e"
1801 integrity sha512-IK+ke9yL6a4oPLz/3oSW9TW7m9Wr4RG+5kW5aS2YulzEU1QDGAtago/NnOlno91fo3fSO7mnsqzn3NXNXdv8nA==
1802 dependencies:
1803 bencode "^2.0.0"
1804 bitfield "^2.0.0"
1805 debug "^3.1.0"
1806 simple-sha1 "^2.0.0"
1807
1808ut_pex@^1.1.1:
1809 version "1.2.1"
1810 resolved "https://registry.yarnpkg.com/ut_pex/-/ut_pex-1.2.1.tgz#472ed0ea5e9bbc9148b833339d56d7b17cf3dad0"
1811 integrity sha512-ZrxMCbffYtxQDqvREN9kBXK2CB9tPnd5PylHoqQX9ai+3HV9/S39FnA5JnhLOC82dxIQQg0nTN2wmhtAdGNtOA==
1812 dependencies:
1813 bencode "^2.0.0"
1814 compact2string "^1.2.0"
1815 inherits "^2.0.1"
1816 string2compact "^1.2.5"
1817
1818utf-8-validate@^5.0.1:
1819 version "5.0.2"
1820 resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.2.tgz#63cfbccd85dc1f2b66cf7a1d0eebc08ed056bfb3"
1821 integrity sha512-SwV++i2gTD5qh2XqaPzBnNX88N6HdyhQrNNRykvcS0QKvItV9u3vPEJr+X5Hhfb1JC0r0e1alL0iB09rY8+nmw==
1822 dependencies:
1823 node-gyp-build "~3.7.0"
1824
1825util-deprecate@^1.0.1, util-deprecate@~1.0.1:
1826 version "1.0.2"
1827 resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
1828 integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
1829
1830validate-npm-package-license@^3.0.1:
1831 version "3.0.4"
1832 resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"
1833 integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==
1834 dependencies:
1835 spdx-correct "^3.0.0"
1836 spdx-expression-parse "^3.0.0"
1837
1838videostream@^2.5.1:
1839 version "2.6.0"
1840 resolved "https://registry.yarnpkg.com/videostream/-/videostream-2.6.0.tgz#7f0b2b84bc457c12cfe599aa2345f5cc06241ab6"
1841 integrity sha512-nSsullx1BYClJxVSt4Fa+Ulsv0Cf7UwaHq+4LQdLkAUdmqNhY1DlGxXDWVY2gui5XV4FvDiSbXmSbGryMrrUCQ==
1842 dependencies:
1843 binary-search "^1.3.4"
1844 inherits "^2.0.1"
1845 mediasource "^2.2.2"
1846 mp4-box-encoding "^1.3.0"
1847 mp4-stream "^2.0.0"
1848 multistream "^2.0.2"
1849 pump "^3.0.0"
1850 range-slice-stream "^2.0.0"
1851
1852vlc-command@^1.0.0:
1853 version "1.1.2"
1854 resolved "https://registry.yarnpkg.com/vlc-command/-/vlc-command-1.1.2.tgz#61a9b4249a0001c0bcac8cdaf36d3a8e674cffce"
1855 integrity sha512-KZ15RTHz96OEiQDA8oNFn1edYDWyKJIWI4gF74Am9woZo5XmVYryk5RYXSwOMvsaAgL5ejICEGCl0suQyDBu+Q==
1856 dependencies:
1857 run-parallel "^1.1.6"
1858 winreg "^1.2.1"
1859
1860webidl-conversions@^4.0.2:
1861 version "4.0.2"
1862 resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad"
1863 integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==
1864
1865webtorrent-cli@^1.12.3:
1866 version "1.12.3"
1867 resolved "https://registry.yarnpkg.com/webtorrent-cli/-/webtorrent-cli-1.12.3.tgz#e6a1060cd3f104346da91e67763276ca897f238c"
1868 integrity sha512-NnBAGkD64CRsl9edM9q0QU+ku6nCX32nM0U+YC8Gs/36c8y+5m9Tya3mWIux3oZKZ54yGiVtnok4tUpqDE5tMA==
1869 dependencies:
1870 clivas "^0.2.0"
1871 create-torrent "^3.23.1"
1872 dlnacasts "^0.1.0"
1873 ecstatic "^3.0.0"
1874 executable "^4.0.0"
1875 mime "^2.1.0"
1876 minimist "^1.2.0"
1877 moment "^2.12.0"
1878 network-address "^1.1.0"
1879 open "0.0.5"
1880 parse-torrent "^6.0.0"
1881 prettier-bytes "^1.0.3"
1882 vlc-command "^1.0.0"
1883 webtorrent "0.x"
1884 winreg "^1.0.1"
1885 optionalDependencies:
1886 airplay-js "^0.3.0"
1887 chromecasts "^1.5.3"
1888 nodebmc "0.0.7"
1889
1890webtorrent-hybrid@^2.1.0:
1891 version "2.1.0"
1892 resolved "https://registry.yarnpkg.com/webtorrent-hybrid/-/webtorrent-hybrid-2.1.0.tgz#c14d33d6769667d8ae524ca2d9dfdcd18d4cfbf2"
1893 integrity sha512-S8tUgUbPLwGazPrBMTqjsuxlmhaCZaiC+KlgS7ECRGaHVVZTJjKG2kUw8uf558DdZbsEA3jNxOOsMvXiA62sFw==
1894 dependencies:
1895 create-torrent "^3.33.0"
1896 webtorrent "^0.x"
1897 webtorrent-cli "^1.12.3"
1898 wrtc "^0.3.3"
1899
1900webtorrent@0.x, webtorrent@^0.x:
1901 version "0.103.1"
1902 resolved "https://registry.yarnpkg.com/webtorrent/-/webtorrent-0.103.1.tgz#18ead369bbcaa60dc8ea138784c33451edd34479"
1903 integrity sha512-rqMD8sAaPzrUzEpA6gDEOgcN9Xyz4WGrQiHoVY6HlymLoNSkScMnmnEX1bsdMcIU9iOrnUlghDEW9sJ9jYCmwQ==
1904 dependencies:
1905 addr-to-ip-port "^1.4.2"
1906 bitfield "^2.0.0"
1907 bittorrent-dht "^9.0.0"
1908 bittorrent-protocol "^3.0.0"
1909 chunk-store-stream "^3.0.1"
1910 create-torrent "^3.33.0"
1911 debug "^4.1.0"
1912 end-of-stream "^1.1.0"
1913 fs-chunk-store "^1.6.2"
1914 immediate-chunk-store "^2.0.0"
1915 load-ip-set "^2.1.0"
1916 memory-chunk-store "^1.2.0"
1917 mime "^2.4.0"
1918 multistream "^2.0.5"
1919 package-json-versionify "^1.0.2"
1920 parse-numeric-range "^0.0.2"
1921 parse-torrent "^6.1.2"
1922 pump "^3.0.0"
1923 random-iterate "^1.0.1"
1924 randombytes "^2.0.3"
1925 range-parser "^1.2.0"
1926 readable-stream "^3.0.6"
1927 render-media "^3.0.0"
1928 run-parallel "^1.1.6"
1929 run-parallel-limit "^1.0.3"
1930 safe-buffer "^5.0.1"
1931 simple-concat "^1.0.0"
1932 simple-get "^3.0.1"
1933 simple-peer "^9.0.0"
1934 simple-sha1 "^2.0.8"
1935 speedometer "^1.0.0"
1936 stream-to-blob "^1.0.0"
1937 stream-to-blob-url "^2.1.0"
1938 stream-with-known-length-to-buffer "^1.0.0"
1939 torrent-discovery "^9.1.1"
1940 torrent-piece "^2.0.0"
1941 uniq "^1.0.1"
1942 unordered-array-remove "^1.0.2"
1943 ut_metadata "^3.3.0"
1944 ut_pex "^1.1.1"
1945
1946which-module@^1.0.0:
1947 version "1.0.0"
1948 resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f"
1949 integrity sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=
1950
1951which@^1.2.14, which@^1.2.9:
1952 version "1.3.1"
1953 resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
1954 integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
1955 dependencies:
1956 isexe "^2.0.0"
1957
1958wide-align@^1.1.0:
1959 version "1.1.3"
1960 resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457"
1961 integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==
1962 dependencies:
1963 string-width "^1.0.2 || 2"
1964
1965winreg@^1.0.1, winreg@^1.2.1:
1966 version "1.2.4"
1967 resolved "https://registry.yarnpkg.com/winreg/-/winreg-1.2.4.tgz#ba065629b7a925130e15779108cf540990e98d1b"
1968 integrity sha1-ugZWKbepJRMOFXeRCM9UCZDpjRs=
1969
1970wrap-ansi@^2.0.0:
1971 version "2.1.0"
1972 resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85"
1973 integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=
1974 dependencies:
1975 string-width "^1.0.1"
1976 strip-ansi "^3.0.1"
1977
1978wrappy@1:
1979 version "1.0.2"
1980 resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
1981 integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
1982
1983wrtc@^0.3.3:
1984 version "0.3.7"
1985 resolved "https://registry.yarnpkg.com/wrtc/-/wrtc-0.3.7.tgz#2279f1cb3a83573e77b3d9b7e720071fab2ae4af"
1986 integrity sha512-mDFNFqAB+3IYVKlP15vpGD0EhXjsQlj/GLNje4KLpClLSq8pyTG0xqJFoU+Oq43XvDIUMmIJ/r1aNfrjT7KUQw==
1987 dependencies:
1988 nan "^2.3.2"
1989 node-cmake "2.3.2"
1990 node-pre-gyp "0.11.x"
1991 optionalDependencies:
1992 domexception "^1.0.1"
1993
1994ws@^6.0.0:
1995 version "6.2.1"
1996 resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.1.tgz#442fdf0a47ed64f59b6a5d8ff130f4748ed524fb"
1997 integrity sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==
1998 dependencies:
1999 async-limiter "~1.0.0"
2000
2001xml2js@^0.4.8:
2002 version "0.4.19"
2003 resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.19.tgz#686c20f213209e94abf0d1bcf1efaa291c7827a7"
2004 integrity sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==
2005 dependencies:
2006 sax ">=0.6.0"
2007 xmlbuilder "~9.0.1"
2008
2009xmlbuilder@0.4.x:
2010 version "0.4.3"
2011 resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-0.4.3.tgz#c4614ba74e0ad196e609c9272cd9e1ddb28a8a58"
2012 integrity sha1-xGFLp04K0ZbmCcknLNnh3bKKilg=
2013
2014xmlbuilder@~9.0.1:
2015 version "9.0.7"
2016 resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d"
2017 integrity sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=
2018
2019xmldom@0.1.x:
2020 version "0.1.27"
2021 resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.27.tgz#d501f97b3bdb403af8ef9ecc20573187aadac0e9"
2022 integrity sha1-1QH5ezvbQDr4757MIFcxh6rawOk=
2023
2024xtend@^4.0.0, xtend@^4.0.1:
2025 version "4.0.1"
2026 resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
2027 integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68=
2028
2029y18n@^3.2.1:
2030 version "3.2.1"
2031 resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41"
2032 integrity sha1-bRX7qITAhnnA136I53WegR4H+kE=
2033
2034yallist@^3.0.0, yallist@^3.0.2:
2035 version "3.0.3"
2036 resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9"
2037 integrity sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==
2038
2039yargs-parser@^5.0.0:
2040 version "5.0.0"
2041 resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a"
2042 integrity sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=
2043 dependencies:
2044 camelcase "^3.0.0"
2045
2046yargs@^7.0.2:
2047 version "7.1.0"
2048 resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8"
2049 integrity sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=
2050 dependencies:
2051 camelcase "^3.0.0"
2052 cliui "^3.2.0"
2053 decamelize "^1.1.1"
2054 get-caller-file "^1.0.1"
2055 os-locale "^1.4.0"
2056 read-pkg-up "^1.0.1"
2057 require-directory "^2.1.1"
2058 require-main-filename "^1.0.1"
2059 set-blocking "^2.0.0"
2060 string-width "^1.0.2"
2061 which-module "^1.0.0"
2062 y18n "^3.2.1"
2063 yargs-parser "^5.0.0"