mirror of
https://gitlab.com/bignutty/labscore.git
synced 2025-06-09 14:43:05 -04:00
support flags in translate args
This commit is contained in:
parent
7789f194bf
commit
159ea53834
2 changed files with 27 additions and 8 deletions
|
@ -1,9 +1,9 @@
|
||||||
const { createEmbed } = require('../../../labscore/utils/embed')
|
const { createEmbed } = require('../../../labscore/utils/embed')
|
||||||
const { editOrReply } = require('../../../labscore/utils/message')
|
const { editOrReply } = require('../../../labscore/utils/message')
|
||||||
|
|
||||||
const { codeblock, highlight, icon, pill } = require('../../../labscore/utils/markdown');
|
const { codeblock, icon, pill } = require('../../../labscore/utils/markdown');
|
||||||
|
|
||||||
const { isSupported } = require('../../../labscore/utils/translate');
|
const { isSupported, getCodeFromAny } = require('../../../labscore/utils/translate');
|
||||||
const { googleTranslate } = require('../../../labscore/api');
|
const { googleTranslate } = require('../../../labscore/api');
|
||||||
const { STATICS } = require('../../../labscore/utils/statics');
|
const { STATICS } = require('../../../labscore/utils/statics');
|
||||||
const { TRANSLATE_LANGUAGES, TRANSLATE_LANGUAGE_MAPPINGS } = require('../../../labscore/constants');
|
const { TRANSLATE_LANGUAGES, TRANSLATE_LANGUAGE_MAPPINGS } = require('../../../labscore/constants');
|
||||||
|
@ -37,6 +37,9 @@ module.exports = {
|
||||||
if(!isSupported(args.to)) return editOrReply(context, createEmbed("warning", context, "Invalid language (to)."))
|
if(!isSupported(args.to)) return editOrReply(context, createEmbed("warning", context, "Invalid language (to)."))
|
||||||
if(!isSupported(args.from)) return editOrReply(context, createEmbed("warning", context, "Invalid language (from)."))
|
if(!isSupported(args.from)) return editOrReply(context, createEmbed("warning", context, "Invalid language (from)."))
|
||||||
|
|
||||||
|
args.to = getCodeFromAny(args.to)
|
||||||
|
args.from = getCodeFromAny(args.from)
|
||||||
|
|
||||||
try{
|
try{
|
||||||
let translate = await googleTranslate(context, content, args.to, args.from)
|
let translate = await googleTranslate(context, content, args.to, args.from)
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
const { TRANSLATE_LANGUAGES } = require("../constants");
|
const { TRANSLATE_LANGUAGES, TRANSLATE_LANGUAGE_MAPPINGS } = require("../constants");
|
||||||
|
|
||||||
function getCode(desiredLang) {
|
function getCode(desiredLang) {
|
||||||
if (!desiredLang) {
|
if (!desiredLang) {
|
||||||
|
@ -11,16 +11,32 @@ function getCode(desiredLang) {
|
||||||
}
|
}
|
||||||
|
|
||||||
var keys = Object.keys(TRANSLATE_LANGUAGES).filter(function (key) {
|
var keys = Object.keys(TRANSLATE_LANGUAGES).filter(function (key) {
|
||||||
if (typeof TRANSLATE_LANGUAGES[key] !== 'string') {
|
if (typeof TRANSLATE_LANGUAGES[key] !== 'string') {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return TRANSLATE_LANGUAGES[key].toLowerCase() === desiredLang;
|
return TRANSLATE_LANGUAGES[key].toLowerCase() === desiredLang;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
keys.push(Object.keys(TRANSLATE_LANGUAGE_MAPPINGS).filter(function (key) {
|
||||||
|
if (typeof TRANSLATE_LANGUAGE_MAPPINGS[key] !== 'string') {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return TRANSLATE_LANGUAGE_MAPPINGS[key].toLowerCase() === desiredLang;
|
||||||
|
}));
|
||||||
|
|
||||||
return keys[0] || false;
|
return keys[0] || false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
module.exports.getCodeFromAny = function (prompt) {
|
||||||
|
if(TRANSLATE_LANGUAGES[prompt.toLowerCase()]) return prompt.toLowerCase()
|
||||||
|
let languages = [];
|
||||||
|
for(const i of Object.keys(TRANSLATE_LANGUAGES)) if(!languages.includes(i) && TRANSLATE_LANGUAGES[i].toLowerCase() == prompt.toLowerCase()) languages.push(i)
|
||||||
|
for(const i of Object.keys(TRANSLATE_LANGUAGE_MAPPINGS)) if(!languages.includes(i) && TRANSLATE_LANGUAGE_MAPPINGS[i].toLowerCase() == prompt.toLowerCase()) languages.push(i)
|
||||||
|
return languages[0];
|
||||||
|
};
|
||||||
|
|
||||||
module.exports.isSupported = function (desiredLang) {
|
module.exports.isSupported = function (desiredLang) {
|
||||||
return Boolean(getCode(desiredLang));
|
return Boolean(getCode(desiredLang));
|
||||||
}
|
}
|
Loading…
Add table
Add a link
Reference in a new issue