summaryrefslogtreecommitdiff
path: root/node_modules/discord.js/src/structures/ClientUserChannelOverride.js
diff options
context:
space:
mode:
author8cy <[email protected]>2020-04-03 02:37:42 -0700
committer8cy <[email protected]>2020-04-03 02:37:42 -0700
commit60867fb030bae582082340ead7dbc7efdc2f5398 (patch)
tree4c6a7356351be2e4914e15c4703172597c45656e /node_modules/discord.js/src/structures/ClientUserChannelOverride.js
parentcommenting (diff)
downloads5nical-60867fb030bae582082340ead7dbc7efdc2f5398.tar.xz
s5nical-60867fb030bae582082340ead7dbc7efdc2f5398.zip
2020/04/03, 02:34, v1.2.0
Diffstat (limited to 'node_modules/discord.js/src/structures/ClientUserChannelOverride.js')
-rw-r--r--node_modules/discord.js/src/structures/ClientUserChannelOverride.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/node_modules/discord.js/src/structures/ClientUserChannelOverride.js b/node_modules/discord.js/src/structures/ClientUserChannelOverride.js
new file mode 100644
index 0000000..93efa45
--- /dev/null
+++ b/node_modules/discord.js/src/structures/ClientUserChannelOverride.js
@@ -0,0 +1,30 @@
+const Constants = require('../util/Constants');
+
+/**
+ * A wrapper around the ClientUser's channel overrides.
+ */
+class ClientUserChannelOverride {
+ constructor(data) {
+ this.patch(data);
+ }
+
+ /**
+ * Patch the data contained in this class with new partial data.
+ * @param {Object} data Data to patch this with
+ * @returns {void}
+ * @private
+ */
+ patch(data) {
+ for (const key of Object.keys(Constants.UserChannelOverrideMap)) {
+ const value = Constants.UserChannelOverrideMap[key];
+ if (!data.hasOwnProperty(key)) continue;
+ if (typeof value === 'function') {
+ this[value.name] = value(data[key]);
+ } else {
+ this[value] = data[key];
+ }
+ }
+ }
+}
+
+module.exports = ClientUserChannelOverride;