diff options
Diffstat (limited to 'server/tools')
-rw-r--r-- | server/tools/cli.ts | 122 | ||||
-rw-r--r-- | server/tools/package.json | 14 | ||||
-rw-r--r-- | server/tools/peertube-auth.ts | 17 | ||||
-rw-r--r-- | server/tools/peertube-get-access-token.ts | 18 | ||||
-rw-r--r-- | server/tools/peertube-import-videos.ts | 171 | ||||
-rw-r--r-- | server/tools/peertube-repl.ts | 11 | ||||
-rw-r--r-- | server/tools/peertube-upload.ts | 91 | ||||
-rw-r--r-- | server/tools/peertube-watch.ts | 47 | ||||
-rw-r--r--[-rwxr-xr-x] | server/tools/peertube.ts | 7 | ||||
-rw-r--r-- | server/tools/tsconfig.json | 4 | ||||
-rw-r--r-- | server/tools/yarn.lock | 2063 |
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 @@ | |||
1 | const config = require('application-config')('PeerTube/CLI') | 1 | import { Netrc } from 'netrc-parser' |
2 | const netrc = require('netrc-parser').default | 2 | import { getAppNumber, isTestInstance } from '../helpers/core-utils' |
3 | import { join } from 'path' | ||
4 | import { getVideoChannel, root } from '../../shared/extra-utils' | ||
5 | import { Command } from 'commander' | ||
6 | import { VideoChannel, VideoPrivacy } from '../../shared/models/videos' | ||
7 | |||
8 | let configName = 'PeerTube/CLI' | ||
9 | if (isTestInstance()) configName += `-${getAppNumber()}` | ||
10 | |||
11 | const config = require('application-config')(configName) | ||
3 | 12 | ||
4 | const version = require('../../../package.json').version | 13 | const 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 | ||
26 | async function getNetrc () { | 35 | async 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 | ||
32 | function writeSettings (settings) { | 47 | function 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 | |||
57 | function 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 | ||
42 | function getRemoteObjectOrDie (program: any, settings: Settings) { | 67 | function 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 | ||
99 | function 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 | |||
119 | async 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 | ||
78 | export { | 166 | export { |
@@ -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') | |||
9 | async function delInstance (url: string) { | 9 | async 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 | ||
20 | async function setInstance (url: string, username: string, password: string) { | 24 | async 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 @@ | |||
1 | import * as program from 'commander' | 1 | import * as program from 'commander' |
2 | 2 | import { getClient, Server, serverLogin } from '../../shared/extra-utils' | |
3 | import { | ||
4 | getClient, | ||
5 | serverLogin, | ||
6 | Server, | ||
7 | Client, | ||
8 | User | ||
9 | } from '../../shared/extra-utils' | ||
10 | 3 | ||
11 | program | 4 | program |
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 | ||
4 | import * as program from 'commander' | 4 | import * as program from 'commander' |
5 | import { join } from 'path' | 5 | import { join } from 'path' |
6 | import { VideoPrivacy } from '../../shared/models/videos' | ||
7 | import { doRequestAndSaveToFile } from '../helpers/requests' | 6 | import { doRequestAndSaveToFile } from '../helpers/requests' |
8 | import { CONSTRAINTS_FIELDS } from '../initializers/constants' | 7 | import { CONSTRAINTS_FIELDS } from '../initializers/constants' |
9 | import { getClient, getVideoCategories, login, searchVideoWithSort, uploadVideo } from '../../shared/extra-utils/index' | 8 | import { getClient, getVideoCategories, login, searchVideoWithSort, uploadVideo } from '../../shared/extra-utils/index' |
@@ -12,29 +11,34 @@ import * as prompt from 'prompt' | |||
12 | import { remove } from 'fs-extra' | 11 | import { remove } from 'fs-extra' |
13 | import { sha256 } from '../helpers/core-utils' | 12 | import { sha256 } from '../helpers/core-utils' |
14 | import { buildOriginallyPublishedAt, safeGetYoutubeDL } from '../helpers/youtube-dl' | 13 | import { buildOriginallyPublishedAt, safeGetYoutubeDL } from '../helpers/youtube-dl' |
15 | import { getNetrc, getRemoteObjectOrDie, getSettings } from './cli' | 14 | import { buildCommonVideoOptions, buildVideoAttributesFromCommander, getNetrc, getRemoteObjectOrDie, getSettings } from './cli' |
16 | 15 | ||
17 | let accessToken: string | 16 | type UserInfo = { |
18 | let client: { id: string, secret: string } | 17 | username: string |
18 | password: string | ||
19 | } | ||
19 | 20 | ||
20 | const processOptions = { | 21 | const processOptions = { |
21 | cwd: __dirname, | 22 | cwd: __dirname, |
22 | maxBuffer: Infinity | 23 | maxBuffer: Infinity |
23 | } | 24 | } |
24 | 25 | ||
25 | program | 26 | let command = program |
26 | .name('import-videos') | 27 | .name('import-videos') |
28 | |||
29 | command = buildCommonVideoOptions(command) | ||
30 | |||
31 | command | ||
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 | ||
35 | Promise.all([ getSettings(), getNetrc() ]) | 39 | Promise.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 | ||
60 | async function promptPassword () { | 61 | async 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 | |||
80 | async 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 | ||
126 | function processVideo (info: any, languageCode: string, cwd: string, url: string, user) { | 99 | function 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 | ||
166 | async function uploadVideoOnPeerTube (videoInfo: any, videoPath: string, cwd: string, url: string, user, language?: string) { | 152 | async 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 | |||
235 | async function getCategory (categories: string[], url: string) { | 232 | async 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 | |||
255 | function getLicence (licence: string) { | 250 | function 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 | ||
307 | function isNSFW (info: any) { | 302 | function 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 | ||
313 | function removeEndSlashes (url: string) { | 306 | function 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 | |||
312 | async 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 | |||
332 | async 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 | ||
72 | start().then((data) => { | 72 | start() |
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' | |||
3 | import { isAbsolute } from 'path' | 3 | import { isAbsolute } from 'path' |
4 | import { getClient, login } from '../../shared/extra-utils' | 4 | import { getClient, login } from '../../shared/extra-utils' |
5 | import { uploadVideo } from '../../shared/extra-utils/' | 5 | import { uploadVideo } from '../../shared/extra-utils/' |
6 | import { VideoPrivacy } from '../../shared/models/videos' | 6 | import { buildCommonVideoOptions, buildVideoAttributesFromCommander, getNetrc, getRemoteObjectOrDie, getSettings } from './cli' |
7 | import { getRemoteObjectOrDie, getSettings } from './cli' | ||
8 | 7 | ||
9 | program | 8 | let command = program |
10 | .name('upload') | 9 | .name('upload') |
10 | |||
11 | command = buildCommonVideoOptions(command) | ||
12 | |||
13 | command | ||
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 | ||
29 | getSettings() | 23 | Promise.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 | ||
52 | async function run (url: string, username: string, password: string) { | 45 | async 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 | |||
105 | function 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 @@ | |||
1 | import * as program from 'commander' | 1 | import * as program from 'commander' |
2 | import * as summon from 'summon-install' | ||
3 | import { join } from 'path' | 2 | import { join } from 'path' |
4 | import { execSync } from 'child_process' | 3 | import { execSync } from 'child_process' |
5 | import { root } from '../helpers/core-utils' | ||
6 | |||
7 | let videoURL | ||
8 | 4 | ||
9 | program | 5 | program |
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 | ||
41 | if (!videoURL) { | 38 | async 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 | ||
46 | handler(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 | ||
48 | function 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 | ||
64 | getSettings() | 64 | getSettings() |
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 | |||
5 | abbrev@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 | |||
10 | addr-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 | |||
15 | airplay-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 | |||
23 | ansi-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 | |||
28 | ansi-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 | |||
33 | application-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 | |||
38 | application-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 | |||
46 | aproba@^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 | |||
51 | are-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 | |||
59 | ascli@~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 | |||
67 | async-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 | |||
72 | balanced-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 | |||
77 | bencode@^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 | |||
84 | binary-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 | |||
89 | bitfield@^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 | |||
94 | bittorrent-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 | |||
112 | bittorrent-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 | |||
117 | bittorrent-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 | |||
131 | bittorrent-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 | |||
161 | blob-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 | |||
166 | block-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 | |||
175 | bn.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 | |||
180 | brace-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 | |||
188 | browserify-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 | |||
193 | buffer-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 | |||
198 | buffer-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 | |||
206 | buffer-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 | |||
211 | buffer-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 | |||
216 | buffer-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 | |||
221 | buffer-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 | |||
226 | bufferutil@^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 | |||
233 | bufferview@~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 | |||
246 | camelcase@^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 | |||
251 | castv2-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 | |||
259 | castv2@~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 | |||
267 | chownr@^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 | |||
272 | chromecasts@^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 | |||
288 | chunk-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 | |||
296 | cli-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 | |||
303 | cliui@^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 | |||
312 | clivas@^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 | |||
317 | closest-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 | |||
322 | code-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 | |||
327 | colors@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 | |||
332 | colour@latest: | ||
333 | version "0.7.1" | ||
334 | resolved "https://registry.yarnpkg.com/colour/-/colour-0.7.1.tgz#9cb169917ec5d12c0736d3e8685746df1cadf778" | ||
335 | integrity sha1-nLFpkX7F0SwHNtPoaFdG3xyt93g= | ||
336 | |||
337 | compact2string@^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 | |||
344 | concat-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 | |||
349 | concat-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 | |||
359 | console-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 | |||
364 | core-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 | |||
369 | create-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 | |||
388 | cross-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 | |||
399 | debug@^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 | |||
406 | debug@^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 | |||
413 | debug@^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 | |||
420 | decamelize@^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 | |||
425 | decompress-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 | |||
432 | deep-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 | |||
437 | defined@^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 | |||
442 | delegates@^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 | |||
447 | detect-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 | |||
452 | dlnacasts@^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 | |||
466 | dns-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 | |||
474 | dns-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 | |||
481 | domexception@^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 | |||
488 | ecstatic@^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 | |||
498 | elementtree@^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 | |||
505 | end-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 | |||
512 | error-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 | |||
519 | execa@^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 | |||
532 | executable@^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 | |||
539 | filestream@^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 | |||
549 | find-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 | |||
557 | flatten@^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 | |||
562 | fs-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 | |||
574 | fs-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 | |||
581 | fs.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 | |||
586 | gauge@~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 | |||
600 | get-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 | |||
605 | get-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 | |||
610 | get-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 | |||
615 | get-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 | |||
620 | glob@^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 | |||
632 | graceful-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 | |||
637 | has-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 | |||
642 | he@^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 | |||
647 | hosted-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 | |||
652 | iconv-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 | |||
659 | ignore-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 | |||
666 | immediate-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 | |||
671 | inflight@^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 | |||
679 | inherits@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 | |||
684 | ini@~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 | |||
689 | invert-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 | |||
694 | ip-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 | |||
701 | ip@^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 | |||
711 | is-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 | |||
716 | is-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 | |||
721 | is-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 | |||
726 | is-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 | |||
733 | is-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 | |||
738 | is-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 | |||
743 | is-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 | |||
748 | is-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 | |||
753 | isarray@~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 | |||
758 | isexe@^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 | |||
763 | junk@^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 | |||
768 | k-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 | |||
776 | k-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 | |||
783 | k-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 | |||
792 | k-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 | |||
803 | last-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 | |||
808 | lcid@^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 | |||
815 | load-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 | |||
826 | load-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 | |||
842 | lru@^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 | |||
849 | magnet-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 | |||
857 | mdns-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 | |||
865 | mdns-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 | |||
874 | mediasource@^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 | |||
883 | memory-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 | |||
888 | mime@^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 | |||
893 | mime@^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 | |||
898 | mimic-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 | |||
903 | minimatch@^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 | |||
910 | minimist@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 | |||
915 | minimist@^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 | |||
920 | minipass@^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 | |||
928 | minizlib@^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 | |||
935 | mkdirp@^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 | |||
942 | moment@^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 | |||
947 | mp4-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 | |||
956 | mp4-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 | |||
967 | ms@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 | |||
972 | ms@^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 | |||
977 | multicast-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 | |||
985 | multistream@^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 | |||
993 | nan@*, 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 | |||
998 | needle@^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 | |||
1007 | netmask@^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 | |||
1012 | netrc-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 | |||
1020 | network-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 | |||
1025 | next-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 | |||
1030 | nice-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 | |||
1035 | node-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 | |||
1044 | node-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 | |||
1049 | node-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 | |||
1065 | node-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 | |||
1073 | nodebmc@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 | |||
1080 | nopt@^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 | |||
1088 | normalize-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 | |||
1098 | npm-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 | |||
1103 | npm-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 | |||
1111 | npm-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 | |||
1118 | npmlog@^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 | |||
1128 | number-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 | |||
1133 | object-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 | |||
1138 | once@^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 | |||
1145 | open@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 | |||
1150 | optjs@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 | |||
1155 | os-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 | |||
1160 | os-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 | |||
1167 | os-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 | |||
1172 | osenv@^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 | |||
1180 | p-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 | |||
1185 | package-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 | |||
1192 | parse-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 | |||
1199 | parse-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 | |||
1204 | parse-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 | |||
1217 | path-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 | |||
1224 | path-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 | |||
1229 | path-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 | |||
1234 | path-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 | |||
1239 | path-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 | |||
1248 | piece-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 | |||
1255 | pify@^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 | |||
1260 | pinkie-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 | |||
1267 | pinkie@^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 | |||
1272 | plist-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 | |||
1280 | prettier-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 | |||
1285 | process-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 | |||
1290 | protobufjs@^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 | |||
1298 | pump@^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 | |||
1306 | qap@^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 | |||
1311 | random-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 | |||
1319 | random-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 | |||
1326 | random-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 | |||
1331 | randombytes@^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 | |||
1338 | range-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 | |||
1343 | range-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 | |||
1350 | rc@^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 | |||
1360 | read-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 | |||
1368 | read-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 | |||
1377 | readable-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 | |||
1390 | readable-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 | |||
1399 | record-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 | |||
1404 | render-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 | |||
1415 | require-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 | |||
1420 | require-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 | |||
1425 | resolve@^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 | |||
1432 | rimraf@^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 | |||
1439 | run-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 | |||
1444 | run-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 | |||
1449 | run-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 | |||
1454 | rusha@^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 | |||
1459 | safe-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 | |||
1469 | sax@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 | |||
1474 | sax@>=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 | |||
1484 | semver@~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 | |||
1489 | set-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 | |||
1494 | shebang-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 | |||
1501 | shebang-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 | |||
1506 | signal-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 | |||
1511 | simple-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 | |||
1516 | simple-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 | |||
1525 | simple-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 | |||
1534 | simple-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 | |||
1545 | simple-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 | |||
1552 | simple-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 | |||
1563 | spdx-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 | |||
1571 | spdx-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 | |||
1576 | spdx-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 | |||
1584 | spdx-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 | |||
1589 | speedometer@^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 | |||
1594 | split@^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 | |||
1601 | stream-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 | |||
1608 | stream-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 | |||
1615 | stream-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 | |||
1622 | string-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 | |||
1639 | string2compact@^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 | |||
1647 | string_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 | |||
1654 | string_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 | |||
1661 | strip-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 | |||
1668 | strip-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 | |||
1675 | strip-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 | |||
1682 | strip-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 | |||
1687 | strip-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 | |||
1692 | tar@^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 | |||
1705 | thirty-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 | |||
1710 | through@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 | |||
1715 | thunky@^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 | |||
1720 | thunky@^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 | |||
1725 | to-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 | |||
1730 | torrent-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 | |||
1740 | torrent-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 | |||
1745 | typedarray-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 | |||
1752 | typedarray@^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 | |||
1757 | uint64be@^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 | |||
1764 | uniq@^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 | |||
1769 | unordered-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 | |||
1774 | upnp-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 | |||
1784 | upnp-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 | |||
1793 | url-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 | |||
1798 | ut_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 | |||
1808 | ut_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 | |||
1818 | utf-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 | |||
1825 | util-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 | |||
1830 | validate-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 | |||
1838 | videostream@^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 | |||
1852 | vlc-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 | |||
1860 | webidl-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 | |||
1865 | webtorrent-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 | |||
1890 | webtorrent-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 | |||
1900 | webtorrent@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 | |||
1946 | which-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 | |||
1951 | which@^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 | |||
1958 | wide-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 | |||
1965 | winreg@^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 | |||
1970 | wrap-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 | |||
1978 | wrappy@1: | ||
1979 | version "1.0.2" | ||
1980 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" | ||
1981 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= | ||
1982 | |||
1983 | wrtc@^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 | |||
1994 | ws@^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 | |||
2001 | xml2js@^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 | |||
2009 | xmlbuilder@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 | |||
2014 | xmlbuilder@~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 | |||
2019 | xmldom@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 | |||
2024 | xtend@^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 | |||
2029 | y18n@^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 | |||
2034 | yallist@^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 | |||
2039 | yargs-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 | |||
2046 | yargs@^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" | ||