Emit -ed and fixed presence vs. userUpdated check

This commit is contained in:
abalabahaha
2015-11-22 17:15:49 -08:00
parent 213379e669
commit c9497a0f75
27 changed files with 49 additions and 33 deletions

View File

@@ -933,4 +933,4 @@ var Client = (function (_EventEmitter) {
return Client;
})(EventEmitter);
module.exports = Client;
module.exports = Client;

View File

@@ -4,4 +4,4 @@ exports.IDLE = 0;
exports.LOGGING_IN = 1;
exports.LOGGED_IN = 2;
exports.READY = 3;
exports.DISCONNECTED = 4;
exports.DISCONNECTED = 4;

View File

@@ -1556,14 +1556,14 @@ var InternalClient = (function () {
var presenceUser = new User(data.user, client);
if (presenceUser.equalsStrict(user)) {
if (presenceUser.equals(user)) {
// a real presence update
client.emit("presence", user, data.status, data.game_id);
user.status = data.status;
user.gameID = data.game_id;
} else {
// a name change or avatar change
client.emit("userUpdate", user, presenceUser);
client.emit("userUpdated", user, presenceUser);
self.users.update(user, presenceUser);
}
} else {
@@ -1583,14 +1583,14 @@ var InternalClient = (function () {
} else {
user.typing.since = Date.now();
user.typing.channel = channel;
client.emit("userTypingStart", user, channel);
client.emit("userTypingStarted", user, channel);
}
setTimeout(function () {
if (Date.now() - user.typing.since > 5500) {
// they haven't typed since
user.typing.since = null;
user.typing.channel = null;
client.emit("userTypingStop", user, channel);
client.emit("userTypingStopped", user, channel);
}
}, 6000);
} else {
@@ -1631,4 +1631,4 @@ var InternalClient = (function () {
return InternalClient;
})();
module.exports = InternalClient;
module.exports = InternalClient;

View File

@@ -236,4 +236,4 @@ var Resolver = (function () {
return Resolver;
})();
module.exports = Resolver;
module.exports = Resolver;

View File

@@ -127,4 +127,4 @@ var PacketType = {
exports.API_ENDPOINT = API;
exports.Endpoints = Endpoints;
exports.PacketType = PacketType;
exports.Permissions = Permissions;
exports.Permissions = Permissions;

View File

@@ -36,4 +36,4 @@ var Channel = (function (_Equality) {
return Channel;
})(Equality);
module.exports = Channel;
module.exports = Channel;

View File

@@ -72,4 +72,4 @@ var ChannelPermissions = (function () {
return ChannelPermissions;
})();
module.exports = ChannelPermissions;
module.exports = ChannelPermissions;

View File

@@ -29,4 +29,4 @@ var Invite = (function () {
return Invite;
})();
module.exports = Invite;
module.exports = Invite;

View File

@@ -84,4 +84,4 @@ var Message = (function (_Equality) {
return Message;
})(Equality);
module.exports = Message;
module.exports = Message;

View File

@@ -50,4 +50,4 @@ var PMChannel = (function (_Channel) {
return PMChannel;
})(Channel);
module.exports = PMChannel;
module.exports = PMChannel;

View File

@@ -83,4 +83,4 @@ var PermissionOverwrite = (function () {
return PermissionOverwrite;
})();
module.exports = PermissionOverwrite;
module.exports = PermissionOverwrite;

View File

@@ -136,4 +136,4 @@ var Role = (function () {
return Role;
})();
module.exports = Role;
module.exports = Role;

View File

@@ -166,4 +166,4 @@ var Server = (function (_Equality) {
return Server;
})(Equality);
module.exports = Server;
module.exports = Server;

View File

@@ -114,4 +114,4 @@ var ServerChannel = (function (_Channel) {
return ServerChannel;
})(Channel);
module.exports = ServerChannel;
module.exports = ServerChannel;

View File

@@ -55,4 +55,4 @@ var TextChannel = (function (_ServerChannel) {
return TextChannel;
})(ServerChannel);
module.exports = TextChannel;
module.exports = TextChannel;

View File

@@ -41,6 +41,10 @@ var User = (function (_Equality) {
if (obj instanceof User) return this.id === obj.id && this.username === obj.username && this.discriminator === obj.discriminator && this.avatar === obj.avatar && this.status === obj.status && this.gameID === obj.gameID;else return false;
};
User.prototype.equals = function equals(obj) {
if (obj instanceof User) return this.id === obj.id && this.username === obj.username && this.discriminator === obj.discriminator && this.avatar === obj.avatar;else return false;
};
_createClass(User, [{
key: "avatarURL",
get: function get() {
@@ -55,4 +59,4 @@ var User = (function (_Equality) {
return User;
})(Equality);
module.exports = User;
module.exports = User;

View File

@@ -18,4 +18,4 @@ var VoiceChannel = (function (_ServerChannel) {
return VoiceChannel;
})(ServerChannel);
module.exports = VoiceChannel;
module.exports = VoiceChannel;

View File

@@ -2,4 +2,4 @@
exports.reg = function (c, a) {
return [c].concat(Array.prototype.slice.call(a));
};
};

View File

@@ -103,4 +103,4 @@ var Cache = (function (_Array) {
return Cache;
})(Array);
module.exports = Cache;
module.exports = Cache;

View File

@@ -42,4 +42,4 @@ var Equality = (function () {
return Equality;
})();
module.exports = Equality;
module.exports = Equality;

View File

@@ -126,4 +126,4 @@ var AudioEncoder = (function () {
return AudioEncoder;
})();
module.exports = AudioEncoder;
module.exports = AudioEncoder;

View File

@@ -19,4 +19,4 @@ var StreamIntent = (function (_EventEmitter) {
return StreamIntent;
})(EventEmitter);
module.exports = StreamIntent;
module.exports = StreamIntent;

View File

@@ -330,4 +330,4 @@ var VoiceConnection = (function (_EventEmitter) {
return VoiceConnection;
})(EventEmitter);
module.exports = VoiceConnection;
module.exports = VoiceConnection;

View File

@@ -23,4 +23,4 @@ var VoicePacket = function VoicePacket(data, sequence, time, ssrc) {
return returnBuffer;
};
module.exports = VoicePacket;
module.exports = VoicePacket;

View File

@@ -15,4 +15,4 @@ module.exports = {
User: require("./Structures/User"),
VoiceChannel: require("./Structures/VoiceChannel"),
Constants: require("./Constants.js")
};
};

View File

@@ -1627,7 +1627,7 @@ class InternalClient {
var presenceUser = new User(data.user, client);
if (presenceUser.equalsStrict(user)) {
if (presenceUser.equals(user)) {
// a real presence update
client.emit("presence", user, data.status, data.game_id);
user.status = data.status;
@@ -1635,7 +1635,7 @@ class InternalClient {
} else {
// a name change or avatar change
client.emit("userUpdate", user, presenceUser);
client.emit("userUpdated", user, presenceUser);
self.users.update(user, presenceUser);
}
@@ -1656,14 +1656,14 @@ class InternalClient {
} else {
user.typing.since = Date.now();
user.typing.channel = channel;
client.emit("userTypingStart", user, channel);
client.emit("userTypingStarted", user, channel);
}
setTimeout(() => {
if (Date.now() - user.typing.since > 5500) {
// they haven't typed since
user.typing.since = null;
user.typing.channel = null;
client.emit("userTypingStop", user, channel);
client.emit("userTypingStopped", user, channel);
}
}, 6000);

View File

@@ -48,6 +48,18 @@ class User extends Equality{
else
return false;
}
equals(obj){
if(obj instanceof User)
return (
this.id === obj.id &&
this.username === obj.username &&
this.discriminator === obj.discriminator &&
this.avatar === obj.avatar
);
else
return false;
}
}
module.exports = User;