From 6880744463a93a74ae2b0d7530760f560952104b Mon Sep 17 00:00:00 2001 From: floatingghost Date: Sun, 14 Aug 2022 23:16:07 +0000 Subject: [PATCH 1/2] display proxy correctly (#9) Reviewed-on: https://akkoma.dev/AkkomaGang/admin-fe/pulls/9 --- src/store/modules/normalizers.js | 2 +- src/views/settings/components/Inputs.vue | 1 - test/modules/normalizers/parseTuples.test.js | 14 -------------- 3 files changed, 1 insertion(+), 16 deletions(-) diff --git a/src/store/modules/normalizers.js b/src/store/modules/normalizers.js index cb003a79..d9e0a0b8 100644 --- a/src/store/modules/normalizers.js +++ b/src/store/modules/normalizers.js @@ -107,7 +107,7 @@ export const parseTuples = (tuples, key) => { }, []) } else if (item.tuple[0] === ':prune') { accum[item.tuple[0]] = item.tuple[1] === ':disabled' ? [item.tuple[1]] : item.tuple[1].tuple - } else if (item.tuple[0] === ':proxy_url' || item.tuple[0] === ':sender') { + } else if (item.tuple[0] === ':sender') { accum[item.tuple[0]] = parseStringOrTupleValue(item.tuple[0], item.tuple[1]) } else if (item.tuple[0] === ':args') { accum[item.tuple[0]] = parseNonTuples(item.tuple[0], item.tuple[1]) diff --git a/src/views/settings/components/Inputs.vue b/src/views/settings/components/Inputs.vue index aa43bb1c..2325dce6 100644 --- a/src/views/settings/components/Inputs.vue +++ b/src/views/settings/components/Inputs.vue @@ -115,7 +115,6 @@ - diff --git a/test/modules/normalizers/parseTuples.test.js b/test/modules/normalizers/parseTuples.test.js index ff039135..73cb47f6 100644 --- a/test/modules/normalizers/parseTuples.test.js +++ b/test/modules/normalizers/parseTuples.test.js @@ -274,20 +274,6 @@ describe('Parse tuples', () => { expect(_.isEqual(expectedSenderString, parseTuples(senderString, ':welcome'))).toBeTruthy() }) - it('parses proxy_url', () => { - const proxyUrlNull = [{ tuple: [':proxy_url', null] }] - const proxyUrlTuple = [{ tuple: [':proxy_url', { tuple: [':socks5', ':localhost', 3090] }]}] - const proxyUrlString = [{ tuple: [':proxy_url', 'localhost:9020'] }] - - const expectedProxyUrlNull = { ':proxy_url': { socks5: false, host: null, port: null }} - const expectedProxyUrlTuple = { ':proxy_url': { socks5: true, host: ':localhost', port: 3090 }} - const expectedProxyUrlString = { ':proxy_url': { socks5: false, host: 'localhost', port: '9020' }} - - expect(_.isEqual(expectedProxyUrlNull, parseTuples(proxyUrlNull, ':http'))).toBeTruthy() - expect(_.isEqual(expectedProxyUrlTuple, parseTuples(proxyUrlTuple, ':http'))).toBeTruthy() - expect(_.isEqual(expectedProxyUrlString, parseTuples(proxyUrlString, ':http'))).toBeTruthy() - }) - it('parses args setting in Pleroma.Upload.Filter.Mogrify', () => { const tuples = [{ tuple: [':args', ['strip', '{ "implode", "1" }']]}] const expectedResult = { ':args': ['strip', '{ "implode", "1" }'] } From 6b131e0779b16f8f3c1021b2a0e72b4e7a271c4c Mon Sep 17 00:00:00 2001 From: floatingghost Date: Mon, 29 Aug 2022 19:36:36 +0000 Subject: [PATCH 2/2] Add options for translation services (#10) Co-authored-by: FloatingGhost Reviewed-on: https://akkoma.dev/AkkomaGang/admin-fe/pulls/10 --- src/lang/en.js | 2 +- src/utils/tabs.js | 2 +- src/views/settings/components/Instance.vue | 35 + .../components/{Gopher.vue => Search.vue} | 38 +- src/views/settings/components/index.js | 2 +- src/views/settings/components/tabs.js | 6 +- src/views/settings/index.vue | 6 +- yarn.lock | 4958 +++++++++-------- 8 files changed, 2762 insertions(+), 2287 deletions(-) rename src/views/settings/components/{Gopher.vue => Search.vue} (55%) diff --git a/src/lang/en.js b/src/lang/en.js index 0864fdb0..e679698a 100644 --- a/src/lang/en.js +++ b/src/lang/en.js @@ -412,6 +412,7 @@ export default { submit: 'Submit', settings: 'Settings', instance: 'Instance', + search: 'Search', upload: 'Upload', mailer: 'Mailer', linkFormatter: 'Link Formatter', @@ -425,7 +426,6 @@ export default { mrf: 'MRF', mediaProxy: 'Media Proxy', metadata: 'Metadata', - gopher: 'Gopher', jobQueue: 'Job queue', webPush: 'Web push encryption', rateLimiters: 'Rate limiters', diff --git a/src/utils/tabs.js b/src/utils/tabs.js index 2c2e2883..a0faf9d3 100644 --- a/src/utils/tabs.js +++ b/src/utils/tabs.js @@ -4,7 +4,6 @@ export const tabs = [ { label: 'Captcha', path: 'captcha', tab: ':captcha' }, { label: 'Emoji', path: 'emoji', tab: ':emoji' }, { label: 'Frontend', path: 'frontend', tab: ':frontend' }, - { label: 'Gopher', path: 'gopher', tab: ':gopher' }, { label: 'HTTP', path: 'http', tab: ':http' }, { label: 'Instance', path: 'instance', tab: ':instance' }, { label: 'Job queue', path: 'job-queue', tab: ':job_queue' }, @@ -17,5 +16,6 @@ export const tabs = [ { label: 'Rate limiters', path: 'rate-limiters', tab: ':rate_limiters' }, { label: 'Web push encryption', path: 'web-push', tab: ':web_push' }, { label: 'Upload', path: 'upload', tab: ':upload' }, + { label: 'Search', path: 'search', tab: ':search' }, { label: 'Other', path: 'other', tab: ':other' } ] diff --git a/src/views/settings/components/Instance.vue b/src/views/settings/components/Instance.vue index 9e947667..bcc7ee76 100644 --- a/src/views/settings/components/Instance.vue +++ b/src/views/settings/components/Instance.vue @@ -44,6 +44,17 @@ + + + + + + + + + + +
{{ $t('settings.submit') }}
@@ -172,6 +183,30 @@ export default { }, welcomeData() { return _.get(this.settings.settings, [':pleroma', ':welcome']) || {} + }, + translator() { + return this.$store.state.settings.description.find(setting => setting.key === ':translator') + }, + translatorData() { + return _.get(this.settings.settings, [':pleroma', ':translator']) || {} + }, + usesDeepL() { + return (_.get(this.settings.settings, [':pleroma', ':translator', ':module']) || '').toLowerCase().endsWith('deepl') + }, + usesLibreTranslate() { + return (_.get(this.settings.settings, [':pleroma', ':translator', ':module']) || '').toLowerCase().endsWith('libretranslate') + }, + deepl() { + return this.$store.state.settings.description.find(setting => setting.key === ':deepl') + }, + deeplData() { + return _.get(this.settings.settings, [':pleroma', ':deepl']) || {} + }, + libre_translate() { + return this.$store.state.settings.description.find(setting => setting.key === ':libre_translate') + }, + libretranslateData() { + return _.get(this.settings.settings, [':pleroma', ':libre_translate']) || {} } }, async mounted() { diff --git a/src/views/settings/components/Gopher.vue b/src/views/settings/components/Search.vue similarity index 55% rename from src/views/settings/components/Gopher.vue rename to src/views/settings/components/Search.vue index 630d36d9..a9a10938 100644 --- a/src/views/settings/components/Gopher.vue +++ b/src/views/settings/components/Search.vue @@ -1,7 +1,13 @@