2020-10-20 23:25:34 +02:00
/ * *
* @ name GoogleSearchReplace
2021-03-05 13:26:41 +01:00
* @ author DevilBro
2020-10-20 23:25:34 +02:00
* @ authorId 278543574059057154
2023-11-03 09:44:05 +01:00
* @ version 1.3 . 6
2021-03-05 13:26:41 +01:00
* @ description Replaces the default Google Text Search with a custom Search Engine
2020-10-20 23:25:34 +02:00
* @ invite Jx3TjNS
2020-11-19 16:45:36 +01:00
* @ donate https : //www.paypal.me/MircoWittrien
* @ patreon https : //www.patreon.com/MircoWittrien
2021-03-09 15:10:55 +01:00
* @ website https : //mwittrien.github.io/
* @ source https : //github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/GoogleSearchReplace/
2021-03-10 09:17:37 +01:00
* @ updateUrl https : //mwittrien.github.io/BetterDiscordAddons/Plugins/GoogleSearchReplace/GoogleSearchReplace.plugin.js
2020-10-20 23:25:34 +02:00
* /
2018-10-11 10:21:26 +02:00
2020-09-19 20:49:33 +02:00
module . exports = ( _ => {
2022-09-01 14:40:11 +02:00
const changeLog = {
2023-11-03 09:44:05 +01:00
improved : {
"Own Search Engines" : "You can now add your own engines in the settings"
}
2020-09-19 20:49:33 +02:00
} ;
2020-12-28 19:41:31 +01:00
2022-02-05 21:14:17 +01:00
return ! window . BDFDB _Global || ( ! window . BDFDB _Global . loaded && ! window . BDFDB _Global . started ) ? class {
2022-09-01 14:55:22 +02:00
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 } ` ; }
2021-02-01 17:13:13 +01:00
downloadLibrary ( ) {
2023-11-18 18:31:04 +01:00
BdApi . Net . fetch ( "https://mwittrien.github.io/BetterDiscordAddons/Library/0BDFDB.plugin.js" ) . then ( r => {
if ( ! r || r . status != 200 ) throw new Error ( ) ;
else return r . text ( ) ;
} ) . then ( b => {
if ( ! b ) throw new Error ( ) ;
else return require ( "fs" ) . writeFile ( require ( "path" ) . join ( BdApi . Plugins . folder , "0BDFDB.plugin.js" ) , b , _ => BdApi . showToast ( "Finished downloading BDFDB Library" , { type : "success" } ) ) ;
} ) . catch ( error => {
BdApi . alert ( "Error" , "Could not download BDFDB Library Plugin. Try again later or download it manually from GitHub: https://mwittrien.github.io/downloader/?library" ) ;
2021-02-01 17:13:13 +01:00
} ) ;
}
2020-09-19 20:49:33 +02:00
2021-01-06 12:38:36 +01:00
load ( ) {
2020-11-19 16:51:14 +01:00
if ( ! window . BDFDB _Global || ! Array . isArray ( window . BDFDB _Global . pluginQueue ) ) window . BDFDB _Global = Object . assign ( { } , window . BDFDB _Global , { pluginQueue : [ ] } ) ;
2020-09-19 20:49:33 +02:00
if ( ! window . BDFDB _Global . downloadModal ) {
window . BDFDB _Global . downloadModal = true ;
2022-09-01 14:55:22 +02:00
BdApi . showConfirmationModal ( "Library Missing" , ` The Library Plugin needed for ${ this . name } is missing. Please click "Download Now" to install it. ` , {
2020-09-19 20:49:33 +02:00
confirmText : "Download Now" ,
cancelText : "Cancel" ,
onCancel : _ => { delete window . BDFDB _Global . downloadModal ; } ,
2020-09-20 08:15:13 +02:00
onConfirm : _ => {
delete window . BDFDB _Global . downloadModal ;
2021-02-01 17:13:13 +01:00
this . downloadLibrary ( ) ;
2020-09-20 08:15:13 +02:00
}
2020-09-19 20:49:33 +02:00
} ) ;
}
2022-09-01 14:55:22 +02:00
if ( ! window . BDFDB _Global . pluginQueue . includes ( this . name ) ) window . BDFDB _Global . pluginQueue . push ( this . name ) ;
2020-10-09 21:09:35 +02:00
}
2021-01-06 12:38:36 +01:00
start ( ) { this . load ( ) ; }
stop ( ) { }
getSettingsPanel ( ) {
2020-11-28 23:12:09 +01:00
let template = document . createElement ( "template" ) ;
2022-09-01 14:55:22 +02:00
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. \n Please click <a style="font-weight: 500;">Download Now</a> to install it.</div> ` ;
2021-02-01 17:13:13 +01:00
template . content . firstElementChild . querySelector ( "a" ) . addEventListener ( "click" , this . downloadLibrary ) ;
2020-11-28 23:12:09 +01:00
return template . content . firstElementChild ;
}
2020-10-09 21:09:35 +02:00
} : ( ( [ Plugin , BDFDB ] ) => {
2021-01-10 11:41:01 +01:00
var engines = { } , enabledEngines = { } ;
2020-09-19 20:49:33 +02:00
2020-10-09 21:09:35 +02:00
return class GoogleSearchReplace extends Plugin {
2021-01-06 12:38:36 +01:00
onLoad ( ) {
2020-09-19 20:49:33 +02:00
this . defaults = {
engines : {
2023-11-18 18:31:04 +01:00
_all : { value : true , name : BDFDB . LanguageUtils . LanguageStrings . FORM _LABEL _ALL , url : null } ,
Amazon : { value : false , name : "Amazon" , url : "https://www.amazon.com/s?k=" } ,
Ask : { value : true , name : "Ask" , url : "https://ask.com/web?q=" } ,
Bing : { value : true , name : "Bing" , url : "https://www.bing.com/search?q=" } ,
Brave : { value : true , name : "Brave" , url : "https://search.brave.com/search?q=" } ,
DogPile : { value : false , name : "DogPile" , url : "http://www.dogpile.com/search/web?q=" } ,
DuckDuckGo : { value : true , name : "DuckDuckGo" , url : "https://duckduckgo.com/?q=" } ,
Ecosia : { value : false , name : "Ecosia" , url : "https://www.ecosia.org/search?q=" } ,
Facebook : { value : true , name : "Facebook" , url : "https://www.facebook.com/search/top/?q=" } ,
GitHub : { value : false , name : "GitHub" , url : "https://github.com/search?q=" } ,
Google : { value : true , name : "Google" , url : "https://www.google.com/search?q=" } ,
GoogleScholar : { value : false , name : "Google Scholar" , url : "https://scholar.google.com/scholar?q=" } ,
Linkedin : { value : false , name : "Linkedin" , url : "https://www.linkedin.com/search/results/all/?keywords=" } ,
Pinterest : { value : true , name : "Pinterest" , url : "https://www.pinterest.com/search/pins/?q=" } ,
Quora : { value : true , name : "Quora" , url : "https://www.quora.com/search?q=" } ,
Qwant : { value : false , name : "Qwant" , url : "https://www.qwant.com/?t=all&q=" } ,
Searx : { value : false , name : "Searx" , url : "https://searx.info/?q=" } ,
StackOverflow : { value : true , name : "Stack Overflow" , url : "https://stackoverflow.com/search?q=" } ,
Startpage : { value : false , name : "Startpage" , url : "https://www.startpage.com/sp/search?q=" } ,
UrbanDictionary : { value : false , name : "Urban Dictionary" , url : "https://www.urbandictionary.com/define.php?term=" } ,
Whoogle : { value : false , name : "Whoogle" , url : "https://search.sethforprivacy.com/search?q=" } ,
WolframAlpha : { value : false , name : "Wolfram Alpha" , url : "https://www.wolframalpha.com/input/?i=" } ,
Yahoo : { value : true , name : "Yahoo" , url : "https://search.yahoo.com/search?p=" } ,
Yandex : { value : true , name : "Yandex" , url : "https://yandex.com/search/?text=" } ,
YouTube : { value : false , name : "YouTube" , url : "https://www.youtube.com/results?q=" }
2020-09-19 20:49:33 +02:00
}
} ;
}
2021-01-06 12:38:36 +01:00
onStart ( ) {
2020-09-19 20:49:33 +02:00
this . forceUpdateAll ( ) ;
}
2020-02-13 12:25:48 +01:00
2021-01-06 12:38:36 +01:00
onStop ( ) { }
2020-09-19 20:49:33 +02:00
getSettingsPanel ( collapseStates = { } ) {
2023-11-03 09:44:05 +01:00
let ownEngines = BDFDB . DataUtils . load ( this , "ownEngines" ) ;
2020-09-19 20:49:33 +02:00
2023-11-03 09:44:05 +01:00
let settingsPanel ;
return settingsPanel = BDFDB . PluginUtils . createSettingsPanel ( this , {
collapseStates : collapseStates ,
children : _ => {
let settingsItems = [ ] ;
2020-06-09 09:03:02 +02:00
2023-11-03 09:44:05 +01:00
settingsItems . push ( BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . CollapseContainer , {
title : "Search Engines" ,
collapseStates : collapseStates ,
children : Object . keys ( engines ) . filter ( n => n && n != "_all" ) . map ( key => BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . SettingsSaveItem , {
type : "Switch" ,
plugin : this ,
keys : [ "engines" , key ] ,
label : this . defaults . engines [ key ] . name ,
value : engines [ key ]
} ) )
} ) ) ;
let values = { engineName : "" , engineUrl : "" } ;
settingsItems . push ( BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . CollapseContainer , {
title : "Add your own Search Engine" ,
collapseStates : collapseStates ,
children : [
BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . FormComponents . FormItem , {
title : "Name:" ,
className : BDFDB . disCN . marginbottom8 ,
children : BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . TextInput , {
value : values . engineName ,
placeholder : values . engineName ,
errorMessage : ! values . engineName && "Enter a Name" || ( ownEngines [ values . engineName ] || this . defaults . engines [ values . engineName ] ) && "Engine already exists" ,
onChange : ( value , instance ) => {
values . engineName = value . trim ( ) ;
if ( ! values . engineName ) instance . props . errorMessage = "Enter a Name" ;
else if ( ownEngines [ values . engineName ] || this . defaults . engines [ values . engineName ] ) instance . props . errorMessage = "Engine already exists" ;
else delete instance . props . errorMessage ;
values . addButton . props . disabled = ! Object . keys ( values ) . every ( valueName => values [ valueName ] ) ;
BDFDB . ReactUtils . forceUpdate ( values . addButton ) ;
} ,
inputChildren : BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . Button , {
disabled : ! Object . keys ( values ) . every ( valueName => values [ valueName ] ) ,
children : BDFDB . LanguageUtils . LanguageStrings . ADD ,
ref : instance => { if ( instance ) values . addButton = instance ; } ,
onClick : _ => {
ownEngines [ values . engineName ] = { url : values . engineUrl , enabled : true } ;
BDFDB . DataUtils . save ( ownEngines , this , "ownEngines" ) ;
BDFDB . PluginUtils . refreshSettingsPanel ( this , settingsPanel , collapseStates ) ;
}
} )
} )
} ) ,
BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . FormComponents . FormItem , {
title : "URL:" ,
className : BDFDB . disCN . marginbottom8 ,
children : BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . TextInput , {
value : values . engineUrl ,
placeholder : values . engineUrl ,
errorMessage : ! values . engineUrl && "Enter an URL" ,
onChange : ( value , instance ) => {
values . engineUrl = value . trim ( ) ;
if ( ! values . engineUrl ) instance . props . errorMessage = "Enter an URL" ;
else delete instance . props . errorMessage ;
values . addButton . props . disabled = ! Object . keys ( values ) . every ( valueName => values [ valueName ] ) ;
BDFDB . ReactUtils . forceUpdate ( values . addButton ) ;
}
} )
} )
]
} ) ) ;
if ( Object . keys ( ownEngines ) . length ) settingsItems . push ( BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . CollapseContainer , {
title : "Your own Search Engines" ,
collapseStates : collapseStates ,
children : Object . entries ( ownEngines ) . map ( engine => BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . Card , {
children : BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . Flex , {
style : { width : "100%" } ,
children : [
BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . TextInput , {
value : engine [ 0 ] ,
placeholder : engine [ 0 ] ,
size : BDFDB . LibraryComponents . TextInput . Sizes . MINI ,
maxLength : 100000000000000000000 ,
onChange : value => {
ownEngines [ value ] = ownEngines [ engine [ 0 ] ] ;
delete ownEngines [ engine [ 0 ] ] ;
engine [ 0 ] = value ;
BDFDB . DataUtils . save ( ownEngines , this , "ownEngines" ) ;
}
} ) ,
BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . Flex . Child , {
stretch : 1 ,
shrink : 0 ,
children : BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . TextInput , {
value : engine [ 1 ] . url ,
placeholder : engine [ 1 ] . url ,
size : BDFDB . LibraryComponents . TextInput . Sizes . MINI ,
maxLength : 100000000000000000000 ,
onChange : value => {
ownEngines [ engine [ 0 ] ] . url = value ;
engine [ 1 ] . url = value ;
BDFDB . DataUtils . save ( ownEngines , this , "ownEngines" ) ;
}
} )
} ) ,
BDFDB . ReactUtils . createElement ( BDFDB . LibraryComponents . Switch , {
value : engine [ 1 ] . enabled ,
onChange : value => {
ownEngines [ engine [ 0 ] ] . enabled = value ;
engine [ 1 ] . enabled = value ;
BDFDB . DataUtils . save ( ownEngines , this , "ownEngines" ) ;
}
} )
]
} ) ,
onRemove : _ => {
delete ownEngines [ engine [ 0 ] ] ;
BDFDB . DataUtils . save ( ownEngines , this , "ownEngines" ) ;
BDFDB . PluginUtils . refreshSettingsPanel ( this , settingsPanel ) ;
}
} ) )
} ) ) ;
return settingsItems ;
}
} ) ;
2020-02-13 12:25:48 +01:00
}
2019-10-22 11:37:23 +02:00
2021-01-06 12:38:36 +01:00
onSettingsClosed ( ) {
2020-09-19 20:49:33 +02:00
if ( this . SettingsUpdated ) {
delete this . SettingsUpdated ;
this . forceUpdateAll ( ) ;
}
}
2021-01-06 12:38:36 +01:00
forceUpdateAll ( ) {
2020-09-19 20:49:33 +02:00
engines = BDFDB . DataUtils . get ( this , "engines" ) ;
enabledEngines = BDFDB . ObjectUtils . filter ( engines , n => n ) ;
2020-02-13 12:25:48 +01:00
}
2019-01-26 22:45:19 +01:00
2020-09-19 20:49:33 +02:00
onMessageContextMenu ( e ) {
this . injectItem ( e ) ;
}
2020-05-19 19:56:29 +02:00
2022-10-20 11:34:41 +02:00
onTextAreaContextMenu ( e ) {
2020-09-19 20:49:33 +02:00
this . injectItem ( e ) ;
}
injectItem ( e ) {
let [ children , index ] = BDFDB . ContextMenuUtils . findItem ( e . returnvalue , { id : "search-google" } ) ;
if ( index > - 1 ) {
let text = document . getSelection ( ) . toString ( ) ;
let enginesWithoutAll = BDFDB . ObjectUtils . filter ( enabledEngines , n => n != "_all" , true ) ;
2023-11-03 09:44:05 +01:00
let ownEnabledEngines = BDFDB . ObjectUtils . filter ( BDFDB . DataUtils . load ( this , "ownEngines" ) , n => n . enabled ) ;
let engineKeys = Object . keys ( Object . assign ( { } , enginesWithoutAll , ownEnabledEngines ) ) . sort ( ) ;
2020-09-19 20:49:33 +02:00
if ( engineKeys . length == 1 ) {
children . splice ( index , 1 , BDFDB . ContextMenuUtils . createItem ( BDFDB . LibraryComponents . MenuItems . MenuItem , {
2020-12-21 19:56:36 +01:00
label : this . labels . context _googlesearchreplace . replace ( "..." , this . defaults . engines [ engineKeys [ 0 ] ] . name ) ,
2020-09-19 20:49:33 +02:00
id : children [ index ] . props . id ,
persisting : true ,
action : event => {
if ( ! event . shiftKey ) BDFDB . ContextMenuUtils . close ( e . instance ) ;
2023-11-03 09:44:05 +01:00
BDFDB . DiscordUtils . openLink ( this . defaults . engines [ engineKeys [ 0 ] ] . url + encodeURIComponent ( text ) , {
2021-01-10 11:41:01 +01:00
minimized : event . shiftKey
} ) ;
2020-02-13 12:25:48 +01:00
}
2020-09-19 20:49:33 +02:00
} ) ) ;
}
else {
let items = [ ] ;
2023-11-03 09:44:05 +01:00
for ( let key of engineKeys ) items . push ( BDFDB . ContextMenuUtils . createItem ( BDFDB . LibraryComponents . MenuItems . MenuItem , {
label : this . defaults . engines [ key ] && this . defaults . engines [ key ] . name || key ,
2020-09-19 20:49:33 +02:00
id : BDFDB . ContextMenuUtils . createItemId ( this . name , "search" , key ) ,
2022-09-30 14:18:20 +02:00
color : key == "_all" ? BDFDB . DiscordConstants . MenuItemColors . DANGER : BDFDB . DiscordConstants . MenuItemColors . DEFAULT ,
2020-09-19 20:49:33 +02:00
persisting : true ,
action : event => {
if ( ! event . shiftKey ) BDFDB . ContextMenuUtils . close ( e . instance ) ;
if ( key == "_all" ) {
2023-11-03 09:44:05 +01:00
for ( let key2 of engineKeys ) BDFDB . DiscordUtils . openLink ( ( this . defaults . engines [ key2 ] || ownEnabledEngines [ key2 ] ) . url + encodeURIComponent ( text ) , {
2021-01-10 11:41:01 +01:00
minimized : event . shiftKey
} ) ;
2020-09-19 20:49:33 +02:00
}
2023-11-03 09:44:05 +01:00
else BDFDB . DiscordUtils . openLink ( ( this . defaults . engines [ key ] || ownEnabledEngines [ key ] ) . url + encodeURIComponent ( text ) , {
2021-01-10 11:41:01 +01:00
minimized : event . shiftKey
} ) ;
2020-09-19 20:49:33 +02:00
}
} ) ) ;
if ( ! items . length ) items . push ( BDFDB . ContextMenuUtils . createItem ( BDFDB . LibraryComponents . MenuItems . MenuItem , {
2020-12-21 19:56:36 +01:00
label : this . labels . submenu _disabled ,
2020-09-19 20:49:33 +02:00
id : BDFDB . ContextMenuUtils . createItemId ( this . name , "disabled" ) ,
disabled : true
} ) ) ;
children . splice ( index , 1 , BDFDB . ContextMenuUtils . createItem ( BDFDB . LibraryComponents . MenuItems . MenuItem , {
2020-12-21 19:56:36 +01:00
label : this . labels . context _googlesearchreplace ,
2020-09-19 20:49:33 +02:00
id : children [ index ] . props . id ,
children : items
} ) ) ;
}
2019-01-17 23:48:29 +01:00
}
2019-09-11 12:14:43 +02:00
}
2019-01-26 22:45:19 +01:00
2021-01-06 12:38:36 +01:00
setLabelsByLanguage ( ) {
2020-09-19 20:49:33 +02:00
switch ( BDFDB . LanguageUtils . getLanguage ( ) . id ) {
2020-12-21 19:56:36 +01:00
case "bg" : // Bulgarian
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Търсене с ..." ,
submenu _disabled : "Всички инвалиди"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "da" : // Danish
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Søg med ..." ,
submenu _disabled : "Alle handicappede"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "de" : // German
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Suche mit ..." ,
submenu _disabled : "Alle deaktiviert"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "el" : // Greek
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Αναζήτηση με ..." ,
submenu _disabled : "Όλα τα άτομα με ειδικές ανάγκες"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "es" : // Spanish
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Buscar con ..." ,
submenu _disabled : "Todos discapacitados"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "fi" : // Finnish
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Hae ..." ,
submenu _disabled : "Kaikki vammaiset"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "fr" : // French
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Rechercher avec ..." ,
submenu _disabled : "Tout désactivé"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "hr" : // Croatian
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Traži sa ..." ,
submenu _disabled : "Svi invalidi"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "hu" : // Hungarian
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Keresés a következővel:" ,
submenu _disabled : "Minden fogyatékkal él"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "it" : // Italian
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Cerca con ..." ,
submenu _disabled : "Tutti disabilitati"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "ja" : // Japanese
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "で検索 ..." ,
submenu _disabled : "すべて無効"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "ko" : // Korean
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "다음으로 검색 ..." ,
submenu _disabled : "모두 비활성화 됨"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "lt" : // Lithuanian
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Ieškoti naudojant ..." ,
submenu _disabled : "Visi neįgalūs"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "nl" : // Dutch
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Zoeken met ..." ,
submenu _disabled : "Allemaal uitgeschakeld"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "no" : // Norwegian
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Søk med ..." ,
submenu _disabled : "Alle funksjonshemmede"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "pl" : // Polish
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Szukaj za pomocą ..." ,
submenu _disabled : "Wszystkie wyłączone"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "pt-BR" : // Portuguese (Brazil)
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Pesquise com ..." ,
submenu _disabled : "Todos desativados"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "ro" : // Romanian
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Căutați cu ..." ,
submenu _disabled : "Toate sunt dezactivate"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "ru" : // Russian
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Искать с ..." ,
submenu _disabled : "В с е отключены"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "sv" : // Swedish
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "Sök med ..." ,
submenu _disabled : "Alla funktionshindrade"
2020-09-19 20:49:33 +02:00
} ;
2020-12-21 19:56:36 +01:00
case "th" : // Thai
2020-09-19 20:49:33 +02:00
return {
2020-12-21 19:56:36 +01:00
context _googlesearchreplace : "ค้นหาด้วย ..." ,
submenu _disabled : "ปิดใช้งานทั้งหมด"
} ;
case "tr" : // Turkish
return {
context _googlesearchreplace : "Şununla ara ..." ,
submenu _disabled : "Hepsi devre dı şı "
} ;
case "uk" : // Ukrainian
return {
context _googlesearchreplace : "Шукати за допомогою ..." ,
submenu _disabled : "В с і інваліди"
} ;
case "vi" : // Vietnamese
return {
context _googlesearchreplace : "Tìm kiếm với ..." ,
submenu _disabled : "Tất cả đã bị vô hiệu hóa"
} ;
2021-01-15 17:54:22 +01:00
case "zh-CN" : // Chinese (China)
2020-12-21 19:56:36 +01:00
return {
context _googlesearchreplace : "用 ... 搜索" ,
submenu _disabled : "全部禁用"
} ;
2021-01-15 17:54:22 +01:00
case "zh-TW" : // Chinese (Taiwan)
2020-12-21 19:56:36 +01:00
return {
context _googlesearchreplace : "用 ... 搜索" ,
submenu _disabled : "全部禁用"
} ;
default : // English
return {
context _googlesearchreplace : "Search with ..." ,
submenu _disabled : "All disabled"
2020-09-19 20:49:33 +02:00
} ;
}
2020-02-13 12:25:48 +01:00
}
2020-09-19 20:49:33 +02:00
} ;
2022-09-01 14:40:11 +02:00
} ) ( window . BDFDB _Global . PluginUtils . buildPlugin ( changeLog ) ) ;
2020-11-13 07:06:19 +01:00
} ) ( ) ;