From c3b2bb6f0286994a097a242bafd4434d059aa2d6 Mon Sep 17 00:00:00 2001 From: FranzBot Date: Mon, 17 Jun 2019 14:26:23 +0000 Subject: Automatic i18n update (i18n.meetfranz.com) --- src/i18n/locales/hu.json | 24 +++++++++++----------- src/i18n/locales/nl.json | 50 ++++++++++++++++++++++----------------------- src/i18n/locales/pt-BR.json | 2 +- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/src/i18n/locales/hu.json b/src/i18n/locales/hu.json index 701568b1c..43e0da91a 100644 --- a/src/i18n/locales/hu.json +++ b/src/i18n/locales/hu.json @@ -8,7 +8,7 @@ "feature.shareFranz.action.email" : "Küldés email-ben", "feature.shareFranz.action.facebook" : "Megosztás Facebook-on", "feature.shareFranz.action.twitter" : "Megosztás Twitter-en", - "feature.shareFranz.headline" : "Franz is better together!", + "feature.shareFranz.headline" : "A Franz barátokkal együtt mégjobb!", "feature.shareFranz.shareText.email" : "I've added {count} services to Franz! Get the free app for WhatsApp, Messenger, Slack, Skype and co at www.meetfranz.com", "feature.shareFranz.shareText.twitter" : "I've added {count} services to Franz! Get the free app for WhatsApp, Messenger, Slack, Skype and co at www.meetfranz.com \/cc @FranzMessenger", "feature.shareFranz.text" : "Tell your friends and colleagues how awesome Franz is and help us to spread the word.", @@ -44,7 +44,7 @@ "login.submit.label" : "Bejelentkezés", "login.tokenExpired" : "A munkamenet lejárt, kérlek lépj be újra.", "menu.app.about" : "Névjegy", - "menu.app.announcement" : "What's new?", + "menu.app.announcement" : "Mi újság?", "menu.app.checkForUpdates" : "Frissítések keresése", "menu.app.hide" : "Elrejt", "menu.app.hideOthers" : "Többi elrejtése", @@ -233,17 +233,17 @@ "settings.services.discoverServices" : "Szolgáltatások felfedezése", "settings.services.headline" : "Szolgáltatásaid", "settings.services.noServicesAdded" : "Még nem adtál hozzá egyetlen szolgáltatást sem eddig.", - "settings.services.servicesRequestFailed" : "Could not load your services", + "settings.services.servicesRequestFailed" : "Szolgáltatásaid betöltése sikertelen", "settings.services.tooltip.isDisabled" : "A szolgáltatás le van tiltva", "settings.services.tooltip.isMuted" : "Minden hang lenémítva", "settings.services.tooltip.notificationsDisabled" : "Értesítések letiltva", "settings.services.updatedInfo" : "A módosításokat elmentettük", "settings.team.contentHeadline" : "Franz for Teams", - "settings.team.copy" : "Franz for Teams gives you the option to invite co-workers to your team by sending them email invitations and manage their subscriptions in your account’s preferences. Don’t waste time setting up subscriptions for every team member individually, forget about multiple invoices and different billing cycles - one team to rule them all!", + "settings.team.copy" : "A Franz for Teams lehetőséget teremt arra, hogy meghívd munkatársaidat a csapatodba email-en keresztül, és kezelhesd a Franz előfizetéseiket és fiókbeállításaikat. Ne fecséreld az idődet minden egyes csapattag regisztrációjára, felejtsd el a sok-sok egyéni számlát és különböző lejárati időt - egy mindenek felett!", "settings.team.headline" : "Csapat", - "settings.team.intro" : "You and your team use Franz? You can now manage Premium subscriptions for as many colleagues, friends or family members as you want, all from within one account.", - "settings.team.manageAction" : "Manage your Team on meetfranz.com", - "settings.team.upgradeAction" : "Upgrade your Account", + "settings.team.intro" : "Te és a csapatod Franz-ot használtok? Egy fiókból kezelheted kollégáid, barátaid vagy családtagjaid Prémium előfizetéseit.", + "settings.team.manageAction" : "Csapat kezelése a meetfranz.com-on", + "settings.team.upgradeAction" : "Előfizetés", "settings.user.form.accountType.company" : "Cég", "settings.user.form.accountType.individual" : "Egyén", "settings.user.form.accountType.label" : "Fiók típusa", @@ -293,7 +293,7 @@ "subscription.features.onpremise.mattermost" : "Saját kiszolgálós szolgáltatások hozzáadása, pl.: Mattermost", "subscription.features.proxy" : "Proxy támogatás a szolgáltatásokhoz", "subscription.features.spellchecker" : "Támogatás a Helyesírás-ellenőrzőhöz", - "subscription.features.workspaces" : "Organize your services in workspaces", + "subscription.features.workspaces" : "Rendezd szolgáltatásaidat Munkaterületekbe", "subscription.includedFeatures" : "Az előfizetett Franz Prémium Támogató Fiók tartalmazza", "subscription.paymentSessionError" : "Nem sikerült a fizetési felületet betölteni", "subscription.submit.label" : "Szeretném támogatni a Franz fejlesztését", @@ -313,12 +313,12 @@ "tabs.item.reload" : "Újratöltés", "validation.email" : "{field} nem érvényes", "validation.minLength" : "{field} mezőnek legalább {length} karakter hosszúnak kell lennie", - "validation.oneRequired" : "At least one is required", + "validation.oneRequired" : "Legalább egy kitöltése szükséges", "validation.required" : "{field} kitöltése kötelező", "validation.url" : "{field} nem érvényes URL", "welcome.loginButton" : "Jelentkezz be a fiókodba", "welcome.signupButton" : "Új fiók létrehozása", - "workspaceDrawer.addNewWorkspaceLabel" : "Add new workspace", + "workspaceDrawer.addNewWorkspaceLabel" : "Munkaterület hozzáadása", "workspaceDrawer.allServices" : "Összes szolgáltatás", "workspaceDrawer.headline" : "Munkaterületek", "workspaceDrawer.item.contextMenuEdit" : "szerkeszt", @@ -326,7 +326,7 @@ "workspaceDrawer.premiumCtaButtonLabel" : "Készítsd el az első munkaterületedet", "workspaceDrawer.proFeatureBadge" : "Prémium funkció", "workspaceDrawer.reactivatePremiumAccountLabel" : "Prémium fiók reaktiválása", - "workspaceDrawer.workspaceFeatureInfo" : "

Franz Workspaces let you focus on what’s important right now. Set up different sets of services and easily switch between them at any time.<\/p>

You decide which services you need when and where, so we can help you stay on top of your game - or easily switch off from work whenever you want.<\/p>", + "workspaceDrawer.workspaceFeatureInfo" : "

A Franz Munkaterületek lehetővé teszik, hogy összpontosíts a jelenleg fontos dolgokra. Állítsd be a különböző szolgáltatáskészleteket és könnyedén válthatsz közöttük bármikor.<\/p>

Te döntöd el, hogy mely szolgáltatásokra van szükséged, mikor és hol, így segíthetünk abban, hogy a teljesítményed csúcsán maradhass, vagy ha csak akarod, egyszerűen kikapcsold a munkával kapcsolatos dolgokat.<\/p>", "workspaceDrawer.workspacesSettingsTooltip" : "Munkaterület beállítások szerkesztése", - "workspaces.switchingIndicator.switchingTo" : "Switching to" + "workspaces.switchingIndicator.switchingTo" : "Váltás" } diff --git a/src/i18n/locales/nl.json b/src/i18n/locales/nl.json index fdb96a7db..c8ebda75f 100644 --- a/src/i18n/locales/nl.json +++ b/src/i18n/locales/nl.json @@ -165,7 +165,7 @@ "settings.app.headlineGeneral" : "Algemeen", "settings.app.headlineLanguage" : "Taal", "settings.app.headlineUpdates" : "Updates", - "settings.app.languageDisclaimer" : "Official translations are English & German. All other languages are community based translations.", + "settings.app.languageDisclaimer" : "Officiële vertalingen zijn in het Engels en Duits. Alle andere talen zijn beheerd door de community.", "settings.app.restartRequired" : "Deze wijziging heeft een herstart nodig", "settings.app.subheadlineCache" : "Cache", "settings.app.translationHelp" : "Help ons om Franz te vertalen naar uw taal.", @@ -178,9 +178,9 @@ "settings.navigation.inviteFriends" : "Nodig vrienden uit", "settings.navigation.logout" : "Uitloggen", "settings.navigation.settings" : "Instellingen", - "settings.navigation.team" : "Manage Team", + "settings.navigation.team" : "Beheer Team", "settings.navigation.yourServices" : "Jouw services", - "settings.navigation.yourWorkspaces" : "Your workspaces", + "settings.navigation.yourWorkspaces" : "Jouw werkruimtes", "settings.recipes.all" : "Alle services", "settings.recipes.dev" : "Ontwikkeling", "settings.recipes.headline" : "Beschikbare services", @@ -233,7 +233,7 @@ "settings.services.discoverServices" : "Ontdek services", "settings.services.headline" : "Jouw services", "settings.services.noServicesAdded" : "Je hebt nog geen services toegevoegd.", - "settings.services.servicesRequestFailed" : "Could not load your services", + "settings.services.servicesRequestFailed" : "Kan jouw diensten niet laden", "settings.services.tooltip.isDisabled" : "Service is uitgeschakeld", "settings.services.tooltip.isMuted" : "Alle geluiden zijn uitgeschakeld", "settings.services.tooltip.notificationsDisabled" : "Meldingen zijn uitgeschakeld", @@ -242,8 +242,8 @@ "settings.team.copy" : "Franz for Teams gives you the option to invite co-workers to your team by sending them email invitations and manage their subscriptions in your account’s preferences. Don’t waste time setting up subscriptions for every team member individually, forget about multiple invoices and different billing cycles - one team to rule them all!", "settings.team.headline" : "Team", "settings.team.intro" : "You and your team use Franz? You can now manage Premium subscriptions for as many colleagues, friends or family members as you want, all from within one account.", - "settings.team.manageAction" : "Manage your Team on meetfranz.com", - "settings.team.upgradeAction" : "Upgrade your Account", + "settings.team.manageAction" : "Beheer je Team op meetfranz.com", + "settings.team.upgradeAction" : "Jouw Account opwaarderen", "settings.user.form.accountType.company" : "Bedrijf", "settings.user.form.accountType.individual" : "Individueel", "settings.user.form.accountType.label" : "Accounttype", @@ -254,24 +254,24 @@ "settings.user.form.lastname" : "Achternaam", "settings.user.form.newPassword" : "Nieuw wachtwoord", "settings.workspace.add.form.name" : "Naam", - "settings.workspace.add.form.submitButton" : "Create workspace", - "settings.workspace.form.buttonDelete" : "Delete workspace", - "settings.workspace.form.buttonSave" : "Save workspace", + "settings.workspace.add.form.submitButton" : "Maak werkruimte aan", + "settings.workspace.form.buttonDelete" : "Verwijder werkruimte", + "settings.workspace.form.buttonSave" : "Sla werkruimte op", "settings.workspace.form.name" : "Naam", - "settings.workspace.form.servicesInWorkspaceHeadline" : "Services in this Workspace", + "settings.workspace.form.servicesInWorkspaceHeadline" : "Diensten in deze werkruimte", "settings.workspace.form.yourWorkspaces" : "Jouw werkruimtes", "settings.workspaces.deletedInfo" : "Werkruimte is verwijderd", "settings.workspaces.headline" : "Jouw werkplaatsen", - "settings.workspaces.noWorkspacesAdded" : "You haven't added any workspaces yet.", + "settings.workspaces.noWorkspacesAdded" : "Je hebt nog geen werkruimtes toegevoegd.", "settings.workspaces.tryReloadWorkspaces" : "Probeer opnieuw", "settings.workspaces.updatedInfo" : "Je wijzigingen zijn opgeslagen", - "settings.workspaces.workspaceFeatureHeadline" : "Less is More: Introducing Franz Workspaces", - "settings.workspaces.workspaceFeatureInfo" : "Franz Workspaces let you focus on what’s important right now. Set up different sets of services and easily switch between them at any time. You decide which services you need when and where, so we can help you stay on top of your game - or easily switch off from work whenever you want.", - "settings.workspaces.workspacesRequestFailed" : "Could not load your workspaces", + "settings.workspaces.workspaceFeatureHeadline" : "Less is More: Zie hier Franz Werkruimtes", + "settings.workspaces.workspaceFeatureInfo" : "Franz werkruimtes laat je aandacht geven aan wat nu belangrijk is. Maak verschillende sets van diensten aan en schakel gelijk wanneer tussen de verschillende sets.Jij beslist welke diensten je wanneer en waar nodig hebt, enkel zo kunnen wij jou helpen je focus te behouden. Of net makkelijk de switch te maken van werk naar ontspanning.", + "settings.workspaces.workspacesRequestFailed" : "Kan jouw werkruimtes niet laden", "sidebar.addNewService" : "Voeg service toe", - "sidebar.closeWorkspaceDrawer" : "Werkruimtepagina sluiten", + "sidebar.closeWorkspaceDrawer" : "Werkruimte pagina sluiten", "sidebar.muteApp" : "Schakel berichten & geluid uit", - "sidebar.openWorkspaceDrawer" : "Werkruimtepagina openen", + "sidebar.openWorkspaceDrawer" : "Werkruimte pagina openen", "sidebar.settings" : "Instellingen", "sidebar.unmuteApp" : "Berichten & geluid inschakelen", "signup.company.label" : "Bedrijf", @@ -293,7 +293,7 @@ "subscription.features.onpremise.mattermost" : "Voeg op-locatie\/gehoste diensten zoals Mattermost toe", "subscription.features.proxy" : "Proxy understeuning voor diensten", "subscription.features.spellchecker" : "Ondersteuning voor spellingscheck", - "subscription.features.workspaces" : "Organize your services in workspaces", + "subscription.features.workspaces" : "Beheer je diensten in de werkruimtes", "subscription.includedFeatures" : "Betaald Franz Premium Supporter Account bevat", "subscription.paymentSessionError" : "Kan betaalformulier niet initialiseren", "subscription.submit.label" : "Ik wil de ontwikkeling van Franz ondersteunen", @@ -313,20 +313,20 @@ "tabs.item.reload" : "Herladen", "validation.email" : "{field} is niet geldig", "validation.minLength" : "{field} moet minimaal {length} karakters lang zijn", - "validation.oneRequired" : "At least one is required", + "validation.oneRequired" : "Er is op zijn minst één vereist", "validation.required" : "{field} is vereist", "validation.url" : "{field} is niet een geldige URL", "welcome.loginButton" : "Log in op je account", "welcome.signupButton" : "Maak een gratis account", - "workspaceDrawer.addNewWorkspaceLabel" : "Add new workspace", - "workspaceDrawer.allServices" : "Alle services", + "workspaceDrawer.addNewWorkspaceLabel" : "Voeg een nieuwe werkruimte toe", + "workspaceDrawer.allServices" : "Alle diensten", "workspaceDrawer.headline" : "Werkruimtes", - "workspaceDrawer.item.contextMenuEdit" : "edit", - "workspaceDrawer.item.noServicesAddedYet" : "No services added yet", + "workspaceDrawer.item.contextMenuEdit" : "bewerken", + "workspaceDrawer.item.noServicesAddedYet" : "Nog geen diensten toegevoegd", "workspaceDrawer.premiumCtaButtonLabel" : "Maak je eerste werkruimte", "workspaceDrawer.proFeatureBadge" : "Premium feature", "workspaceDrawer.reactivatePremiumAccountLabel" : "Heractiveer premium account", - "workspaceDrawer.workspaceFeatureInfo" : "

