From f1e81575cb649666a70be609cd842826b4f7adb1 Mon Sep 17 00:00:00 2001 From: Kim Gardner Date: Tue, 10 Oct 2017 13:56:47 +0100 Subject: [PATCH 1/9] Update i18n config to support Danish --- client/coral-framework/services/i18n.js | 5 ++++- services/i18n.js | 5 +++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/client/coral-framework/services/i18n.js b/client/coral-framework/services/i18n.js index 87e375853..0dc424566 100644 --- a/client/coral-framework/services/i18n.js +++ b/client/coral-framework/services/i18n.js @@ -6,15 +6,17 @@ import merge from 'lodash/merge'; import esTA from '../../../node_modules/timeago.js/locales/es'; import frTA from '../../../node_modules/timeago.js/locales/fr'; import pt_BRTA from '../../../node_modules/timeago.js/locales/pt_BR'; +import da_DK from '../../../node_modules/timeago.js/locales/da_DK'; import en from '../../../locales/en.yml'; import es from '../../../locales/es.yml'; import fr from '../../../locales/fr.yml'; import pt_BR from '../../../locales/pt_BR.yml'; +import da_DK from '../../../locales/da_DK.yml'; // Translations are happening at https://translate.lingohub.com/the-coral-project/dashboard const defaultLanguage = process.env.TALK_DEFAULT_LANG; -const translations = {...en, ...es, ...fr, ...pt_BR}; +const translations = {...en, ...es, ...fr, ...pt_BR, ...da_DK}; let lang; let timeagoInstance; @@ -46,6 +48,7 @@ function init() { ta.register('es', esTA); ta.register('fr', frTA); ta.register('pt_BR', pt_BRTA); + ta.register('da_DK', da_DK); timeagoInstance = ta(); } diff --git a/services/i18n.js b/services/i18n.js index 372ae5df2..a1e191d94 100644 --- a/services/i18n.js +++ b/services/i18n.js @@ -7,15 +7,16 @@ const es = yaml.load('./locales/es.yml'); const en = yaml.load('./locales/en.yml'); const fr = yaml.load('./locales/fr.yml'); const pt_BR = yaml.load('./locales/pt_BR.yml'); +const da_DK = yaml.load('./locales/da_DK.yml'); const accepts = require('accepts'); // default language let defaultLanguage = 'en'; let language = defaultLanguage; -const languages = ['en', 'es', 'fr', 'pt_BR']; +const languages = ['en', 'es', 'fr', 'pt_BR', 'da_DK']; -const translations = Object.assign(en, es, fr, pt_BR); +const translations = Object.assign(en, es, fr, pt_BR, da_DK); /** * Exposes a service object to allow translations. From b77c33082329e00b5602af19bfb7152335eabb8f Mon Sep 17 00:00:00 2001 From: Kim Gardner Date: Tue, 10 Oct 2017 14:02:07 +0100 Subject: [PATCH 2/9] Update i18n code --- locales/da_DK.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locales/da_DK.yml b/locales/da_DK.yml index f87137ff2..267239990 100644 --- a/locales/da_DK.yml +++ b/locales/da_DK.yml @@ -1,4 +1,4 @@ -dk: +da_DK: your_account_has_been_suspended: Din konto er midlertidigt suspenderet your_account_has_been_banned: Din konto er blevet banned. your_username_has_been_rejected: Din konto er blevet suspenderet fordi dit brugernavn er blevet anset for upassende. For at gendanne din konto, venligst indtast et nyt brugernavn. From 2063c4a90e952d951df8846cf7b137e380a0d21d Mon Sep 17 00:00:00 2001 From: Kim Gardner Date: Tue, 10 Oct 2017 16:24:49 +0100 Subject: [PATCH 3/9] Fixes per code review --- client/coral-framework/services/i18n.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/client/coral-framework/services/i18n.js b/client/coral-framework/services/i18n.js index 0dc424566..b939f9263 100644 --- a/client/coral-framework/services/i18n.js +++ b/client/coral-framework/services/i18n.js @@ -3,10 +3,10 @@ import has from 'lodash/has'; import get from 'lodash/get'; import merge from 'lodash/merge'; -import esTA from '../../../node_modules/timeago.js/locales/es'; -import frTA from '../../../node_modules/timeago.js/locales/fr'; -import pt_BRTA from '../../../node_modules/timeago.js/locales/pt_BR'; -import da_DK from '../../../node_modules/timeago.js/locales/da_DK'; +import esTA from 'timeago.js/locales/ta' +import frTA from 'timeago.js/locales/ta'; +import pt_BRTA from 'timeago.js/locales/ta'; +import da_DKTA from 'timeago.js/locales/ta'; import en from '../../../locales/en.yml'; import es from '../../../locales/es.yml'; import fr from '../../../locales/fr.yml'; From 569260a4b9c638ee6c66f25b2b1d7b57cae5c280 Mon Sep 17 00:00:00 2001 From: Kim Gardner Date: Tue, 10 Oct 2017 16:47:33 +0100 Subject: [PATCH 4/9] Fix configuration and alphabetize languages --- client/coral-framework/services/i18n.js | 15 ++++++++------- services/i18n.js | 4 ++-- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/client/coral-framework/services/i18n.js b/client/coral-framework/services/i18n.js index b939f9263..7f2123b7f 100644 --- a/client/coral-framework/services/i18n.js +++ b/client/coral-framework/services/i18n.js @@ -3,20 +3,21 @@ import has from 'lodash/has'; import get from 'lodash/get'; import merge from 'lodash/merge'; -import esTA from 'timeago.js/locales/ta' -import frTA from 'timeago.js/locales/ta'; -import pt_BRTA from 'timeago.js/locales/ta'; -import da_DKTA from 'timeago.js/locales/ta'; +import daTA from 'timeago.js/locales/da'; +import esTA from 'timeago.js/locales/es' +import frTA from 'timeago.js/locales/fr`'; +import pt_BRTA from 'timeago.js/locales/pt_BR'; + import en from '../../../locales/en.yml'; +import da from '../../../locales/da.yml'; import es from '../../../locales/es.yml'; import fr from '../../../locales/fr.yml'; import pt_BR from '../../../locales/pt_BR.yml'; -import da_DK from '../../../locales/da_DK.yml'; // Translations are happening at https://translate.lingohub.com/the-coral-project/dashboard const defaultLanguage = process.env.TALK_DEFAULT_LANG; -const translations = {...en, ...es, ...fr, ...pt_BR, ...da_DK}; +const translations = {...en, ...da, ...es, ...fr, ...pt_BR}; let lang; let timeagoInstance; @@ -46,9 +47,9 @@ function init() { } ta.register('es', esTA); + ta.register('da', da); ta.register('fr', frTA); ta.register('pt_BR', pt_BRTA); - ta.register('da_DK', da_DK); timeagoInstance = ta(); } diff --git a/services/i18n.js b/services/i18n.js index a1e191d94..fd715c6c2 100644 --- a/services/i18n.js +++ b/services/i18n.js @@ -3,18 +3,18 @@ const get = require('lodash/get'); const yaml = require('yamljs'); +const da = yaml.load('./locales/da.yml'); const es = yaml.load('./locales/es.yml'); const en = yaml.load('./locales/en.yml'); const fr = yaml.load('./locales/fr.yml'); const pt_BR = yaml.load('./locales/pt_BR.yml'); -const da_DK = yaml.load('./locales/da_DK.yml'); const accepts = require('accepts'); // default language let defaultLanguage = 'en'; let language = defaultLanguage; -const languages = ['en', 'es', 'fr', 'pt_BR', 'da_DK']; +const languages = ['en', 'da', 'es', 'fr', 'pt_BR']; const translations = Object.assign(en, es, fr, pt_BR, da_DK); From 33e25403e739f6d6d7c20e0bf3055ee3a91f7170 Mon Sep 17 00:00:00 2001 From: Kim Gardner Date: Tue, 10 Oct 2017 17:04:27 +0100 Subject: [PATCH 5/9] Rename file to da.yml --- locales/{da_DK.yml => da.yml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename locales/{da_DK.yml => da.yml} (100%) diff --git a/locales/da_DK.yml b/locales/da.yml similarity index 100% rename from locales/da_DK.yml rename to locales/da.yml From e40a30d200944af8f1385f576ac6fe9f261fa8dc Mon Sep 17 00:00:00 2001 From: Kim Gardner Date: Tue, 10 Oct 2017 17:17:04 +0100 Subject: [PATCH 6/9] Fixes and cleanup --- client/coral-framework/services/i18n.js | 8 ++++---- locales/da.yml | 2 +- services/i18n.js | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/client/coral-framework/services/i18n.js b/client/coral-framework/services/i18n.js index 7f2123b7f..6ff52f44e 100644 --- a/client/coral-framework/services/i18n.js +++ b/client/coral-framework/services/i18n.js @@ -3,10 +3,10 @@ import has from 'lodash/has'; import get from 'lodash/get'; import merge from 'lodash/merge'; -import daTA from 'timeago.js/locales/da'; -import esTA from 'timeago.js/locales/es' -import frTA from 'timeago.js/locales/fr`'; -import pt_BRTA from 'timeago.js/locales/pt_BR'; +import daTA from '../../../node_modules/timeago.js/locales/da'; +import esTA from '../../../node_modules/timeago.js/locales/es' +import frTA from '../../../node_modules/timeago.js/locales/fr'; +import pt_BRTA from '../../../node_modules/timeago.js/locales/pt_BR'; import en from '../../../locales/en.yml'; import da from '../../../locales/da.yml'; diff --git a/locales/da.yml b/locales/da.yml index 267239990..fcf0425a4 100644 --- a/locales/da.yml +++ b/locales/da.yml @@ -1,4 +1,4 @@ -da_DK: +da: your_account_has_been_suspended: Din konto er midlertidigt suspenderet your_account_has_been_banned: Din konto er blevet banned. your_username_has_been_rejected: Din konto er blevet suspenderet fordi dit brugernavn er blevet anset for upassende. For at gendanne din konto, venligst indtast et nyt brugernavn. diff --git a/services/i18n.js b/services/i18n.js index fd715c6c2..4c65ed1d4 100644 --- a/services/i18n.js +++ b/services/i18n.js @@ -16,7 +16,7 @@ let defaultLanguage = 'en'; let language = defaultLanguage; const languages = ['en', 'da', 'es', 'fr', 'pt_BR']; -const translations = Object.assign(en, es, fr, pt_BR, da_DK); +const translations = Object.assign(en, es, fr, pt_BR, da); /** * Exposes a service object to allow translations. From bd7dfdbe55780032155fe9778581c4af343c81ee Mon Sep 17 00:00:00 2001 From: Kim Gardner Date: Tue, 10 Oct 2017 18:52:53 +0100 Subject: [PATCH 7/9] Fix yml indentation --- locales/da.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locales/da.yml b/locales/da.yml index fcf0425a4..539cbe60d 100644 --- a/locales/da.yml +++ b/locales/da.yml @@ -203,7 +203,7 @@ da: COMMENTING_CLOSED: "Kommentering er allerede lukket" NOT_FOUND: "Ressource ikke fundet" ALREADY_EXISTS: "Ressource eksisterer allerede" - INVALID_ASSET_URL: "Aktivitetswebadresse er ugyldig" + INVALID_ASSET_URL: "Aktivitetswebadresse er ugyldig" email: "Ikke en gylding e-mail" confirm_password: "Kodeordene matcher ikke. Tjek venligst igen." network_error: "Det lykkedes ikke at oprette forbindelse til serveren. Tjek din internetforbindelse og prøv igen." From 29d7494385384b161481c89954d0a0e910ccadd0 Mon Sep 17 00:00:00 2001 From: Wyatt Johnson Date: Tue, 10 Oct 2017 14:03:07 -0600 Subject: [PATCH 8/9] fixed more yaml issues, added lint step --- client/coral-framework/services/i18n.js | 4 +- locales/da.yml | 166 ++++++++++++------------ package.json | 5 +- yarn.lock | 75 ++++++++++- 4 files changed, 160 insertions(+), 90 deletions(-) diff --git a/client/coral-framework/services/i18n.js b/client/coral-framework/services/i18n.js index 6ff52f44e..802c93c87 100644 --- a/client/coral-framework/services/i18n.js +++ b/client/coral-framework/services/i18n.js @@ -4,7 +4,7 @@ import get from 'lodash/get'; import merge from 'lodash/merge'; import daTA from '../../../node_modules/timeago.js/locales/da'; -import esTA from '../../../node_modules/timeago.js/locales/es' +import esTA from '../../../node_modules/timeago.js/locales/es'; import frTA from '../../../node_modules/timeago.js/locales/fr'; import pt_BRTA from '../../../node_modules/timeago.js/locales/pt_BR'; @@ -47,7 +47,7 @@ function init() { } ta.register('es', esTA); - ta.register('da', da); + ta.register('da', daTA); ta.register('fr', frTA); ta.register('pt_BR', pt_BRTA); timeagoInstance = ta(); diff --git a/locales/da.yml b/locales/da.yml index 539cbe60d..37c1cc188 100644 --- a/locales/da.yml +++ b/locales/da.yml @@ -1,8 +1,8 @@ da: - your_account_has_been_suspended: Din konto er midlertidigt suspenderet - your_account_has_been_banned: Din konto er blevet banned. - your_username_has_been_rejected: Din konto er blevet suspenderet fordi dit brugernavn er blevet anset for upassende. For at gendanne din konto, venligst indtast et nyt brugernavn. - embed_comments_tab: Kommentarer + your_account_has_been_suspended: "Din konto er midlertidigt suspenderet" + your_account_has_been_banned: "Din konto er blevet banned." + your_username_has_been_rejected: "Din konto er blevet suspenderet fordi dit brugernavn er blevet anset for upassende. For at gendanne din konto, venligst indtast et nyt brugernavn." + embed_comments_tab: "Kommentarer" bandialog: are_you_sure: "Er du sikker på du vil banne {0}?" ban_user: "Ban Bruger?" @@ -19,7 +19,7 @@ da: anon: "Anonym" ban_user: "Ban Bruger" comment: "Skriv en kommentar" - edited: Redigeret + edited: "Redigeret" flagged: "markeret" view_context: "Vis kontekst" comment_box: @@ -30,53 +30,53 @@ da: name: "Navn" comment_post_notif: "Din kommentar er blevet sendt" comment_post_notif_premod: "Tak for at skrive en kommentar. Vores moderatorer vil gennemgå din kommentar inden for kort tid." - comment_post_banned_word: "Din kommentar indeholder et eller flere ord, der ikke er tilladt, derfor vil den ikke bliver offentliggjort. Hvis du mener, at denne besked er forkert, bedes du kontakte vores moderatorer" + comment_post_banned_word: "Din kommentar indeholder et eller flere ord, der ikke er tilladt, derfor vil den ikke bliver offentliggjort. Hvis du mener, at denne besked er forkert, bedes du kontakte vores moderatorer" characters_remaining: "tegn tilbage" comment_offensive: "Denne kommentar er stødende" - comment_singular: Kommentar - comment_plural: Kommentarer + comment_singular: "Kommentar" + comment_plural: "Kommentarer" comment_post_banned_word: "Din kommentyar indeholder et eller flere ord, der ikke er tilladt, derfor vil den ikke bliver offentliggjort. Hvis du mener, at denne besked er forkert, bedes du kontakte vores moderatorer" comment_post_notif: "Din kommentar er blevet offentliggjort" comment_post_notif_premod: "Tak for at skrive en kommentar. Vores moderatorer vil gennemgå din kommentar inden for kort tid." common: - copy: 'Kopier' - error: 'Der er sket en fejl.' - reply: 'svar' - replies: 'svar' - reaction: 'reaktion' - reactions: 'reaktioner' - story: 'Historie' + copy: "Kopier" + error: "Der er sket en fejl." + reply: "svar" + replies: "svar" + reaction: "reaktion" + reactions: "reaktioner" + story: "Historie" community: account_creation_date: "Oprettelsedato for konto" - active: Aktive - admin: Administrator + active: "Aktive" + admin: "Administrator" ads_marketing: "Dette ligner en annonce/markedsføring" are_you_sure: "Er du sikker på at du vil banne {0}?" ban_user: "Ban Bruger?" - banned: Bannet + banned: "Bannet" banned_user: "Bannet Bruger" - cancel: Afbryd + cancel: "Afbryd" dont_like_username: "Synses ikke om brugernavnet" flaggedaccounts: "Flagged Brugernavne" - flags: Flags + flags: "Flags" impersonating: "Personefterligning" loading: "Indlæser resultater" - moderator: Moderator + moderator: "Moderator" newsroom_role: "Nyhedsrum Rolle" no_flagged_accounts: "Køen for flagget kontoer er tom i øjeblikket" no_results: "Igen brugere fundet med det brugernavn eller email-adresse. De gemmer sig!" offensive: "Offensiv" - other: Andre - people: Mennesker + other: "Andre" + people: "Mennesker" role: "Vælg rolle..." select_status: "Vælg status..." spam_ads: "Spam/Reklamer" staff: "Personale" - status: Status + status: "Status" username_and_email: "Brugernavn eller email-adresse" yes_ban_user: "Ja Ban Bruger" configure: - apply: Anvend + apply: "Anvend" banned_word_text: "Kommentarer, der indeholder disse ord eller sætninger (Ikke følsom over for store eller små bogstaver) fjernes automatisk fra kommentarstrømmen. Indtast et ord og tryk på Enter eller Tab for at tilføje. Indsæt eventuelt en kommasepareret liste." banned_words_title: "Bannet ord liste" close: "Luk" @@ -88,18 +88,18 @@ da: closed_stream_settings: "Lukket strøm besked" comment_count_error: "Indtæst venligst et gyldigt numemr." comment_count_header: "Begræns kommentar længde" - comment_count_text_post: tegn + comment_count_text_post: "tegn" comment_count_text_pre: "Kommentarer vil være begrænset til" - comment_settings: Indstillinger + comment_settings: "Indstillinger" comment_stream: "Kommentarstrøm" comment_stream_will_close: "Denne kommentarstrøm vil blive lukkes" - community: Fællesskab - configure: Konfigurer + community: "Fællesskab" + configure: "Konfigurer" copy_and_paste: "Kopier og indsæt kode nedenfor i dit CMS system for at indlejre din kommentarboks i dine artiker." custom_css_url: "Brugerdefineret CSS URL" custom_css_url_desc: "URL til et CSS stylesheet der tilsidesætter den alimdelige strøms stilart. Kan være internt eller externt" - dashboard: Instrumentbræt - days: Dage + dashboard: "Instrumentbræt" + days: "Dage" description: "Som administrator kan du tilpasse indstillingerne til kommentarstrømmen for denne historie:" domain_list_text: "Indtast de domæner du gerne vil tillade til Talk. f.eks. Dit lokale udviklings miljø (fx. localhost:3000 staging.domain.com domain.com)." domain_list_title: "Tilladte domæner." @@ -116,12 +116,12 @@ da: enable_premod_links_description: "Moderatorer skal godkende enhver kommentar, der indeholder et link før det bliver offentliggjort." enable_questionbox: "Stil et spørgsmål til læserne" enable_questionbox_description: "Dette spørgsmål vises øverst i denne kommentarstrøm. Stil et spørgsmål til læserne om et bestemt problem i artiklen eller stil spørgsmål til diskussion mv." - hours: Timer + hours: "Timer" include_comment_stream: "Inkluder kommentarstrømmens beskrivelse for læsere" include_comment_stream_desc: "Skriv en besked, der skal tilføjes øverst i din kommentarstrøm. Indsæt et emne der omfatter fællesskabsretningslinjer mv." include_text: "Medtag din tekst her." include_question_here: "Stil dit spørgsmål her:" - moderate: Moderat + moderate: "Moderat" moderation_settings: "Moderator indstillinger" open: "Åben" open_stream: "Åben strøm" @@ -129,15 +129,15 @@ da: require_email_verification: "Kræv email verifikation" require_email_verification_text: "Nye brugere skal verificere deres email før de kan kommenterer" save_changes: "Gem ændringer" - shortcuts: Genveje + shortcuts: "Genveje" sign_out: "Log ud" - stories: Historier + stories: "Historier" stream_settings: "Strøm indstillinger" suspect_word_title: "Mistænkte ord liste" suspect_word_text: "Kommentarer der indeholder disse ord eller sætninger (Ikke følsom over for store eller små bogstaver) vil blive fremhævet i kommentarstrømmen. Indtast et ord, og tryk på Enter eller Tab for at tilføje. Indsæt eventuelt en kommasepareret liste." tech_settings: "Tekniske indstillinger" title: "Konfigurer kommentarstrøm" - weeks: Uger + weeks: "Uger" wordlist: "Forbudte ord" continue: "Fortsæt" createdisplay: @@ -148,22 +148,22 @@ da: fake_comment_date: "1 minut siden" if_you_dont_change_your_name: "Hvis du ikke ændrer dit brugernavn på dette trin, vil dit Facebook brugernavn vises sammen med alle dine kommentarer" required_field: "Påkrævet felt" - save: Gem + save: "Gem" special_characters: "Brugernavne kan kun indeholde bogstaver og _" - username: Brugernavn + username: "Brugernavn" write_your_username: "Rediger dit brugernavn" your_username: "Dit brugernavn vises på hver kommentar du sender." dashboard: auto_update: "Data opdateres automatisk hvert femte minut, eller når du genindlæser." - comment_count: kommentarer - flags: Flags + comment_count: "kommentarer" + flags: "Flags" most_flags: "Historier med de fleste flags" most_conversations: "Historier med de fleste samtaler" next_update: "{0} minutter indtil næste opdatering." no_activity: "Der har ikke været nogen kommentarer i løbet af de sidste fem minutter." no_flags: "Der har ikke været nogle flag i de sidste 5 minutter! Hurra!" no_likes: "Der har ikke været nogen der syntes godt om noget i de sidste 5 minutter. Helt stille" - done: Færdig + done: "Færdig" edit_comment: body_input_label: "Rediger denne kommentar" save_button: "Gem ændringer" @@ -219,64 +219,64 @@ da: framework: banned_account_header: "Din konto er i øjeblikket bannet" banned_account_body: "Det betyder at du ikke kan synes godt om, rapportere eller skrive kommentarer." - comment: kommentar + comment: "kommentar" comment_is_ignored: "Denne kommentar er skjult, fordi du ignoerede denne bruger." comment_is_rejected: "Du har afvist denne kommentar." comment_is_hidden: "Denne kommentar er ikke tilgængelig" - comments: kommentarer + comments: "kommentarer" configure_stream: "Konfigurer" content_not_available: "Dette indhold er ikke tilgængeligt" edit_name: - button: Indsend + button: "Indsend" error: "Brugernavne kan kun indeholde bogstaver og _" label: "Nyt brugernavn" msg: "Din konto er midlertidigt suspenderet, fordi dit brugernavn er blevet anset for upassende. For at gendanne din konto skal du indtaste et nyt brugernavn. Kontakt os venligst, hvis du har spørgsmål." my_comments: "Mine kommentarer" my_profile: "Min profil" new_count: "Se {0} mere {1}" - profile: Profil + profile: "Profil" show_all_comments: "Vis alle kommentarer" success_bio_update: "Din biografi er blevet opdateret" success_name_update: "Dit brugernavn er blevet opdateret" success_update_settings: "De ændringer du har foretaget, er blevet anvendt til kommentarstrømmen på denne artikel." - show_all_replies: Vis alle svar - show_more_replies: Vis flere svar + show_all_replies: "Vis alle svar" + show_more_replies: "Vis flere svar" view_more_comments: "se flere kommentarer" view_reply: "vis svar" from_settings_page: "Fra profilsiden kan du se din kommentarhistorie." - like: Synes godt om + like: "Synes godt om" loading_results: "Indlæser resultater" marketing: "Dette ligner en annonce/markedsføring" moderate_this_stream: "Moderer denne strøm" modqueue: account: "konto flag" - actions: Handlinger - all: alle + actions: "Handlinger" + all: "alle" all_streams: "Alle Strømme" - notify_edited: '{0} redigeret kommentar "{1}"' - notify_accepted: '{0} accepteret kommentar "{1}"' - notify_rejected: '{0} afvist kommentar "{1}"' - notify_flagged: '{0} flagget kommentar "{1}"' + notify_edited: "{0} redigeret kommentar {1}" + notify_accepted: "{0} accepteret kommentar {1}" + notify_rejected: "{0} afvist kommentar {1}" + notify_flagged: "{0} flagget kommentar {1}" approve: "Godkend" approved: "Godkendt" ban_user: "Ban" - billion: M - close: Close + billion: "M" + close: "Close" empty_queue: "Ikke flere kommentarer til at moderer! Du har indhentet det hele. Gå ud og tag noget ☕️" - flagged: flagged - reported: Rapporteret + flagged: "flagged" + reported: "Rapporteret" less_detail: "Færre detajler" - likes: Syntes godt om - million: M + likes: "Syntes godt om" + million: "M" mod_faster: "Moderer hurtigere med tastaturgenveje" moderate: "Moderer →" more_detail: "Flere detaljer" - new: Ny + new: "Ny" newest_first: "Nyeste først" - navigation: Navigation + navigation: "Navigation" next_comment: "Gå til næste kommentar" oldest_first: "Ældste Først" - premod: pre-mod + premod: "pre-mod" prev_comment: "Gå til den forrige kommentar" reject: "Afvis" rejected: "Afvist" @@ -287,29 +287,29 @@ da: show_shortcuts: "Vis genveje" singleview: "Skift enkeltkommentar redigerings visning" thismenu: "Åben denne menu" - thousand: k + thousand: "k" try_these: "Prøv disse" view_more_shortcuts: "Se flere genveje" my_comment_history: "Min kommentar Historie" - name: Navn + name: "Navn" no_agree_comment: "Jeg er ikke enig med denne kommentar" no_like_bio: "Jeg kan ikke lide denne biografi" no_like_username: "Jeg kan ikke lide dette brugernavn" - other: Andet - permalink: Link + other: "Andet" + permalink: "Link" personal_info: "Denne kommentar afslører personligt identificerbare oplysninger" - post: Post - profile: Profil + post: "Post" + profile: "Profil" profile_settings: "Profilindstillinger" - reply: Svar - report: Rapporter + reply: "Svar" + report: "Rapporter" report_notif: "Tak fordi du rapporterede denne kommentar. Vores modereringsteam har fået besked, og vil gennemgå det inden for kort tid." report_notif_remove: "Din rapport er blevet fjernet" - reported: Rapporteret + reported: "Rapporteret" settings: from_settings_page: "Fra profilsiden kan du se din kommentarhistorie." my_comment_history: "Min kommentarhistorie" - profile: Profil + profile: "Profil" profile_settings: "Profilindstillinger" sign_in: "Log ind" to_access: "for at tilgå din profil" @@ -322,16 +322,16 @@ da: step_2_header: "Hjælp os med at forstå" step_3_header: "Tak for din indsats" streams: - all: Alle - article: Historie - closed: Lukket + all: "Alle" + article: "Historie" + closed: "Lukket" empty_result: "Ingen egenskaber matcher denne søgning. Måske prøv og forsøge at udvide din søgning?" filter_streams: "Filtrer strømme" - newest: Nyeste - oldest: Ældste - open: Åben + newest: "Nyeste" + oldest: "Ældste" + open: "Åben" pubdate: "Udgivelsedato" - search: Søg + search: "Søg" sort_by: "Sorter efter" status: "Strøm status" stream_status: "Strøm Status" @@ -349,9 +349,9 @@ da: notify_suspend_until: "Bruger {0} er midlertidigt suspenderet. Denne suspension ophører automatisk om {1}." description_notify: "Suspendering af denne bruger vil midlertidigt deaktivere deres konto og skjule alle deres kommentarer på webstedet." write_message: "Skriv en besked" - send: Send + send: "Send" reject_username: - username: brugernavn + username: "brugernavn" no_cancel: "Nej Afbryd" description_reject: "Vil du midlertidigt forbyde denne bruger på grund af deres {0}? Hvis du gør det, vil det midlertidigt skjule deres kommentarer, indtil de omskriver deres {0}." title_notify: "Underret brugeren om deres midlertidige suspension" @@ -361,7 +361,7 @@ da: yes_suspend: "Ja suspender" email_message_reject: "Et andet medlem af samfundet har for nylig flagget dit brugernavn til anmeldelse. På grund af indholdet blev din bruger afvist. Det betyder, at du ikke længere kan kommentere, synes godt om eller flagge indhold, før du omskriver dit brugernavn. Venligst send os en e-mail, hvis du har spørgsmål eller bekymringer." write_message: "Skriv en besked" - send: Send + send: "Send" thank_you: "Vi sætter pris på din sikkerhed og feedback. En moderator vil gennemgå din rapport" user: bio_flags: "flag for denne bio" diff --git a/package.json b/package.json index 57abb4f1d..bc6717514 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "build": "WEBPACK=TRUE NODE_ENV=production webpack -p --config webpack.config.js --bail", "prebuild-watch": "yarn generate-introspection", "build-watch": "WEBPACK=TRUE NODE_ENV=development webpack --progress --config webpack.config.js --watch", - "lint": "eslint --ext=.js --ext=.json bin/* .", + "lint": "yamllint locales/*.yml && eslint --ext=.js --ext=.json bin/* .", "lint-fix": "yarn lint --fix", "jest-watch": "TEST_MODE=unit NODE_ENV=test jest --watch", "test": "TEST_MODE=unit NODE_ENV=test jest && TEST_MODE=unit NODE_ENV=test mocha -R ${MOCHA_REPORTER:-spec}", @@ -204,7 +204,8 @@ "nodemon": "^1.11.0", "pre-git": "^3.15.3", "sinon": "^3.2.1", - "sinon-chai": "^2.13.0" + "sinon-chai": "^2.13.0", + "yaml-lint": "^1.0.0" }, "engines": { "node": "^8" diff --git a/yarn.lock b/yarn.lock index 3f49f0d23..ea67cd008 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1093,6 +1093,10 @@ bluebird@^2.10.2: version "2.11.0" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-2.11.0.tgz#534b9033c022c9579c56ba3b3e5a5caafbb650e1" +bluebird@^3.5.0: + version "3.5.1" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9" + bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: version "4.11.6" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215" @@ -1289,6 +1293,10 @@ camelcase@^1.0.2: version "1.2.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" +camelcase@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + camelcase@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" @@ -1547,7 +1555,7 @@ cliui@^2.1.0: right-align "^0.1.1" wordwrap "0.0.2" -cliui@^3.2.0: +cliui@^3.0.3, cliui@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" dependencies: @@ -3738,7 +3746,7 @@ inherits@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" -ini@~1.3.0: +ini@^1.3.0, ini@~1.3.0: version "1.3.4" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" @@ -4765,6 +4773,12 @@ lcid@^1.0.0: dependencies: invert-kv "^1.0.0" +leprechaun@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/leprechaun/-/leprechaun-0.0.2.tgz#8b96514a9e634c53fbe59a8094f3378c8fb2084d" + dependencies: + log-symbols "^1.0.2" + leven@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" @@ -5001,6 +5015,10 @@ lodash.memoize@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" +lodash.merge@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.0.tgz#69884ba144ac33fe699737a6086deffadd0f89c5" + lodash.noop@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash.noop/-/lodash.noop-3.0.1.tgz#38188f4d650a3a474258439b96ec45b32617133c" @@ -5033,6 +5051,10 @@ lodash.shuffle@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/lodash.shuffle/-/lodash.shuffle-4.2.0.tgz#145b5053cf875f6f5c2a33f48b6e9948c6ec7b4b" +lodash.snakecase@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz#39d714a35357147837aefd64b5dcbb16becd8f8d" + lodash.toarray@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.toarray/-/lodash.toarray-4.4.0.tgz#24c4bfcd6b2fba38bfd0594db1179d8e9b656561" @@ -5057,6 +5079,12 @@ lodash@4.17.4, lodash@^4.0.0, lodash@^4.1.0, lodash@^4.14.0, lodash@^4.15.0, lod version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" +log-symbols@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" + dependencies: + chalk "^1.0.0" + lolex@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/lolex/-/lolex-1.6.0.tgz#3a9a0283452a47d7439e72731b9e07d7386e49f6" @@ -5412,6 +5440,15 @@ natural@^0.2.0: sylvester ">= 0.0.12" underscore ">=1.3.1" +nconf@^0.8.4: + version "0.8.5" + resolved "https://registry.yarnpkg.com/nconf/-/nconf-0.8.5.tgz#f2941e1561952fa906bbb32328cf88d4c635e794" + dependencies: + async "^1.4.0" + ini "^1.3.0" + secure-keys "^1.0.0" + yargs "^3.19.0" + nearley@^2.7.10: version "2.11.0" resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.11.0.tgz#5e626c79a6cd2f6ab9e7e5d5805e7668967757ae" @@ -7387,6 +7424,10 @@ sax@^1.1.4, sax@^1.2.1, sax@~1.2.1: version "1.2.2" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.2.tgz#fd8631a23bc7826bef5d871bdb87378c95647828" +secure-keys@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/secure-keys/-/secure-keys-1.0.0.tgz#f0c82d98a3b139a8776a8808050b824431087fca" + select@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" @@ -8438,6 +8479,10 @@ window-size@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" +window-size@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" + window-size@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" @@ -8534,7 +8579,7 @@ xtend@^4.0.0, xtend@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" -y18n@^3.2.1: +y18n@^3.2.0, y18n@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" @@ -8542,6 +8587,18 @@ yallist@^2.0.0: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" +yaml-lint@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/yaml-lint/-/yaml-lint-1.0.0.tgz#655068f583263eec7e2a0ded8f5b1895dd667e1c" + dependencies: + bluebird "^3.5.0" + glob "^7.1.2" + js-yaml "^3.9.1" + leprechaun "0.0.2" + lodash.merge "^4.6.0" + lodash.snakecase "^4.1.1" + nconf "^0.8.4" + yaml-loader@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/yaml-loader/-/yaml-loader-0.4.0.tgz#4aae447d13c1aa73a989d8a2a5309b0b1a3ca353" @@ -8581,6 +8638,18 @@ yargs-parser@^7.0.0: dependencies: camelcase "^4.1.0" +yargs@^3.19.0: + version "3.32.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.32.0.tgz#03088e9ebf9e756b69751611d2a5ef591482c995" + dependencies: + camelcase "^2.0.1" + cliui "^3.0.3" + decamelize "^1.1.1" + os-locale "^1.4.0" + string-width "^1.0.1" + window-size "^0.1.4" + y18n "^3.2.0" + yargs@^4.0.0: version "4.8.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-4.8.1.tgz#c0c42924ca4aaa6b0e6da1739dfb216439f9ddc0" From 1d2f7b529830fae727272b3ff7ab56f7921ab819 Mon Sep 17 00:00:00 2001 From: Chi Vinh Le Date: Wed, 11 Oct 2017 13:34:27 +0700 Subject: [PATCH 9/9] Use correct import path --- client/coral-framework/services/i18n.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/client/coral-framework/services/i18n.js b/client/coral-framework/services/i18n.js index 802c93c87..7afb16860 100644 --- a/client/coral-framework/services/i18n.js +++ b/client/coral-framework/services/i18n.js @@ -3,10 +3,10 @@ import has from 'lodash/has'; import get from 'lodash/get'; import merge from 'lodash/merge'; -import daTA from '../../../node_modules/timeago.js/locales/da'; -import esTA from '../../../node_modules/timeago.js/locales/es'; -import frTA from '../../../node_modules/timeago.js/locales/fr'; -import pt_BRTA from '../../../node_modules/timeago.js/locales/pt_BR'; +import daTA from 'timeago.js/locales/da'; +import esTA from 'timeago.js/locales/es'; +import frTA from 'timeago.js/locales/fr'; +import pt_BRTA from 'timeago.js/locales/pt_BR'; import en from '../../../locales/en.yml'; import da from '../../../locales/da.yml';