Skip to content

Commit

Permalink
Respect new ESlint checks
Browse files Browse the repository at this point in the history
  • Loading branch information
vickyokrm committed Sep 26, 2018
1 parent f808874 commit eb15aad
Show file tree
Hide file tree
Showing 6 changed files with 81 additions and 82 deletions.
33 changes: 16 additions & 17 deletions packages/rocketchat-autotranslate/server/autotranslate.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import s from 'underscore.string';
import _ from 'underscore';
import {RocketChat} from 'meteor/rocketchat:lib';
import { RocketChat } from 'meteor/rocketchat:lib';

/**
* Generic auto translate base implementation.
Expand Down Expand Up @@ -66,7 +66,7 @@ export class AutoTranslate {
const token = `<i class=notranslate>{${ count++ }}</i>`;
message.tokens.push({
token,
text: match
text: match,
});
return token;
});
Expand All @@ -84,13 +84,13 @@ export class AutoTranslate {
const pretoken = `<i class=notranslate>{${ count++ }}</i>`;
message.tokens.push({
token: pretoken,
text: pre
text: pre,
});

const posttoken = `<i class=notranslate>{${ count++ }}</i>`;
message.tokens.push({
token: posttoken,
text: post
text: post,
});

return pretoken + text + posttoken;
Expand All @@ -101,13 +101,13 @@ export class AutoTranslate {
const pretoken = `<i class=notranslate>{${ count++ }}</i>`;
message.tokens.push({
token: pretoken,
text: pre
text: pre,
});

const posttoken = `<i class=notranslate>{${ count++ }}</i>`;
message.tokens.push({
token: posttoken,
text: post
text: post,
});

return pretoken + text + posttoken;
Expand All @@ -125,7 +125,7 @@ export class AutoTranslate {

for (const tokenIndex in message.tokens) {
if (message.tokens.hasOwnProperty(tokenIndex)) {
const token = message.tokens[tokenIndex].token;
const { token } = message.tokens[tokenIndex];
if (token.indexOf('notranslate') === -1) {
const newToken = `<i class=notranslate>{${ count++ }}</i>`;
message.msg = message.msg.replace(token, newToken);
Expand All @@ -141,25 +141,25 @@ export class AutoTranslate {
let count = message.tokens.length;

if (message.mentions && message.mentions.length > 0) {
message.mentions.forEach(mention => {
message.msg = message.msg.replace(new RegExp(`(@${ mention.username })`, 'gm'), match => {
message.mentions.forEach((mention) => {
message.msg = message.msg.replace(new RegExp(`(@${ mention.username })`, 'gm'), (match) => {
const token = `<i class=notranslate>{${ count++ }}</i>`;
message.tokens.push({
token,
text: match
text: match,
});
return token;
});
});
}

if (message.channels && message.channels.length > 0) {
message.channels.forEach(channel => {
message.msg = message.msg.replace(new RegExp(`(#${ channel.name })`, 'gm'), match => {
message.channels.forEach((channel) => {
message.msg = message.msg.replace(new RegExp(`(#${ channel.name })`, 'gm'), (match) => {
const token = `<i class=notranslate>{${ count++ }}</i>`;
message.tokens.push({
token,
text: match
text: match,
});
return token;
});
Expand All @@ -171,8 +171,8 @@ export class AutoTranslate {

deTokenize(message) {
if (message.tokens && message.tokens.length > 0) {
for (const {token, text, noHtml} of message.tokens) {
message.msg = message.msg.replace(token, () => noHtml ? noHtml : text);
for (const { token, text, noHtml } of message.tokens) {
message.msg = message.msg.replace(token, () => (noHtml ? noHtml : text));
}
}
return message.msg;
Expand Down Expand Up @@ -298,7 +298,7 @@ export class AutoTranslate {

export class TranslationProviderRegistry {
static registerProvider(provider) {
//get provider information
// get provider information
const metadata = provider._getProviderMetadata();
if (!TranslationProviderRegistry._providers) {
TranslationProviderRegistry._providers = {};
Expand All @@ -317,4 +317,3 @@ export class TranslationProviderRegistry {
Meteor.startup(() => {
TranslationProviderRegistry.loadActiveServiceProvider();
});

68 changes: 34 additions & 34 deletions packages/rocketchat-autotranslate/server/deeplTranslate.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
* @author Vigneshwaran Odayappan <vickyokrm@gmail.com>
*/

import {TranslationProviderRegistry, AutoTranslate} from 'meteor/rocketchat:autotranslate';
import {SystemLogger} from 'meteor/rocketchat:logger';
import { TranslationProviderRegistry, AutoTranslate } from 'meteor/rocketchat:autotranslate';
import { SystemLogger } from 'meteor/rocketchat:logger';
import _ from 'underscore';

