2022-04-12 13:09:14 +00:00
// s w i f t l i n t : d i s a b l e a l l
// G e n e r a t e d u s i n g S w i f t G e n — h t t p s : / / g i t h u b . c o m / S w i f t G e n / S w i f t G e n
import Foundation
2022-08-27 20:42:52 +00:00
// s w i f t l i n t : d i s a b l e s u p e r f l u o u s _ d i s a b l e _ c o m m a n d f i l e _ l e n g t h i m p l i c i t _ r e t u r n p r e f e r _ s e l f _ i n _ s t a t i c _ r e f e r e n c e s
2022-04-12 13:09:14 +00:00
// MARK: - S t r i n g s
// s w i f t l i n t : d i s a b l e e x p l i c i t _ t y p e _ i n t e r f a c e f u n c t i o n _ p a r a m e t e r _ c o u n t i d e n t i f i e r _ n a m e l i n e _ l e n g t h
// s w i f t l i n t : d i s a b l e n e s t i n g t y p e _ b o d y _ l e n g t h t y p e _ n a m e v e r t i c a l _ w h i t e s p a c e _ o p e n i n g _ b r a c e s
internal enum L10n {
internal enum About {
2022-08-27 20:42:52 +00:00
// / MARK: A b o u t V i e w
internal static let title = L10n . tr ( " Localizable " , " about.title " , fallback : " About " )
2022-04-12 13:09:14 +00:00
internal enum Items {
internal enum Credits {
// / C r e d i t s
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " about.items.credits.caption " , fallback : " Credits " )
2022-04-12 13:09:14 +00:00
}
internal enum Disclaimer {
// / D i s c l a i m e r
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " about.items.disclaimer.caption " , fallback : " Disclaimer " )
2022-04-12 13:09:14 +00:00
}
2022-09-03 08:30:39 +00:00
internal enum JoinCommunity {
// / J o i n c o m m u n i t y
internal static let caption = L10n . tr ( " Localizable " , " about.items.join_community.caption " , fallback : " Join community " )
}
2022-04-12 13:09:14 +00:00
internal enum PrivacyPolicy {
// / P r i v a c y p o l i c y
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " about.items.privacy_policy.caption " , fallback : " Privacy policy " )
2022-04-12 13:09:14 +00:00
}
2022-09-03 08:30:39 +00:00
internal enum ShareTwitter {
// / T w e e t a b o u t i t !
internal static let caption = L10n . tr ( " Localizable " , " about.items.share_twitter.caption " , fallback : " Tweet about it! " )
}
2022-04-12 13:09:14 +00:00
internal enum Website {
// / H o m e p a g e
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " about.items.website.caption " , fallback : " Home page " )
2022-04-12 13:09:14 +00:00
}
2022-09-03 08:30:39 +00:00
internal enum WriteReview {
// / W r i t e a r e v i e w
internal static let caption = L10n . tr ( " Localizable " , " about.items.write_review.caption " , fallback : " Write a review " )
}
2022-04-12 13:09:14 +00:00
}
internal enum Sections {
internal enum Web {
// / W e b
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " about.sections.web.header " , fallback : " Web " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Account {
2022-08-27 20:42:52 +00:00
// / MARK: P r o f i l e V i e w - > A c c o u n t V i e w
internal static let title = L10n . tr ( " Localizable " , " account.title " , fallback : " Account " )
2022-04-12 13:09:14 +00:00
internal enum Items {
2023-03-17 15:49:35 +00:00
internal enum AuthenticationMethod {
// / I n t e r a c t i v e
internal static let interactive = L10n . tr ( " Localizable " , " account.items.authentication_method.interactive " , fallback : " Interactive " )
// / P e r s i s t e n t
internal static let persistent = L10n . tr ( " Localizable " , " account.items.authentication_method.persistent " , fallback : " Persistent " )
}
2022-04-12 13:09:14 +00:00
internal enum OpenGuide {
// / S e e y o u r c r e d e n t i a l s
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " account.items.open_guide.caption " , fallback : " See your credentials " )
2022-04-12 13:09:14 +00:00
}
internal enum Password {
// / P a s s w o r d
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " account.items.password.caption " , fallback : " Password " )
2022-04-12 13:09:14 +00:00
// / s e c r e t
2022-08-27 20:42:52 +00:00
internal static let placeholder = L10n . tr ( " Localizable " , " account.items.password.placeholder " , fallback : " secret " )
2022-04-12 13:09:14 +00:00
}
2023-03-17 15:49:35 +00:00
internal enum Seed {
// / S e e d
internal static let caption = L10n . tr ( " Localizable " , " account.items.seed.caption " , fallback : " Seed " )
}
2022-04-12 13:09:14 +00:00
internal enum Signup {
// / R e g i s t e r w i t h % @
internal static func caption ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " account.items.signup.caption " , String ( describing : p1 ) , fallback : " Register with %@ " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Username {
// / U s e r n a m e
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " account.items.username.caption " , fallback : " Username " )
2022-04-12 13:09:14 +00:00
// / u s e r n a m e
2022-08-27 20:42:52 +00:00
internal static let placeholder = L10n . tr ( " Localizable " , " account.items.username.placeholder " , fallback : " username " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Sections {
internal enum Credentials {
// / C r e d e n t i a l s
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " account.sections.credentials.header " , fallback : " Credentials " )
2022-04-12 13:09:14 +00:00
}
internal enum Guidance {
internal enum Footer {
internal enum Infrastructure {
// / U s e y o u r % @ w e b s i t e c r e d e n t i a l s . Y o u r u s e r n a m e i s u s u a l l y n u m e r i c ( w i t h o u t s p a c e s ) .
internal static func mullvad ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " account.sections.guidance.footer.infrastructure.mullvad " , String ( describing : p1 ) , fallback : " Use your %@ website credentials. Your username is usually numeric (without spaces). " )
2022-04-12 13:09:14 +00:00
}
// / U s e y o u r % @ w e b s i t e c r e d e n t i a l s . Y o u r u s e r n a m e i s u s u a l l y y o u r e - m a i l .
internal static func nordvpn ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " account.sections.guidance.footer.infrastructure.nordvpn " , String ( describing : p1 ) , fallback : " Use your %@ website credentials. Your username is usually your e-mail. " )
2022-04-12 13:09:14 +00:00
}
// / U s e y o u r % @ w e b s i t e c r e d e n t i a l s . Y o u r u s e r n a m e i s u s u a l l y n u m e r i c w i t h a " p " p r e f i x .
internal static func pia ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " account.sections.guidance.footer.infrastructure.pia " , String ( describing : p1 ) , fallback : " Use your %@ website credentials. Your username is usually numeric with a \" p \" prefix. " )
2022-04-12 13:09:14 +00:00
}
// / F i n d y o u r % @ c r e d e n t i a l s i n t h e " A c c o u n t > O p e n V P N / I K E v 2 U s e r n a m e " s e c t i o n o f t h e w e b s i t e .
internal static func protonvpn ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " account.sections.guidance.footer.infrastructure.protonvpn " , String ( describing : p1 ) , fallback : " Find your %@ credentials in the \" Account > OpenVPN / IKEv2 Username \" section of the website. " )
2022-04-12 13:09:14 +00:00
}
// / U s e y o u r % @ w e b s i t e c r e d e n t i a l s . Y o u r u s e r n a m e i s u s u a l l y y o u r e - m a i l .
internal static func tunnelbear ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " account.sections.guidance.footer.infrastructure.tunnelbear " , String ( describing : p1 ) , fallback : " Use your %@ website credentials. Your username is usually your e-mail. " )
2022-04-12 13:09:14 +00:00
}
// / U s e y o u r % @ w e b s i t e c r e d e n t i a l s . Y o u r u s e r n a m e i s u s u a l l y y o u r e - m a i l .
internal static func vyprvpn ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " account.sections.guidance.footer.infrastructure.vyprvpn " , String ( describing : p1 ) , fallback : " Use your %@ website credentials. Your username is usually your e-mail. " )
2022-04-12 13:09:14 +00:00
}
// / F i n d y o u r % @ c r e d e n t i a l s i n t h e O p e n V P N C o n f i g G e n e r a t o r o n t h e w e b s i t e .
internal static func windscribe ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " account.sections.guidance.footer.infrastructure.windscribe " , String ( describing : p1 ) , fallback : " Find your %@ credentials in the OpenVPN Config Generator on the website. " )
2022-04-12 13:09:14 +00:00
}
internal enum Default {
// / U s e y o u r % @ s e r v i c e c r e d e n t i a l s , w h i c h m a y d i f f e r f r o m w e b s i t e c r e d e n t i a l s .
internal static func specific ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " account.sections.guidance.footer.infrastructure.default.specific " , String ( describing : p1 ) , fallback : " Use your %@ service credentials, which may differ from website credentials. " )
2022-04-12 13:09:14 +00:00
}
// / U s e y o u r % @ w e b s i t e c r e d e n t i a l s .
internal static func web ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " account.sections.guidance.footer.infrastructure.default.web " , String ( describing : p1 ) , fallback : " Use your %@ website credentials. " )
2022-04-12 13:09:14 +00:00
}
}
}
}
}
internal enum Registration {
// / G o g e t a n a c c o u n t o n t h e % @ w e b s i t e .
internal static func footer ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " account.sections.registration.footer " , String ( describing : p1 ) , fallback : " Go get an account on the %@ website. " )
2022-04-12 13:09:14 +00:00
}
}
}
}
internal enum AddProfile {
internal enum Host {
internal enum Sections {
internal enum Encryption {
2022-08-27 20:42:52 +00:00
// / MARK: A d d H o s t V i e w
internal static let footer = L10n . tr ( " Localizable " , " add_profile.host.sections.encryption.footer " , fallback : " Enter passphrase " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Provider {
internal enum Errors {
// / C o u l d n o t f i n d a n y s e r v e r .
2022-08-27 20:42:52 +00:00
internal static let noDefaultServer = L10n . tr ( " Localizable " , " add_profile.provider.errors.no_default_server " , fallback : " Could not find any server. " )
2022-04-12 13:09:14 +00:00
}
internal enum Items {
// / U p d a t e l i s t
2022-08-27 20:42:52 +00:00
internal static let updateList = L10n . tr ( " Localizable " , " add_profile.provider.items.update_list " , fallback : " Update list " )
2022-04-12 13:09:14 +00:00
}
internal enum Sections {
internal enum Vpn {
2022-08-27 20:42:52 +00:00
// / MARK: A d d P r o v i d e r V i e w
internal static let footer = L10n . tr ( " Localizable " , " add_profile.provider.sections.vpn.footer " , fallback : " Here you find a few providers with preset configuration profiles. " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Shared {
2022-08-27 20:42:52 +00:00
// / MARK: A d d P r o f i l e V i e w
internal static let title = L10n . tr ( " Localizable " , " add_profile.shared.title " , fallback : " New profile " )
2022-04-12 13:09:14 +00:00
internal enum Alerts {
internal enum Overwrite {
// / A p r o f i l e w i t h t h e s a m e n a m e a l r e a d y e x i s t s . R e p l a c e i t ?
2022-08-27 20:42:52 +00:00
internal static let message = L10n . tr ( " Localizable " , " add_profile.shared.alerts.overwrite.message " , fallback : " A profile with the same name already exists. Replace it? " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Views {
internal enum Existing {
// / E x i s t i n g p r o f i l e s
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " add_profile.shared.views.existing.header " , fallback : " Existing profiles " )
2022-04-12 13:09:14 +00:00
}
}
}
}
internal enum Credits {
2022-08-27 20:42:52 +00:00
// / MARK: A b o u t V i e w - > C r e d i t s V i e w
internal static let title = L10n . tr ( " Localizable " , " credits.title " , fallback : " Credits " )
2022-04-12 13:09:14 +00:00
internal enum Sections {
internal enum Licenses {
// / L i c e n s e s
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " credits.sections.licenses.header " , fallback : " Licenses " )
2022-04-12 13:09:14 +00:00
}
internal enum Notices {
// / N o t i c e s
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " credits.sections.notices.header " , fallback : " Notices " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum DebugLog {
2022-08-27 20:42:52 +00:00
// / MARK: D i a g n o s t i c s V i e w - > D e b u g L o g V i e w
internal static let title = L10n . tr ( " Localizable " , " debug_log.title " , fallback : " Debug log " )
2022-04-12 13:09:14 +00:00
internal enum Buttons {
2022-10-29 11:23:43 +00:00
// / MARK: D i a g n o s t i c s V i e w - > D e b u g L o g V i e w
2022-08-27 20:42:52 +00:00
internal static let copy = L10n . tr ( " Localizable " , " debug_log.buttons.copy " , fallback : " Copy " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Diagnostics {
2022-08-27 20:42:52 +00:00
// / MARK: P r o f i l e V i e w - > D i a g n o s t i c s V i e w
internal static let title = L10n . tr ( " Localizable " , " diagnostics.title " , fallback : " Diagnostics " )
2022-04-12 13:09:14 +00:00
internal enum Alerts {
internal enum MasksPrivateData {
internal enum Messages {
// / I n o r d e r t o s a f e l y r e s e t t h e c u r r e n t d e b u g l o g a n d a p p l y t h e n e w m a s k i n g p r e f e r e n c e , y o u m u s t r e c o n n e c t t o t h e V P N n o w .
2022-08-27 20:42:52 +00:00
internal static let mustReconnect = L10n . tr ( " Localizable " , " diagnostics.alerts.masks_private_data.messages.must_reconnect " , fallback : " In order to safely reset the current debug log and apply the new masking preference, you must reconnect to the VPN now. " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Items {
2022-10-16 06:33:32 +00:00
internal enum AppLog {
// / A p p
internal static let title = L10n . tr ( " Localizable " , " diagnostics.items.app_log.title " , fallback : " App " )
}
2022-04-12 13:09:14 +00:00
internal enum MasksPrivateData {
// / M a s k n e t w o r k d a t a
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " diagnostics.items.masks_private_data.caption " , fallback : " Mask network data " )
2022-04-12 13:09:14 +00:00
}
internal enum ReportIssue {
// / R e p o r t c o n n e c t i v i t y i s s u e
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " diagnostics.items.report_issue.caption " , fallback : " Report connectivity issue " )
2022-04-12 13:09:14 +00:00
}
internal enum ServerConfiguration {
// / S e r v e r c o n f i g u r a t i o n
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " diagnostics.items.server_configuration.caption " , fallback : " Server configuration " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Sections {
internal enum DebugLog {
// / M a s k i n g s t a t u s w i l l b e e f f e c t i v e a f t e r r e c o n n e c t i n g . N e t w o r k d a t a a r e h o s t n a m e s , I P a d d r e s s e s , r o u t i n g , S S I D . C r e d e n t i a l s a n d p r i v a t e k e y s a r e n o t l o g g e d r e g a r d l e s s .
2022-08-27 20:42:52 +00:00
internal static let footer = L10n . tr ( " Localizable " , " diagnostics.sections.debug_log.footer " , fallback : " Masking status will be effective after reconnecting. Network data are hostnames, IP addresses, routing, SSID. Credentials and private keys are not logged regardless. " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Donate {
2022-08-27 20:42:52 +00:00
// / MARK: D o n a t e V i e w
internal static let title = L10n . tr ( " Localizable " , " donate.title " , fallback : " Donate " )
2022-04-12 13:09:14 +00:00
internal enum Alerts {
internal enum Purchase {
internal enum Failure {
// / U n a b l e t o p e r f o r m t h e d o n a t i o n . % @
internal static func message ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " donate.alerts.purchase.failure.message " , String ( describing : p1 ) , fallback : " Unable to perform the donation. %@ " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Success {
// / T h i s m e a n s a l o t t o m e a n d I r e a l l y h o p e y o u k e e p u s i n g a n d p r o m o t i n g t h i s a p p .
2022-08-27 20:42:52 +00:00
internal static let message = L10n . tr ( " Localizable " , " donate.alerts.purchase.success.message " , fallback : " This means a lot to me and I really hope you keep using and promoting this app. " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Items {
internal enum Loading {
// / L o a d i n g d o n a t i o n s
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " donate.items.loading.caption " , fallback : " Loading donations " )
2022-04-12 13:09:14 +00:00
}
internal enum Purchasing {
// / P e r f o r m i n g d o n a t i o n
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " donate.items.purchasing.caption " , fallback : " Performing donation " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Sections {
internal enum OneTime {
// / I f y o u w a n t t o d i s p l a y g r a t i t u d e f o r m y f r e e w o r k , h e r e a r e a c o u p l e a m o u n t s y o u c a n d o n a t e i n s t a n t l y .
// /
// / Y o u w i l l o n l y b e c h a r g e d o n c e p e r d o n a t i o n , a n d y o u c a n d o n a t e m u l t i p l e t i m e s .
2022-08-27 20:42:52 +00:00
internal static let footer = L10n . tr ( " Localizable " , " donate.sections.one_time.footer " , fallback : " If you want to display gratitude for my free work, here are a couple amounts you can donate instantly. \n \n You will only be charged once per donation, and you can donate multiple times. " )
2022-04-12 13:09:14 +00:00
// / O n e t i m e
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " donate.sections.one_time.header " , fallback : " One time " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Endpoint {
internal enum Advanced {
// / T e c h n i c a l d e t a i l s
2022-08-27 20:42:52 +00:00
internal static let title = L10n . tr ( " Localizable " , " endpoint.advanced.title " , fallback : " Technical details " )
2022-04-12 13:09:14 +00:00
internal enum Openvpn {
internal enum Items {
internal enum Cipher {
// / C i p h e r
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.cipher.caption " , fallback : " Cipher " )
2022-04-12 13:09:14 +00:00
}
internal enum Client {
// / C e r t i f i c a t e
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.client.caption " , fallback : " Certificate " )
2022-04-12 13:09:14 +00:00
internal enum Value {
// / N o t v e r i f i e d
2022-08-27 20:42:52 +00:00
internal static let disabled = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.client.value.disabled " , fallback : " Not verified " )
2022-04-12 13:09:14 +00:00
// / V e r i f i e d
2022-08-27 20:42:52 +00:00
internal static let enabled = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.client.value.enabled " , fallback : " Verified " )
2022-04-12 13:09:14 +00:00
}
}
internal enum ClientKey {
// / K e y
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.client_key.caption " , fallback : " Key " )
2022-04-12 13:09:14 +00:00
}
internal enum CompressionAlgorithm {
// / A l g o r i t h m
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.compression_algorithm.caption " , fallback : " Algorithm " )
2022-04-12 13:09:14 +00:00
internal enum Value {
// / U n s u p p o r t e d
2022-08-27 20:42:52 +00:00
internal static let other = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.compression_algorithm.value.other " , fallback : " Unsupported " )
2022-04-12 13:09:14 +00:00
}
}
internal enum CompressionFraming {
// / F r a m i n g
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.compression_framing.caption " , fallback : " Framing " )
2022-04-12 13:09:14 +00:00
}
internal enum Digest {
// / A u t h e n t i c a t i o n
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.digest.caption " , fallback : " Authentication " )
2022-04-12 13:09:14 +00:00
internal enum Value {
// / E m b e d d e d
2022-08-27 20:42:52 +00:00
internal static let embedded = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.digest.value.embedded " , fallback : " Embedded " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Eku {
// / E x t e n d e d v e r i f i c a t i o n
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.eku.caption " , fallback : " Extended verification " )
2022-04-12 13:09:14 +00:00
}
internal enum KeepAlive {
internal enum Value {
// / % d s e c o n d s
internal static func seconds ( _ p1 : Int ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.keep_alive.value.seconds " , p1 , fallback : " %d seconds " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum RandomEndpoint {
// / R a n d o m i z e e n d p o i n t
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.random_endpoint.caption " , fallback : " Randomize endpoint " )
2022-04-12 13:09:14 +00:00
}
2022-10-16 12:19:36 +00:00
internal enum RandomHostname {
// / R a n d o m i z e h o s t n a m e s
internal static let caption = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.random_hostname.caption " , fallback : " Randomize hostnames " )
}
2022-04-12 13:09:14 +00:00
internal enum RenegotiationSeconds {
// / R e n e g o t i a t i o n
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.renegotiation_seconds.caption " , fallback : " Renegotiation " )
2022-04-12 13:09:14 +00:00
internal enum Value {
// / a f t e r % @
internal static func after ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.renegotiation_seconds.value.after " , String ( describing : p1 ) , fallback : " after %@ " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum ResetOriginal {
// / R e s e t c o n f i g u r a t i o n
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.reset_original.caption " , fallback : " Reset configuration " )
2022-04-12 13:09:14 +00:00
}
internal enum Route {
// / R o u t e
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.route.caption " , fallback : " Route " )
2022-04-12 13:09:14 +00:00
}
internal enum TlsWrapping {
// / W r a p p i n g
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.tls_wrapping.caption " , fallback : " Wrapping " )
2022-04-12 13:09:14 +00:00
internal enum Value {
// / A u t h e n t i c a t i o n
2022-08-27 20:42:52 +00:00
internal static let auth = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.tls_wrapping.value.auth " , fallback : " Authentication " )
2022-04-12 13:09:14 +00:00
// / E n c r y p t i o n
2022-08-27 20:42:52 +00:00
internal static let crypt = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.items.tls_wrapping.value.crypt " , fallback : " Encryption " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Sections {
internal enum Communication {
// / C o m m u n i c a t i o n
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.sections.communication.header " , fallback : " Communication " )
2022-04-12 13:09:14 +00:00
}
internal enum Compression {
// / C o m p r e s s i o n
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.sections.compression.header " , fallback : " Compression " )
2022-04-12 13:09:14 +00:00
}
internal enum Network {
// / N e t w o r k
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.sections.network.header " , fallback : " Network " )
2022-04-12 13:09:14 +00:00
}
internal enum Other {
// / O t h e r
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.sections.other.header " , fallback : " Other " )
2022-04-12 13:09:14 +00:00
}
2022-10-29 11:23:43 +00:00
internal enum Pull {
// / P u l l f r o m s e r v e r
internal static let header = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.sections.pull.header " , fallback : " Pull from server " )
}
2022-04-12 13:09:14 +00:00
internal enum Reset {
// / I f y o u e n d e d u p w i t h b r o k e n c o n n e c t i v i t y a f t e r c h a n g i n g t h e c o m m u n i c a t i o n p a r a m e t e r s , t a p t o r e v e r t t o t h e o r i g i n a l c o n f i g u r a t i o n .
2022-08-27 20:42:52 +00:00
internal static let footer = L10n . tr ( " Localizable " , " endpoint.advanced.openvpn.sections.reset.footer " , fallback : " If you ended up with broken connectivity after changing the communication parameters, tap to revert to the original configuration. " )
2022-04-12 13:09:14 +00:00
}
}
}
}
2023-07-22 15:10:16 +00:00
internal enum Errors {
// / MARK: P r o f i l e V i e w - > E n d p o i n t V i e w
internal static let endpointRequired = L10n . tr ( " Localizable " , " endpoint.errors.endpoint_required " , fallback : " Please select an endpoint " )
}
2022-04-12 13:09:14 +00:00
internal enum Wireguard {
internal enum Items {
internal enum AllowedIp {
// / A l l o w e d I P
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.wireguard.items.allowed_ip.caption " , fallback : " Allowed IP " )
2022-04-12 13:09:14 +00:00
}
internal enum Peer {
2023-07-22 15:10:16 +00:00
// / P e e r
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.wireguard.items.peer.caption " , fallback : " Peer " )
2022-04-12 13:09:14 +00:00
}
internal enum PresharedKey {
// / P r e s h a r e d k e y
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " endpoint.wireguard.items.preshared_key.caption " , fallback : " Preshared key " )
2022-04-12 13:09:14 +00:00
}
}
}
}
internal enum Global {
2022-09-25 06:35:52 +00:00
internal enum Alerts {
internal enum Buttons {
// / D o n ' t a s k a g a i n
internal static let never = L10n . tr ( " Localizable " , " global.alerts.buttons.never " , fallback : " Don't ask again " )
// / R e m i n d m e l a t e r
internal static let remind = L10n . tr ( " Localizable " , " global.alerts.buttons.remind " , fallback : " Remind me later " )
}
}
2022-04-12 13:09:14 +00:00
internal enum Errors {
// / M i s s i n g a c c o u n t
2022-08-27 20:42:52 +00:00
internal static let missingAccount = L10n . tr ( " Localizable " , " global.errors.missing_account " , fallback : " Missing account " )
2022-04-12 13:09:14 +00:00
// / M i s s i n g p r o f i l e
2022-08-27 20:42:52 +00:00
internal static let missingProfile = L10n . tr ( " Localizable " , " global.errors.missing_profile " , fallback : " Missing profile " )
2022-04-12 13:09:14 +00:00
// / M i s s i n g p r e s e t
2022-08-27 20:42:52 +00:00
internal static let missingProviderPreset = L10n . tr ( " Localizable " , " global.errors.missing_provider_preset " , fallback : " Missing preset " )
2022-04-12 16:51:24 +00:00
// / M i s s i n g l o c a t i o n
2022-08-27 20:42:52 +00:00
internal static let missingProviderServer = L10n . tr ( " Localizable " , " global.errors.missing_provider_server " , fallback : " Missing location " )
2022-04-12 13:09:14 +00:00
}
internal enum Messages {
// / N o e - m a i l a c c o u n t i s c o n f i g u r e d .
2022-08-27 20:42:52 +00:00
internal static let emailNotConfigured = L10n . tr ( " Localizable " , " global.messages.email_not_configured " , fallback : " No e-mail account is configured. " )
2022-04-25 14:08:29 +00:00
// / P a s s e p a r t o u t i s a u s e r - f r i e n d l y , o p e n s o u r c e O p e n V P N / W i r e G u a r d c l i e n t f o r i O S a n d m a c O S
2022-08-27 20:42:52 +00:00
internal static let share = L10n . tr ( " Localizable " , " global.messages.share " , fallback : " Passepartout is a user-friendly, open source OpenVPN / WireGuard client for iOS and macOS " )
2023-03-20 10:00:01 +00:00
// / P a s s e p a r t o u t i s l o c k e d
internal static let unlockApp = L10n . tr ( " Localizable " , " global.messages.unlock_app " , fallback : " Passepartout is locked " )
2022-04-12 13:09:14 +00:00
}
internal enum Placeholders {
// / M y p r o f i l e
2022-08-27 20:42:52 +00:00
internal static let profileName = L10n . tr ( " Localizable " , " global.placeholders.profile_name " , fallback : " My profile " )
2022-04-12 13:09:14 +00:00
}
internal enum Strings {
// / A d d
2022-08-27 20:42:52 +00:00
internal static let add = L10n . tr ( " Localizable " , " global.strings.add " , fallback : " Add " )
2022-04-12 13:09:14 +00:00
// / A d d r e s s
2022-08-27 20:42:52 +00:00
internal static let address = L10n . tr ( " Localizable " , " global.strings.address " , fallback : " Address " )
2022-04-12 13:09:14 +00:00
// / A d d r e s s e s
2022-08-27 20:42:52 +00:00
internal static let addresses = L10n . tr ( " Localizable " , " global.strings.addresses " , fallback : " Addresses " )
2022-04-12 13:09:14 +00:00
// / A d v a n c e d
2022-08-27 20:42:52 +00:00
internal static let advanced = L10n . tr ( " Localizable " , " global.strings.advanced " , fallback : " Advanced " )
2023-04-04 15:07:41 +00:00
// / A u t h e n t i c a t i o n
internal static let authentication = L10n . tr ( " Localizable " , " global.strings.authentication " , fallback : " Authentication " )
2022-04-12 13:09:14 +00:00
// / A u t o m a t i c
2022-08-27 20:42:52 +00:00
internal static let automatic = L10n . tr ( " Localizable " , " global.strings.automatic " , fallback : " Automatic " )
2022-04-12 13:09:14 +00:00
// / B y t e s
2022-08-27 20:42:52 +00:00
internal static let bytes = L10n . tr ( " Localizable " , " global.strings.bytes " , fallback : " Bytes " )
// / MARK: G l o b a l
internal static let cancel = L10n . tr ( " Localizable " , " global.strings.cancel " , fallback : " Cancel " )
2022-04-12 16:51:24 +00:00
// / C o n f i g u r a t i o n
2022-08-27 20:42:52 +00:00
internal static let configuration = L10n . tr ( " Localizable " , " global.strings.configuration " , fallback : " Configuration " )
2022-06-25 20:11:45 +00:00
// / C o n n e c t
2022-08-27 20:42:52 +00:00
internal static let connect = L10n . tr ( " Localizable " , " global.strings.connect " , fallback : " Connect " )
2022-04-12 13:09:14 +00:00
// / D e f a u l t
2022-08-27 20:42:52 +00:00
internal static let ` default ` = L10n . tr ( " Localizable " , " global.strings.default " , fallback : " Default " )
2022-04-26 21:27:03 +00:00
// / D e l e t e
2022-08-27 20:42:52 +00:00
internal static let delete = L10n . tr ( " Localizable " , " global.strings.delete " , fallback : " Delete " )
2022-04-12 13:09:14 +00:00
// / D i s a b l e d
2022-08-27 20:42:52 +00:00
internal static let disabled = L10n . tr ( " Localizable " , " global.strings.disabled " , fallback : " Disabled " )
2022-06-25 20:11:45 +00:00
// / D i s c o n n e c t
2022-08-27 20:42:52 +00:00
internal static let disconnect = L10n . tr ( " Localizable " , " global.strings.disconnect " , fallback : " Disconnect " )
2022-04-12 13:09:14 +00:00
// / D o m a i n
2022-08-27 20:42:52 +00:00
internal static let domain = L10n . tr ( " Localizable " , " global.strings.domain " , fallback : " Domain " )
2022-04-12 13:09:14 +00:00
// / D o m a i n s
2022-08-27 20:42:52 +00:00
internal static let domains = L10n . tr ( " Localizable " , " global.strings.domains " , fallback : " Domains " )
2022-06-25 20:11:45 +00:00
// / D o w n l o a d
2022-08-27 20:42:52 +00:00
internal static let download = L10n . tr ( " Localizable " , " global.strings.download " , fallback : " Download " )
2022-04-26 20:33:16 +00:00
// / D u p l i c a t e
2022-08-27 20:42:52 +00:00
internal static let duplicate = L10n . tr ( " Localizable " , " global.strings.duplicate " , fallback : " Duplicate " )
2023-07-23 10:45:47 +00:00
// / E d i t
internal static let edit = L10n . tr ( " Localizable " , " global.strings.edit " , fallback : " Edit " )
2022-04-12 13:09:14 +00:00
// / E n a b l e d
2022-08-27 20:42:52 +00:00
internal static let enabled = L10n . tr ( " Localizable " , " global.strings.enabled " , fallback : " Enabled " )
2022-04-12 13:09:14 +00:00
// / E n c r y p t i o n
2022-08-27 20:42:52 +00:00
internal static let encryption = L10n . tr ( " Localizable " , " global.strings.encryption " , fallback : " Encryption " )
2022-04-12 13:09:14 +00:00
// / E n d p o i n t
2022-08-27 20:42:52 +00:00
internal static let endpoint = L10n . tr ( " Localizable " , " global.strings.endpoint " , fallback : " Endpoint " )
2022-04-12 13:09:14 +00:00
// / I n t e r f a c e
2022-08-27 20:42:52 +00:00
internal static let interface = L10n . tr ( " Localizable " , " global.strings.interface " , fallback : " Interface " )
2022-04-12 13:09:14 +00:00
// / K e e p - a l i v e
2022-08-27 20:42:52 +00:00
internal static let keepalive = L10n . tr ( " Localizable " , " global.strings.keepalive " , fallback : " Keep-alive " )
2022-04-12 13:09:14 +00:00
// / M a n u a l
2022-08-27 20:42:52 +00:00
internal static let manual = L10n . tr ( " Localizable " , " global.strings.manual " , fallback : " Manual " )
2022-04-12 13:09:14 +00:00
// / N a m e
2022-08-27 20:42:52 +00:00
internal static let name = L10n . tr ( " Localizable " , " global.strings.name " , fallback : " Name " )
2023-07-23 06:44:46 +00:00
// / N e t w o r k s
internal static let networks = L10n . tr ( " Localizable " , " global.strings.networks " , fallback : " Networks " )
2022-04-12 13:09:14 +00:00
// / N e x t
2022-08-27 20:42:52 +00:00
internal static let next = L10n . tr ( " Localizable " , " global.strings.next " , fallback : " Next " )
2022-04-12 13:09:14 +00:00
// / N o n e
2022-08-27 20:42:52 +00:00
internal static let ` none ` = L10n . tr ( " Localizable " , " global.strings.none " , fallback : " None " )
// / MARK: G l o b a l
internal static let ok = L10n . tr ( " Localizable " , " global.strings.ok " , fallback : " OK " )
2023-07-23 06:44:46 +00:00
// / P o l i c y
internal static let policy = L10n . tr ( " Localizable " , " global.strings.policy " , fallback : " Policy " )
2022-04-12 13:09:14 +00:00
// / P o r t
2022-08-27 20:42:52 +00:00
internal static let port = L10n . tr ( " Localizable " , " global.strings.port " , fallback : " Port " )
2022-04-12 13:09:14 +00:00
// / P r i v a t e k e y
2022-08-27 20:42:52 +00:00
internal static let privateKey = L10n . tr ( " Localizable " , " global.strings.private_key " , fallback : " Private key " )
2022-04-25 14:04:56 +00:00
// / P r o f i l e s
2022-08-27 20:42:52 +00:00
internal static let profiles = L10n . tr ( " Localizable " , " global.strings.profiles " , fallback : " Profiles " )
2022-04-12 13:09:14 +00:00
// / P r o t o c o l
2022-08-27 20:42:52 +00:00
internal static let ` protocol ` = L10n . tr ( " Localizable " , " global.strings.protocol " , fallback : " Protocol " )
2022-04-12 13:09:14 +00:00
// / P r o t o c o l s
2022-08-27 20:42:52 +00:00
internal static let protocols = L10n . tr ( " Localizable " , " global.strings.protocols " , fallback : " Protocols " )
2022-04-12 16:51:24 +00:00
// / P r o v i d e r
2022-08-27 20:42:52 +00:00
internal static let provider = L10n . tr ( " Localizable " , " global.strings.provider " , fallback : " Provider " )
2022-04-12 16:51:24 +00:00
// / P r o v i d e r s
2022-08-27 20:42:52 +00:00
internal static let providers = L10n . tr ( " Localizable " , " global.strings.providers " , fallback : " Providers " )
2022-04-12 13:09:14 +00:00
// / P r o x y
2022-08-27 20:42:52 +00:00
internal static let proxy = L10n . tr ( " Localizable " , " global.strings.proxy " , fallback : " Proxy " )
2022-04-12 13:09:14 +00:00
// / P u b l i c k e y
2022-08-27 20:42:52 +00:00
internal static let publicKey = L10n . tr ( " Localizable " , " global.strings.public_key " , fallback : " Public key " )
2022-04-12 13:09:14 +00:00
// / R e c o n n e c t
2022-08-27 20:42:52 +00:00
internal static let reconnect = L10n . tr ( " Localizable " , " global.strings.reconnect " , fallback : " Reconnect " )
2022-04-12 13:09:14 +00:00
// / R e n a m e
2022-08-27 20:42:52 +00:00
internal static let rename = L10n . tr ( " Localizable " , " global.strings.rename " , fallback : " Rename " )
2022-04-12 13:09:14 +00:00
// / S a v e
2022-08-27 20:42:52 +00:00
internal static let save = L10n . tr ( " Localizable " , " global.strings.save " , fallback : " Save " )
2022-04-12 13:09:14 +00:00
// / S e r v e r s
2022-08-27 20:42:52 +00:00
internal static let servers = L10n . tr ( " Localizable " , " global.strings.servers " , fallback : " Servers " )
2022-06-25 20:11:45 +00:00
// / S h o w
2022-08-27 20:42:52 +00:00
internal static let show = L10n . tr ( " Localizable " , " global.strings.show " , fallback : " Show " )
2022-04-12 13:09:14 +00:00
// / T r a n s l a t i o n s
2022-08-27 20:42:52 +00:00
internal static let translations = L10n . tr ( " Localizable " , " global.strings.translations " , fallback : " Translations " )
2022-04-26 21:27:03 +00:00
// / U n i n s t a l l
2022-08-27 20:42:52 +00:00
internal static let uninstall = L10n . tr ( " Localizable " , " global.strings.uninstall " , fallback : " Uninstall " )
2023-09-10 15:15:40 +00:00
// / U n k n o w n
internal static let unknown = L10n . tr ( " Localizable " , " global.strings.unknown " , fallback : " Unknown " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Menu {
2022-04-12 16:51:24 +00:00
internal enum All {
internal enum About {
// / A b o u t % @
internal static func title ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " menu.all.about.title " , String ( describing : p1 ) , fallback : " About %@ " )
2022-04-12 13:09:14 +00:00
}
}
2022-04-12 16:51:24 +00:00
internal enum Share {
// / S h a r e
2022-08-27 20:42:52 +00:00
internal static let title = L10n . tr ( " Localizable " , " menu.all.share.title " , fallback : " Share " )
2022-04-12 13:09:14 +00:00
}
2022-04-12 16:51:24 +00:00
internal enum Support {
2022-08-27 20:42:52 +00:00
// / MARK: M e n u s
internal static let title = L10n . tr ( " Localizable " , " menu.all.support.title " , fallback : " Support " )
2022-04-12 13:09:14 +00:00
}
}
2022-04-12 16:51:24 +00:00
internal enum Contextual {
// / I n v i t e
2022-08-27 20:42:52 +00:00
internal static let shareGeneric = L10n . tr ( " Localizable " , " menu.contextual.share_generic " , fallback : " Invite " )
2022-04-12 16:51:24 +00:00
// / T w e e t
2022-08-27 20:42:52 +00:00
internal static let shareTwitter = L10n . tr ( " Localizable " , " menu.contextual.share_twitter " , fallback : " Tweet " )
2022-04-12 16:51:24 +00:00
internal enum AddProfile {
// / F r o m F i l e s
2022-08-27 20:42:52 +00:00
internal static let fromFiles = L10n . tr ( " Localizable " , " menu.contextual.add_profile.from_files " , fallback : " From Files " )
2022-04-12 16:51:24 +00:00
// / F r o m t e x t
2022-08-27 20:42:52 +00:00
internal static let fromText = L10n . tr ( " Localizable " , " menu.contextual.add_profile.from_text " , fallback : " From text " )
2022-04-12 16:51:24 +00:00
// / A d d % @
internal static func imported ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " menu.contextual.add_profile.imported " , String ( describing : p1 ) , fallback : " Add %@ " )
2022-04-12 16:51:24 +00:00
}
2022-04-12 13:09:14 +00:00
}
2022-04-12 16:51:24 +00:00
internal enum Support {
// / C o m m u n i t y
2022-08-27 20:42:52 +00:00
internal static let joinCommunity = L10n . tr ( " Localizable " , " menu.contextual.support.join_community " , fallback : " Community " )
2022-04-12 16:51:24 +00:00
// / R e v i e w
2022-08-27 20:42:52 +00:00
internal static let writeReview = L10n . tr ( " Localizable " , " menu.contextual.support.write_review " , fallback : " Review " )
2022-04-12 13:09:14 +00:00
}
}
2022-04-12 16:51:24 +00:00
internal enum System {
internal enum Quit {
// / Q u i t % @
internal static func title ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " menu.system.quit.title " , String ( describing : p1 ) , fallback : " Quit %@ " )
2022-04-12 16:51:24 +00:00
}
2022-10-29 11:23:43 +00:00
internal enum Messages {
// / T h e V P N , i f e n a b l e d , w i l l s t i l l r u n i n t h e b a c k g r o u n d . D o y o u w a n t t o q u i t ?
internal static let confirm = L10n . tr ( " Localizable " , " menu.system.quit.messages.confirm " , fallback : " The VPN, if enabled, will still run in the background. Do you want to quit? " )
}
2022-04-12 16:51:24 +00:00
}
2022-04-12 13:09:14 +00:00
}
}
internal enum NetworkSettings {
2022-08-27 20:42:52 +00:00
// / MARK: P r o f i l e V i e w - > N e t w o r k S e t t i n g s V i e w
internal static let title = L10n . tr ( " Localizable " , " network_settings.title " , fallback : " Network settings " )
2022-04-12 13:09:14 +00:00
internal enum Gateway {
// / D e f a u l t g a t e w a y
2022-08-27 20:42:52 +00:00
internal static let title = L10n . tr ( " Localizable " , " network_settings.gateway.title " , fallback : " Default gateway " )
2022-04-12 13:09:14 +00:00
}
internal enum Items {
internal enum AddDnsDomain {
// / A d d s e a r c h d o m a i n
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " network_settings.items.add_dns_domain.caption " , fallback : " Add search domain " )
2022-04-12 13:09:14 +00:00
}
internal enum AddDnsServer {
// / A d d a d d r e s s
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " network_settings.items.add_dns_server.caption " , fallback : " Add address " )
2022-04-12 13:09:14 +00:00
}
internal enum AddProxyBypass {
// / A d d b y p a s s d o m a i n
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " network_settings.items.add_proxy_bypass.caption " , fallback : " Add bypass domain " )
2022-04-12 13:09:14 +00:00
}
internal enum ProxyBypass {
// / B y p a s s d o m a i n
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " network_settings.items.proxy_bypass.caption " , fallback : " Bypass domain " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Proxy {
internal enum Items {
internal enum BypassDomains {
// / B y p a s s d o m a i n s
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " network_settings.proxy.items.bypass_domains.caption " , fallback : " Bypass domains " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Sections {
internal enum Choices {
// / O v e r r i d e
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " network_settings.sections.choices.header " , fallback : " Override " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum OnDemand {
2022-08-27 20:42:52 +00:00
// / MARK: P r o f i l e V i e w - > O n D e m a n d V i e w
2023-10-10 21:00:19 +00:00
internal static let title = L10n . tr ( " Localizable " , " on_demand.title " , fallback : " On demand " )
2022-04-12 13:09:14 +00:00
internal enum Items {
internal enum AddSsid {
// / A d d W i - F i
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " on_demand.items.add_ssid.caption " , fallback : " Add Wi-Fi " )
2022-04-12 13:09:14 +00:00
}
internal enum Ethernet {
2023-07-23 06:44:46 +00:00
// / W i r e d c o n n e c t i o n s
internal static let caption = L10n . tr ( " Localizable " , " on_demand.items.ethernet.caption " , fallback : " Wired connections " )
2022-04-12 13:09:14 +00:00
}
internal enum Mobile {
// / C e l l u l a r n e t w o r k
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " on_demand.items.mobile.caption " , fallback : " Cellular network " )
2022-04-12 13:09:14 +00:00
}
2023-07-23 06:44:46 +00:00
}
internal enum Policy {
// / A l l n e t w o r k s
internal static let any = L10n . tr ( " Localizable " , " on_demand.policy.any " , fallback : " All networks " )
// / E x c l u d e
internal static let excluding = L10n . tr ( " Localizable " , " on_demand.policy.excluding " , fallback : " Exclude " )
// / I n c l u d e
internal static let including = L10n . tr ( " Localizable " , " on_demand.policy.including " , fallback : " Include " )
2022-04-12 13:09:14 +00:00
}
internal enum Sections {
internal enum Policy {
2023-07-23 06:44:46 +00:00
// / A c t i v a t e t h e V P N % @ .
internal static func footer ( _ p1 : Any ) -> String {
return L10n . tr ( " Localizable " , " on_demand.sections.policy.footer " , String ( describing : p1 ) , fallback : " Activate the VPN %@. " )
}
internal enum Footer {
// / i n a n y n e t w o r k
internal static let any = L10n . tr ( " Localizable " , " on_demand.sections.policy.footer.any " , fallback : " in any network " )
2023-10-10 21:00:19 +00:00
// / e x c e p t i n t h e n e t w o r k s b e l o w
internal static let excluding = L10n . tr ( " Localizable " , " on_demand.sections.policy.footer.excluding " , fallback : " except in the networks below " )
// / o n l y i n t h e n e t w o r k s b e l o w
internal static let including = L10n . tr ( " Localizable " , " on_demand.sections.policy.footer.including " , fallback : " only in the networks below " )
2023-07-23 06:44:46 +00:00
}
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Organizer {
internal enum Alerts {
internal enum Reddit {
// / D i d y o u k n o w t h a t P a s s e p a r t o u t h a s a s u b r e d d i t ? S u b s c r i b e f o r u p d a t e s o r t o d i s c u s s i s s u e s , f e a t u r e s , n e w p l a t f o r m s o r w h a t e v e r y o u l i k e .
// /
// / I t ' s a l s o a g r e a t w a y t o s h o w y o u c a r e a b o u t t h i s p r o j e c t .
2022-08-27 20:42:52 +00:00
internal static let message = L10n . tr ( " Localizable " , " organizer.alerts.reddit.message " , fallback : " Did you know that Passepartout has a subreddit? Subscribe for updates or to discuss issues, features, new platforms or whatever you like. \n \n It's also a great way to show you care about this project. " )
2022-04-12 13:09:14 +00:00
internal enum Buttons {
// / S u b s c r i b e n o w !
2022-08-27 20:42:52 +00:00
internal static let subscribe = L10n . tr ( " Localizable " , " organizer.alerts.reddit.buttons.subscribe " , fallback : " Subscribe now! " )
2022-04-12 13:09:14 +00:00
}
}
internal enum RemoveProfile {
// / A r e y o u s u r e y o u w a n t t o d e l e t e p r o f i l e % @ ?
internal static func message ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " organizer.alerts.remove_profile.message " , String ( describing : p1 ) , fallback : " Are you sure you want to delete profile %@? " )
2022-04-12 13:09:14 +00:00
}
}
}
2022-04-12 16:51:24 +00:00
internal enum Empty {
2022-08-27 20:42:52 +00:00
// / MARK: O r g a n i z e r V i e w
internal static let noProfiles = L10n . tr ( " Localizable " , " organizer.empty.no_profiles " , fallback : " No profiles " )
2022-04-12 13:09:14 +00:00
}
2022-04-25 14:04:56 +00:00
internal enum Sections {
2022-08-27 20:42:52 +00:00
// / MARK: O r g a n i z e r V i e w
internal static let active = L10n . tr ( " Localizable " , " organizer.sections.active " , fallback : " In use " )
2022-04-25 14:04:56 +00:00
}
2022-04-12 13:09:14 +00:00
}
internal enum Paywall {
2022-08-27 20:42:52 +00:00
// / MARK: P a y w a l l V i e w
internal static let title = L10n . tr ( " Localizable " , " paywall.title " , fallback : " Purchase " )
2022-04-12 13:09:14 +00:00
internal enum Items {
internal enum FullVersion {
// / A l l p r o v i d e r s ( i n c l u d i n g f u t u r e o n e s )
// / % @
internal static func extraDescription ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " paywall.items.full_version.extra_description " , String ( describing : p1 ) , fallback : " All providers (including future ones) \n %@ " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Loading {
// / L o a d i n g p r o d u c t s
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " paywall.items.loading.caption " , fallback : " Loading products " )
2022-04-12 13:09:14 +00:00
}
internal enum Restore {
// / I f y o u b o u g h t t h i s a p p o r f e a t u r e i n t h e p a s t , y o u c a n r e s t o r e y o u r p u r c h a s e s a n d t h i s s c r e e n w o n ' t s h o w a g a i n .
2022-08-27 20:42:52 +00:00
internal static let description = L10n . tr ( " Localizable " , " paywall.items.restore.description " , fallback : " If you bought this app or feature in the past, you can restore your purchases and this screen won't show again. " )
2022-04-12 13:09:14 +00:00
// / R e s t o r e p u r c h a s e s
2022-08-27 20:42:52 +00:00
internal static let title = L10n . tr ( " Localizable " , " paywall.items.restore.title " , fallback : " Restore purchases " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Sections {
internal enum Products {
// / E v e r y p r o d u c t i s a o n e - t i m e p u r c h a s e . P r o v i d e r p u r c h a s e s d o n o t i n c l u d e a V P N s u b s c r i p t i o n .
2022-08-27 20:42:52 +00:00
internal static let footer = L10n . tr ( " Localizable " , " paywall.sections.products.footer " , fallback : " Every product is a one-time purchase. Provider purchases do not include a VPN subscription. " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Preferences {
2022-08-27 20:42:52 +00:00
// / MARK: P r e f e r e n c e s V i e w ( m a c O S )
internal static let title = L10n . tr ( " Localizable " , " preferences.title " , fallback : " Preferences " )
2022-04-12 13:09:14 +00:00
internal enum Items {
internal enum ConfirmQuit {
// / C o n f i r m q u i t
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " preferences.items.confirm_quit.caption " , fallback : " Confirm quit " )
2022-04-12 13:09:14 +00:00
// / C h e c k t o p r e s e n t a q u i t c o n f i r m a t i o n a l e r t .
2022-08-27 20:42:52 +00:00
internal static let footer = L10n . tr ( " Localizable " , " preferences.items.confirm_quit.footer " , fallback : " Check to present a quit confirmation alert. " )
2022-04-12 13:09:14 +00:00
}
internal enum LaunchesOnLogin {
// / L a u n c h o n l o g i n
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " preferences.items.launches_on_login.caption " , fallback : " Launch on login " )
2022-04-12 13:09:14 +00:00
// / C h e c k t o a u t o m a t i c a l l y l a u n c h t h e a p p o n b o o t o r l o g i n .
2022-08-27 20:42:52 +00:00
internal static let footer = L10n . tr ( " Localizable " , " preferences.items.launches_on_login.footer " , fallback : " Check to automatically launch the app on boot or login. " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Sections {
internal enum General {
// / G e n e r a l
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " preferences.sections.general.header " , fallback : " General " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Profile {
internal enum Alerts {
internal enum ReconnectVpn {
// / D o y o u w a n t t o r e c o n n e c t t o t h e V P N ?
2022-08-27 20:42:52 +00:00
internal static let message = L10n . tr ( " Localizable " , " profile.alerts.reconnect_vpn.message " , fallback : " Do you want to reconnect to the VPN? " )
2022-04-12 13:09:14 +00:00
}
internal enum Rename {
// / R e n a m e p r o f i l e
2022-08-27 20:42:52 +00:00
internal static let title = L10n . tr ( " Localizable " , " profile.alerts.rename.title " , fallback : " Rename profile " )
2022-04-12 13:09:14 +00:00
}
internal enum TestConnectivity {
// / C o n n e c t i v i t y
2022-08-27 20:42:52 +00:00
internal static let title = L10n . tr ( " Localizable " , " profile.alerts.test_connectivity.title " , fallback : " Connectivity " )
2022-04-12 13:09:14 +00:00
internal enum Messages {
// / Y o u r d e v i c e h a s n o I n t e r n e t c o n n e c t i v i t y , p l e a s e r e v i e w y o u r p r o f i l e p a r a m e t e r s .
2022-08-27 20:42:52 +00:00
internal static let failure = L10n . tr ( " Localizable " , " profile.alerts.test_connectivity.messages.failure " , fallback : " Your device has no Internet connectivity, please review your profile parameters. " )
2022-04-12 13:09:14 +00:00
// / Y o u r d e v i c e i s c o n n e c t e d t o t h e I n t e r n e t !
2022-08-27 20:42:52 +00:00
internal static let success = L10n . tr ( " Localizable " , " profile.alerts.test_connectivity.messages.success " , fallback : " Your device is connected to the Internet! " )
2022-04-12 13:09:14 +00:00
}
}
2022-04-12 16:51:24 +00:00
internal enum UninstallVpn {
// / D o y o u r e a l l y w a n t t o e r a s e t h e V P N c o n f i g u r a t i o n f r o m y o u r d e v i c e s e t t i n g s ? T h i s m a y f i x s o m e b r o k e n V P N s t a t e s a n d w i l l n o t a f f e c t y o u r p r o v i d e r a n d h o s t p r o f i l e s .
2022-08-27 20:42:52 +00:00
internal static let message = L10n . tr ( " Localizable " , " profile.alerts.uninstall_vpn.message " , fallback : " Do you really want to erase the VPN configuration from your device settings? This may fix some broken VPN states and will not affect your provider and host profiles. " )
2022-04-12 16:51:24 +00:00
}
2022-04-12 13:09:14 +00:00
}
internal enum Items {
internal enum Category {
// / C a t e g o r y
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " profile.items.category.caption " , fallback : " Category " )
2022-04-12 13:09:14 +00:00
}
internal enum ConnectionStatus {
// / S t a t u s
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " profile.items.connection_status.caption " , fallback : " Status " )
2022-04-12 13:09:14 +00:00
}
internal enum DataCount {
// / E x c h a n g e d d a t a
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " profile.items.data_count.caption " , fallback : " Exchanged data " )
2022-04-12 13:09:14 +00:00
}
internal enum OnlyShowsFavorites {
// / O n l y s h o w f a v o r i t e l o c a t i o n s
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " profile.items.only_shows_favorites.caption " , fallback : " Only show favorite locations " )
2022-04-12 13:09:14 +00:00
}
internal enum Provider {
internal enum Refresh {
// / R e f r e s h i n f r a s t r u c t u r e
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " profile.items.provider.refresh.caption " , fallback : " Refresh infrastructure " )
2022-04-12 13:09:14 +00:00
}
}
2023-03-19 07:19:32 +00:00
internal enum RandomizesServer {
// / R a n d o m i z e s e r v e r
internal static let caption = L10n . tr ( " Localizable " , " profile.items.randomizes_server.caption " , fallback : " Randomize server " )
}
2022-04-12 13:09:14 +00:00
internal enum UseProfile {
// / U s e t h i s p r o f i l e
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " profile.items.use_profile.caption " , fallback : " Use this profile " )
2022-04-12 13:09:14 +00:00
}
internal enum Vpn {
internal enum TurnOff {
// / D i s a b l e V P N
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " profile.items.vpn.turn_off.caption " , fallback : " Disable VPN " )
2022-04-12 13:09:14 +00:00
}
internal enum TurnOn {
// / E n a b l e V P N
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " profile.items.vpn.turn_on.caption " , fallback : " Enable VPN " )
2022-04-12 13:09:14 +00:00
}
}
internal enum VpnResolvesHostname {
// / R e s o l v e p r o v i d e r h o s t n a m e
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " profile.items.vpn_resolves_hostname.caption " , fallback : " Resolve provider hostname " )
2022-04-12 13:09:14 +00:00
}
internal enum VpnService {
// / E n a b l e d
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " profile.items.vpn_service.caption " , fallback : " Enabled " )
2022-04-12 13:09:14 +00:00
}
internal enum VpnSurvivesSleep {
// / K e e p a l i v e o n s l e e p
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " profile.items.vpn_survives_sleep.caption " , fallback : " Keep alive on sleep " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Sections {
internal enum Feedback {
// / F e e d b a c k
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " profile.sections.feedback.header " , fallback : " Feedback " )
2022-04-12 13:09:14 +00:00
}
internal enum ProviderInfrastructure {
// / L a s t u p d a t e d o n % @ .
internal static func footer ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " profile.sections.provider_infrastructure.footer " , String ( describing : p1 ) , fallback : " Last updated on %@. " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Status {
// / C o n n e c t i o n
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " profile.sections.status.header " , fallback : " Connection " )
2022-04-12 13:09:14 +00:00
}
internal enum Vpn {
// / T h e c o n n e c t i o n w i l l b e e s t a b l i s h e d w h e n e v e r n e c e s s a r y .
2022-08-27 20:42:52 +00:00
internal static let footer = L10n . tr ( " Localizable " , " profile.sections.vpn.footer " , fallback : " The connection will be established whenever necessary. " )
2022-04-12 13:09:14 +00:00
}
internal enum VpnResolvesHostname {
// / P r e f e r r e d i n m o s t n e t w o r k s a n d r e q u i r e d i n s o m e I P v 6 n e t w o r k s . D i s a b l e w h e r e D N S i s b l o c k e d , o r t o s p e e d u p n e g o t i a t i o n w h e n D N S i s s l o w t o r e s p o n d .
2022-08-27 20:42:52 +00:00
internal static let footer = L10n . tr ( " Localizable " , " profile.sections.vpn_resolves_hostname.footer " , fallback : " Preferred in most networks and required in some IPv6 networks. Disable where DNS is blocked, or to speed up negotiation when DNS is slow to respond. " )
2022-04-12 13:09:14 +00:00
}
internal enum VpnSurvivesSleep {
// / D i s a b l e t o i m p r o v e b a t t e r y u s a g e , a t t h e e x p e n s e o f o c c a s i o n a l s l o w d o w n s d u e t o w a k e - u p r e c o n n e c t i o n s .
2022-08-27 20:42:52 +00:00
internal static let footer = L10n . tr ( " Localizable " , " profile.sections.vpn_survives_sleep.footer " , fallback : " Disable to improve battery usage, at the expense of occasional slowdowns due to wake-up reconnections. " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Welcome {
2022-08-27 20:42:52 +00:00
// / MARK: P r o f i l e V i e w
internal static let message = L10n . tr ( " Localizable " , " profile.welcome.message " , fallback : " Welcome to Passepartout! \n \n Use the organizer to add a new profile. " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Provider {
internal enum Location {
2022-08-27 20:42:52 +00:00
// / MARK: P r o f i l e V i e w - > P r o v i d e r * V i e w
internal static let title = L10n . tr ( " Localizable " , " provider.location.title " , fallback : " Location " )
2022-04-12 13:09:14 +00:00
internal enum Actions {
// / F a v o r i t e
2022-08-27 20:42:52 +00:00
internal static let favorite = L10n . tr ( " Localizable " , " provider.location.actions.favorite " , fallback : " Favorite " )
2022-04-12 13:09:14 +00:00
// / U n f a v o r i t e
2022-08-27 20:42:52 +00:00
internal static let unfavorite = L10n . tr ( " Localizable " , " provider.location.actions.unfavorite " , fallback : " Unfavorite " )
2022-04-12 13:09:14 +00:00
}
internal enum Sections {
internal enum EmptyFavorites {
// / S w i p e l e f t o n a l o c a t i o n t o a d d o r r e m o v e i t f r o m F a v o r i t e s .
2022-08-27 20:42:52 +00:00
internal static let footer = L10n . tr ( " Localizable " , " provider.location.sections.empty_favorites.footer " , fallback : " Swipe left on a location to add or remove it from Favorites. " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Preset {
// / P r e s e t
2022-08-27 20:42:52 +00:00
internal static let title = L10n . tr ( " Localizable " , " provider.preset.title " , fallback : " Preset " )
2022-04-12 13:09:14 +00:00
}
}
internal enum ReportIssue {
internal enum Alert {
2022-08-27 20:42:52 +00:00
// / MARK: D i a g n o s t i c s V i e w - > R e p o r t I s s u e V i e w
internal static let title = L10n . tr ( " Localizable " , " report_issue.alert.title " , fallback : " Report issue " )
2022-04-12 13:09:14 +00:00
}
}
2022-08-27 20:42:52 +00:00
internal enum Settings {
// / MARK: S e t t i n g s V i e w
internal static let title = L10n . tr ( " Localizable " , " settings.title " , fallback : " Settings " )
2022-09-03 08:30:39 +00:00
internal enum Items {
internal enum Donate {
// / M a k e a d o n a t i o n
internal static let caption = L10n . tr ( " Localizable " , " settings.items.donate.caption " , fallback : " Make a donation " )
}
2023-09-09 19:52:32 +00:00
internal enum EraseCloudStore {
// / E r a s e i C l o u d s t o r e
internal static let caption = L10n . tr ( " Localizable " , " settings.items.erase_cloud_store.caption " , fallback : " Erase iCloud store " )
}
2023-03-20 10:00:01 +00:00
internal enum LocksInBackground {
2023-03-20 13:12:42 +00:00
// / L o c k a p p a c c e s s
internal static let caption = L10n . tr ( " Localizable " , " settings.items.locks_in_background.caption " , fallback : " Lock app access " )
2023-03-20 10:00:01 +00:00
}
2023-09-09 18:29:04 +00:00
internal enum ShouldEnableCloudSyncing {
// / S y n c w i t h i C l o u d
internal static let caption = L10n . tr ( " Localizable " , " settings.items.should_enable_cloud_syncing.caption " , fallback : " Sync with iCloud " )
}
2022-09-03 08:30:39 +00:00
}
2023-09-09 19:52:32 +00:00
internal enum Sections {
internal enum Icloud {
// / D i s a b l e s y n c t o a l l o w e r a s e . T o e r a s e t h e i C l o u d s t o r e s e c u r e l y , d o s o o n a l l y o u r s y n c e d d e v i c e s . T h i s w i l l n o t a f f e c t l o c a l p r o f i l e s .
internal static let footer = L10n . tr ( " Localizable " , " settings.sections.icloud.footer " , fallback : " Disable sync to allow erase. To erase the iCloud store securely, do so on all your synced devices. This will not affect local profiles. " )
}
}
2022-08-27 20:42:52 +00:00
}
2022-04-12 13:09:14 +00:00
internal enum Shortcuts {
internal enum Add {
2022-08-27 20:42:52 +00:00
// / MARK: S h o r t c u t s V i e w
internal static let title = L10n . tr ( " Localizable " , " shortcuts.add.title " , fallback : " Add shortcut " )
2022-04-12 13:09:14 +00:00
internal enum Alerts {
internal enum NoProfiles {
// / T h e r e i s n o p r o f i l e t o c o n n e c t t o .
2022-08-27 20:42:52 +00:00
internal static let message = L10n . tr ( " Localizable " , " shortcuts.add.alerts.no_profiles.message " , fallback : " There is no profile to connect to. " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Items {
internal enum Connect {
// / C o n n e c t t o
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " shortcuts.add.items.connect.caption " , fallback : " Connect to " )
2022-04-12 13:09:14 +00:00
}
internal enum DisableVpn {
// / D i s a b l e V P N
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " shortcuts.add.items.disable_vpn.caption " , fallback : " Disable VPN " )
2022-04-12 13:09:14 +00:00
}
internal enum EnableVpn {
// / E n a b l e V P N
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " shortcuts.add.items.enable_vpn.caption " , fallback : " Enable VPN " )
2022-04-12 13:09:14 +00:00
}
internal enum TrustCellular {
// / T r u s t c e l l u l a r n e t w o r k
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " shortcuts.add.items.trust_cellular.caption " , fallback : " Trust cellular network " )
2022-04-12 13:09:14 +00:00
}
internal enum TrustCurrentWifi {
// / T r u s t c u r r e n t W i - F i
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " shortcuts.add.items.trust_current_wifi.caption " , fallback : " Trust current Wi-Fi " )
2022-04-12 13:09:14 +00:00
}
internal enum UntrustCellular {
// / U n t r u s t c e l l u l a r n e t w o r k
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " shortcuts.add.items.untrust_cellular.caption " , fallback : " Untrust cellular network " )
2022-04-12 13:09:14 +00:00
}
internal enum UntrustCurrentWifi {
// / U n t r u s t c u r r e n t W i - F i
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " shortcuts.add.items.untrust_current_wifi.caption " , fallback : " Untrust current Wi-Fi " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Sections {
internal enum Cellular {
// / C e l l u l a r
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " shortcuts.add.sections.cellular.header " , fallback : " Cellular " )
2022-04-12 13:09:14 +00:00
}
internal enum Wifi {
// / W i - F i
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " shortcuts.add.sections.wifi.header " , fallback : " Wi-Fi " )
2022-04-12 13:09:14 +00:00
}
}
}
internal enum Edit {
// / M a n a g e s h o r t c u t s
2022-08-27 20:42:52 +00:00
internal static let title = L10n . tr ( " Localizable " , " shortcuts.edit.title " , fallback : " Manage shortcuts " )
2022-04-12 13:09:14 +00:00
internal enum Items {
internal enum AddShortcut {
// / A d d s h o r t c u t
2022-08-27 20:42:52 +00:00
internal static let caption = L10n . tr ( " Localizable " , " shortcuts.edit.items.add_shortcut.caption " , fallback : " Add shortcut " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Sections {
2022-04-12 16:51:24 +00:00
internal enum Add {
// / G e t h e l p f r o m S i r i t o s p e e d u p y o u r m o s t c o m m o n i n t e r a c t i o n s w i t h t h e a p p .
2022-08-27 20:42:52 +00:00
internal static let footer = L10n . tr ( " Localizable " , " shortcuts.edit.sections.add.footer " , fallback : " Get help from Siri to speed up your most common interactions with the app. " )
2022-04-12 16:51:24 +00:00
}
2022-04-12 13:09:14 +00:00
internal enum All {
// / E x i s t i n g s h o r t c u t s
2022-08-27 20:42:52 +00:00
internal static let header = L10n . tr ( " Localizable " , " shortcuts.edit.sections.all.header " , fallback : " Existing shortcuts " )
2022-04-12 13:09:14 +00:00
}
}
}
}
internal enum Tunnelkit {
internal enum Errors {
// / U n a b l e t o p a r s e t h e p r o v i d e d c o n f i g u r a t i o n f i l e ( % @ ) .
internal static func parsing ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " tunnelkit.errors.parsing " , String ( describing : p1 ) , fallback : " Unable to parse the provided configuration file (%@). " )
2022-04-12 13:09:14 +00:00
}
internal enum Openvpn {
// / U n a b l e t o d e c r y p t p r i v a t e k e y .
2022-08-27 20:42:52 +00:00
internal static let decryption = L10n . tr ( " Localizable " , " tunnelkit.errors.openvpn.decryption " , fallback : " Unable to decrypt private key. " )
2022-04-12 13:09:14 +00:00
// / T h e c o n f i g u r a t i o n f i l e c o n t a i n s a m a l f o r m e d o p t i o n ( % @ ) .
internal static func malformed ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " tunnelkit.errors.openvpn.malformed " , String ( describing : p1 ) , fallback : " The configuration file contains a malformed option (%@). " )
2022-04-12 13:09:14 +00:00
}
// / P l e a s e e n t e r t h e e n c r y p t i o n p a s s p h r a s e .
2022-08-27 20:42:52 +00:00
internal static let passphraseRequired = L10n . tr ( " Localizable " , " tunnelkit.errors.openvpn.passphrase_required " , fallback : " Please enter the encryption passphrase. " )
2022-04-12 13:09:14 +00:00
// / T h e c o n f i g u r a t i o n f i l e i s c o r r e c t b u t c o n t a i n s a p o t e n t i a l l y u n s u p p o r t e d o p t i o n ( % @ ) .
// /
// / C o n n e c t i v i t y m a y b r e a k d e p e n d i n g o n s e r v e r s e t t i n g s .
internal static func potentiallyUnsupportedOption ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " tunnelkit.errors.openvpn.potentially_unsupported_option " , String ( describing : p1 ) , fallback : " The configuration file is correct but contains a potentially unsupported option (%@). \n \n Connectivity may break depending on server settings. " )
2022-04-12 13:09:14 +00:00
}
// / T h e c o n f i g u r a t i o n f i l e l a c k s a r e q u i r e d o p t i o n ( % @ ) .
internal static func requiredOption ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " tunnelkit.errors.openvpn.required_option " , String ( describing : p1 ) , fallback : " The configuration file lacks a required option (%@). " )
2022-04-12 13:09:14 +00:00
}
// / T h e c o n f i g u r a t i o n f i l e c o n t a i n s a n u n s u p p o r t e d o p t i o n ( % @ ) .
internal static func unsupportedOption ( _ p1 : Any ) -> String {
2022-08-27 20:42:52 +00:00
return L10n . tr ( " Localizable " , " tunnelkit.errors.openvpn.unsupported_option " , String ( describing : p1 ) , fallback : " The configuration file contains an unsupported option (%@). " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Vpn {
// / A u t h f a i l e d
2022-08-27 20:42:52 +00:00
internal static let auth = L10n . tr ( " Localizable " , " tunnelkit.errors.vpn.auth " , fallback : " Auth failed " )
2022-04-12 13:09:14 +00:00
// / C o m p r e s s i o n u n s u p p o r t e d
2022-08-27 20:42:52 +00:00
internal static let compression = L10n . tr ( " Localizable " , " tunnelkit.errors.vpn.compression " , fallback : " Compression unsupported " )
2022-04-12 13:09:14 +00:00
// / D N S f a i l e d
2022-08-27 20:42:52 +00:00
internal static let dns = L10n . tr ( " Localizable " , " tunnelkit.errors.vpn.dns " , fallback : " DNS failed " )
2022-04-12 13:09:14 +00:00
// / E n c r y p t i o n f a i l e d
2022-08-27 20:42:52 +00:00
internal static let encryption = L10n . tr ( " Localizable " , " tunnelkit.errors.vpn.encryption " , fallback : " Encryption failed " )
2022-04-12 13:09:14 +00:00
// / N o g a t e w a y
2022-08-27 20:42:52 +00:00
internal static let gateway = L10n . tr ( " Localizable " , " tunnelkit.errors.vpn.gateway " , fallback : " No gateway " )
2022-04-12 13:09:14 +00:00
// / N e t w o r k c h a n g e d
2022-08-27 20:42:52 +00:00
internal static let network = L10n . tr ( " Localizable " , " tunnelkit.errors.vpn.network " , fallback : " Network changed " )
2022-04-12 13:09:14 +00:00
// / M i s s i n g r o u t i n g
2022-08-27 20:42:52 +00:00
internal static let routing = L10n . tr ( " Localizable " , " tunnelkit.errors.vpn.routing " , fallback : " Missing routing " )
2022-04-12 13:09:14 +00:00
// / S e r v e r s h u t d o w n
2022-08-27 20:42:52 +00:00
internal static let shutdown = L10n . tr ( " Localizable " , " tunnelkit.errors.vpn.shutdown " , fallback : " Server shutdown " )
2022-04-12 13:09:14 +00:00
// / T i m e o u t
2022-08-27 20:42:52 +00:00
internal static let timeout = L10n . tr ( " Localizable " , " tunnelkit.errors.vpn.timeout " , fallback : " Timeout " )
2022-04-12 13:09:14 +00:00
// / T L S f a i l e d
2022-08-27 20:42:52 +00:00
internal static let tls = L10n . tr ( " Localizable " , " tunnelkit.errors.vpn.tls " , fallback : " TLS failed " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Vpn {
// / A c t i v e
2022-08-27 20:42:52 +00:00
internal static let active = L10n . tr ( " Localizable " , " tunnelkit.vpn.active " , fallback : " Active " )
// / MARK: T u n n e l K i t
internal static let connecting = L10n . tr ( " Localizable " , " tunnelkit.vpn.connecting " , fallback : " Connecting " )
2022-04-12 13:09:14 +00:00
// / D i s a b l e d
2022-08-27 20:42:52 +00:00
internal static let disabled = L10n . tr ( " Localizable " , " tunnelkit.vpn.disabled " , fallback : " Disabled " )
2022-04-12 13:09:14 +00:00
// / D i s c o n n e c t i n g
2022-08-27 20:42:52 +00:00
internal static let disconnecting = L10n . tr ( " Localizable " , " tunnelkit.vpn.disconnecting " , fallback : " Disconnecting " )
2022-04-12 13:09:14 +00:00
// / I n a c t i v e
2022-08-27 20:42:52 +00:00
internal static let inactive = L10n . tr ( " Localizable " , " tunnelkit.vpn.inactive " , fallback : " Inactive " )
2022-04-12 13:09:14 +00:00
// / O f f
2022-08-27 20:42:52 +00:00
internal static let unused = L10n . tr ( " Localizable " , " tunnelkit.vpn.unused " , fallback : " Off " )
2022-04-12 13:09:14 +00:00
}
}
internal enum Version {
2022-08-27 20:42:52 +00:00
// / MARK: A b o u t V i e w - > V e r s i o n V i e w
internal static let title = L10n . tr ( " Localizable " , " version.title " , fallback : " Version " )
2022-04-12 13:09:14 +00:00
internal enum Labels {
// / P a s s e p a r t o u t a n d T u n n e l K i t a r e w r i t t e n a n d m a i n t a i n e d b y D a v i d e D e R o s a ( k e e s h u x ) .
// /
// / S o u r c e c o d e f o r P a s s e p a r t o u t a n d T u n n e l K i t i s p u b l i c l y a v a i l a b l e o n G i t H u b u n d e r t h e G P L v 3 , y o u c a n f i n d l i n k s i n t h e h o m e p a g e .
2022-10-17 10:59:00 +00:00
internal static let intro = L10n . tr ( " Localizable " , " version.labels.intro " , fallback : " Passepartout and TunnelKit are written and maintained by Davide De Rosa (keeshux). \n \n Source code for Passepartout and TunnelKit is publicly available on GitHub under the GPLv3, you can find links in the home page. " )
2022-04-12 13:09:14 +00:00
}
}
}
// s w i f t l i n t : e n a b l e e x p l i c i t _ t y p e _ i n t e r f a c e f u n c t i o n _ p a r a m e t e r _ c o u n t i d e n t i f i e r _ n a m e l i n e _ l e n g t h
// s w i f t l i n t : e n a b l e n e s t i n g t y p e _ b o d y _ l e n g t h t y p e _ n a m e v e r t i c a l _ w h i t e s p a c e _ o p e n i n g _ b r a c e s
// MARK: - I m p l e m e n t a t i o n D e t a i l s
extension L10n {
2022-08-27 20:42:52 +00:00
private static func tr ( _ table : String , _ key : String , _ args : CVarArg . . . , fallback value : String ) -> String {
let format = Bundle . main . localizedString ( forKey : key , value : value , table : table )
2022-04-12 13:09:14 +00:00
return String ( format : format , locale : Locale . current , arguments : args )
}
}