stuff
This commit is contained in:
parent
b3e0dfda57
commit
687a912636
|
@ -65,55 +65,18 @@ module.exports = (_ => {
|
|||
return template.content.firstElementChild;
|
||||
}
|
||||
} : (([Plugin, BDFDB]) => {
|
||||
var settings = {};
|
||||
|
||||
return class CopyRawMessage extends Plugin {
|
||||
onLoad () {
|
||||
this.defaults = {
|
||||
settings: {
|
||||
copyOnlySelected: {value: true, description: "Only copy selected text of a message"}
|
||||
}
|
||||
};
|
||||
}
|
||||
onLoad () {}
|
||||
|
||||
onStart () {
|
||||
this.forceUpdateAll();
|
||||
}
|
||||
onStart () {}
|
||||
|
||||
onStop () {
|
||||
this.forceUpdateAll();
|
||||
}
|
||||
|
||||
getSettingsPanel (collapseStates = {}) {
|
||||
let settingsPanel, settingsItems = [];
|
||||
|
||||
for (let key in settings) settingsItems.push(BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.SettingsSaveItem, {
|
||||
type: "Switch",
|
||||
plugin: this,
|
||||
keys: ["settings", key],
|
||||
label: this.defaults.settings[key].description,
|
||||
value: settings[key]
|
||||
}));
|
||||
|
||||
return settingsPanel = BDFDB.PluginUtils.createSettingsPanel(this, settingsItems);
|
||||
}
|
||||
|
||||
onSettingsClosed () {
|
||||
if (this.SettingsUpdated) {
|
||||
delete this.SettingsUpdated;
|
||||
this.forceUpdateAll();
|
||||
}
|
||||
}
|
||||
|
||||
forceUpdateAll () {
|
||||
settings = BDFDB.DataUtils.get(this, "settings");
|
||||
}
|
||||
onStop () {}
|
||||
|
||||
onMessageContextMenu (e) {
|
||||
if (e.instance.props.message) {
|
||||
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 = settings.copyOnlySelected && document.getSelection().toString().trim();
|
||||
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];
|
||||
|
|
|
@ -115,10 +115,8 @@ module.exports = (_ => {
|
|||
|
||||
this.defaults = {
|
||||
general: {
|
||||
quoteOnlySelected: {value: true, description: "Only insert selected Text in a Quoted Message"},
|
||||
holdShiftToolbar: {value: false, description: "Need to hold Shift on a Message to show Quick Quote"},
|
||||
alwaysCopy: {value: false, description: "Always copy Quote to Clipboard without holding Shift"},
|
||||
ignoreMentionInDM: {value: true, description: "Do not add a mention in Direct Messages"},
|
||||
forceZeros: {value: false, description: "Force leading Zeros"}
|
||||
}
|
||||
};
|
||||
|
@ -401,7 +399,7 @@ module.exports = (_ => {
|
|||
}
|
||||
|
||||
let content = message.content;
|
||||
let selectedText = this.settings.general.quoteOnlySelected && document.getSelection().toString().trim();
|
||||
let selectedText = document.getSelection().toString().trim();
|
||||
if (selectedText) content = BDFDB.StringUtils.extractSelection(content, selectedText);
|
||||
if (content) {
|
||||
content = content.replace(/(@everyone|@here)/g, "`$1`").replace(/``(@everyone|@here)``/g, "`$1`");
|
||||
|
@ -419,7 +417,7 @@ module.exports = (_ => {
|
|||
let quotedLines = unquotedLines.slice(unquotedLines.findIndex(line => line.trim().length > 0)).map(line => "> " + line + "\n").join("");
|
||||
|
||||
return BDFDB.StringUtils.insertNRST(quoteFormat)
|
||||
.replace("$mention", this.settings.general.ignoreMentionInDM && channel.isDM() ? "" : `<@!${message.author.id}>`)
|
||||
.replace("$mention", channel.isDM() ? "" : `<@!${message.author.id}>`)
|
||||
.replace("$link", `<https://discordapp.com/channels/${guild.id}/${channel.id}/${message.id}>`)
|
||||
.replace("$authorName", member && member.nick || message.author.username || "")
|
||||
.replace("$authorAccount", `${message.author.username}#${message.author.discriminator}`)
|
||||
|
|
Loading…
Reference in New Issue