Franz Workspaces let you focus on what’s important right now. Set up different sets of services and easily switch between them at any time.<\/p>

You decide which services you need when and where, so we can help you stay on top of your game - or easily switch off from work whenever you want.<\/p>", - "workspaceDrawer.workspacesSettingsTooltip" : "Edit workspaces settings", - "workspaces.switchingIndicator.switchingTo" : "Switching to" + "workspaceDrawer.workspaceFeatureInfo" : "

Franz werkruimtes laat je aandacht geven aan wat nu belangrijk is. Maak verschillende sets van diensten aan en schakel gelijk wanneer tussen de verschillende sets.<\/p>

Jij beslist welke diensten je wanneer en waar nodig hebt, enkel zo kunnen wij jou helpen je focus te behouden. Of net makkelijk de switch te maken van werk naar ontspanning.<\/p>", + "workspaceDrawer.workspacesSettingsTooltip" : "Pas werkruimte instellingen aan", + "workspaces.switchingIndicator.switchingTo" : "Overschakelen naar" } diff --git a/src/i18n/locales/pt-BR.json b/src/i18n/locales/pt-BR.json index 27fd796a4..505f0418e 100644 --- a/src/i18n/locales/pt-BR.json +++ b/src/i18n/locales/pt-BR.json @@ -144,7 +144,7 @@ "settings.account.userInfoRequestFailed" : "Não foi possível carregar as informações do usuário", "settings.app.buttonClearAllCache" : "Limpar cache", "settings.app.buttonInstallUpdate" : "Reiniciar e instalar atualização", - "settings.app.buttonSearchForUpdate" : "Verificar se há atualizações", + "settings.app.buttonSearchForUpdate" : "Verificar por atualizações", "settings.app.cacheInfo" : "O cache do Franz está usando {size} de espaço em disco atualmente.", "settings.app.currentVersion" : "Versão atual:", "settings.app.form.autoLaunchInBackground" : "Abrir em segundo plano", -- cgit v1.2.3-70-g09d2 From ec49aa1b70002b91b1667d8be70c6936d8f13b4b Mon Sep 17 00:00:00 2001 From: Stefan Malzner Date: Tue, 2 Jul 2019 12:34:17 +0200 Subject: Update CHANGELOG.md --- CHANGELOG.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 70b77637e..a0969c2fc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,16 @@ +# [5.2.0-beta.4](https://github.com/meetfranz/franz/compare/v5.2.0-beta.3...v5.2.0-beta.4) (2019-07-01) + + +### Bug Fixes + +* **Notifications:** Don't show notification badges when app is muted ([e844a64](https://github.com/meetfranz/franz/commit/e844a64)) +* **Settings:** Fix position of settings window + +### General + +* **Translations:** Improved translations. **[A million thanks to the amazing community. 🎉](http://i18n.meetfranz.com/)** + + # [5.2.0-beta.3](https://github.com/meetfranz/franz/compare/v5.2.0-beta.2...v5.2.0-beta.3) (2019-06-24) ### General -- cgit v1.2.3-70-g09d2 From ec2eeb03e23350edddcd3ad31e988a1ca5a9587f Mon Sep 17 00:00:00 2001 From: FranzBot Date: Tue, 2 Jul 2019 10:42:16 +0000 Subject: Automatic i18n update (i18n.meetfranz.com) --- src/i18n/locales/fr.json | 18 ++++---- src/i18n/locales/nl-BE.json | 102 ++++++++++++++++++++++---------------------- src/i18n/locales/nl.json | 4 +- src/i18n/locales/pl.json | 18 ++++---- src/i18n/locales/pt-BR.json | 20 ++++----- 5 files changed, 81 insertions(+), 81 deletions(-) diff --git a/src/i18n/locales/fr.json b/src/i18n/locales/fr.json index 90072f2b7..9227ff28f 100644 --- a/src/i18n/locales/fr.json +++ b/src/i18n/locales/fr.json @@ -3,7 +3,7 @@ "app.errorHandler.headline" : "Une erreur s'est produite", "feature.announcements.changelog.headline" : "Changements dans Franz {version}", "feature.delayApp.action" : "Obtenez une licence de Supporter Franz", - "feature.delayApp.headline" : "Veuillez acheter une licence de Supporter Franz pour sauter le temps d'attente", + "feature.delayApp.headline" : "Achetez une licence de Supporter Franz pour ne plus avoir de temps d'attente", "feature.delayApp.text" : "Franz reprendra dans {seconds} secondes.", "feature.shareFranz.action.email" : "Envoyer par mail", "feature.shareFranz.action.facebook" : "Partager sur Facebook", @@ -11,7 +11,7 @@ "feature.shareFranz.headline" : "Franz est meilleur quand on est tous ensemble !", "feature.shareFranz.shareText.email" : "J'ai ajouté {count} services à Franz ! Télécharger l'appli gratuite pour WhatsApp, Messenger, Skype et cie sur www.meetfranz.com", "feature.shareFranz.shareText.twitter" : "J'ai ajouté {count} services à Franz! Télécharge l'application gratuite pour WhatsApp, Messenger, Slack, Skype et compagnie sur www.meetfranz.com \/cc @FranzMessenger", - "feature.shareFranz.text" : "Dites à vos amis et collègues combien Franz est super et aidez nous à faire passer le mot.", + "feature.shareFranz.text" : "Dites à vos amis et collègues a quel point Franz est super et aidez nous à faire passer le mot.", "global.api.unhealthy" : "Impossible de se connecter aux services en ligne de Franz", "global.notConnectedToTheInternet" : "Vous n'êtes pas connecté à Internet.", "global.spellchecker.useDefault" : "Par défaut ({default})", @@ -19,7 +19,7 @@ "global.spellchecking.autodetect.short" : "Automatiquement", "global.spellchecking.language" : "Langue de la vérification orthographique", "import.headline" : "Importez vos services depuis la version 4 de Franz.", - "import.notSupportedHeadline" : "Ces services ne sont pas encore supportés par Franz 5", + "import.notSupportedHeadline" : "Ces services ne sont pas encore supportés par la version 5 de Franz", "import.skip.label" : "Je veux ajouter des services manuellement", "import.submit.label" : "Importer des services", "infobar.buttonChangelog" : "Nouveautés", @@ -27,7 +27,7 @@ "infobar.buttonReloadServices" : "Recharger les services", "infobar.requiredRequestsFailed" : "Impossible d'accéder aux services et informations de l'utilisateur", "infobar.servicesUpdated" : "Vos services ont été mis à jour.", - "infobar.updateAvailable" : "Une nouvelle mise à jour pour Franz est disponible.", + "infobar.updateAvailable" : "Une nouvelle mise à jour de Franz est disponible.", "invite.email.label" : "Adresse Email", "invite.headline.friends" : "Invitez 3 amis ou collègues", "invite.name.label" : "Nom", @@ -44,7 +44,7 @@ "login.submit.label" : "Se connecter", "login.tokenExpired" : "Votre session a expiré, veuillez vous reconnecter.", "menu.app.about" : "À propos de Franz", - "menu.app.announcement" : "Quoi de neuf? ", + "menu.app.announcement" : "Quoi de neuf ? ", "menu.app.checkForUpdates" : "Vérifier les mises à jour", "menu.app.hide" : "Masquer", "menu.app.hideOthers" : "Masquer les autres", @@ -70,7 +70,7 @@ "menu.help.changelog" : "Liste des modifications", "menu.help.learnMore" : "En savoir plus", "menu.help.privacy" : "Déclaration de confidentialité", - "menu.help.support" : "Support", + "menu.help.support" : "Assistance", "menu.help.tos" : "Conditions d'utilisation", "menu.services" : "Services", "menu.services.activatePreviousService" : "Activer le service précédent", @@ -79,9 +79,9 @@ "menu.view" : "Aperçu", "menu.view.enterFullScreen" : "Entrer en mode plein écran", "menu.view.exitFullScreen" : "Sortir du mode plein écran", - "menu.view.reloadFranz" : "Actualiser Franz", + "menu.view.reloadFranz" : "Recharger Franz", "menu.view.reloadService" : "Redémarrer le service", - "menu.view.resetZoom" : "Taille réelle", + "menu.view.resetZoom" : "Taille actuelle", "menu.view.toggleDevTools" : "Activer les outils développeur", "menu.view.toggleFullScreen" : "Activer \/ désactiver le mode plein écran", "menu.view.toggleServiceDevTools" : "Activer les outils de développement WebKit", @@ -102,7 +102,7 @@ "password.noUser" : "Aucun utilisateur n'a été trouvé avec cette adresse email", "password.submit.label" : "Soumettre", "password.successInfo" : "Merci de consulter vos emails", - "premiumFeature.button.upgradeAccount" : "Mettre à niveau mon compte", + "premiumFeature.button.upgradeAccount" : "Augmenter le niveau de mon compte", "pricing.headline" : "Soutenez Franz", "pricing.link.skipPayment" : "Je ne veux pas soutenir le développement de Franz.", "pricing.submit.label" : "Je veux soutenir le développement de Franz", diff --git a/src/i18n/locales/nl-BE.json b/src/i18n/locales/nl-BE.json index 1eda8856f..83e207542 100644 --- a/src/i18n/locales/nl-BE.json +++ b/src/i18n/locales/nl-BE.json @@ -1,22 +1,22 @@ { "app.errorHandler.action" : "Herladen", "app.errorHandler.headline" : "Er ging iets mis", - "feature.announcements.changelog.headline" : "Changes in Franz {version}", + "feature.announcements.changelog.headline" : "Wijzigingen in Franz {versie}", "feature.delayApp.action" : "Neem een Franz Supporter Licentie ", "feature.delayApp.headline" : "Neem een Franz Supporter Licentie om niet meer te hoeven wachten", "feature.delayApp.text" : "Franz gaat over {seconds} seconden verder.", - "feature.shareFranz.action.email" : "Send as email", - "feature.shareFranz.action.facebook" : "Share on Facebook", - "feature.shareFranz.action.twitter" : "Share on Twitter", - "feature.shareFranz.headline" : "Franz is better together!", - "feature.shareFranz.shareText.email" : "I've added {count} services to Franz! Get the free app for WhatsApp, Messenger, Slack, Skype and co at www.meetfranz.com", - "feature.shareFranz.shareText.twitter" : "I've added {count} services to Franz! Get the free app for WhatsApp, Messenger, Slack, Skype and co at www.meetfranz.com \/cc @FranzMessenger", - "feature.shareFranz.text" : "Tell your friends and colleagues how awesome Franz is and help us to spread the word.", + "feature.shareFranz.action.email" : "Verstuur als e-mail", + "feature.shareFranz.action.facebook" : "Deel op Facebook", + "feature.shareFranz.action.twitter" : "Deel op Twitter", + "feature.shareFranz.headline" : "Franz is beter samen!", + "feature.shareFranz.shareText.email" : "Ik heb {telling} diensten toegevoegd aan Franz! Download de gratis app voor WhatsApp, Messenger, Slack, Skype, en anderen op www.meetfranz.com", + "feature.shareFranz.shareText.twitter" : "Ik heb {tel} diensten toegevoegd aan Franz! Download de gratis app voor WhatsApp, Messenger, Slack, Skype, en anderen op www.meetfranz.com \/cc @FranzMessenger", + "feature.shareFranz.text" : "Vertel je vrienden en collega's hoe geweldig Franz is en help ons het woord te verspreiden.", "global.api.unhealthy" : "Kan geen verbinding maken met de Franz services", "global.notConnectedToTheInternet" : "Je hebt geen internet verbinding.", "global.spellchecker.useDefault" : "Gebruik Systeemstandaard ({default})", - "global.spellchecking.autodetect" : "Detect language automatically", - "global.spellchecking.autodetect.short" : "Automatic", + "global.spellchecking.autodetect" : "Taal automatisch herkennen", + "global.spellchecking.autodetect.short" : "Automatisch", "global.spellchecking.language" : "Taal spellingscontrole", "import.headline" : "Importeer je Franz 4 services", "import.notSupportedHeadline" : "De volgende services worden nog niet ondersteund in Franz 5", @@ -44,7 +44,7 @@ "login.submit.label" : "Inloggen", "login.tokenExpired" : "De sessie is verlopen, log opnieuw in alsjeblieft.", "menu.app.about" : "Over Franz", - "menu.app.announcement" : "What's new?", + "menu.app.announcement" : "Wat is er nieuw?", "menu.app.checkForUpdates" : "Controleer op updates", "menu.app.hide" : "Verbergen", "menu.app.hideOthers" : "Andere Verbergen", @@ -73,9 +73,9 @@ "menu.help.support" : "Ondersteuning", "menu.help.tos" : "Servicevoorwaarden", "menu.services" : "Services", - "menu.services.activatePreviousService" : "Activate previous service", + "menu.services.activatePreviousService" : "Vorige dienst activeren", "menu.services.addNewService" : "Nieuwe service toevoegen...", - "menu.services.setNextServiceActive" : "Activate next service", + "menu.services.setNextServiceActive" : "Volgende dienst activeren", "menu.view" : "Weergave", "menu.view.enterFullScreen" : "Volledig scherm openen", "menu.view.exitFullScreen" : "Volledig scherm verlaten", @@ -90,11 +90,11 @@ "menu.window" : "Venster", "menu.window.close" : "Sluiten", "menu.window.minimize" : "Minimaliseren", - "menu.workspaces" : "Workspaces", - "menu.workspaces.addNewWorkspace" : "Add New Workspace...", - "menu.workspaces.closeWorkspaceDrawer" : "Close workspace drawer", + "menu.workspaces" : "Werkruimten", + "menu.workspaces.addNewWorkspace" : "Voeg nieuwe werkruimte toe...", + "menu.workspaces.closeWorkspaceDrawer" : "Werkruimtepagina sluiten", "menu.workspaces.defaultWorkspace" : "Alle services", - "menu.workspaces.openWorkspaceDrawer" : "Open workspace drawer", + "menu.workspaces.openWorkspaceDrawer" : "Werkruimtepagina openen", "password.email.label" : "E-mailadres", "password.headline" : "Wachtwoord resetten", "password.link.login" : "Log in op je account", @@ -118,7 +118,7 @@ "service.errorHandler.headline" : "Oh nee!", "service.errorHandler.message" : "Fout", "service.errorHandler.text" : "{name} kon niet geladen worden.", - "service.webviewLoader.loading" : "Loading", + "service.webviewLoader.loading" : "Aan het laden", "services.getStarted" : "Beginnen", "services.welcome" : "Welkom bij Franz", "settings.account.account.editButton" : "Account bewerken", @@ -165,7 +165,7 @@ "settings.app.headlineGeneral" : "Algemeen", "settings.app.headlineLanguage" : "Taal", "settings.app.headlineUpdates" : "Updates", - "settings.app.languageDisclaimer" : "Official translations are English & German. All other languages are community based translations.", + "settings.app.languageDisclaimer" : "Officiële vertalingen zijn in het Engels en Duits. Alle andere tallen zijn op de gemeenschap gebaseerde vertalingen.", "settings.app.restartRequired" : "Deze wijziging heeft een herstart nodig", "settings.app.subheadlineCache" : "Cache", "settings.app.translationHelp" : "Help ons om Franz te vertalen naar uw taal.", @@ -178,10 +178,10 @@ "settings.navigation.inviteFriends" : "Nodig vrienden uit", "settings.navigation.logout" : "Uitloggen", "settings.navigation.settings" : "Instellingen", - "settings.navigation.team" : "Manage Team", + "settings.navigation.team" : "Beheer Team", "settings.navigation.yourServices" : "Jouw services", - "settings.navigation.yourWorkspaces" : "Your workspaces", - "settings.recipes.all" : "Alle services", + "settings.navigation.yourWorkspaces" : "Jouw werkruimtes", + "settings.recipes.all" : "Alle diensten", "settings.recipes.dev" : "Ontwikkeling", "settings.recipes.headline" : "Beschikbare services", "settings.recipes.missingService" : "Mist er een service?", @@ -233,17 +233,17 @@ "settings.services.discoverServices" : "Services ontdekken", "settings.services.headline" : "Jouw services", "settings.services.noServicesAdded" : "Je hebt nog geen services toegevoegd.", - "settings.services.servicesRequestFailed" : "Could not load your services", + "settings.services.servicesRequestFailed" : "Kan je diensten niet laden", "settings.services.tooltip.isDisabled" : "Service is uitgeschakeld", "settings.services.tooltip.isMuted" : "Alle geluiden zijn uitgeschakeld", "settings.services.tooltip.notificationsDisabled" : "Notificaties staan uit", "settings.services.updatedInfo" : "Je wijzigingen zijn opgeslagen", - "settings.team.contentHeadline" : "Franz for Teams", - "settings.team.copy" : "Franz for Teams gives you the option to invite co-workers to your team by sending them email invitations and manage their subscriptions in your account’s preferences. Don’t waste time setting up subscriptions for every team member individually, forget about multiple invoices and different billing cycles - one team to rule them all!", + "settings.team.contentHeadline" : "Frans voor Teams", + "settings.team.copy" : "Franz voor Teams geeft je de mogelijkheid om collega's uit te nodigen voor je team door hen een e-mail te sturen en hun inschrijvingen te beheren in je accountvoorkeuren. Verspil geen tijd met het instellen van inschrijvingen voor elk teamlid apart, vergeet meerdere facturen en verschillende afrekeningsperiodes - één team regeert alles!", "settings.team.headline" : "Team", - "settings.team.intro" : "You and your team use Franz? You can now manage Premium subscriptions for as many colleagues, friends or family members as you want, all from within one account.", - "settings.team.manageAction" : "Manage your Team on meetfranz.com", - "settings.team.upgradeAction" : "Upgrade your Account", + "settings.team.intro" : "Gebruiken jij en je team Franz? Je kunt nu Premium inschrijvingen beheren voor zoveel collega's, vrienden, of familieleden als je wilt, allemaal vanaf één account.", + "settings.team.manageAction" : "Beheer je Team op meetfranz.com", + "settings.team.upgradeAction" : "Upgrade je Account", "settings.user.form.accountType.company" : "Bedrijf", "settings.user.form.accountType.individual" : "Particulier", "settings.user.form.accountType.label" : "Account type", @@ -254,24 +254,24 @@ "settings.user.form.lastname" : "Achternaam", "settings.user.form.newPassword" : "Nieuw wachtwoord", "settings.workspace.add.form.name" : "Naam", - "settings.workspace.add.form.submitButton" : "Create workspace", - "settings.workspace.form.buttonDelete" : "Delete workspace", - "settings.workspace.form.buttonSave" : "Save workspace", + "settings.workspace.add.form.submitButton" : "Maak werkruimte aan", + "settings.workspace.form.buttonDelete" : "Verwijder werkruimte", + "settings.workspace.form.buttonSave" : "Bewaar werkruimte", "settings.workspace.form.name" : "Naam", - "settings.workspace.form.servicesInWorkspaceHeadline" : "Services in this Workspace", - "settings.workspace.form.yourWorkspaces" : "Your workspaces", - "settings.workspaces.deletedInfo" : "Workspace has been deleted", - "settings.workspaces.headline" : "Your workspaces", - "settings.workspaces.noWorkspacesAdded" : "You haven't added any workspaces yet.", + "settings.workspace.form.servicesInWorkspaceHeadline" : "Diensten in deze Werkruimte", + "settings.workspace.form.yourWorkspaces" : "Jouw werkruimtes", + "settings.workspaces.deletedInfo" : "Werkruimte is verwijderd", + "settings.workspaces.headline" : "Je werkruimtes", + "settings.workspaces.noWorkspacesAdded" : "Je hebt nog geen werkruimtes toegevoegd.", "settings.workspaces.tryReloadWorkspaces" : "Probeer opnieuw", "settings.workspaces.updatedInfo" : "Je wijzigingen zijn opgeslagen", - "settings.workspaces.workspaceFeatureHeadline" : "Less is More: Introducing Franz Workspaces", + "settings.workspaces.workspaceFeatureHeadline" : "Minder is meer: we presenteren Franz Werkruimtes", "settings.workspaces.workspaceFeatureInfo" : "Franz Workspaces let you focus on what’s important right now. Set up different sets of services and easily switch between them at any time. You decide which services you need when and where, so we can help you stay on top of your game - or easily switch off from work whenever you want.", - "settings.workspaces.workspacesRequestFailed" : "Could not load your workspaces", + "settings.workspaces.workspacesRequestFailed" : "Kan je werkruimtes niet laden", "sidebar.addNewService" : "Nieuw service toevoegen", - "sidebar.closeWorkspaceDrawer" : "Close workspace drawer", + "sidebar.closeWorkspaceDrawer" : "Werkruimtelade sluiten", "sidebar.muteApp" : "Berichten & geluid uitschakelen", - "sidebar.openWorkspaceDrawer" : "Open workspace drawer", + "sidebar.openWorkspaceDrawer" : "Werkruimtelade openen", "sidebar.settings" : "Instellingen", "sidebar.unmuteApp" : "Berichten & geluid inschakelen", "signup.company.label" : "Bedrijf", @@ -293,7 +293,7 @@ "subscription.features.onpremise.mattermost" : "Voeg op-locatie\/gehoste diensten zoals Mattermost toe", "subscription.features.proxy" : "Proxy ondersteuning voor services", "subscription.features.spellchecker" : "Ondersteuning voor spellingscheck", - "subscription.features.workspaces" : "Organize your services in workspaces", + "subscription.features.workspaces" : "Organiseer je diensten in werkruimtes", "subscription.includedFeatures" : "Een betalend account voor Franz omvat", "subscription.paymentSessionError" : "Betalingsformulier kon niet geladen worden", "subscription.submit.label" : "Ik wil de ontwikkeling van Franz steunen", @@ -313,20 +313,20 @@ "tabs.item.reload" : "Herladen", "validation.email" : "{field} is niet geldig", "validation.minLength" : "{field} moet minimaal {length} karakters lang zijn", - "validation.oneRequired" : "At least one is required", + "validation.oneRequired" : "Ten minste één is vereist", "validation.required" : "{field} is vereist", "validation.url" : "{field} is niet een geldige URL", "welcome.loginButton" : "Inloggen op je account", "welcome.signupButton" : "Maak een gratis account aan", - "workspaceDrawer.addNewWorkspaceLabel" : "Add new workspace", - "workspaceDrawer.allServices" : "Alle services", - "workspaceDrawer.headline" : "Workspaces", - "workspaceDrawer.item.contextMenuEdit" : "edit", - "workspaceDrawer.item.noServicesAddedYet" : "No services added yet", - "workspaceDrawer.premiumCtaButtonLabel" : "Create your first workspace", + "workspaceDrawer.addNewWorkspaceLabel" : "Voeg een nieuwe werkruimte toe", + "workspaceDrawer.allServices" : "Alle diensten", + "workspaceDrawer.headline" : "Werkruimtes", + "workspaceDrawer.item.contextMenuEdit" : "bewerken", + "workspaceDrawer.item.noServicesAddedYet" : "Nog geen diensten toegevoegd", + "workspaceDrawer.premiumCtaButtonLabel" : "Maak je eerste werkruimte aan", "workspaceDrawer.proFeatureBadge" : "Premium feature", - "workspaceDrawer.reactivatePremiumAccountLabel" : "Reactivate premium account", + "workspaceDrawer.reactivatePremiumAccountLabel" : "Heractiveer premium account", "workspaceDrawer.workspaceFeatureInfo" : "

