diff --git a/CHANGELOG.md b/CHANGELOG.md index 7b1a2b31..047b35ca 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,7 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Make iCloud an opt-in preference. [#227](https://github.com/passepartoutvpn/passepartout-apple/issues/227) - OpenVPN: Endpoint UX. [#332](https://github.com/passepartoutvpn/passepartout-apple/pull/332) -- Convert trusted networks to on-demand activation. [#119](https://github.com/passepartoutvpn/passepartout-apple/issues/119) +- Convert trusted networks to on demand activation. [#119](https://github.com/passepartoutvpn/passepartout-apple/issues/119) ## 2.1.2 (2023-07-06) diff --git a/Passepartout.xcodeproj/xcshareddata/xcschemes/Passepartout.xcscheme b/Passepartout.xcodeproj/xcshareddata/xcschemes/Passepartout.xcscheme index bd8b23a9..abb44c3c 100644 --- a/Passepartout.xcodeproj/xcshareddata/xcschemes/Passepartout.xcscheme +++ b/Passepartout.xcodeproj/xcshareddata/xcschemes/Passepartout.xcscheme @@ -131,6 +131,7 @@ buildConfiguration = "Debug" selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" + language = "it" launchStyle = "0" useCustomWorkingDirectory = "NO" ignoresPersistentStateOnLaunch = "NO" diff --git a/Passepartout/App/Context/AppContext.swift b/Passepartout/App/Context/AppContext.swift index 707f49ab..6a545a04 100644 --- a/Passepartout/App/Context/AppContext.swift +++ b/Passepartout/App/Context/AppContext.swift @@ -125,10 +125,10 @@ private extension AppContext { return true } - // eligibility: reset on-demand rules if no trusted networks + // eligibility: reset on demand rules if no trusted networks func isEligibleForOnDemandRules() -> Bool { guard productManager.isEligible(forFeature: .trustedNetworks) else { - pp_log.warning("Ignore on-demand rules, not eligible for trusted networks") + pp_log.warning("Ignore on demand rules, not eligible for trusted networks") return false } return true diff --git a/Passepartout/App/L10n/Core+L10n.swift b/Passepartout/App/L10n/Core+L10n.swift index 23075897..26d6eea6 100644 --- a/Passepartout/App/L10n/Core+L10n.swift +++ b/Passepartout/App/L10n/Core+L10n.swift @@ -100,7 +100,6 @@ extension Profile.WireGuardSettings: StyledOptionalLocalizableEntity { extension Profile.OnDemand.Policy: LocalizableEntity { public var localizedDescription: String { - // FIXME: l10n, on-demand switch self { case .any: return L10n.OnDemand.Policy.any diff --git a/Passepartout/App/L10n/WireGuard+L10n.swift b/Passepartout/App/L10n/WireGuard+L10n.swift index 4610e5e8..8a1dfc96 100644 --- a/Passepartout/App/L10n/WireGuard+L10n.swift +++ b/Passepartout/App/L10n/WireGuard+L10n.swift @@ -42,7 +42,7 @@ extension WireGuard.ConfigurationBuilder: StyledOptionalLocalizableEntity { private extension UInt16 { var keepAliveDescription: String { - // FIXME: l10n, move from OpenVPN to shared + // TODO: l10n, move from OpenVPN to shared let V = L10n.Endpoint.Advanced.Openvpn.Items.self if self > 0 { return V.KeepAlive.Value.seconds(Int(self)) diff --git a/Passepartout/App/Managers/UpgradeManagerStrategy.swift b/Passepartout/App/Managers/UpgradeManagerStrategy.swift index 65c80003..87b42f38 100644 --- a/Passepartout/App/Managers/UpgradeManagerStrategy.swift +++ b/Passepartout/App/Managers/UpgradeManagerStrategy.swift @@ -28,5 +28,6 @@ import PassepartoutCore public protocol UpgradeManagerStrategy { func migrate(store: KeyValueStore, lastVersion: String?) + func migrateData() } diff --git a/Passepartout/App/Views/EndpointView+OpenVPN.swift b/Passepartout/App/Views/EndpointView+OpenVPN.swift index 9c7c63af..27ace603 100644 --- a/Passepartout/App/Views/EndpointView+OpenVPN.swift +++ b/Passepartout/App/Views/EndpointView+OpenVPN.swift @@ -92,7 +92,6 @@ private extension EndpointView.OpenVPNView { Section { Toggle(L10n.Global.Strings.automatic, isOn: $isAutomatic.themeAnimation()) } footer: { - // FIXME: l10n, endpoint themeErrorMessage(isManualEndpointRequired ? L10n.Endpoint.Errors.endpointRequired : nil) } } diff --git a/Passepartout/App/Views/OnDemandView.swift b/Passepartout/App/Views/OnDemandView.swift index 8efef1c2..99e9aa93 100644 --- a/Passepartout/App/Views/OnDemandView.swift +++ b/Passepartout/App/Views/OnDemandView.swift @@ -69,7 +69,6 @@ private extension OnDemandView { Toggle(L10n.Global.Strings.enabled, isOn: $onDemand.isEnabled.themeAnimation()) if onDemand.isEnabled { themeTextPicker( - // FIXME: l10n, on-demand L10n.Global.Strings.policy, selection: $onDemand.policy, values: [.any, .including, .excluding], @@ -81,7 +80,6 @@ private extension OnDemandView { } } - // FIXME: l10n, on-demand var policyFooterDescription: String { guard onDemand.isEnabled else { return "" // better animation than removing footer completely @@ -92,13 +90,11 @@ private extension OnDemandView { suffix = L10n.OnDemand.Sections.Policy.Footer.any case .including, .excluding: - let arg: String if onDemand.policy == .including { - arg = L10n.OnDemand.Sections.Policy.Footer.including + suffix = L10n.OnDemand.Sections.Policy.Footer.including } else { - arg = L10n.OnDemand.Sections.Policy.Footer.excluding + suffix = L10n.OnDemand.Sections.Policy.Footer.excluding } - suffix = L10n.OnDemand.Sections.Policy.Footer.matching(arg) } return L10n.OnDemand.Sections.Policy.footer(suffix) } @@ -109,14 +105,12 @@ private extension OnDemandView { Section { Toggle(L10n.OnDemand.Items.Mobile.caption, isOn: $onDemand.withMobileNetwork) } header: { - // FIXME: l10n, on-demand Text(L10n.Global.Strings.networks) } } else if Utils.hasEthernet() { Section { Toggle(L10n.OnDemand.Items.Ethernet.caption, isOn: $onDemand.withEthernetNetwork) } header: { - // FIXME: l10n, on-demand Text(L10n.Global.Strings.networks) } } diff --git a/Passepartout/App/de.lproj/Localizable.strings b/Passepartout/App/de.lproj/Localizable.strings index afb91241..c808f508 100644 --- a/Passepartout/App/de.lproj/Localizable.strings +++ b/Passepartout/App/de.lproj/Localizable.strings @@ -4,6 +4,25 @@ // // Created by Davide De Rosa on 6/13/18. // Copyright (c) 2023 Davide De Rosa. All rights reserved. +"global.strings.policy" = "Richtlinie"; +"global.strings.networks" = "Netzwerke"; +"global.strings.edit" = "Bearbeiten"; +"global.strings.unknown" = "Unbekannt"; +/* MARK: ProfileView -> EndpointView */ + +"endpoint.errors.endpoint_required" = "Bitte einen Endpunkt"; + +"on_demand.sections.policy.footer.any" = "in einem beliebigen Netzwerk auswählen"; +"on_demand.sections.policy.footer.including" = "innerhalb der unten stehenden Netzwerke auswählen"; +"on_demand.sections.policy.footer.excluding" = "außerhalb der unten stehenden Netzwerke auswählen"; +"on_demand.policy.any" = "Alle Netzwerke"; +"on_demand.policy.including" = "Einschließlich"; +"on_demand.policy.excluding" = "Ausschließlich"; + +"settings.sections.icloud.footer" = "Deaktiviere zum Löschen die Synchronisierung. Tue dies auf allen synchronisierten Geräten, um den iCloud-Store sicher zu löschen. Lokale Profile sind davon nicht betroffen."; +"settings.items.should_enable_cloud_syncing.caption" = "Mit iCloud synchronisieren"; +"settings.items.erase_cloud_store.caption" = "iCloud-Store löschen"; + /* MARK: Global */ "global.strings.cancel" = "Abbrechen"; @@ -202,7 +221,6 @@ "account.sections.guidance.footer.infrastructure.windscribe" = "Deine Zugangsdaten für %@ findest du im OpenVPN Config Generator auf der Webseite."; /* MARK: ProfileView -> EndpointView */ - "endpoint.wireguard.items.peer.caption" = "Peer"; "endpoint.wireguard.items.preshared_key.caption" = "Vorinstallierter Key"; "endpoint.wireguard.items.allowed_ip.caption" = "Zulässige IP"; @@ -249,15 +267,14 @@ /* MARK: ProfileView -> OnDemandView */ -"on_demand.title" = "Vertrauenswürdige Netzwerke"; -"on_demand.sections.policy.footer" = "Wenn ein vertrauenswürdiges Netzwerk verbunden wird, wird normalerweise die VPN-Verbindung beendet und bleibt deaktiviert. Deaktiviere diese Option um dieses Verhalten zu unterbinden."; +"on_demand.title" = "On-demand"; +"on_demand.sections.policy.footer" = "VPN %@ aktivieren."; "on_demand.items.add_ssid.caption" = "WLAN hinzufügen"; "on_demand.items.active.caption" = "Vertrauen"; "on_demand.items.mobile.caption" = "Mobilfunknetz"; -"on_demand.items.ethernet.caption" = "Kabelverbindungen vertrauen"; -"on_demand.items.ethernet.description" = "Hier ein Häkchen setzen, um jeder Kabelverbindung zu vertrauen."; -"on_demand.items.policy.caption" = "Vertrauen deaktiviert VPN"; +"on_demand.items.ethernet.caption" = "Kabelverbindungen"; +"on_demand.items.policy.caption" = "Vertrauen deaktiviert VPN"; /* MARK: ProfileView -> DiagnosticsView */ "diagnostics.title" = "Diagnose"; diff --git a/Passepartout/App/el.lproj/Localizable.strings b/Passepartout/App/el.lproj/Localizable.strings index 95c55242..adab4798 100644 --- a/Passepartout/App/el.lproj/Localizable.strings +++ b/Passepartout/App/el.lproj/Localizable.strings @@ -4,6 +4,25 @@ // // Created by Davide De Rosa on 6/13/18. // Copyright (c) 2023 Davide De Rosa. All rights reserved. +"global.strings.policy" = "Πολιτική"; +"global.strings.networks" = "Δίκτυα"; +"global.strings.edit" = "Επεξεργασία"; +"global.strings.unknown" = "Άγνωστο"; +/* MARK: ProfileView -> EndpointView */ + +"endpoint.errors.endpoint_required" = "Επιλέξτε ένα καταληκτικό σημείο"; + +"on_demand.sections.policy.footer.any" = "σε οποιοδήποτε δίκτυο"; +"on_demand.sections.policy.footer.including" = "μόνο στα παρακάτω δίκτυα"; +"on_demand.sections.policy.footer.excluding" = "εκτός από τα παρακάτω δίκτυα"; +"on_demand.policy.any" = "Όλα τα δίκτυα"; +"on_demand.policy.including" = "Συμπερίληψη"; +"on_demand.policy.excluding" = "Αποκλεισμός"; + +"settings.sections.icloud.footer" = "Απενεργοποιήστε τον συγχρονισμό για να επιτραπεί η διαγραφή. Για να διαγράψετε το κατάστημα iCloud με ασφάλεια, κάντε το σε όλες τις συγχρονισμένες συσκευές σας. Αυτό δεν θα επηρεάσει τα τοπικά προφίλ."; +"settings.items.should_enable_cloud_syncing.caption" = "Συγχρονισμός με iCloud"; +"settings.items.erase_cloud_store.caption" = "Διαγραφή καταστήματος iCloud"; + /* MARK: Global */ "global.strings.cancel" = "Ακύρωση"; @@ -202,7 +221,6 @@ "account.sections.guidance.footer.infrastructure.windscribe" = "Βρείτε τα διαπιστευτήριά σας %@ στο OpenVPN Config Generator στον ιστότοπο."; /* MARK: ProfileView -> EndpointView */ - "endpoint.wireguard.items.peer.caption" = "Ομότιμο"; "endpoint.wireguard.items.preshared_key.caption" = "Κλειδί προδιαμοιρασμού"; "endpoint.wireguard.items.allowed_ip.caption" = "Επιτρεπόμενη IP"; @@ -249,15 +267,14 @@ /* MARK: ProfileView -> OnDemandView */ -"on_demand.title" = "Αξιόπιστα δίκτυα"; -"on_demand.sections.policy.footer" = "Κατά την είσοδο σε ένα αξιόπιστο δίκτυο, το VPN απενεργοποιείται κανονικά και διατηρείται αποσυνδεδεμένο. Απενεργοποιήστε αυτήν την επιλογή για να μην έχετε μια τέτοια συμπεριφορά."; +"on_demand.title" = "Κατά παραγγελία"; +"on_demand.sections.policy.footer" = "Ενεργοποιήστε το VPN %@."; "on_demand.items.add_ssid.caption" = "Προσθέστε Wi-Fi"; "on_demand.items.active.caption" = "Εμπιστευθείτε"; "on_demand.items.mobile.caption" = "Δίκτυο Κινητής"; -"on_demand.items.ethernet.caption" = "Εμπιστευθείτε τις ενσύρματες συνδέσεις"; -"on_demand.items.ethernet.description" = "Επιλέξτε για να εμπιστευθείτε οποιαδήποτε ενσύρματη σύνδεση καλωδίου."; -"on_demand.items.policy.caption" = "Τα αξιόπιστα δίκτυα απενεργοποιούν το VPN"; +"on_demand.items.ethernet.caption" = "Ενσύρματες συνδέσεις"; +"on_demand.items.policy.caption" = "Τα αξιόπιστα δίκτυα απενεργοποιούν το VPN"; /* MARK: ProfileView -> DiagnosticsView */ "diagnostics.title" = "Διαγνωστικά"; diff --git a/Passepartout/App/en.lproj/Localizable.strings b/Passepartout/App/en.lproj/Localizable.strings index 5279451e..5f0c9242 100644 --- a/Passepartout/App/en.lproj/Localizable.strings +++ b/Passepartout/App/en.lproj/Localizable.strings @@ -4,6 +4,25 @@ // // Created by Davide De Rosa on 6/13/18. // Copyright (c) 2023 Davide De Rosa. All rights reserved. +"global.strings.policy" = "Policy"; +"global.strings.networks" = "Networks"; +"global.strings.edit" = "Edit"; +"global.strings.unknown" = "Unknown"; +/* MARK: ProfileView -> EndpointView */ + +"endpoint.errors.endpoint_required" = "Please select an endpoint"; + +"on_demand.sections.policy.footer.any" = "in any network"; +"on_demand.sections.policy.footer.including" = "only in the networks below"; +"on_demand.sections.policy.footer.excluding" = "except in the networks below"; +"on_demand.policy.any" = "All networks"; +"on_demand.policy.including" = "Include"; +"on_demand.policy.excluding" = "Exclude"; + +"settings.sections.icloud.footer" = "Disable sync to allow erase. To erase the iCloud store securely, do so on all your synced devices. This will not affect local profiles."; +"settings.items.should_enable_cloud_syncing.caption" = "Sync with iCloud"; +"settings.items.erase_cloud_store.caption" = "Erase iCloud store"; + /* MARK: Global */ "global.strings.cancel" = "Cancel"; @@ -51,10 +70,6 @@ "global.strings.disconnect" = "Disconnect"; "global.strings.download" = "Download"; "global.strings.authentication" = "Authentication"; -"global.strings.policy" = "Policy"; -"global.strings.networks" = "Networks"; -"global.strings.edit" = "Edit"; -"global.strings.unknown" = "Unknown"; "global.messages.unlock_app" = "Passepartout is locked"; "global.messages.email_not_configured" = "No e-mail account is configured."; "global.messages.share" = "Passepartout is a user-friendly, open source OpenVPN / WireGuard client for iOS and macOS"; @@ -206,9 +221,6 @@ "account.sections.guidance.footer.infrastructure.windscribe" = "Find your %@ credentials in the OpenVPN Config Generator on the website."; /* MARK: ProfileView -> EndpointView */ - -"endpoint.errors.endpoint_required" = "Please select an endpoint"; - "endpoint.wireguard.items.peer.caption" = "Peer"; "endpoint.wireguard.items.preshared_key.caption" = "Preshared key"; "endpoint.wireguard.items.allowed_ip.caption" = "Allowed IP"; @@ -255,21 +267,14 @@ /* MARK: ProfileView -> OnDemandView */ -"on_demand.title" = "On-demand"; +"on_demand.title" = "On demand"; "on_demand.sections.policy.footer" = "Activate the VPN %@."; -"on_demand.sections.policy.footer.any" = "in any network"; -"on_demand.sections.policy.footer.matching" = "%@ the networks below"; -"on_demand.sections.policy.footer.including" = "only in"; -"on_demand.sections.policy.footer.excluding" = "except in"; "on_demand.items.add_ssid.caption" = "Add Wi-Fi"; +"on_demand.items.active.caption" = "Trust"; "on_demand.items.mobile.caption" = "Cellular network"; "on_demand.items.ethernet.caption" = "Wired connections"; -"on_demand.items.ethernet.description" = "Check to match any wired cable connection."; - -"on_demand.policy.any" = "All networks"; -"on_demand.policy.including" = "Include"; -"on_demand.policy.excluding" = "Exclude"; +"on_demand.items.policy.caption" = "Trust disables VPN"; /* MARK: ProfileView -> DiagnosticsView */ "diagnostics.title" = "Diagnostics"; @@ -332,10 +337,7 @@ /* MARK: SettingsView */ "settings.title" = "Settings"; -"settings.sections.icloud.footer" = "Disable sync to allow erase. To erase the iCloud store securely, do so on all your synced devices. This will not affect local profiles."; "settings.items.locks_in_background.caption" = "Lock app access"; -"settings.items.should_enable_cloud_syncing.caption" = "Sync with iCloud"; -"settings.items.erase_cloud_store.caption" = "Erase iCloud store"; "settings.items.donate.caption" = "Make a donation"; /* MARK: AboutView */ diff --git a/Passepartout/App/es.lproj/Localizable.strings b/Passepartout/App/es.lproj/Localizable.strings index ac9e204e..0ec7fb89 100644 --- a/Passepartout/App/es.lproj/Localizable.strings +++ b/Passepartout/App/es.lproj/Localizable.strings @@ -4,6 +4,25 @@ // // Created by Davide De Rosa on 6/13/18. // Copyright (c) 2023 Davide De Rosa. All rights reserved. +"global.strings.policy" = "Política"; +"global.strings.networks" = "Redes"; +"global.strings.edit" = "Modificar"; +"global.strings.unknown" = "Desconocido"; +/* MARK: ProfileView -> EndpointView */ + +"endpoint.errors.endpoint_required" = "Seleccionar un extremo"; + +"on_demand.sections.policy.footer.any" = "en cualquier red"; +"on_demand.sections.policy.footer.including" = "sólo en las redes abajo"; +"on_demand.sections.policy.footer.excluding" = "excepto en las redes abajo"; +"on_demand.policy.any" = "Todas las redes"; +"on_demand.policy.including" = "Incluir"; +"on_demand.policy.excluding" = "Excluir"; + +"settings.sections.icloud.footer" = "Deshabilitar la sincronización para esta operación. Para borrar el store iCloud, repetir en todos los dispositivos sincronizados. Esto no afectará los perfiles locales."; +"settings.items.should_enable_cloud_syncing.caption" = "Sincronizar con iCloud"; +"settings.items.erase_cloud_store.caption" = "Borrar store iCloud"; + /* MARK: Global */ "global.strings.cancel" = "Cancelar"; @@ -202,7 +221,6 @@ "account.sections.guidance.footer.infrastructure.windscribe" = "Encuentra tus credenciales %@ en el \"OpenVPN Config Generator\" en la web."; /* MARK: ProfileView -> EndpointView */ - "endpoint.wireguard.items.peer.caption" = "Peer"; "endpoint.wireguard.items.preshared_key.caption" = "Clave previamente compartida"; "endpoint.wireguard.items.allowed_ip.caption" = "IP permitida"; @@ -249,15 +267,14 @@ /* MARK: ProfileView -> OnDemandView */ -"on_demand.title" = "Redes de confianza"; -"on_demand.sections.policy.footer" = "Entrando en una red de confianza, normalmente el VPN es cerrado y mantenido desconectado. Deshabilitar esta opción para no forzar este modo."; +"on_demand.title" = "On demand"; +"on_demand.sections.policy.footer" = "Activar la VPN %@."; "on_demand.items.add_ssid.caption" = "Añadir Wi-Fi"; "on_demand.items.active.caption" = "Confianza"; "on_demand.items.mobile.caption" = "Red móvil"; -"on_demand.items.ethernet.caption" = "Confiar en conexiones cableadas"; -"on_demand.items.ethernet.description" = "Activa esta opción para confiar en cualquier conexión cableada."; -"on_demand.items.policy.caption" = "Red de confianza deshabilita el VPN"; +"on_demand.items.ethernet.caption" = "Conexiones cableadas"; +"on_demand.items.policy.caption" = "Red de confianza deshabilita el VPN"; /* MARK: ProfileView -> DiagnosticsView */ "diagnostics.title" = "Diagnósticos"; diff --git a/Passepartout/App/fastlane/ios/metadata/de-DE/description.txt b/Passepartout/App/fastlane/ios/metadata/de-DE/description.txt index b000c96f..53fd8212 100644 --- a/Passepartout/App/fastlane/ios/metadata/de-DE/description.txt +++ b/Passepartout/App/fastlane/ios/metadata/de-DE/description.txt @@ -1,7 +1,5 @@ Passepartout ist ein smarter VPN client der perfekt in die Apple-Plattform integriert ist. Passepartout ist die einzige App, die du brauchst um gängige VPN-Anbieter als auch deinen persönlichen VPN-Server zu nutzen. -Mit vertrauenswürdigen Netzwerken, eröffnet Passepartout die besten Möglichkeiten ein VPN zu nutzen. - Passepartout erzeugt keinerlei ungewollte Hintergrundaktivitäten außer dem VPN-Tunnel und ist daher sehr Firewall-freundlich. Passepartout ist Open Source: https://github.com/passepartoutvpn @@ -28,7 +26,7 @@ EINFACH ZU BENUTZEN - Unglaublich einfach zu benutzen, natives Aussehen und Integration. - Verwalte alle Profile an einem Platz. - Importiere .ovpn / .conf Konfigurationsdateien. -- Verwenden vertrauenswürdige Netzwerke, für fein einstellbare Konnektivität. +- Verwenden On-demand-Regeln, um deine Verbindung zu optimieren. - Feintune die Verschlüsselung ohne Änderungen an der Konfigurationsdatei. - Netzwerkeinstellungen schnell übersteuern (Standart-Gateway, DNS, Proxy, MTU). diff --git a/Passepartout/App/fastlane/ios/metadata/el/description.txt b/Passepartout/App/fastlane/ios/metadata/el/description.txt index d49b9eb5..eb0a827e 100644 --- a/Passepartout/App/fastlane/ios/metadata/el/description.txt +++ b/Passepartout/App/fastlane/ios/metadata/el/description.txt @@ -1,7 +1,5 @@ Το Passepartout είναι ένας έξυπνος πελάτης VPN που είναι απόλυτα ενσωματωμένος στις πλατφόρμες Apple. Το Passepartout είναι η μόνη εφαρμογή που χρειάζεστε για τους δύο γνωστούς παρόχους VPN και τους προσωπικούς σας διακομιστές VPN. -Με τα Αξιόπιστα Δίκτυα, η Passepartout ξεκλειδώνει το καλύτερο από τη χρήση ενός VPN στο iOS. - Το Passepartout δεν εμπλέκεται σε οποιαδήποτε δραστηριότητα στο παρασκήνιο εκτός από τη σύνδεση για το VPN και έτσι είναι πιο φιλική προς τα τείχη προστασίας. To Passepartout βασίζεται σε ανοιχτό κώδικα: https://github.com/passepartoutvpn @@ -28,7 +26,7 @@ To Passepartout βασίζεται σε ανοιχτό κώδικα: https://git - Απίστευτη ευκολία χρήσης, με φυσική εμφάνιση και αίσθηση. - Χειριστείτε τα προφίλ σας σε ένα μόνο μέρος. - Εισαγωγή αρχείων ρυθμίσεων .ovpn / .conf. -- Χρησιμοποιήστε Αξιόπιστα Δίκτυα για να τελειοποιήσετε τη συνδεσιμότητά σας. +- Χρησιμοποιήστε δίκτυα κατά παραγγελία για τελειοποίηση της συνδεσιμότητάς σας. - Ρυθμίστε την κρυπτογράφηση χωρίς να τροποποιήσετε οποιοδήποτε αρχείο ρυθμίσεων. - Παρακάμψετε τις ρυθμίσεις δικτύου με ένα πρόγραμμα (default gateway, DNS, proxy, MTU). diff --git a/Passepartout/App/fastlane/ios/metadata/en-US/description.txt b/Passepartout/App/fastlane/ios/metadata/en-US/description.txt index fe8cde78..9dcda7d0 100644 --- a/Passepartout/App/fastlane/ios/metadata/en-US/description.txt +++ b/Passepartout/App/fastlane/ios/metadata/en-US/description.txt @@ -1,7 +1,5 @@ Passepartout is a smart VPN client perfectly integrated with Apple platforms. Passepartout is the only app you need for both well-known VPN providers and your personal VPN servers. -With Trusted Networks, Passepartout unlocks the very best of using a VPN. - Passepartout does not engage any unrequested background activity other than the VPN tunnel, thus being also friendlier to firewalls. Passepartout is open source: https://github.com/passepartoutvpn @@ -28,7 +26,7 @@ EASY TO USE - Incredible ease of use, with native look & feel. - Handle your profiles in one single place. - Import .ovpn / .conf configuration files. -- Use Trusted Networks to fine-grain your connectivity. +- Use on demand rules to fine-grain your connectivity. - Fine-tune encryption without tweaking any configuration file. - Override network settings in a snap (default gateway, DNS, proxy, MTU). diff --git a/Passepartout/App/fastlane/ios/metadata/es-MX/description.txt b/Passepartout/App/fastlane/ios/metadata/es-MX/description.txt index aced2820..aedf7a34 100644 --- a/Passepartout/App/fastlane/ios/metadata/es-MX/description.txt +++ b/Passepartout/App/fastlane/ios/metadata/es-MX/description.txt @@ -1,7 +1,5 @@ Passepartout es un cliente VPN inteligente perfectamente integrado con las plataformas Apple. Passepartout es la única aplicación que necesitas para conectarte con proveedores VPN conocidos o con tu propio servidor VPN. -Con las Redes de Confianza, Passepartout saca lo mejor a la hora de usar un VPN. - Passepartout no mantiene ninguna actividad en segundo plano que no sea el túnel VPN, siendo así compatible con los cortafuegos. Passepartout tiene código abierto: https://github.com/passepartoutvpn @@ -28,7 +26,7 @@ FÁCIL DE USAR - Increíble facilidad de uso, con aspecto nativo. - Gestiona tus perfiles en una sola pantalla. - Importa ficheros de configuración .ovpn / .conf. -- Usa las redes de confianza para refinar tu conectividad. +- Usa las reglas on demand para refinar tu conectividad. - Configura el cifrado sin retocar ningún fichero de configuración. - Sobrescribe los ajustes de red en un chasquido (puerta de enlace, DNS, proxy, MTU). diff --git a/Passepartout/App/fastlane/ios/metadata/fr-FR/description.txt b/Passepartout/App/fastlane/ios/metadata/fr-FR/description.txt index 1efb5dc4..6937386d 100644 --- a/Passepartout/App/fastlane/ios/metadata/fr-FR/description.txt +++ b/Passepartout/App/fastlane/ios/metadata/fr-FR/description.txt @@ -1,7 +1,5 @@ Passepartout est un client VPN parfaitement intégré avec les plateformes Apple. Passepartout est le seul app dont vous aurez besoin, autant pour les fournisseurs connu VPN, que pour vos serveurs VPN privés. -Avec les réseaux de confiance, Passepartout ouvre toutes les possibilités d'utiliser un VPN. - Passepartout n'engage pas de requêtes non requises en arrière-plan, autre que le tunnel VPN, ce qui le rend plus accessible avec les coupe-feu. Passepartout est open source: https://github.com/passepartoutvpn @@ -28,7 +26,7 @@ FACILE D'UTILISATION - Utilisation très simple, look natif iOS. - Gérez vos profils en un seul endroit. - Importez les fichiers de configuration .ovpn / .conf. -- Usez les réseaux de confiance pour peaufiner vos connections. +- Utilisez les règles sur demande pour parfaire votre connexion. - Affinez l'encryption sans modifier les fichiers de configuration. - Outrepassez les paramètres réseaux en un clin d'oeil (passerelle par défaut, DNS, proxy, MTU). diff --git a/Passepartout/App/fastlane/ios/metadata/it/description.txt b/Passepartout/App/fastlane/ios/metadata/it/description.txt index 41780558..bc97af8f 100644 --- a/Passepartout/App/fastlane/ios/metadata/it/description.txt +++ b/Passepartout/App/fastlane/ios/metadata/it/description.txt @@ -1,7 +1,5 @@ Passepartout è un client VPN intelligente perfettamente integrato con le piattaforme Apple. Passepartout è l'unica app di cui hai bisogno sia per provider VPN conosciuti che per i tuoi server VPN personali. -Con le Reti Sicure, Passepartout è il modo migliore di usare una VPN. - Passepartout non avvia in background nessuna attività non richiesta che non sia la VPN, essendo per questo motivo anche più congeniale ai firewall. Passepartout è open source: https://github.com/passepartoutvpn @@ -28,7 +26,7 @@ FACILE DA USARE - Incredibilmente semplice, con look nativo. - Gestisci i tuoi profili in una singola schermata. - Importa file di configurazione .ovpn / .conf. -- Usa le reti sicure per personalizzare la tua connettività. +- Usa le regole on demand per personalizzare la tua connettività. - Regola la crittografia senza toccare alcun file di configurazione. - Sovrascrivi le impostazioni di rete in un attimo (gateway predefinito, DNS, proxy, MTU). diff --git a/Passepartout/App/fastlane/ios/metadata/nl-NL/description.txt b/Passepartout/App/fastlane/ios/metadata/nl-NL/description.txt index bcbf3b42..c2d921b8 100644 --- a/Passepartout/App/fastlane/ios/metadata/nl-NL/description.txt +++ b/Passepartout/App/fastlane/ios/metadata/nl-NL/description.txt @@ -1,7 +1,5 @@ Passepartout is een slimme VPN-client die perfect is geïntegreerd in Apple-platformen. Passepartout is de enige app die je nodig hebt voor zowel bekende VPN-providers als je eigen VPN-servers. -Met Trusted Networks haal je met Passepartout het meest uit het gebruik van een VPN. - Passepartout neemt geen andere ongevraagde achtergrondactiviteit op dan de VPN-tunnel en is hierdoor ook vriendelijker voor firewalls. Passepartout is open source: https://github.com/passepartoutvpn @@ -28,7 +26,7 @@ GEBRUIKSVRIENDELIJK - Ongelooflijk gebruiksgemak, met native look & feel. - Beheer je profielen op één plek. - Importeer .ovpn / .conf-configuratiebestanden. -- Gebruik Trusted Networks om je connectiviteit nauwkeurig af te stellen. +- Gebruik on-demand regels om uw connectiviteit te verfijnen. - Verfijn de codering zonder configuratiebestanden te hoeven aanpassen. - Overschrijf netwerkinstellingen in een flits (standaard poortadres, DNS, proxy, MTU). diff --git a/Passepartout/App/fastlane/ios/metadata/pl/description.txt b/Passepartout/App/fastlane/ios/metadata/pl/description.txt index 67367d4c..6d53457d 100644 --- a/Passepartout/App/fastlane/ios/metadata/pl/description.txt +++ b/Passepartout/App/fastlane/ios/metadata/pl/description.txt @@ -1,7 +1,5 @@ Passepartout jest inteligentnym klientem VPN, perfekcyjnie zintegrowanym z platformami systemu iOS. Passepartout to jedyna aplikacja, jakiej potrzebujesz do łączenia przez renomowanych dostawców VPN i swoje prywatne serwery VPN. -Dzięki funkcji Zaufanych Sieci Passepartout zapewnia wszystko, co najlepsze w korzystaniu z VPN w systemie iOS. - Passepartout nie wykonuje żadnych niepożądanych działań w tle poza łączeniem z tunelem VPN, dzięki czemu jest również bardziej przyjazna dla firewalli. Passepartout jest aplikacją typu open source: https://github.com/passepartoutvpn @@ -25,10 +23,11 @@ Passepartout oferuje gotowe konfiguracje najważniejszych dostawców VPN: ŁATWOŚĆ OBSŁUGI -- Niesamowita łatwość użytkowania dzięki natywnej szacie graficznej i funkcjonalnościom. -- Obsługa wszystkich profili w jednym miejscu +- Niesamowita łatwość użytkowania dzięki natywnej szacie graficznej i funkcjonalnościom. +- Obsługa wszystkich profili w jednym miejscu. - Import plików konfiguracyjnych .ovpn / .conf -- Optymalne szyfrowanie bez konieczności modyfikowania pliku konfiguracyjnego +- Użyj reguł na żądanie, aby doprecyzować swoją łączność. +- Optymalne szyfrowanie bez konieczności modyfikowania pliku konfiguracyjnego. - Błyskawiczne zastępowanie ustawień sieciowych (domyślna bramka), DNS, proxy, MTU. PRZYJAZNA PRYWATNOŚCI diff --git a/Passepartout/App/fastlane/ios/metadata/pt-BR/description.txt b/Passepartout/App/fastlane/ios/metadata/pt-BR/description.txt index 377e9304..5545f71d 100644 --- a/Passepartout/App/fastlane/ios/metadata/pt-BR/description.txt +++ b/Passepartout/App/fastlane/ios/metadata/pt-BR/description.txt @@ -1,7 +1,5 @@ Passepartout é um cliente inteligente de VPN perfeitamente integrado com Apple. Passepartout é o único aplicativo que possibilita serviços populares de VPN ou de sua própria escolha. -Com "Redes confiáveis", Passepartout possibilita uma melhor experiência VPN. - Passepartout não executa nenhum processo em plano de fundo além do túnel VPN, onde os mesmos são amigáveis com firewall. Passepartout possui código aberto: https://github.com/passepartoutvpn @@ -28,7 +26,7 @@ FÁCIL DE USAR - Fácil de usar com seu visual e experiência nativa. - Controle seus perfis em um único lugar. - Importe arquivos de configuração .ovpn / .conf. -- Use as "Redes confiáveis" para melhor configurar sua conectividade. +- Utilize as regras personalizadas para melhorar a sua conetividade. - Habilite criptografia sem melhorar nenhum arquivo de configuração. - Substitua configurações de rede em um piscar de olhos (gateway padrão, DNS, proxy, MTU). diff --git a/Passepartout/App/fastlane/ios/metadata/ru/description.txt b/Passepartout/App/fastlane/ios/metadata/ru/description.txt index ec5c9c8a..91395c37 100644 --- a/Passepartout/App/fastlane/ios/metadata/ru/description.txt +++ b/Passepartout/App/fastlane/ios/metadata/ru/description.txt @@ -1,7 +1,5 @@ Passepartout — это умный VPN-клиент, идеально интегрированный с платформами Apple. Passepartout — единственное приложение, которое вам понадобится и для хорошо известных VPN-провайдеров, и для собственных VPN-серверов. -С доверенными сетями Passepartout открывает самое лучшее в использовании VPN. - Passepartout не участвует ни в какой непрошеной фоновой активности, кроме VPN-туннелирования, являясь таким образом более дружелюбным к межсетевым экранам. У Passepartout открытый исходный код: https://github.com/passepartoutvpn @@ -28,7 +26,7 @@ Passepartout предлагает предустановленные настр - Невероятная простота использования и естественный интерфейс. - Управляйте своими профилями в одном месте. - Импортируйте файлы конфигурации .ovpn / .conf. -- Используйте доверенные сети для мелкозернистого подключения. +- Используйте правила по требованию для более детальной настройки подключения. - Тонкая настройка шифрования без изменений в файлах конфигурации. - Переопределение настроек сети в одно мгновение (стандартный порт, DNS, прокси, MTU).| diff --git a/Passepartout/App/fastlane/ios/metadata/sv/description.txt b/Passepartout/App/fastlane/ios/metadata/sv/description.txt index 3080280f..4aa0ad5b 100644 --- a/Passepartout/App/fastlane/ios/metadata/sv/description.txt +++ b/Passepartout/App/fastlane/ios/metadata/sv/description.txt @@ -1,7 +1,5 @@ Passepartout är en smart VPN-klient som är helt integrerad med Apples plattformar. Passepartout är den enda app du behöver för både kända VPN-leverantörer och dina personliga VPN-servrar. -Med betrodda nätverk och Siri-genvägar erbjuder Passepartout allt det bästa med att använda en VPN på iOS. - Passepartout startar inte någon oönskad bakgrundsaktivitet i tillägg till VPN-tunneln, vilket gör att den fungerar bättre med brandväggar. Passepartout är öppen källkod: https://github.com/passepartoutvpn @@ -28,7 +26,7 @@ LÄTT ATT ANVÄNDA - Otroligt enkel att använda, med lokaliserat utseende och känsla. - Hantera dina profiler på ett enda ställe. - Importera konfigurationsfiler på formatet .ovpn / .conf. -- Använd betrodda nätverk för att skräddarsy dina anslutningar. +- Använd regler på begäran för att finjustera din anslutning. - Finjustera kryptering utan att ändra någon konfigurationsfil. - Åsidosätt nätverksinställningar direkt (normal gateway, DNS, proxy, MTU). diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-01.png b/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-01.png index ed55ee39..1ae32be2 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-01.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-01.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-02.png b/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-02.png index 916d5faa..bae4a504 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-02.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-02.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-03.png b/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-03.png index 852aaa1a..9c16d144 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-03.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-03.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-04.png b/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-04.png index db6a5229..bf249193 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-04.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-04.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-05.png b/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-05.png index 644ec490..4a250384 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-05.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/ipad-05.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-01.png b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-01.png index 02ad8178..0d8e793d 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-01.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-01.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-02.png b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-02.png index 7b07d8af..2579b665 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-02.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-02.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-03.png b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-03.png index ffaa3476..83b0e37e 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-03.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-03.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-04.png b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-04.png index 6b5220be..9567cfe3 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-04.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-04.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-05.png b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-05.png index 69e2fee5..651cca67 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-05.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone55-05.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-01.png b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-01.png index cf44a4ad..cc3b08b3 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-01.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-01.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-02.png b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-02.png index d676ce19..0c1bb656 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-02.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-02.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-03.png b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-03.png index 555c543f..0c846124 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-03.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-03.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-04.png b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-04.png index 214ce980..3819b529 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-04.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-04.png differ diff --git a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-05.png b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-05.png index 0e52b382..7f06cac0 100644 Binary files a/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-05.png and b/Passepartout/App/fastlane/ios/screenshots/en-US/iphone65-05.png differ diff --git a/Passepartout/App/fastlane/mac/screenshots/en-US/mac-01.png b/Passepartout/App/fastlane/mac/screenshots/en-US/mac-01.png index f912d956..2fe4c9ad 100644 Binary files a/Passepartout/App/fastlane/mac/screenshots/en-US/mac-01.png and b/Passepartout/App/fastlane/mac/screenshots/en-US/mac-01.png differ diff --git a/Passepartout/App/fastlane/mac/screenshots/en-US/mac-02.png b/Passepartout/App/fastlane/mac/screenshots/en-US/mac-02.png index d032a22a..8b93a5ba 100644 Binary files a/Passepartout/App/fastlane/mac/screenshots/en-US/mac-02.png and b/Passepartout/App/fastlane/mac/screenshots/en-US/mac-02.png differ diff --git a/Passepartout/App/fastlane/mac/screenshots/en-US/mac-03.png b/Passepartout/App/fastlane/mac/screenshots/en-US/mac-03.png index e3a2ae71..d965b83a 100644 Binary files a/Passepartout/App/fastlane/mac/screenshots/en-US/mac-03.png and b/Passepartout/App/fastlane/mac/screenshots/en-US/mac-03.png differ diff --git a/Passepartout/App/fr.lproj/Localizable.strings b/Passepartout/App/fr.lproj/Localizable.strings index 27410664..c45280b0 100644 --- a/Passepartout/App/fr.lproj/Localizable.strings +++ b/Passepartout/App/fr.lproj/Localizable.strings @@ -4,6 +4,25 @@ // // Created by Davide De Rosa on 6/13/18. // Copyright (c) 2023 Davide De Rosa. All rights reserved. +"global.strings.policy" = "Politique"; +"global.strings.networks" = "Réseaux"; +"global.strings.edit" = "Modifier"; +"global.strings.unknown" = "Inconnu"; +/* MARK: ProfileView -> EndpointView */ + +"endpoint.errors.endpoint_required" = "Veuillez sélectionner un point terminal"; + +"on_demand.sections.policy.footer.any" = "sur n'importe quel réseau"; +"on_demand.sections.policy.footer.including" = "sur les réseaux ci-dessous uniquement"; +"on_demand.sections.policy.footer.excluding" = "sauf sur les réseaux ci-dessous"; +"on_demand.policy.any" = "Tous les réseaux"; +"on_demand.policy.including" = "Inclure"; +"on_demand.policy.excluding" = "Exclure"; + +"settings.sections.icloud.footer" = "Désactiver la synchronisation pour effacer. Pour effacer la boutique iCloud en toute sécurité, faites de même sur tous vos appareils synchronisés. Ceci n'affectera pas les profils locaux."; +"settings.items.should_enable_cloud_syncing.caption" = "Synchroniser avec iCloud"; +"settings.items.erase_cloud_store.caption" = "Effacer la boutique iCloud"; + /* MARK: Global */ "global.strings.cancel" = "Annuler"; @@ -202,7 +221,6 @@ "account.sections.guidance.footer.infrastructure.windscribe" = "Trouver votre identifiant %@ dans la section web Générateur de configuration OpenVPN."; /* MARK: ProfileView -> EndpointView */ - "endpoint.wireguard.items.peer.caption" = "Peer"; "endpoint.wireguard.items.preshared_key.caption" = "Clé pré-partagée"; "endpoint.wireguard.items.allowed_ip.caption" = "IP autorisée"; @@ -249,15 +267,14 @@ /* MARK: ProfileView -> OnDemandView */ -"on_demand.title" = "Réseaux de confiance"; -"on_demand.sections.policy.footer" = "Lors d'une connection à un réseau de confiance, le VPN est normalement fermé. Désactivez cette option pour ne pas autoriser ce comportement."; +"on_demand.title" = "Sur demande"; +"on_demand.sections.policy.footer" = "Activez le VPN %@."; "on_demand.items.add_ssid.caption" = "Ajouter Wi-Fi"; "on_demand.items.active.caption" = "Fiables"; "on_demand.items.mobile.caption" = "Réseau cellulaire"; -"on_demand.items.ethernet.caption" = "Faire confiance aux connexions filaires"; -"on_demand.items.ethernet.description" = "Cochez pour faire confiance à toutes les connexions filaires."; -"on_demand.items.policy.caption" = "La confiance désactive le VPN"; +"on_demand.items.ethernet.caption" = "Connexions filaires"; +"on_demand.items.policy.caption" = "La confiance désactive le VPN"; /* MARK: ProfileView -> DiagnosticsView */ "diagnostics.title" = "Diagnostiques"; diff --git a/Passepartout/App/it.lproj/Localizable.strings b/Passepartout/App/it.lproj/Localizable.strings index 8e63c5cb..5d0ce0c8 100644 --- a/Passepartout/App/it.lproj/Localizable.strings +++ b/Passepartout/App/it.lproj/Localizable.strings @@ -4,6 +4,25 @@ // // Created by Davide De Rosa on 6/13/18. // Copyright (c) 2023 Davide De Rosa. All rights reserved. +"global.strings.policy" = "Policy"; +"global.strings.networks" = "Reti"; +"global.strings.edit" = "Modifica"; +"global.strings.unknown" = "Sconosciuto"; +/* MARK: ProfileView -> EndpointView */ + +"endpoint.errors.endpoint_required" = "Seleziona un endpoint"; + +"on_demand.sections.policy.footer.any" = "in qualsiasi rete"; +"on_demand.sections.policy.footer.including" = "solo nelle reti in basso"; +"on_demand.sections.policy.footer.excluding" = "eccetto nelle reti in basso"; +"on_demand.policy.any" = "Tutte le reti"; +"on_demand.policy.including" = "Includi"; +"on_demand.policy.excluding" = "Escludi"; + +"settings.sections.icloud.footer" = "Disabilita la sincronizzazione per permettere la cancellazione. Per cancellare in modo sicuro lo store iCloud, ripeti l'operazione su tutti i tuoi device sincronizzati. I profili locali non saranno modificati."; +"settings.items.should_enable_cloud_syncing.caption" = "Sincronizza con iCloud"; +"settings.items.erase_cloud_store.caption" = "Cancella store iCloud"; + /* MARK: Global */ "global.strings.cancel" = "Annulla"; @@ -202,7 +221,6 @@ "account.sections.guidance.footer.infrastructure.windscribe" = "Trova le tue credenziali nell'OpenVPN Config Generator sul sito di %@."; /* MARK: ProfileView -> EndpointView */ - "endpoint.wireguard.items.peer.caption" = "Peer"; "endpoint.wireguard.items.preshared_key.caption" = "Chiave condivisa"; "endpoint.wireguard.items.allowed_ip.caption" = "IP ammesso"; @@ -249,15 +267,14 @@ /* MARK: ProfileView -> OnDemandView */ -"on_demand.title" = "Reti sicure"; -"on_demand.sections.policy.footer" = "Entrando in una rete sicura, normalmente la VPN viene spenta e mantenuta disconnessa. Disabilita quest'opzione per non imporre questo comportamento."; +"on_demand.title" = "On demand"; +"on_demand.sections.policy.footer" = "Attiva la VPN %@."; "on_demand.items.add_ssid.caption" = "Aggiungi Wi-Fi"; "on_demand.items.active.caption" = "Sicura"; "on_demand.items.mobile.caption" = "Rete cellulare"; -"on_demand.items.ethernet.caption" = "Connessioni cablate sicure"; -"on_demand.items.ethernet.description" = "Seleziona per considerare sicura qualsiasi rete cablata."; -"on_demand.items.policy.caption" = "Spegni VPN in rete sicura"; +"on_demand.items.ethernet.caption" = "Connessioni cablate"; +"on_demand.items.policy.caption" = "Spegni VPN in rete sicura"; /* MARK: ProfileView -> DiagnosticsView */ "diagnostics.title" = "Diagnostica"; diff --git a/Passepartout/App/nl.lproj/Localizable.strings b/Passepartout/App/nl.lproj/Localizable.strings index 4b3349dd..ab0b6172 100644 --- a/Passepartout/App/nl.lproj/Localizable.strings +++ b/Passepartout/App/nl.lproj/Localizable.strings @@ -4,6 +4,25 @@ // // Created by Davide De Rosa on 6/13/18. // Copyright (c) 2023 Davide De Rosa. All rights reserved. +"global.strings.policy" = "Beleid"; +"global.strings.networks" = "Netwerken"; +"global.strings.edit" = "Bewerken"; +"global.strings.unknown" = "Onbekend"; +/* MARK: ProfileView -> EndpointView */ + +"endpoint.errors.endpoint_required" = "Selecteer een eindpunt"; + +"on_demand.sections.policy.footer.any" = "in welk netwerk dan ook"; +"on_demand.sections.policy.footer.including" = "alleen in de netwerken hieronder"; +"on_demand.sections.policy.footer.excluding" = "niet in de netwerken hieronder"; +"on_demand.policy.any" = "Alle netwerken"; +"on_demand.policy.including" = "Bevat wel"; +"on_demand.policy.excluding" = "Bevat niet"; + +"settings.sections.icloud.footer" = "Synchroniseren uitschakelen om wissen toe te staan. Om de iCloud-opslag veilig te wissen, moet u dit doen op alle gesynchroniseerde apparaten. Dit heeft geen invloed op lokale profielen."; +"settings.items.should_enable_cloud_syncing.caption" = "Met iCloud synchroniseren"; +"settings.items.erase_cloud_store.caption" = "iCloud-opslag wissen"; + /* MARK: Global */ "global.strings.cancel" = "Afbreken"; @@ -202,7 +221,6 @@ "account.sections.guidance.footer.infrastructure.windscribe" = "Vind de inloggegevens van %@ in de OpenVPN Config Generator op de website."; /* MARK: ProfileView -> EndpointView */ - "endpoint.wireguard.items.peer.caption" = "Peer"; "endpoint.wireguard.items.preshared_key.caption" = "Vooraf gedeelde sleutel"; "endpoint.wireguard.items.allowed_ip.caption" = "Toegestane IP"; @@ -249,15 +267,14 @@ /* MARK: ProfileView -> OnDemandView */ -"on_demand.title" = "Vertrouwde netwerken"; -"on_demand.sections.policy.footer" = "Bij het invoeren van een vertrouwd netwerk wordt de VPN uitgeschakeld en niet verbonden gehouden. Schakel deze optie uit om dergelijk gedrag niet af te dwingen."; +"on_demand.title" = "On-demand"; +"on_demand.sections.policy.footer" = "Activeer de VPN %@."; "on_demand.items.add_ssid.caption" = "Wi-Fi toevoegen"; "on_demand.items.active.caption" = "Vertrouwen"; "on_demand.items.mobile.caption" = "Mobiel netwerk"; -"on_demand.items.ethernet.caption" = "Bekabelde verbindingen vertrouwen"; -"on_demand.items.ethernet.description" = "Vink aan om alle bekabelde verbindingen te vertrouwen."; -"on_demand.items.policy.caption" = "Trust disables VPN"; +"on_demand.items.ethernet.caption" = "Bekabelde verbindingen"; +"on_demand.items.policy.caption" = "Trust disables VPN"; /* MARK: ProfileView -> DiagnosticsView */ "diagnostics.title" = "Diagnose"; diff --git a/Passepartout/App/pl.lproj/Localizable.strings b/Passepartout/App/pl.lproj/Localizable.strings index a952edd7..ba8ff0fa 100644 --- a/Passepartout/App/pl.lproj/Localizable.strings +++ b/Passepartout/App/pl.lproj/Localizable.strings @@ -4,6 +4,25 @@ // // Created by Davide De Rosa on 6/13/18. // Copyright (c) 2023 Davide De Rosa. All rights reserved. +"global.strings.policy" = "Polityka"; +"global.strings.networks" = "Sieci"; +"global.strings.edit" = "Edytuj"; +"global.strings.unknown" = "Nieznane"; +/* MARK: ProfileView -> EndpointView */ + +"endpoint.errors.endpoint_required" = "Wybierz punkt końcowy"; + +"on_demand.sections.policy.footer.any" = "w dowolnej sieci"; +"on_demand.sections.policy.footer.including" = "tylko w poniższych sieciach"; +"on_demand.sections.policy.footer.excluding" = "z wyjątkiem poniższych sieci"; +"on_demand.policy.any" = "Wszystkie sieci"; +"on_demand.policy.including" = "Uwzględnij"; +"on_demand.policy.excluding" = "Wyklucz"; + +"settings.sections.icloud.footer" = "Wyłącz synchronizację, aby umożliwić wymazywanie. Aby bezpiecznie wymazać magazyn iCloud, należy to zrobić na wszystkich zsynchronizowanych urządzeniach. Nie będzie to miało wpływu na profile lokalne."; +"settings.items.should_enable_cloud_syncing.caption" = "Synchronizacja z iCloud"; +"settings.items.erase_cloud_store.caption" = "Wymaż pamięć iCloud"; + /* MARK: Global */ "global.strings.cancel" = "Anuluj"; @@ -202,7 +221,6 @@ "account.sections.guidance.footer.infrastructure.windscribe" = "Użyj loginu do %@ z generatora konfiguracji OpenVPN dostępnego na stronie."; /* MARK: ProfileView -> EndpointView */ - "endpoint.wireguard.items.peer.caption" = "Peer"; "endpoint.wireguard.items.preshared_key.caption" = "Wcześniej udostępniony klucz"; "endpoint.wireguard.items.allowed_ip.caption" = "IP z zezwoleniem"; @@ -249,15 +267,14 @@ /* MARK: ProfileView -> OnDemandView */ -"on_demand.title" = "Zaufane sieci"; -"on_demand.sections.policy.footer" = "Kiedy urządzenie łączy się z zaufaną siecią, VPN jest wyłączane. Wyłącz tę opcję żeby nie wymuszać takiego zachowania."; +"on_demand.title" = "Na żądanie"; +"on_demand.sections.policy.footer" = "Aktywuj VPN %@."; "on_demand.items.add_ssid.caption" = "Dodaj Wi-Fi"; "on_demand.items.active.caption" = "Ufaj"; "on_demand.items.mobile.caption" = "Sieć komórkowa"; -"on_demand.items.ethernet.caption" = "Ufaj połączeniom przewodowym"; -"on_demand.items.ethernet.description" = "Zaznacz, aby traktować każde przewodowe połączenie kablowe jako zaufane."; -"on_demand.items.policy.caption" = "Wyłącz VPN dla zaufanych sieci"; +"on_demand.items.ethernet.caption" = "Połączenia przewodowe"; +"on_demand.items.policy.caption" = "Wyłącz VPN dla zaufanych sieci"; /* MARK: ProfileView -> DiagnosticsView */ "diagnostics.title" = "Diagnostyka"; diff --git a/Passepartout/App/pt.lproj/Localizable.strings b/Passepartout/App/pt.lproj/Localizable.strings index af961f0e..6716c21d 100644 --- a/Passepartout/App/pt.lproj/Localizable.strings +++ b/Passepartout/App/pt.lproj/Localizable.strings @@ -4,6 +4,25 @@ // // Created by Davide De Rosa on 6/13/18. // Copyright (c) 2023 Davide De Rosa. All rights reserved. +"global.strings.policy" = "Política"; +"global.strings.networks" = "Redes"; +"global.strings.edit" = "Editar"; +"global.strings.unknown" = "Desconhecido"; +/* MARK: ProfileView -> EndpointView */ + +"endpoint.errors.endpoint_required" = "Por favor, escolha um ponto final"; + +"on_demand.sections.policy.footer.any" = "em qualquer rede"; +"on_demand.sections.policy.footer.including" = "apenas nas redes abaixo"; +"on_demand.sections.policy.footer.excluding" = "exceto nas redes abaixo"; +"on_demand.policy.any" = "Todas as redes"; +"on_demand.policy.including" = "Incluir"; +"on_demand.policy.excluding" = "Excluir"; + +"settings.sections.icloud.footer" = "Desative a sincronizar para permitir apagar. Para apagar a loja iCloud de forma segura, faça-o em todos os seus dispositivos sincronizados. Isto não irá afetar os perfis locais"; +"settings.items.should_enable_cloud_syncing.caption" = "Sincronizar com iCloud"; +"settings.items.erase_cloud_store.caption" = "Apagar loja da iCloud"; + /* MARK: Global */ "global.strings.cancel" = "Cancelar"; @@ -202,7 +221,6 @@ "account.sections.guidance.footer.infrastructure.windscribe" = "Encontre %@ credenciais no gerador de configuração OpenVPN do site."; /* MARK: ProfileView -> EndpointView */ - "endpoint.wireguard.items.peer.caption" = "Ponto"; "endpoint.wireguard.items.preshared_key.caption" = "Chave pré-partilhada"; "endpoint.wireguard.items.allowed_ip.caption" = "IP Permitido"; @@ -249,15 +267,14 @@ /* MARK: ProfileView -> OnDemandView */ -"on_demand.title" = "Redes seguras"; -"on_demand.sections.policy.footer" = "Ao entrar em uma rede segura, a VPN é normalmente é desconectada e mantido inativa. Desative essa opção para não forçar esse comportamento."; +"on_demand.title" = "A pedido"; +"on_demand.sections.policy.footer" = "Ativar a VPN %@."; "on_demand.items.add_ssid.caption" = "Adicionar Wi-Fi"; "on_demand.items.active.caption" = "Confiar"; "on_demand.items.mobile.caption" = "Rede celular"; -"on_demand.items.ethernet.caption" = "Confiar em ligações com fios"; -"on_demand.items.ethernet.description" = "Assinale para confiar em qualquer ligação com cabo."; -"on_demand.items.policy.caption" = "Trust disables VPN"; +"on_demand.items.ethernet.caption" = "Ligações com fios"; +"on_demand.items.policy.caption" = "Trust disables VPN"; /* MARK: ProfileView -> DiagnosticsView */ "diagnostics.title" = "Diagnóstico"; diff --git a/Passepartout/App/ru.lproj/Localizable.strings b/Passepartout/App/ru.lproj/Localizable.strings index 9af748d3..66bd979d 100644 --- a/Passepartout/App/ru.lproj/Localizable.strings +++ b/Passepartout/App/ru.lproj/Localizable.strings @@ -4,6 +4,25 @@ // // Created by Davide De Rosa on 6/13/18. // Copyright (c) 2023 Davide De Rosa. All rights reserved. +"global.strings.policy" = "Политика"; +"global.strings.networks" = "Сети"; +"global.strings.edit" = "Редактировать"; +"global.strings.unknown" = "Неизвестно"; +/* MARK: ProfileView -> EndpointView */ + +"endpoint.errors.endpoint_required" = "Выберите конечную точку"; + +"on_demand.sections.policy.footer.any" = "в любой сети"; +"on_demand.sections.policy.footer.including" = "только в сетях ниже"; +"on_demand.sections.policy.footer.excluding" = "кроме сетей ниже"; +"on_demand.policy.any" = "Все сети"; +"on_demand.policy.including" = "Включить"; +"on_demand.policy.excluding" = "Исключить"; + +"settings.sections.icloud.footer" = "Отключите синхронизацию, чтобы разрешить удаление. Чтобы безопасно очистить хранилище iCloud, сделайте это на всех синхронизированных устройствах. Это не повлияет на локальные профили."; +"settings.items.should_enable_cloud_syncing.caption" = "Синхронизировать с iCloud"; +"settings.items.erase_cloud_store.caption" = "Очистить iCloud"; + /* MARK: Global */ "global.strings.cancel" = "Отменить"; @@ -202,7 +221,6 @@ "account.sections.guidance.footer.infrastructure.windscribe" = "Найдите Ваши данные для входа %@ в OpenVPN Config Generator на веб-сайте."; /* MARK: ProfileView -> EndpointView */ - "endpoint.wireguard.items.peer.caption" = "Узел"; "endpoint.wireguard.items.preshared_key.caption" = "Общий ключ"; "endpoint.wireguard.items.allowed_ip.caption" = "Допустимый IP"; @@ -249,15 +267,14 @@ /* MARK: ProfileView -> OnDemandView */ -"on_demand.title" = "Доверенные сети"; -"on_demand.sections.policy.footer" = "При подключении к доверенным сетям VPN обычно выключается, и остаётся отключенным. Отключите эту опцию чтобы оставлять VPN подключенным."; +"on_demand.title" = "По требованию"; +"on_demand.sections.policy.footer" = "Активировать VPN %@."; "on_demand.items.add_ssid.caption" = "Добавить Wi-Fi"; "on_demand.items.active.caption" = "Доверенные"; "on_demand.items.mobile.caption" = "Мобильная сеть"; -"on_demand.items.ethernet.caption" = "Доверенные проводные подключения"; -"on_demand.items.ethernet.description" = "Включите, чтобы добавить в доверенные проводное подключение."; -"on_demand.items.policy.caption" = "Дов. сеть отключает VPN"; +"on_demand.items.ethernet.caption" = "Проводные подключения"; +"on_demand.items.policy.caption" = "Дов. сеть отключает VPN"; /* MARK: ProfileView -> DiagnosticsView */ "diagnostics.title" = "Диагностика"; diff --git a/Passepartout/App/sv.lproj/Localizable.strings b/Passepartout/App/sv.lproj/Localizable.strings index 16665662..efaa5ee2 100644 --- a/Passepartout/App/sv.lproj/Localizable.strings +++ b/Passepartout/App/sv.lproj/Localizable.strings @@ -4,6 +4,25 @@ // // Created by Davide De Rosa on 6/13/18. // Copyright (c) 2023 Davide De Rosa. All rights reserved. +"global.strings.policy" = "Policy"; +"global.strings.networks" = "Nätverk"; +"global.strings.edit" = "Redigera"; +"global.strings.unknown" = "Okänt"; +/* MARK: ProfileView -> EndpointView */ + +"endpoint.errors.endpoint_required" = "Välj en ändpunkt"; + +"on_demand.sections.policy.footer.any" = "i alla nätverk"; +"on_demand.sections.policy.footer.including" = "enbart i nedanstående nätverk"; +"on_demand.sections.policy.footer.excluding" = "utom i nedanstående nätverk"; +"on_demand.policy.any" = "Alla nätverk"; +"on_demand.policy.including" = "Inkludera"; +"on_demand.policy.excluding" = "Uteslut"; + +"settings.sections.icloud.footer" = "Inaktivera synkronisering för att göra det möjligt att radera. För att radera iCloud-lagring på ett säkert sätt behöver du göra det på alla dina synkroniserade enheter. Detta påverkar inte lokala profiler."; +"settings.items.should_enable_cloud_syncing.caption" = "Synkronisera med iCloud"; +"settings.items.erase_cloud_store.caption" = "Radera iCloud-lagring"; + /* MARK: Global */ "global.strings.cancel" = "Avbryt"; @@ -202,7 +221,6 @@ "account.sections.guidance.footer.infrastructure.windscribe" = "Hitta din %@ credentials i OpenVPN Config Generator på webbplatsen."; /* MARK: ProfileView -> EndpointView */ - "endpoint.wireguard.items.peer.caption" = "Peer"; "endpoint.wireguard.items.preshared_key.caption" = "Tidigare delad nyckel"; "endpoint.wireguard.items.allowed_ip.caption" = "Tillåtet IP"; @@ -249,15 +267,14 @@ /* MARK: ProfileView -> OnDemandView */ -"on_demand.title" = "Tillförlitliga nätverk"; -"on_demand.sections.policy.footer" = "När du advänder ett betrott nätverk, VPN:et stängs normalt och hålls bortkopplat. Avaktivera detta alternativet för att inte genomdriva sådant beteende."; +"on_demand.title" = "På begäran"; +"on_demand.sections.policy.footer" = "Aktivera VPN %@."; "on_demand.items.add_ssid.caption" = "Lägg till Wi-Fi"; "on_demand.items.active.caption" = "Betrodda"; "on_demand.items.mobile.caption" = "Mobilt nätverk"; -"on_demand.items.ethernet.caption" = "Lita på kabelanslutna uppkopplingar"; -"on_demand.items.ethernet.description" = "Markera för att lita på alla kabelanslutna uppkopplingar."; -"on_demand.items.policy.caption" = "Förtroende inaktiverar VPN"; +"on_demand.items.ethernet.caption" = "Kabelanslutna uppkopplingar"; +"on_demand.items.policy.caption" = "Förtroende inaktiverar VPN"; /* MARK: ProfileView -> DiagnosticsView */ "diagnostics.title" = "Diagnostics"; diff --git a/Passepartout/App/zh-Hans.lproj/Localizable.strings b/Passepartout/App/zh-Hans.lproj/Localizable.strings index 7f28651c..88010e7f 100644 --- a/Passepartout/App/zh-Hans.lproj/Localizable.strings +++ b/Passepartout/App/zh-Hans.lproj/Localizable.strings @@ -4,6 +4,25 @@ // // Created by Davide De Rosa on 6/13/18. // Copyright (c) 2023 Davide De Rosa. All rights reserved. +"global.strings.policy" = "政策"; +"global.strings.networks" = "网络"; +"global.strings.edit" = "编辑"; +"global.strings.unknown" = "未知"; +/* MARK: ProfileView -> EndpointView */ + +"endpoint.errors.endpoint_required" = "请选择一个终端"; + +"on_demand.sections.policy.footer.any" = "在任何网络中"; +"on_demand.sections.policy.footer.including" = "仅在以下网络中"; +"on_demand.sections.policy.footer.excluding" = "以下网络除外"; +"on_demand.policy.any" = "全部网络"; +"on_demand.policy.including" = "包括"; +"on_demand.policy.excluding" = "排除"; + +"settings.sections.icloud.footer" = "禁用同步以允许移除。若要安全地移除iCloud存储,请在所有同步设备上执行此操作。这不会影响本地配置文件。"; +"settings.items.should_enable_cloud_syncing.caption" = "与iCloud同步"; +"settings.items.erase_cloud_store.caption" = "移除iCloud储存"; + /* MARK: Global */ "global.strings.cancel" = "取消"; @@ -202,7 +221,6 @@ "account.sections.guidance.footer.infrastructure.windscribe" = "在网站上的OpenVPN配置生成器中找到你的%@认证信息。 "; /* MARK: ProfileView -> EndpointView */ - "endpoint.wireguard.items.peer.caption" = "同级"; "endpoint.wireguard.items.preshared_key.caption" = "预共用密码"; "endpoint.wireguard.items.allowed_ip.caption" = "允许的IP"; @@ -249,15 +267,14 @@ /* MARK: ProfileView -> OnDemandView */ -"on_demand.title" = "可信网络"; -"on_demand.sections.policy.footer" = "当进入可信网络后,VPN将会断开并保持断开状态。禁用此选项可关闭此功能。"; +"on_demand.title" = "随需"; +"on_demand.sections.policy.footer" = "激活VPN %@。"; "on_demand.items.add_ssid.caption" = "新增Wi-Fi"; "on_demand.items.active.caption" = "信任"; "on_demand.items.mobile.caption" = "蜂窝网络"; -"on_demand.items.ethernet.caption" = "信任有线连接"; -"on_demand.items.ethernet.description" = "选中以信任所有有线连接。"; -"on_demand.items.policy.caption" = "信任网络中禁用VPN"; +"on_demand.items.ethernet.caption" = "有线连接"; +"on_demand.items.policy.caption" = "信任网络中禁用VPN"; /* MARK: ProfileView -> DiagnosticsView */ "diagnostics.title" = "分析数据"; diff --git a/Passepartout/AppShared/Constants/SwiftGen+Strings.swift b/Passepartout/AppShared/Constants/SwiftGen+Strings.swift index 9801644f..18807c13 100644 --- a/Passepartout/AppShared/Constants/SwiftGen+Strings.swift +++ b/Passepartout/AppShared/Constants/SwiftGen+Strings.swift @@ -648,7 +648,7 @@ internal enum L10n { } internal enum OnDemand { /// MARK: ProfileView -> OnDemandView - internal static let title = L10n.tr("Localizable", "on_demand.title", fallback: "On-demand") + internal static let title = L10n.tr("Localizable", "on_demand.title", fallback: "On demand") internal enum Items { internal enum AddSsid { /// Add Wi-Fi @@ -657,8 +657,6 @@ internal enum L10n { internal enum Ethernet { /// Wired connections internal static let caption = L10n.tr("Localizable", "on_demand.items.ethernet.caption", fallback: "Wired connections") - /// Check to match any wired cable connection. - internal static let description = L10n.tr("Localizable", "on_demand.items.ethernet.description", fallback: "Check to match any wired cable connection.") } internal enum Mobile { /// Cellular network @@ -682,14 +680,10 @@ internal enum L10n { internal enum Footer { /// in any network internal static let any = L10n.tr("Localizable", "on_demand.sections.policy.footer.any", fallback: "in any network") - /// except in - internal static let excluding = L10n.tr("Localizable", "on_demand.sections.policy.footer.excluding", fallback: "except in") - /// only in - internal static let including = L10n.tr("Localizable", "on_demand.sections.policy.footer.including", fallback: "only in") - /// %@ the networks below - internal static func matching(_ p1: Any) -> String { - return L10n.tr("Localizable", "on_demand.sections.policy.footer.matching", String(describing: p1), fallback: "%@ the networks below") - } + /// except in the networks below + internal static let excluding = L10n.tr("Localizable", "on_demand.sections.policy.footer.excluding", fallback: "except in the networks below") + /// only in the networks below + internal static let including = L10n.tr("Localizable", "on_demand.sections.policy.footer.including", fallback: "only in the networks below") } } } diff --git a/PassepartoutLibrary/Sources/PassepartoutCore/Reusable/SandboxChecker.swift b/PassepartoutLibrary/Sources/PassepartoutCore/Reusable/SandboxChecker.swift index eb6902d6..1885a899 100644 --- a/PassepartoutLibrary/Sources/PassepartoutCore/Reusable/SandboxChecker.swift +++ b/PassepartoutLibrary/Sources/PassepartoutCore/Reusable/SandboxChecker.swift @@ -28,7 +28,7 @@ import Foundation // https://stackoverflow.com/a/32238344/784615 // https://gist.github.com/lukaskubanek/cbfcab29c0c93e0e9e0a16ab09586996 -public final actor SandboxChecker: ObservableObject { +public final actor SandboxChecker { public init() { } diff --git a/PassepartoutLibrary/Sources/PassepartoutVPN/Managers/VPNManager.swift b/PassepartoutLibrary/Sources/PassepartoutVPN/Managers/VPNManager.swift index 1d9aaf1c..996766d5 100644 --- a/PassepartoutLibrary/Sources/PassepartoutVPN/Managers/VPNManager.swift +++ b/PassepartoutLibrary/Sources/PassepartoutVPN/Managers/VPNManager.swift @@ -238,7 +238,7 @@ extension VPNManager { if !isHandled { if newProfile.onDemand != lastProfile.onDemand { - pp_log.info("On-demand settings changed") + pp_log.info("On demand settings changed") isHandled = true shouldReconnect = false } diff --git a/PassepartoutLibrary/Sources/PassepartoutVPNImpl/Strategies/CDProfileRepository.swift b/PassepartoutLibrary/Sources/PassepartoutVPNImpl/Strategies/CDProfileRepository.swift index cdb3eaf0..a1d133e8 100644 --- a/PassepartoutLibrary/Sources/PassepartoutVPNImpl/Strategies/CDProfileRepository.swift +++ b/PassepartoutLibrary/Sources/PassepartoutVPNImpl/Strategies/CDProfileRepository.swift @@ -62,7 +62,7 @@ final class CDProfileRepository: ProfileRepository { try profiles.forEach { - // FIXME: on-demand, workaround to retain profiles on downgrade (field is required before 2.2.0) + // FIXME: on demand, workaround to retain profiles on downgrade (field is required before 2.2.0) var copy = $0 copy.onDemand.disconnectsIfNotMatching = true diff --git a/README.md b/README.md index 048a9cd4..a1255a6e 100644 --- a/README.md +++ b/README.md @@ -29,11 +29,11 @@ With its native look & feel, Passepartout focuses on ease of use. It does so by Not to mention iCloud support, which makes your VPN profiles available on all your devices without any additional effort! -### Trusted networks +### On demand -Trust Wi-Fi, cellular (iOS) or wired (macOS) networks to fine-grain your connectivity. You can then choose to retain a VPN connection when entering a trusted network, or prevent it completely. +Define rules for Wi-Fi, cellular (iOS) or wired (macOS) networks to fine-grain how you automate your VPN connectivity. -[](res/ios/snap-trusted.png) +[](res/ios/snap-on-demand.png) ### Siri shortcuts diff --git a/res/ios/snap-home.png b/res/ios/snap-home.png index 539b5d2c..54fc5b5a 100644 Binary files a/res/ios/snap-home.png and b/res/ios/snap-home.png differ diff --git a/res/ios/snap-network.png b/res/ios/snap-network.png index 396c1acb..fca07dc9 100644 Binary files a/res/ios/snap-network.png and b/res/ios/snap-network.png differ diff --git a/res/ios/snap-on-demand.png b/res/ios/snap-on-demand.png new file mode 100644 index 00000000..b60eee75 Binary files /dev/null and b/res/ios/snap-on-demand.png differ diff --git a/res/ios/snap-parameters.png b/res/ios/snap-parameters.png index 28b4d681..abda6969 100644 Binary files a/res/ios/snap-parameters.png and b/res/ios/snap-parameters.png differ diff --git a/res/ios/snap-shortcuts.png b/res/ios/snap-shortcuts.png index d0bd8095..fa074d58 100644 Binary files a/res/ios/snap-shortcuts.png and b/res/ios/snap-shortcuts.png differ diff --git a/res/ios/snap-trusted.png b/res/ios/snap-trusted.png deleted file mode 100644 index 92b9a7af..00000000 Binary files a/res/ios/snap-trusted.png and /dev/null differ