Remove even more stuff from web dists

This commit is contained in:
Schuyler Cebulskie
2016-11-20 22:40:06 -05:00
parent 7e69475d11
commit f6a60581c4
6 changed files with 35 additions and 9 deletions

View File

@@ -50,5 +50,28 @@
},
"engines": {
"node": ">=6.0.0"
},
"browser": {
"src/sharding/Shard.js": false,
"src/sharding/ShardClientUtil.js": false,
"src/sharding/ShardingManager.js": false,
"src/client/voice/dispatcher/StreamDispatcher.js": false,
"src/client/voice/opus/BaseOpusEngine.js": false,
"src/client/voice/opus/NodeOpusEngine.js": false,
"src/client/voice/opus/OpusEngineList.js": false,
"src/client/voice/opus/OpusScriptEngine.js": false,
"src/client/voice/pcm/ConverterEngine.js": false,
"src/client/voice/pcm/ConverterEngineList.js": false,
"src/client/voice/pcm/FfmpegConverterEngine.js": false,
"src/client/voice/player/AudioPlayer.js": false,
"src/client/voice/player/BasePlayer.js": false,
"src/client/voice/player/DefaultPlayer.js": false,
"src/client/voice/receiver/VoiceReadable.js": false,
"src/client/voice/receiver/VoiceReceiver.js": false,
"src/client/voice/util/SecretKey.js": false,
"src/client/voice/ClientVoiceManager.js": false,
"src/client/voice/VoiceConnection.js": false,
"src/client/voice/VoiceUDPClient.js": false,
"src/client/voice/VoiceWebSocket.js": false
}
}

View File

@@ -83,11 +83,11 @@ class Client extends EventEmitter {
this.actions = new ActionsManager(this);
/**
* The Voice Manager of the Client
* @type {ClientVoiceManager}
* The Voice Manager of the Client (`null` in browsers)
* @type {?ClientVoiceManager}
* @private
*/
this.voice = new ClientVoiceManager(this);
this.voice = !this.browser ? new ClientVoiceManager(this) : null;
/**
* The shard helpers for the client (only if the process was spawned as a child, such as from a ShardingManager)
@@ -186,6 +186,7 @@ class Client extends EventEmitter {
* @readonly
*/
get voiceConnections() {
if (this.browser) return new Collection();
return this.voice.connections;
}

View File

@@ -78,7 +78,6 @@ class ClientVoiceManager {
*/
joinChannel(channel) {
return new Promise((resolve, reject) => {
if (this.client.browser) throw new Error('Voice connections are not available in browsers.');
if (this.pending.get(channel.guild.id)) throw new Error('Already connecting to this guild\'s voice server.');
if (!channel.joinable) throw new Error('You do not have permission to join this voice channel.');

View File

@@ -256,6 +256,7 @@ class Guild {
* @readonly
*/
get voiceConnection() {
if (this.client.browser) return null;
return this.client.voice.connections.get(this.id) || null;
}

View File

@@ -50,6 +50,7 @@ class VoiceChannel extends GuildChannel {
* @type {boolean}
*/
get joinable() {
if (this.client.browser) return false;
return this.permissionsFor(this.client.user).hasPermission('CONNECT');
}
@@ -99,6 +100,7 @@ class VoiceChannel extends GuildChannel {
* .catch(console.error);
*/
join() {
if (this.client.browser) return Promise.reject(new Error('Voice connections are not available in browsers.'));
return this.client.voice.joinChannel(this);
}
@@ -109,6 +111,7 @@ class VoiceChannel extends GuildChannel {
* voiceChannel.leave();
*/
leave() {
if (this.client.browser) return;
const connection = this.client.voice.connections.get(this.guild.id);
if (connection && connection.channel.id === this.id) connection.disconnect();
}

View File

@@ -22,9 +22,6 @@ const createConfig = (options) => {
path: __dirname,
filename,
},
resolve: {
descriptionFiles: ['package.json'],
},
module: {
rules: [
{ test: /\.json$/, loader: 'json-loader' },
@@ -32,9 +29,10 @@ const createConfig = (options) => {
],
},
externals: {
'node-opus': { commonjs: 'node-opus' },
opusscript: { commonjs: 'opusscript' },
ws: { commonjs: 'ws' },
opusscript: { commonjs: 'opusscript' },
'node-opus': { commonjs: 'node-opus' },
'tweet-nacl': { commonjs: 'tweet-nacl' },
},
node: {
fs: 'empty',
@@ -42,6 +40,7 @@ const createConfig = (options) => {
tls: 'mock',
child_process: 'empty',
dgram: 'empty',
zlib: 'empty',
__dirname: true,
},
plugins,