/**
Expand All @@ -22,7 +22,7 @@ class DeeplAutoTranslate extends AutoTranslate {
constructor() {
super();
this.name = 'deepl-translate';
//this.apiEndPointUrl = 'https://api.deepl.com/v1/translate';
// this.apiEndPointUrl = 'https://api.deepl.com/v1/translate';
}

/**
Expand All @@ -34,7 +34,7 @@ class DeeplAutoTranslate extends AutoTranslate {
return {
name: this.name,
displayName: TAPi18n.__('AutoTranslate_DeepL'),
settings: this._getSettings()
settings: this._getSettings(),
};
}

Expand All @@ -46,7 +46,7 @@ class DeeplAutoTranslate extends AutoTranslate {
_getSettings() {
return {
apiKey: this.apiKey,
apiEndPointUrl: this.apiEndPointUrl
apiEndPointUrl: this.apiEndPointUrl,
};
}

Expand All @@ -63,33 +63,33 @@ class DeeplAutoTranslate extends AutoTranslate {
}
return this.supportedLanguages[target] = [
{
'language': 'en',
'name': TAPi18n.__('English', {lng: target})
language: 'en',
name: TAPi18n.__('English', { lng: target }),
},
{
'language': 'de',
'name': TAPi18n.__('German', {lng: target})
language: 'de',
name: TAPi18n.__('German', { lng: target }),
},
{
'language': 'fr',
'name': TAPi18n.__('French', {lng: target})
language: 'fr',
name: TAPi18n.__('French', { lng: target }),
},
{
'language': 'es',
'name': TAPi18n.__('Spanish', {lng: target})
language: 'es',
name: TAPi18n.__('Spanish', { lng: target }),
},
{
'language': 'it',
'name': TAPi18n.__('Italian', {lng: target})
language: 'it',
name: TAPi18n.__('Italian', { lng: target }),
},
{
'language': 'nl',
'name': TAPi18n.__('Dutch', {lng: target})
language: 'nl',
name: TAPi18n.__('Dutch', { lng: target }),
},
{
'language': 'pl',
'name': TAPi18n.__('Polish', {lng: target})
}
language: 'pl',
name: TAPi18n.__('Polish', { lng: target }),
},
];
}
}
Expand All @@ -105,26 +105,26 @@ class DeeplAutoTranslate extends AutoTranslate {
_translateMessage(message, targetLanguages) {
const translations = {};
let msgs = message.msg.split('\n');
msgs = msgs.map(msg => encodeURIComponent(msg));
msgs = msgs.map((msg) => encodeURIComponent(msg));
const query = `text=${ msgs.join('&text=') }`;
const supportedLanguages = this.getSupportedLanguages('en');
targetLanguages.forEach(language => {
if (language.indexOf('-') !== -1 && !_.findWhere(supportedLanguages, {language})) {
targetLanguages.forEach((language) => {
if (language.indexOf('-') !== -1 && !_.findWhere(supportedLanguages, { language })) {
language = language.substr(0, 2);
}
try {
const result = HTTP.get(this.apiEndPointUrl, {
params: {
auth_key: this.apiKey,
target_lang: language
}, query
target_lang: language,
}, query,
});

if (result.statusCode === 200 && result.data && result.data.translations && Array.isArray(result.data.translations) && result.data.translations.length > 0) {
// store translation only when the source and target language are different.
if (result.data.translations.map(translation => translation.detected_source_language).join() !== language) {
const txt = result.data.translations.map(translation => translation.text);
translations[language] = this.deTokenize(Object.assign({}, message, {msg: txt}));
if (result.data.translations.map((translation) => translation.detected_source_language).join() !== language) {
const txt = result.data.translations.map((translation) => translation.text);
translations[language] = this.deTokenize(Object.assign({}, message, { msg: txt }));
}
}
} catch (e) {
Expand All @@ -145,20 +145,20 @@ class DeeplAutoTranslate extends AutoTranslate {
const translations = {};
const query = `text=${ encodeURIComponent(attachment.description || attachment.text) }`;
const supportedLanguages = this.getSupportedLanguages('en');
targetLanguages.forEach(language => {
if (language.indexOf('-') !== -1 && !_.findWhere(supportedLanguages, {language})) {
targetLanguages.forEach((language) => {
if (language.indexOf('-') !== -1 && !_.findWhere(supportedLanguages, { language })) {
language = language.substr(0, 2);
}
try {
const result = HTTP.get(this.apiEndPointUrl, {
params: {
auth_key: this.apiKey,
target_lang: language
}, query
target_lang: language,
}, query,
});
if (result.statusCode === 200 && result.data && result.data.translations && Array.isArray(result.data.translations) && result.data.translations.length > 0) {
if (result.data.translations.map(translation => translation.detected_source_language).join() !== language) {
translations[language] = result.data.translations.map(translation => translation.text);
if (result.data.translations.map((translation) => translation.detected_source_language).join() !== language) {
translations[language] = result.data.translations.map((translation) => translation.text);
}
}
} catch (e) {
Expand Down
40 changes: 20 additions & 20 deletions packages/rocketchat-autotranslate/server/googleTranslate.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
* @author Vigneshwaran Odayappan <vickyokrm@gmail.com>
*/

import {AutoTranslate, TranslationProviderRegistry} from './autotranslate';
import {SystemLogger} from 'meteor/rocketchat:logger';
import { AutoTranslate, TranslationProviderRegistry } from './autotranslate';
import { SystemLogger } from 'meteor/rocketchat:logger';
import _ from 'underscore';

