This commit is contained in:
Mirco Wittrien 2020-02-13 12:35:32 +01:00
parent bd27f47a12
commit 1fae32b8fa
2 changed files with 56 additions and 24 deletions

View File

@ -14,7 +14,7 @@ var GoogleSearchReplace = (_ => {
constructor () { constructor () {
this.changelog = { this.changelog = {
"improved":[["One Engine", "enabling only one search engine doesn't create a SubMenu anymore"],["New Library Structure & React","Restructured my Library and switched to React rendering instead of DOM manipulation"]] "improved":[["One Engine", "Enabling only one search engine doesn't create a SubMenu anymore"],["New Library Structure & React","Restructured my Library and switched to React rendering instead of DOM manipulation"]]
}; };
this.patchedModules = { this.patchedModules = {

View File

@ -6,7 +6,7 @@ var ReverseImageSearch = (_ => {
return class ReverseImageSearch { return class ReverseImageSearch {
getName () {return "ReverseImageSearch";} getName () {return "ReverseImageSearch";}
getVersion () {return "3.5.1";} getVersion () {return "3.5.3";}
getAuthor () {return "DevilBro";} getAuthor () {return "DevilBro";}
@ -14,8 +14,7 @@ var ReverseImageSearch = (_ => {
constructor () { constructor () {
this.changelog = { this.changelog = {
"fixed":[["Message Update","Fixed the plugin for the new Message Update"]], "improved":[["One Engine", "Enabling only one search engine doesn't create a SubMenu anymore"],["New Library Structure & React","Restructured my Library and switched to React rendering instead of DOM manipulation"]]
"improved":[["New Library Structure & React","Restructured my Library and switched to React rendering instead of DOM manipulation"]]
}; };
} }
@ -163,31 +162,43 @@ var ReverseImageSearch = (_ => {
if (url.split("/https/").length != 1) url = "https://" + url.split("/https/")[url.split("/https/").length-1]; if (url.split("/https/").length != 1) url = "https://" + url.split("/https/")[url.split("/https/").length-1];
else if (url.split("/http/").length != 1) url = "http://" + url.split("/http/")[url.split("/http/").length-1]; else if (url.split("/http/").length != 1) url = "http://" + url.split("/http/")[url.split("/http/").length-1];
} }
let engines = BDFDB.DataUtils.get(this, "engines"); let enabledEngines = BDFDB.ObjectUtils.filter(BDFDB.DataUtils.get(this, "engines"), n => n);
let items = []; let enginesWithoutAll = BDFDB.ObjectUtils.filter(enabledEngines, n => n != "_all", true);
for (let key in engines) if (engines[key]) items.push(BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.ContextMenuItems.Item, { let engineKeys = Object.keys(enginesWithoutAll);
label: this.defaults.engines[key].name, let [children, index] = BDFDB.ReactUtils.findChildren(e.returnvalue, {name:["FluxContainer(MessageDeveloperModeGroup)", "DeveloperModeGroup"]});
danger: key == "_all", if (engineKeys.length == 1) children.splice(index > -1 ? index : children.length, 0, BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.ContextMenuItems.Item, {
label: this.labels.context_reverseimagesearch_text.replace("...", this.defaults.engines[engineKeys[0]].name),
action: event => { action: event => {
let useChromium = BDFDB.DataUtils.get(this, "settings", "useChromium"); let useChromium = BDFDB.DataUtils.get(this, "settings", "useChromium");
if (!event.shiftKey) BDFDB.ContextMenuUtils.close(e.instance); if (!event.shiftKey) BDFDB.ContextMenuUtils.close(e.instance);
if (key == "_all") { BDFDB.DiscordUtils.openLink(this.defaults.engines[engineKeys[0]].url.replace(imgUrlReplaceString, encodeURIComponent(url)), useChromium, event.shiftKey);
for (let key2 in engines) if (key2 != "_all" && engines[key2]) BDFDB.DiscordUtils.openLink(this.defaults.engines[key2].url.replace(imgUrlReplaceString, encodeURIComponent(url)), useChromium, event.shiftKey);
}
else BDFDB.DiscordUtils.openLink(this.defaults.engines[key].url.replace(imgUrlReplaceString, encodeURIComponent(url)), useChromium, event.shiftKey);
} }
})); }));
if (!items.length) items.push(BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.ContextMenuItems.Item, { else {
label: this.labels.submenu_disabled_text, let items = [];
disabled: true for (let key in enabledEngines) items.push(BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.ContextMenuItems.Item, {
})); label: this.defaults.engines[key].name,
let [children, index] = BDFDB.ReactUtils.findChildren(e.returnvalue, {name:["FluxContainer(MessageDeveloperModeGroup)", "DeveloperModeGroup"]}); danger: key == "_all",
children.splice(index > -1 ? index : children.length, 0, BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.ContextMenuItems.Group, { action: event => {
children: BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.ContextMenuItems.Sub, { let useChromium = BDFDB.DataUtils.get(this, "settings", "useChromium");
label: "Reverse Image Search", if (!event.shiftKey) BDFDB.ContextMenuUtils.close(e.instance);
render: items if (key == "_all") {
}) for (let key2 in enginesWithoutAll) BDFDB.DiscordUtils.openLink(this.defaults.engines[key2].url.replace(imgUrlReplaceString, encodeURIComponent(url)), useChromium, event.shiftKey);
})); }
else BDFDB.DiscordUtils.openLink(this.defaults.engines[key].url.replace(imgUrlReplaceString, encodeURIComponent(url)), useChromium, event.shiftKey);
}
}));
if (!items.length) items.push(BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.ContextMenuItems.Item, {
label: this.labels.submenu_disabled_text,
disabled: true
}));
children.splice(index > -1 ? index : children.length, 0, BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.ContextMenuItems.Group, {
children: BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.ContextMenuItems.Sub, {
label: this.labels.context_reverseimagesearch_text,
render: items
})
}));
}
} }
} }
@ -195,86 +206,107 @@ var ReverseImageSearch = (_ => {
switch (BDFDB.LanguageUtils.getLanguage().id) { switch (BDFDB.LanguageUtils.getLanguage().id) {
case "hr": //croatian case "hr": //croatian
return { return {
context_reverseimagesearch_text: "Traži sliku ...",
submenu_disabled_text: "Svi su onemogućeni" submenu_disabled_text: "Svi su onemogućeni"
}; };
case "da": //danish case "da": //danish
return { return {
context_reverseimagesearch_text: "Søg billede med ...",
submenu_disabled_text: "Alle deaktiveret" submenu_disabled_text: "Alle deaktiveret"
}; };
case "de": //german case "de": //german
return { return {
context_reverseimagesearch_text: "Bild suchen mit ...",
submenu_disabled_text: "Alle deaktiviert" submenu_disabled_text: "Alle deaktiviert"
}; };
case "es": //spanish case "es": //spanish
return { return {
context_reverseimagesearch_text: "Buscar imagen con ...",
submenu_disabled_text: "Todo desactivado" submenu_disabled_text: "Todo desactivado"
}; };
case "fr": //french case "fr": //french
return { return {
context_reverseimagesearch_text: "Rechercher une image avec ...",
submenu_disabled_text: "Tous désactivés" submenu_disabled_text: "Tous désactivés"
}; };
case "it": //italian case "it": //italian
return { return {
context_reverseimagesearch_text: "Cerca immagine con ...",
submenu_disabled_text: "Tutto disattivato" submenu_disabled_text: "Tutto disattivato"
}; };
case "nl": //dutch case "nl": //dutch
return { return {
context_reverseimagesearch_text: "Afbeelding zoeken met ...",
submenu_disabled_text: "Alles gedeactiveerd" submenu_disabled_text: "Alles gedeactiveerd"
}; };
case "no": //norwegian case "no": //norwegian
return { return {
context_reverseimagesearch_text: "Søk på bilde med ...",
submenu_disabled_text: "Alle deaktivert" submenu_disabled_text: "Alle deaktivert"
}; };
case "pl": //polish case "pl": //polish
return { return {
context_reverseimagesearch_text: "Wyszukaj obraz za pomocą ...",
submenu_disabled_text: "Wszystkie wyłączone" submenu_disabled_text: "Wszystkie wyłączone"
}; };
case "pt-BR": //portuguese (brazil) case "pt-BR": //portuguese (brazil)
return { return {
context_reverseimagesearch_text: "Pesquisar imagem com ...",
submenu_disabled_text: "Todos desativados" submenu_disabled_text: "Todos desativados"
}; };
case "fi": //finnish case "fi": //finnish
return { return {
context_reverseimagesearch_text: "Hae kuvaa ...",
submenu_disabled_text: "Kaikki on poistettu käytöstä" submenu_disabled_text: "Kaikki on poistettu käytöstä"
}; };
case "sv": //swedish case "sv": //swedish
return { return {
context_reverseimagesearch_text: "Sök bild med ...",
submenu_disabled_text: "Alla avaktiverade" submenu_disabled_text: "Alla avaktiverade"
}; };
case "tr": //turkish case "tr": //turkish
return { return {
context_reverseimagesearch_text: "Görüntüyü şununla ara ...",
submenu_disabled_text: "Hepsi deaktive" submenu_disabled_text: "Hepsi deaktive"
}; };
case "cs": //czech case "cs": //czech
return { return {
context_reverseimagesearch_text: "Vyhledat obrázek pomocí ...",
submenu_disabled_text: "Všechny deaktivované" submenu_disabled_text: "Všechny deaktivované"
}; };
case "bg": //bulgarian case "bg": //bulgarian
return { return {
context_reverseimagesearch_text: "Търсене на изображение с ...",
submenu_disabled_text: "Всички са деактивирани" submenu_disabled_text: "Всички са деактивирани"
}; };
case "ru": //russian case "ru": //russian
return { return {
context_reverseimagesearch_text: "Поиск изображения с ...",
submenu_disabled_text: "Все деактивированные" submenu_disabled_text: "Все деактивированные"
}; };
case "uk": //ukrainian case "uk": //ukrainian
return { return {
context_reverseimagesearch_text: "Шукати зображення за допомогою ...",
submenu_disabled_text: "Всі вимкнені" submenu_disabled_text: "Всі вимкнені"
}; };
case "ja": //japanese case "ja": //japanese
return { return {
context_reverseimagesearch_text: "で画像を検索 ...",
submenu_disabled_text: "すべて非アクティブ化" submenu_disabled_text: "すべて非アクティブ化"
}; };
case "zh-TW": //chinese (traditional) case "zh-TW": //chinese (traditional)
return { return {
context_reverseimagesearch_text: "搜尋圖片 ...",
submenu_disabled_text: "全部停用" submenu_disabled_text: "全部停用"
}; };
case "ko": //korean case "ko": //korean
return { return {
context_reverseimagesearch_text: "로 이미지 검색 ...",
submenu_disabled_text: "모두 비활성화 됨" submenu_disabled_text: "모두 비활성화 됨"
}; };
default: //default: english default: //default: english
return { return {
context_reverseimagesearch_text: "Search image with ...",
submenu_disabled_text: "All disabled" submenu_disabled_text: "All disabled"
}; };
} }