stuff
This commit is contained in:
parent
6fe4dd3903
commit
4cb7b47043
|
@ -2,6 +2,7 @@
|
||||||
"PluginNameMap": {},
|
"PluginNameMap": {},
|
||||||
"PluginUrlMap": {
|
"PluginUrlMap": {
|
||||||
"BDFDB": "https://mwittrien.github.io/BetterDiscordAddons/Library/0BDFDB.plugin.js",
|
"BDFDB": "https://mwittrien.github.io/BetterDiscordAddons/Library/0BDFDB.plugin.js",
|
||||||
|
"CopyRawMessage": "https://mwittrien.github.io/BetterDiscordAddons/_DEAD/CopyRawMessage.plugin.js",
|
||||||
"CreationDate": "https://mwittrien.github.io/BetterDiscordAddons/_DEAD/CreationDate.plugin.js",
|
"CreationDate": "https://mwittrien.github.io/BetterDiscordAddons/_DEAD/CreationDate.plugin.js",
|
||||||
"ForceImagePreviews": "https://mwittrien.github.io/BetterDiscordAddons/_DEAD/ForceImagePreviews.plugin.js",
|
"ForceImagePreviews": "https://mwittrien.github.io/BetterDiscordAddons/_DEAD/ForceImagePreviews.plugin.js",
|
||||||
"JoinedAtDate": "https://mwittrien.github.io/BetterDiscordAddons/_DEAD/JoinedAtDate.plugin.js",
|
"JoinedAtDate": "https://mwittrien.github.io/BetterDiscordAddons/_DEAD/JoinedAtDate.plugin.js",
|
||||||
|
|
|
@ -1,166 +0,0 @@
|
||||||
/**
|
|
||||||
* @name CopyRawMessage
|
|
||||||
* @author DevilBro
|
|
||||||
* @authorId 278543574059057154
|
|
||||||
* @version 1.1.5
|
|
||||||
* @description Allows you to copy the raw Contents of a Message
|
|
||||||
* @invite Jx3TjNS
|
|
||||||
* @donate https://www.paypal.me/MircoWittrien
|
|
||||||
* @patreon https://www.patreon.com/MircoWittrien
|
|
||||||
* @website https://mwittrien.github.io/
|
|
||||||
* @source https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/CopyRawMessage/
|
|
||||||
* @updateUrl https://mwittrien.github.io/BetterDiscordAddons/Plugins/CopyRawMessage/CopyRawMessage.plugin.js
|
|
||||||
*/
|
|
||||||
|
|
||||||
module.exports = (_ => {
|
|
||||||
const changeLog = {
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
return !window.BDFDB_Global || (!window.BDFDB_Global.loaded && !window.BDFDB_Global.started) ? class {
|
|
||||||
constructor (meta) {for (let key in meta) this[key] = meta[key];}
|
|
||||||
getName () {return this.name;}
|
|
||||||
getAuthor () {return this.author;}
|
|
||||||
getVersion () {return this.version;}
|
|
||||||
getDescription () {return `The Library Plugin needed for ${this.name} is missing. Open the Plugin Settings to download it. \n\n${this.description}`;}
|
|
||||||
|
|
||||||
downloadLibrary () {
|
|
||||||
require("request").get("https://mwittrien.github.io/BetterDiscordAddons/Library/0BDFDB.plugin.js", (e, r, b) => {
|
|
||||||
if (!e && b && r.statusCode == 200) require("fs").writeFile(require("path").join(BdApi.Plugins.folder, "0BDFDB.plugin.js"), b, _ => BdApi.showToast("Finished downloading BDFDB Library", {type: "success"}));
|
|
||||||
else BdApi.alert("Error", "Could not download BDFDB Library Plugin. Try again later or download it manually from GitHub: https://mwittrien.github.io/downloader/?library");
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
load () {
|
|
||||||
if (!window.BDFDB_Global || !Array.isArray(window.BDFDB_Global.pluginQueue)) window.BDFDB_Global = Object.assign({}, window.BDFDB_Global, {pluginQueue: []});
|
|
||||||
if (!window.BDFDB_Global.downloadModal) {
|
|
||||||
window.BDFDB_Global.downloadModal = true;
|
|
||||||
BdApi.showConfirmationModal("Library Missing", `The Library Plugin needed for ${this.name} is missing. Please click "Download Now" to install it.`, {
|
|
||||||
confirmText: "Download Now",
|
|
||||||
cancelText: "Cancel",
|
|
||||||
onCancel: _ => {delete window.BDFDB_Global.downloadModal;},
|
|
||||||
onConfirm: _ => {
|
|
||||||
delete window.BDFDB_Global.downloadModal;
|
|
||||||
this.downloadLibrary();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
if (!window.BDFDB_Global.pluginQueue.includes(this.name)) window.BDFDB_Global.pluginQueue.push(this.name);
|
|
||||||
}
|
|
||||||
start () {this.load();}
|
|
||||||
stop () {}
|
|
||||||
getSettingsPanel () {
|
|
||||||
let template = document.createElement("template");
|
|
||||||
template.innerHTML = `<div style="color: var(--header-primary); font-size: 16px; font-weight: 300; white-space: pre; line-height: 22px;">The Library Plugin needed for ${this.name} is missing.\nPlease click <a style="font-weight: 500;">Download Now</a> to install it.</div>`;
|
|
||||||
template.content.firstElementChild.querySelector("a").addEventListener("click", this.downloadLibrary);
|
|
||||||
return template.content.firstElementChild;
|
|
||||||
}
|
|
||||||
} : (([Plugin, BDFDB]) => {
|
|
||||||
return class CopyRawMessage extends Plugin {
|
|
||||||
onLoad () {
|
|
||||||
this.modulePatches = {
|
|
||||||
after: [
|
|
||||||
"MessageActionsContextMenu",
|
|
||||||
"MessageToolbar"
|
|
||||||
]
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
onStart () {}
|
|
||||||
|
|
||||||
onStop () {}
|
|
||||||
|
|
||||||
onMessageContextMenu (e) {
|
|
||||||
if (!e.instance.props.message) return;
|
|
||||||
let content = e.instance.props.message.content;
|
|
||||||
let messageString = [e.instance.props.message.content, BDFDB.ArrayUtils.is(e.instance.props.message.attachments) && e.instance.props.message.attachments.map(n => n.url)].flat(10).filter(n => n).join("\n");
|
|
||||||
let selectedText = document.getSelection().toString().trim();
|
|
||||||
if (selectedText) messageString = BDFDB.StringUtils.extractSelection(messageString, selectedText);
|
|
||||||
let embed = BDFDB.DOMUtils.getParent(BDFDB.dotCN.embedwrapper, e.instance.props.target);
|
|
||||||
let embedData = e.instance.props.message.embeds[embed ? Array.from(embed.parentElement.querySelectorAll(BDFDB.dotCN.embedwrapper)).indexOf(embed) : -1];
|
|
||||||
let embedString = embedData && [embedData.rawTitle, embedData.rawDescription, BDFDB.ArrayUtils.is(embedData.fields) && embedData.fields.map(n => [n.rawName, n.rawValue]), BDFDB.ObjectUtils.is(embedData.image) && embedData.image.url, BDFDB.ObjectUtils.is(embedData.footer) && embedData.footer.text].flat(10).filter(n => n).join("\n");
|
|
||||||
if (selectedText) embedString = BDFDB.StringUtils.extractSelection(embedString, selectedText);
|
|
||||||
let hint = BDFDB.BDUtils.isPluginEnabled("MessageUtilities") ? BDFDB.BDUtils.getPlugin("MessageUtilities").getActiveShortcutString("Copy_Raw") : null;
|
|
||||||
let entries = [
|
|
||||||
messageString && BDFDB.ContextMenuUtils.createItem(BDFDB.LibraryComponents.MenuItems.MenuItem, {
|
|
||||||
label: BDFDB.LanguageUtils.LanguageStrings.COPY_TEXT + " (Raw)",
|
|
||||||
id: BDFDB.ContextMenuUtils.createItemId(this.name, "copy-message"),
|
|
||||||
type: "Message",
|
|
||||||
hint: hint && (_ => BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.MenuItems.MenuHint, {
|
|
||||||
hint: hint
|
|
||||||
})),
|
|
||||||
icon: _ => BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.MenuItems.MenuIcon, {
|
|
||||||
icon: BDFDB.LibraryComponents.SvgIcon.Names.RAW_TEXT
|
|
||||||
}),
|
|
||||||
action: _ => BDFDB.LibraryModules.WindowUtils.copy(messageString)
|
|
||||||
}),
|
|
||||||
embedString && BDFDB.ContextMenuUtils.createItem(BDFDB.LibraryComponents.MenuItems.MenuItem, {
|
|
||||||
label: BDFDB.LanguageUtils.LanguageStrings.COPY_TEXT + " (Raw Embed)",
|
|
||||||
id: BDFDB.ContextMenuUtils.createItemId(this.name, "copy-embed"),
|
|
||||||
type: "Embed",
|
|
||||||
icon: _ => BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.MenuItems.MenuIcon, {
|
|
||||||
icon: BDFDB.LibraryComponents.SvgIcon.Names.RAW_TEXT
|
|
||||||
}),
|
|
||||||
action: _ => BDFDB.LibraryModules.WindowUtils.copy(embedString)
|
|
||||||
}),
|
|
||||||
embedData && BDFDB.ContextMenuUtils.createItem(BDFDB.LibraryComponents.MenuItems.MenuItem, {
|
|
||||||
label: BDFDB.LanguageUtils.LanguageStrings.COPY_TEXT + " (Embed JSON)",
|
|
||||||
type: "Embed JSON",
|
|
||||||
id: BDFDB.ContextMenuUtils.createItemId(this.name, "copy-embed-json"),
|
|
||||||
icon: _ => BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.MenuItems.MenuIcon, {
|
|
||||||
icon: BDFDB.LibraryComponents.SvgIcon.Names.RAW_TEXT
|
|
||||||
}),
|
|
||||||
action: _ => BDFDB.LibraryModules.WindowUtils.copy(JSON.stringify(embedData))
|
|
||||||
})
|
|
||||||
].filter(n => n);
|
|
||||||
if (entries.length) {
|
|
||||||
let [children, index] = BDFDB.ContextMenuUtils.findItem(e.returnvalue, {id: "copy-link"});
|
|
||||||
children.splice(index > -1 ? index + 1 : children.length, 0, entries.length > 1 ? BDFDB.ContextMenuUtils.createItem(BDFDB.LibraryComponents.MenuItems.MenuItem, {
|
|
||||||
label: BDFDB.LanguageUtils.LanguageStrings.COPY_TEXT,
|
|
||||||
id: BDFDB.ContextMenuUtils.createItemId(this.name, "copy-raw-submenu"),
|
|
||||||
children: entries.map(n => {
|
|
||||||
n.props.label = n.props.type;
|
|
||||||
delete n.props.type;
|
|
||||||
delete n.props.icon;
|
|
||||||
return n;
|
|
||||||
})
|
|
||||||
}) : entries);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
processMessageActionsContextMenu (e) {
|
|
||||||
if (e.instance.props.message && e.instance.props.message.content) {
|
|
||||||
let [children, index] = BDFDB.ContextMenuUtils.findItem(e.returnvalue, {id: "copy-link"});
|
|
||||||
children.splice(index + 1, 0, BDFDB.ContextMenuUtils.createItem(BDFDB.LibraryComponents.MenuItems.MenuItem, {
|
|
||||||
label: BDFDB.LanguageUtils.LanguageStrings.COPY_TEXT + " (Raw)",
|
|
||||||
id: BDFDB.ContextMenuUtils.createItemId(this.name, "copy-message-raw"),
|
|
||||||
icon: _ => BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.MenuItems.MenuIcon, {
|
|
||||||
icon: BDFDB.LibraryComponents.SvgIcon.Names.RAW_TEXT
|
|
||||||
}),
|
|
||||||
action: _ => BDFDB.LibraryModules.WindowUtils.copy(e.instance.props.message.content)
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
processMessageToolbar (e) {
|
|
||||||
if (!e.instance.props.message || !e.instance.props.channel) return;
|
|
||||||
let expanded = !BDFDB.LibraryStores.AccessibilityStore.keyboardModeEnabled && !e.instance.props.showEmojiPicker && !e.instance.props.showEmojiBurstPicker && !e.instance.props.showMoreUtilities && BDFDB.ListenerUtils.isPressed(16);
|
|
||||||
if (!expanded) return;
|
|
||||||
e.returnvalue.props.children.unshift(BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.TooltipContainer, {
|
|
||||||
key: "copy-message-raw",
|
|
||||||
text: BDFDB.LanguageUtils.LanguageStrings.COPY_TEXT + " (Raw)",
|
|
||||||
children: BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.Clickable, {
|
|
||||||
className: BDFDB.disCN.messagetoolbarbutton,
|
|
||||||
onClick: _ => {
|
|
||||||
BDFDB.LibraryModules.WindowUtils.copy(e.instance.props.message.content);
|
|
||||||
},
|
|
||||||
children: BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.SvgIcon, {
|
|
||||||
className: BDFDB.disCN.messagetoolbaricon,
|
|
||||||
name: BDFDB.LibraryComponents.SvgIcon.Names.RAW_TEXT
|
|
||||||
})
|
|
||||||
})
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
};
|
|
||||||
})(window.BDFDB_Global.PluginUtils.buildPlugin(changeLog));
|
|
||||||
})();
|
|
|
@ -1,19 +0,0 @@
|
||||||
# Copy Raw Message [![Download][download-badge]][download-link] [![Support][support-badge]][support-link] [![PayPal][paypal-badge]][paypal-link] [![Patreon][patreon-badge]][patreon-link]
|
|
||||||
|
|
||||||
[download-badge]: https://img.shields.io/badge/Download-%233a71c1.svg?style=flat&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAgCAYAAAAIXrg4AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAd5gAAHeYBMKt3fAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAE9SURBVEiJ7ZQ7TsNAFEWv06IAShOkEDD5UNCwB8RCWEYWAqkIYiEgZQERoqLgFz4hUIaC+tCM4cmyk4mxCyRfaSRL8+49781YI3kKOASmwBtw4OvzFnDJry58fZUlGGvme70IQCaVgBLwXwBADegDp0AjaxjQAAbACVCzG+fmGRgDYYJ5ZGpGCfuh80Ya/EwgqWpqQ0lDoLVE5y1JQ+eNVLUFXfdSWr0A7UUTAG1XazUFuvEudoFJrPAd2EsDuMZeY56PyJM0aqohDljU0Lzz7KSMbMMmJB9px/fStoFH/PWMuS9fyBbw4Bnu/cclQe7nhD8BO5nCDaQJ3CWEj/8cbiAbwI0JvwU2cwk3kDpw7FY91/BShSoAmpKOJK3knP0l6SwAriXt5xwe6SoAPiWtFgSYVST1JM2KCJfU+wadgFl0/0HGbQAAAABJRU5ErkJggg==
|
|
||||||
[download-link]: https://mwittrien.github.io/downloader/?plugin=CopyRawMessage
|
|
||||||
|
|
||||||
[support-badge]: https://img.shields.io/badge/Support-%2343b581.svg?style=flat&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAC4UlEQVRYR8WXS4jNcRTHP195bEgWkoVsCAspNcVoLGblsaAoFCalBqU8BhuPPDZeQ5LBRmHBYsok7KYor5TyKDI2UiQLZWwojs6d351+85977+93J7q/uqt7Hp/fOed3zvmLzGNm44BWYAUwB5gafm7hc/i9AXqAXkk/c0wrJWRmU4BDwHpgQko+/N8PXAcOS/pSS6cqgJmNBfYBe4HxmY6LYj+AE8BxSb8q2agIEG7dDSwaoeOi2kNgVaVoDAMws7nAHWDaP3JeNvMRWC7pVWx3CEC4+bMM533AE+B5MDYfWADMTEA7RFMciUGAkPPeRNi9svcDnZL+xM7MbBSwCzgG+IupdjwdreWaiAEOAEdqKLrzZknlW1cUNTOPxqMExEFJR91ACSCE/n2i2vdIOpVTF2bWAZysIeuvY4anogxwAdhaQ8FzPjsOu5lNAjYFnSuSvpX1QzreJmqiS9I2hQ73NdFkrknaGDlw5x8iHW880wsQV4ENNS7lOpMdYClwNxHanZLORgBebKcLOrsldUYyO4AzCbvLHOAi0J4QbJd0OTJ+D1iSANgOnEvYveQA94HFCcHvgDv1M7GC80op6AK2JOw+cIB3GQ2kmh1/Oe6oWISjgdfArARAnwM4fb3D5jew0lu2JCs6MbOc8Lvaj5EC9EhygGHHzFqA2yFVqbZRAhhJCtok+TMbPGY2BmgDzie6YKxWSkFOERZvsk7SjehVbA4zwJeXek6pCHOeYdHoWkk3IwCHWVOP5yBbeoY5jahoO6cv5PCUGpGPzlQrLhpL9YUc5wOt2CXNLDWMKhn0ifYSWFieqjleI5mBYRQAvHhS4zi2/wJokdRvZk3A0zohho7jAJFaSGKADkmDw8jMfMtpriMCQxeSAOBreGolK/volrQ66Pm3wqc6umnllSxKRc5S6q34FvA4zPx5mbevvpRGb7pxa3kE4UXZmA+TCKJxn2ZxPhv2cVosqv/1ef4XvUY7+DQzteEAAAAASUVORK5CYII=
|
|
||||||
[support-link]: https://discord.com/invite/Jx3TjNS
|
|
||||||
|
|
||||||
[paypal-badge]: https://img.shields.io/badge/PayPal-%23003087.svg?style=flat&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAgCAYAAAABtRhCAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAdhwAAHYcBj+XxZQAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAIZSURBVEiJvZa7a1RREIe/CRsIqBBQJEEUO5+YRgSx0JTBwkKwsBMU/4HY2dmKFmm1tRBREEGFYGMhvgolPlBsRBuJj5iIiRvzWWxuOF7v3r2Ld/ODhXNmhvnOzHnshZzU82rTamqqn9XX6jV1XB3K52wrtaHOV4S104J6Ue2vAtz2n7BUt9S+PCNv2FG5HZ11GDi1mkCA052AO2sG7s63tdcV9gON1BDZQA1gFlhTI3AmIgZTQ1rhlpphAFN5Qwqse/8A7uYNaX/r3j+Am9lAHQbmegmcjIhnyfwosLFXwEXgbM52BBhemdl6hOvSeEpSR9QldTYzDNUE+q2eyZer3lj2rwBHa4A9UA8UwE4kMS+yPexm/xZpPRDTwBvgCXA9Ip4XwEaBicT0MHNMlKz8ijrQxYKynMfVn7lcxzLnZAnwYJegEfV2QZ6P6kDW0rJX5lUHwAZgD7CP1l3b2yb0XETMow6WVDedS35Bfbf8+2LrqFfRVVt/DqDuLwm8nwM+qghIdcnk+6aP8hO60s7lFW4va2+iReAOcCgiTkZEM3M0OgBfJuNNwLqCmHvAY+AbMAO8BZ5GxNeihA2qH5iiuO/AWET8Ksnxl/o6ANMKizox1Q0sA65t45sDPiTzov0rvTJFagC7gM0FvoWIMJkXVdg1sLLUTwVHfqxXsPVt7tjWbnP98+3fRkXt/AG8Xy3gEnA5Ipa6Bf4BbzmPtw84RMAAAAAASUVORK5CYII=
|
|
||||||
[paypal-link]: https://paypal.me/MircoWittrien
|
|
||||||
|
|
||||||
[patreon-badge]: https://img.shields.io/badge/Patreon-%23F96854.svg?style=flat&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAdhwAAHYcBj+XxZQAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAGBSURBVFiF7Za9ThtBFEbPBUpERWMwCorfJjY4aVLxBFHCKyCl4hWQUqVMBULmbfiRCNACqSJsDsXakjHGO8Y7ovFXrmbmO3NnZ74bqrzUeUR8HPP9mdQ60AZawCZQBwK4BC6ADnAUEZeTFhmnsxLjdfVAfXhl/rB66h/1QyUAalu9TzAe1Z26NROAutvf0VvVU7+/CUD9PKP5MMT2VADqhvqvAvOB7tQ1gIXXznpEP4HlxLEpWgH2AEInX0OLv/cUWKwQAKALbKZU4EsGc4AloJ0C8CmD+UDNFIBGRoBGCkAtI8B66i3IpccUgJuMANcpAKcZAc5SAE4yAnRSAA6BXgbzLnBUChARF8DvDAC/IuIqNYzqFYfRrVqDxDCKiL/AV6o5ikdgJyJuBrsrrcBQJX44W0/QVb+NLpoM0B/f6pdwWt2qL3NlWoD+nFV1X/2fYPxg0cCOfdJL+4ESkBqwDTQpQmuNoi2/onjAOsBxRFxPWmTqClSp9w6jOcAcYA7AE1OMk5ulhBZCAAAAAElFTkSuQmCC
|
|
||||||
[patreon-link]: https://patreon.com/MircoWittrien
|
|
||||||
|
|
||||||
Allows you to copy the raw Contents of a Message
|
|
||||||
|
|
||||||
|
|
||||||
![screenshot1](https://mwittrien.github.io/BetterDiscordAddons/Plugins/CopyRawMessage/_res/screenshot1.png)
|
|
||||||
![screenshot2](https://mwittrien.github.io/BetterDiscordAddons/Plugins/CopyRawMessage/_res/screenshot2.png)
|
|
Binary file not shown.
Before Width: | Height: | Size: 8.7 KiB |
Binary file not shown.
Before Width: | Height: | Size: 21 KiB |
Binary file not shown.
Before Width: | Height: | Size: 19 KiB |
|
@ -16,7 +16,6 @@
|
||||||
- [Chat Aliases](https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/ChatAliases) - Allows you to configure your own Aliases/Commands
|
- [Chat Aliases](https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/ChatAliases) - Allows you to configure your own Aliases/Commands
|
||||||
- [Chat Filter](https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/ChatFilter) - Allows you to censor Words or block complete Messages/Statuses
|
- [Chat Filter](https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/ChatFilter) - Allows you to censor Words or block complete Messages/Statuses
|
||||||
- [Complete Timestamps](https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/CompleteTimestamps) - Replaces Timestamps with your own custom Timestamps
|
- [Complete Timestamps](https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/CompleteTimestamps) - Replaces Timestamps with your own custom Timestamps
|
||||||
- [Copy Raw Message](https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/CopyRawMessage) - Allows you to copy the raw Contents of a Message
|
|
||||||
- [Custom Quoter](https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/CustomQuoter) - Brings back the Quote Feature and allows you to set your own Quote Formats
|
- [Custom Quoter](https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/CustomQuoter) - Brings back the Quote Feature and allows you to set your own Quote Formats
|
||||||
- [Custom Status Presets](https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/CustomStatusPresets) - Allows you to save Custom Statuses as Quick Select
|
- [Custom Status Presets](https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/CustomStatusPresets) - Allows you to save Custom Statuses as Quick Select
|
||||||
- [Display Servers As Channels](https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/DisplayServersAsChannels) - Displays Servers in a similar way as Channels
|
- [Display Servers As Channels](https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/DisplayServersAsChannels) - Displays Servers in a similar way as Channels
|
||||||
|
|
|
@ -0,0 +1,74 @@
|
||||||
|
/**
|
||||||
|
* @name CopyRawMessage
|
||||||
|
* @author DevilBro
|
||||||
|
* @authorId 278543574059057154
|
||||||
|
* @version 9.9.9
|
||||||
|
* @description PLUGIN WAS DISCONTINUED
|
||||||
|
*/
|
||||||
|
|
||||||
|
module.exports = (_ => {
|
||||||
|
const changeLog = {};
|
||||||
|
|
||||||
|
return !window.BDFDB_Global || (!window.BDFDB_Global.loaded && !window.BDFDB_Global.started) ? class {
|
||||||
|
constructor (meta) {for (let key in meta) this[key] = meta[key];}
|
||||||
|
getName () {return this.name;}
|
||||||
|
getAuthor () {return this.author;}
|
||||||
|
getVersion () {return this.version;}
|
||||||
|
getDescription () {return `The Library Plugin needed for ${this.name} is missing. Open the Plugin Settings to download it. \n\n${this.description}`;}
|
||||||
|
|
||||||
|
downloadLibrary () {
|
||||||
|
require("request").get("https://mwittrien.github.io/BetterDiscordAddons/Library/0BDFDB.plugin.js", (e, r, b) => {
|
||||||
|
if (!e && b && r.statusCode == 200) require("fs").writeFile(require("path").join(BdApi.Plugins.folder, "0BDFDB.plugin.js"), b, _ => BdApi.showToast("Finished downloading BDFDB Library", {type: "success"}));
|
||||||
|
else BdApi.alert("Error", "Could not download BDFDB Library Plugin. Try again later or download it manually from GitHub: https://mwittrien.github.io/downloader/?library");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
load () {
|
||||||
|
if (!window.BDFDB_Global || !Array.isArray(window.BDFDB_Global.pluginQueue)) window.BDFDB_Global = Object.assign({}, window.BDFDB_Global, {pluginQueue: []});
|
||||||
|
if (!window.BDFDB_Global.downloadModal) {
|
||||||
|
window.BDFDB_Global.downloadModal = true;
|
||||||
|
BdApi.showConfirmationModal("Library Missing", `The Library Plugin needed for ${this.name} is missing. Please click "Download Now" to install it.`, {
|
||||||
|
confirmText: "Download Now",
|
||||||
|
cancelText: "Cancel",
|
||||||
|
onCancel: _ => {delete window.BDFDB_Global.downloadModal;},
|
||||||
|
onConfirm: _ => {
|
||||||
|
delete window.BDFDB_Global.downloadModal;
|
||||||
|
this.downloadLibrary();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
if (!window.BDFDB_Global.pluginQueue.includes(this.name)) window.BDFDB_Global.pluginQueue.push(this.name);
|
||||||
|
}
|
||||||
|
start () {this.load();}
|
||||||
|
stop () {}
|
||||||
|
getSettingsPanel () {
|
||||||
|
let template = document.createElement("template");
|
||||||
|
template.innerHTML = `<div style="color: var(--header-primary); font-size: 16px; font-weight: 300; white-space: pre; line-height: 22px;">The Library Plugin needed for ${this.name} is missing.\nPlease click <a style="font-weight: 500;">Download Now</a> to install it.</div>`;
|
||||||
|
template.content.firstElementChild.querySelector("a").addEventListener("click", this.downloadLibrary);
|
||||||
|
return template.content.firstElementChild;
|
||||||
|
}
|
||||||
|
} : (([Plugin, BDFDB]) => {
|
||||||
|
return class CopyRawMessage extends Plugin {
|
||||||
|
onLoad () {}
|
||||||
|
|
||||||
|
onStart () {
|
||||||
|
BDFDB.ModalUtils.open(this, {
|
||||||
|
header: "PLUGIN WAS DISCONTINUED",
|
||||||
|
children: [
|
||||||
|
BDFDB.ReactUtils.createElement("span", {children: "DISCORD ADDED THIS FEATURE BY THEMSELVES, MAKING THIS PLUGIN USELESS "}),
|
||||||
|
BDFDB.ReactUtils.createElement("strong", {children: "DELETE"}),
|
||||||
|
BDFDB.ReactUtils.createElement("span", {children: " TO REMOVE THIS EMPTY PLUGIN FILE."})
|
||||||
|
],
|
||||||
|
buttons: [
|
||||||
|
{contents: "DELETE", close: true, color: "RED", onClick: _ => {
|
||||||
|
BDFDB.LibraryRequires.fs.unlink(BDFDB.LibraryRequires.path.join(BDFDB.BDUtils.getPluginsFolder(), "CopyRawMessage.plugin.js"), error => {});
|
||||||
|
BDFDB.LibraryRequires.fs.unlink(BDFDB.LibraryRequires.path.join(BDFDB.BDUtils.getPluginsFolder(), "CopyRawMessage.config.json"), error => {});
|
||||||
|
}}
|
||||||
|
]
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
onStop () {}
|
||||||
|
};
|
||||||
|
})(window.BDFDB_Global.PluginUtils.buildPlugin(changeLog));
|
||||||
|
})();
|
Loading…
Reference in New Issue