From 30fed5275f2c4c247abd079c6999098e69b0fffd Mon Sep 17 00:00:00 2001 From: Andrea-Filice Date: Sat, 20 Dec 2025 15:27:07 +0100 Subject: [PATCH 1/2] fix: fixing italian loc * fixed italian localization with better translations --- .../Localization/it.lproj/Localizable.strings | 208 +++++++++--------- 1 file changed, 104 insertions(+), 104 deletions(-) diff --git a/LocalDevVPN/Localization/it.lproj/Localizable.strings b/LocalDevVPN/Localization/it.lproj/Localizable.strings index 235b844..84c0144 100644 --- a/LocalDevVPN/Localization/it.lproj/Localizable.strings +++ b/LocalDevVPN/Localization/it.lproj/Localizable.strings @@ -14,7 +14,7 @@ "connected_to_ip" = "Connesso a %@"; "connected_at" = "Connesso a"; "ios_might_ask_you_to_allow_the_vpn" = "iOS potrebbe chiederti di consentire la VPN"; -"disconnecting_safely" = "Disconnessione in corso in modo sicuro…"; +"disconnecting_safely" = "Disconnessione in modo sicuro…"; "open_settings_to_review_details" = "Apri Impostazioni per visualizzare i dettagli"; "tap_connect_to_create_the_tunnel" = "Tocca Connetti per creare il tunnel"; @@ -35,116 +35,116 @@ "local_device_ip" = "IP del dispositivo locale"; "local_tunnel_details" = "Dettagli del Tunnel"; -"time_connected" = "Tempo Connesso"; -"status" = "Stato"; -"active" = "Attivo"; -"network_interface" = "Interfaccia di Rete"; -"local" = "Locale"; -"assigned_ip" = "IP Assegnato"; +"time_connected" = "Tempo Connesso"; +"status" = "Stato"; +"active" = "Attivo"; +"network_interface" = "Interfaccia di Rete"; +"local" = "Locale"; +"assigned_ip" = "IP Assegnato"; /* MARK: Locales */ -"english" = "Inglese"; -"spanish" = "Spagnolo"; -"italian" = "Italiano"; -"polish" = "Polacco"; -"korean" = "Coreano"; +"english" = "Inglese"; +"spanish" = "Spagnolo"; +"italian" = "Italiano"; +"polish" = "Polacco"; +"korean" = "Coreano"; /* MARK: Settings*/ -"connection_settings" = "Impostazioni Connessione"; -"auto_connect_on_launch" = "Connessione automatica all’avvio"; -"connection_logs" = "Log di Connessione"; -"network_configuration" = "Configurazione Rete"; -"device_ip" = "Indirizzo IP Dispositivo"; -"tunnel_ip" = "Indirizzo IP Tunnel"; -"subnet_mask" = "Maschera di Sottorete"; -"app_information" = "Informazioni App"; -"privacy_policy" = "Privacy Policy"; -"data_collection_policy" = "Politica di Raccolta Dati"; -"app_version" = "Versione App"; -"help_and_support" = "Guida e Supporto"; -"language" = "Imposta Lingua"; -"dropdown_language" = "Lingua"; -"settings" = "Impostazioni"; -"done" = "Fine"; -"warning_alert" = "Avviso"; -"warning_message" = "La modifica delle impostazioni IP del tunnel può interrompere la connessione di rete. Procedi solo se sei sicuro di quello che stai facendo."; -"understand_button" = "Ho capito"; +"connection_settings" = "Impostazioni Connessione"; +"auto_connect_on_launch" = "Connessione automatica all’avvio"; +"connection_logs" = "Log di Connessione"; +"network_configuration" = "Impostazioni Rete"; +"device_ip" = "Indirizzo IP Dispositivo"; +"tunnel_ip" = "Indirizzo IP Tunnel"; +"subnet_mask" = "Subnet Mask"; +"app_information" = "Informazioni App"; +"privacy_policy" = "Privacy Policy"; +"data_collection_policy" = "Politica di Raccolta Dati"; +"app_version" = "Versione"; +"help_and_support" = "Guida e Supporto"; +"language" = "Impostazioni Lingua"; +"dropdown_language" = "Lingua"; +"settings" = "Impostazioni"; +"done" = "Fine"; +"warning_alert" = "Avviso"; +"warning_message" = "La modifica delle impostazioni IP del tunnel può interrompere la connessione di rete. Procedi solo se sei sicuro di quello che stai facendo."; +"understand_button" = "Ho capito"; -"data_collection_policy_title" = "Politica di Raccolta Dati"; -"no_data_collection" = "Nessuna raccolta di dati"; -"no_data_collection_description" = "LocalDevVPN NON raccoglie dati utente, informazioni sul traffico o attività di navigazione. Questa app crea un tunnel di rete locale che rimane interamente sul tuo dispositivo."; -"local_processing_only" = "Elaborazione solo sul tuo smartphone"; -"local_processing_only_description" = "Tutto il traffico di rete e le configurazioni vengono elaborate localmente sul tuo dispositivo. Nessuna informazione lascia mai il dispositivo o viene trasmessa su Internet."; -"no_third_party_sharing" = "Nessuna condivisione con servizi di terze parti"; -"no_third_party_sharing_description" = "Poiché non raccogliamo dati, non c'è alcuna condivisione con terze parti. Non abbiamo analisi, tracciamento o meccanismi di raccolta dati in questa app."; -"why_use_network_permissions" = "Perché concedere i permessi di Rete?"; -"why_use_network_permissions_description" = "LocalDevVPN richiede permessi di estensione di rete per creare un'interfaccia di rete locale sul tuo dispositivo. Questo è utilizzato esclusivamente per sviluppo e test locali sul tuo dispositivo."; -"our_promise" = "La nostra promessa"; -"our_promise_description" = "Ci impegniamo per la privacy e la trasparenza. Questa app è progettata per sviluppatori per testare e connettersi a server locali senza preoccupazioni sulla privacy."; -"data_collection_policy_nav" = "Raccolta Dati"; -"logs_nav" = "Log di connessione"; -"faq_header" = "Domande Frequenti"; -"faq_q1" = "Cosa fa questa app?"; -"faq_q1_a1" = "LocalDevVPN crea un'interfaccia di rete locale utilizzabile per sviluppo e test. Non instrada il traffico attraverso server esterni, tutto rimane sul dispositivo."; -"faq_common_use_cases" = "I casi d'uso comuni includono:"; -"faq_case1" = "• Test di applicazioni web con server locali."; -"faq_case2" = "• Sviluppo e Debug di funzionalità di rete."; -"faq_case3" = "• Accesso ad ambienti di sviluppo locali ospitati."; -"faq_case4" = "• Test di applicazioni che richiedono configurazioni di rete specifiche."; -"faq_q2" = "È un VPN tradizionale?"; -"faq_q2_a1" = "No, LocalDevVPN NON è un servizio VPN tradizionale. Non:"; -"faq_q2_point1" = "• Instrada il tuo traffico attraverso server esterni."; -"faq_q2_point2" = "• Garantisce privacy e la navigazione in incognito."; -"faq_q2_point3" = "• Esegue connessioni a server VPN remoti."; -"faq_q2_point4" = "• Cripta o instrada il tuo traffico internet."; -"faq_q2_a2" = "LocalDevVPN crea solo un'interfaccia di rete locale per aiutare gli sviluppatori a connettersi a servizi locali per lo sviluppo e test."; -"faq_q3" = "Perché non si connette?"; -"faq_q3_a1" = "Un errore durante la connessione può essere dovuto a permessi di sistema, errori di configurazione o restrizioni di iOS."; -"faq_troubleshoot_header" = "Passaggi per risolvere:"; -"faq_troubleshoot1" = "• Assicurati di aver accettato il permesso di estensione di rete."; -"faq_troubleshoot2" = "• Prova a riavviare l'applicazione."; -"faq_troubleshoot3" = "• Verifica se la configurazione IP è valida."; -"faq_troubleshoot4" = "• Riavvia il dispositivo se i problemi persistono."; -"faq_q4" = "Per chi è questa app?"; -"faq_q4_intro" = "LocalDevVPN è progettato principalmente per:"; -"faq_q4_case1" = "• Sviluppatori che testano server web locali."; -"faq_q4_case2" = "• Sviluppatori app che testano funzionalità di rete."; -"faq_q4_case3" = "• Ingegneri QA che testano app in ambienti isolati."; -"faq_q4_case4" = "• Chiunque necessiti di accedere a servizi locali sull'iOS."; -"faq_q4_conclusion" = "Questa app è disponibile al pubblico ed è utile per sviluppatori che devono testare app con funzionalità di rete su iOS."; -"business_model_header" = "Modello di Business"; -"biz_q1" = "Come funziona LocalDevVPN?"; -"biz_q1_a1" = "LocalDevVPN è un'app completamente gratuita disponibile al pubblico. Non ci sono funzionalità a pagamento, abbonamenti o acquisti in‑app."; -"biz_key_points_header" = "Punti chiave del nostro modello:"; -"biz_point1" = "• L'app non è vincolata a nessuna azienda o gruppo."; -"biz_point2" = "• Chiunque può scaricare e usare l'app dall'App Store."; -"biz_point3" = "• Non è necessario creare un account."; -"biz_point4" = "• Tutte le funzionalità sono gratuite per tutti gli utenti."; -"biz_point5" = "• L'app è sviluppata e mantenuta come utility open per la comunità iOS."; -"app_info_header" = "Informazioni App"; -"requires_ios" = "Richiede iOS 14.0 o superiore"; -"uses_network_extension" = "Usa le Network Extension API di Apple"; -"help_and_support_nav" = "Guida & Supporto"; -"setup_welcome_title" = "Benvenuto in LocalDevVPN"; -"setup_welcome_description" = "Un semplice tunnel di rete locale per sviluppatori"; -"setup_welcome_details" = "LocalDevVPN crea un'interfaccia di rete locale per sviluppo, test e accesso a server locali. Questa app NON raccoglie dati utente né instrada il traffico attraverso server esterni."; -"setup_why_title" = "Perché Usare LocalDevVPN?"; -"setup_why_description" = "Perfetto per sviluppatori iOS"; -"setup_why_details" = "• Accedi a server web locali e ambienti di sviluppo\n• Testa app che richiedono configurazioni di rete specifiche\n• Connettiti a servizi di rete locali senza setup complessi\n• Crea ambienti isolati per test"; -"setup_easy_title" = "Facile da Usare"; -"setup_easy_description" = "Basta un tap per connettersi"; -"setup_easy_details" = "LocalDevVPN è progettato per essere semplice. Basta toccare il pulsante di connessione per stabilire un tunnel locale con impostazioni preconfigurate."; -"setup_privacy_title" = "Focalizzato sulla Privacy"; -"setup_privacy_description" = "I tuoi dati restano sul dispositivo"; -"setup_privacy_details" = "LocalDevVPN crea un tunnel locale che non instrada il traffico attraverso server esterni. Tutto il traffico rimane sul tuo dispositivo, garantendo privacy e sicurezza. Nessun dato viene raccolto o condiviso con terze parti."; -"setup_nav" = "Setup"; -"setup_get_started" = "Inizia"; -"setup_next" = "Avanti"; -"setup_skip" = "Salta"; +"data_collection_policy_title" = "Politica di Raccolta Dati"; +"no_data_collection" = "Nessuna raccolta di dati"; +"no_data_collection_description" = "LocalDevVPN NON raccoglie dati utente, informazioni sul traffico o attività di navigazione. Questa app crea un tunnel di rete locale che rimane interamente sul tuo dispositivo."; +"local_processing_only" = "Elaborazione solo sul tuo smartphone"; +"local_processing_only_description" = "Tutto il traffico di rete e le configurazioni vengono elaborate localmente sul tuo dispositivo. Nessuna informazione lascia mai il dispositivo o viene trasmessa su Internet."; +"no_third_party_sharing" = "Nessuna condivisione con servizi di terze parti"; +"no_third_party_sharing_description" = "Poiché non raccogliamo dati, non c'è alcuna condivisione con terze parti. Non abbiamo analisi, tracciamento o meccanismi di raccolta dati in questa app."; +"why_use_network_permissions" = "Perché concedere i permessi di Rete?"; +"why_use_network_permissions_description" = "LocalDevVPN richiede permessi di estensione di rete per creare un'interfaccia di rete locale sul tuo dispositivo. Questo è utilizzato esclusivamente per sviluppo e test locali sul tuo dispositivo."; +"our_promise" = "La nostra promessa"; +"our_promise_description" = "Ci impegniamo per la privacy e la trasparenza. Questa app è progettata per sviluppatori per testare e connettersi a server locali senza preoccupazioni sulla privacy."; +"data_collection_policy_nav"= "Raccolta Dati"; +"logs_nav" = "Log di connessione"; +"faq_header" = "Domande Frequenti"; +"faq_q1" = "Cosa fa LocalDevVPN?"; +"faq_q1_a1" = "LocalDevVPN crea un'interfaccia di rete locale utilizzabile per sviluppo e test. Non instrada il traffico attraverso server esterni, tutto rimane sul dispositivo."; +"faq_common_use_cases" = "I casi d'uso comuni includono:"; +"faq_case1" = "• Test di applicazioni web con server locali."; +"faq_case2" = "• Sviluppo e Debug di funzionalità di rete."; +"faq_case3" = "• Accesso ad ambienti di sviluppo locali ospitati."; +"faq_case4" = "• Test di applicazioni che richiedono configurazioni di rete specifiche."; +"faq_q2" = "È un VPN tradizionale?"; +"faq_q2_a1" = "No, LocalDevVPN NON è un servizio VPN tradizionale. Non:"; +"faq_q2_point1" = "• Instrada il tuo traffico attraverso server esterni."; +"faq_q2_point2" = "• Garantisce privacy e la navigazione in incognito."; +"faq_q2_point3" = "• Esegue connessioni a server VPN remoti."; +"faq_q2_point4" = "• Cripta o instrada il tuo traffico internet."; +"faq_q2_a2" = "LocalDevVPN crea solo un'interfaccia di rete locale per aiutare gli sviluppatori a connettersi a servizi locali per lo sviluppo e test."; +"faq_q3" = "Perché non si connette?"; +"faq_q3_a1" = "Un errore durante la connessione può essere dovuto a permessi di sistema, errori di configurazione o restrizioni di iOS."; +"faq_troubleshoot_header" = "Passaggi per risolvere:"; +"faq_troubleshoot1" = "• Assicurati di aver accettato il permesso di estensione di rete."; +"faq_troubleshoot2" = "• Prova a riavviare l'applicazione."; +"faq_troubleshoot3" = "• Verifica se la configurazione IP è valida."; +"faq_troubleshoot4" = "• Riavvia il dispositivo se i problemi persistono."; +"faq_q4" = "A chi è rivolta questa app?"; +"faq_q4_intro" = "LocalDevVPN è progettato principalmente per:"; +"faq_q4_case1" = "• Sviluppatori che testano server web locali."; +"faq_q4_case2" = "• Sviluppatori app che testano funzionalità di rete."; +"faq_q4_case3" = "• Ingegneri QA che testano app in ambienti isolati."; +"faq_q4_case4" = "• Chiunque necessiti di accedere a servizi locali su iOS."; +"faq_q4_conclusion" = "Questa app è disponibile al pubblico ed è utile per sviluppatori che vogliono testare app con funzionalità di rete su iOS."; +"business_model_header" = "Modello di Business"; +"biz_q1" = "Come funziona LocalDevVPN?"; +"biz_q1_a1" = "LocalDevVPN è un'app completamente gratuita disponibile al pubblico. Non ci sono funzionalità a pagamento, abbonamenti o acquisti in‑app."; +"biz_key_points_header" = "Punti chiave del nostro modello:"; +"biz_point1" = "• L'app non è vincolata a nessuna azienda o gruppo."; +"biz_point2" = "• Chiunque può scaricare e usare l'app dall'App Store."; +"biz_point3" = "• Non è necessario creare un account."; +"biz_point4" = "• Tutte le funzionalità sono gratuite per tutti gli utenti."; +"biz_point5" = "• L'app è sviluppata e mantenuta come utility open per la comunità iOS."; +"app_info_header" = "Informazioni App"; +"requires_ios" = "Richiede iOS 14.0 o superiore"; +"uses_network_extension" = "Usa le Network Extension API di Apple"; +"help_and_support_nav" = "Guida e Supporto"; +"setup_welcome_title" = "Benvenuto in LocalDevVPN"; +"setup_welcome_description" = "Un semplice tunnel di rete locale per sviluppatori"; +"setup_welcome_details" = "LocalDevVPN crea un'interfaccia di rete locale per sviluppo, test e accesso a server locali. Questa app NON raccoglie dati utente né instrada il traffico attraverso server esterni."; +"setup_why_title" = "Perché Usare LocalDevVPN?"; +"setup_why_description" = "Perfetto per sviluppatori iOS"; +"setup_why_details" = "• Accedi a server web locali e ambienti di sviluppo.\n• Testa app che richiedono configurazioni di rete specifiche.\n• Connettiti a servizi di rete locali senza setup complessi.\n• Crea ambienti isolati per test."; +"setup_easy_title" = "Facile da Usare"; +"setup_easy_description" = "Basta un tap per connettersi"; +"setup_easy_details" = "LocalDevVPN è progettato per essere semplice. Basta premere il pulsante di connessione per creare un tunnel locale con impostazioni preimpostate."; +"setup_privacy_title" = "Incentrato sulla Privacy"; +"setup_privacy_description" = "I tuoi dati restano sul dispositivo"; +"setup_privacy_details" = "LocalDevVPN crea un tunnel locale che non instrada il traffico attraverso server esterni. Tutto il traffico rimane sul tuo dispositivo, garantendo privacy e sicurezza. Nessun dato viene raccolto o condiviso con servizi di terze parti."; +"setup_nav" = "Setup"; +"setup_get_started" = "Inizia"; +"setup_next" = "Avanti"; +"setup_skip" = "Salta"; /*MARK: Restart pop-up*/ restart_title = "Riavvia"; -restart_message = "Per applicare le modifiche, c'è bisogno di riavviare l'applicazione."; +restart_message = "Per applicare le modifiche, è necessario riavviare l'applicazione."; confirmYes = "Si"; -confirmNo = "No"; +confirmNo = "No"; \ No newline at end of file From 485877aa5f2ef5effe0e639e062c5c1d1440f72e Mon Sep 17 00:00:00 2001 From: Andrea-Filice Date: Sat, 20 Dec 2025 16:02:15 +0100 Subject: [PATCH 2/2] feat: added new languages * based on StosVPN PRs for adding languages. (#32 and #14) --- LocalDevVPN/ContentView.swift | 4 +- .../Localization/en.lproj/Localizable.strings | 2 + .../Localization/es.lproj/Localizable.strings | 2 + .../Localization/fr.lproj/Localizable.strings | 147 +++++++++++++++++ .../Localization/it.lproj/Localizable.strings | 2 + .../Localization/ko.lproj/Localizable.strings | 2 + .../Localization/pl.lproj/Localizable.strings | 2 + .../zh-Hant.lproj/Localizable.strings | 153 ++++++++++++++++++ 8 files changed, 313 insertions(+), 1 deletion(-) create mode 100644 LocalDevVPN/Localization/fr.lproj/Localizable.strings create mode 100644 LocalDevVPN/Localization/zh-Hant.lproj/Localizable.strings diff --git a/LocalDevVPN/ContentView.swift b/LocalDevVPN/ContentView.swift index fe44c32..34a41ba 100644 --- a/LocalDevVPN/ContentView.swift +++ b/LocalDevVPN/ContentView.swift @@ -1140,6 +1140,8 @@ struct SettingsView: View { Text("italian").tag("it") Text("polish").tag("pl") Text("korean").tag("ko") + Text("TChinese").tag("zh-Hant") + Text("french").tag("fr") } .onChange(of: selectedLanguage) { newValue in let languageCode = newValue @@ -1537,7 +1539,7 @@ struct SetupPageView: View { class LanguageManager: ObservableObject { static let shared = LanguageManager() @Published var currentLanguage: String = Locale.current.languageCode ?? "en" - private let supportedLanguages = ["en", "es", "it", "pl", "ko"] + private let supportedLanguages = ["en", "es", "it", "pl", "ko", "zh-Hant", "fr"] func updateLanguage(to languageCode: String) { if supportedLanguages.contains(languageCode) { diff --git a/LocalDevVPN/Localization/en.lproj/Localizable.strings b/LocalDevVPN/Localization/en.lproj/Localizable.strings index 5fc7b02..2a068cc 100644 --- a/LocalDevVPN/Localization/en.lproj/Localizable.strings +++ b/LocalDevVPN/Localization/en.lproj/Localizable.strings @@ -48,6 +48,8 @@ "italian" = "Italian"; "polish" = "Polish"; "korean" = "Korean"; +"TChinese" = "Traditional Chinese" +"french" = "French"; /* MARK: Settings */ diff --git a/LocalDevVPN/Localization/es.lproj/Localizable.strings b/LocalDevVPN/Localization/es.lproj/Localizable.strings index 5264f42..d7308a1 100644 --- a/LocalDevVPN/Localization/es.lproj/Localizable.strings +++ b/LocalDevVPN/Localization/es.lproj/Localizable.strings @@ -48,6 +48,8 @@ "italian" = "Italiano"; "polish" = "Polaco"; "korean" = "Coreano"; +"TChinese" = "Chino tradicional" +"french" = "Francés"; /* MARK: Configuración */ diff --git a/LocalDevVPN/Localization/fr.lproj/Localizable.strings b/LocalDevVPN/Localization/fr.lproj/Localizable.strings new file mode 100644 index 0000000..64bca27 --- /dev/null +++ b/LocalDevVPN/Localization/fr.lproj/Localizable.strings @@ -0,0 +1,147 @@ +/* MARK: Start Screen */ + +"current_status" = "État actuel"; + +"disconnected" = "Déconnecté"; +"connecting" = "Connexion"; +"connected" = "Connecté"; +"disconnecting" = "Déconnexion"; +"error" = "Erreur"; + +"local_tunnel_active" = "Tunnel local actif"; +"local_tunnel_inactive" = "Tunnel local inactif"; + +"connected_to_ip" = "Connecté à %@"; +"connected_at" = "Connecté à"; +"ios_might_ask_you_to_allow_the_vpn" = "iOS peut vous demander d'autoriser le VPN"; +"disconnecting_safely" = "Déconnexion sécurisée en cours…"; +"open_settings_to_review_details" = "Ouvrir les paramètres pour voir les détails"; +"tap_connect_to_create_the_tunnel" = "Touchez Se connecter pour créer le tunnel"; + +"connection" = "Connexion"; +"start_or_stop_the_secure_local_tunnel" = "Démarrez ou arrêtez le tunnel local sécurisé."; + +"connect" = "Se connecter"; +"disconnect" = "Se déconnecter"; +"connecting_ellipsis" = "Connexion..."; +"disconnecting_ellipsis" = "Déconnexion..."; +"server_address_name" = "Tunnel local LocalDevVPN"; + +"auto-connect_on_launch" = "Connexion automatique au lancement"; +"resume_your_last_state_automatically" = "Reprend automatiquement votre dernier état."; + +"session_details" = "Détails de la session"; +"live_stats_while_the_tunnel_is_connected" = "Statistiques en temps réel pendant que le tunnel est connecté."; +"local_device_ip" = "IP du périphérique local"; + +"local_tunnel_details" = "Détails du tunnel"; +"time_connected" = "Durée de connexion"; +"status" = "Statut"; +"active" = "Actif"; +"network_interface" = "Interface réseau"; +"local" = "Local"; +"assigned_ip" = "IP assignée"; + +/* MARK: Settings */ + +"connection_settings" = "Paramètres de connexion"; +"auto_connect_on_launch" = "Connexion automatique au lancement"; +"connection_logs" = "Journaux de connexion"; +"network_configuration" = "Configuration réseau"; +"device_ip" = "IP de l'appareil"; +"tunnel_ip" = "IP du tunnel"; +"subnet_mask" = "Masque de sous-réseau"; +"app_information" = "Informations sur l'App"; +"privacy_policy" = "Politique de confidentialité"; +"data_collection_policy" = "Politique de collecte de données"; +"app_version" = "Version de l'App"; +"help_and_support" = "Aide et support"; +"language" = "Langue"; +"dropdown_language" = "Langue"; + +/* MARK: Locales* / +"english" = "Anglais"; +"spanish" = "Espagnol"; +"italian" = "Italien"; +"polish" = "Polonais"; +"korean" = "Coréen"; +"TChinese" = "Chinois traditionnel" +"french" = "Français"; + +"settings" = "Paramètres"; +"done" = "Valider"; +"warning_alert" = "Avertissement"; +"warning_message" = "La modification des paramètres IP du tunnel peut interrompre votre connexion réseau. Continuez uniquement si vous êtes sûr de ce que vous faites."; +"understand_button" = "J'ai compris"; + +"data_collection_policy_title" = "Politique de collecte des données"; +"no_data_collection" = "Aucune collecte de données"; +"no_data_collection_description" = "LocalDevVPN NE collecte PAS les données utilisateur, les informations de trafic ou l'activité de navigation. Cette application crée un tunnel réseau local qui reste entièrement sur votre appareil."; +"local_processing_only" = "Traitement local uniquement"; +"local_processing_only_description" = "Tout le trafic réseau et la configuration sont traités localement sur votre appareil. Aucune information ne quitte jamais l'appareil ni n'est transmise sur Internet."; +"no_third_party_sharing" = "Aucun partage avec des tiers"; +"no_third_party_sharing_description" = "Puisque nous ne collectons aucune donnée, il n'y a pas de partage avec des tiers. Il n'y a pas d'analyses, de suivi ou de mécanismes de collecte de données dans cette application."; +"why_use_network_permissions" = "Pourquoi demander les autorisations réseau"; +"why_use_network_permissions_description" = "LocalDevVPN nécessite des autorisations d'extension réseau pour créer une interface réseau locale sur votre appareil. Ceci est utilisé exclusivement pour le développement et les tests locaux."; +"our_promise" = "Notre engagement"; +"our_promise_description" = "Nous nous engageons à respecter la confidentialité et la transparence. Cette application est conçue pour permettre aux développeurs de tester et de se connecter à des serveurs locaux sans aucune préoccupation de confidentialité."; +"data_collection_policy_nav" = "Collecte des données"; +"logs_nav" = "Journaux"; +"faq_header" = "Questions fréquentes"; +"faq_q1" = "Que fait cette application?"; +"faq_q1_a1" = "LocalDevVPN crée une interface réseau locale pour le développement et les tests. Elle ne redirige pas le trafic via des serveurs externes: tout reste sur l'appareil."; +"faq_common_use_cases" = "Cas d'utilisation courants:"; +"faq_case1" = "• Tests d'applications web avec des serveurs locaux"; +"faq_case2" = "• Développement et débogage de fonctionnalités réseau"; +"faq_case3" = "• Accès à des environnements de développement locaux hébergés"; +"faq_case4" = "• Tests d'applications nécessitant des configurations réseau spécifiques"; +"faq_q2" = "Est-ce un VPN traditionnel?"; +"faq_q2_a1" = "Non, LocalDevVPN n'est PAS un service VPN traditionnel. Il:"; +"faq_q2_point1" = "• NE redirige pas votre trafic via des serveurs externes"; +"faq_q2_point2" = "• N'offre pas de confidentialité ou d'anonymat pour la navigation"; +"faq_q2_point3" = "• NE se connecte pas à des serveurs VPN distants"; +"faq_q2_point4" = "• NE chiffre ni ne redirige votre trafic Internet"; +"faq_q2_a2" = "LocalDevVPN crée uniquement une interface réseau locale pour permettre aux développeurs de se connecter à des services locaux à des fins de développement et de test."; +"faq_q3" = "Pourquoi la connexion échoue-t-elle?"; +"faq_q3_a1" = "Les échecs de connexion peuvent être dus à des autorisations système, à des erreurs de configuration ou à des restrictions iOS."; +"faq_troubleshoot_header" = "Étapes de dépannage:"; +"faq_troubleshoot1" = "• Assurez-vous d'avoir approuvé l'autorisation d'extension réseau"; +"faq_troubleshoot2" = "• Essayez de redémarrer l'application"; +"faq_troubleshoot3" = "• Vérifiez si la configuration IP est valide"; +"faq_troubleshoot4" = "• Redémarrez l'appareil si les problèmes persistent"; +"faq_q4" = "À qui s'adresse cette app?"; +"faq_q4_intro" = "LocalDevVPN est principalement destiné pour:"; +"faq_q4_case1" = "• Les développeurs testant des serveurs web locaux"; +"faq_q4_case2" = "• Les développeurs d'applications testant des fonctionnalités réseau"; +"faq_q4_case3" = "• Les ingénieurs QA testant des applications en environnement isolé"; +"faq_q4_case4" = "• Toute personne ayant besoin d'accéder à des services locaux sur iOS"; +"faq_q4_conclusion" = "Cette app est publique et utile aux développeurs qui ont besoin de tester des applications avec des fonctionnalités réseau sur iOS."; +"business_model_header" = "Modèle économique"; +"biz_q1" = "Comment fonctionne LocalDevVPN?"; +"biz_q1_a1" = "LocalDevVPN est une app entièrement gratuite, disponible pour tous. Il n'y a aucune fonctionnalité payante, aucun abonnement ni achat intégré."; +"biz_key_points_header" = "Points clés de notre modèle:"; +"biz_point1" = "• L'application n'est liée à aucune entreprise ou groupe"; +"biz_point2" = "• N'importe qui peut télécharger et utiliser l'application depuis l'App Store"; +"biz_point3" = "• Aucune création de compte n'est requise"; +"biz_point4" = "• Toutes les fonctionnalités sont gratuites pour tous les utilisateurs"; +"biz_point5" = "• L'application est développée et maintenue comme un utilitaire ouvert pour la communauté iOS"; +"app_info_header" = "Informations sur l'App"; +"requires_ios" = "Nécessite iOS 16.0 ou version ultérieure"; +"uses_network_extension" = "Utilise les API Network Extension d'Apple"; +"help_and_support_nav" = "Aide & support"; +"setup_welcome_title" = "Bienvenue sur LocalDevVPN"; +"setup_welcome_description" = "Un tunnel réseau local simple pour les développeurs"; +"setup_welcome_details" = "LocalDevVPN crée une interface réseau locale pour le développement, les tests et l'accès à des serveurs locaux. Cette application NE collecte pas de données utilisateur et ne redirige pas le trafic via des serveurs externes."; +"setup_why_title" = "Pourquoi utiliser LocalDevVPN?"; +"setup_why_description" = "Parfait pour les développeurs iOS"; +"setup_why_details" = "• Accédez à des serveurs web locaux et à des environnements de développement\n• Testez des applications nécessitant des configurations réseau spécifiques\n• Connectez-vous à des services réseau locaux sans configuration complexe\n• Créez des environnements de test isolés"; +"setup_easy_title" = "Facile à utiliser"; +"setup_easy_description" = "Une seule pression pour se connecter"; +"setup_easy_details" = "LocalDevVPN a été conçu pour être simple. Appuyez simplement sur le bouton de connexion pour établir un tunnel local avec des paramètres préconfigurés."; +"setup_privacy_title" = "Respect de la vie privée"; +"setup_privacy_description" = "Vos données restent sur l'appareil"; +"setup_privacy_details" = "LocalDevVPN crée un tunnel local qui ne redirige pas le trafic via des serveurs externes. Tout le trafic reste sur votre appareil, garantissant confidentialité et sécurité. Aucune donnée n'est collectée ou partagée avec des tiers."; +"setup_nav" = "Configuration"; +"setup_get_started" = "Commencer"; +"setup_next" = "Suivant"; +"setup_skip" = "Ignorer"; \ No newline at end of file diff --git a/LocalDevVPN/Localization/it.lproj/Localizable.strings b/LocalDevVPN/Localization/it.lproj/Localizable.strings index 84c0144..bb2b2c5 100644 --- a/LocalDevVPN/Localization/it.lproj/Localizable.strings +++ b/LocalDevVPN/Localization/it.lproj/Localizable.strings @@ -48,6 +48,8 @@ "italian" = "Italiano"; "polish" = "Polacco"; "korean" = "Coreano"; +"TChinese" = "Cinese Tradizionale" +"french" = "Francese"; /* MARK: Settings*/ diff --git a/LocalDevVPN/Localization/ko.lproj/Localizable.strings b/LocalDevVPN/Localization/ko.lproj/Localizable.strings index 9f3b2c7..2533919 100644 --- a/LocalDevVPN/Localization/ko.lproj/Localizable.strings +++ b/LocalDevVPN/Localization/ko.lproj/Localizable.strings @@ -48,6 +48,8 @@ "italian" = "이탈리아어"; "polish" = "폴란드어"; "korean" = "한국어"; +"TChinese" = "중국어(번체)" +"french" = "프랑스어"; /* MARK: Settings */ diff --git a/LocalDevVPN/Localization/pl.lproj/Localizable.strings b/LocalDevVPN/Localization/pl.lproj/Localizable.strings index 5b1439f..8b855f6 100644 --- a/LocalDevVPN/Localization/pl.lproj/Localizable.strings +++ b/LocalDevVPN/Localization/pl.lproj/Localizable.strings @@ -49,6 +49,8 @@ "italian" = "Włoski"; "polish" = "Polski"; "korean" = "koreański"; +"TChinese" = "Tradycyjny chiński" +"french" = "Francuski"; /* MARK: Settings */ diff --git a/LocalDevVPN/Localization/zh-Hant.lproj/Localizable.strings b/LocalDevVPN/Localization/zh-Hant.lproj/Localizable.strings new file mode 100644 index 0000000..00e9c4c --- /dev/null +++ b/LocalDevVPN/Localization/zh-Hant.lproj/Localizable.strings @@ -0,0 +1,153 @@ +/* MARK: Start Screen */ + +"current_status" = "現狀"; + +"disconnected" = "已中斷連線"; +"connecting" = "連線中"; +"connected" = "已連線"; +"disconnecting" = "中斷連線中"; +"error" = "錯誤"; + +"local_tunnel_active" = "本地通道已啟動"; +"local_tunnel_inactive" = "本地通道未啟動"; + +"connected_to_ip" = "已連接至 %@"; +"connected_at" = "連接於"; +"ios_might_ask_you_to_allow_the_vpn" = "iOS可能會要求您允許VPN"; +"disconnecting_safely" = "安全地中斷連線中…"; +"open_settings_to_review_details" = "開啟設定以查看詳細資訊"; +"tap_connect_to_create_the_tunnel" = "點選「連線」以建立通道"; + +"connection" = "連線"; +"start_or_stop_the_secure_local_tunnel" = "啟動或停止安全的本地通道。"; + +"connect" = "連線"; +"disconnect" = "斷線"; +"connecting_ellipsis" = "連線中..."; +"disconnecting_ellipsis" = "中斷連線中..."; +"server_address_name" = "LocalDevVPN 本地通道"; + +"auto-connect_on_launch" = "啟動時自動連線"; +"resume_your_last_state_automatically" = "自動恢復您上次的狀態。"; + +"session_details" = "工作階段詳細資訊"; +"live_stats_while_the_tunnel_is_connected" = "通道連接時的即時統計資料。"; +"local_device_ip" = "本地設備IP"; + +"local_tunnel_details" = "通道詳細資訊"; +"time_connected" = "連線時間"; +"status" = "狀態"; +"active" = "啟用中"; +"network_interface" = "網路介面"; +"local" = "本地"; +"assigned_ip" = "分配的IP"; + +/* MARK: Settings */ + +"connection_settings" = "連線設定"; +"auto_connect_on_launch" = "啟動時自動連線"; +"connection_logs" = "連線紀錄"; +"network_configuration" = "網路設定"; +"device_ip" = "裝置IP"; +"tunnel_ip" = "通道IP"; +"subnet_mask" = "子網路遮罩"; +"app_information" = "應用程式資訊"; +"privacy_policy" = "隱私權政策"; +"data_collection_policy" = "資料收集政策"; +"app_version" = "應用程式版本"; +"help_and_support" = "協助與支援"; +"language" = "語言"; +"dropdown_language" = "語言"; + +/*MARK: Locales*/ +"english" = "英文"; +"spanish" = "西班牙文"; +"italian" = "義大利文"; +"polish" = "波蘭文"; +"korean" = "韓文"; +"TChinese" = "繁體中文" +"french" = "法語"; + +"settings" = "設定"; +"done" = "完成"; +"warning_alert" = "警告"; +"warning_message" = "更改通道IP設定可能會中斷您的網路連線。僅在完全了解操作時才繼續。"; +"understand_button" = "我了解"; + +"data_collection_policy_title" = "資料收集政策"; +"no_data_collection" = "不收集資料"; +"no_data_collection_description" = "LocalDevVPN 不會收集使用者資料、流量資訊或瀏覽紀錄。此應用程式僅建立在裝置上的本地網路通道。"; +"local_processing_only" = "僅本地處理"; +"local_processing_only_description" = "所有網路流量和設定皆在您的裝置上處理。資訊不會離開裝置或傳輸到網際網路。"; +"no_third_party_sharing" = "不與第三方共享"; +"no_third_party_sharing_description" = "由於我們不收集資料,因此也不會與第三方共享。此應用程式中沒有分析、追蹤或資料收集機制。"; +"why_use_network_permissions" = "為何需要網路權限"; +"why_use_network_permissions_description" = "LocalDevVPN 需要網路延伸權限來建立裝置上的本地網路介面。這僅用於本地開發與測試。"; +"our_promise" = "我們的承諾"; +"our_promise_description" = "我們重視隱私與透明度。此應用程式專為開發者設計,可在無隱私疑慮下連接本地服務。"; +"data_collection_policy_nav" = "資料收集"; +"logs_nav" = "紀錄"; +"faq_header" = "常見問題"; +"faq_q1" = "這個應用程式是做什麼的?"; +"faq_q1_a1" = "LocalDevVPN 建立本地網路介面以供開發與測試使用。它不會透過外部伺服器傳送流量:所有操作皆在裝置上進行。"; +"faq_common_use_cases" = "常見使用情境包括:"; +"faq_case1" = "• 使用本地伺服器進行網頁應用測試"; +"faq_case2" = "• 網路功能的開發與除錯"; +"faq_case3" = "• 存取本地開發環境"; +"faq_case4" = "• 測試需要特定網路設定的應用程式"; +"faq_q2" = "這是傳統 VPN 嗎?"; +"faq_q2_a1" = "不,LocalDevVPN 並非傳統 VPN 服務。它不會:"; +"faq_q2_point1" = "• 將您的流量透過外部伺服器"; +"faq_q2_point2" = "• 提供瀏覽隱私或匿名"; +"faq_q2_point3" = "• 連接到遠端 VPN 伺服器"; +"faq_q2_point4" = "• 加密或路由您的網際網路流量"; +"faq_q2_a2" = "LocalDevVPN 只建立本地網路介面,協助開發者連接本地服務進行開發與測試。"; +"faq_q3" = "為什麼連線會失敗?"; +"faq_q3_a1" = "連線失敗可能因系統權限、設定錯誤或 iOS 限制所致。"; +"faq_troubleshoot_header" = "故障排除步驟:"; +"faq_troubleshoot1" = "• 確認已批准網路延伸權限"; +"faq_troubleshoot2" = "• 嘗試重新啟動應用程式"; +"faq_troubleshoot3" = "• 檢查 IP 設定是否正確"; +"faq_troubleshoot4" = "• 問題持續則重新啟動裝置"; +"faq_q4" = "這個應用程式適合誰使用?"; +"faq_q4_intro" = "LocalDevVPN 主要適用於:"; +"faq_q4_case1" = "• 測試本地網頁伺服器的開發者"; +"faq_q4_case2" = "• 測試網路功能的應用程式開發者"; +"faq_q4_case3" = "• 在隔離環境中測試應用程式的 QA 工程師"; +"faq_q4_case4" = "• 需要存取iOS上本地服務的使用者"; +"faq_q4_conclusion" = "此應用程式公開提供,對需要在iOS上測試網路功能的開發者非常有用。"; +"business_model_header" = "商業模式"; +"biz_q1" = "LocalDevVPN 是如何運作的?"; +"biz_q1_a1" = "LocalDevVPN 是完全免費的應用程式,公開提供給所有人。沒有付費功能、訂閱或應用程式內購買。"; +"biz_key_points_header" = "我們模式的重點:"; +"biz_point1" = "• 此應用程式不隸屬任何公司或團體"; +"biz_point2" = "• 任何人都可以從App Store下載使用"; +"biz_point3" = "• 不需要建立帳號"; +"biz_point4" = "• 所有功能對所有使用者皆免費"; +"biz_point5" = "• 此應用程式作為開放工具,供iOS社群使用與維護"; +"app_info_header" = "應用程式資訊"; +"requires_ios" = "需iOS 14.0或更新版本"; +"uses_network_extension" = "使用Apple網路延伸API"; +"help_and_support_nav" = "協助與支援"; +"setup_welcome_title" = "歡迎使用LocalDevVPN"; +"setup_welcome_description" = "簡單的本地網路通道工具,專為開發者設計"; +"setup_welcome_details" = "LocalDevVPN建立本地網路介面,用於開發、測試及存取本地伺服器。此應用程式不會收集使用者資料,也不會將流量傳送到外部伺服器。"; +"setup_why_title" = "為什麼使用LocalDevVPN?"; +"setup_why_description" = "iOS開發者的最佳選擇"; +"setup_why_details" = "• 存取本地網頁伺服器與開發環境\n• 測試需要特定網路設定的應用程式\n• 無需複雜設定即可連接本地網路服務\n• 創建隔離的測試環境"; +"setup_easy_title" = "操作簡單"; +"setup_easy_description" = "只需一鍵即可連線"; +"setup_easy_details" = "LocalDevVPN設計簡單明瞭,只要點擊連線按鈕即可建立本地通道並使用預設設定。"; +"setup_privacy_title" = "重視隱私"; +"setup_privacy_description" = "您的資料僅存在裝置上"; +"setup_privacy_details" = "LocalDevVPN建立本地通道,不會將流量傳送至外部伺服器。所有流量都停留在裝置上,確保隱私與安全。資料不會被收集或與第三方共享。"; +"setup_nav" = "設定"; +"setup_get_started" = "開始使用"; +"setup_next" = "下一步"; +"setup_skip" = "略過"; + +/*MARK: Restart pop-up*/ +restart_title = "重新啟動"; +restart_message = "要套用變更,必須重新啟動應用程式。"; +confirmYes = "是"; +confirmNo = "不"; \ No newline at end of file