Franz Workspaces let you focus on what’s important right now. Set up different sets of services and easily switch between them at any time.<\/p>

You decide which services you need when and where, so we can help you stay on top of your game - or easily switch off from work whenever you want.<\/p>", - "workspaceDrawer.workspacesSettingsTooltip" : "Edit workspaces settings", - "workspaces.switchingIndicator.switchingTo" : "Switching to" + "workspaceDrawer.workspacesSettingsTooltip" : "Pas werkruimte instellingen aan", + "workspaces.switchingIndicator.switchingTo" : "Overschakelen naar" } diff --git a/src/i18n/locales/nl.json b/src/i18n/locales/nl.json index c8ebda75f..a05297a64 100644 --- a/src/i18n/locales/nl.json +++ b/src/i18n/locales/nl.json @@ -239,9 +239,9 @@ "settings.services.tooltip.notificationsDisabled" : "Meldingen zijn uitgeschakeld", "settings.services.updatedInfo" : "Je wijzigingen zijn opgeslagen", "settings.team.contentHeadline" : "Franz voor groepen", - "settings.team.copy" : "Franz for Teams gives you the option to invite co-workers to your team by sending them email invitations and manage their subscriptions in your account’s preferences. Don’t waste time setting up subscriptions for every team member individually, forget about multiple invoices and different billing cycles - one team to rule them all!", + "settings.team.copy" : "Franz voor Teams geeft je de mogelijkheid om collega's uit te nodigen voor je team door hen een e-mail te sturen en hun inschrijvingen te beheren in je accountvoorkeuren. Verspil geen tijd met het instellen van inschrijvingen voor elk teamlid apart, vergeet meerdere facturen en verschillende afrekeningsperiodes - één team regeert alles!", "settings.team.headline" : "Team", - "settings.team.intro" : "You and your team use Franz? You can now manage Premium subscriptions for as many colleagues, friends or family members as you want, all from within one account.", + "settings.team.intro" : "Gebruiken jij en je team Franz? Je kunt nu Premium inschrijvingen beheren voor zoveel collega's, vrienden, of familieleden als je wilt, allemaal vanaf één account.", "settings.team.manageAction" : "Beheer je Team op meetfranz.com", "settings.team.upgradeAction" : "Jouw Account opwaarderen", "settings.user.form.accountType.company" : "Bedrijf", diff --git a/src/i18n/locales/pl.json b/src/i18n/locales/pl.json index a5d1ea377..5ade8a5a9 100644 --- a/src/i18n/locales/pl.json +++ b/src/i18n/locales/pl.json @@ -1,35 +1,35 @@ { - "app.errorHandler.action" : "Przeładuj", - "app.errorHandler.headline" : "Coś poszło nie tak", + "app.errorHandler.action" : "Odśwież", + "app.errorHandler.headline" : "Coś poszło nie tak.", "feature.announcements.changelog.headline" : "Zmiany we Franzie {version}", "feature.delayApp.action" : "Uzyskaj licencję Franz Supporter", - "feature.delayApp.headline" : "Aby nie czekać kup licencję Franz Supporter", + "feature.delayApp.headline" : "Aby nie czekać, kup licencję Franz Supporter", "feature.delayApp.text" : "Franz będzie kontynuował za {seconds} sekund.", "feature.shareFranz.action.email" : "Wyślij jako email", "feature.shareFranz.action.facebook" : "Udostępnij na Facebooku", "feature.shareFranz.action.twitter" : "Udostępnij na Twitterze", "feature.shareFranz.headline" : "Franz jest lepszy, gdy tworzymy go razem!", - "feature.shareFranz.shareText.email" : "Dodałem {count} serwisów do Franza! Pobierz darmową aplikacją WhatsApp, Messenger, Slack, Skype i inne na www.meetfranz.com", - "feature.shareFranz.shareText.twitter" : "Dodałem {count} serwisów do Franza! Pobierz darmową aplikacją WhatsApp, Messenger, Slack, Skype i inne na www.meetfranz.com \/cc @FranzMessenger", + "feature.shareFranz.shareText.email" : "Dodałem {count} serwisów do Franza! Pobierz darmową aplikację z WhatsApp, Messenger, Slack, Skype i innymi na www.meetfranz.com", + "feature.shareFranz.shareText.twitter" : "Dodałem {count} serwisów do Franza! Pobierz darmową aplikację z WhatsApp, Messenger, Slack, Skype i innymi na www.meetfranz.com \/cc @FranzMessenger", "feature.shareFranz.text" : "Powiedz znajomym i kolegom o tym, jak odlotowy jest Franz i pomóż nam go spopularyzować.", "global.api.unhealthy" : "Nie można połączyć się z usługami Franz online", "global.notConnectedToTheInternet" : "Nie masz połączenia z Internetem.", "global.spellchecker.useDefault" : "Użyj domyślnego dla systemu ({default})", "global.spellchecking.autodetect" : "Automatycznie wykryj język", "global.spellchecking.autodetect.short" : "Automatycznie", - "global.spellchecking.language" : "Język słownika", + "global.spellchecking.language" : "Język sprawdzania pisowni", "import.headline" : "Importuj usługi Franz 4", "import.notSupportedHeadline" : "Usługi, które nie są jeszcze obsługiwane w Franz 5", "import.skip.label" : "Chcę dodać usługi samodzielnie", "import.submit.label" : "Zaimportuj usługi", "infobar.buttonChangelog" : "Co nowego?", "infobar.buttonInstallUpdate" : "Uruchom ponownie i zainstaluj aktualizację", - "infobar.buttonReloadServices" : "Załaduj ponownie usługi", + "infobar.buttonReloadServices" : "Odśwież usługi", "infobar.requiredRequestsFailed" : "Nie można załadować usług i informacji użytkownika", "infobar.servicesUpdated" : "Usługi zostały zaktualizowane.", "infobar.updateAvailable" : "Dostępna jest nowa wersja Franza.", "invite.email.label" : "Adres email", - "invite.headline.friends" : "Zaproś 3 znajomych lub współpracowników", + "invite.headline.friends" : "Zaproś 3 znajomych lub kolegów", "invite.name.label" : "Imię", "invite.skip.label" : "Chcę to zrobić później", "invite.submit.label" : "Wyślij zaproszenia", @@ -37,7 +37,7 @@ "login.email.label" : "Adres email", "login.headline" : "Zaloguj się", "login.invalidCredentials" : "Adres email lub hasło są błędne", - "login.link.password" : "Przypomnij hasło", + "login.link.password" : "Zresetuj hasło", "login.link.signup" : "Załóż darmowe konto", "login.password.label" : "Hasło", "login.serverLogout" : "Twoja sesja wygasła, zaloguj się ponownie.", diff --git a/src/i18n/locales/pt-BR.json b/src/i18n/locales/pt-BR.json index 505f0418e..60d74495e 100644 --- a/src/i18n/locales/pt-BR.json +++ b/src/i18n/locales/pt-BR.json @@ -1,23 +1,23 @@ { - "app.errorHandler.action" : "Atualizar", - "app.errorHandler.headline" : "Alguma coisa deu errado", + "app.errorHandler.action" : "Recarregar", + "app.errorHandler.headline" : "Opa! Algo deu errado.", "feature.announcements.changelog.headline" : "Mudanças no Franz {version}", - "feature.delayApp.action" : "Adquira uma licença Franz Supporter", - "feature.delayApp.headline" : "Por favor, adquira uma licença Franz Supporter para pular o tempo de espera", + "feature.delayApp.action" : "Adquira uma licença de suporte Franz", + "feature.delayApp.headline" : "Por favor, adquira uma licença para pular o tempo de espera", "feature.delayApp.text" : "Franz continuará em {seconds} segundos.", - "feature.shareFranz.action.email" : "Enviar como e-mail", + "feature.shareFranz.action.email" : "Enviar por e-mail", "feature.shareFranz.action.facebook" : "Compartilhar no Facebook", "feature.shareFranz.action.twitter" : "Compartilhar no Twitter", "feature.shareFranz.headline" : "Franz é melhor em grupo!", "feature.shareFranz.shareText.email" : "Eu adicionei {count} serviços ao Franz! Adquira o aplicativo gratuito para WhatsApp, Messenger, Slack, Skype e mais em www.meetfranz.com", "feature.shareFranz.shareText.twitter" : "Eu adicionei uma contagem de serviços para o Franz! Baixe gratuitamente o aplicativo para WhatsApp, Messenger, Slack, Skype e outros em www.meetfranz.com \/cc @FranzMessenger", - "feature.shareFranz.text" : "Conte aos seus amigos e colegas o quão incrível Franz é e nos ajude a espalhar a mensagem. ", + "feature.shareFranz.text" : "Conte aos seus amigos e colegas o quanto incrível o Franz é e nos ajude a espalhar a mensagem. ", "global.api.unhealthy" : "Não foi possível conectar-se aos serviços on-line do Franz.", "global.notConnectedToTheInternet" : "Você não está conectado à internet", "global.spellchecker.useDefault" : "Use o padrão do sistema ({default})", - "global.spellchecking.autodetect" : "Detectar linguagem automaticamente.", + "global.spellchecking.autodetect" : "Detectar idioma automaticamente.", "global.spellchecking.autodetect.short" : "Automático", - "global.spellchecking.language" : "Idioma de verificação ortográfica", + "global.spellchecking.language" : "Idioma para verificação ortográfica", "import.headline" : "Importe seus serviços do Franz 4 ", "import.notSupportedHeadline" : "Serviços ainda não suportados pelo Franz 5 ", "import.skip.label" : "Quero adicionar serviços manualmente", @@ -50,7 +50,7 @@ "menu.app.hideOthers" : "Ocultar Outros", "menu.app.quit" : "Sair", "menu.app.settings" : "Configurações", - "menu.app.unhide" : "Reexibir", + "menu.app.unhide" : "Mostrar", "menu.edit" : "Editar", "menu.edit.copy" : "Copiar", "menu.edit.cut" : "Cortar", @@ -60,7 +60,7 @@ "menu.edit.pasteAndMatchStyle" : "Colar e Corresponder ao Estilo", "menu.edit.redo" : "Refazer", "menu.edit.selectAll" : "Selecionar Tudo", - "menu.edit.speech" : "Discurso", + "menu.edit.speech" : "Falar", "menu.edit.startDictation" : "Iniciar Digitação", "menu.edit.startSpeaking" : "Começar a Falar", "menu.edit.stopSpeaking" : "Parar de Falar", -- cgit v1.2.3-70-g09d2 From 052947735bae0f2c5c6876ba60941aa84888576e Mon Sep 17 00:00:00 2001 From: Dominik Guzei Date: Wed, 10 Jul 2019 14:34:30 +0200 Subject: fix reactions and workspace cleanup logic --- src/features/workspaces/store.js | 21 ++++++++++++++------- src/stores/lib/Reaction.js | 6 +++--- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/src/features/workspaces/store.js b/src/features/workspaces/store.js index 07b16ff23..a82f6895c 100644 --- a/src/features/workspaces/store.js +++ b/src/features/workspaces/store.js @@ -79,7 +79,7 @@ export default class WorkspacesStore extends FeatureStore { // ========== PUBLIC API ========= // - start(stores, actions) { + @action start(stores, actions) { debug('WorkspacesStore::start'); this.stores = stores; this.actions = actions; @@ -104,7 +104,7 @@ export default class WorkspacesStore extends FeatureStore { // REACTIONS this._freeUserReactions = createReactions([ - this._stopPremiumActionsAndReactions, + this._disablePremiumFeatures, this._openDrawerWithSettingsReaction, this._setFeatureEnabledReaction, this._setIsPremiumFeatureReaction, @@ -123,10 +123,7 @@ export default class WorkspacesStore extends FeatureStore { this.isFeatureActive = true; } - stop() { - super.stop(); - debug('WorkspacesStore::stop'); - this.isFeatureActive = false; + @action reset() { this.activeWorkspace = null; this.nextWorkspace = null; this.workspaceBeingEdited = null; @@ -134,6 +131,13 @@ export default class WorkspacesStore extends FeatureStore { this.isWorkspaceDrawerOpen = false; } + @action stop() { + super.stop(); + debug('WorkspacesStore::stop'); + this.reset(); + this.isFeatureActive = false; + } + filterServicesByActiveWorkspace = (services) => { const { activeWorkspace, isFeatureActive } = this; if (isFeatureActive && activeWorkspace) { @@ -281,6 +285,7 @@ export default class WorkspacesStore extends FeatureStore { }; _activateLastUsedWorkspaceReaction = () => { + debug('_activateLastUsedWorkspaceReaction'); if (!this.activeWorkspace && this.userHasWorkspaces) { const { lastActiveWorkspace } = this.settings; if (lastActiveWorkspace) { @@ -324,10 +329,12 @@ export default class WorkspacesStore extends FeatureStore { }); }; - _stopPremiumActionsAndReactions = () => { + _disablePremiumFeatures = () => { if (!this.isUserAllowedToUseFeature) { + debug('_disablePremiumFeatures'); this._stopActions(this._premiumUserActions); this._stopReactions(this._premiumUserReactions); + this.reset(); } else { this._startActions(this._premiumUserActions); this._startReactions(this._premiumUserReactions); diff --git a/src/stores/lib/Reaction.js b/src/stores/lib/Reaction.js index f2642908f..f8009b7f6 100644 --- a/src/stores/lib/Reaction.js +++ b/src/stores/lib/Reaction.js @@ -13,15 +13,15 @@ export default class Reaction { start() { if (!this.isRunning) { - this.dispose = autorun(() => this.reaction()); - this.isActive = true; + this.dispose = autorun(this.reaction); + this.isRunning = true; } } stop() { if (this.isRunning) { this.dispose(); - this.isActive = false; + this.isRunning = false; } } } -- cgit v1.2.3-70-g09d2 From e32e2746d28edb2132758580684b32fc16008b08 Mon Sep 17 00:00:00 2001 From: Stefan Malzner Date: Fri, 19 Jul 2019 11:35:15 +0200 Subject: bump version to 5.2.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 7bf1f8a4a..bc5079084 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "franz", "productName": "Franz", "appId": "com.meetfranz.franz", - "version": "5.2.0-beta.4", + "version": "5.2.0", "description": "Messaging app for WhatsApp, Slack, Telegram, HipChat, Hangouts and many many more.", "copyright": "adlk x franz - Stefan Malzner", "main": "index.js", -- cgit v1.2.3-70-g09d2 From 42a74e18894f6585dfa70683245bb949e96d0466 Mon Sep 17 00:00:00 2001 From: FranzBot Date: Fri, 19 Jul 2019 09:43:54 +0000 Subject: Automatic i18n update (i18n.meetfranz.com) --- src/i18n/locales/es.json | 20 ++++++++++---------- src/i18n/locales/id.json | 4 ++-- src/i18n/locales/tr.json | 4 ++-- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/i18n/locales/es.json b/src/i18n/locales/es.json index 27f4c7d88..15ade7941 100644 --- a/src/i18n/locales/es.json +++ b/src/i18n/locales/es.json @@ -1,11 +1,11 @@ { - "app.errorHandler.action" : "Recargar", - "app.errorHandler.headline" : "Ha surgido un error", + "app.errorHandler.action" : "Actualizar", + "app.errorHandler.headline" : "Algo salió mal", "feature.announcements.changelog.headline" : "Cambios en Franz {version}", "feature.delayApp.action" : "Consigue una Licencia de Soporte de Franz", - "feature.delayApp.headline" : "Por favor, compra una Licencia de Soporte de Franz para saltar la espera", + "feature.delayApp.headline" : "Por favor compra una Licencia de Soporte de Franz para omitir la espera", "feature.delayApp.text" : "Franz continuará en {seconds} segundos.", - "feature.shareFranz.action.email" : "Envía como correo", + "feature.shareFranz.action.email" : "Enviar como correo", "feature.shareFranz.action.facebook" : "Compartir en Facebook", "feature.shareFranz.action.twitter" : "Compartir en Twitter", "feature.shareFranz.headline" : "¡Juntos mejoramos Franz!", @@ -19,7 +19,7 @@ "global.spellchecking.autodetect.short" : "Automático", "global.spellchecking.language" : "Corrector de ortografía", "import.headline" : "Importa tus servicios de Franz 4", - "import.notSupportedHeadline" : "Servicios no admitidos aún en Franz 5", + "import.notSupportedHeadline" : "Servicios aún no admitidos en Franz 5", "import.skip.label" : "Quiero agregar servicios manualmente", "import.submit.label" : "Importar servicios", "infobar.buttonChangelog" : "¿Qué hay de nuevo?", @@ -43,7 +43,7 @@ "login.serverLogout" : "Tu sesión ha expirado, por favor inicia la sesión de nuevo.", "login.submit.label" : "Iniciar sesión", "login.tokenExpired" : "Tu sesión ha expirado, por favor inicia sesión de nuevo.", - "menu.app.about" : "Sobre Franz", + "menu.app.about" : "Acerca de Franz", "menu.app.announcement" : "¿Qué hay de nuevo?", "menu.app.checkForUpdates" : "Comprobar actualizaciones", "menu.app.hide" : "Ocultar", @@ -70,7 +70,7 @@ "menu.help.changelog" : "Registro de cambios", "menu.help.learnMore" : "Conocer más", "menu.help.privacy" : "Declaración de privacidad", - "menu.help.support" : "Ayuda técnica", + "menu.help.support" : "Soporte", "menu.help.tos" : "Términos del Servicio", "menu.services" : "Servicios", "menu.services.activatePreviousService" : "Activa el servicio previo", @@ -144,7 +144,7 @@ "settings.account.userInfoRequestFailed" : "No se pudo cargar la información de usuario", "settings.app.buttonClearAllCache" : "Limpiar caché", "settings.app.buttonInstallUpdate" : "Reiniciar e instalar actualizaciones", - "settings.app.buttonSearchForUpdate" : "Comprobar actualizaciones", + "settings.app.buttonSearchForUpdate" : "Buscar actualizaciones", "settings.app.cacheInfo" : "El cache de Franz actualmente usa {size} de espacio en disco.", "settings.app.currentVersion" : "Versión actual:", "settings.app.form.autoLaunchInBackground" : "Abrir en segundo plano", @@ -165,7 +165,7 @@ "settings.app.headlineGeneral" : "General", "settings.app.headlineLanguage" : "Idioma", "settings.app.headlineUpdates" : "Actualizaciones", - "settings.app.languageDisclaimer" : "Official translations are English & German. All other languages are community based translations.", + "settings.app.languageDisclaimer" : "Las traducciones oficiales son en inglés y alemán. Todos los demás idiomas son traducciones basadas en la comunidad.", "settings.app.restartRequired" : "Los cambios requieren reiniciar", "settings.app.subheadlineCache" : "Caché", "settings.app.translationHelp" : "Ayúdanos a traducir Franz a tu idioma.", @@ -265,7 +265,7 @@ "settings.workspaces.noWorkspacesAdded" : "You haven't added any workspaces yet.", "settings.workspaces.tryReloadWorkspaces" : "Inténtalo de nuevo", "settings.workspaces.updatedInfo" : "Tus cambios han sido guardados", - "settings.workspaces.workspaceFeatureHeadline" : "Less is More: Introducing Franz Workspaces", + "settings.workspaces.workspaceFeatureHeadline" : "Menos es más: Presentación de Franz Workspaces", "settings.workspaces.workspaceFeatureInfo" : "Franz Workspaces let you focus on what’s important right now. Set up different sets of services and easily switch between them at any time. You decide which services you need when and where, so we can help you stay on top of your game - or easily switch off from work whenever you want.", "settings.workspaces.workspacesRequestFailed" : "Could not load your workspaces", "sidebar.addNewService" : "Añadir nuevo servicio", diff --git a/src/i18n/locales/id.json b/src/i18n/locales/id.json index 819aca177..fb6434869 100644 --- a/src/i18n/locales/id.json +++ b/src/i18n/locales/id.json @@ -10,7 +10,7 @@ "feature.shareFranz.action.twitter" : "Bagikan di Twitter", "feature.shareFranz.headline" : "Franz lebih baik bersama!", "feature.shareFranz.shareText.email" : "Saya telah menambahkan layanan {count} ke Franz! Dapatkan aplikasi gratis untuk WhatsApp, Messenger, Slack, Skype dan co di www.meetfranz.com", - "feature.shareFranz.shareText.twitter" : "I've added {count} services to Franz! Get the free app for WhatsApp, Messenger, Slack, Skype and co at www.meetfranz.com \/cc @FranzMessenger", + "feature.shareFranz.shareText.twitter" : "Saya telah menambahkan {count} layanan di Franz! Dapatkan aplikasi gratis untuk WhatsApp, Messenger, Slack, Skype dan lainnya di www.meetfranz.com \/cc @FranzMessenger", "feature.shareFranz.text" : "Beri tahu teman dan kolega Anda betapa hebatnya Franz dan bantu kami menyebarkan berita.", "global.api.unhealthy" : "Tidak dapat tersambung ke layanan Franz", "global.notConnectedToTheInternet" : "Anda tidak tersambung ke internet.", @@ -144,7 +144,7 @@ "settings.account.userInfoRequestFailed" : "Gagal memuat informasi pengguna", "settings.app.buttonClearAllCache" : "Bersihkan singgahan", "settings.app.buttonInstallUpdate" : "Mulai ulang dan instal versi baru", - "settings.app.buttonSearchForUpdate" : "Periksa versi baru", + "settings.app.buttonSearchForUpdate" : "Periksa pembaruan", "settings.app.cacheInfo" : "Singgahan Franz sedang menggunakan ruang disk {size}.", "settings.app.currentVersion" : "Versi saat ini:", "settings.app.form.autoLaunchInBackground" : "Buka di latar belakang", diff --git a/src/i18n/locales/tr.json b/src/i18n/locales/tr.json index d8200b4f3..1dc5ce838 100644 --- a/src/i18n/locales/tr.json +++ b/src/i18n/locales/tr.json @@ -118,7 +118,7 @@ "service.errorHandler.headline" : "Hayııırrr!", "service.errorHandler.message" : "Hata", "service.errorHandler.text" : "{name} yüklenemedi.", - "service.webviewLoader.loading" : "Loading", + "service.webviewLoader.loading" : "Yükleniyor", "services.getStarted" : "Haydi başlayalım", "services.welcome" : "Franz'a Hoşgeldiniz", "settings.account.account.editButton" : "Hesabı düzenle", @@ -233,7 +233,7 @@ "settings.services.discoverServices" : "Servisleri keşfet", "settings.services.headline" : "Servislerin", "settings.services.noServicesAdded" : "Henüz hiç servis eklemedin.", - "settings.services.servicesRequestFailed" : "Could not load your services", + "settings.services.servicesRequestFailed" : "Hizmetiniz yüklenemedi", "settings.services.tooltip.isDisabled" : "Servis devre dışı", "settings.services.tooltip.isMuted" : "Tüm sesler kapalı", "settings.services.tooltip.notificationsDisabled" : "Bildirimler devre dışı", -- cgit v1.2.3-70-g09d2 From 72d27d2536eebbf20556daeffa5a3568c46768c2 Mon Sep 17 00:00:00 2001 From: Stefan Malzner Date: Fri, 19 Jul 2019 14:58:42 +0200 Subject: Update changelog --- CHANGELOG.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index a0969c2fc..e5af4ccfa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,26 @@ +# [5.2.0](https://github.com/meetfranz/franz/compare/v5.2.0-beta.4...v5.2.0) (2019-07-19) + +### Features +* **Service:** You can now add any custom website 🥳 + +### Bug Fixes + +* **Notifications:** Don't show notification badges when app is muted ([e844a64](https://github.com/meetfranz/franz/commit/e844a64)) +* **Settings:** Fix position of settings window +* **Recipes:** Fix recipe install when directly accessing recipe e.g. via url ([eba50bc](https://github.com/meetfranz/franz/commit/eba50bc)) +* **Proxy:** Fix issue with service proxy authentication ([b9e5b23](https://github.com/meetfranz/franz/commit/b9e5b23)) +* **Announcements:** Fix issue with rendering announcements in workspaces ([1e38ec5](https://github.com/meetfranz/franz/commit/1e38ec5)) +* **Windows:** Add Workspaces menu & fix Window menu ([92a61d4](https://github.com/meetfranz/franz/commit/92a61d4)) +* **Windows:** Replace tray icon with high-res version ([a5eb399](https://github.com/meetfranz/franz/commit/a5eb399)) +* **Workspaces:** Fix service reordering within workspaces ([17f3a22](https://github.com/meetfranz/franz/commit/17f3a22)) +* **Workspaces:** Fix issue with service visibility after downgrade ([05294](https://github.com/meetfranz/franz/commit/05294)) + +### General +* **App:** Improved email validation ([dd8ddcc](https://github.com/meetfranz/franz/commit/dd8ddcc)) ([@Snuggle](https://github.com/Snuggle)) +* **App:** Update electron to 4.2.4 ([404c87a](https://github.com/meetfranz/franz/commit/404c87a)) +* **Translations:** Improved translations. **[A million thanks to the amazing community. 🎉](http://i18n.meetfranz.com/)** + + # [5.2.0-beta.4](https://github.com/meetfranz/franz/compare/v5.2.0-beta.3...v5.2.0-beta.4) (2019-07-01) -- cgit v1.2.3-70-g09d2 From 44c413bca461863cf04442642bac9f68db1b6200 Mon Sep 17 00:00:00 2001 From: Stefan Malzner Date: Tue, 30 Jul 2019 12:08:46 +0200 Subject: fix(Notifications): Fix issue that blocked notifications from e.g. Slack --- src/stores/AppStore.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/stores/AppStore.js b/src/stores/AppStore.js index 72c4b4d0b..bca20a581 100644 --- a/src/stores/AppStore.js +++ b/src/stores/AppStore.js @@ -189,7 +189,7 @@ export default class AppStore extends Store { if (this.stores.settings.all.app.isAppMuted) return; // TODO: is there a simple way to use blobs for notifications without storing them on disk? - if (options.icon.startsWith('blob:')) { + if (options.icon && options.icon.startsWith('blob:')) { delete options.icon; } -- cgit v1.2.3-70-g09d2 From 4666e85de5c40e4cd7fa952a1d1c873a43dc60fb Mon Sep 17 00:00:00 2001 From: Stefan Malzner Date: Tue, 30 Jul 2019 15:33:29 +0200 Subject: feat(App): Add option to copy debug information via the help menu --- src/i18n/locales/defaultMessages.json | 139 ++++++++++++++++++++++------------ src/i18n/locales/en-US.json | 5 +- src/i18n/messages/src/lib/Menu.json | 139 ++++++++++++++++++++++------------ src/lib/Menu.js | 40 +++++++++- src/stores/AppStore.js | 25 +++++- 5 files changed, 245 insertions(+), 103 deletions(-) diff --git a/src/i18n/locales/defaultMessages.json b/src/i18n/locales/defaultMessages.json index d517b456b..eca3062c2 100644 --- a/src/i18n/locales/defaultMessages.json +++ b/src/i18n/locales/defaultMessages.json @@ -4291,328 +4291,367 @@ } }, { - "defaultMessage": "!!!Terms of Service", + "defaultMessage": "!!!Copy Debug Information", "end": { "column": 3, "line": 134 }, "file": "src/lib/Menu.js", + "id": "menu.help.debugInfo", + "start": { + "column": 13, + "line": 131 + } + }, + { + "defaultMessage": "!!!Franz Debug Information", + "end": { + "column": 3, + "line": 138 + }, + "file": "src/lib/Menu.js", + "id": "menu.help.debugInfoCopiedHeadline", + "start": { + "column": 27, + "line": 135 + } + }, + { + "defaultMessage": "!!!Your Debug Information has been copied to your clipboard.", + "end": { + "column": 3, + "line": 142 + }, + "file": "src/lib/Menu.js", + "id": "menu.help.debugInfoCopiedBody", + "start": { + "column": 23, + "line": 139 + } + }, + { + "defaultMessage": "!!!Terms of Service", + "end": { + "column": 3, + "line": 146 + }, + "file": "src/lib/Menu.js", "id": "menu.help.tos", "start": { "column": 7, - "line": 131 + "line": 143 } }, { "defaultMessage": "!!!Privacy Statement", "end": { "column": 3, - "line": 138 + "line": 150 }, "file": "src/lib/Menu.js", "id": "menu.help.privacy", "start": { "column": 11, - "line": 135 + "line": 147 } }, { "defaultMessage": "!!!File", "end": { "column": 3, - "line": 142 + "line": 154 }, "file": "src/lib/Menu.js", "id": "menu.file", "start": { "column": 8, - "line": 139 + "line": 151 } }, { "defaultMessage": "!!!View", "end": { "column": 3, - "line": 146 + "line": 158 }, "file": "src/lib/Menu.js", "id": "menu.view", "start": { "column": 8, - "line": 143 + "line": 155 } }, { "defaultMessage": "!!!Services", "end": { "column": 3, - "line": 150 + "line": 162 }, "file": "src/lib/Menu.js", "id": "menu.services", "start": { "column": 12, - "line": 147 + "line": 159 } }, { "defaultMessage": "!!!Window", "end": { "column": 3, - "line": 154 + "line": 166 }, "file": "src/lib/Menu.js", "id": "menu.window", "start": { "column": 10, - "line": 151 + "line": 163 } }, { "defaultMessage": "!!!Help", "end": { "column": 3, - "line": 158 + "line": 170 }, "file": "src/lib/Menu.js", "id": "menu.help", "start": { "column": 8, - "line": 155 + "line": 167 } }, { "defaultMessage": "!!!About Franz", "end": { "column": 3, - "line": 162 + "line": 174 }, "file": "src/lib/Menu.js", "id": "menu.app.about", "start": { "column": 9, - "line": 159 + "line": 171 } }, { "defaultMessage": "!!!What's new?", "end": { "column": 3, - "line": 166 + "line": 178 }, "file": "src/lib/Menu.js", "id": "menu.app.announcement", "start": { "column": 16, - "line": 163 + "line": 175 } }, { "defaultMessage": "!!!Settings", "end": { "column": 3, - "line": 170 + "line": 182 }, "file": "src/lib/Menu.js", "id": "menu.app.settings", "start": { "column": 12, - "line": 167 + "line": 179 } }, { "defaultMessage": "!!!Check for updates", "end": { "column": 3, - "line": 174 + "line": 186 }, "file": "src/lib/Menu.js", "id": "menu.app.checkForUpdates", "start": { "column": 19, - "line": 171 + "line": 183 } }, { "defaultMessage": "!!!Hide", "end": { "column": 3, - "line": 178 + "line": 190 }, "file": "src/lib/Menu.js", "id": "menu.app.hide", "start": { "column": 8, - "line": 175 + "line": 187 } }, { "defaultMessage": "!!!Hide Others", "end": { "column": 3, - "line": 182 + "line": 194 }, "file": "src/lib/Menu.js", "id": "menu.app.hideOthers", "start": { "column": 14, - "line": 179 + "line": 191 } }, { "defaultMessage": "!!!Unhide", "end": { "column": 3, - "line": 186 + "line": 198 }, "file": "src/lib/Menu.js", "id": "menu.app.unhide", "start": { "column": 10, - "line": 183 + "line": 195 } }, { "defaultMessage": "!!!Quit", "end": { "column": 3, - "line": 190 + "line": 202 }, "file": "src/lib/Menu.js", "id": "menu.app.quit", "start": { "column": 8, - "line": 187 + "line": 199 } }, { "defaultMessage": "!!!Add New Service...", "end": { "column": 3, - "line": 194 + "line": 206 }, "file": "src/lib/Menu.js", "id": "menu.services.addNewService", "start": { "column": 17, - "line": 191 + "line": 203 } }, { "defaultMessage": "!!!Add New Workspace...", "end": { "column": 3, - "line": 198 + "line": 210 }, "file": "src/lib/Menu.js", "id": "menu.workspaces.addNewWorkspace", "start": { "column": 19, - "line": 195 + "line": 207 } }, { "defaultMessage": "!!!Open workspace drawer", "end": { "column": 3, - "line": 202 + "line": 214 }, "file": "src/lib/Menu.js", "id": "menu.workspaces.openWorkspaceDrawer", "start": { "column": 23, - "line": 199 + "line": 211 } }, { "defaultMessage": "!!!Close workspace drawer", "end": { "column": 3, - "line": 206 + "line": 218 }, "file": "src/lib/Menu.js", "id": "menu.workspaces.closeWorkspaceDrawer", "start": { "column": 24, - "line": 203 + "line": 215 } }, { "defaultMessage": "!!!Activate next service...", "end": { "column": 3, - "line": 210 + "line": 222 }, "file": "src/lib/Menu.js", "id": "menu.services.setNextServiceActive", "start": { "column": 23, - "line": 207 + "line": 219 } }, { "defaultMessage": "!!!Activate previous service...", "end": { "column": 3, - "line": 214 + "line": 226 }, "file": "src/lib/Menu.js", "id": "menu.services.activatePreviousService", "start": { "column": 27, - "line": 211 + "line": 223 } }, { "defaultMessage": "!!!Disable notifications & audio", "end": { "column": 3, - "line": 218 + "line": 230 }, "file": "src/lib/Menu.js", "id": "sidebar.muteApp", "start": { "column": 11, - "line": 215 + "line": 227 } }, { "defaultMessage": "!!!Enable notifications & audio", "end": { "column": 3, - "line": 222 + "line": 234 }, "file": "src/lib/Menu.js", "id": "sidebar.unmuteApp", "start": { "column": 13, - "line": 219 + "line": 231 } }, { "defaultMessage": "!!!Workspaces", "end": { "column": 3, - "line": 226 + "line": 238 }, "file": "src/lib/Menu.js", "id": "menu.workspaces", "start": { "column": 14, - "line": 223 + "line": 235 } }, { "defaultMessage": "!!!Default", "end": { "column": 3, - "line": 230 + "line": 242 }, "file": "src/lib/Menu.js", "id": "menu.workspaces.defaultWorkspace", "start": { "column": 20, - "line": 227 + "line": 239 } } ], diff --git a/src/i18n/locales/en-US.json b/src/i18n/locales/en-US.json index e2edbd596..27987e5b7 100644 --- a/src/i18n/locales/en-US.json +++ b/src/i18n/locales/en-US.json @@ -68,6 +68,9 @@ "menu.file": "File", "menu.help": "Help", "menu.help.changelog": "Changelog", + "menu.help.debugInfo": "Copy Debug Information", + "menu.help.debugInfoCopiedBody": "Your Debug Information has been copied to your clipboard.", + "menu.help.debugInfoCopiedHeadline": "Franz Debug Information", "menu.help.learnMore": "Learn More", "menu.help.privacy": "Privacy Statement", "menu.help.support": "Support", @@ -329,4 +332,4 @@ "workspaceDrawer.workspaceFeatureInfo": "

Franz Workspaces let you focus on what’s important right now. Set up different sets of services and easily switch between them at any time.

You decide which services you need when and where, so we can help you stay on top of your game - or easily switch off from work whenever you want.

", "workspaceDrawer.workspacesSettingsTooltip": "Edit workspaces settings", "workspaces.switchingIndicator.switchingTo": "Switching to" -} \ No newline at end of file +} diff --git a/src/i18n/messages/src/lib/Menu.json b/src/i18n/messages/src/lib/Menu.json index daafb0900..6f878cbd1 100644 --- a/src/i18n/messages/src/lib/Menu.json +++ b/src/i18n/messages/src/lib/Menu.json @@ -376,16 +376,55 @@ "column": 3 } }, + { + "id": "menu.help.debugInfo", + "defaultMessage": "!!!Copy Debug Information", + "file": "src/lib/Menu.js", + "start": { + "line": 131, + "column": 13 + }, + "end": { + "line": 134, + "column": 3 + } + }, + { + "id": "menu.help.debugInfoCopiedHeadline", + "defaultMessage": "!!!Franz Debug Information", + "file": "src/lib/Menu.js", + "start": { + "line": 135, + "column": 27 + }, + "end": { + "line": 138, + "column": 3 + } + }, + { + "id": "menu.help.debugInfoCopiedBody", + "defaultMessage": "!!!Your Debug Information has been copied to your clipboard.", + "file": "src/lib/Menu.js", + "start": { + "line": 139, + "column": 23 + }, + "end": { + "line": 142, + "column": 3 + } + }, { "id": "menu.help.tos", "defaultMessage": "!!!Terms of Service", "file": "src/lib/Menu.js", "start": { - "line": 131, + "line": 143, "column": 7 }, "end": { - "line": 134, + "line": 146, "column": 3 } }, @@ -394,11 +433,11 @@ "defaultMessage": "!!!Privacy Statement", "file": "src/lib/Menu.js", "start": { - "line": 135, + "line": 147, "column": 11 }, "end": { - "line": 138, + "line": 150, "column": 3 } }, @@ -407,11 +446,11 @@ "defaultMessage": "!!!File", "file": "src/lib/Menu.js", "start": { - "line": 139, + "line": 151, "column": 8 }, "end": { - "line": 142, + "line": 154, "column": 3 } }, @@ -420,11 +459,11 @@ "defaultMessage": "!!!View", "file": "src/lib/Menu.js", "start": { - "line": 143, + "line": 155, "column": 8 }, "end": { - "line": 146, + "line": 158, "column": 3 } }, @@ -433,11 +472,11 @@ "defaultMessage": "!!!Services", "file": "src/lib/Menu.js", "start": { - "line": 147, + "line": 159, "column": 12 }, "end": { - "line": 150, + "line": 162, "column": 3 } }, @@ -446,11 +485,11 @@ "defaultMessage": "!!!Window", "file": "src/lib/Menu.js", "start": { - "line": 151, + "line": 163, "column": 10 }, "end": { - "line": 154, + "line": 166, "column": 3 } }, @@ -459,11 +498,11 @@ "defaultMessage": "!!!Help", "file": "src/lib/Menu.js", "start": { - "line": 155, + "line": 167, "column": 8 }, "end": { - "line": 158, + "line": 170, "column": 3 } }, @@ -472,11 +511,11 @@ "defaultMessage": "!!!About Franz", "file": "src/lib/Menu.js", "start": { - "line": 159, + "line": 171, "column": 9 }, "end": { - "line": 162, + "line": 174, "column": 3 } }, @@ -485,11 +524,11 @@ "defaultMessage": "!!!What's new?", "file": "src/lib/Menu.js", "start": { - "line": 163, + "line": 175, "column": 16 }, "end": { - "line": 166, + "line": 178, "column": 3 } }, @@ -498,11 +537,11 @@ "defaultMessage": "!!!Settings", "file": "src/lib/Menu.js", "start": { - "line": 167, + "line": 179, "column": 12 }, "end": { - "line": 170, + "line": 182, "column": 3 } }, @@ -511,11 +550,11 @@ "defaultMessage": "!!!Check for updates", "file": "src/lib/Menu.js", "start": { - "line": 171, + "line": 183, "column": 19 }, "end": { - "line": 174, + "line": 186, "column": 3 } }, @@ -524,11 +563,11 @@ "defaultMessage": "!!!Hide", "file": "src/lib/Menu.js", "start": { - "line": 175, + "line": 187, "column": 8 }, "end": { - "line": 178, + "line": 190, "column": 3 } }, @@ -537,11 +576,11 @@ "defaultMessage": "!!!Hide Others", "file": "src/lib/Menu.js", "start": { - "line": 179, + "line": 191, "column": 14 }, "end": { - "line": 182, + "line": 194, "column": 3 } }, @@ -550,11 +589,11 @@ "defaultMessage": "!!!Unhide", "file": "src/lib/Menu.js", "start": { - "line": 183, + "line": 195, "column": 10 }, "end": { - "line": 186, + "line": 198, "column": 3 } }, @@ -563,11 +602,11 @@ "defaultMessage": "!!!Quit", "file": "src/lib/Menu.js", "start": { - "line": 187, + "line": 199, "column": 8 }, "end": { - "line": 190, + "line": 202, "column": 3 } }, @@ -576,11 +615,11 @@ "defaultMessage": "!!!Add New Service...", "file": "src/lib/Menu.js", "start": { - "line": 191, + "line": 203, "column": 17 }, "end": { - "line": 194, + "line": 206, "column": 3 } }, @@ -589,11 +628,11 @@ "defaultMessage": "!!!Add New Workspace...", "file": "src/lib/Menu.js", "start": { - "line": 195, + "line": 207, "column": 19 }, "end": { - "line": 198, + "line": 210, "column": 3 } }, @@ -602,11 +641,11 @@ "defaultMessage": "!!!Open workspace drawer", "file": "src/lib/Menu.js", "start": { - "line": 199, + "line": 211, "column": 23 }, "end": { - "line": 202, + "line": 214, "column": 3 } }, @@ -615,11 +654,11 @@ "defaultMessage": "!!!Close workspace drawer", "file": "src/lib/Menu.js", "start": { - "line": 203, + "line": 215, "column": 24 }, "end": { - "line": 206, + "line": 218, "column": 3 } }, @@ -628,11 +667,11 @@ "defaultMessage": "!!!Activate next service...", "file": "src/lib/Menu.js", "start": { - "line": 207, + "line": 219, "column": 23 }, "end": { - "line": 210, + "line": 222, "column": 3 } }, @@ -641,11 +680,11 @@ "defaultMessage": "!!!Activate previous service...", "file": "src/lib/Menu.js", "start": { - "line": 211, + "line": 223, "column": 27 }, "end": { - "line": 214, + "line": 226, "column": 3 } }, @@ -654,11 +693,11 @@ "defaultMessage": "!!!Disable notifications & audio", "file": "src/lib/Menu.js", "start": { - "line": 215, + "line": 227, "column": 11 }, "end": { - "line": 218, + "line": 230, "column": 3 } }, @@ -667,11 +706,11 @@ "defaultMessage": "!!!Enable notifications & audio", "file": "src/lib/Menu.js", "start": { - "line": 219, + "line": 231, "column": 13 }, "end": { - "line": 222, + "line": 234, "column": 3 } }, @@ -680,11 +719,11 @@ "defaultMessage": "!!!Workspaces", "file": "src/lib/Menu.js", "start": { - "line": 223, + "line": 235, "column": 14 }, "end": { - "line": 226, + "line": 238, "column": 3 } }, @@ -693,11 +732,11 @@ "defaultMessage": "!!!Default", "file": "src/lib/Menu.js", "start": { - "line": 227, + "line": 239, "column": 20 }, "end": { - "line": 230, + "line": 242, "column": 3 } } diff --git a/src/lib/Menu.js b/src/lib/Menu.js index e0dfd736e..22d788918 100644 --- a/src/lib/Menu.js +++ b/src/lib/Menu.js @@ -1,4 +1,4 @@ -import { remote, shell } from 'electron'; +import { remote, shell, clipboard } from 'electron'; import { observable, autorun } from 'mobx'; import { defineMessages } from 'react-intl'; @@ -128,6 +128,18 @@ const menuItems = defineMessages({ id: 'menu.help.support', defaultMessage: '!!!Support', }, + debugInfo: { + id: 'menu.help.debugInfo', + defaultMessage: '!!!Copy Debug Information', + }, + debugInfoCopiedHeadline: { + id: 'menu.help.debugInfoCopiedHeadline', + defaultMessage: '!!!Franz Debug Information', + }, + debugInfoCopiedBody: { + id: 'menu.help.debugInfoCopiedBody', + defaultMessage: '!!!Your Debug Information has been copied to your clipboard.', + }, tos: { id: 'menu.help.tos', defaultMessage: '!!!Terms of Service', @@ -760,6 +772,10 @@ export default class FranzMenu { tpl[4].submenu = this.workspacesMenu(); } + tpl[tpl.length - 1].submenu.push({ + type: 'separator', + }, this.debugMenu()); + this.currentTemplate = tpl; const menu = Menu.buildFromTemplate(tpl); Menu.setApplicationMenu(menu); @@ -870,6 +886,28 @@ export default class FranzMenu { return menu; } + debugMenu() { + const { intl } = window.franz; + + return { + label: intl.formatMessage(menuItems.debugInfo), + click: () => { + const { debugInfo } = this.stores.app; + + clipboard.write({ + text: JSON.stringify(debugInfo), + }); + + this.actions.app.notify({ + title: intl.formatMessage(menuItems.debugInfoCopiedHeadline), + options: { + body: intl.formatMessage(menuItems.debugInfoCopiedBody), + }, + }); + }, + }; + } + _getServiceName(service) { if (service.name) { return service.name; diff --git a/src/stores/AppStore.js b/src/stores/AppStore.js index bca20a581..2ac306a2a 100644 --- a/src/stores/AppStore.js +++ b/src/stores/AppStore.js @@ -8,6 +8,9 @@ import AutoLaunch from 'auto-launch'; import prettyBytes from 'pretty-bytes'; import ms from 'ms'; import { URL } from 'url'; +import os from 'os'; +import path from 'path'; +import { readJsonSync } from 'fs-extra'; import Store from './lib/Store'; import Request from './lib/Request'; @@ -23,7 +26,7 @@ import { isValidExternalURL } from '../helpers/url-helpers'; const debug = require('debug')('Franz:AppStore'); -const { app, systemPreferences } = remote; +const { app, systemPreferences, screen } = remote; const mainWindow = remote.getCurrentWindow(); @@ -182,6 +185,26 @@ export default class AppStore extends Store { return prettyBytes(this.getAppCacheSizeRequest.execute().result || 0); } + @computed get debugInfo() { + return { + host: { + platform: process.platform, + release: os.release(), + screens: screen.getAllDisplays(), + }, + franz: { + version: app.getVersion(), + electron: process.versions.electron, + installedRecipes: this.stores.recipes.all.map(recipe => ({ id: recipe.id, version: recipe.version })), + devRecipes: this.stores.recipePreviews.dev.map(recipe => ({ id: recipe.id, version: recipe.version })), + services: this.stores.services.all.map(service => ({ id: service.id, recipe: service.recipe.id })), + workspaces: this.stores.workspaces.workspaces.map(workspace => ({ id: workspace.id, services: workspace.services })), + windowSettings: readJsonSync(path.join(app.getPath('userData'), 'window-state.json')), + user: this.stores.user.data.id, + }, + }; + } + // Actions @action _notify({ title, options, notificationId, serviceId = null, -- cgit v1.2.3-70-g09d2 From e8961dc5a4f460c8d955a806544fd566fa0291d0 Mon Sep 17 00:00:00 2001 From: Stefan Malzner Date: Tue, 30 Jul 2019 15:35:10 +0200 Subject: bump version to 5.2.1-beta.1 --- CHANGELOG.md | 14 ++++++++++++++ package.json | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e5af4ccfa..da7a6c608 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +## [5.2.1-beta.1](https://github.com/meetfranz/franz/compare/v5.2.0...v5.2.1-beta.1) (2019-07-30) + + +### Bug Fixes + +* **Notifications:** Fix issue that blocked notifications from e.g. Slack ([44c413b](https://github.com/meetfranz/franz/commit/44c413b)) + + +### Features + +* **App:** Add option to copy debug information via the help menu ([4666e85](https://github.com/meetfranz/franz/commit/4666e85)) + + + # [5.2.0](https://github.com/meetfranz/franz/compare/v5.2.0-beta.4...v5.2.0) (2019-07-19) ### Features diff --git a/package.json b/package.json index bc5079084..639d078a0 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "franz", "productName": "Franz", "appId": "com.meetfranz.franz", - "version": "5.2.0", + "version": "5.2.1-beta.1", "description": "Messaging app for WhatsApp, Slack, Telegram, HipChat, Hangouts and many many more.", "copyright": "adlk x franz - Stefan Malzner", "main": "index.js", -- cgit v1.2.3-70-g09d2 From e1e46986d902adc4c19ee009016290f9733a7d61 Mon Sep 17 00:00:00 2001 From: Stefan Malzner Date: Mon, 5 Aug 2019 16:48:25 +0200 Subject: Enable tree shaking for icons --- packages/forms/src/button/index.tsx | 12 ++------- packages/ui/src/badge/ProBadge.tsx | 3 ++- packages/ui/src/icon/index.tsx | 12 +++------ packages/ui/src/infobox/index.tsx | 3 ++- uidev/src/stories/button.stories.tsx | 6 ++--- uidev/src/stories/icon.stories.tsx | 47 +++-------------------------------- uidev/src/stories/infobox.stories.tsx | 17 +++++++------ 7 files changed, 26 insertions(+), 74 deletions(-) diff --git a/packages/forms/src/button/index.tsx b/packages/forms/src/button/index.tsx index 9faedc8f1..b53c2da05 100644 --- a/packages/forms/src/button/index.tsx +++ b/packages/forms/src/button/index.tsx @@ -1,4 +1,3 @@ -import * as mdiIcons from '@mdi/js'; import Icon from '@mdi/react'; import { Theme } from '@meetfranz/theme'; import classnames from 'classnames'; @@ -21,7 +20,7 @@ interface IProps extends IFormField, IWithStyle { stretch?: boolean; loaded?: boolean; busy?: boolean; - icon?: keyof typeof mdiIcons; + icon?: string; href?: string; target?: string; } @@ -175,7 +174,7 @@ class ButtonComponent extends Component { onClick, buttonType, loaded, - icon: iconName, + icon, busy: busyProp, href, target, @@ -185,13 +184,6 @@ class ButtonComponent extends Component { busy, } = this.state; - let icon = ''; - if (iconName && mdiIcons[iconName]) { - icon = mdiIcons[iconName]; - } else if (iconName && !mdiIcons[iconName]) { - console.warn(`Icon '${iconName}' was not found`); - } - let showLoader = false; if (loaded) { showLoader = !loaded; diff --git a/packages/ui/src/badge/ProBadge.tsx b/packages/ui/src/badge/ProBadge.tsx index 612e23210..c18cb4a0c 100644 --- a/packages/ui/src/badge/ProBadge.tsx +++ b/packages/ui/src/badge/ProBadge.tsx @@ -1,3 +1,4 @@ +import { mdiStar } from '@mdi/js'; import { Theme } from '@meetfranz/theme'; import classnames from 'classnames'; import React, { Component } from 'react'; @@ -49,7 +50,7 @@ class ProBadgeComponent extends Component { ])} > { render() { const { classes, - icon: iconName, + icon, size, className, } = this.props; - let icon = ''; - if (iconName && mdiIcons[iconName]) { - icon = mdiIcons[iconName]; - } else if (iconName && !mdiIcons[iconName]) { - console.warn(`Icon '${iconName}' was not found`); + if (!icon) { + console.warn('No Icon specified'); } return ( diff --git a/packages/ui/src/infobox/index.tsx b/packages/ui/src/infobox/index.tsx index 9066a623e..5070ee7ef 100644 --- a/packages/ui/src/infobox/index.tsx +++ b/packages/ui/src/infobox/index.tsx @@ -1,3 +1,4 @@ +import { mdiClose } from '@mdi/js'; import { Theme } from '@meetfranz/theme'; import classnames from 'classnames'; import React, { Component } from 'react'; @@ -192,7 +193,7 @@ class InfoboxComponent extends Component { onClick={this.dismiss.bind(this)} className={classes.close} > - + )} diff --git a/uidev/src/stories/button.stories.tsx b/uidev/src/stories/button.stories.tsx index f7537895c..5c1c9246d 100644 --- a/uidev/src/stories/button.stories.tsx +++ b/uidev/src/stories/button.stories.tsx @@ -1,10 +1,10 @@ +import { mdiInformation } from '@mdi/js'; import { observable } from 'mobx'; import { observer } from 'mobx-react'; import React from 'react'; import injectSheet from 'react-jss'; import { Button, Input } from '@meetfranz/forms'; -import { classes } from 'istanbul-lib-coverage'; import { Classes } from 'jss'; import { storiesOf } from '../stores/stories'; @@ -92,7 +92,7 @@ storiesOf('Button') )) .add('With icon', () => ( )) .add('As link', () => ( @@ -131,7 +131,7 @@ storiesOf('Button')
)), diff --git a/uidev/src/stories/icon.stories.tsx b/uidev/src/stories/icon.stories.tsx index c8e7f8ced..f9aa1635b 100644 --- a/uidev/src/stories/icon.stories.tsx +++ b/uidev/src/stories/icon.stories.tsx @@ -1,53 +1,14 @@ -import { observable } from 'mobx'; -import { observer } from 'mobx-react'; +import { mdiAccountCircle } from '@mdi/js'; import React from 'react'; -import uuid from 'uuid/v4'; import { Icon } from '@meetfranz/ui'; import { storiesOf } from '../stores/stories'; -// interface IStoreArgs { -// value?: boolean; -// checked?: boolean; -// label?: string; -// id?: string; -// name?: string; -// disabled?: boolean; -// error?: string; -// } - -// const createStore = (args?: IStoreArgs) => { -// return observable(Object.assign({ -// id: `element-${uuid()}`, -// name: 'toggle', -// label: 'Label', -// value: true, -// checked: false, -// disabled: false, -// error: '', -// }, args)); -// }; - -// const WithStoreToggle = observer(({ store }: { store: any }) => ( -// <> -// store.checked = !store.checked} -// /> -// -// )); - storiesOf('Icon') .add('Basic', () => ( <> - - - + + + )); diff --git a/uidev/src/stories/infobox.stories.tsx b/uidev/src/stories/infobox.stories.tsx index 144855376..c3442da0d 100644 --- a/uidev/src/stories/infobox.stories.tsx +++ b/uidev/src/stories/infobox.stories.tsx @@ -1,3 +1,4 @@ +import { mdiEarth } from '@mdi/js'; import { observable } from 'mobx'; import { observer } from 'mobx-react'; import React from 'react'; @@ -44,7 +45,7 @@ storiesOf('Infobox') .add('Icon + Dismissable', () => ( @@ -54,7 +55,7 @@ storiesOf('Infobox') .add('With CTA', () => ( @@ -64,7 +65,7 @@ storiesOf('Infobox') .add('With long text', () => ( @@ -74,7 +75,7 @@ storiesOf('Infobox') .add('Secondary', () => ( ( ( ( ( Date: Mon, 5 Aug 2019 16:49:22 +0200 Subject: bump version --- packages/forms/package.json | 4 ++-- packages/ui/package.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/forms/package.json b/packages/forms/package.json index d50f4c756..bb76462d8 100644 --- a/packages/forms/package.json +++ b/packages/forms/package.json @@ -1,6 +1,6 @@ { "name": "@meetfranz/forms", - "version": "1.0.16", + "version": "1.1.0", "description": "React form components for Franz", "main": "lib/index.js", "scripts": { @@ -35,5 +35,5 @@ "react-dom": "16.7.0", "react-jss": "^8.6.1" }, - "gitHead": "9f2ab40b7602bc3df26ebb093b484b9917768f69" + "gitHead": "e1e46986d902adc4c19ee009016290f9733a7d61" } diff --git a/packages/ui/package.json b/packages/ui/package.json index a851ed9cf..4f42b21b5 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -1,6 +1,6 @@ { "name": "@meetfranz/ui", - "version": "0.0.9", + "version": "1.0.0", "description": "React UI components for Franz", "main": "lib/index.js", "scripts": { @@ -34,5 +34,5 @@ "react-dom": "16.7.0", "react-jss": "^8.6.1" }, - "gitHead": "9f2ab40b7602bc3df26ebb093b484b9917768f69" + "gitHead": "e1e46986d902adc4c19ee009016290f9733a7d61" } -- cgit v1.2.3-70-g09d2