/**
Expand All @@ -20,7 +20,7 @@ class GoogleAutoTranslate extends AutoTranslate {
constructor() {
super();
this.name = 'google-translate';
//this.apiEndPointUrl = 'https://translation.googleapis.com/language/translate/v2';
// this.apiEndPointUrl = 'https://translation.googleapis.com/language/translate/v2';
}

/**
Expand All @@ -32,7 +32,7 @@ class GoogleAutoTranslate extends AutoTranslate {
return {
name: this.name,
displayName: TAPi18n.__('AutoTranslate_Google'),
settings: this._getSettings()
settings: this._getSettings(),
};
}

Expand All @@ -44,7 +44,7 @@ class GoogleAutoTranslate extends AutoTranslate {
_getSettings() {
return {
apiKey: this.apiKey,
apiEndPointUrl: this.apiEndPointUrl
apiEndPointUrl: this.apiEndPointUrl,
};
}

Expand All @@ -61,19 +61,19 @@ class GoogleAutoTranslate extends AutoTranslate {
return this.supportedLanguages[target];
}
let result;
const params = {key: this.apiKey};
const params = { key: this.apiKey };
if (target) {
params.target = target;
}

try {
result = HTTP.get('https://translation.googleapis.com/language/translate/v2/languages', {params});
result = HTTP.get('https://translation.googleapis.com/language/translate/v2/languages', { params });
} catch (e) {
if (e.response && e.response.statusCode === 400 && e.response.data && e.response.data.error && e.response.data.error.status === 'INVALID_ARGUMENT') {
params.target = 'en';
target = 'en';
if (!this.supportedLanguages[target]) {
result = HTTP.get('https://translation.googleapis.com/language/translate/v2/languages', {params});
result = HTTP.get('https://translation.googleapis.com/language/translate/v2/languages', { params });
}
}
} finally {
Expand All @@ -98,23 +98,23 @@ class GoogleAutoTranslate extends AutoTranslate {
_translateMessage(message, targetLanguages) {
const translations = {};
let msgs = message.msg.split('\n');
msgs = msgs.map(msg => encodeURIComponent(msg));
msgs = msgs.map((msg) => encodeURIComponent(msg));
const query = `q=${ msgs.join('&q=') }`;
const supportedLanguages = this.getSupportedLanguages('en');
targetLanguages.forEach(language => {
if (language.indexOf('-') !== -1 && !_.findWhere(supportedLanguages, {language})) {
targetLanguages.forEach((language) => {
if (language.indexOf('-') !== -1 && !_.findWhere(supportedLanguages, { language })) {
language = language.substr(0, 2);
}
try {
const result = HTTP.get(this.apiEndPointUrl, {
params: {
key: this.apiKey,
target: language
}, query
target: language,
}, query,
});
if (result.statusCode === 200 && result.data && result.data.data && result.data.data.translations && Array.isArray(result.data.data.translations) && result.data.data.translations.length > 0) {
const txt = result.data.data.translations.map(translation => translation.translatedText).join('\n');
translations[language] = this.deTokenize(Object.assign({}, message, {msg: txt}));
const txt = result.data.data.translations.map((translation) => translation.translatedText).join('\n');
translations[language] = this.deTokenize(Object.assign({}, message, { msg: txt }));
}
} catch (e) {
SystemLogger.error('Error translating message', e);
Expand All @@ -134,19 +134,19 @@ class GoogleAutoTranslate extends AutoTranslate {
const translations = {};
const query = `q=${ encodeURIComponent(attachment.description || attachment.text) }`;
const supportedLanguages = this.getSupportedLanguages('en');
targetLanguages.forEach(language => {
if (language.indexOf('-') !== -1 && !_.findWhere(supportedLanguages, {language})) {
targetLanguages.forEach((language) => {
if (language.indexOf('-') !== -1 && !_.findWhere(supportedLanguages, { language })) {
language = language.substr(0, 2);
}
try {
const result = HTTP.get(this.apiEndPointUrl, {
params: {
key: this.apiKey,
target: language
}, query
target: language,
}, query,
});
if (result.statusCode === 200 && result.data && result.data.data && result.data.data.translations && Array.isArray(result.data.data.translations) && result.data.data.translations.length > 0) {
translations[language] = result.data.data.translations.map(translation => translation.translatedText).join('\n');
translations[language] = result.data.data.translations.map((translation) => translation.translatedText).join('\n');
}
} catch (e) {
SystemLogger.error('Error translating message', e);
Expand Down
2 changes: 1 addition & 1 deletion packages/rocketchat-autotranslate/server/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@ import { AutoTranslate, TranslationProviderRegistry } from './autotranslate';

export {
AutoTranslate,
TranslationProviderRegistry
TranslationProviderRegistry,
};
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,5 @@ Object.assign(RocketChat.models.Settings, {
RocketChat.models.Settings.insert(newSetting);
}
}
}
},
});
Loading

0 comments on commit eb15aad

Please sign in to comment.